Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Несколько раз я прочитал " выразительные свойста" нашего коробка...
И вот чувствую, что чего-то мне в этом минимализме не хватает...
Флага "С"!
То есть флаги Z и S - есть, а вот Carry - нет...
Получается, что как-бэ и простой калькулятор на этой фигульке не сделать?
Как многобайтные целые-то складывать/вычитать?
И инструкций сдвигов немного кастрированные становятся:
rotate accumulator 1 bit right (RAR),
rotate accumulator 1 bit left (RAL).
Побитно число проанализировать можно по флагу Sign.
A вот " задвинуть" что-то в байт из Carry - невозможно...
А я люблю этот трюк с " задвиганием" в байт и неявным счетчиком до 8...
Ну да это ладно как-бы... но вот с арифметикой - обидно...
Может быть, я, правда, чего не знаю, но не представляю, как без Carry
складывать(вычитать) целые многобайтные...
Ну разве что заюзать Sign вместо Carry и работать с целыми
беззнаковыми в диапазоне 0-127, а 128 -> Sign использовать для переноса...
_________________ iLavr
|
08 Oct 2012 15:39 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
_________________ iLavr
|
21 Jul 2013 12:18 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Вот ещё попались два интересных варианта исполнения EDUC-8:
с внешним БП from David Snelling (UK)
с расширенной памятью, а потому и - управлением from Harry Sokol (Australia)
_________________ iLavr
|
22 Jul 2013 05:56 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Оказалось, что EDUC-8 продолжает интересовать любителей самодельных процессоров.
И новый поиск в сети позволил пополнить нашу ветку об этом " мини-компьютере", а его
советуют называть именно так, поскольку микро-процессора, как такового, в EDUC-8 - нет...
И очень приятной (отчасти) оказалась находка схем " мини-компьютера" EDUC-8, выполненных
в CAD-пакете gEDA schematics неким Gwyllym Suter-ом:
http://www.sworld.com.au/steven/educ-8/E8T.sch - Timing and Control;
http://www.sworld.com.au/steven/educ-8/E8D.sch - Instruction Decoder:
http://www.sworld.com.au/steven/educ-8/E8A.sch - Accumulator;
http://www.sworld.com.au/steven/educ-8/E8MX.sch - Muliplexer.
Поскольку Интернет вещь непостоянная мы с Шаосом подумали, что эти файлы надо бы сохранить
и на этом форуме: Educ8_Schematics.zip.
Теперь о не совсем приятном... что есть gEDA - это чисто линуксовский GNU-CAD, и путной его
рабочей сборки под Венду нет... Но если кто-то хочет рискнуть - существует Виндавозная сборка
as-is: http://www.delorie.com/pcb/geda-windows/
Для существующих у нас на форуме пользователей юникс-подобных систем gEDA проблем вызывать
не должна, а кто слышит это слово впервые, то краткий курс по gEDA можно прочесть здесь.
Теперь пару слов о том, почему я этим файлам обрадовался: дело в том, что имеющиеся в этой
ветке схемы от автора EDUC-8 в большей степени " логические", а не принципиальные.
От этого там " странные" логические элементы с инверсиями на входе - автор утверждает, что так
понятнее прослеживается логика работы схемы.
Работать с оригинальными схемами тяжеловато ещё и потому, что приходится мысленно заменять
серию 9ххх на 74хх, что весьма затрудняет работу.
Ну и для сугубых Виндавозников, которым затруднительно обзавестись gEDA-CAD, Шаос любезно
конвертировал *.sch-файлы в графические схемы, которые я чуть позже здесь собираюсь также
выложить.
_________________ iLavr
|
23 Jul 2013 11:28 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А вот и сами схемы. Я их несколько подрезал по размеру и уменьшил количество цветов до 256.
Но сами чертежи весьма габаритные - поэтому здесь только линки на файлы:
http://www.nedopc.org/nedopc/upload/Educ8_T.gif - Timing and Control - 133776 B;
http://www.nedopc.org/nedopc/upload/Educ8_D.gif - Instruction Decoder - 91884 B:
http://www.nedopc.org/nedopc/upload/Educ8_A.gif - Accumulator - 67240 B;
http://www.nedopc.org/nedopc/upload/Educ8_MX.gif - Muliplexer - 134232 B.
По этим схемам вполне можно проверить работоспособность EDUC-8 в каком-либо из симуляторов.
Но предупреждаю - ошибки возможны. Просматривая схему Educ8_T.gif, я уже нашел две.
Ну и следует помнить также о том, что схема EDUC-8 расширялась, так что есть и просто отличия
от схем, опубликованных в этой ветке ранее.
_________________ iLavr
|
23 Jul 2013 12:18 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Перерисовал схемы в черно-белый формат. Где мог, поправил к более привычному виду,
чтобы элементы не располагались вертикально.
Где заметил ошибки - исправил ( надеюсь, что не добавил своих) , вот файлы:
Timing and Control - 62.16 Kb;
Instruction Decoder Part_0 - 34.46 Kb;
Instruction Decoder Part_1 - 8.85 Kb;
Accumulator - 29.75 Kb;
Muliplexer - 56.47 Kb.
Качество всех схем примерно вот такое:
Instruction Decoder Part_1
_________________ iLavr
|
27 Jul 2013 04:17 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну вот... осилил фронт-панель... мне сегодня трубы меняли на нержавейку, ну и чтоб
не мешаться под ногами у сантехников, - провёл время с пользой за ноутбуком...
EDUC-8_Front_panel
.
_________________ iLavr
|
31 Jul 2013 15:07 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Вобще говоря, схема, построенная на RC-цепочках и одновибраторах, считается разработанной
неграмотно.
Нет, я понимаю, что он упрощал... но я бы его узлы с одновибраторами заменил вот такой схемой:
Она как раз для таких случаев и нужна, и столь известна, что я нашел рисунок в инете
просто с пол-пинка... причём вся - выполнена на "кошерной" ЛА3 !
А то - нищебродская схемотехника и интегральные одновибраторы АГ3 - это как-то не
совсем совместимо...
PS. Сегодня сантехники собрались чинить стоЯк... может узел памяти отрисую...
_________________ iLavr
|
31 Jul 2013 23:52 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А память-то в EDUC-8 - 93415 STATIC RAM 1024X1....
У неё раздельные Din и Dout...
Аналоги либо Интел IC2125 SRAM* 1kx1 60nS or 110 nS
либо IC2125AL SRAM* 1kx1 33nS or 50 nS
Из отечественных - это 132РУ2, 132РУ3, 132РУ4 (1kx1)...
Hу накрайняк - 132РУ5, 132РУ16 (4kx1)
А у меня их ни в реале, ни в симуляторах - нетууууу....
Какая засадааааа...
PS. А 5-битный сдвиговый регистр с параллельной загрузкой - 7496 - и вовсе не имеет отечественного аналога...
_________________ iLavr
|
01 Aug 2013 01:53 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
И таки - отрисовал... Хотя " кросс-ворд" от автора EDUC-8 оказался более запутан...
Увеличить
В " причесанном" виде хардверная реализация системы команд стала просматриваться явно.
А то по-началу озадачился я - ну для чего автор впёр 5-битные сдвиговые регистры 7496,
хотя в одном из них использует лишь 3 разряда ?!
А всё так и оказалось... хитро-задуманно!
В общем-то, схемотехника хардверного варианта реализации " самогонного" ЦПУ мне и интересна.
Для чего я, собственно, и перерисовываю эти схемы в более " читабельный" вид...
_________________ iLavr
|
04 Aug 2013 02:35 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Начал отрисовывать Программный Счетчик (РС) и последовательный Сумматор -
EDUC-8_PC_ADDER_logic и был удивлён неимоверно!
Для инкремента 8-битного Программный Счетчика, выполненного почему-то на
сдвиговых регистрах ( а я давно был в сомнении - не ошибка ли это...) так вот,
содержимое Программного Счетчика прогоняют через сумматор для операции
его инкремента!
А я как-то привык, что Программный Счетчик - это двоичный СЧЁТЧИК, как ни крути...
И РС = РС + 1 - это один управляющий импульс на вход инкремента +1 !
Ну ладно - дорисую, раз начал... но что-то схемотехника при ближайшем рассмотрении
нравится мне всё меньше...
Единственное, что вдохновляет - 7400 (aka 155ЛА3) в схеме поднасыпано с избытком!
При такой схемотехнике и full serial adder 7480 (aka К155ИМ1) кажется в конструкции
избыточным...
_________________ iLavr
|
04 Aug 2013 13:45 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Но решил, что отрисовать в более понятном виде регистр команд и дешифратор - нужнее...
Ибо очень утомило смотреть каждый раз в текст, что за управляющие сигналы проходят...
Автор хорошо придерживается и здесь генеральной линии - больше К155ЛА3 и К155ЛН1 !
Что с точки зрения нищебродской схемотехники - есть правильно!
Меня несколько озадачило применение хитрого регистра К155ИР30 ( он же 74259 или 9334),
но как оказалось - здесь он просто в роли дешифратора с памятью, что позволяет в одном
корпусе реализовать сразу и регистр команды и её дешифратор.
По сути - это 8 триггеров с единым информационным входом и дешифратором их выборки с
единым сбросом и стробом записи.
В остальном - никаких особых схемотехнических изысков...
Дешифратор разбрасывает код команды на 6 инструкций и две группы.
После чего комбинационная логика распределяет куда и в какие моменты времени направить
управляющие сигналы.
Да - упростить тут есть что, но это подорвет нищебродскую генеральную линию - больше
К155ЛА3 и К155ЛН1 !
Ну разве что автор довольно фривольно оставляет по 2-3 неиспользованных элемента
в корпусах логики... что как-то ставит под вопрос целесообразность применения регистра-
дешифратора в одном корпусе.
Да и место на плате не так чтобы жестко лимитировано...
PS. Шаос - какой здесь наиболее адекватный ситуации перевод слова DEFER ?
_________________ iLavr
|
07 Aug 2013 02:45 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Отрисовал задающий генератор и логику управления!!! Схема довольно-таки крупная...
Посмотреть: 2_EDUC-Timing_logic
Что касается её схемотехники, то и, воплощая принцип "больше К155ЛА3 и К155ЛН1",
есть места, где вполне бы можно было ужаться...
Возможно, автор оставил лишние элементы в корпусах про запас на будущее.
И нумерация корпусов - авторская, так что, кто смотрит схемы внимательно и с интересом, -
не удивляйтесь, что отдельных корпусов, в порядке возрастания их нумерации, - на схеме нет.
_________________ iLavr
|
12 Aug 2013 06:00 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
И вот, наконец, я их отрисовал!!! Схема крупная - разбил на две части...
Part_1_EDUC-PC_Adder_logic
----------------
Part_2_EDUC-PC_Adder_logic
---
Посмотреть целиком: 3_EDUC-PC_Adder_logic
Триггер флага переноса - изобразил, как обсудили вот здесь...
Последовательный сумматор - со всеми уточнениями, сделанными здесь...
5-разрядные регистры 7496, на мой взгляд, в этой схеме излишни, т.к. их повышенная
разряность здесь никак не используется.
Можно было бы и двумя 4-разрядными обойтись..
Оригинальную схему автор " замутил весьма талантливо"... вроде как я нигде не ошибся...
Но - если кому понадобится - трассировка для проверки:
Увеличить
PS. Осталось разобрать лишь плату аккумулятора и можно попробовать этот EDUC-8 помоделировать. Только вот отпуск у меня к концу близится...
_________________ iLavr
|
22 Aug 2013 03:19 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Аккумулятор с логикой управления им отрисовал довольно быстро!
Большие идентичные блоки уже были на других схемах...
Посмотреть: 4_EDUC-Accumulator_logic
Особых схемотехнических изысков нет, разве что RAR делают сумированием аккумулятора
с самим собой, а вот RAL - переписью с выходов регистра-аккумулятора на его же
входы со свигов влево на разряд.
Почему это меня удивило - так 155ИР1 - регистр сдвиговый, и RAR можно выполнить одним импульсом!
Но нет - сдвиг 8 бит через последовательный сумматор...
Но в принципе - все основные блоки я привел в понятный вид, кроме дешифратора-селектора УВВ,
логики управления УВВ и самих УВВ...
Они пока не нужны, поскольку в минимальном варианте EDUC-8 запускается на том, что уже есть.
Если останется время в напряженную неделю конца отпуска - возможно, потихоньку начну
пробовать моделировать эту конструкцию...
_________________ iLavr
|
22 Aug 2013 17:07 |
|
|