|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Отладочный модуль на К1801ВМ1
Author |
Message |
Случайность
Doomed
Joined: 05 Apr 2011 12:45 Posts: 491 Location: Великий Новгород
|
UPD
спросил у человечка который хорошо разбирается в этой архитектуре насчет R2 и DD2.1
резистор R2 токоограничивающий. Т.к процессорная нога RPLY при обращении к внутренним регистрам процессора работает как выход. И на ней будет лог. 0 на на ноге 5 DD4.1 будет в этот момент лог.1
DD2.1 формирует необходимую временную задержку при REPLY от внешней схемы. Его можно исключить, но тогда уменьшится быстродействие.
В общем все так. И предположения насчет этих элементов оказались верны сравнивая эту схему с другими
_________________ танцуй пока живешь под каплями огненного дождя...
|
09 Nov 2013 05:02 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Странно. Во встреченной мною справочной литературе нигде такая особенность не упоминается. Везде написано - вход.
В момент формирования ответа устройством низкий уровень сразу же появится на входе /RPLY процессора. Без задержки, поскольку вход /R D4.1 асинхронный. Переключится в единицу он после переключения в единицу сигнала /RPLY от устройства по следующему спаду тактового сигнала, т.е., возможно, с некоторой задержкой. Но какой смысл в такой задержке, если /RPLY устройство снимает лишь после снятия /DIN (/DOUT) процессором, т.е. в любом случае после того, как процессор ответил на /RPLY? Или я что-то неправильно понимаю в логике работы этой штуки?
|
09 Nov 2013 06:59 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Меня вот INIT смущает... по таблице - он вход-выход.
А по тексту описания - что-то я этого не заметил...
_________________ iLavr
|
09 Nov 2013 08:05 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
В исходной статье /INIT вообще не используется. Роль входа сброса, если я правильно понимаю, отведена сигналу /DCLO. На блок-схемах ВМ2, ВМ3 /INIT обозначен как выход, хотя в таблицах тоже пишется вход/выход.
Сделать аппаратное пошаговое устройство, по образу и подобию оного для ВМ80, не получится?
|
10 Nov 2013 00:12 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Я тоже прикидываю - должно получиться, мне кажется...
Но надо разобраться подробнее, всё же проц незнакомый.
_________________ iLavr
|
10 Nov 2013 06:04 |
|
|
aav8
Maniac
Joined: 05 Nov 2008 19:47 Posts: 287 Location: 81.28.208.238
|
Довольно сильно сомневаюсь, что пошаговое прерывание так просто получится
- в проце не нашел ног для поддержки онного
- если просто задержать ответ пассивного устройства (память/устройство (хотя в этой системе нет такого разделения)) проц перейдет в прерывание по 4-му адресу/вектору - ошибка обращения к памяти.
Наверное нужно просто отключать тактирование - проц скорее всего полностью статический.
|
10 Nov 2013 06:29 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А специальных ног у 8080 тоже нет... Там удобно используют READY - но он не "для поддержки онного"...
Проц не статический - мы уже это смотерли в его характеристиках. Есть минимальная тактовая.
Но я думаю - надо просто посмотреть чем он удобно тормозится.
Или 1801ВМ2 поюзать - он вроде как точно тормозится.
_________________ iLavr
|
10 Nov 2013 06:39 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Процессор выдаёт сигнал /DIN (/DOUT), устройство отвечает сигналом /RPLY. Процессор снимает /DIN (/DOUT). Если устройство будет продолжать удерживать /RPLY, не будет ли процессор простаивать, ожидая его снятия? Это можно было бы использовать для пошагового устройства, защёлкнув в регистрах предварительно адрес.
Если в Шахнове посмотреть на рис. 11.5 (временная диаграмма цикла ПДП), то мы увидим, что входы там названы выходами, и наоборот. Возможно, вывод, обозначенный в таблице как "вход/выход", выполняет альтернативную функцию в моменты, когда процессор с этим выводом является "НЕГЛАВНЫМ", т.е. не управляет шиной, а отдал её в распоряжение другого активного устройства? SYNC тоже там назван "входом/выходом".
Last edited by VituZz on 10 Nov 2013 07:22, edited 1 time in total.
|
10 Nov 2013 07:10 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Потратил я сегодня квант времени и дамп кодов Монитора, тот, что в статье МПСС, - оцифровал.
Исходник очень низкого качества - вот он: Mpss_1986_02_P37.djvu.
Из него я делал контрастный файл графики: Mpss_1986_02_P37.gif, который и распознавал
Файнридером, поскольку с полутонами, как в оригинале, распознается просто отвратительно.
После распознавания я фактически весь дамп перечитал и вручную проправил, там где плохо
видно, смотрел этот же дамп из другого источника: Mpss_1986_02_p37.jpg.
Вот здесь дамп монитора - с адресами, как в статье МПСС: MONITOR_1986_02_P37.doc.
Вот здесь дамп монитора - без адресов, как для бинарника: MONITOR_1986_02_P37.txt.
Весь набор я выложил, чтобы вы могли исправить что-то или уточнить, ежели я где-то ошибся.
Хотя я пару раз внимательно проверил - но исходный текст очень некачественный.
Я сразу хотел выложить и бинарник, но споткнулся на вот каком вопросе: числа в дампе, видимо,
16-битные (2-байтные)?
Как их упаковывать в бинарник для прошивки: младший-старший байты или старший-младший?
И если я хочу использовать 2 ПЗУ типа РФ, то бинарник надо разделить на 2 прошивки?
Одна - для младших байт, вторая - для старших?
_________________ iLavr
|
10 Nov 2013 07:20 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Числа-то 16-битные, но каждая циферка ведь отвечает за 3 бита. Поэтому разделять для РФ нужно, пересчитывая целиком сразу 16-битное число из 8-битной системы в 16-битную, а потом старший байт писать в старшую РФку, а младший - в младшую.
016700 8 -> 0.001.110.111.000.000 -> 0001.1101.1100.0000 -> 1DC0h. 1D - туды, C0 - сюды . Вроде так? А писать в дампе, я думаю, старший-младший.
|
10 Nov 2013 07:31 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Это всё автоматически получится при преобразовании char в word. А word - в 2 байта.
Так и сделаю - хотя на Intell процессоре удобнее наоборот...
Ну оцифрованный txt-дамп я сделал - в бинарник теперь можно каждому
укладывать, как ему удобно.
PS. Попробую я декомпилировать Монитор через эмулятор УК-НЦ. Посмотрим, что получится...
_________________ iLavr
Last edited by Lavr on 10 Nov 2013 08:06, edited 1 time in total.
|
10 Nov 2013 07:46 |
|
|
Случайность
Doomed
Joined: 05 Apr 2011 12:45 Posts: 491 Location: Великий Новгород
|
2 Lavr
отличная работа, я тоже занимался этим но как то лениво шло. так как в ручную набирал,
завтра попробую позвонить в одно место насчет некой доки на К1801ВМ1 и о способе ее заполучения.
_________________ танцуй пока живешь под каплями огненного дождя...
|
10 Nov 2013 07:59 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Мне кажется, по первоисточнику так (адрес/ первоисточник оцифровано):
002/ 010006 010005
007/ 002454 062454
146/ 000402 004002
Last edited by VituZz on 10 Nov 2013 08:52, edited 1 time in total.
|
10 Nov 2013 08:43 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Если я всё правильно прочитал, то похоже, что - не будет. Здесь aav8, видимо, прав:
Но я надеюсь, как-то без нас работали люди под этим процем? Значит и
пошаговая отладка как-то осуществлялась.
Это сейчас эмуляторов - пруд-пруди, а тогда с ними было куда как хуже...
Значит как-то умели отладить пошагово.
_________________ iLavr
|
10 Nov 2013 08:50 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А поточнее?
002/ 007/ - в источнике просто нет...
есть
020/ 040/.
Или у нас источники разные?
Нет - я вполне мог и не определить точно кое где, для чего и выложил все составляющие.
_________________ iLavr
Last edited by Lavr on 10 Nov 2013 08:55, edited 1 time in total.
|
10 Nov 2013 08:52 |
|
|
Who is online |
Users browsing this forum: No registered users and 19 guests |
|
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 post attachments in this forum
|
|