Было (есть) несколько схем: и 12/7 = 1,71 , и 6/4 = 1,5. Про разные схемы есть ветка на bk0010.org, там же описаны слуховые ощущения различных схем.
Было (есть) несколько схем: и 12/7 = 1,71 , и 6/4 = 1,5. Про разные схемы есть ветка на bk0010.org, там же описаны слуховые ощущения различных схем.
Последний раз редактировалось DenSam; 28.12.2015 в 14:32.
- БК-0011М, БК-0011М-01, БК-0010-01
- Электроника-85, УКНЦ, ДВК
- ЕС-1841, ЕС-1845, Искра-1030М, Искра-1031, Поиск, МС1502
- Корвет, Радио-86РК-SRAM, Львов ПК-01, Вектор-06Ц, Апогей БК01Ц
- Агат-7, Агат-9
- Leningrad 2012, ZX Evo rev.C + NeoGS, Дельта, ZX Spectrum 48K original
- Yamaha YIS 503III, Atari 65XE, Amiga 1200, SparcStation 10
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
.
На фоне текущих знаний о работе процессора 1801ВМ1 - опубликованная ранее осциллограмма работы реального процессора выглядит немного странно:
Скрытый текст
[свернуть]
Вопросы вызывает дополнительная задержка снятия SYNC на один такт в зомби-цикле после команды MTPS R0.
Последний раз редактировалось Patron; 29.12.2015 в 16:44.
ЕМНИП, на части диаграм RPLY мониторился с разъема МПИ а не с процессора (у меня спаян переходник от БК к логическому анализатору, чтобы не втыкать полторы дюжины зондов). То есть, сигнал взят на входе триггера ТМ2, который защелкивает RPLY по фронту CLC и через резистор подается собственно на процессор. Поэтому реальный RPLY с ноги процессора снимался позже, и SYNC тоже снимается позже. Это также видно по DIN, который снимается на третий фронт CLC, а не на второй.
Да, интересно.
На модели Async не подтверждается, пробовал разные режимы снятия/установки RPLY.
На реальном процессоре 1801ВМ1А тоже не подтверждается:
RPLY синхронизирован по спаду CLC []
RPLY синхронизирован по фронту CLC []
Диаграмма снималась на БК-0010, вспомнилось что там схема RPLY не на ТМ2 сделана, там 155ИР1 стоит на синхронизацию RPLY, надо достать ту плату и восстановить реальную схему.
Посмотрел уравнения:
Получается такое - DIN снимается по второму RPLY на фронте CLC, что наблюдается на диаграмме. Значит был активен din_done и qbus_done, qbus_flag очистился. oe_clr не активируется. А потом оно ждет снятия RPLY (комбинации ~rply_ack[0] & rply_ack[2]), тут видимо снятие RPLY на процессор не успело поступить через схему синхронизации, другого варианта для такой диаграммы я не вижу.Код:always @(*) begin if (~slk) sync_out <= qbus_win_h; if (slk) qbus_win_h <= qbus_win; end always @(*) begin if (oe_clr) qbus_win <= 1'b0; else if (dmr_req_l & qbus_gnt_l) qbus_win <= 1'b1; end assign oe_clr = mj_res | (~rply_ack[0] & rply_ack[2] & ~qbus_flag); assign qbus_done = (din_done & ~plrt[7]) | dout_done | mj_res; assign din_done = din_out_l & rply_ack[3]; always @(*) begin if (qbus_done) qbus_flag <= 1'b0; else if (sync_fedge) qbus_flag <= 1'b1; end always @(*) begin if (~slk) rply_ack[0] <= (pin_rply_in & pin_bsy); if ( slk) rply_ack[1] <= rply_ack[0]; if (~slk) rply_ack[2] <= rply_ack[1]; if ( slk) rply_ack[3] <= rply_ack[2]; end
Упдата: RPLY на диаграмме формировался РЕ-мулятором (уже и не вспомнить с какой версией циклограмм), точный момент плавает на 10-30нс, так что вариабельность вполне возможна.
Последний раз редактировалось Vslav; 29.12.2015 в 22:20.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)