Арифметическо-логическая игрушка последовательного действия

Другие микроконтроллеры и микропроцессоры, не попавшие в предыдущие разделы

Moderator: Shaos

dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Арифметическо-логическая игрушка последовательного действия

Post by dvarkin »

Приглянулись последовательные вычисления, в частности, советских ПМК. Решил поэкспериментировать с сумматором. В SimulIDE построил такую штуковину:
В сумматор одни стробируемые тактовым сигналом данные поступают с переключателя, другие - из того же регистра, в котором будет результат. Оно может складывать так: сначала загружается первое слагаемое, складываясь с изначальным нулём попадает в регистр, а потом второе слагаемое складывается с идущим из "кольца" первым.
Вторую часть ТМ2 просто последовательно подключил к ТМ8, и общий регистр сумматора стал пятибитным.

При этом выяснилось, что если на триггере переноса форсировать "1", то на выходе вместо сложения будет побитовое XNOR, форсировать "0" - побитовое XOR. И раз есть сложение и можно делать инверсию, то реализуемы и другие операции?

Ввиду закрытости магазинов на НГ праздники, решил собрать что-то подобное на том, что имелось:
realS.png
В реальности столкнулся с дребезгом тактовой кнопки, пришлось на оставшихся элементах ЛА3 делать триггер и использовать кнопку из мышки для выхода из ситуации:
photo_2021-01-02_15-28-10.jpg
Да, обычно сумматоры последовательного действия работают так:
Image

И, как ни крути, ощущение, что где-то про это много всего интересного написали уже давно.
Есть ли какая-нибудь литература/информация на эту тему? Про EDUC-8 ещё почитаю, но он один как-то пока не особо цепляет (но счётчик команд зашёл :lol: ).
You do not have the required permissions to view the files attached to this post.
Last edited by dvarkin on 03 Jan 2021 12:16, edited 3 times in total.
dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Re: Арифметическо-логическая игрушка последовательного дейст

Post by dvarkin »

Схема сумматора на ЛА3, ЛИ1, ЛЛ1:
Image

Файлы симуляции:
realS.zip
You do not have the required permissions to view the files attached to this post.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Арифметическо-логическая игрушка последовательного дейст

Post by Lavr »

dvarkin wrote: где-то про это много всего интересного написали уже давно.
В общем-то и 4-bit Processor так сделан, и 4-trit Processor, и многое другое...
Приём очень популярный для множества компьютеров начального периода, поскольку экономит
аппаратный ресурс в ущерб производительности.

Полностью последовательным аппаратом считается Kenbak-1.
Но легендарный Royal McBee LGP-30 от Стэнли Френкеля - тоже последовательный.
Последовательные - подавляющее большинство инженерных программируемых калькуляторов...

Так что поздновато как-то вы "америку приоткрыли"... :ewink:

P.S. Да, и полный сумматор гораздо проще делается на одних лишь ЛА3.

Image
iLavr
dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Re: Арифметическо-логическая игрушка последовательного дейст

Post by dvarkin »

Хоть про принцип действия последовательного сумматора я действительно узнал только месяц назад, про последовательные вычисления в целом я узнал гораздо раньше, но кроме факта того, что они последовательные и базовых структур данных обычно никакой информации нет, а хотелось бы наглядного объяснения архитектуры.

Изначально на оставшихся после сумматора элементах я даже сделал XOR для инверсии результата сложения, а потом обнаружил форсирование переноса с результатом XOR и XNOR, которое пока нигде не наблюдал, и если бы не обнаружил это - сюда бы не писал. Сейчас хочу узнать об остальных возможных фокусах и "открыть америку" до конца :).

Раньше не замечал, что тот 4-bit processor последовательный - картинка с полной схемой из Proteus непонятна до сих пор, ибо буков не видно :-?, но поразбираюсь, спасибо :ebiggrin:.

