Просмотр полной версии : "ZX-8080" - Даунгрейд компьютера "Ленинград"
HardWareMan
09.10.2020, 13:58
Технически, можно тормозить не через READY (строго кратно такту) а через удержание тактовой последовательности (удлинения периодов до необходимой величины, чтобы в следующем за SYNC такте процессор точно имел доступ к ОЗУ). Такое торможение можно даже компенсировать (пропорционально укоротив следующий его такт). ЕМНИП в одном из этих ваших русских спектрумов так же работает процессор (особенно турбированный). Но всё дело в способности i8080 среагировать на такое изменение.
(удлинения периодов до необходимой величины, чтобы в следующем за SYNC такте процессор точно имел доступ к ОЗУ). Такое торможение можно даже компенсировать (пропорционально укоротив следующий его такт). ЕМНИП в одном из этих ваших русских спектрумов так же работает процессор (особенно турбированный)
Например вот (https://zx-pk.ru/threads/16935-tajmingi-leningrad-1.html?p=609217&viewfull=1#post609217). С ВМ80 такое вроде никто не вытворял, все же должен быть соответвующий запас быстродействия проца. Возможно на представляющих интерес частотах нечто подобное прокатило бы с 580ВМ1.
HardWareMan
09.10.2020, 15:48
Например вот (https://zx-pk.ru/threads/16935-tajmingi-leningrad-1.html?p=609217&viewfull=1#post609217).
Именно.
С ВМ80 такое вроде никто не вытворял, все же должен быть соответвующий запас быстродействия проца. Возможно на представляющих интерес частотах нечто подобное прокатило бы с 580ВМ1.
Я делал лишь пропуск одного такта из пяти для имитации 2МГц при тактовой 2,5МГц в своём Специалист МХ2.
Короче пробные платы заказаны, так что процесс поиска истины запущен :)
Например вот.
Как ты видел из комментов, что Ленинградоподобный спектрум без WAIT не работает на обычных РУ5. Могу точно сказать что в случае с динамикой компьютер ZX-777 работает без WAIT с 100нс памятью и 555ИР22 в качестве двух буферов (у меня память 64Kx4). Возможно если применить в качестве буферов 1533ИР22 или 1531ИР22, то возможно память можно применить немного туповатую 120нс.
ZX8080 все же отличается от безwaitового ленинграда с z80 в некоторых принципиальных моментах. В любом случае заинтересованные зрители ждут и надеются, что с быстрой памятью все заработает. Если не сразу, то с минимальными доработками.
РУ5Д - -25
РУ5Г - -20
РУ5В - -15
РУ5Б - -12
РУ5А - в справочниках нет, предположительно -10
Пока платы в производстве, то провел опыт, тем самым закрыл вопрос по памяти для ZX-777 - https://zx-pk.ru/threads/30053-zx-777-remont-i-poleznaya-informatsiya.html?p=1084724&viewfull=1#post1084724
В общем весьма обнадеживающая информация. При применении КР1533ИР22 может заработать память 150нс, а это из наших РУ5В.
Кстати нашел у себя РУ5Б. Так что ждем платы с надеждой что заработает. :)
Mick, это все хорошо, но есть нескромный вопрос - у тебя логический анализатор есть? И если да, то ты смотрел им свой 777?
у тебя логический анализатор есть?
Какой то китайский где то есть, но не смотрел им 777
NEO SPECTRUMAN
13.10.2020, 01:00
Короче пробные платы заказаны, так что процесс поиска истины запущен
какой в итоге порт полурядов клавы?
нет изменений?
Mick, тогда другой вопрос. 777 работает без WAIT при CLK=/RAS или /H0(=/CAS)? Если второе, то я бы не торопился переносить успешные результаты на текущий вариант zx8080
тогда другой вопрос. 777 работает без WAIT при CLK=/RAS или /H0(=/CAS)?
Работает при CLK = /RAS и /CAS = /H0
- - - Добавлено - - -
какой в итоге порт полурядов клавы?
нет изменений?
Регистр на адресные линии клавы порт FF
ld a,b
out ($FF),a - порт адресных линий
in a,($FE)
Работает при CLK = /RAS
Это очень обнадеживающая информация
Это очень обнадеживающая информация
Ну если совсем быть точным, то RAS/ пропущен через буфер (ЛП5)
И в zx8080 f2 не просто /ras а с задержкой. Понятно, что одно дело рисовать идеализированные временные диаграммы с разрешением 1/(14 МГц), а в реале всякие запаздывания и задержки.
Ха, КР1533ИР22 это оказывается не так может и хорошо быть для быстрой памяти - https://zx-pk.ru/threads/30053-zx-777-remont-i-poleznaya-informatsiya.html?p=1084755&viewfull=1#post1084755
Там в 777 я оставил старый формирователь CAS/ (1-2) и новый H0/ (2-3). Так вот в некоторых случаях для быстрой памяти понадобилась задержка CAS/
Хорошая новость, китайцы изготовили платы и отправили.
Хорошая новость, китайцы изготовили платы и отправили.
Еще хорошая новость, платы в России, прошли таможню.
Действительно хорошая новость, быстро доехали до РФ
быстро доехали до РФ
Ну да, платы уже на почте. Если все будет нормально, то в субботу их заберу.
NEO SPECTRUMAN
22.10.2020, 18:42
а прошивка то еще нетуту :v2_dizzy_sleep2:
а прошивка то еще нетуту
Для начала пойдут простые тесты.
NEO SPECTRUMAN
22.10.2020, 18:54
Для начала пойдут простые тесты.
не оно то уже запускаемо
но работа не стабильная
ну и нужно подгружать дополнительный блок того чего не влезло
иначе много чего не работает...
последнюю версию вполне можно пытатсо прошивать
https://zx-pk.ru/threads/32195-zx8080-rom.html
в принципе пересилил нехотелку
еще немного оно ковыряю
нашел еще косяки в dao-вских командах
всякие
;LD ($5C3D),SP
push hl ;
ld hl,$0000 ;
push af ;DAO
add hl,sp ;
pop af ;
ld ($5C3D),hl ;
pop hl ;
записывали фиг знает что
но их исправление визуально ничего не дало...
чтение переменных по моему не работает
хотя запись вроде бы как нужно
Mick, у тебя на всякий случай (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1077437&viewfull=1#post1077437) есть кварцы 12-13 МГц?
Mick, у тебя на всякий случай есть кварцы 12-13 МГц?
12МГц точно есть, а вот 13 надо смотреть есть или нет.
NEO SPECTRUMAN
23.10.2020, 13:29
Mick, у тебя на всякий случай есть кварцы 12-13 МГц?
а телек как потом будет это безобразие ловить?
Ответы на все вопросы по этой теме есть по ссылке на сайте Prusaka, и текст и фото
NEO SPECTRUMAN
23.10.2020, 14:36
Регистр на адресные линии клавы порт FF
сделал in out вот так
;; in
L34A5:
CALL L1E99 ; Routine FIND-INT2 puts port address in BC.
; All 16 bits are put on the address line.
if io_type = 1
IN A,(C) ; Read the port. ;!!!!!!!!!!!!!!!!
endif
if io_type = 2
ld a,c
ld (zx8080_in_l_port),a
ld a,b
call zx8080_in
endif
;; OUT
L1E7A:
CALL L1E85 ; routine TWO-PARAM fetches values
; to BC and A.
if io_type = 1
OUT (C),A ; perform the operation. ; out !!!!!!!!!!!!!!!!!!!!!!!!!!1
RET ; return to STMT-RET.
endif
if io_type = 2
push af
ld a,c
ld (zx8080_out_l_port),a
ld a,b
jp zx8080_out
;pop af
;ret
endif
в озу вынесено больше чем надо для совместимости ПЗУ-шки с обычным спектрумом
у которого нет half_row_port-а
и которому нужны out-ы впритык чтоб юзать 16 битные порты
не знаю работает ли правильно out после pop-а
;code in ram
zx8080_in
out (half_row_port),a
zx8080_in_l_port = $+1 : in a,($FE)
ret
zx8080_out
out (half_row_port),a
pop af
zx8080_out_l_port = $+1 : out ($FE),a
ret
то есть halfrow port можно заюзать вообще для чтения\записи в любой 16 битный порт
а не только для одной клавиатуры
Ну что, платки получил с почты. Истина стала еще на один шаг ближе :)
https://i.ibb.co/hK7xHXv/IMG-20201024-140249.jpg (https://ibb.co/hK7xHXv)
https://i.ibb.co/2KDF4Fj/IMG-20201024-140414.jpg (https://ibb.co/2KDF4Fj)
Красиво, душевно. Какие примерно размеры? Что планируешь поставить на панельки?
Размеры приведены уже давно в первом посте, продублирую еще раз
Габариты 250 x 140 мм
На панельки точно поставлю ОЗУ, ПЗУ, процессор, буферный регистр ИР22 и вот думаю еще под буфер шины, чтобы попробовать, будет ли без него работать.
Чуть обновил тест (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1081333&viewfull=1#post1081333). Теперь если работают чтение из пзу и запись в порт, но совсем не работают запись и/или чтение озу бордюр ненадолго станет белым и при этом будет бип и только потом зависнет. В первом варианте бип с белым бордюром по ошибке озу тоже были, но при полной неработоспособности озу до этого просто не дошло бы дело.
Тест это хорошо, правда я еще неделю собирать комп буду.
Лучше не торопиться, и при сборке меньше вероятность ошибки и может неточности в схеме найдешь. Думал, что изготовление плат и доставка займут больше времени.
Как бы процесс начался :)
https://i.ibb.co/gjB4PQF/IMG-20201026-155340.jpg (https://ibb.co/gjB4PQF)
Часть деталей идет с разбираемой Весты.
Глядя на надпись на краю платы осознал, что 2020 - это единственный год в нашей жизни, выраженный числом, на которое 8080 делится без остатка. Так что самое время для подобного проекта :D
что 2020 - это единственный год в нашей жизни, выраженный числом, на которое 8080 делится без остатка.
Надо же, я так глубоко не вдавался в смысл. Однако. :)
8080 / 2020 = 4МГц. Есть значит к чему стремится :)
NEO SPECTRUMAN
26.10.2020, 19:41
Так что самое время для подобного проекта
а в 2021.25 и в 2021.5
можно делать zx8085 и zx8086 :v2_lol:
До сих пор читал в AMDшном даташите только про один (+разновидности) 4 МГц вариант 8080 - am9080a-4. Но вот пишут (http://www.cpu-zone.com/8080.htm), что якобы редкий интеловский 8080B тоже 4 МГц (там, кстати, можно увидеть и фотки трех разновидностей am9080a-4, еще один экземепляр здесь (https://www.cpu-world.com/CPUs/8080/AMD-AM9080A-4DC.html)). Любители конспирологии могут прочитать более развернутую информацию здесь (http://www.cpushack.com/wp-content/uploads/2018/06/VintageIntelMicrochipsRev4.pdf#%5B%7B%22num%22%3A2 520%2C%22gen%22%3A0%7D%2C%7B%22name%22%3A%22XYZ%22 %7D%2C87%2C744%2C0%5D).
Для практики это ничего не меняет, скорее дает коллекционерам еще один объект для приложения сил, но все равно интересно.
такой только в продаже
https://www.ebay.com/itm/AMD-AM9080A-2DC-AM9080A-8-BIT-Microprocessor-CDIP40-X-1PC/162135174757?hash=item25c0026e65:g:094AAOSw8oFXz7F v
такой только в продаже
А чем он лучше P8080A-2. У них максимальная частота 2.67МГц, это почти как наш ВМ80А
Если на то пошло, то нужно искать именно AM9080A-4
Вон у utsource вроде они есть по 9 баксов - https://utsource.net/itm/p/4147403.html и плюс 10 баксов доставка, итого 19 баксиков за процик. Вопрос только в том, настоящие они или как обычно - что вам напечатать на микросхеме?
Теоретически выбор продавцов больше (https://www.digipart.com/part/AM9080A-4DC), но предполагаю, что на постсоветском пространстве проще купить КР580ВМ1
в керамике фотка, как настоящий
почти две тысяи руб получается
в керамике фотка, как настоящий
почти две тысяи руб получается
Фотка не от него.
На всех четырех фотках A-4, ссылки на которые я приводил, они в керамическом корпусе (DC или CC). Фотки варианта PC пока не видел
NEO SPECTRUMAN
29.10.2020, 16:37
4МГц. Есть значит к чему стремится
с квадратным экраном и 256 тактами в строке? :)
за одно компенсирует проседание скорости после адаптации к 8080
Еще интересный экспонат - военная версия AM9080A-2DM (1 (https://www.cpu-world.com/CPUs/8080/AMD-AM9080A-2DM.html), 2 (http://www.chipdb.org/img-amd-am9080a-2dm-2113.htm)). Штатные 2.6 МГц не впечатляют, зато он обеспечивает их в диапазоне -55 - +120 градусов Цельсия. Возможно при меньшей максимальной температуре он был бы способен на большее по частоте, особенно если его заморозить.
- - - Добавлено - - -
Нашлись (https://buy-chip.ru/search?query=am9080) 3 и 4 МГц amdшные 9080 в РФ. Но eFind про них пишет "Ограничения: Только ЮЛ и ИП, заказ от 5000 руб., только опт."
- - - Добавлено - - -
В качестве курьеза. Киевский Квазар продает ВМ80 за 26$, вероятно они из чистого золота
вероятно они из чистого золота
Если керамика и свежак, то все может быть.
Нашлись 3 и 4 МГц amdшные 9080 в РФ. Но eFind про них пишет "Ограничения: Только ЮЛ и ИП, заказ от 5000 руб., только опт."
Проще на utsource тогда. :)
- - - Добавлено - - -
с квадратным экраном и 256 тактами в строке?
Это было условное сравнение. Но если вдруг взлетит на 3,5 МГц, то если не много переделывать, то и на 4 МГц можно будет попробовать.
Немного капитанства про высокочастотные 8080. Если оставить в стороне коллекционные редкости, то в зависимости от выбранных критериев можно выделить такие варианты:
1. Простота и дешевизна: (КР)580ВМ80А поздних годов выпуска, условно >=91. Для 3 или чуть больше МГц может подойти, тем более можно купить несколько штук и отобрать
2. Простота, но подороже и есть вероятность обмана: 8080/9080A-1. На ebay их довольно много продают (в основном китайцы) и есть надежда, что некоторые из них нормальные (а некоторые нет, "ацетонная проба" (https://youtu.be/12u_hBkHB88?t=590), только там не проц, а vdp msx)
3. Высокочастотность: ядро Vslava в железной инкарнации, если не путаю Hardwareman его тестировал в специалисте
- - - Добавлено - - -
Писал насчет "заморозки", но потом засомневался. Возможно это особенность NMOS, но внимательное чтение даташита показывает, что при уменьшении температуры потребление 9080 растет
Достаточно просто поднять напряжение питания до 6 вольт и подумать о радиаторе...
Достаточно просто поднять напряжение питания до 6 вольт и подумать о радиаторе...
Ну как бы зачем городить, если у freddy ВМ80 заводился на 32/9 = 3,55 МГц. Но там связка ГФ24 и ВК28. И никаких поднятий напряжений и радиаторов.
Вот его цитата:
Дошел до 32Мгц и успокоился, КР580ВМ80 абсолютно стабильно работал, даже не думал глючить и перегреваться. На радостях я перебрал всю свою коробочку с 80-ми процессорами, не заработали только оригинальные Интел в керамике. Отечественные заработали все, все же , чтобы там грамотеи не писали, а скопиировали мы процессор не тупо а с умом. Наш получился немного лучше. Мелочь, а как приятно.
Сам пост https://zx-pk.ru/threads/27362-samodelnyj-komp-na-i8080.html?p=954746&viewfull=1#post954746
Можно конечно усомниться, но он оставил на форуме исходники печатной платы, так что можно заказать и проверить все на практике.
P.S. По компьютеру, практически собрал, осталось по мелочи. Так как на борту стоят преобразователи наряжений, то вот в них деталей пока не хватает. Думаю на следующей неделе соберу окончательно
NEO SPECTRUMAN
31.10.2020, 15:55
Отечественные заработали все, все же
все же это каких годов выпуска...
все же это каких годов выпуска...
Я тебе на этот вопрос не отвечу, я лишь цитировал автора.
NEO SPECTRUMAN
31.10.2020, 16:05
Я тебе на этот вопрос не отвечу, я лишь цитировал автора. Да и автора дергать смысла нет, тема 2017 года
из темы подобной тематики
https://zx-pk.ru/threads/28567-zavodskie-dorabotki-vektora-dlya-chastoty-f-kr580vm80a.html?p=1015304&viewfull=1#post1015304
небось и у freddy была жменя таких...
В теме freddy можно найти фото платы с процом 89 года (логотип завода не смог разглядеть)
Допаял оставшиеся детали. Включил пока без памяти, ПЗУ и процессора дабы проверить как работают преобразователи.
Померил напряжения: при напряжении питания 5.0В преобразователи выдают +12.4В и -5.3В.
Потребление платы без памяти, процессора и ПЗУ - 450мА
Насколько для проца такие напряжения подходят, не нужно их точно побирать до +12В и -5.0В?
По даташиту у коммерческих процов допуски напряжений питания +-5% (у военных +-10%). А что с тактовыми сигналами (у коммерческих кроме A-4 высокий уровень д.б. от 9 до V12+1)?
- - - Добавлено - - -
Для полного счастья F1 и F2 надо смотреть осциллографом, все же там важны не столько крайние значения, а в течении какого времени укладывается в шаблон
Точно напруги подбирать не нужно, с такими будет проц работать. По моему скромному опыту и великому опыту коллег, здесь на форуме, не раз встречал данные о том, что более-менее новые процессоры легко обходятся меньшими напряжениями, скажем -3 и + 10В. Но тебе же его гнать надо, думаю, все равно придется с этими напряжениями поиграться, я бы подстроечники поставил. Для F1 и F2 важна форма импульса. Возможно, на повышенной частоте, для их формирования элементов с ОК и подтяжкой к +12 может нехватить, тут да, как ivagor пишет, осциллографом смотреть надо.
А что с тактовыми сигналами (у коммерческих кроме A-4 высокий уровень д.б. от 9 до V12+1)?
Не ну вы такие шустрые, я только только приступил. Надо так сказать растянуть немного удовольствие :)
Завтра посмотрю.
Небольшой отчет
Вот фото собранной платы, мы максималисты - спаяли все и сразу :)
https://i.ibb.co/zFgcV4K/IMG-20201104-144432.jpg (https://ibb.co/zFgcV4K)
Собрано из 80% б.у. деталей.
Из косяков, их пока два
1. Забыл в преобразователе напряжения -5В указать землю - это заметил когда собирал, посему оперативно, еще до включения устранил косяк.
2. Зачем то коэффициент деления счетчика D4 сделал как для кварца 13,5Мгц, в результате строчная частота на 14МГц стала около 16250КГц и кадровая 52Гц. Видеоконвертор GBS8220 не воспринял картинку.
Возможно конечно что то еще неисправно в выходе видео. К счастью в нашем чупа-чупсе нашлись совершенно случайно кварцы на 13,602МГц. Это я думаю будет пока достаточно для первых опытов.
А потом если что, счетчик D4 придется выпаивать и ставить на панельку.
Вчера потыкался осцилом в нужные нам F1 и F2 - что же размах там там вполне приличный, не менее 12В. Идут прям точненько F1 а после F2. К сожалению на работе осцил Тектроникс при ширине 60МГц показывает далеко не прямоугольники и даже на обычных выходах счетчиков, не говоря о 12В сигналах. Но как говорится что имеем, с тем и работаем. В понедельник попробую снять фото сигналов.
А пока, если удастся сначала подружу плату с GBS8220.
NEO SPECTRUMAN
04.11.2020, 15:22
Собрано из 80% б.у. деталей.
уря?
осцил Тектроникс при ширине 60МГц показывает далеко не прямоугольники и даже на обычных выходах счетчиков, не говоря о 12В сигналах
Вряд ли для частоты 3.4-3.5 МГц дело в осциллографе (с полосой 60 МГц). Из фоток F1 и F2 которые видел самые резкие и звонкие были с ГФ24, но ее в ленинград просто так не пристроишь. Надеюсь, что в крайнем случае кварц 12 МГц поможет.
Ну и что тут гнать, тут нужно сначала все кт315 поменять на MOSFET-ы и все диоды на FR или Шоттки :)
Поздравляю с окончанием очередного этапа.
А GBS в оригинале используешь или с gbs-control?
Ну и что тут гнать, тут нужно сначала все кт315 поменять на MOSFET-ы и все диоды на FR или Шоттки
Ну скажем так, с остальными моими компами конвертер работает, а там все те же кт315 стоят.
А GBS в оригинале используешь или с gbs-control?
Из коробки, т.е. просто плата конвертера с али, без всяких вмешательств
- - - Добавлено - - -
Надеюсь, что в крайнем случае кварц 12 МГц поможет.
Посмотрим, как видео с платы увижу, то буду проц вставлять, ОЗУ, ПЗУ.
Mick, а ты весту к GBS подключал с положительным результатом? Или она была нерабочая?
И просто из интереса - зачем GBS, у тебя нет телевизора?
И просто из интереса - зачем GBS, у тебя нет телевизора?
Телевизор то есть, только очень неудобно к нему подключаться. И очень неудобно пялиться вблизи на овер 32 дюйма
А GBS к монитору можно цеплять - все на столе умещается. :)
а ты весту к GBS подключал с положительным результатом? Или она была нерабочая?
Она была полурабочая, но видео было. Я в ZX8080 изменил немного выход видео, но коэфициент деления счетчика я сам не понял зачем поменял :)
Ну скажем так, с остальными моими компами конвертер работает, а там все те же кт315 стоят.
Из коробки, т.е. просто плата конвертера с али, без всяких вмешательств
Ну про кт315, это, конечно, шутка была.
Мне gbs8220 не удалось настроить с Орионом на нормальное отображение некоторых видеорежимов, 512x256, например. С gbs-control, все получилось, крутилок там гораздо больше. Вообще, конечно, странно, что gbs не схватывает 52Гц, это не такое уж и большое отклонение. Может быть все же с самими синхросигналами что-то не то? Уровни нормальные?
Итак, сегодня удалось немного позаниматься платой.
Для начала я перепаял кварц с 14МГц на 13,602МГц появилось изображение.
https://i.ibb.co/85pzJwN/IMG-20201109-094718.jpg (https://ibb.co/85pzJwN)
Затем поставил память и буфер, появился мусор на экране
https://i.ibb.co/RQWybx9/IMG-20201109-095104.jpg (https://ibb.co/RQWybx9)
https://i.ibb.co/JpQ0wYL/IMG-20201109-095059.jpg (https://ibb.co/JpQ0wYL)
Снял эпюры на входах F1 и F2 (12В) частота 3,39МГц
https://i.ibb.co/7gMcnWf/IMG-20201109-095432.jpg (https://ibb.co/7gMcnWf)
Отдельная F1
https://i.ibb.co/WgP7phs/IMG-20201109-095330.jpg (https://ibb.co/WgP7phs)
Отдельная F2
https://i.ibb.co/0GkCcBt/IMG-20201109-095316.jpg (https://ibb.co/0GkCcBt)
Ну а затем проба установить процессор и молчок. Тыкаюсь на Sync - буквально несколько импульсов и все, уход в бесконечную "1"
Дай думаю запаяю кварц 12МГц (3 тактовая) - картина такая же
Перепаял на 8МГц, ну уж на 2 МГц он по идее должен как то себя проявить - картина тажа, вначале несколько импульсов на SYNC
Вот на всякий случай снял ттл F1 и F2
https://i.ibb.co/WKJP5hn/IMG-20201109-112229.jpg (https://ibb.co/WKJP5hn)
Из наблюдений при старте идет пачка SYNC с периодом 2 такта процессора, то гипотетическая команда длится не минимальные 3 такта, а 2
У кого какие мнения. Процессоры ставил разные - поведение одинаковое у всех. И да, уточню, после ресета не всегда появляется SYNC. Скажем так, если долго ресет подержать, то появляются, если короткий, то когда как.
Спасибо за картинки
Насчет reseta. Его длительность д.б. >=3 такта, но вряд ли у тебя меньше. Желательно посмотреть, что на шине данных при стробировании SYNCом, т.е. какой цикл. Понятно, что должен быть FETCH (10100010). Ну и шину адреса можно проверить, что после reseta там 0
- - - Добавлено - - -
Mick, смотрю схему и там READY=0 - это зачем? У тебя получается вечный WAIT
- - - Добавлено - - -
При таком раскладе должен быть один SYNC после ресета, если пачка с периодом 2 такта, это вероятно дребезг кнопки ресета
READY=0 - это зачем? У тебя получается вечный WAIT
Подожди, а разве не READY =1 вечный WAIT?
Если READY=1 то из такта 2 переходит к такту 3
Если READY=0 то из такта 2 переходит в режим ожидания (WAIT), что и наблюдается на данный момент
- - - Добавлено - - -
Можно просто глянуть выход WAIT - там высокий уровень?
Если READY=1 то из такта 2 переходит к такту 3
Если READY=0 то из такта 2 переходит в режим ожидания (WAIT), что и наблюдается на данный момент
Что то я запутался. Я думал что WAIT наступает при появлении на входе READY =1.
Совсем упустил это, ведь HardWareMan приводил эпюры
https://jpegshare.net/images/b4/3a/b43aaa615448875d44c18fd8685ef1f9.png
Вот раздолбай, я перепутал с сигналом WAIT (он же выход) завтра надо выпаять резистор.
Продолжаем отчет.
Сегодня перепаял резистор и вход READY подтянул через 10К к питанию. И ура, SYNC побежал...
Перепаял значит обратно кварц 13,602МГц и увидел хороший полосаты матрас
https://i.ibb.co/dpQJgDd/IMG-20201110-085325.jpg (https://ibb.co/dpQJgDd)
А это значит проц стал выполнять команды FF :)
Хорошо, дай думаю подсуну ПЗУ, предварительно записав туда простую переброску экрана Диззи 2
Включил, опять матрас. Стал разбираться, ошибся когда рисовал ПЗУ 27128. Короче перепутал A13. Должен был быть вывод 26, а я его на соседний 27 посадил.
Исправил косяк, включаю. И опа
https://i.ibb.co/nbP4Vfv/IMG-20201110-094716.jpg (https://ibb.co/nbP4Vfv)
Но смотрю, бордер периодически дергается, пошел смотреть программу, ну и собственно что я хотел.
Я пытался заставить выполнить ВМ80 команду jr label :)
Затем я записал тест от ivagor
https://i.ibb.co/6BGk3FB/IMG-20201110-102707.jpg (https://ibb.co/6BGk3FB)
Смотрю, часики ходят. С клавой не разбирался пока. И оставил так, пусть типа поработает. Поглядеть, скопытится или нет.
А вот нет, не скопытился. Проработал 5 часов, потом выключил, так как домой уже надо было идти.
https://i.ibb.co/XWmJcRK/IMG-20201110-160007.jpg (https://ibb.co/XWmJcRK)
Итого первые итоги. Понятно, что пока не показатель простой тест, надо что то тяжелое связанное с издевательством над памятью.
Но все же пока результат меня радует, несмотря на то что некоторые тут сомневались в результате.
Итак, при кварце 13.602МГц, процессор как и память работают на 3,4МГц -> наш КР580ВМ80А работает на такой частоте и без всяких ВК28 и ВК38.
Судя по тому что пишет проц в память и вроде не было артефактов, то схема записи работает как надо.
Собственно чтение тоже по сути работает - часики вроде ходят, хотя может они были в регистрах.
Ну и вот конфигурация компа
https://i.ibb.co/R6Kt7Ds/IMG-20201110-094725.jpg (https://ibb.co/R6Kt7Ds)
проц КР580ВМ80А 9008
регистр КР1533ИР22
буфер КР1533АП6
память КР565РУ5 с двумя точками, я так понял КР565РУ5Г
По температуре - скажем не горячий, палец спокойно терпит, не обожжешься.
Поздравляю! Думал с чтением/записью озу не сразу получится, а ты раз и в дамки.
- - - Добавлено - - -
Наверно стоит еще прокомментировать по поводу тестирования озу в lenin8080test:
1. При старте проверяется все озу от 4000h до FFFFh записью и чтением FF и 00.
2. Часы читают/пишут три ячейки озу
3. Тест клавиатуры (до которой пока не дошло) использует озу для хранения таблицы нулей и единиц в текстовом виде для вывода на экран
4. Плюс озу используется стеком
Вышеперечисленное нельзя назвать тестированием стабильности озу, для этого при необходимости потребуется отдельный тест
NEO SPECTRUMAN
10.11.2020, 20:39
13.602
а для чего вообще такой кварц нужен? о_О
делил туда сюда
какой то полезной частоты не нашел
для чего вообще такой кварц нужен?
Не знаю где он применяется, но у меня с ним есть изображение (я не те коэффициенты на счетчик завел).
- - - Добавлено - - -
Вышеперечисленное нельзя назвать тестированием стабильности озу, для этого при необходимости потребуется отдельный тест
Это понятно, но того что есть уже достаточно чтобы запустить комп :)
NEO SPECTRUMAN
10.11.2020, 20:47
Это понятно, но того что есть уже достаточно чтобы запустить комп
можно записать последюнюю версию zx8080 ROM-а и проверить матафонный вход :)
(я не те коэффициенты на счетчик завел).
я тему читаю видел :)
- - - Добавлено - - -
Я пытался заставить выполнить ВМ80 команду jr label
используй последний sjasm от z00m
с параметрами
sjasmplus --i8080 ****.asm
и будет тебе счастье :)
https://github.com/z00m128/sjasmplus/releases
Попутно обновил схему в первом посте. Исправил найденные косяки.
Немного теории, вот интересно, если наш ВМ80А разгоняется до 3,4МГц (и возможно это не предел) и пока чувствует себя вроде не плохо. Так почему в советское время ограничивались штатными 2МГц, 2,5МГц. Конечно был Вектор с его 3МГц, но это скорее исключение из правил.
Ведь смотрю как заполняется экран заставкой Диззи 2, да блин практически не уступает Z80 по скорострельности. Понятно, по идее надо сравнивать скорость заполнения экрана Ориона например. Но я думаю будет гораздо веселее, чем штатные 2,5МГц.
И еще интересно, керамический ВМ80А до каких частот гонится.
Кстати, а "часики" сегодня 3 часа уже отработали - полет нормальный
Mick, сформированы F1TTL и F2TTL у тебя интересно
вот подать меандр и посмотреть , стартанет ли 580 на 3,5 мгц)
Mick, сформированы F1TTL и F2TTL у тебя интересно
вот подать меандр и посмотреть , стартанет ли 580 на 3,5 мгц)
В смысле интересно. Как типа положено по учебнику :)
Скажем если в счетчике видео поменять коэффициент и поставить кварц на 14МГц, то тактовая будет как раз 3,5МГц.
Чтобы не резать дорожки, нужно выпаять счетчик и навесняком его запаять с нужэным коэфф.
Я думаю что стартанет на 3,5МГц.
Или я не так понял
Строго говоря по учебнику для 8080 надо все же не совсем так (а делить такт на 9 частей), но это просто небольшое занудство.
Судя по воспоминаниям работника завода Сигнал у них там (вероятно сначала) были проблемы с 3 МГц для старта-1200. У blackinwomana в векторе не хотел работать один из ВМ80. Можно предположить, что одна из проблем, которую ты решил с использованием 170АП3, это формирование не то чтобы строго прямоугольных, но не затянутых фронтов F1 и F2.
И тут, кстати, есть вопросы по картинкам. Почему отличается вид F2 на картинках где этот клок вместе с F1 (синий) и отдельно?
И тут, кстати, есть вопросы по картинкам. Почему отличается вид F2 на картинках где этот клок вместе с F1 (синий) и отдельно?
Я думаю, это происки осциллографа. Синхронизация по желтому лучу. Желтый F1, синий F2.
- - - Добавлено - - -
Судя по воспоминаниям работника завода Сигнал у них там (вероятно сначала) были проблемы с 3 МГц для старта-1200. У blackinwomana в векторе не хотел работать один из ВМ80. Можно предположить, что одна из проблем, которую ты решил с использованием 170АП3, это формирование не то чтобы строго прямоугольных, но не затянутых фронтов F1 и F2.
Возможно, спорить не буду. Но тогда скажем К170АП3 разве были в дефиците, почему было их не использовать.
- - - Добавлено - - -
с использованием 170АП3
Кстати насколько важно это, у меня сейчас стоит аналог АП3 -> DS0026CN.
- - - Добавлено - - -
Ну и как же без ложечки дегтя :)
Решил проверить процессоры, которые были в наличии.
1. Тот который изначально стоял, выпаянный откуда то - КР580ВМ80А 9008 производитель Э - запустился и работал два дня по 4 часа
2. купленный на али P8080A-1 - запустился
3. купленный на али P8080A - запустился
4. процессор купленный у Павла Рябцова - КР580ВМ80А 8903 производитель трилистник или как его там - не запустился
5. процессор купленный в чупа-чупсе - КР580ВМ80А 9010 производитель трилистник или как его там - не запустился
Надо до бы найти еще с буквой Э и проверить
Немного жаль, зато ситуация проясняется. "Производитель Э" - Квантор, Збараж. "Трилистник" - Днепр, Херсон.
Еще производили: Квазар, Киев; Родон, Ивано-Франковск; Электронприбор, Фрязино. И еще был какой-то очень редкий завод, но эти процы скорее всего уже у коллекционеров.
- - - Добавлено - - -
Ну и раз ты делаешь техпрогоны, стоит все же сбацать тестик нагружающий именно память, чтобы время не терять
Немного жаль, зато ситуация проясняется.
Какая?
Кстати, ты как сам на счет железа, а то если интересно тебе, могу тебе собрать экземпляр компа, как самому активному помощнику. Но сразу скажу, собрать быстро не обещаю. :)
Какая?
С разгонопригодностью процов. Я предполагал, что ты все имеющиеся попробовал (очень кратко) и все завелись, а потом какой-то один долго тестировал. Ну а раз не все заводятся, тогда еще один аргумент в копилку того, почему вектор или еще какой-нибудь комп не делали на >3 МГц. Вспомнил еще из этой серии - в начале цикла статей (в радио) по РК-МАКСИ обещали, что проц догонят до 3.5 МГц (в два раза относительно РК86), а потом без особой помпы снизили до 2.5 МГц. Вполне возможно, что сначала попробовали мало процов, и они завелись, а после более обширного тестирования оптимизм пришлось уменьшить. Я не умаляю твои достижения, 3 из 5 - очень хороший результат для ВМ80 на 3.4 МГц. Интересно, до скольки получится догнать лучший экземпляр и кто окажется лучшим.
Насчет железного компа спасибо, но не надо, я слишком криворукий для нормальных занятий железом. Мой максимум в этом направлении - плисовые девборды, к которым в крайнем случае могу подключать что-то проводками.
С разгонопригодностью процов.
Следует немного уточнить, я возможно неправильно выразился. Те два процессора с трилистником не запустились в плане правильности работы теста. Иными словами они не молча стояли и показывали экран малевича, а пытаются работать, но видимо там как раз возможны проблемы работы с памятью, то есть теоретически они работают, но не правильно.
Такое ощущение, что процы от Квантора и Днепра по разным техпроцессам сделаны.
Вот собственно фото пациентов.
https://i.ibb.co/XYMLhsK/IMG-20201111-150412.jpg (https://ibb.co/XYMLhsK)
Покопался у себя в закромах и нашел пару процов с буквой Э
https://i.ibb.co/sQYG48q/IMG-20201111-191729.jpg (https://ibb.co/sQYG48q)
Завтра попробую их.
На мешке нашел радоновские процы, надо взять для полноты картины.
Ну и фото собранной платы, чтобы понятно было как выглядит рабочий вариант
https://i.ibb.co/h2pWLCc/IMG-20201111-150306.jpg (https://ibb.co/h2pWLCc)
Те два процессора с трилистником не запустились в плане правильности работы теста. Иными словами они не молча стояли и показывали экран малевича, а пытаются работать
Еще одна интересная (хотя кому как) задача - попробовать выяснить частоту, на которой заработают все (имеющиеся в наличии) процы.
Не могу без занудства, Э - это Квантор, у Квазара логотип диод в круге.
Насчет разных техпроцессов у разных заводов не знаю, но вобще два варианта известны: 1 (https://zeptobars.com/ru/read/kr580ik80a), 2 (https://zeptobars.com/ru/read/kr580vm80a)
Еще одна интересная (хотя кому как) задача - попробовать выяснить частоту, на которой заработают все (имеющиеся в наличии) процы.
Вопрос интересный, но вдруг тут вопрос уже не в частоте, а в длительности импульсов. Например вот при процессоре Квантора память подойдет КР565РУ5Г, а вот для Днепра к примеру уже нужна скажем КР565РУ5Б или гипотетическая КР565РУ5А, а может достаточно КР565РУ5В. Ведь по сути видно что проц пытается исполнять программу, потому как иногда там вылезает BAD RAM и други артефакты. Но к сожалению правильно не работало ни разу.
- - - Добавлено - - -
Насчет разных техпроцессов у разных заводов не знаю
Ну судя по поведению, похоже на то что разные.
Но это мы сможем "подтвердить" попробовав другие процессоры от Квантор.
В идеале и других производителей попробовать не помешало бы. Родон я уже заказал на мешке, посмотрим когда придут.
Касательно этих процов
https://i.ibb.co/sQYG48q/IMG-20201111-191729.jpg (https://ibb.co/sQYG48q)
Днепр похоже совсем мертвый, не работает вообще.
Кванторы ведут себя так же как вчерашние Днепры - тоесть сбоят.
Парадокс Квантор 9005 сбоит, а 9008 работает нормально. Блин вот бы тогда 91 года поглядеть.
Тут либо техпроцесс сменили, либо целиком зависело от настроения технолога.
Ну, думаю ладно а что если сбойному процу поставить память пошустрее 100нс КМ4164B-10 вести стали чуть лучше, тоесть видно что тест они пытаются выполнить, но потом слетают. Так что можно попробовать поставить буфер КР1531ИР22 (74F373) или как предлагал ivagor импортные РУ7 на 80нс
P.S. Нашел у себя еще три процессора, древний P8080A 84 года - работает, паяный Родон 9005 - работает, керамический Квазар (диод) 8909 - сбоит.
Один момент желательно прояснить. Если проблема именно в обмене с озу, то тест должен при старте показать белый бордюр, погудеть и зависнуть. Можно это смоделировать если с работоспособным процом попробовать запустить например без одной микросхемы озу (версия теста должна быть вторая, первая не дойдет до этого).
- - - Добавлено - - -
С керамическими кстати интересно, уже встречал сообщения, что они гонятся хуже, что немного удивительно. Хотя PPC писал, что у него как раз после замены на керамический вектор смог работать 24/7. Еще интересно, почему процы, как ты писал, не сильно греются.
версия теста должна быть вторая, первая не дойдет до этого).
Какая была по ссылке - https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1081333&viewfull=1#post1081333
ту и прошивал
- - - Добавлено - - -
Еще интересно, почему процы, как ты писал, не сильно греются.
По моему они греются как обычно, хотя сейчас мне не с чем сравнивать.
Какая была по ссылке - https://zx-pk.ru/threads/32131-daung...=1#post1081333
ту и прошивал
По этой ссылке сначала была первая версия, а потом (в т.ч. и сейчас) вторая
По этой ссылке сначала была первая версия, а потом (в т.ч. и сейчас) вторая
Прошивал ту которая сейчас от 25.10.2020
Тогда получается интересная картина. Проблемные процы похоже проходят (по крайней мере с более быстрой памятью) начальный тест озу и только потом, когда озу уже трогается совсем мало, наблюдаются какие-то сбои. Возможно тут был бы полезен примерно такой (https://zx-pk.ru/threads/30868-testy-pamyati.html) тест, но с ходу не соображу, как его скомбинировать с функционалом уже имеющегося теста и клавиатуру, если правильно понимаю, ты пока не подключил. Можно сделать попроще, без протокола/лога, т.е. обнаружили ошибку и сразу отрапортовали.
клавиатуру, если правильно понимаю, ты пока не подключил.
Как бы подключил, но как оказалось она не работает. Изначально я системный разъем делал под плату расширения ZX-777 Extboard, ну чтобы унифицировать железки. Так там преобразователь PS2 клавы в ZX, расчитан на время чтения портов Z80. А он длинее чем у ВМ80, посему в нашем случае информация от клавы приходит после окончания чтения порта ВМ80. Посему надо либо новую плату расширения монстрячить, либо подключать механическую ZX клаву.
Я пока склоняюсь ко второму. Посему надо будет распаять разъем по новому.
Или все же добавить пару тактов ожидания при чтении порта (или просто при обращении к портам), если это можно сделать малой кровью.
- - - Добавлено - - -
Если бы не джойстик, то можно было бы заменить КП11 на регистр и постоянно читать туда из клавиатуры. Чтение клавиатуры процом после изменения маски рядов клавиатуры вероятно пришлось бы делать двумя INами.
Или все же добавить пару тактов ожидания при чтении порта (или просто при обращении к портам), если это можно сделать малой кровью.
А так и так паять, выберем просто провода :)
Хотя против второго варианта явно будет NEO SPECTRUMAN, т.к. надо дорабатывать с разбуханием бейсик
- - - Добавлено - - -
Еще вариант, можно чтобы контроллер PS2 начинал свою деятельность после записи маски клавиатуры в порт FF, тогда до следующей команды IN скорее всего успеет все сделать.
А вобще вопрос, есть же вариант контроллера caro для компов с ВМ80, может подумать о его подключении? Хотя если у тебя есть механическая клавиатура и нет собранного контроллера caro для ВМ80, то выбор очевиден.
Еще вариант, можно чтобы контроллер PS2 начинал свою деятельность после записи маски клавиатуры в порт FF, тогда до следующей команды IN скорее всего успеет все сделать.
Ты идею мне подал. Только надо смотреть не сколько момент записи в порт FF, сколько изменение его выходов. Тогда реагировать и выставлять данные на выход контроллера. Надо подумать.
Фотки опытов.
Когда вытащена одна микросхема ОЗУ при нормально-работающем процессоре
https://i.ibb.co/6ytmktY/IMG-20201112-093142.jpg (https://ibb.co/6ytmktY)
А вот так выглядит экран когда в ПЗУ прошивка от NEO SPECTRUMAN
https://i.ibb.co/dcCsDY4/IMG-20201112-110652.jpg (https://ibb.co/dcCsDY4)
Вот троица процессоров для проверки
https://i.ibb.co/hsRvT0j/IMG-20201112-160726.jpg (https://ibb.co/hsRvT0j)
древний P8080A 84 года - работает,
паяный Родон 9005 - работает,
керамический Квазар (диод) 8909 - сбоит
Когда вытащена одна микросхема ОЗУ при нормально-работающем процессоре
Это с lenin8080test2? Если с ним, то вижу белый бордюр, а было ли гудение при старте (если подключен динамик)?
вот прям щас обидно за керамику
О, у тебя AMDшный проц, не догадался встроить в тест определялку, правда я уверен в отличии только 9080, а вот amd 8080 может и совпадает с интеловским.
Это с lenin8080test2?
Да
(если подключен динамик)?
Пока не подключен
- - - Добавлено - - -
вот прям щас обидно за керамику
А вот пока непонятно. Видно что все наши процы 89 года сбоят.
Да и 90 годов тоже
как бы Квантор начал работать с 9008, а 9005 сбоит
Радон 9005 работает, других нет.
Возможно в 90 году переходили на новый техпроцесс, но для этого нужно найти процы 91...92 годов что бы проверить данную теорию
- - - Добавлено - - -
О, у тебя AMDшный проц
Раритетик однако :)
правда я уверен в отличии только 9080, а вот amd 8080 может и совпадает с интеловским
Склероз, похоже любой amdшный должен отличаться
- - - Добавлено - - -
Видно что все наши процы 89 года сбоят.
Насколько помню blackinwoman не мог запустить в векторе проц 89 года
Строго говоря по учебнику для 8080 надо все же не совсем так (а делить такт на 9 частей), но это просто небольшое занудство.
Тут подумалось, если допустим я захочу сварганить клон Ориона на разогнанном проце, то чтобы получить как по учебнику нужно
3,5МГц * 9 = 31,5 МГц, округим до 32
4МГц * 9 = 36 МГц.
Поглядел на али, надо же есть такие кварц и генераторы.
Если применить в синхрогенераторе CPLD, то вполне можно и по учебнику
Да и разверточку можно уже как бы VGA :)
Проблема (ну или сложность) с этим делением на 9 в стыковке с видео. Есть разные варианты, простой и тормозной как в Львове ПК-01 или быстрый и более дорогой и/или сложный с двухпортовой памятью или разделением памяти на видео и невидео.
Проблема (ну или сложность) с этим делением на 9 в стыковке с видео.
Блин, это я как то упустил. Ладно пока значит отложим думать.
Заказал еще несколько процов 91 и 92 года производства Днепр. Как придут, проверим теорию смены техпроцесса :)
Пересмотрел фотки плат вектора в поисках "старых" процов. Самое раннее, где можно разглядеть год и производителя, это 89 и там процы Родона, причем одна фотка (https://zx-pk.ru/threads/28567-zavodskie-dorabotki-vektora-dlya-chastoty-f-kr580vm80a.html?p=942586&viewfull=1#post942586) blackinwomana, где он его ругает, а вот вторая (https://kulibin.sumy.ua/image/cache/catalog/nash%20muzey/computer/DSC00107-800x800.JPG). 90 года на фотках есть Квантор, а 91 уже и Днепр. Выборка слишком маленькая, чтобы можно было делать серьезные выводы и совсем нет фоток редких векторов 88 года, но перечислил что нашел.
а вот вторая.
Помоему не та фотка.
Кстати, еще вроде мысль к размышлению. Поставил сейчас 74F373 вместо КР1533ИР22, поведение неработающего проца Родон 89 года чуть улучшилось, иногда он даже начинает часы считать, но потом сваливается. До этого и этого не было. При установке КР531ИР22 - ситуация становиться ровно наоборот.
Надо прошить Диззи тест, чтобы определить пишет в память он нормально и проблема только в чтении или все плохо.
- - - Добавлено - - -
Надо прошить Диззи тест, чтобы определить пишет в память он нормально
Короче прошил я Диззи тест (переброс из ПЗУ в ОЗУ картинку Диззи 2) - пишет нормально, без артефактов.
Проц стоит Квантор 8905
Днепр 8903 - пишет нормально
Квазар 8909 (керамика) - пишет нормально
Значит проблема в чтении!
Помоему не та фотка.
В левом верхнем углу вижу Родоновский с датой 8911
Значит проблема в чтении!
Хорошо, что ты локализовал проблему, но легче было бы с логическим анализатором, правда для полного счастья нужно много каналов (наверно 12-16)
Хорошо, что ты локализовал проблему, но легче было бы с логическим анализатором, правда для полного счастья нужно много каналов (наверно 12-16)
Может быть и легче, но пока так как есть.
Посему есть вариант для проверки.
1). Твой вариант - добавить WAIT для чтения из ОЗУ чисто для локализации проблемы.
2). Посмотреть где можно уменьшить время прохождения сигналов на чтении. При условии что у нас вся серия кроме буфера, регистра и защелки слова состояния 555 серии. Возможно что то надо поменять на 1533 или 1531.
4) Посмотреть в сторону небольшого удержания сигнала CAS/ (скажем штатную схему из Весты)
Небольшая проблема в том, что есть два варианта чтения, когда оно заканчивается в слоте CPU или когда в слоте VPU. Ты, как понимаю из опробованных и предложенных способов лечения, склоняешься к тому, что проблема в первом варианте. Для этого случая еще можно попробовать чуть задержать F1 и F2, если например D35 на панельке, то поставить туда 155 серию, но тогда возможно тактовые сигналы несколько испортятся.
- - - Добавлено - - -
п.4 (задержать CAS) случаю с DBIN заканчивающимся в слоте CPU вряд ли поможет
Ты, как понимаю из опробованных и предложенных способов лечения, склоняешься к тому, что проблема в первом варианте.
Типа того. Вероятно, что сигнал DBIN возможно короче чем предполагаем и WRBUF уже срабатывает в холостую.
Тут я не полностью согласен, длительность DBIN вряд ли подлежит сомнению, а вот его положение (запаздывание) может в некоторых пределах варьироваться у разных экземпляров процов, в даташите есть параметр tDF - Clock F2 to FBIN delay. Возможно в реале DBIN заканчивается даже позже, чем ты рисовал на временных диаграммах, но и этого не хватает.
Тут поглядел еще раз на схему. У нас чтение по сути начинается с DBIN, а точнее комбинация !DB7 OR !DBIN.
Вот сигнал записи мы удлинили, в принципе можно попробовать начать чтение чуть раньше по DB7 в регистре статуса, а заканчивать уже DBIN.
Хотя это может ничего не дать.
можно попробовать начать чтение чуть раньше по DB7 в регистре статуса, а заканчивать уже DBIN.
Это поможет случаю, когда чтение начинается во временном слоте CPU, но проблема вроде со случаем, когда DBIN заканчивается в слоте CPU, хотя полной уверенности (у меня) нет.
- - - Добавлено - - -
Что касается тормоза который я предлагал. В комплексе (изменение F1, F2 и READY) он должен работать, а вот если сделать только READY=/H1, то вряд ли сработает, READY=0 должно быть (для A-1 и A-2) за 90 нс до окончания высокого уровня F2, а сейчас грубо 70 нс
Если не менять клоки, то можно попробовать использовать в качеcтве READY задержанный на такт проца /SYNC. Как сделать это по нормальному я не буду писать, но возможно прокатит более простой нехороший вариант, если пропустить SYNC через 5 (вряд ли 3 хватит) инверторов небыстрой серии (155, 555)
на cas 100 пикофарад
Ну что это даст, кроме как завала фронтов. Память то работает по сути правильно, проблема с чтением из нее.
Запись ведь работает.
Другой вопрос, что возможно надо сдвинуть F1 и F2 относительно RAS/. Так сказать чтобы раньше они немного приходили.
надо сдвинуть F1 и F2 относительно RAS/. Так сказать чтобы раньше они немного приходили.
Ты изменил мнение и считаешь, что проблема не в тех случаях, когда DBIN заканчивается в слоте CPU (и проц не успевает прочитать из озу), а в тех, где DBIN начинается в CPU (и там к памяти слишком поздно приходит адрес с проца)?
Ты изменил мнение и считаешь, что проблема не в тех случаях, когда DBIN заканчивается в слоте CPU (и проц не успевает прочитать из озу), а в тех, где DBIN начинается в CPU (и там к памяти слишком поздно приходит адрес с проца)?
Это я так прикидываю разные варианты. На самом деле не хотелось бы глобально курочить, ведь некоторые процы наши работают и хотя бы проверить теорию о том, будут ли работать более так сказать молодые процы. А уж потом думу думать над чтением. Пока займусь тогда адаптации переходника PS2, потом как придут процы - продолжим.
В принципе можно какие то тесты если что проверить.
Ну и в понедельник попробую поставить панельки под D35 и счетчик D4. В первом случае попробуем ускорить(притормозить сигналы).
Во втором случае, надо посмотреть, можно ли изменить коэфф, чтобы поднять частоту до 4МГц
- - - Добавлено - - -
Собственно тут уже посчитали все коэффициенты :)
http://zxbyte.ru/leningrad_upgrade.htm
Для 16МГц нужно все входы пустить на землю. Что же чисто для проверки надо посмотреть взлетит проц из тех кто работает или нет.
Собственно тут уже посчитали все коэффициенты
Mick, а два раза, когда я приводил ссылку туда, ты не смотрел?
Mick, а два раза, когда я приводил ссылку туда, ты не смотрел?
По всей видимости, глянул и забыл - мысли видимо о предстоящем включении компа были.
Shumadan
14.11.2020, 18:16
второй преобразователь -5 вольт на 34063 со всей обвязкой - явное излишество. Можно сделать отдельный выпрямитель с стабилитроном на КС147, на -5 вольт. Подключить после дросселя преобразователя на 12 в. Там ток потребления мизерный - потянет.
второй преобразователь -5 вольт на 34063 со всей обвязкой - явное излишество.
Возможно, но я взял этот узел у freddy. Меня это ничуть не напрягает, а то что работает - то зачем менять. :)
Других желающих делать тесты пока не появилось и я добавил долбилку памяти в свой. Предыдущий (второй) вариант теста не убираю, отличия от него следующие:
1. Поверхностный тест памяти (от 4000 до FFFF) при старте при ошибке даст красный бордюр (был белый) и бесконечный бип (был конечный).
2. Тест клавиатуры внес в обработчик прерывания. Теперь цвет бордюра при нажатии клавиш зеленый и полосы по бордюру не бегут, а привязаны к своим местам.
3. Добавил бесконечный тест памяти от 5B00 до FEFF. Один полный проход/прогон (pass) теста при частоте проца 3.5 МГц занимает примерно 9 с половиной минут. В случае обнаружения ошибки как в п.1 - красный бордюр и бесконечный бип (и часы останавливаются, чтобы зафиксировать, сколько отработал без ошибки)
Upd 17.11.2020: Убрал 3 и 4 версию, т.к. выложил пятую (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1089684&viewfull=1#post1089684)
Upd 18.11.2020: Вернул 3 и 4 версию
Заменил тест на вариант с детектом AMD
Подумал, что можно заметно сильнее нагрузить проц чтением озу и в 4 версии код теста памяти переносится в озу и работает оттуда.
код теста памяти переносится в озу и работает оттуда
а если память `битая` как он будет работать ?
а если память `битая` как он будет работать ?
Если память битая, то начальный тест (который полностью работает из пзу) это обнаружит и покажет ошибку. Основной тест памяти предназначен не столько для тестирования микросхем озу, сколько нацелен на обнаружение проблем при записи процом в озу и чтении оттуда. Для тестирования микросхем озу я бы сделал другой тест. Ну и все желающие могут предложить свои варианты тестов, Mickу будет из чего выбрать.
Для 16МГц нужно все входы пустить на землю. Что же чисто для проверки надо посмотреть взлетит проц из тех кто работает или нет.
Ну что попробовал, коэффициент похоже из таблицы не совсем корректен. Если судить по вот этой монтажке, то получается частоты в таблице надо сдвинуть вверх на строку. Почему я так говорю, потому как при 16Мгц и 0 в загрузке - строчка 16 КГц. GBS не тянет - мельтешит.
https://i.ibb.co/rwsgmHG/LENING-P.png (https://ibb.co/rwsgmHG)
Хотя я не буду утверждать в правоте или не правоте на 100% по поводу таблицы.
Но из того что было пока предварительно. Наши из тех кто работал на 3,4МГц работают неправильно на 4МГц, хотя сигналы SYNC и прочие бегают
Импортные P8080A-1 - один работает, второй возможно дохлый, а возможно китайская перелицовка.
Два проца P8080A работают, AMD P8080A работает.
Но опять же это предварительно, нужно найти кварц на 15 или 15,5 МГЦ чтобы проверить точно. Тест пока не менял в ПЗУ
- - - Добавлено - - -
Да, читать мы не умеем. Надо все таки конденсатор было запаять на вход PE счетчика.
- - - Добавлено - - -
Ха, после установки кондера на вход PE счетчика D4 GBS8200 стал давать картинку.
Посему начал экспериментировать, раз на 4МГц ни один наш не завелся, хотя попытки есть. Уменьшил до 15МГц (нашел совершенно случайно кварц среди старья). На 3,75МГц импортные работают не напрягаясь. А вот из наших только Квантор 9008 заработал, но с глюками. Но при этом в качестве D35 (ЛН1) стоит 74HC04, а в качестве ИР22 - 74F373. Если найду 74ACT04 и 74HCT попробую и их.
Родон 9005 к сожалению сбоит - в тест не выходит.
Фото отчет будет вечером. Это так, пища к размышлению. И да по температуре - она такая же как и на частоте 3,4МГц.
Как обещал, фото отчет о опытах.
Начнем с 4 МГц тактовой (16МГц кварц) , как я уже писал выше, на этой частоте импортные процы стартанули все, кроме одного. Тот просто дохлый оказался (китайцы бяки)
Я долго не гонял тест, просто убедится
В общем работают P8080A-1, P8080A и P8080A AMD
https://i.ibb.co/6FsSBWx/IMG-20201116-114214.jpg (https://ibb.co/6FsSBWx)
https://i.ibb.co/1bfVWcT/IMG-20201116-114219.jpg (https://ibb.co/1bfVWcT)
https://i.ibb.co/dp8tWL5/IMG-20201116-114412.jpg (https://ibb.co/dp8tWL5)
https://i.ibb.co/TPvyHFJ/IMG-20201116-114416.jpg (https://ibb.co/TPvyHFJ)
Таким образом, в первом приближении задачу максимум выполнили. Импортный проц стартует и работает на 4МГц, значит клон Ориона можно делать на 4МГц.
Да, только напомню что память сейчас 100нс
Наши из работающих на 3,4МГц на 4 не заработали правильно, но видно что они стартанули и работают где то далеко :)
Посему уменьшил частоту кварца до 15МГц, тактовая при этом 3,75МГц
Импортные рассматривать не будем - работают, а вот наши уже так сказать с причудами
Квантор 9008, по началу косячил, но часы ходили
https://i.ibb.co/VQyDTC8/IMG-20201116-125938.jpg (https://ibb.co/VQyDTC8)
Но после замены 1533ИР22 на 74F373 при любой D35 (ЛН1) работает.
Ставил 74HC04, 1533ЛН1, 555ЛН1, 155ЛН1 - разницы не было
https://i.ibb.co/dQDYC0Z/IMG-20201116-151648.jpg (https://ibb.co/dQDYC0Z)
Вот Родон 9005 к сожалению в лучшем случае косячил как Квантор с 1533ИР22
Таким образом в первом приближении рубеж 3,75МГц отечественным процессором КР580ВМ80А взят!
Конечно отмечу это в пределах Спектрум-схемотехники.
Надо еще попробовать серии 74HCT04, 74ACT04 и 74ACT373, т.е. попробовать чтобы и Родон стабильно работал.
Кроме того надо попробовать 14МГц (это задача для ВМ80А) и также попробовать 12МГц, вдруг заработают остальные ВМ80А (в массе своей)
Также для полноты эксперимента были заказаны процессоры среди которых есть 91, 92 и 93 года.
Пока это все.
Рубеж 4 МГц серьезный, это круто, да и для наших 3.75 весьма неслабо.
Насчет работающих/неработающих процов. Можно попробовать сравнить CAS/ и DBIN даже без логического анализатора, осциллографом. Интересует случай, когда DBIN заканчивается в слоте CPU, в другом то случае (когда DBIN заканчивается в слоте VPU) по этим двум сигналам ничего не понятно.
Еще пропустил, вроде ты не менял 1533АП6 на 74F245. Если замена ИР22 помогает, то и замена АП6 может помочь.
вроде ты не менял 1533АП6 на 74F245
Нет не менял, найду попробую.
- - - Добавлено - - -
Пока не нашел 74F245, но нашел у себя 74AHCT245. Родон на 3,75МГц заработал даже при 555ЛН1 (D35).
Родон на 3,75МГц заработал даже при 555ЛН1 (D35)
Это после замены АП6 на 74AHCT245?
Нашел на старой материнке 74F245, сдул и поставил к Родончику - работает зараза :)
- - - Добавлено - - -
Это после замены АП6 на 74AHCT245?
Да.
И сейчас когда стоит 74F245 стоит 555ЛН1. Ах нет произошел сбой. Надо попробовать поставить 1533ЛН1.
- - - Добавлено - - -
С 1533ЛН1 и 74F245 уже как 20 минут без сбоев на Родоне 9005
- - - Добавлено - - -
Еще немного опытов
Поставил кварц на 14МГц, при установленных 1531ЛН1 и 74AHCT245 заработал еще один Квантор 9005, который на 3,4МГц при штатных условиях не работал.
Днепры не захотели.
Mick, а D2 (ТМ2), D10 (ЛЕ1) и D11 (ЛП5) какие серии установлены?
Mick, а D2 (ТМ2), D10 (ЛЕ1) и D11 (ЛП5) какие серии установлены?
Все 555. Я вот думаю, что возможно D2 поменять на панельку.
Я тут снизил частоту до 12МГц.
Процы стали оживать, только Днепры глючат, похоже самые дубовые они.
- - - Добавлено - - -
Ан нет, при связке 1533ЛН1+74F373+74F245 и Днепры на 3МГц заработали
Все 555. Я вот думаю, что возможно D2 поменять на панельку.
D2 на многое важное влияет (TI, RAS => и на F1 и F2), D10.2 - на F1, а вот D11 скорее всего не критична.
D2 на многое важное влияет (TI, RAS => и на F1 и F2),
Я думаю, что D2 более актуально попробовать заменить.
А пока Днепр уже как час работает на 3МГц. Посему еще пару часов пусть поработает, если не свалится, то будем считать что наши процы при определенных условиях все работают на 3МГц.
А я верну назад на 14МГц, чтобы программу минимум выполнить - попробовать попытаться запустить на 3,5МГц как можно больше процов или проверить вновь прибывших (которые по идее у меня должны появится на следующей неделе)
У меня смешанные чувства по поводу твоего детища. С одной стороны ты создал проблемы выбрав хитрую растактовку проца, который раскорячился между двумя тактами доступа к озу, а с другой - ты это преодолел.
Если сделать тактирование в таком духе (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1081812&viewfull=1#post1081812), то скорее всего требования к используемым микросхемам понизятся (и ИР22 в этом случае скорее всего можно убрать, как писал HardWareMan), но за это придется заплатить торможением. А если и без тормозов и с не самыми быстрыми элементами, то надо делать как в пентагоне или специалисте/орионе, но про это уже говорили и это совсем другая история.
У меня смешанные чувства по поводу твоего детища. С одной стороны ты создал проблемы выбрав хитрую растактовку проца, который раскорячился между двумя тактами доступа к озу, а с другой - ты это преодолел.
Ну так ведь интереснее.
На самом деле, если условно память выбрать допустим 70нс и заставить ее работать на удвоенной частоте процессора, то скорее всего мертвые зоны исчезнут, так как в любом случае одно стабильное чтение будет. Либо применить статическую память на обычной частоте с доступом 55-70нс вполне хватит отклика данных
- - - Добавлено - - -
Кстати у freddy как раз применяется статика с 70нс.
И вот его еще процитирую
КР580ВМ80 абсолютно стабильно работал, даже не думал глючить и перегреваться. На радостях я перебрал всю свою коробочку с 80-ми процессорами, не заработали только оригинальные Интел в керамике. Отечественные заработали все, все же , чтобы там грамотеи не писали, а скопиировали мы процессор не тупо а с умом. Наш получился немного лучше.
Вот только к сожалению он не указал года и производителей процессоров. Как оказалось наши процы разных производителей и ведут себя по разному.
На сей день самые тупые оказались Днепр, а самыми лучшими Квантор
Я бы вот так их расставил
Днепр -> Квазар -> Родон -> Квантор
- - - Добавлено - - -
Заменил я D2 панелькой.
ivagor, угадай при какой серии D2 стал работать тупой Днепр 9010 на частоте 3,5МГц :)
Shumadan
17.11.2020, 15:49
Заменил я D2 панелькой.
ivagor, угадай при какой серии D2 стал работать тупой Днепр 9010 на частоте 3,5МГц :)
Неужели 155?
угадай при какой серии D2 стал работать тупой Днепр 9010 на частоте 3,5МГц
Не уверен, но присоединюсь к версии Shumadanа - 155. Под это даже можно подвести "теоретическую базу", клок проца чуть задерживается (следовательно и DBIN), а CAS/ остается на месте и проц успевает прочитать. Будет смешно, если все же другая серия.
Да, 155ТМ2 при ней начал работать Днепр 9010. Он конечно подглючивает, но для него это определенный прогресс :)
Доработал четвертую версию теста
1. Добавил определение частоты процессора. Не прецизионно, но сравнительно точно.
Если в emu выдаст странную частоту просто рестартуйте. Это какая-то странная фича emu, на реале цифры должны быть практически одинаковые при каждом рестарте.
2. Добавил проверки при записи в озу важной служебной информации, так больше вероятность вылететь в штатное зависание с красным бордюром, а не случайным образом.
3. Исправил печать числа прогонов/проходов когда их >256. На практике это вряд ли было бы заметно даже без доработки, т.к. при частоте 3.5 МГц 256 прогонов это больше 40 часов.
- - - Добавлено - - -
Дополню насчет определения частоты. На реале результат будет зависеть только от параметров развертки, т.е. от настройки длительности строки. При кратности кварца .5 мегагерцам (12-12.5-...-14-14.5-...) и соответствующей подстройке счетчика рассчитанный результат будет довольно точным. А вот 13.6 от 13.5 различить не получится, для этого нужен независимый от проца таймер.
А вот 13.6 от 13.5 различить не получится, для этого нужен независимый от проца таймер.
Не стоит париться, я уже поставил кварц на 14МГц. На нем и остановимся для выполнения поставленной задачи :)
Вот только к сожалению он не указал года и производителей процессоров.
Уже где-то писал, что в его теме есть фотка платы с процом, логотип производителя я не разглядел, а год 89.
Уже где-то писал, что в его теме есть фотка платы с процом, логотип производителя я не разглядел, а год 89.
Нашел то фото - https://zx-pk.ru/threads/27362-samodelnyj-komp-na-i8080.html?p=929119&viewfull=1#post929119
Похоже это Родон
- - - Добавлено - - -
Ситуация еще забавнее. Поставил я РУ5Г(две точки) назад в плату с целью узнать будут ли работать на Днепре.
Работают, но с оговорками.
D2 - 155ТМ2
D35 - 1533ЛН1
буфер и регистр - 74AHCT245 и 74F373
В других вариантах, больше пару минут не работал. А в новом варианте уже работает 45 минут
P.S. К сожалению через час произошел сбой, а значит для Днепра РУ5Г не подойдут, вернем 100нс память назад
Mick, если ты часами гоняешь тест, то 4-5 или хотя бы 3 намного лучше 2го в плане выявления возможных проблем.
D35 - 1533ЛН1
С 1531ЛН1 Днепр уже как 2 часа с РУ5Г отработал без сбоев.
- - - Добавлено - - -
Mick, если ты часами гоняешь тест, то 4-5 или хотя бы 3 намного лучше 2го в плане выявления возможных проблем.
Я как раз до обеда решил выяснить как Днепр 9010 будет себя вести с РУ5Г.
После обеда прошью новый тест
- - - Добавлено - - -
Прошил новую версию теста, идет непонятное мерцание, как будто переключаются экраны или сначала напечатает, а потом стирают.
Между такими экранами вижу что частоту показывает, но до часов еще не доходит
И так все процы. Похоже что то не так с тестом
Похоже что то не так с тестом
В emu работает, поэтому я пока склоняюсь к особенностям zx8080. Есть два варианта:
1. Особенности обработки прерываний. Мельком я про это уже писал, но тогда мысленный эксперимент в худшем случае приводил к уменьшению полезного числа тактов в кадре без фатальных последствий. Пока не представляю, как воспроизвести описываемое поведение теста в эмуляторе.
2. Тест наткнулся на какие-то ранее не встречавшиеся проблемы с озу. 1 и 2 (и 3) версии теста только пишут в озу и читают оттуда, а 4-5 еще и исполняют код из озу. У 8080, в отличие от z80, циклы чтения из озу и выборки команды принципиально не отличиаются, но возможно всплыла какая-то мелкая но критичная деталь.
Если можешь попробовать предыдущие варианты, то:
1. Если работает 3, но не работает 4, значит проблема в исполнении кода из озу
2. Если работают 3 и 4 (и не работает, как уже известно, 5), то проблема в прерываниях
3. Если не работают 3-5, то идей пока нет
Я бы сейчас зашил бы 3 и 4 если бы -> Upd 17.11.2020: Убрал 3 и 4 версию, т.к. выложил пятую :)
Вернул (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1089356&viewfull=1#post1089356) 3 и 4 версии.
Вернул 3 и 4 версии.
Тест 3 работает, 4 ведет так же как 5 т.е. "мерцает" - она похоже пересбрасывается
Через некоторое время тест 4 стал показывать картинку, часы идут, а вот счетчик Start byte не меняется и все таки периодически самопроизвольно сбрасывается.
Ситуация довольно однозначная, проблема с выполнением кода из озу (с чтением кода команд, как я понимаю). Могу только предположить, что хотя на бумаге циклы чтения кода команды и чтения данных одинаковы, но в реале какие-то сигналы (адрес, DBIN, ...) формируются в цикле выборки команды с другими задержками. Оригинальных предложений нет, разве что попробовать уменьшить частоту до 3 МГц или подумать над введением торможения. Портированный NEO SPECTRUMANом бейсик в полном варианте тоже так работать не будет, т.к. у него часть кода в озу.
NEO SPECTRUMAN
18.11.2020, 16:26
Портированный NEO SPECTRUMANом бейсик в полном варианте тоже так работать не будет, т.к. у него часть кода в озу.
у бейсика и часть переменных в озу и без меня
без которых он работать не будет
а так он и с рабочей памятью работать не будет
есть подозрение что еще и что то пишотсо не туда куда надо ко всему прочему
и программа повреждается в процессе выполнения...
но часть таки ж в пзу
например там загружалка
с которой можно пытаться что нибудь грузить в экран
для *****го print по моему уже нужны процедуры из озу
у бейсика и часть переменных в озу
На данный момент данные из озу читаются нормально, проблема только в чтении кодов команд из озу.
- - - Добавлено - - -
Чтобы не зацикливаться на одной версии - возможно проблема с чтением кодов команд связана не с временными различиями, а с логикой формирования каких-то сигналов, но мне самому этот вариант представляется менее вероятным, там вроде и ошибиться особо негде.
Чтобы не зацикливаться на одной версии - возможно проблема с чтением кодов команд связана не с временными различиями, а с логикой формирования каких-то сигналов, но мне самому этот вариант представляется менее вероятным, там вроде и ошибиться особо негде.
Проверил специально множество процессоров в том числе импортные - ведут себя они одинаково
Завтра на всякий случай поставлю опять 100нс память, посмотрим что с ней будет.
С логическим анализатором было бы веселее, но на простейшей программке можно попробовать увидеть что-то осциллографом
org 0
di
lxi h,0FFFFh
mvi m,0E9h ;pchl
pchl
Не уверен, что будет между циклами, но если pchl читается и выполняется из озу нормально, то на всех линиях адреса будет единица. Даже если между циклами не 1, то все равно картина будет строго периодическая. А если pchl из FFFF не прочитается, то адресные линии будут меняться.
подумать над введением торможения.
В общем напаял я проводами схемку торможения на ТМ2, штатную из Ленинграда, чутка подкорректировав.
73970
Тест 4 заработал.
Эх, хотел без тормозов, но похоже там точно надо очень шуструю память ставить.
- - - Добавлено - - -
Прошил тест 5 - тоже заработал.
Поставил дубовый Днепр 9010 - работает.
Но к сожалению буфер и регистр все таки должны быть 1531 серии или 74F245 и 74F373. Но зато память РУ5Г можно ставить. Ладно пусть Днепр погоняется в тесте, посмотрим свалится или нет
Меня очень удивил тот факт, что получается чтение M1 и не M1 у 8080 все же различаются, впервые узнаю про такое. В даташите допуски на запаздывание некоторых сигналов относительно клока весьма значительные, но я думал, что они относятся к разным экземплярам процов, а не к разным циклам одного проца. Вероятно твоя хитрая схема тактирования проца относительно ras и cas привела к такому результату, в классике скорее всего несколько десятков нс не оказывали критического влияния.
В схему торможения особо не вник, вижу что тормозится только чтение озу. Теоретически можно попробовать еще сузить круг торможения и включить в него только циклы M1.
Хорошо, что получилось доработать. Для кого как, а для меня zx8080 уже оправдал свое существование выявлением особенностей чтения 8080.
- - - Добавлено - - -
Поставил дубовый Днепр 9010 - работает.
На 3.5?
ivagor, а реально добавить тест, какая эквивалентная "частота" при выполнении программы в ОЗУ.
Сейчас ты замеряешь когда код находится в ПЗУ, то есть без торможения. Интересно сколько будет с торможением. По сути с каждым обращением к памяти съедается один дополнительный такт.
- - - Добавлено - - -
На 3.5?
Да на ней, скриншот скину вечером
ivagor, а реально добавить тест, какая эквивалентная "частота" при выполнении программы в ОЗУ.
Можно выполнить тот же фрагмент в озу, только лучше не переводить в частоту, а напечатать сырой результат, сколько накрутилось. Могу и без теста сказать, что если на каждое чтение озу добавляется такт ожидания (повторюсь, в схеме я пока досконально не разобрался), то "эквивалентная частота" на фрагменте inc rp+jmp будет примерно 2.76 МГц
NEO SPECTRUMAN
19.11.2020, 11:28
По сути с каждым обращением к памяти съедается один дополнительный такт.
на глаз 2,7...2,8 МГц от 3,5
2.76 МГц
Эх, а я то раскатал губу на реальные 3,5МГц :(
По всей вероятности, для полной мощи нужно похоже ускорять память.
Кстати, а когда реверс 8080 делали, случайно никаких закономерностей не выявили в отличии M1 и без него?
NEO SPECTRUMAN
19.11.2020, 11:32
По всей вероятности, для полной мощи нужно похоже ускорять память.
так мы жо делаем
"а если бы русские инженеры делали спектрум в 84 без з80 из того что было"
как ускорять память? :v2_lol:
Mick, сильно разочаровываться не торопись, торможение можно сделать более щадящим. И уже упомянутый учет M1 и тот факт, что тормозить надо не всегда, а только при попадании проца в "неудачный" временной слот. Плюс запись у тебя без тормозов и, например, "эквивалентная частота" push будет 3.2 МГц.
Грубо говоря при 3,5МГц ВМ80 сможет выполнить 875000 команд nop, а при 2,76 -> 690000
То есть против 2,5МГц Ориона с 625000 практически выигрыша нет
Да уж, не совсем то я ожидал
NEO SPECTRUMAN
19.11.2020, 11:39
Да уж, не совсем то я ожидал
а если компенсировать потери 4-мя мегагерцами?
как ускорять память?
Ускорение памяти подразумевает удвоение частоты обращения, при сохранении текущей частоты процессора.
Иными словами сигналы RAS/, CAS/ следуют с частотой 7МГц, а частота процессора остается 3,5МГц.
Что это дает, за одно обращение процессора к ОЗУ, память образно считывается два раза. Но с учетом непопадания процессора в временной слот, то тем самым память гарантированно выдаст верный результат.
А вот еще ВМ80 разогнать на 7МГц, тогда все вернется к текущему результату.
Грубо говоря при 3,5МГц ВМ80 сможет выполнить 875000 команд nop, а при 2,76 -> 690000
Вот почему я не люблю эти "эквивалентные частоты", определив их для одной смеси команд нельзя распространить этот результат на другие команды, хотя для nop почти точно, а если еще точнее, то там 2.8
а если компенсировать потери 4-мя мегагерцами?
Я могу попробовать, но не факт что наши раскочегарятся. Там надо то кварц поменять и коэффициенты счетчика.
- - - Добавлено - - -
то там 2.8
Даже при 2.8 будет = 700000 nop.
700000 - 625000 = 75000
Это конечно тоже такты и команды, но против 875000 -> в плюсе 150000
Страшилка (http://www.nedopc.org/forum/viewtopic.php?f=91&t=9435&start=50), но можно сильно не пугаться, т.к. это смутные воспоминания, и точно не известно, какая там была частота.
- - - Добавлено - - -
Посмотрел тормозилку более внимательно и на мой взгляд там не всегда будет добавляться ожидание при чтении, а только если DBIN начался в слоте VPU и заканчивается (если без ожидания) в слоте CPU. Фактически это
тормозить надо не всегда, а только при попадании проца в "неудачный" временной слот и не так больно, как при торможении на любое чтение.
- - - Добавлено - - -
Прикинул вариант, как можно тормозить только при выборке кода команды. Нужна еще одна ТМ7, на нее M1 с проца по аналогии с D42. Берем инверсный выход и подаем на вход 2 (D) D48. Гарантировать работоспособность не могу, но особых проблем не вижу.
Прикинул вариант, как можно тормозить только при выборке кода команды. Нужна еще одна ТМ7, на нее M1 с проца по аналогии с D42. Берем инверсный выход и подаем на вход 2 (D) D48.
Это повторит целиком схему Ленинграда. В первом варианте схемы так и было, потом убрал так как сказали что чтение команд и данных одинаковое.
- - - Добавлено - - -
Еще один опыт провел. Поднял частоту до 4МГц. Днепр уходит сразу в красный бордер, а вот Квантор 9008 пытается что то делать, но видно что сбрасывается в тесте. Поставил AMD - заработал, пишет 3,99МГц частота :)
Я вот что думаю, что сигнал чтения похоже чуть короче чем мы его представляем, а вот у буржуев похоже они более выдержаны с документацией
- - - Добавлено - - -
И вот еще думаю, может быть попробовать избавиться от буфера. Здесь не так много потребителей шины данных. Но это не факт конечно.
Это повторит целиком схему Ленинграда. В первом варианте схемы так и было, потом убрал так как сказали что чтение команд и данных одинаковое.
И я даже помню кто - я сам. Но могу только развести руками и повторить, что впервые столкнулся с таким различием в zx8080, в даташите временные характеристики сигналов для выборки команды и чтения данных не отличаются.
AMD - заработал, пишет 3,99МГц частота
Да, в emu я пробовал и тоже было 3.99. В принципе точность теста можно попробовать чуть увеличить. AMD детектнулся как AMD?
AMD детектнулся как AMD?
Да.
Более того импортные все стартуют и работают на частоте 4МГц в тесте 5
И, барабанная дробь - Родон 9005 работает на частоте 4 МГц в тесте 5
Таким образом рубеж в 4 МГц отечественным микропроцессором КР580ВМ80А взят!
NEO SPECTRUMAN
19.11.2020, 15:04
Таким образом рубеж в 4 МГц отечественным микропроцессором КР580ВМ80А взят!
расчехляй банку с азотом
Фото опытов
Днепр 9010 на частоте 3,5МГц c торможением
https://i.ibb.co/HF8Mff9/IMG-20201119-112147.jpg (https://ibb.co/HF8Mff9)
https://i.ibb.co/C7BB2d9/IMG-20201119-112153.jpg (https://ibb.co/C7BB2d9)
AMD на частоте 4МГц с торможением
https://i.ibb.co/RpK44Ns/IMG-20201119-140120.jpg (https://ibb.co/RpK44Ns)
https://i.ibb.co/9rGNQpr/IMG-20201119-140125.jpg (https://ibb.co/9rGNQpr)
И всех удививший Родон 9005 на 4МГц с торможением
https://i.ibb.co/YPc6sPg/IMG-20201119-161608.jpg (https://ibb.co/YPc6sPg)
https://i.ibb.co/zsrF7rt/IMG-20201119-161613.jpg (https://ibb.co/zsrF7rt)
- - - Добавлено - - -
P.S. Новобранцы-процессоры уже ожидают на почте. В субботу просто обязан их забрать.
После некоторого размышления я не стал впихивать невпихуемое в тест памяти и переделал свой тест быстродействия, вариантами которого были проверены разные компы. После старта он некоторое время будет показывать цветомузыку, а потом выдаст финальный экран (пример из emu при 3.5 МГц)
73973
на котором показано, сколько команд выполнилось между прерываниями.
Ограничения:
1. Это не тест стабильности, поэтому его надо запускать в заведомо рабочей конфигурации
2. Тест будет нормально работать при частоте <=3.5 МГц
3. Не тестируются 3 команды: di, ei, hlt. Это не критично, т.к. по результатам остальных команд можно однозначно определить растактовки и этих трех.
Если будет желание и возможность прогнать тест и сфоткать результат, то в такты я переведу и выложу.
Upd 26.11.2020: Доработанная версия с более широким частотным диапазоном (до 4.5 МГц) здесь (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1091101&viewfull=1#post1091101)
Интересно, а что если немного увеличить питание процессора по 12 вольт (оставив +5 В и -5 В без изменений для совместимости с остальными микросхемами)?
Увеличится ли максимально достижимая при стабильной работе частота процессора?
Это не тест стабильности, поэтому его надо запускать в заведомо рабочей конфигурации
Ха, интересно какой ее можно считать.
Я вот взял опустил Родон 9005 до 3МГц в надежде что тормозить не надо. А вот фиг там надо тоже и более того на 100нс памяти уже не хочет работать, подавай ему РУ5Г.
Зато набор микросхем более демократичен 555ТМ2, 555ЛН1, 1533АП6 и 1533ИР22
А без торможения счетчик Start byte не увеличивается
Да уж не все так однозначно.
Ха, интересно какой ее можно считать.
Если тест 4 или 5 отработал без ошибок хотя бы час, то это уже более-менее нормальная конфигурация.
Что касается неоднозначности. Есть два вопроса, которые по-хорошему заслуживают отдельных статей с временными диаграммами:
1. Различия во временных характеристиках обращения к памяти процессоров различных производителей и годов выпуска.
2. Различия во временных характеристиках обращения к памяти в циклах выборки кода операции и чтения данных.
Без прояснения этих вопросов задача подбора работающей комбинации превращается в частичную (не полную, тут я не стараюсь преувеличить) угадайку и требует индивидуального тестирования. В итоге сравнительно большие затраты времени, а если маленькие затраты времени, то нет уверенности в возможностях конкретного конфига.
Если тест 4 или 5 отработал без ошибок хотя бы час, то это уже более-менее нормальная конфигурация.
В общем я сделал опять 3,5МГц на Родон 9005 и запустил тест 5
К сожалению похоже без торможения в данном варианте не обойтись, но зато микросхемы все 555 серии и 565РУ5Г, т.е. практически все что можно было тогда достать.
Будем значит из нее делать рабочую конфигурацию :)
P.S. На всякий пожарный заказал на али микрухи памяти MN41256-8 (80нс РУ7). Это типа проверить теорию с быстрой памятью.
Хотя уже понятно, что в данном варианте компа без тормозов, надо ускорять обращение к памяти
Да уж, чем дальше в лес тем процессоры все чуднее :)
Короче тот Квантор 9008, который в тест 3 выполнял на частоте 3,75МГц, тест 5 ни при каких комбинаций микросхем выполнять не хочет даже с торможением, я его уже записал в самые продвинутые, а он на самом деле "чудный".
Хорошо, дай думаю проверю имеющиеся отечественные процессоры на предмет повторяемости комбинаций микросхем. И прикол в том
вот есть два Днепра 9010, так один работает, другой чудит. Также и с Днепрами 8903. Два Квантора 8905 и 9005 работают, а 9008 нет. Квазар 8909 работает.
Это очень странно и понятно что дело так не пойдет. И похоже в данном варианте схемы надо по сути подбирать процы.
В принципе, ответ в теме получили на 3,5МГц практически все имеющиеся процы работают. Для некоторых достижима и 4МГц, хотя возможно и для многих, так как есть признаки активности проца (сигналы SYNC и DBIN бегают)
Но в данном случае решил я поступить по другому, коль выхода по сути нет - выбрать за эталон тот проц, который сможет работать на изначальном варианте конфигурации или близкой к тому. То есть что ближе к деталям тех времен.
А именно за эталон был принят Родон 9005, частота 3,5МГц с торможением:
Конфигурация:
D2 - 155ТМ2
D35 - 555ЛН1
D33 (регистр) - КР1533ИР22
D30 - КР1533АП6
D21...D28 - КР565РУ5Г
Для проверки поставил процессор AMD - работает на этой конфе.
Вот относительно ее и будет проводится проверка, а то все сейчас напоминает некое шаманство.
Да и панельку под процессор надо на цангу заменить, а то эту уже похоже раздолбал.
А теперь про конечную цель, а именно турбо клон Ориона на ВМ80. Ввиду таких особенностей,
1. синхрогенератор однозначно надо запихивать в CPLD. Так хоть можно будет подвигать немного такты туда сюда.
2. ускорять динамическую память (работа на удвоенной частоте процессора)
ускорять динамическую память (работа на удвоенной частоте процессора)
Дело хозяйское, но есть ведь возможность при той же памяти обеспечить прозрачный доступ проца к озу за счет незначительного усложнения выборки видео. Да, я опять про специалист/орион или пентагон. Две выборки видео подряд по одному адресу в промежуточный регистр с уступанием процу, если в предыдущем такте был sync. Дословно схемотехничекую реализацию заимствовать не получится, т.к. в специалисте/орионе не различают доступы к памяти и портам, а в пентагоне z80, но с небольшими доработками вполне реально. Ну и надо сдвинуть такт проца, чтобы DBIN четко начинался в начале слота доступа к памяти и заканчивался в конце.
Это понятно, но типа Ориона и Спеца доступ не хотелось делать ибо все таки хочется запустить именно спековский вариант синхронизации.
Во вторых применение быстрой памяти, а в новом клоне Ориона глупо ставить наши РУ5 просто из за количества микросхем.
Я планировал как минимум с организацией 256Kx4. А те микросхемы позволяют ускориться если что. И в третьих, я же написал что синхрогенератор на CPLD. Иными словами там и подвигать такты если что, а если не получится, то ускорить память :)
се таки хочется запустить именно спековский вариант синхронизации.
Тогда посмотри пентагон или цикл статей М.Буна в радио, в частности статью про память в 1995/4, стр. 23-26. Принципиальная вещь, которой нет в ленинграде - это регистр промежуточной выборки видеоданных (возможно для него есть устоявшееся название, но я его не знаю).
Если будет желание и возможность прогнать тест и сфоткать результат, то в такты я переведу и выложу.
Да что то нет конечного результата - повторяющиеся матрасы. Ждал минут 10 так и не дождался.
Прогнал тест в унреале, я до кубиков в реале не добрался, где видимо уходит в начало.
нет конечного результата - повторяющиеся матрасы.
Это неприятно. Вижу опять практически те же две возможности: озу или какие-то хитрые особенности прерываний в реальном zx8080. Пробовал тест в emu в конфигах zx8080 и zx48, там работает. Идей пока нет, разве что снизить частоту до 3 МГц (с сохранением всех тормозов). Этот тест пожалуй нагружает озу даже сильнее 5го, он постоянно пишет значительные объемы и читает, причем в основном в виде выборки команд.
Идея появилась (вернее вспомнилась), совсем не оригинальная и неудобная в железном исполнении в рамках существующего zx8080, но я все же ее изложу. Нужен островок стабильности, которым может стать sramина где-нибудь в пределах адресного пространства озу без пересечения с видео-озу, например 8000-FFFF. Проц будет иметь туда эксклюзивный доступ и вряд ли будут какие-то проблемы с записью/чтением. Если посмотреть, то основные проблемы в zx8080 не с процами, а с обменом озу<->проц. Если тест правильно работает со sram, но не с dram, значит все очевидно. Такой прием мне помог в ознакомлении и экспериментах с контроллером sdram на плисовой девборде, скорее всего не только мне, но и многим другим. Основная проблема тут - как наиболее просто интегрировать срамину в zx8080. С логикой конечно проблем нет, вопрос в физическом исполнении.
Идей пока нет,
Вот сегодня сделал фотки DBIN относительно RAS/ (F2)
без торможения
https://i.ibb.co/WKgknp5/IMG-20201120-101805.jpg (https://ibb.co/WKgknp5)
с торможением
https://i.ibb.co/KGX5zDz/IMG-20201120-101438.jpg (https://ibb.co/KGX5zDz)
Надо попробовать снять фотки c DBIN относительно H1 (CPU/VPU)
- - - Добавлено - - -
разве что снизить частоту до 3 МГц (с сохранением всех тормозов).
По моему это ничего не дает. Я уже понижал частоту, процессоры один фиг без торможения не работают как надо. Да и думаю не пройдут твой тест. Надо еще подумать
Фотки ras/ + dbin это хорошо, но на мой взгляд cas/ + dbin были бы интереснее, особенно если взять покрупнее по времени.
Я уже понижал частоту, процессоры один фиг без торможения не работают как надо.
Процессоры, насколько я понимаю, работают на 3 МГц нормально, проблема с обменом с озу. Ты же не пробовал 3 МГц с тормозом?
Ты же не пробовал 3 МГц с тормозом?
С утра пробовал, без тормоза они тест 5 никто не проходит. А с тормозом начинают.
- - - Добавлено - - -
но на мой взгляд cas/ + dbin были бы интереснее,
В понедельник попробую снять
LeoN65816
20.11.2020, 23:08
P.S. На всякий пожарный заказал на али микрухи памяти MN41256-8 (80нс РУ7). Это типа проверить теорию с быстрой памятью.
2. ускорять динамическую память (работа на удвоенной частоте процессора)
У меня есть DRAM-чипы AAA2801P-06, на практике проверено, что фунциклят на 7 МГц (https://zx-pk.ru/threads/24455-turboagat-9-16.html?p=913611&viewfull=1#post913611). После перехода на двухпортовую статику они мне более не нужны.
Также есть РУ5Б, безымянные 41256-100, UD61256DC-08. Всех по 2 линейки.
Н-н-н-н-надо? ;)
У меня есть DRAM-чипы AAA2801P-06, на практике проверено, что фунциклят на 7 МГц. После перехода на двухпортовую статику они мне более не нужны.
Также есть РУ5Б, безымянные 41256-100, UD61256DC-08. Всех по 2 линейки.
Спасибо за предложение, но у самого памяти полно разной. А MN41256-8 я уже заказал, не солить же ее.
Откопал старый USB анализатор китайский клон Sealogiс. Его хватит для просмотра сигналов или заказать что то по лучше и какой (в разумных пределах конечно)?
- - - Добавлено - - -
Прибывшие новобранцы из трех разных источников
https://i.ibb.co/zXVFnh1/IMG-20201121-124054.jpg (https://ibb.co/zXVFnh1)
https://i.ibb.co/s325cjD/IMG-20201121-124131.jpg (https://ibb.co/s325cjD)
https://i.ibb.co/qn6mC84/IMG-20201121-124228.jpg (https://ibb.co/qn6mC84)
Теперь будет из чего выбрать :)
Интересно, вот три производителя пластмассовых ВМ80А, а Квазар ВМ80А в пластмассе делал или только в керамике?
Забавно, все производители ВМ80А находились на Украине (Квантор, Днепр, Родон, Квазар).
все производители ВМ80А находились на Украине (Квантор, Днепр, Родон, Квазар).
Все которые у тебя есть, а еще как минимум были Электронприбор, Фрязино (логотип - буква Ф) и еще очень редкие процы, производителя которых забыл. Но ВМ80 в РФ раньше перестали производить и их нет поздних годов выпуска (или они есть, но я их не видел).
- - - Добавлено - - -
Откопал старый USB анализатор китайский клон Sealogiс.
Какая модель?
- - - Добавлено - - -
еще очень редкие процы, производителя которых забыл
Нашел, завод Калькулятор, только это были ИК80, не ВМ80.
Фрязино (логотип - буква Ф)
Полистал инет, вроде как пишут как есть сомнения что там их делали. ИК80 видел, а вот ВМ80А что то фоток совсем нет
А кто этот вариант производил?
https://upload.wikimedia.org/wikipedia/commons/thumb/8/80/KL_USSR_KP580BM80A_i8080_clone.jpg/220px-KL_USSR_KP580BM80A_i8080_clone.jpg
- - - Добавлено - - -
Какая модель?
Где то такая - https://aliexpress.ru/item/2020974930.html?spm=a2g0s.9042311.0.0.264d33edshgM d2&_ga=2.176046437.650859008.1605954490-1576239406.1577538398
Покупал в 2015 году, вроде даже пробовал, но что то не понравилось - возможно потому как вроде пропускал импульсы или уже непомню.
ИК80 видел, а вот ВМ80А что то фоток совсем нет
Да, я ошибся, только ИК80А
Где то такая
С 8 каналами грустно. В 16 каналов еще примерно понятно что влезет, если задача - разобраться с чтением данных из озу
1. С проца: ШД (8), DBIN (1), SYNC (1)
2. RAS/ (1), CAS/ (1), H1 (1)
3. Остаются 3 канала, насчет них можно подумать, например часть ША проца - A15, A1, 0
С 8 каналами грустно. В 16 каналов еще примерно понятно что влезет
Ну если даже новый 16 канальный заказывать, то это один фиг время и уже скорее всего после нового года.
Кто знает, вот такая модель пойдет для опытов - https://aliexpress.ru/item/32805438804.html?spm=a2g0o.productlist.0.0.6d13572 5mlxLEx&algo_pvid=82600856-4914-426d-9b6d-9f48357130b6&algo_expid=82600856-4914-426d-9b6d-9f48357130b6-8&btsid=0b8b036d16059582545226030e077c&ws_ab_test=searchweb0_0,searchweb201602_,searchweb 201603_
Интересно, вот три производителя пластмассовых ВМ80А, а Квазар ВМ80А в пластмассе делал или только в керамике?
Забавно, все производители ВМ80А находились на Украине (Квантор, Днепр, Родон, Квазар).
В пластике Квазар выпускал первый с 1981 года тогда еще с маркировкой ИК80А
Где скопировали там и выпускали :)
Следов пластика после 1993года не обнаружено
В керамике процессор называется 580ВМ80 без "А". Именно такой сертифицирован для спецприменений. Мож там даже ранняя топология. Последние вижу 2014 года корпусирования :)
Пластик КР580ИК80А также выпускали на заводе «Электронприбор» подмосковного Фрязино
Экспорт (Сделано в СССР) шел с Родона (по внешнему виду). Знак завода на крышках отсутствовал.
примеры
https://drive.google.com/file/d/1-YR-7h4BOlBj73pmrpIaIU0-WJHMaLev/view?usp=sharing
LeoN65816
21.11.2020, 15:52
А MN41256-8 я уже заказал, не солить же ее.
Только напомню по ней - время полного цикла 160 нс, а это всего лишь 6 МГц...
После некоторых размышлений пришел к выводу, что тормозилка вылечила чтение для случая, когда DBIN заканчивается во временном слоте CPU. Но остается случай, когда DBIN начинается в CPU. Проблема тут скорее всего в том, что процессор не успевает (судя по даташиту) выдать правильный адрес на ША к началу RAS/. Для лечения этого случая хочу еще раз (первый раз был здесь (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1081812&viewfull=1#post1081812)) предложить изменить формирование F1 и F2, чтобы DBIN четко совпадал по времени со слотом CPU. Для большей наглядности нарисовал:
74001
Тормозилку скорее всего можно оставить текущую. Надо поменять:
1. На вход 6 D10 надо подать TI/ вместо TI
2. На вход 5 D10 надо подать CAS/ вместо RAS/
3. На вход 11 D35 и вход 12 D12 надо подать CAS/ вместо RAS/
Плюсы: практически уверен, что это решит проблему стабильности обмена проца с озу. Скорее всего будет почти неважно какие серии микросхем стоят в качестве буфера и т.д.
Минус: такой вариант без торможения работать не может.
С 8 каналами грустно.
Ну хоть что то.
В общем попробовал еще раз попользоваться китайским Saleae Logic. Да уж сигнал 7МГц он что то плохо словил, ну да ладно, зато общая картина вырисовывается.
Пока ничего не переделывал в плане схемы.
Сначала диаграммы изучал относительно WRBUF и DBIN
https://yadi.sk/i/Q2Ny8gcOc4VNjQ
https://yadi.sk/i/yc2QdttCtoKxRw
https://yadi.sk/i/0KoDI_kUHfVTWA
https://yadi.sk/i/6yC7xqKu3PPsVA
Файл с логом - https://yadi.sk/d/f9u-q3GI31duRg
Потом я добавил сигнал CSRAM/ для того чтобы отсечь чтение памяти
https://yadi.sk/i/D91RBfthBzNAGw
Файл с логом - https://yadi.sk/d/vPFEHGB5nzRt4g
Там видно, что чтение из ОЗУ работает правильно, т.е. при попадании на слот VPU добавляются такты ожидания.
Когда видимо код считывается из ПЗУ то по сути попадание на слот VPU не так критичен
И кстати, сигнал DBIN похоже синхронен с сигналом CAS/
P.S. Для интереса заменил импортный драйвер DS0026 на отечественный К170АП3 - работает
Там видно, что чтение из ОЗУ работает правильно, т.е. при попадании на слот VPU добавляются такты ожидания.
Сначала написал, потом потер. Если коротко - хорошо, если тебя эти временные диаграммы убеждают в правильности чтения из озу, но меня нет.
в правильности чтения из озу, но меня нет.
А в чем неправильно, выскажи сомнения.
Если поглядеть то все CSRAM/ четко попадают на DBIN и если DBIN начинается с VPU, то добавляется так ожидания и DBIN в этом случае заканчивается всегда в CPU.
Если же код выполняется в ПЗУ то там как попадет.
И если есть траблы с работой, то возможно как вариант есть проблемы с записью.
А в чем неправильно, выскажи сомнения.
Посмотрел побольше и повнимательнее и должен поменять свое утверждение на более позитивное - судя по диаграммам при чтении из озу не видно криминала. Т.е. доказательством правильности чтения на 100% эти диаграммы нельзя назвать, но проблем в них не видно (разве что лишний такт ожидания при чтении из озу, но об этом можно подумать потом, когда все заработает). И не видно предпосылок для реализации моего предложения (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1090367&viewfull=1#post1090367).
И не видно предпосылок для реализации моего предложения.
Попробуем твои предпосылки обязательно. Надо хотя бы понять в чем траблы в текущей реализации.
Кстати, тебя не смущает, что DBIN практически синхронен с CAS/, т.е. практически сдвинут относительно F2 а не вместе с ним.
Хотя в книге про Радио РК-86 писали что DBIN появляется с задержкой порядка 130...200нс, что в принципе похоже подтверждается
Попробуем твои предпосылки обязательно.
На данный момент с учетом диаграмм с реала не вижу в этом смысла. Думал, что в реале при чтении из наблюдаются какие-то пограничные случаи, но на диаграммах этого не видно
Если есть возможность, то хорошо бы увеличить разрешение по времени (частоту семплирования), пусть даже запись будет короче.
Если есть возможность, то хорошо бы увеличить разрешение по времени (частоту семплирования), пусть даже запись будет короче.
К сожалению, это его максимум. Надо что то посерьезнее.
Кстати, тебя не смущает, что DBIN практически синхронен с CAS/, т.е. практически сдвинут относительно F2 а не вместе с ним.
Хотя в книге про Радио РК-86 писали что DBIN появляется с задержкой порядка 130...200нс, что в принципе похоже подтверждается
По даташиту (смотрю AMDшный) максимальное запаздывание DBIN относительно Ф2 (tDC) может достигать от 100 (для 4 МГц) до 120 нс (для 2-2.5 МГц). Т.е. я был готов к тому, что запаздывание есть, но не знал - насколько именно. Все же разрешение по времени хотелось бы побольше.
- - - Добавлено - - -
К сожалению, это его максимум
Понятно
возможно как вариант есть проблемы с записью.
Надеюсь ты снимешь диаграммы записи. Можно поменять три сигнала: DBIN и WRBUF (что очевидно) и еще TI, все равно при таком временном разрешении в нем нет смысла. А заменить их на WE/ и WR/ (что тоже очевидно), ну и можно добавить SYNC.
- - - Добавлено - - -
По диаграммам понятен принцип торможения и при желании можно посчитать время выполнения команд из озу в тактах. Например 4 (nop; add r,r и т.д.) и 5 (mov r,r; inr; inx и т.д.) тактные команды в озу при текущем варианте торможения в установившемся режиме (последовательность одинаковых команд, как в sptest) будут выполняться за 6 тактов.
- - - Добавлено - - -
Насчет сигналов. Еще ведь и CSRAM/ при записи не влияет, можно и его заменить, например на RAS или SC/
и еще TI, все равно при таком временном разрешении в нем нет смысла.
Не без TI не хочет, он видимо по нему синхронизируется или около того.
Подцепив сигналы записи, я так понял что проблемы в записи слова в ОЗУ, возникает одна лишняя паразитная запись
74036
Не могу понять, какой сигнал самый нижний и где WE/?
- - - Добавлено - - -
Или WE/ второй снизу?
Или WE/ второй снизу?
Да WE/ второй снизу, самый нижний это смесь битов статуса - запись в память. Третий снизу SYNC.
Блин, форум сжал картинку, завтра залью к себе на яндекс-диск
самый нижний это смесь битов статуса - запись в память
Т.е. выход 1 D10, как я понимаю. Картинку можно не заливать, теперь все понятно.
Т.е. выход 1 D10, как я понимаю.
Именно так.
Наверно ты придумал простой вариант исправления, а у меня в голове засел вариант с JK-триггером без D9. Учитывая торможение по чтению и некритичность на данный момент быстрого буфера все же ВК38 хорошо подошел бы, но сейчас это уже поздновато.
Наверно ты придумал простой вариант исправления, а у меня в голове засел вариант с JK-триггером без D9.
Озвучивай свой вариант, я пока в раздумьях.
JK-триггер:
S/=RESET/
R/=SC/ or WRM/ or WO/ or RESET (т.е. тут еще нужен элемент ИЛИ)
если ТВ1/ТВ9, то
С/=NOT(WR/) (еще нужен инвертор)
J=K=1
если ТВ15, то
С=WR/
J=1
K=0
Потом элемент ИЛИ:
WE/=Q or H1/
- - - Добавлено - - -
Сейчас написал и задумался, дает ли приведенный вариант формирования R/ гарантию от лишней записи. В принципе когда SC/=0 WRM/ и WO/ уже должны быть текущие ("правильные"), но я не на 100% уверен.
- - - Добавлено - - -
В принципе когда SC/=0 WRM/ и WO/ уже должны быть текущие ("правильные"), но я не на 100% уверен.
Если у тебя тоже нет уверенности, то хорошо бы посмотреть SC/, WRM/ и WO/ анализатором. Или все же усложнить, чтобы сигнал записи начинался по заднему фронту SC/ или SYNC
- - - Добавлено - - -
Более простой и сильно опирающийся на то что уже есть вариант:
ТМ2:
R/=SC/
C=SC/
D=not (WRM/ or WO/) (выход 1 D10)
S/=1
Дальше элемент И-НЕ:
WE/=not (Q/ and H1/) - Q/ инверсный выход ТМ2
Смущать может разве что это
R/=SC/
C=SC/
тут можно SC/ который на C чуть задержать
Я немного подумал и решил попробовать чуть проще поступить. Так как запись в память лучше стробировать, то RAS оставил, хотя пробовал и H0 и CAS/
Результат тот же или вообще нет.
Тогда решил попробовать SC/ смешать c H1/ и подать на R вывод ТМ2 (типа запрет записи по H1 и SC/)
Ну по крайней мере на экране появилась таблица с цифрами. Вечером закину фото.
В общем после доработки тест 5 стал показывать циферки, но есть нюансы
Это Родон 9005 с D2 К155ТМ2
https://i.ibb.co/ggnP6Vd/IMG-20201125-144257.jpg (https://ibb.co/ggnP6Vd)
Это AMD с D2 К155ТМ2
https://i.ibb.co/nnR3vXq/IMG-20201125-144430.jpg (https://ibb.co/nnR3vXq)
Это Родон 9005 с D2 КР1533ТМ2 или К555ТМ2
https://i.ibb.co/02BckWp/IMG-20201125-145002.jpg (https://ibb.co/02BckWp)
Все оказалось не так плохо, ранее выложенный лог по чтению соответствует варианту Родон+155 и там медленновато, а вот два другие варианта (они одинаковые) сравнительно бодрые. Можно попробовать ускорить и Родон+155, если вместо WRBUF/ подать H1 на вход 4 D48, но гарантий, что будет работать не могу дать.
- - - Добавлено - - -
Такты для pchl и rst не стал приводить, т.к. это будет не совсем корректно, там есть зависимость от предыдущей команды. Приведенные растактовки справедливы для случая, когда выполняется последовательность одинаковых команд.
Я так понимаю в этом случае 155ТМ2 явно "притормаживает" проц. То есть смыла в ней теперь нет.
Исправил одну ошибку (не в ту строку попал), заменил файл
Mick, ты планируешь пробовать частоты >3.5 МГц? А то я сообразил (вспомнил, вернее сначала сообразил потом вспомнил), почему версия теста быстродействия для zx8080 не давала полностью правильные результаты на частотах>3.5 МГц. Я это уже дорабатывал для других компов, но подзабыл. Могу сделать тест с запасом, правильно работающий до 4.5 МГц.
Mick, ты планируешь пробовать частоты >3.5 МГц? А то я сообразил (вспомнил, вернее сначала сообразил потом вспомнил), почему версия теста быстродействия для zx8080 не давала полностью правильные результаты на частотах>3.5 МГц. Я это уже дорабатывал для других компов, но подзабыл. Могу сделать тест с запасом, правильно работающий до 4.5 МГц.
Если не трудно, сделай.
Но а по теме, попробовал другие процессоры Днепр и Квантор показывают "тормознутый вариант" вне зависимости от годов. Пробовал и 88, 89, 90 и 92 года.
Но некоторые Днепры совсем тупы - сваливаются.
Так же не зависит что стоит в качестве ТМ2.
Попробовал Родон 9008 он как работает как Родон 9005
А вот Родон 89 годов совсем тупые как Днепры, а вот Родон 8801 ведет как "тормознутый"
Над расширением частотного диапазона sptest я вчера задумался после результатов, которые ты выложил. До этого не предполагал, что различия запаздывания сигналов между разными экземплярами процов могут быть такими значительными, что это сказывается и на работе тормозилки. Почему вижу смысл доработать sptest до >=4 - возможно на 4 даже у AMD сигналы так задержатся, что получится более сильное торможение, как у Родона+155 (и, как ты написал, у других).
Такое излишнее торможение можно попытаться вылечить, например так (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1091003&viewfull=1#post1091003), но наверное не стоит торопиться, сначала стоит попробовать 4 МГц. Там в тесте буквально несколько чисел подкорректировать и пару-тройку команд добавить, я его еще днем переделаю.
а вот Родон 8801 ведет как "тормознутый"
Дополню, он все таки подглючивает, т.е. не всегда проходит тест.
Кроме того попробовал два китайских интела - они четки как AMD :)
Исходя их этого теста пока делаю вывод, что импортные процы как то выдержаны технологически. Они посему и на 4МГц тогда работали. А вот у наших разброс параметров достаточно большой и не только по годам, но и между партиями одного года.
Посему на данный момент лучшие результаты показали процессоры Родон 9005 и 9008, они по параметрам "близки" к оригинальным
К сожалению нет 91 и 92 года этого завода, но надеюсь что у них техпроцесс не ухудшился. Так что для турбирования они пока более предпочтительны.
Но на частоте 3,5 МГц процессоры работают это уже факт.
Касательно текущей схемотехники, мне кажется надо тактовые импульсы сдвинуть на опережение. Исходя из логов анализатора DBIN запаздывает относительно RAS/ и F2. А что, если попытаться сдвинуть F1 и F2 чтобы DBIN как раз мог начинаться вместе с RAS/
Но на частоте 3,5 МГц процессоры работают это уже факт.
И это весьма положительный факт. Пусть "старый" проц (Родон 88) нестабильно работает на 3.5, но все же работает, а >=89 по твоим словам работают нормально. На 3 наверняка и Родон 88 работал бы нормально, не зря вектор сделали с такой частотой (еще бы тормоза поменьше, но это уже другая история).
Касательно текущей схемотехники, мне кажется надо тактовые импульсы сдвинуть на опережение. Исходя из логов анализатора DBIN запаздывает относительно RAS/ и F2. А что, если попытаться сдвинуть F1 и F2 чтобы DBIN как раз мог начинаться вместе с RAS/
Mick, судя по результатам теста, лог анализатора по чтению ты снимал на Родоне90+155. Лог AMD (да и Родон90+1533) выглядел бы иначе. Учитывая 4 МГц не стоит торопиться с коррекцией тактовых сигналов. И я не очень понял, какой у тебя приоритет - чтобы найти процы работающие с минимальным торможением на 4 или повысить стабильность Родона88 на 3.5? Для достижения этих двух целей рецепты могут оказаться разными.
Доработал тестик, должен переносить до 4.5 МГц включительно. Цифра 3 это по моей нумерации, не стал менять чтобы не путаться.
И я не очень понял, какой у тебя приоритет - чтобы найти процы работающие с минимальным торможением на 4 или повысить стабильность Родона88 на 3.5? Для достижения этих двух целей рецепты могут оказаться разными.
Цели были две.
1. Для импорта будут ли работать на 4МГц - для гипотетического клона Ориона на i8080А или ВМ80А. По сути процы работают, еще проверим твоим тестом.
2. Для наших 3,5МГц - доработать текущую ленинградскую схемотехнику до стабильной работы.
Но никто не мешает сделать клона Ориона и на 3,5МГц, если развертка будет VGA
Определенно там синхрогенератор будет на CPLD, чтобы если нужно брать кварц с более высокой чатотой (к примеру *9 от чаcтоты процессора)
Но там определенно тормоза не приветствуются.
а >=89 по твоим словам работают нормально.
В большей массе и только в "тормознутом" стиле. Те кто в режиме "импорт" - AMD, импортные интелы и два Родона
- - - Добавлено - - -
Касательно нового теста.
Перепаял кварц на 16МГц, тактовая 4МГц.
Вне конкуренции AMD и интелы они запустились, прошли тест.
Наши я не стал перебирать, а только выборочно
Родон 9005 и Родон 9008 запустились и прошли тест, кроме того два Днепра 9205 тоже прошли тест и результаты как у Родонов
Но Днепр 9105 уже не проходит. Ну Кванторы 9008 и 9203 не прошли тест.
У наших результаты несколько хуже чем у импортных. Вечером скину фото.
А вот и фото теста на 4МГц
Родоны 9005 и 9008, причем с КР1533ТМ2 они более стабильны, чем с 555ТМ2. Днепры 92 года тоже дают такой результат.
https://i.ibb.co/4Z8Cn6L/IMG-20201126-134434.jpg (https://ibb.co/4Z8Cn6L)
А вот AMD и китайские интелы - им похоже все пофиг :)
https://i.ibb.co/WHVjCCY/IMG-20201126-134552.jpg (https://ibb.co/WHVjCCY)
Результаты для 4 МГц в тактах совпали с результатами для 3.5 МГц (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1091003&viewfull=1#post1091003) - Родоны/Днепры с колонкой Slow, AMD/Intel с колонкой Fast. Все же стоит попробовать раньше возвращать READY=1, или мой вариант или свой придумай.
Стоит ли сделать отдельный (без теста клавиатуры, без прерываний и часов) более жесткий тест памяти, чтобы долбил на запись и чтение стеком? Или пятого теста достаточно?
Стоит ли сделать отдельный (без теста клавиатуры, без прерываний и часов) более жесткий тест памяти, чтобы долбил на запись и чтение стеком? Или пятого теста достаточно?
Я думаю стоит, чтобы уж точно быть уверенными, что с памятью не глючит.
попробовать раньше возвращать READY=1
Попробовал завести сигнал H1/ на вход D триггера WAIT. Типа что если CSRAM/ попадает на VPU, то задерживаем, а если на CPU, то нет.
Родон 9005 стал показывать результаты AMD, то есть "Fast". AMD без изменений. Но Родон работает в этом случае только с КР1533ТМ2 (D2)
Опыт проводился на 4МГц
Родон 9005 стал показывать результаты AMD, то есть "Fast".
Вот это уже хорошо, это наверное рекорд быстродействия для ВМ80 в рамках форума, а возможно и всего постсоветского пространства. Получается в 90-91 это было реально. Кстати, какие озушки сейчас (на 4 МГц)? А для AMD/intel с тормозом не вижу пространства для ускорения в рамках текущего варианта выборки видео, разве только если тормоз совсем слетит, но тогда перестанет нормально работать.
Кстати, какие озушки сейчас (на 4 МГц)?
Сейчас конфигурация такая
все микросхемы 555 серии, кроме
буфер КР1533АП6,
регистр КР1533ИР22
триггер D2 - КР1533Тм2
память КР565РУ5Г!!!
- - - Добавлено - - -
А для AMD/intel с тормозом не вижу пространства для ускорения в рамках текущего варианта выборки видео, разве только если тормоз совсем слетит, но тогда перестанет нормально работать.
Ну скажем так, для данной платы 4МГц это простой опыт, я ее верну на 3,5МГц.
А далее опробовать еще варианты со сдвигом тактовой или твой, чтобы поглядеть как и что.
Ну и проверить порты, чтобы был так сказать законченный вариант.
Ну а дальше как и планировал пробуем сообразить клон Ориона с 3,5....4МГц тактовой, но без тормозов. Если надо ускорить память, значит ускорим. :)
- - - Добавлено - - -
Немного об "Fast" опыте.
Проверил Днепры 9205, увы в режиме "Fast" они не заработали
Удрученный результатом, проверил второй Родон - 9008. Он в режиме "Fast" работает.
Напомню, что опыты проведены на частоте 4МГц
Таким образом, в рамках такой жесткой организации схемотехники самые лучшие оказались процессоры Родон 9005 и 9008 (более молодых у меня нет).
Они по параметрам наиболее близки с импортными.
Кванторы не пробовал?
Пробовал, увы не работают ни в каком режиме. Зависают
Попробовал завести сигнал H1/ на вход D триггера WAIT. Типа что если CSRAM/ попадает на VPU, то задерживаем, а если на CPU, то нет.
Опустил тактовую до 3,5МГц. К сожалению те кто давал результат "Slow" получили вместо Fast только нестабильность.
Только Родонам пофиг. Так что данный вариант уменьшения задержки тоже не подходит для большого количества процессоров, а только улучшает отдельные "года" процессоров и производителей.
Надо думать дальше
Может мой вариант (https://zx-pk.ru/threads/32131-daungrejd-kompyutera-quot-leningrad-quot.html?p=1091003&viewfull=1#post1091003) попробуешь?
Родоны с радиаторами
неужели 6 мгц ?
https://zx-pk.com/forum/viewtopic.php?f=14&t=17674&sid=70330f32a09fe52f335516ad221a6443
Родоны с радиаторами
неужели 6 мгц ?
Ерунду то не говори. Обычный советский радиатор. Такие по моему на ПК8000 ставили
http://tis.kz/photos/hobbi-pk8000/Small/IMG_9522.jpg
- - - Добавлено - - -
Может мой вариант попробуешь?
Попробуем, только уже на следующей неделе
Mick, а это под 3.5 мгц разведено ?
https://zx-pk.ru/threads/6066-orion-128-raznoe.html?p=1075623&viewfull=1#post1075623
А что если напряжение питания поднимать? Ну, например вместо 5 вольт дать 5,5? Или вместо 12 дать 13.
Mick, а это под 3.5 мгц разведено ?
Нет, это обычный журнальный Орион
Сделал стековый тест памяти без излишеств.
1. Прелюдия
1.1. Стартовая поверхностная проверка озу от 4000 до FFFF
1.2. Переписываем (с контролем правильности) в озу основной код тестирования
2. Основной тест. Проверка памяти от 5900 (т.е. затрагивается область атрибутов и в двух нижних частях будет цветомузыка) до FF00. Один проход при 3.5 МГц без торможения занимает примерно 2 минуты 50 секунд. Т.е. час - это примерно 21dec=15hex проходов
Во всех случаях обнаружения ошибки будет красный бордюр и бип
- - - Добавлено - - -
Уже несколько раз предлагали повысить напряжение питания. Насколько это помогает N-МОП? КМОП понятно (привет 580ВМ1), но N-МОП?
Уже несколько раз предлагали повысить напряжение питания.
Я вот никак не пойму, что мы этим добъемся - частота проца повысится, дык и так на 3,5МГц видно что они создают видимость работы. Или стабильность?
Так что же мы выиграем, если я подниму напряжения до 13В, кстати сейчас 12.4В
Я как раз хотел, чтобы кто-нибудь из рекомендовавших поделился ссылками на рассказы (или собственным успешным опытом) об улучшении разгона N-МОПных процов с увеличением напряжения питания.
С КМОПными можно было бы ожидать, что если даже не увеличится потолок частоты, но наши старые вдруг волшебным образом станут вести себя как буржуинские (например fast вместо slow на той же частоте).
- - - Добавлено - - -
И, кстати, очень интересно, как именно манипулировать напряжениями питания когда их три
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot