![]() |
Насамделе такая нестабильность и критичность к элементной базе скорее всего свидетельствуют что времянки управляющих сигналов подобраны впритык, при том отлаживались на качественном ОЗУ, имеющем запас быстродействия относительно своих паспортных данных. Поэтому, при установке говняного ОЗУ, которое вполне может быть даже медленнее чем заявленные паспортные данные система не успевает отрабатывать циклы записи/чтения, что проявляется в виде глюков. Здесь рекомендации - либо подправить времянки для того, чтоб можно было работать с говняным ОЗУ, либо ставить более быстрое и соответственно дорогое ОЗУ.
|
Попробовал разные комбинации, глючит когда UT работает основной памятью (старшие 32k), если UT стоит в качестве видеопамяти (нижние 16k) вроде все ок. На моей плате тоже работает нормально, но там видеопамять дублируется, так что это не показательно. Самое странное, что из времянок там только сигнал RAM (~CE для микрухи), а он формируется очень тупо (RAM <= '0' when MREQ = '0' and A15 = '1' else '1'), а остальные сигналы идут прямо с Z80.
Может конечно в обоих микросхемах памяти проблема в старшей половине (в видеопамяти она не используется) - но вероятность, по-моему, очень маленькая. |
Quote:
---------- Post added at 10:25 ---------- Previous post was at 10:18 ---------- Т.е. сбой возможно идёт по адресам из-за захвата шины сканером. |
:v2_eek: Похоже память себя нормально чувствует с прошивкой 1.03, что совсем странно, т.к. все код по работе с памятью там одинаковый. Alex_kapfa, есть возможность свою проверить?
|
Quote:
Правильно ли я понимаю, что мне для этого тестирования необходимо будет прошить снова ПЗУ, Альтеру и АТмегу? У меня АТмега 32, а версия 1.03 - это для АТмеги 16. Или я ошибаюсь? |
Quote:
Мне только остается наблюдать и болеть :), а еще благодарить :). |
Quote:
Я думаю, что можно скомпилировать исходный код и под Мегу32, но у меня для этого мало опыта. |
1 Attachment(s)
Alex_kapfa. Вот прошивка.
|
Альтеру, а потом мегу этой прошивкой. ПЗУ наверное можно и не прошивать.
|
Quote:
|
Quote:
Возможно появление мусора на сигнале. Я в подобном случае изменил код на: if.... then ... else ... end if; и код заработал нормально. Видать он компилится немножко по разному. |
Вчера попробовал и так - не помогло. Вечером продолжу.
ewgeny7, а что за Орион. Железо есть посмотреть? А то развожу свою схему под fpga, а лучше бы покодил что-то. ;) ---------- Post added at 15:32 ---------- Previous post was at 15:28 ---------- Нашел ветку про Орион. ;) |
Quote:
Программировать Альтеру прошивкой 1.03 или оставить пока как есть? Нет, все-таки "подвис" приблизительно через 30 минут. Попробую еще и в Альтеру залить прошивку 1.03. |
Спасибо !
Если хочешь оставить 1.03 - то перепрошей и альтеру, если 1.04 то мегу назад прошей. Так правильно будет. А этой информации мне пока хватит. |
Quote:
Оставил крутиться на ночь в качестве теста игрушку RiverRaid (понравилось мне ее использовать как тест :) ) в демонстрационном режиме. Утром обнаружил, что она "вывалилась" в бейсик с ошибкой "5 Out of screen, 5:1" |
Ув. syd, раз уж ты сел за исходник, можно тебя попросить заодно пересмотреть там один момент, про который я упоминал здесь (см. PS/2)? Или хотя бы просто разреши использовать уже правленный вариант.
|
dicebox, давай патч, прикручу.
|
Quote:
|
Quote:
Можно было бы еще платы speccy2007 заказать? Может бы нужно было покрыть часть расхода, с тем что потом бы денежка вернулась когда забрали заказы. Я точно уверен что буду делать и 128кб вариант, имея опыт это уже будет сделать легче. |
rnd.gen, Орион - это не Спектрум :)
|
Quote:
|
Quote:
---------- Post added at 11:19 ---------- Previous post was at 09:22 ---------- А какая память из двух вариантов UT62256CPC-70LL и CY62256LL-70PC считается лучше? |
Quote:
В прайсе IMRADа (я в основном у них покупал комплектовку для Speccy) http://www.imrad.com.ua/search.shtml?qs=62256&query=any CY62256LL-70 дороже на 6 грн., чем UT62256CPC-70LL. ---------- Post added at 11:38 ---------- Previous post was at 11:27 ---------- Я думаю приспособить память с "четверочного кэша" http://zx.pk.ru/showpost.php?p=235480&postcount=680 Эти микросхемы в "узком" DIPe, поэтому хочу использовать 32-х контактную цанговую панельку в качестве переходника, чтобы потом, когда буду переделывать в 128-ой вариант ее можно было извлечь, а вторую микросхему, которую не нужно будет менять, скорее всего, просто припаяю. С эстетической стороны этот вариант, конечно, хуже, но микросхемы с "кэшей" я думаю будут лучше работать (пусть меня поправят, если я заблуждаюсь), т.к. они быстрее (20 ns вместо 70, как у UT62256CPC-70LL). |
Quote:
|
Quote:
|
Quote:
|
Quote:
или я ошибаюсь? |
UT62256-20
Эти работают у мну на трех машинках. |
Quote:
такие в микронике продаются по полтинику... |
Нужны свежие идеи. На сегодня имеем такую картину. Память UT62256CPC-70LL работающая в качестве нижней памяти ведет себя правильно. Если использовать ее как верхнюю память периодически проявляется ошибка при чтении из нее (по всему диапазону 0х8000 - 0xffff ). Причем либо младший бит данных сбрасывается, либо биты 5, 7 устанавливаются. Например записано 0x47, а прочиталось 0x46. Если она битая, почему работает в первом случае. Не понимаю.
Решение есть - заменить память и забыть, но ведь должно же быть объяснение. ---------- Post added at 21:57 ---------- Previous post was at 21:29 ---------- Шина данных подтянута к 5 В (10k). Все сигналы идут прямо с Z80. (Ax, Dx, ~RD, ~WR). Только ~CS идет с ПЛИС, но формируется он очень просто. |
syd, мне видится токо одно объяснение: обращение к видео ОЗУ должно происходить не за 3, а за 4 такта, чтоб синхронизироваться со сканером. На оригинальном Сперктруме доп. такт добавляется остановом CPU, на отечественных клонах - через WAIT. Если этого не делать, то надо очень быстрое ОЗУ чтоб доступ к памяти был прозрачным, иначе будут вот такие глюки. Поэтому с быстрой памятью всё работает, а медленная просто не успевает за пол такта 3,5МГц выдать правильный результат. Т.е. 70нс память по идее должна успевать работать прозрачно без задержки.. но говняная память - не успевает.. Это возможно объясняется тем, что эта память - перемаркированная из более медленной фальшивка, или некондиция - у китайцев это бывает часто.
|
БК-0010, в том и проблема, что в качестве видеопамяти она успевает все сделать, а вот в качестве верхней памяти не читает иногда нормально. Хотя там время на чтение больше 1 такта 3.5 МГц (> 280 нс).
Судя по тому, что данные читаются практически правильные (только некоторые биты испорчены) я сделал вывод, что операция чтения проходит, но кто-то еще занимает шину данных, и портит их. Вытащил эту память, запустил тот же тест, но проверяю, чтобы читалось все время 0xff. Пока все четко, без сбоев. Значит шина в порядке. |
Quote:
|
В speccy2007 используется две микросхемы памяти. Одна для видео памяти, она делиться между процом и видеоконтролером (сканером). Именно от нее процу остаются остатки. Так вот она работает нормально.
Вторая память напрямую связана с процом (висит прямо на шине данных и шине адреса проца). Эта память не тормозиться, тк сканер работает со своими шинами , и не мешает ей. |
пардон, тормознул на счёт "верхней памяти", забыл что речь о 48к, а не о 128к.. т.е. глючит именно процессорное ОЗУ?
|
Да.
---------- Post added at 12:49 ---------- Previous post was at 12:43 ---------- В общем еще гипотеза, шина VD меньше нагружена (только плис). Шина D нагружена процом, плис, авркой и пзу. Возможно память не справляется с такой нагрузкой на шину данных. А если работает как видеопамять, и нагрузка меньше, то все ОК. Но как это проверить? И как исправить? |
Quote:
Есть смысл тебе морочится с этой проблемой, или просто тебе интересно разобраться? Мне интересно читать сообщения, хотя мало что понимаю. Еще вопрос. Есть у меня еще память для 128 варианта, UT621024PCL-70LL, она будет работать нормально или сразу заказывать другой аналог? |
Quote:
Для меня тоже важно узнать, будет ли в 128-ом варианте работать UT621024PCL-70LL, так как я тоже купил именно эту память для расширения. |
Quote:
|
Alex_kapfa, rnd.gen, у меня в 128 версии UT621024SCL-70LL, работает отлично. Так что хз.
БК-0010, часть битов стабильно вместо 0 дают 1. Буду завтра высылать rnd.gen плату с нормальной памятью, он уже скучает наверное. :) |
| All times are GMT +4. The time now is 11:01. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.