В коллекцию или для дела ?
Чем плох имеющийся в больших остатках Н1806ВМ2 ? Разве как pin в pin замена для Н1801ВМ2 не годится?
http://www.vak.ru/doku.php/proj/bk/1801vm-series
мало написано об отличиях, или их просто нет ?
1801ВМ2 придется ставить в DIP, т.к. в квадратах они нигде не числятся, т.к. были заменены везде на 1806, жаль что не полная замена, видимо требуется правка ПО, разводки и обвески.
Ретрокладовая продажи
Просьба к тем кто уже основательно "переварил" эти доки по ВМ2, написать список отличий работы ВМ2 от ВМ1 и в сравнении с LSI11.
Немного расскажу о отличиях КМ1801ВМ1А от КМ1801ВМ2А.
1.Тактовая частота. ВМ1А реально до 5.00 ( 5.5 макс ), ВМ2А реально до 11.00 ( 12 макс ).
2.ВМ1 сам по уродским таймингам организует МПИ по предвыставлению адреса перед SYNC - около 30 нс, ВМ2 при закоротке AR на SYNC тоже так делает. Но в ВМ2 можно время между SYNC с выставленным адресом и подачей сигнала AR подрастянуть как следует - это огромный плюс для немаленьких М-ЭВМ.
В ВМ2 можно тактовую частоту временно остановить.
3.В ВМ2 не надо стробировать прерывания и сигнал RPLY.
4.РНП в ВМ1 читается из 177716 и представляет собой адрес, кратный 400 ( 8 ) с
содержанием первой исполняемой инструкцией. В ВМ2 РНП не имеет адреса и читается комбинацией сигналов SEL, DIN = 0v, SYNC = +5v. Значение так же кратно 400 ( 8 ),
но представляет из себя адрес таблицы векторов ( не имеющее аналога в DEC-системах ). Первый вектор в этой таблице ( смещение от начала таблицы = 0 ) является адресом первой исполняемой команды. Таблица векторов всегда вычитывается при активном сигнале SEL=0v - т.е. может быть где угодно, по сути в следующих за 64 кбайт адресном пространстве ( наподобие "области регистров" в Интел - процессоре, только навороченнее ).
Например, мы не делаем спецрегистра РНП и по адресу 000000 у нас есть контент :
123456 000340 - ВМ2 при старте прочтет в РНП = 000000 и будет считать, что таблица векторов начинается с 000000 адреса, где найдет число 123456 - вычитает эту ячейку и начнет ее исполнять. Вычитывание ячейки с 000000 адресом будет сопровождаться сигналом SEL=0v. Однако запуск на исполнение с адреса 123456
будет идти уже с сигналом SEL=+5v.
5.ВМ2 вроде как исполняет простое деление и простое умножение, тогда как ВМ1Г - только простое умножение ( ??? ).
6.В ВМ2 нет IRQ370 - ног не хватило, но в 1806ВМ2 есть IRQ250. В ВМ2 есть аппаратный хвост на запрос к адресам окна МПИ , в ВМ1 такого нет. В 1806ВМ2 есть целых 2 аппаратных окна МПИ ( ??? + ??? ).
7.ВМ1А-5 мгц в студийных условиях может показать ок. 600 т. рег-рег, ВМ2А-10 мгц - ок. 1000 т. рег-рег, 1806ВМ2-8 - порядка 1500 т. рег-рег.
8.В ВМ2 есть дыра в микрокоде - см. сообщения тов. Patron.
9.В ВМ1 есть аппаратная выборка регистров 177714, 177716. В ВМ2 её нет. В ВМ1 есть хвост таймера 177700-177712, в ВМ2 его нет. ВМ2 рассчитан только на наличие 1 процессора в одной секции вычислительного устройства, ВМ1 - до 4 процессоров в секции.
Последний раз редактировалось MM; 08.03.2014 в 20:00.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ув ММ, расскажите как организовать "ПУЛЬТъ" для ВМ1 и ВМ2. Как я понимаю, когда SEL упал в 0 то не ясно что ВМ2 читать собрался "адрес таблицы векторов" или "первый вектор в таблице векторов" да и потом не ясно где в памяти можно разместить пульт и как из него выйти в boot rom например.
В ВМ1 пульт реализует пользователь по своему усмотрению, более конкретные вопросы следует направлять к ув. Anonymous с форума Фантом-санната.
Я припоминаю по ВМ1, что при останове на МПИ процессор записывает какой-то бит в 177716 ( какой - запамятовал ) и сохраняет текущий адрес в паре ячеек ОЗУ ( ! ) в адресах сектора BS. Этот момент лучше прочесть в ветках описания работы ВМ1 - они там неплохо объяснены.
В ВМ2 с этим вопросом несколько получше - есть описание таблицы векторов процессора, и там не иначе, как в смещении 000004 от адреса начала таблицы идет вектор пульта - читается адрес начала программы обслуживания пультового режима. При входе в этот участок кода сигнал SEL=0v., таким образом можно располагать пульт абсолютно независимо ( и даже параллельно ) с основным массивом ОЗУ. Для работы пульта имеются машинные инструкции чтения данных из основного массива ОЗУ, доступного при сигнале SEL=+5v.
Кроме того, в слове состояния процессора имеется бит со значением "400" (8), который и отображает наличие режима "пульт". Теоритически, это можно использовать для адресации дополнительных 64 кбайт памяти.
В М-ЭВМ МС1201.02 ПЗУ 1801РЕ2-055 располагается в адресе 140000 - в имеено "теневом" секторе сигнала "SEL=0v".
При входе в пульт ВМ2 сначала читает адрес начала таблицы векторов ( безадресное чтение), а потом из таблицы выбирает нужное значение. Таблица векторов ВМ2 неплохо описана в его ТО, а кратко - в ТО на плату КЦГД ДВК.
В МС1201.02 при режиме SEL=0v доступно ДОЗУ в адресах 170000-173777 ( ??? ) -
там хранятся параметры пульта. Это следует учитывать при применении ПЗУ РЕ2-055 в др. конструкциях на 1801ВМ2 ( 1806ВМ2 ).
Для самых простых конструкций на ВМ2 можно не делить память на пультовую и рабочую, просто разнести эти массивы по адресам ( так обычно делают в МС1201.02 при её отладке, кроме ОЗУ 170000-173777 ).
По ходу написания модуля дизассемблера 1801ВМ2 встал вопрос о латинских мнемониках уникальных команд ВМ2.
Код:000020 RD si 1801ВМ2 безадресное чтение (особый обмен по магистрали, не требует ответа RPLY ) R0<-(SEL) только в пультовом режиме 000021 URD si 1801ВМ2 читает слово из пространства USER: R0<-(R5)+ только в halt- режиме. 000022 RDPC si 1801ВМ2 чтение копии PC: R0<-PC', только в 000023 RDPC si пультовом режиме. 000024 RDPS si 1801ВМ2 чтение копии PSW: R0<-PSW', только в 000025 RDPS si пультовом режиме 000026 RDPS si 000027 RDPS si 000030 RD si 1801ВМ2 безадресное чтение аналогично коду 000020 000031 UWR si 1801ВМ2 запись в адресное пространство USER: R0-> -(R5) только в пультовом режиме. 000032 WRPC si 1801ВМ2 запись в копию PC: R0->PC', только в 000033 WRPC si пультовом режиме. 000034 WRPS si 1801ВМ2 запись в копию PSW: R0->PSW', только 000035 WRPS si в пультовом режиме 000036 WRPS si 000037 WRPS si
Другой вариант мнемоник тех же команд:
Код:000020 RSEL 000021 MFUS 000022 RCPC 000024 RCPS 000031 MTUS 000032 WCPC 000034 WCPS
Предусмотрели ли проектировщики 1801ВМ2 какие-то конкретные ассемблерные мнемоники для этих кодов ?
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)