Полный сумматор на ЛА3 требует 13 двухвходовых элементов, а не только на ЛА3 - лишь 9. Хотя, между делом регистры и триггеры я собирался сделать тоже на двухвходовых элементах, то есть на триггерах из 4х ЛА3 на один разряд, но у меня не хватало проводочков :lol:, а с сумматором на ЛА3 можно выполнить эту штуковину в 4-битном виде на 33х элементах 2И-НЕ, а это 9 корпусов ЛА3, то есть всего лишь одна плата 5*7см. Законченное устройство только из ЛА3 на такой маленькой плате! Надо подумать.
Last edited by dvarkin on 03 Jan 2021 12:12, edited 1 time in total.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Арифметическо-логическая игрушка последовательного дейст

Post by Lavr »

dvarkin wrote:Сейчас хочу узнать об остальных возможных фокусах и "открыть америку" до конца :).
Да кто же вам мешает-то? Просто люди придумали письменность, чтобы не "изобретать велосипедов",
и не "открывать америк" лишний раз. :D
Вы просили примеров - я вам их привёл, причём все - с нашего форума. Что бы не почитать форум, который вы посещаете?
Кроме того, есть и другие интересные ресурсы, где "всё украли ещё до нас". :wink:
К примеру: http://www.6502.org/users/dieter/index.htm
Я лично почитывал лет 10 так назад, когда делал вот это: viewtopic.php?f=92&t=9386
dvarkin wrote:Полный сумматор на ЛА3 требует 13 двухвходовых элементов, а не только на ЛА3 - лишь 9. .
Обычно считают не элементы, а корпуса. :ewink:
Элементов может быть 9, но в скольких корпусах? :lol:
iLavr
dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Re: Арифметическо-логическая игрушка последовательного дейст

Post by dvarkin »

Ок, а нет ли уже такого ресурса/проекта, где одновременно описывается/используется и особенность сумматора (и лишь сумматора, без дополнительной логики) выдавать XOR и XNOR при форсировании переноса, и суммирование в кольце одного регистра?

Сумматор не только на ЛА3 из 9 элеменов умещается в трёх корпусах (это видно на картинке выше), сумматор только на ЛА3 из 13 элементов - в четырёх.
Last edited by dvarkin on 03 Jan 2021 12:13, edited 1 time in total.
dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Re: Арифметическо-логическая игрушка последовательного дейст

Post by dvarkin »

Ага, я ошибся - не угадал функции на выходе.
Если форсировать SET, то сумматор будет выдавать Исключающее ИЛИ-НЕ, а если RESET - просто Исключающее ИЛИ соответственно. Тоже годно.
Правил посты выше.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Арифметическо-логическая игрушка последовательного дейст

Post by Lavr »

dvarkin wrote:Сумматор не только на ЛА3 из 9 элеменов умещается в трёх корпусах (это видно на картинке выше), сумматор только на ЛА3 из 13 элементов - в четырёх.
Вы не обратили внимания, видимо, что это не только сумматор, но и вычитатель.
И если делать 4-битный процессор, то эта схема чётко ложится в целое число корпусов.
iLavr
dvarkin
Fanat
Posts: 87
Joined: 05 Jul 2020 14:08
Location: Ижевск

Re: Арифметическо-логическая игрушка последовательного дейст

Post by dvarkin »

Да, не приметил вычитание. Всегда делал его инверсией и инкрементом отдельно.
В схеме с триггером инверсия выполняется XNOR/XOR с 0 или 255.
Без триггера я пытался делать инверсию так:
dvarkin wrote:Изначально на оставшихся после сумматора элементах я даже сделал XOR для инверсии результата сложения
Если использовать это XNOR на входе, то сумматор/вычитатель не только на ЛА3 будет занимать ровно 3 корпуса.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Арифметическо-логическая игрушка последовательного дейст

Post by Lavr »

dvarkin wrote:Да, не приметил вычитание. Всегда делал его инверсией и инкрементом отдельно.
Но обычно инвертируют входы сумматора (или подают инвертированный аргумент), а на Cin младшего
разряда подают 1.
iLavr