| |
| Lavr |
|
Super God

Joined: 21 Oct 2009 Posts: 7781 Location: Россия
|
Posted: 09 Jun 2013 13:43 Post subject: |
| |
| pfgx wrote: | | Да на этом форуме столько всего написано!.. Надо будет потом отдельно заняться только чтением... |
Да я сам его (форум) с год примерно почитывал... жалко некому всё это упорядочить,
ибо - работа огромная!...
Но я хоть немного в общих чертах стал представлять где и что у нас лежит...
Конечно же, Shaos это всё лучше знает и помнит! _________________ iLavr |
|
| Back to top |
|
| Shaos |
|
Admin

Joined: 09 Jan 2003 Posts: 12576 Location: New York
|
Posted: 09 Jun 2013 14:13 Post subject: |
| |
Shaos к сожалению не всё помнит - иногда только Search спасает, да и то не всегда... _________________ XMPP:shaos@jabber.org |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 10 Jun 2013 05:17 Post subject: |
| |
| Lavr wrote: | | Мне кажется, пора бы делать прикидку на соответствие топологии командам z80... |
Вот тут можно уже и прикидывать, это "ядро" АЛУ http://yadi.sk/d/-UL-KbU05fDn6
Я нашёл ещё 4 защёлки Находятся между выходом АЛУ и младшими разрядами локальной шины. http://yadi.sk/d/75ZpHn-i5fP8M |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 15 Jun 2013 06:18 Post subject: |
| |
Вопросов пока больше нет?
Попытался нарисовать управление блоком АЛУ. Запутался в сигналах, поэтому продолжил рисовать от instruction register. В направлении к РОН там только комбинационная логика с мелкими вкраплениями триггеров различной конструкции для, например, exx или ex DE,HL. Расположение РОН скорее всего всё-таки соответствует иллюстрации из книги.
Что обработано:
- instruction register
- "распознаватель" команд
- комбинационная логика после "распознавателя"
- комбинационная логика с сигналами от блока управления (почти готово)
- блок АЛУ
- блок РОН
Что осталось:
- логика управления блоком АЛУ, блоком РОН, коммутацией шин и т.п.
- формирование флагов
- блок управления (reset, wait, interrupt, машинные циклы и т.п.)
- подключение выводов D0...D7 к внутренней шине данных
- прочие мелочи
Блок управления наверное будет самым сложным, он занимает 20% площади кристалла, в нём куча логики с обратными связями (триггеры, причём, кажется, многофазные) и нет никакой системы. |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 15 Jun 2013 07:32 Post subject: |
| |
Картинка ещё раз http://yadi.sk/d/75ZpHn-i5fP8M
Сигнал 10 соединён с 24, а 11 и 25 это инвертированные 10 и 24, то есть одно и то же. Перекрёстное соединение полубайтов видимо используется только для rrd.
Примерный порядок работы блока АЛУ.
С ШД процессора через коммутатор-сдвигатель аргументы записываются в 8-битные регистры (прямоугольные блоки слева и справа). Левый регистр может инвертировать данные.
На АЛУ подаются младшие полубайты (открыты транзисторы, управляемые сигналами 24 и 10), при этом также выход АЛУ соединён с 4-битным регистром (квадратный блок в середине).
На АЛУ подаются старшие полубайты (открыты транзисторы 25 и 11), при этом 4-битный регистр отключается от АЛУ и хранит младший полубайт результата.
Затем подаётся сигнал 15, открываются транзисторы, на локальную шину блока АЛУ подаётся байт результата, активируются драйверы (сигнал 34) и результат попадает на шину процессора.
Точные фазы работы смогу сказать после того, как разберу схему управления. |
|
| Back to top |
|
| Mixa64 |
|
Senior
Joined: 25 Aug 2009 Posts: 182 Location: Москва
|
Posted: 19 Jun 2013 09:29 Post subject: |
| |
| А вот интересно, ИП3 круче, чем АЛУ сабжа? |
|
| Back to top |
|
| Lavr |
|
Super God

Joined: 21 Oct 2009 Posts: 7781 Location: Россия
|
|
| Back to top |
|
| Lavr |
|
Super God

