Сообщение от
Titus
В смысле не известно? Тайминги или что?
Непонятно, за счёт чего получаются наблюдаемые тайминги.
Например, на БК-0011М @ 4 МГц :
Код:
CMP @Tab(R1), @#Addr 6 x DATI 80 CLC
CMP @Tab(R1), @Tab(R0) 7 x DATI 80 CLC
---------- Post added at 16:40 ---------- Previous post was at 16:22 ----------
Сообщение от
Vslav
Так R0 для смежных комманд уже не будет указывать на адрес следующей команды? Или это уже не суть важно для этого теста?
Совсем не важно.
Можно на "эмуляторе ПЗУ" реализовать и UART, но с некоторым расползанием времянки и скорее всего без прерываний.
Прерывания весьма желательны, но можно попробовать и без них - в пультовом порту "Электроники 85" тоже, говорят - нет прерываний.
Если удастся сделать рабочий комплект RT-11 + HX для порта без прерываний - он будет грузиться и через пультовой порт Pro350 / Э-85.
я сейчас буду заниматься захватом видеовывода и выводом его через USB в окошко Windows, уже прикупил макетик на CY7C680013.
Это хорошо для запуска игр, но для загрузки RT-11 и запуска тестов нужен именно терминальный обмен через последовательный порт.
Там стоит ВП1-037, с ОЗУ ведь работает она? А процессор на RPLY от нее ориентируется. Какие тут подробности интересны?
Конечная задача, которую нужно решить - определение формулы расчёта количества тактов, которое потребуется для выполнения любой команды процессора БК, обращающейся к ОЗУ в циклах от 1 x DATI до 7 х DATI ( или 6 x DATI + DATO или 6 x DATI + DATIO ).
Для начала, наверное, хорошо бы получить осциллограммы выполнения всех вариантов команды CMP с кодом команды и всеми аргументами в ОЗУ:
Код:
R0 (R0) (R0)+ @(R0)+ -(R0) @-(R0) Addr @#Addr @Tab(R0)
Cmp R1 14 35 35 49 36 49 49 49 61
Cmp (R1) 30 43 43 57 44 58 57 57 70
Cmp (R1)+ 30 43 43 57 44 58 57 57 70
Cmp @(R1)+ 43 57 57 70 58 71 70 70 83
Cmp -(R1) 31 44 44 57 45 58 57 57 71
Cmp @-(R1) 44 57 57 71 58 72 71 71 84
Cmp Addr 43 57 57 70 57 71 70 70 83
Cmp @Tab(R1) 56 70 70 83 71 84 83 83 96
А потом то же самое для MOV и ADD.