зато у него есть BTFSC/BTFSS, а значит RRC RLC не нужныУ него нет аналогов RRC и RRC, а есть только - RAR, RAL - насколько такое упрощение существенно для программирования?
АЛУ на NAND
Moderator: Lavr
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
Согласен, но BTFSC/BTFSS - аппаратно сложнее, а я думаю - не подупростить ли этот вариант...MC68k wrote:зато у него есть BTFSC/BTFSS, а значит RRC RLC не нужныУ него нет аналогов RRC и RLC, а есть только - RAR, RAL - насколько такое упрощение существенно для программирования?
Значит RRC и RLC оставляем - всё равно им цена только входы мультиплексора. Проще схема не будет.
Конструктивнее, Хардыч, и критичнее...HardWareMan wrote:А мне схемка нравится!

Дело не во вкусах, а в какое соотношение хард/софт это в итоге выльется.
-
- Admin
- Posts: 24012
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
ПЗУ тормозно будет - можно конечно PAL/GAL, но это уже не совсем кошерно в рамках данного топика 
P.S. Бит чётности ненужен (ни как кол-во единиц, ни как состояние нулевого бита)

P.S. Бит чётности ненужен (ни как кол-во единиц, ни как состояние нулевого бита)
Last edited by Shaos on 14 Oct 2011 07:16, edited 1 time in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
нууу, что же вы, батенька так. если сделать ограничение для этих команд с одним битом под номером один/семь, то через флаг переноса ничего роллить не надо. сдается мне команды RRC RLC сделаны а)чтобы были б) чтобы не выделять первый/седьмой бит логическим И(экономим аж 2 байта в формате ВМ80)Lavr wrote:Согласен, но BTFSC/BTFSS - аппаратно сложнее, а я думаю - не подупростить ли этот вариант...MC68k wrote:зато у него есть BTFSC/BTFSS, а значит RRC RLC не нужныУ него нет аналогов RRC и RLC, а есть только - RAR, RAL - насколько такое упрощение существенно для программирования?
Значит RRC и RLC оставляем - всё равно им цена только входы мультиплексора. Проще схема не будет.
Конструктивнее, Хардыч, и критичнее...HardWareMan wrote:А мне схемка нравится!![]()
Дело не во вкусах, а в какое соотношение хард/софт это в итоге выльется.
Code: Select all
RRA
AND #01
JZ met
Code: Select all
RRC
JC met
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
А мне кажется, как состояние нулевого бита он аппаратно ничего не стоит, потому как регистр флагов - всё-равно 4-битный...Shaos wrote:Бит чётности ненужен (ни как кол-во единиц, ни как состояние нулевого бита)
Но очень удобно распихивать что-то по четному/нечетному значению аккумулятора,
не двигая циклически во флаг переноса.
Code: Select all
RRC
JNC XXXX
Code: Select all
JNP XXXX
Last edited by Lavr on 14 Oct 2011 07:54, edited 1 time in total.
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06
Re: 4-BIT АЛУ на TTL
Мне кажется, что /A предпочтительнее.Lavr wrote: Сигналы K1,K2 на входах 1 и 2 мультиплексоров аргумента позволяют подавать на входы первого операнда операционного устройства АЛУ полубайты собственно аргумента A и значения 0h , 0Fh и 0h соответственно. Последнее значение 0h является избыточным, и может быть впоследствии заменено на другое (возможно, /A).
Да, этот флаг применяется очень редко, но я бы его оставил.Lavr wrote: Возникает вопрос - нужен ли реальный флаг чётности Р в составе АЛУ? Есть мнение, что это рудимент использования в коммуникационных программах. Может имеет смысл и удобен флаг просто чётности результата (как Р со штрихом) т.е. состояние бита 0?
На первый взгляд достаточна.Lavr wrote: 1. Достаточна ли реализованная система команд?
Если сравнивать с системой команд, содержащей одну лишь SUB, то да, несколько избыточнаLavr wrote: 2. Не избыточна ли реализованная система команд?

Но как я понимаю, ты не один день думал над этим вопросом, поэтому, раз возгласов возмущения не слышно, можно взять плоды твоего труда за основу и двигаться дальше. Лично я не буду делать всё на NAND, но в том виде, в каком схема сейчас, мне было бы интересно сделать.
Last edited by VituZz on 14 Oct 2011 08:06, edited 2 times in total.
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: 4-BIT АЛУ на TTL
/A - предполагает вычитание из B - а мне кажется излишним такая симметрия операций...VituZz wrote: Мне кажется, что /A предпочтительнее.
За всю жизнь я видел лишь одну полезную программу, где с пользой применялся флаг Р - это вычисление CRC.VituZz wrote: Да, этот флаг (Р) применяется очень редко, но я бы его оставил.
Я всё-таки хочу реализовать его как просто чётность результата.
Не торопись... Ещё нужно устройство управления этим АЛУ. Поэтому я и обсуждаю сейчас со всеми набор команд. Потом менять что-то будет сложнее.VituZz wrote: Но как я понимаю, ты не один день думал над этим вопросом, поэтому, раз возгласов возмущения не слышно, можно взять плоды твоего труда за основу и двигаться дальше. Лично я не буду делать всё на NAND, но в том виде, в каком схема сейчас, мне было бы интересно сделать.
Я всё-же надеюсь что этот проект мы все вместе доведём до ума.
И я думаю - он получится проще чем есть.
Сейчас я нарисовал так, чтобы всем была видна логика работы команд,
чего некоторые торопыги никак не успевают прочесть...

-
- Retired
- Posts: 1328
- Joined: 25 Jul 2011 00:14
- Location: WWW
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
Честно говоря, окончательно не решили...MC68k wrote:судя по набору команд, будет CISC. Значит достаточна и неизбыточна. Команд больше, но код компактенее.
Я склонялся к RISC из-за схемной простоты, но были и другие мнения, как в начале этого топика, так и вот здесь:
viewtopic.php?t=9573&postdays=0&postorder=asc&start=30
Интересное решение было бы смешанная: RISC, но дать возможность, хотя бы окольную, писать в память программ...
Я почитал различные источники - в строгом RISC-стиле сейчас практически ничего не делают. Да и сам набор требований для RISC стал мягче.
Наверное воплощу одну догму - все операции выполняются в регистрах, загрузка из памяти только в них, а может даже только в А.
Но это сугубо для простоты схемотехники...
Вопрос на засыпку: если убрать команды сложения с учетом флага переноса и вычитания с заёмом - то как реализовать многобайтную арифметику?
Типа - если С=1, то сделаем дополнительно А+1?
Мне кажется это накладно... но вернуться к этому можно. Такой вариант я тоже рассматривал:

_______________ Рис. 5. _______________
но решил от него отказаться.
Last edited by Lavr on 15 Oct 2011 03:05, edited 2 times in total.
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
Безусловно - компромиссный.VituZz wrote:Давайте сразу определимся, какой "генеральный курс партии": минимализм схемы или удобство для программиста?
Подсчитываем число корпусов, и если их много - от чего-то аппаратного отказываемся.
Я, как и обещал, планирую влезть в одну большую макетку всем процессором.
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06
-
- Supreme God
- Posts: 16680
- Joined: 21 Oct 2009 08:08
- Location: Россия
Обсуждали уже этот вопрос в этом же топике - не будем повторяться.VituZz wrote:Большая макетка должна содержать ЦПЭ на И-НЕ? Сколько примерно корпусов вместится на макетку?
А про большую макетку - тоже говорили - примерно вот столько:

Last edited by Lavr on 14 Oct 2011 15:07, edited 1 time in total.
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06