Joined: 21 Oct 2009 Posts: 7781 Location: Россия
|
Posted: 19 Jun 2013 10:09 Post subject: |
| |
| Mixa64 wrote: | | А вот интересно, ИП3 круче, чем АЛУ сабжа? |
На мой взгляд, здесь не может быть совсем уж адекватного сравнения,
поскольку вещи несколько разные...
Но если сравнивать что называется "в лоб" - то ИП3 - НЕ круче, поскольку
не может делать RAL, RAR, RRC, да и набор флагов победнее будет... _________________ iLavr |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 19 Jun 2013 14:33 Post subject: |
| |
Как оно внутри устроено я понял (http://www.nedopc.org/forum/viewtopic.php?p=105741#105741), но к блоку АЛУ подходит около 30 управляющих сигналов, которые формируются отдельной схемой. В эту же схему идёт десяток выходов АЛУ, и она же участвует в формировании флагов. Вот в этой схеме я и запутался. |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 28 Jun 2013 16:41 Post subject: |
| |
Не с той стороны я рисовать схему начал. Надо было как раз с этой сложной схемы управления, можно было бы хоть как-то внешние сигналы сэмулировать, чтение команды в instruction register, а потом и всё остальное.
Процесс движется, надо будет отдельно заняться упрощением схемы. Сейчас это почти 40 страниц А4 и около 400 сигналов, рисовавшихся по принципу "что вижу, то пою"  |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 09 Jul 2013 17:39 Post subject: |
| |
Дорисовал схему управления. На эту схему завязаны все входящие и выходящие управляющие сигналы микропроцессора (CLK, RESET, RD, WR, BUSRQ...), также она содержит два "счётчика" тактов (или FSM, не знаю как точно назвать). Один счётчик считает такты, сброс по условию, второй счётчик несколько сложнее. Выходы счётчиков заведены на огромную комбинационную схему, которая в зависимости от декодированной команды и номера такта (и цикла?) формирует сигналы управления для АЛУ, чтения-записи регистров, сброса счётчиков и т.д.
На рисунке http://yadi.sk/d/hHdabDM46f1UY слева второй счётчик (счётный вход 625, выходы 202...206), справа схема разрешения тактирования этого счётчика (выход 609 комбинируется с CLK и получается 625). То есть условие, при котором меняется состояние этого "счётчика", достаточно сложное.
Сигналы 1xx, 2xx (кроме 20x, это выходы счётчиков) формируются той самой комбинационной схемой. |
|
| Back to top |
|
| Lavr |
|
Super God

Joined: 21 Oct 2009 Posts: 7781 Location: Россия
|
Posted: 09 Jul 2013 18:05 Post subject: |
| |
| pfgx wrote: | | Выходы счётчиков заведены на огромную комбинационную схему, которая в зависимости от декодированной команды и номера такта (и цикла?) формирует сигналы управления для АЛУ, чтения-записи регистров, сброса счётчиков и т.д. |
Ну так "хардварный" он получается наш любимый Z80 - так? _________________ iLavr |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 10 Jul 2013 04:40 Post subject: |
| |
| Как бы да, но в схеме много "табличных" преобразований. |
|
| Back to top |
|
| pfgx |
|
Senior
Joined: 20 Mar 2013 Posts: 138 Location: Ростов-на-Дону
|
Posted: 06 Aug 2013 06:05 Post subject: |
| |
http://yadi.sk/d/s5RRVIjP7cRgA
Похоже что это всё-таки "счётчик" циклов.
Сигнал 627 - запись "10000", сброс. Формируется очень просто: для каждого цикла (их 5, сигналы 206, 205, 204, 203, 202) существует группа команд, при которых формируется сигнал 613. Например, для цикла 206 (первого) это выходы декодера 171, 172, 173, 177. Проверил - да, это одноцикловые команды.
Сигнал 626 - запись "x001x", переход с цикла 1 или 2 на цикл 4. Используются выходы декодера команд 49, 172, 173, 177. Какие это команды сложно сказать, в декодере не всё так просто. (Впрочем, как и везде в этом процессоре.)
Сигнал 609 - переход на следующий цикл. Логику формирования объяснить не возьмусь
Вверху схема #BUSRQ и #BUSACK, на неё же заведён 609, то есть запрос будет обработан только после окончания очередного цикла. 606 это, видимо, блокировка тактирования счётчика тактов (сигналы 211, 210, 209, 208...). |
|
| Back to top |
|
| Lavr |
|
Super God

Joined: 21 Oct 2009 Posts: 7781 Location: Россия
|
Posted: 06 Aug 2013 10:38 Post subject: |
| |
| pfgx wrote: | ...надо будет отдельно заняться упрощением схемы. Сейчас это почти 40 страниц А4
и около 400 сигналов, рисовавшихся по принципу "что вижу, то пою"  |
Ты извини, не подумай, что под работающую руку лезу тебе с советами...
Может в момент "упрощения схемы" тебе перейти к отрисовке в электронном виде?
А то, на мой взгляд, ты скоро с бумажками путаться начнешь...
Элементов у тебя немного - в основном это вентили однотипные... отрисуй их один раз
все по одному красиво, а потом - вставляй методом "копи-паст" и соединяй мышью.
Поверь мне, даже в Пейнте это получается быстро и удобно, не говоря уже о том,
что есть неограниченная возможность правки, передвижения блоков и вставки...
Я как-то, начиная со "Специалиста", отвык схемы руками на бумаге рисовать, хотя и
граф-редактор у "Специалиста" был не в пример даже Пейнту убогий...
Но всё-равно, на мой взгляд, в итоге это удобней и быстрее выходит, да и рисунок -
более разборчивый обычно. _________________ iLavr |
|
| Back to top |
|
| Choose Display Order |
|
| User Permissions |
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Skin Created by Sigma12 and modified by Shaos Powered by phpBB © 2001-2005 phpBB Group
|
 |