Просмотр полной версии : Двухпортовая память
Error404
16.01.2015, 05:16
Если нет возможности ожидать китайцев и нашу дорогую всё еще советскую поШту, можно воспользоваться миниатюрной ДП СОЗУ ( ДИП 48 ) в Москве, недорого :
CY7C130-55PC (1K x 8 Dual-Port Static Ram) dip48 98 52 85 Cypress, где "85" - цена в рублях поштучно.
http://www.antelcom.ru/index.php/sklad/stroka14
( В районе Митино ).
Там же и обычные СОЗУ недорого, например 512К 8 бит и др.
"85" вообще-то оптовая цена (дофига у нас тут оптовиков?), а так то оно "98". Но вопрос в другом: надо минимум 4кб (а лучше 8 кб) - для внешнего текстового видеоадаптера этого достаточно. Нет ли таких в природе недорогих паябельных? А то паять в параллель 8 тараканов DIP48 это уже шиза в конструктивном плане, да и по стоимости в сумме выходит как за более "взрослые" чипы.
- - - Добавлено - - -
Если нет возможности ожидать китайцев и нашу дорогую всё еще советскую поШту, можно воспользоваться миниатюрной ДП СОЗУ ( ДИП 48 ) в Москве, недорого :
CY7C130-55PC (1K x 8 Dual-Port Static Ram) dip48 98 52 85 Cypress, где "85" - цена в рублях поштучно.
http://www.antelcom.ru/index.php/sklad/stroka14
( В районе Митино ).
Там же и обычные СОЗУ недорого, например 512К 8 бит и др.
"85" вообще-то оптовая цена (дофига у нас тут оптовиков?), а так то оно "98". Но вопрос в другом: надо минимум 4кб (а лучше 8 кб) - для внешнего текстового видеоадаптера этого достаточно. Нет ли таких в природе недорогих паябельных? А то паять в параллель 8 тараканов DIP48 это уже шиза в конструктивном плане, да и по стоимости в сумме выходит как за более "взрослые" чипы.
LeoN65816
18.11.2017, 14:13
А есть ли "в природе"/реальные какие-либо компы, апгрейды, аддоны, моды с использованием двухпортовой памяти?
CodeMaster
18.11.2017, 15:49
А есть ли "в природе"/реальные какие-либо компы
А зачем она там нужна? У кого были деньги использовали её в видео, например Apple в Macintosh'ах. MM сейчас пытается прикрутить двухпортовку в БК, но он делает вещи "в себе" ибо непонятно зачем это надо, т.к. пострадает совместимость.
MM сейчас пытается прикрутить двухпортовку в БК
Китайцы послали в Лес с ДП СОЗУ. Буду делать ДП СОЗУ из обычной СОЗУ - да, пару десятков мелкоты ЭКФ1531, но зато точно рабочей и в наличии, и не за 2000 руб за 1 шт.
По итогам выложу Э3 и фото макета.
Самое скользкое в симуляции ДП СОЗУ - распределитель таймингов обращения - он требует весьма ВЧ гена, в районе 12...30 мгц, или иначе - неконструктивные потери времени выборки СОЗУ.
Цель - сделать из БК0010-01 БК11М с максимум 1 тактом ожидания, ну и Н1806ВМ2 за одно пристроить ( там он потребует всего пяточка мелкоты ЭКФ1533 в обвес, т.е. практически нахаляву ).
Может, кто потом и сделает коммерческий модуль на основе Э3.
Кстати, быстродействие такой ОЗУ можно регулировать плавно подстроечником СП5-16ВА - от шутрых ~300 нс до тормозных БКшных 3 мкс.
Error404
19.11.2017, 00:36
Кстати, вполне область для малоемкой дешевой паябельной ПЛИС. В сети часто попадаются уже готовые проекты на VHDL/verilog делающие двухпортовое СОЗУ из обычной быстрой SRAM и ПЛИС. Вот например:
https://studfiles.net/preview/4447484/page:9/
https://www.altera.com/support/support-resources/design-examples/design-software/verilog/ver-true-dual-port-ram-sclk.html
http://www.asic-world.com/examples/verilog/ram_dp_sr_sw.html
Слабо понимаю в области ПЛИС, вот бы кто попробовал и рассказал как оно. :)
fpga содержит блоки sram их количество и объем зависит от конкретного чипа, эти блоки можно конфигурировать, для памяти нужной разрядности, в том числе и двух портовую.
LeoN65816
19.11.2017, 08:56
Да, понятно, что существовали редкие/экзотические/супердорогущие видеоадаптеры с двухпортовкой. И на писи тоже.
но зато точно рабочей и в наличии, и не за 2000 руб за 1 шт.
Вроде ты зрячий, да не видишь (http://www.phantom.sannata.ru/forum/index.php?t=26671&p=396834#pp396834)... Вроде ты слышащий, да не слышишь (http://www.phantom.sannata.ru/forum/index.php?t=27000&p=399563#pp399563)...
Двухпортовка внутри FPGA - это легко, однако мне не подходит (http://forum.agatcomp.ru//viewtopic.php?pid=199#p199) (применительно к АГАТу: любая Экранная ПодСтраница размером 2КБ в пределах первых 64КБ основной памяти может отображаться в текстовых режимах, любая Экранная Страница размером 8/16КБ в пределах 128КБ основной памяти может отображаться в графических режимах).
Цель этого топика - выявить (для изучения) подобные штучки: ZX Badaloc (#1 (https://www.uelectronics.info/backup/zx-badaloc.html), #2 (http://www.probosci.de/zxbada/fpga/), #3 (http://www.probosci.de/zxbada/dina.php?ll=documentation.htm)). Однако инфы - "кот наплакал"...
Есть еще что-либо подобное?
Да, понятно, что существовали редкие/экзотические/супердорогущие видеоадаптеры с двухпортовкой. И на писи тоже.
Вроде ты зрячий, да не видишь (http://www.phantom.sannata.ru/forum/index.php?t=26671&p=396834#pp396834)... Вроде ты слышащий, да не слышишь (http://www.phantom.sannata.ru/forum/index.php?t=27000&p=399563#pp399563)...
Двухпортовка внутри FPGA - это легко, однако мне не подходит (http://forum.agatcomp.ru//viewtopic.php?pid=199#p199) (применительно к АГАТу: любая Экранная ПодСтраница размером 2КБ в пределах первых 64КБ основной памяти может отображаться в текстовых режимах, любая Экранная Страница размером 8/16КБ в пределах 128КБ основной памяти может отображаться в графических режимах).
Цель этого топика - выявить (для изучения) подобные штучки: ZX Badaloc (#1 (https://www.uelectronics.info/backup/zx-badaloc.html), #2 (http://www.probosci.de/zxbada/fpga/), #3 (http://www.probosci.de/zxbada/dina.php?ll=documentation.htm)). Однако инфы - "кот наплакал"...
Есть еще что-либо подобное?
Чуть не понятно, этот клон на fpga. старая версия на cpld.
Error404
19.11.2017, 14:22
Готовые двухпортовки SRAM приемлимой цены (но все же в разы дороже однопортовых) чаще всего маленькой емкости (порядка 16кб) или ну очень дорогие (в 10 раз и более дороже чем однопортовые SRAM) при емкости 64кб и более. При этом для более-менее серьезной поделки хочется емкость от 512кб. При небольших частотах, ПЛИС+1pSRAM воспроизводящие 2-портовый чип, лучшее решение ИМХО, у которого нативно двухпортовая память выигрывает только частотами при совершенно несопоставимой стоимости. Возможно офтоп, т.к. тоже не совсем понял об чем речь если не о собственно вариантах на тему двухпортовости SRAM.
LeoN65816
19.11.2017, 15:18
Разумеется, двухпортовка дороже. Это, как говорится, по определению. Но нынче это вполне доступно.
При этом для более-менее серьезной поделки хочется емкость от 512кб.
Сергей, вот скажи, пожалуйста, для какой-такой поделки нужно 512 килограмм двухпортовки???
Взять тот же Орион: для него достаточно 16Кх16. Младший байт ассоциируем с 0xC000-0xEFFF (или 0xС000-0xFBFF при 480х256) основной страницы/плоскости ОЗУ (bitmap), а старший по тем же адресам дополнительной страницы/плоскости (аттрибуты). При записи по этим адресам идет запись и в двухпортовку и в основную память. При чтении читается только из основной памяти. Видеоконтроллер читает одновременно и битмап и аттрибуты. Даже на мелкологике можно сделать обвязку (на плиске, конечно же, это удобней). Профит: проц и ОЗУ шпарят совершенно асинхронно от видеоконтроллера, можно гнать как душе хочется: Z80@20MHz (а это 8 Махов) - легко!
Возможно офтоп, т.к. тоже не совсем понял об чем речь если не о собственно вариантах на тему двухпортовости SRAM.
Третий раз: интересуют (для изучения) реализации натуральной двухпортовки в железках. Эмуляция двухпортовки ограничивает возможности разгона.
PS. По поводу цен: многих людей (и даже не разрабов) почему-то ;) не пугают цены на EP1K30/EP1K50, Z84C1516FSG (Эва, Спринтер)...
Error404
19.11.2017, 17:09
Сергей, вот скажи, пожалуйста, для какой-такой поделки нужно 512 килограмм двухпортовки???
Взять тот же Орион: для него достаточно 16Кх16. Младший байт ассоциируем с 0xC000-0xEFFF (или 0xС000-0xFBFF при 480х256) основной страницы/плоскости ОЗУ (bitmap), а старший по тем же адресам дополнительной страницы/плоскости (аттрибуты). При записи по этим адресам идет запись и в двухпортовку и в основную память. При чтении читается только из основной памяти. Видеоконтроллер читает одновременно и битмап и аттрибуты. Даже на мелкологике можно сделать обвязку (на плиске, конечно же, это удобней). Профит: проц и ОЗУ шпарят совершенно асинхронно от видеоконтроллера, можно гнать как душе хочется: Z80@20MHz (а это 8 Махов) - легко!
Даже Ориону надо 64кб, т.к. там уже в базовой реализации 4 экрана - с 0000, с 4000, с 8000 и с С000 (а в цвете все они двухплоскостные). Разным софтом используются все они, в некоторых играх даже бывает одновременно (отрисовка на неактивном, затем переключение и так много раз в секунду). А бОльший чип - чтобы упростить себе жизнь: расширенная память все равно же нужна, а по стоимости (если говорить за обычные SRAM) ОЗУ на 512кб практически одинаковы с ОЗУ на 64кб.
LeoN65816
19.11.2017, 17:29
Упс, а я и забыл, что у Ориона 4 экранных страницы...
Тады надо 64Кх16 (или 64Кх18): вполне доступно (https://ru.aliexpress.com/wholesale?catId=0&initiative_id=SB_20171119062303&SearchText=cy7c028).
А расширенную память реализовать на обычной срам.
Кому-нибудь попадались ссылки на какие-либо субстанции на двухпортовке? Поделитесь, плиз.
Я видел токо в fpga применении, тот же ts-conf или v6z80p... как я понял, стандартная схема применения предпологает наличие некоего программируемого процом счетчика адресов (DMA), который вычитывает tiles/sprites из ЖЫРНОЙ двухпортовки на втором порту у которой висит проц и гонит их по отдельной шине в мелкую двухпортовку на 2 линии экрана, пока он "рисует" первую линию вторая линия выгребается прямо на экран через другой порт... за счет дикой скорости сдвиговых регистров не требуется даже для крутого разрешения.
Для видях ibm запатентовала в средине 80-х dual port serial video dram, вот этой памяти реально "как грязи" у китайцев, в ней встроенный 256bit (равный размеру строчки) сдвиговый регистр, который может защелкуть все 256bit по /RAS и потом сдвигать-выдавать через отдельный port по мере надобности... 1 раз захватил данные перед выводом строчки и далее все время свободно для процессора аж до начала следующей строчки.
LeoN65816
22.11.2017, 09:34
bigral (http://www.phantom.sannata.ru/forum/index.php?t=27072&p=406450#pp406450):
А схему похожую еще лет 10 назад хотели внедрить в zx-spectrum-48 клоны. Как я понимаю это даст возможность:
1 турбировать процессор до максимума;
2 избавиться от проблемы "арбитража" доступа видеоконтроллера и процессора;
А есть ссылочки на это?
Китайцы послали в Лес с ДП СОЗУ. Буду делать ДП СОЗУ из обычной СОЗУ - да, пару десятков мелкоты ЭКФ1531, но зато точно рабочей и в наличии, и не за 2000 руб за 1 шт.
Имхо, зря сдались. Мы с коллегой буквально 3 дня назад заказали себе подарки к НГ - тут (https://ru.aliexpress.com/item/CY7C006A-20AC-CY7C006A-20AI-CY7C006-new/32801558331.html?ws_ab_test=searchweb0_0,searchweb 201602_5_10152_10065_10151_10344_10068_10345_10342 _10343_10340_10341_10543_10541_10084_10083_10307_1 0301_5640015_10060_10155_10154_10056_10055_10539_1 0538_5370015_10537_10312_10536_10059_10313_10314_1 0534_10533_100031_10211_10103_10128_10073_10102_10 129_10169_10142_10107_10125,searchweb201603_30,ppc Switch_5&btsid=65053195-ac98-4e29-a4f7-45b3aeb4070c&algo_expid=825592f5-be9c-441e-af87-00fa2ad2c82d-0&algo_pvid=825592f5-be9c-441e-af87-00fa2ad2c82d)
А для макетирования я в наших краях прикупил такие "переходники" - https://www.chipdip.ru/product/ppo-plcc-pcb
LeoN65816
22.11.2017, 11:32
Denn, а для каких проектов/задач/задумок прибарахляешься? ;)
Denn, а для каких проектов/задач/задумок прибарахляешься? ;)
Ну, вот так прям возьму и всё сразу расскажу на все интернеты. Нет уж :)
Всему своё время. Хотя проект потихоньку ползёт аж с 2010-го года.. но пока только на бумаге.
Очень надеюсь в 2018-ом приступить к макетированию (макет "стынет" с 2013-го..).
LeoN65816
22.11.2017, 12:55
Дык, еще больше заинтриговал!
Интересно же! Глядишь, быть может, и чему-то путному и технически красивому научимся. :)
Давай, колись уже, плиз. ;)
bigral (http://www.phantom.sannata.ru/forum/index.php?t=27072&p=406450#pp406450):
А есть ссылочки на это?
Нету. Но суть преобразования не сложная и сводится к тому что убираются мультиплексоры адресов между процессором и генератором видеоадресов (так как есть 2 отдельные шины адреса) и на выходе одна шина данных идет сразу на "видеовыхлоп" а вторая как и ранее на шину процессора. После такого процессор можно CMOS на 20Mhz поставить (правда не ясно успеет ли ROM, ВГ93, AY и т.д. там уже надо будет шаманить, или искать более быстрые микросхемы или гнать /WAIT в нужные моменты).
Тут еще проблема в "логичности" переделки, т.е. в идеале двух-портовой памятью можно "накрыть" область куда одновременно обращаются и процессор и видеоконтроллер а остальное делать на обычной однопортовой памяти (она то дешевле). Но учитывая что мы строим наши поделки по сути используя устаревшие невостребованные компоненты "со свалки истории", может выйти что дешифратор-арбитр выборки адресов + место на плате будет еще дороже чем накрыть все 128кб какой-нибудь б.у. двухпортовкой. Ну и ясно что 3.3v микрухи дешевле в пересчете на килобайт но уже не та "ламповость" что у 5v.
LeoN65816
22.11.2017, 20:58
правда не ясно успеет ли ROMW27C512-45Z - отличная шустрая иипромка, плюс у Z80 цикл памяти это 3-4 такта проца... А портам, конечно же, вэйт нужен.
но уже не та "ламповость" что у 5v.Дык, доступны и пятивольтовые двухпортовки. Вот (http://zx-pk.ru/threads/24455-turboagat-9-16.html?p=844771&viewfull=1#post844771) есть у меня такая с ибэя, да жутко пугает и отталкивает куча МГТФа в данном апгрэйде...
PS. Я тоже проектик (#1 (http://zx-pk.ru/threads/26944-mechta-agat-na-plis.html), #2 (http://forum.agatcomp.ru//viewtopic.php?id=103)) на двухпортовке поднимаю. Да задумался, а нет ли каких "подводных камней" с нею, вот и интересуюсь железными реализациями.
OrionExt
22.11.2017, 23:10
МГТФ бояться, в лес не ходить:)
Пробуй. Кто, если не ты?) Вот не дуал срам конечно, но на 50МГц ЦПУ Z80 работал как часы.
shurik-ua
22.11.2017, 23:26
МГТФ бояться, в лес не ходить
Пробуй. Кто, если не ты?) Вот не дуал срам конечно, но на 50МГц ЦПУ Z80 работал как часы.
Феншуйненько )
OrionExt
23.11.2017, 01:13
Феншуйненько )
Чего меня так то… Срам в воздухе весит (на мгтф), только четыре ноги питания ее держат жесткой пайкой к плате (вот с этими ногами я намучался). Ничего тут не реального нет:)
- - - Добавлено - - -
Сори. Вернемся к теме. Так-что даже на проводочках (до 10см) до 10МГц, дуал с-рам покажет отличный результат:)
LeoN65816
23.11.2017, 06:36
Вот не дуал срам конечно, но на 50МГц ЦПУ Z80 работал как часы.
Так-что даже на проводочках (до 10см) до 10МГц, дуал с-рам покажет отличный результат:)
1. Напомню: у Z80 цикл памяти это 3-4 такта частоты процессора. У 6502 цикл памяти это половина периода частоты проца, то есть память работает на удвоенной частоте проца! А у меня в планах проц раскочегарить на 25-28 МГц, соответственно память будет фурычить на 50-56 МГц.
2. Работа софтядра (внутри кристалла!) и натурального проца на больших частотах - это разные вещи.
3. Так вот звон в мгтфе на таких частотах - совсем не шутка...
4. А какой пучок фторопластовый получается (с натуральным процом, шиной наружу, двухпортовкой)...:(
А у меня в планах проц раскочегарить на 25-28 МГц, соответственно память будет фурычить на 50-56 МГц.
Забей сразу!, можешь включить его в "минимальном конфиге" тупо через cоздание на шине кода NOP не зависимо от того что на шине адреса и проверить при какой максимальной частоте "счетчик на шине адреса" перестанет считать. Почти уверен что это около 16mhz... Так что если на нем написанно 8mhz значит и надо использовать на 8, а всякие разгоны это все дешевые "понты" не в них счастье.
LeoN65816
23.11.2017, 19:56
можешь включить его в "минимальном конфиге" тупо через cоздание на шине кода NOP не зависимо от того что на шине адреса и проверить при какой максимальной частоте "счетчик на шине адреса" перестанет считать.
Да, планирую также поэкспериментировать.
Почти уверен что это около 16mhz... Так что если на нем написанно 8mhz значит и надо использовать на 8
Я говорю о 65хх (#1 (http://forum.6502.org/viewtopic.php?f=3&t=4256), #2 (http://forum.6502.org/viewtopic.php?f=4&t=186&start=105#p49343), #3 (http://forum.6502.org/viewtopic.php?f=4&t=4448&start=30#p51696)), а ты о каком цпу? :confused:
а всякие разгоны это все дешевые "понты" не в них счастье.
"От лукавого" говоришь?... А ты сейчас с какого компа это написал? Неужели с i8088@4.77 ? ;)
а ты о каком цпу? :confused:
WDC 65С816S ну или 65С02. По идее на 5 вольт питания они гарантируют работу на 70нс (в документации есть таблица). НО это память надо круче 30нс??? Не прикол ниразу, так как основная куча доступной памяти работает ~55нс. Короче 16mhz это уже на грани "перебора", так что самое оно пускать процессор на 8mhz.
"От лукавого" говоришь?... А ты сейчас с какого компа это написал? Неужели с i8088@4.77 ? ;)
пишу со старого dell d630 (core 2 duo t8300), но ты делаешь ошибку смешивая "практичность" и "хобби" это совершенно разные направления
VladimirS
23.11.2017, 21:15
МГТФ бояться, в лес не ходить:)
Пробуй. Кто, если не ты?) Вот не дуал срам конечно, но на 50МГц ЦПУ Z80 работал как часы.
Это какой-такой Z80 на такой частоте работал. Просто интересно
Это какой-такой Z80 на такой частоте работал. Просто интересно
FPGAшный и ez80 :) надо полагать.
LeoN65816
24.11.2017, 07:30
По идее на 5 вольт питания они гарантируют работу на 70нс (в документации есть таблица).
Короче 16mhz это уже на грани "перебора", так что самое оно пускать процессор на 8mhz.
У WDC нет своей фабрики, они все чипы делают на чужих фабриках (нынче TSMC) с использованием освоенных на текущий момент технологических норм. Нынче заявляют о чипах с технологическими нормами 600нм. "Меня терзают смутные сомнения", и на самом деле там намного круче. Параметры скорострельности, указанные в шите даташном, являются заведомо консервативными, причем очень сильно консервативными. На каких-то форумах несколько раз попадалась инфа о том, что одно время (причем очень давно) WDC выпускала чипы маркированные на 28МГц, сейчас не смог найти...
According to WDC, the off-the-shelf ones generally top out at about 25MHz @ 5V if the supporting parts cooperate. (http://forum.6502.org/viewtopic.php?f=2&t=2785#p30591)
Bill Mensch had 10MHz 6502's in the 1970's (http://forum.6502.org/viewtopic.php?f=2&t=2785&start=30#p30725)
НО это память надо круче 30нс???
А в чем проблема? Дармовая статика из 386х-486х имеет 25 нс, 20нс, 15нс. Широко распространена доступная статика 10нс, и даже 8нс. Даже двухпортовка 15нс также доступна.
Не прикол ниразу, так как основная куча доступной памяти работает ~55нс.
В случае с 65хх можно применить "финт ушами". Я уверен, что ты знаешь о подобном, просто подзабыл немного... ;)
Выбор кристалла памяти вешаем на дешифратор адреса. Адрес "устаканивается" после отрицательного фронта тактовой (фаза адреса) - таким образом идет предвыборка чипа по адресу.
Высоким уровнем тактовой (фаза обмена данными) стробируем разрешение выхода при чтении или разрешение записи при записи (у этих входов время выборки намного меньше основной выборки кристалла, который у нас уже предвыбран).
но ты делаешь ошибку смешивая "практичность" и "хобби" это совершенно разные направления
В наших рядах хоббистов есть отдельный маньяк (исключительно в хорошем смысле этого слова), который на АГАТе(!) пишет серьёзную инструментальную среду для АГАТа!
Нет ничего плохого/зазорного в желании улучшить/модернизировать/"облагородить" "комп души" с использованием современных технологий (которых в те давние времена не было, а задумок - "пруд пруди").
OrionExt
24.11.2017, 16:15
Я привел просто практический пример - софтовое ядро z80 и навешанная физическая память. Все это понятное дело питается от 3.3В. У меня не было уверенности, что это будет работать, пока практически не проверил.
А так МГТФ не сильно уступает в частотном плане двух сторонней плате разведенной авто-роутером.
О частотах? Если собирать на расыпухе модульную конструкцию, то выше 10МГц не вижу смысла прыгать. Бо можно нарваться на проблемы: звон, не до конца продуманный дизайн схемы, отсутствие периферийных микросхем. И это все подтверждается примерами из интернета.
Если говорить о одноплатнике вперемешку с CPLD и FPGA, то конечно можно замахнуться и на 33МГц. Но тут опять - повышенное требование к плате, грамотный дизайн схемы, отсутствие периферийных микросхем, работающих на такой частоте.
Все эти рассуждения приведены применительно к 8-битным платформам.
О частотах? Если собирать на расыпухе модульную конструкцию, то выше 10МГц не вижу смысла прыгать. Бо можно нарваться на проблемы: звон, не до конца продуманный дизайн схемы, отсутствие периферийных микросхем. И это все подтверждается примерами из интернета.
Согласен (правда есть небольшие допустимые исключения в виде частей схемы где используются частоты до 25mhz, например vga clock для 640x480). А по поводу SRAM кэша из старых материнок, да это конечно реальный вариант но именно для кэша процессора или спрайтового движка или как временная мера для начального этапа прототипирования. Теоретически, учитывая что скорость 15нс то можно слепить из него двух-портовую память на ~35нс или QUAD портовую на ~80нс (quad karl!). Но если пользовать 15нс SRAM просто как основную память, то все это начинает пахнуть "ардуинщиной", нормальный апарат должен использовать DRAM (или Video DRAM).
VladimirS
25.11.2017, 10:05
Я привел просто практический пример - софтовое ядро z80 и навешанная физическая память. Все это понятное дело питается от 3.3В. У меня не было уверенности, что это будет работать, пока практически не проверил.
А так МГТФ не сильно уступает в частотном плане двух сторонней плате разведенной авто-роутером.
О частотах? Если собирать на расыпухе модульную конструкцию, то выше 10МГц не вижу смысла прыгать. Бо можно нарваться на проблемы: звон, не до конца продуманный дизайн схемы, отсутствие периферийных микросхем. И это все подтверждается примерами из интернета.
Если говорить о одноплатнике вперемешку с CPLD и FPGA, то конечно можно замахнуться и на 33МГц. Но тут опять - повышенное требование к плате, грамотный дизайн схемы, отсутствие периферийных микросхем, работающих на такой частоте.
Все эти рассуждения приведены применительно к 8-битным платформам.
Добрый день!
Может я что-то не так делаю, но несколько лет назад сделал собственную конструкцию компьютера. Микропроцессор Z84C0020PEC, конструкция модульная на рассыпухе КР1533, прекрасно работает на частоте 25 мГц, периферия на 82С55. А недавно в руки попала микросхема KL5C8400C с объявленной частотой 33 мГц, собрал макет с целью проверить ее частотные свойства. Оказалось, что она вполне работоспособна на частоте 50 мГц, пробовал на 60 мГц, работает 2-3 секунды и зависает, ну, а периферию можно сделать на CPLD, например, EPM7128SLC84-10, у меня на ней собрана видеокарта для ЖК монитора, работает на частоте 60 мГц.
LeoN65816
25.11.2017, 11:34
Владимир, очень-очень интересно!
А ссылочки на проект/изыскания/фоточки? ;)
Абсолютно все интересно, для изучения, и особенно "у меня на ней собрана видеокарта для ЖК монитора, работает на частоте 60 мГц."
OrionExt
25.11.2017, 12:32
VladimirS, сложно дискутировать о том, чего никто не видел. Тут много неизвестных.
Сразу бросается в глаза 82С55 – работающий на 25Мгц. Все конечно в нашем мире может быть, но зарубежным производителям 90г. такие экземпляры не ведомы.
A selection of different manufacturers 82C55s are shown in the table.
None of the chips have a speed rating anywhere close to the system
clock speed of MTXPlus+, 8MHz is the fastest 82C55 available, but that
is not necessarily an issue.
The key consideration is the timing requirements given in the
PIA datasheets. The minimum Read and Write pulse widths (in ns) are shown.
Manufacturer ID Speed Min RD, ns Min WR, ns
------------ ---------- ----- ---------- ----------
Intersil CP82C55A-5 5MHz 250 100
Intersil CP82C55A 8MHz 150 100
OKI M82C55A-5 5MHz 300 300
OKI M82C55A-2 8MHz 100 150
Intel 8255A-5 5MHz 300 300
Intel 82C55A2 8MHz 150 100
Mitsubishi M5L8255AP-5 5MHz 300 300
The Z80 timing diagrams show that IORQ and RD/WR are valid for just over 2 cycles,
which translates to the figures in this table. It can be seen that the 5MHz PIAs are
only likely to work with a CPU clock speed of < 8MHz and none of the others
are likely to work reliably at 16 or 20MHz.
Using a PIA with a minimum R/W speed of 150ns would equate to a CPU clock speed
of ~13.3MHz - this may be the limit for MTXPlus+ using a 82C55A based disk drive.
CPU PHI, MHz Period, ns Z80 R/W, ns
------------ ---------- -----------
4 250 500
8 125 250
12 83 167
16 63 125
20 50 100
Ссылка (http://primrosebank.net/computers/mtx/projects/mtxplus/notes/mtxplus_notes.htm) на источник.
- - - Добавлено - - -
Может я что-то не так делаю, но несколько лет назад сделал собственную конструкцию компьютера.
И судя по всему у вас одноплатник с прикрученным разъемом расширения. Эффективная частота системы в целом намного ниже.
Так что это вполне реально.
- - - Добавлено - - -
Аг-да. На К1533 серии эффект "звона" еще больше (крутизна фронтов), и вероятность поиметь нежданчик еще больше.
VladimirS
25.11.2017, 17:23
Добрый день!
Никогда не думал, что может понадобиться конструкторская документация, поэтому нет
ее. Все делал по учебникам, припаяю одну, две, три микросхемы - заработало хорошо,
нет переделываю. Окончательной схемы нет, но в ней нет ничего необычного, все в
общем-то стандартно.
Конструктивно, это печатная гетинаксовая плата 9 на 15 см. с дырочками ( быстро
убедился в ее низком качестве ). На плате кое-какие общие микросхемы и четыре
разъема: для микропроцессора с буферами, для видеокарты, для ОЗУ, для клавиатуры и
связь с Орионом-128, на котором писал программы, а также разъем для внешней памяти -
это уже еще одним этажом. В общем жуткая кострукция.
Второй макет одноплатный:
KL5C8400C с буферами 74АВТ
EPM7064SLC44-10 - тут вся логика
W27C512 - ПЗУ и CY7C1049 - ОЗУ
Ну и генератор - 50 мГц
Видеокарта
EPM7128SLC84-10 плюс W24527AK, генератор 60 мГц
Цвет внутри ПЛИС реализован, 16 цветов, но не хватило выводов для входа управления
им. С микросхемами EPM7128STC100 у меня отношения не сложились, пять штук
перепробовал, греются и выходят из строя, последнюю припаял, запрограммировал,
включил - греется, так на этом все закончилось. Разрешение карты 512 на 256 точек,
путем удвоения хорошо вписывается в 15" ЖК монитор, можно и на, допустим, 19", но
изображение уже не такое четкое.
А я и не писал, что 82С55 работает на частоте 25 мГц, это частота процессора, а уж какая
частота приходит на 82С55 не исследовал, но факт, что работает, и причем здесь 90-е
годы.Проверил все свои микросхемы, все нормально работали.
Микросхемы использовал КР1533, а не К1533.
На счет "звона" не знаю, в ушах не звенит, а помехи на экране устранил заменой всех
электролитов на твердотельные.
И по иноземному мне не стоит писать, я знаю только "хенде хох".
Извиняйте, если что не так. Владимир С.
LeoN65816
25.11.2017, 17:52
Владимир, спасибо, что рассказываешь о своих наработках.
Очень интересно, и куча вопросов:
Ага, видеопамять отдельная. А как организовал арбитраж доступа к ней проца и видеовыхлопа? Это, пожалуй, самое интересное, и по теме топика.
Аппаратный только один режим (графика 512х256)? Текстового нет?
С цветами как-то очень сумбурно и непонятно... Расскажи, пожалуйста.
Развертка видеовыхлопа какая? Под XGA (1024х768)? А кадровая? По горизонтали удваиваешь, и по вертикали утраиваешь? А полный растр какой?
PS. Миллигерцы (мГц) - это круто! "А товарищ понимает толк в извращениях! Йа-йа!" ;)
VladimirS
25.11.2017, 18:59
50МГц - надо так, ясно я и сам подозревал, что здесь что-то не так.
Хотя можно было и по тактичней объяснить, грамотный вы наш.
Растр формируется полный 1024 на 768, а изображение выводится как 1024 на 512, и занимает среднюю часть экрана с 128 по 640 строку, остальное изображение гасится и в это время процессор может обращаться к видеопамяти.
Цвет как в Орионе две плоскости, две микросхемы видеопамяти по 16Мб, я ограничился 16-ю цветами, вроде и в Специалисте так.
Режим только графический.
CodeMaster
25.11.2017, 20:03
Хотя можно было и по тактичней объяснить, грамотный вы наш.
Я думаю очевидно, что это была "щютка-юмора".
VladimirS, пользуясь случаем хотел спросить, не было проблем в работе W27C512 при честном клоке Z80 в 20 МГц? Или приходилось вэйтить проц при обращении к ПЗУ?
VladimirS
25.11.2017, 23:33
Denn, здравствуй!
Проверял я эту микросхему, отлично работает при клоке 30 МГц, при клоке 50 МГц поступил по другому, поделил эту частоту пополам и запуск компьютера делал на частоте 25 МГц, потом копировал нужную программу в быстрое ОЗУ (CY7C1049D), передавал управление этой программе, а она переключала такт на 50 МГц и уже работала на этой частоте.
- - - Добавлено - - -
две микросхемы видеопамяти по 16Мб
Описка, конечно же 16 Килобайт.
Error404
25.11.2017, 23:53
30 Мгц - это 33нс, сомневаюсь за китайские чипы. А вообще при таких частотах выводить на VGA наверное можно прямиком (там частоты видеовывода всего в два-четыре раза выше Ориона).
Ну и конечно,
https://www.youtube.com/watch?v=eCTCgpggfIM
Это была шутка с намеком, есличо. :)
А то многие пишут тут заманчивое, а проектов для воспроизведения сообществу как не было так и нет (а интересно было бы запустить Орион на 30М с выводом на VGA, на десятке корпусов DIP-рассыпухи).
VladimirS
26.11.2017, 19:25
30 Мгц - это 33нс, сомневаюсь за китайские чипы.
Я им про Фому, мне опять про Ерему. 30 МГц это такт процессора, а не памяти.
VladimirS
28.11.2017, 16:30
Добрый день!
Может это и не по теме. Пришла посылка с деталюшками, в том числе кварцевый генератор на 56 МГц.
Установил его в мою конструкцию, которую описывал выше на KL5C8400C - работает!!!
Так как на 60 МГц работать отказался, то это близко к верхнему пределу.
Кто не знает, что это за микропроцессор:
http://pdf.datasheetcatalog.com/datasheets2/46/460466_1.pdf
Добрый день!
Может это и не по теме. Пришла посылка с деталюшками, в том числе кварцевый генератор на 56 МГц.
Установил его в мою конструкцию, которую описывал выше на KL5C8400C - работает!!!
Так как на 60 МГц работать отказался, то это близко к верхнему пределу.
Кто не знает, что это за микропроцессор:
http://pdf.datasheetcatalog.com/datasheets2/46/460466_1.pdf
Обсуждали года 3 назад на форуме, ты пожалуй первый кто его в железе запустил. Там клок генератора разве делиться на 2 как в z180 ? ты его на 56MГц запустил получается.
VladimirS
28.11.2017, 17:31
Нет, просто, я запускал его в два этапа, сначала на половинной частоте, чтобы могла работать W27C512, которая копирует рабочую программу в быстрое ОЗУ, а потом эта программа переключает частоту на максимум. А быстрых микросхем ПЗУ я не встречал, меньше 35 нс вроде нет.
Может непонятно объяснил, частоту генератора делил простым счетчиком, а так KL5C8400C почти Z80, сигнал только один отсутствует.
Нет, просто, я запускал его в два этапа, сначала на половинной частоте, чтобы могла работать W27C512, которая копирует рабочую программу в быстрое ОЗУ, а потом эта программа переключает частоту на максимум. А быстрых микросхем ПЗУ я не встречал, меньше 35 нс вроде нет.
Может непонятно объяснил, частоту генератора делил простым счетчиком, а так KL5C8400C почти Z80, сигнал только один отсутствует.
ясно, понял.
cо старых материнок можно снять, типа ICS AV9154A, если запускать на 33.
VladimirS
28.11.2017, 20:55
Посмотрел datasheet, она ж вроде 3-х вольтовая
Посмотрел datasheet, она ж вроде 3-х вольтовая
Это проблема того, кто весьма невнимательно читает datatsheet'ы :)
LeoN65816
29.11.2017, 06:52
Вот и еще один проектик (http://forum.6502.org/viewtopic.php?f=4&t=4994) с двухпортовкой появился!
Вот и еще один проектик (http://forum.6502.org/viewtopic.php?f=4&t=4994) с двухпортовкой появился!
во времена пошли, народ лепит шо попало куда попало, без всяких расчетов нагрузки, ранее до такта и до байта старались нагрузить (даже немного "разгон" допускали если задающая частота сама собой немного больше выходила) а теперь все пофигу нет предела извращениям
LeoN65816
29.11.2017, 10:58
Андрей, а что "не так" то? Какая-такая "нагрузка"? В чем извращение то?
Андрей, а что "не так" то? Какая-такая "нагрузка"? В чем извращение то?
Ну это еще не готовый продукт а прототип, а потому на данном этапе вполне нормально "лепить что попало". Ну а так 2 x IDT 7134LA20JG - 16bit, 8kb и 20ns! а у него нагрузка c одной стороны 16bit, 4800bytes и 317ns а с другой неведомый 6502 8bit, при 1mhz-500ns ... 16mhz - 35ns. Ну т.е. явный перекос, как не крути с одной стороны память останется недогруженной. Если проц пашет на 16mhz то вполне можно обойтись такой же быстрой но однопортовой 8bit sram влепить еще 2 регистра и по очереди читать символ\атрибут как в синклере проц прийдется тормозить иногда но скорость заполнения экрана упадет не сильно из каждых 317ns 2 чтения (40ns) на видеопроцессор что составит ~13%. Ну а если проц пашет примерно с той же скоростью что и видеоконтроллер то можно и на DRAM 8bit 150ns слепить как в с64 один цикл видеопроцессор другой проц. Конечно при использовании однопортовой памяти схема должна будет быть синхронной, как все наши клоны синклеров, иначе прийдется мутить еще память-очередь (fifo буфер) типа signetics N9403N (ну то уже "высший пилотаж").
Если нет возможности ожидать китайцев и нашу дорогую всё еще советскую поШту, можно воспользоваться миниатюрной ДП СОЗУ ( ДИП 48 ) в Москве, недорого :
CY7C130-55PC (1K x 8 Dual-Port Static Ram) dip48 98 52 85 Cypress, где "85" - цена в рублях поштучно.
http://www.antelcom.ru/index.php/sklad/stroka14
( В районе Митино ).
Там же и обычные СОЗУ недорого, например 512К 8 бит и др.
LeoN65816
04.04.2018, 13:55
Кому-нибудь требуется (https://www.avito.ru/moskva/audio_i_video/mikroshema_idt7024s35j_firmy_idt._5v_64k-bit_4kx16_626807581) "на пробу"?
OrionExt
04.04.2018, 16:08
Штука интересная для TMS9918. Только вот софта нет. Самому что ли писать? А кому это нужно? Как-то так.
Да и как показала практика на сбалансированной системе 8-бит от двух портовой памяти толка, как от козла молока.
LeoN65816
17.04.2018, 07:44
4 шт. 16Kx16 3.3V DPSRAM - Модуль №3 здесь (http://www.phantom.sannata.ru/forum/index.php?t=24874).
LeoN65816
19.05.2018, 22:36
И еще проектик: здесь (http://65xx.unet.bz/) выбираем "Text-VGA board".
LeoN65816
22.05.2018, 02:10
Вполне доступные двухпортовки (http://stores.ebay.com/Chips-Gate/_i.html?_nkw=idt70&submit=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&_sid=998049724) IDT70V27 (32Kx16) и IDT70V28 (64Kx16), 3.3V.
LeoN65816
28.08.2018, 07:53
Орион (http://zx-pk.ru/threads/28763-eshche-odin-orion-na-plis.html?p=975840&viewfull=1#post975840) на CPLD с использованием двухпортовки.
Орион (http://zx-pk.ru/threads/28763-eshche-odin-orion-na-plis.html?p=975840&viewfull=1#post975840) на CPLD с использованием двухпортовки.
Ради истины - CPLD тут только в процессорном модулей ;)
В видео - "чистая" логика, упакованная в GAL.
И если бы не геморрой с дешифрацией портов и их количеством - тот же процессорный модуль так же был бы на GAL.
LeoN65816
06.09.2018, 10:25
И еще Специалист (http://zx-pk.ru/threads/29464-spetsialist-mkh2-realizatsiya-v-cpld.html?p=977817&viewfull=1#post977817) на двухпортовке.
VladimirS
06.09.2018, 17:58
И еще Специалист на двухпортовке.
LeoN65816, это заблуждение и в, первую очередь, авторов этого Специалиста.
LeoN65816
07.09.2018, 13:38
Я уж было порадовался за него: Человек Разумный внял совет (http://zx-pk.com/forum/viewtopic.php?f=14&t=9283#p100278) и тоже использовал вкусняшку в своем проекте... А оно вон чо: разрядность и мультипортовость так и остались мухами вперемешку с котлетами...
Обленился народ, простая статика 8 бит с разделением во времени доступа уже не катит? :)
Example626
07.12.2018, 17:33
простая статика 8 бит с разделением во времени доступа уже не катит?
Вот так нормально?:
https://zx-pk.ru/threads/29836-zx-spectrum-na-chastote-20-mgts-(bez-wait).html?p=990234&viewfull=1#post990234
LeoN65816
13.03.2019, 02:52
Килобайт двухпортовки (https://web.archive.org/web/20010413215618/http://www.terra.es/personal/dzorita/lpez380.html) - буфер между двумя процессорами.
LeoN65816
20.11.2019, 14:10
Очень заманчивая цена (https://www.utsource.net/itm/p/8793227.html) на мегабитную двухпортовку.
мегабитную двухпортовку
Ну так 3-вольтовая - кому оно надо...
LeoN65816
17.03.2020, 10:54
Мегабитная пятивольтовая двухпортовка (http://www.pro-electr.net/prod/idt7028l15pf8/1698544) по бросовой цене.
Там же и других объёмов.
Даже четырёхпортовки есть.
Всё по интересным ценам.
Доставка почтой $10 до полукилограмма.
Если кто-нибудь надумает там что-либо заказывать, свистните мне, плиз, мне бы заодно оттуда W65C816S6PG-14 на пробу взять.
Мегабитная пятивольтовая
Шаг 100-выв. квадрата - 0.5 мм.
CodeMaster
17.03.2020, 17:21
Шаг 100-выв. квадрата - 0.5 мм.
Кому жемчуг мелкий... ;-)
LeoN65816
18.03.2020, 08:11
Бывает, что кому-то "гр****ы" всегда "не той системы"... ;)
- - - Добавлено - - -
Но вопрос в другом: надо минимум 4кб (а лучше 8 кб) - для внешнего текстового видеоадаптера этого достаточно. Нет ли таких в природе недорогих паябельных?
5V, PLCC84, 4Kx16 (две страницы цветного текста 80х25):
IDT7024L15JB - $2.40 (http://www.pro-electr.net/prod/idt7024l15jb/1394459)
IDT7024L20J - $2.03 (http://www.pro-electr.net/prod/idt7024l20j/1134511)
CY7C024A-25JXC - $5.38 (http://www.pro-electr.net/prod/cy7c024a-25jxc/1937622)
LeoN65816
29.03.2020, 17:14
Приучаю (https://yadi.sk/d/RRVREnLQ9YWLcg) своего АГАТушку
для добротной работы на SRAMушке,
да не на абы какой-то простой,
а на заморской, да диковинной -
- двухголовой (https://yadi.sk/d/CIZhgnkc3MdWBj)! ;)
Вместо 26 микросхем (16 чипов ОЗУ + 5 мультиплексоров + 4 регистра + 1 дешифратор) останется только 3 чипа (1 чип ОЗУ + 1 мультиплексор + 1 чип инверторов)!
LeoN65816
23.04.2020, 13:20
Ур-р-ра-а-а, зар-р-р-работало-о-о!!! ;)
Картинки и фильма там же.
Пожалуй, это первый и успешный пример/опыт использования двухпортовой статической памяти при модернизации/апгрэйде отечественного серийного компа.
Справедливости ради стоит отметить, что наш комрад AlexBel чуть ранее применил такую же двухпортовку в своих проектах на FPGA (http://forum.agatcomp.ru//viewtopic.php?id=318). Он и "обнаружил" глюки при работе с ней. Затем и в моём проекте вылезли такие же глюки (артефакты на экране), которые потом очень просто победил.
По крайней мере первый (и надеюсь, что последний и единственный) "подводный камень" с двухпортовкой существует и связан с арбитражом доступа к одной и той же ячейке памяти по обоим портам одновременно, и конкретно, с блокировкой записи в неё. Обходится этот "камешек" очень легко - читайте внимательно даташиты (раздел "Busy logic") на чипы от IDT (в кипарисовых даташитах это вообще не раскрыто).
Нарытое в даташите:
Busy Logic
Busy Logic provides a hardware indication that both ports of the RAM
have accessed the same location at the same time. It also allows one of the two accesses to proceed and signals the other side that the RAM is “busy”.
The BUSY pin can then be used to stall the access until the operation on the other side is completed. If a write operation has been attempted from the side that receives a BUSY indication, the write signal is gated internally to prevent the write from proceeding.
The use of BUSY logic is not required or desirable for all applications.
In some cases it may be useful to logically OR the BUSY outputs together and use any BUSY indication as an interrupt source to flag the event of an illegal or illogical operation. If the write inhibit function of BUSY logic is not desirable, the BUSY logic can be disabled by placing the part in slave mode with the M/S pin. Once in slave mode the BUSY pin operates solely as a write inhibit input pin. Normal operation can be programmed by tying the BUSY pins HIGH. If desired, unintended write operations can be prevented to a port by tying the BUSY pin for that port LOW.
The BUSY outputs on the IDT7028 RAM in master mode, are push-pull type outputs and do not require pull up resistors to operate. If these RAMs are being expanded in depth, then the BUSY indication for the resulting array requires the use of an external AND gate.
Турбо АГАТ-9/16 (ЦП 65C802, 2.8 МАХа)
Теперь, пожалуй, стоит подпись изменить - 3.89 МАХа :)
"подводный камень" с двухпортовкой существует и связан с арбитражом доступа к одной и той же ячейке памяти по обоим портам одновременно, и конкретно, с блокировкой записи в неё.
Т.е. настоящая честная двухпортовость невозможна...
Чёт вот даже предполагал так - ведь для доступа к ячейкам СОЗУ нужно делать полноценные 2 независимые адресные решетки, т.е. практически удваивать к-во транзисторов на кристалле, или даже еще добавлять...
Огромное спасибо за инфу !
LeoN65816
24.04.2020, 00:15
Т.е. настоящая честная двухпортовость невозможна...
Упс, это просто ты неправильно интертрепировал результаты... ;)
Еще разок внимательно перечитай выдержку из даташита. И ещё вот это (https://www.idt.com/document/apn/91-most-commonly-asked-questions-about-async-dual-ports) почитай.
Чёт вот даже предполагал так - ведь для доступа к ячейкам СОЗУ нужно делать полноценные 2 независимые адресные решетки, т.е. практически удваивать к-во транзисторов на кристалле, или даже еще добавлять...
И опять ты ошибаешься! Глянь-ка сюда (https://www.idt.com/document/apn/253-introduction-multi-port-memories-0).
LeoN65816
13.08.2024, 14:25
Видеокарта с использованием двухпортовки.
Звуковая карта с использованием двухпортовки.
https://www.rehsdonline.com/post/65816-system-june-2022-general-update
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot