Важная информация

User Tag List

Страница 37 из 67 ПерваяПервая ... 333435363738394041 ... ПоследняяПоследняя
Показано с 361 по 370 из 661

Тема: Еще один Орион на ПЛИС

  1. #361
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот, как-то так пока что получилось.
    Порт А - процессор, порт B - видео. Адреса показаны не полные, ругался кактус на синтезе. Но суть уже видна.
    Для проверки таймингов временно затактировал от частоты 20МГц, поэтому фронт записи такой "куцый" получился - по факту он будет растянут минимум на 1 полный такт памяти при частоте процессора 10МГц.
    Сигнал PS - Port Selector, по нему переключаются адресные мультиплексоры и буферы.
    Сигналы SCE и SWE становятся активными только при стабильных адресе и данных по обеим сторонам - до них и после них (на крине изменение адреса - это процессор просто уже "перещёлкнул его, а заводить защёлки ещё и на адреса - жирнота уже, хотя может и придётся).
    А вот и схема на данный момент.
    Основную часть занимают мультиплексоры и триггеры с защёлками. Управляет всем зоопарком синхронный счётчик и половинка триггера - на нём выполнен счётчик селектора портов.

    Применительно к Ориону - адресные мультиплексоры мигом перебрались сюда. Остальное - плата за двухпортовость.
    Завтра буду тестировать на полной частоте и в штатном режиме, но теоретически должно заработать По факту - поменяю так, что бы заработало.
    "Байт-48"

  2. #361
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #362
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Двухпортовая память готова и работает вполне сносно.
    На частоте процессора 10МГц видео-подсистема в худшем случае имеет 2 обращения к памяти за вывод пикселя, так что всё ОК.
    Процессор спокойно пишет/читает.
    Сейчас ещё оптимизирую сигналы и выложу схему.
    И да - можно (и даже скорее всего и буду) делать эту память в виде самостоятельной платы. Конструктивно будет выполнено в виде узкой платы с разъёмами по сторонам платы - с каждой свой порт.
    Пока что основная оптимизация - увеличение окна обращения к памяти, которое на данный момент составляет 20нс. Вызвано это было очень простым схемным решением, что бы не привносить лишние помехи.

    - - - Добавлено - - -

    По поводу памяти - нашел на алике сравнительно дешевую SRAM 5-вольтовую. Ищется на Алике по следующим наименованиям: CY7C1049, AS7C4098, AS7C4096A.
    ИМХО, $3 за корпус ещё не так-то и много, а первые 2 лота вообще при покупке от 10шт стоят около $2.
    "Байт-48"

  4. #363
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Итак, вот готовая схема двухпортовой памяти.
    Во вложении - краткая временная диаграмма.
    Как писал ранее, PS - Port Selector. При лог. "0" выбран порт А (процессор), иначе - В (видео).
    На диаграмме представлено два цикла обращения процессора - запись в первую половину памяти (MA16=0) и чтение из второй половины памяти (MA16=1).
    Из оптимизаций - вместо половинки 7474 можно использовать цепочку из пары инверторов. Задача узла - задержать сигнал F[2] для формирования сигнала PS - достаточно нескольких наносекунд.
    А вот как растянуть фронт сигнала SCE - надо думать. При его увеличении увеличиться и диапазон применяемых чипов памяти. Главное - что бы длительность SCE была меньше длительности PS (особенно на восходящем фронте SCE, иначе непредсказуемое поведение).
    Защёлки на входные сигналы порта А ставить пришлось для стабилизации - во избежание исчезновения старого состояния прямо в момент обращения к памяти (память и процессор между собой асинхронны, не забываем).
    Если делать запись и из порта B, то нужно ещё три таких же защёлки на 74273-их. Если нет - можно убрать 2 латча с записи этого порта.
    Думаю, в виде платы оно всё разведётся очень даже красиво

    - - - Добавлено - - -

    Кто в курсе цен на двухпортовую SRAM объёмом 256х16 или 512х8?
    У меня пока что получается около $3+$2=$5 за детали для текущего решения, не в курсе сколько одночиповые стоят. Нашел только в начале темы - 64Кх16 - около $10 за корпус. Уже выигрыш какой-то есть.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	wavedrom.png 
Просмотров:	60 
Размер:	12.9 Кб 
ID:	65062  
    "Байт-48"

  5. #364
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Судя по тому, что 16Kx8 DPSRAM стоит примерно 15$ если брать поштучно, то одна 512Kx8 будет стоить 100$ и при этом иметь корпус с 96 выводами, а 256Kx16 будет уже 120$ за штуку (т.к. корпус там будет уже со 144 выводами)
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  6. #365
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если плата востребована, могу выпустить отдельным девайсом, тут вообще ничего сложного нет. Только модель надо "вылизать" по таймингам.
    "Байт-48"

  7. #366
    Master
    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    778
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    62
    Поблагодарили
    48 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Кто в курсе цен на двухпортовую SRAM объёмом 256х16 или 512х8?
    1. 512Kх8 - таких вообще не выпускали...
    2. 256Кх16 - таких тоже не выпускали. Есть 256Кх18, но они трёхвольтовые, редкие и дорогие (IDT70V631).
    3. 512 килограмм двухпортовки в Орионе ни к чему... Только первые 128К нужно окучить двухпортовкой, причем с организацией 64Кх16 (по 4 экранных страницы битмапов из основного банка и аттрибутов из дополнительного банка одновременно), остальное накрывается обычной сраминой. Однако пятивольтовые IDT7028 и CY7C028 на али и ибэе довольно редки и дороги... Есть шанс попытать удачу на Купинатао.

    PS. В своем проекте я пользую трёхвольтовую двухпортовку IDT70V28 и трёхвольтовую же срамину IS61WV20488 в качестве дополнительной памяти, так как и проц у меня 1.8-5V, а шина на слотах расширения юзается через трансляторы 74ALVC164245.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  8. #367
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    Есть шанс попытать удачу на Купинатао.
    Я как-то попробовал заказать на Купинатао как раз двухпортовки, но они кинули. Т.е. деньги с карты списали, а потом такие "ой, а микросхем-то нету, ваши денежки на счете, а зачтенные бонусы обратно не возвращаются", и вывести те деньги со счета обратно в кэш - целая история (требуется подтверждение из ФСБ и налоговой). Пришлось купить на них что-то ненужное, это оказалось проще. Ну и фирменная фишка Купинатао - доставки стоимостью менее 7$ просто нет, дороже выбрать можно.

    Я давно присматриваюсь к двухпортовкам DRAM, у меня их есть на платах с игровых автоматов (надо сдувать) - там в видеомодуле быстродействующие чипы 256Кх16 ЕМНИП (в корпусах SOJ с приемлимом количеством ног порядка 40 т.к. DRAM т.е. с мультиплексированным адресом), но не нравится что надо заморачиваться со схемой регенерации (хотя и регенерация там целыми строками, т.е. возможно хватило бы встроенного регенератора Z80).

    - - - Добавлено - - -

    Если эмулированная двухпортовка будет покрывать все ОЗУ, то сравнительно малой кровью можно сделать фоновый аппаратный блиттер
    Но это конечно уже будет не Орион.
    Последний раз редактировалось Error404; 19.04.2018 в 12:20.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. #368
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Если эмулированная двухпортовка будет покрывать все ОЗУ, то сравнительно малой кровью можно сделать фоновый аппаратный блиттер
    Но это конечно уже будет не Орион.
    Покрывает всю, естесно.

    Раздумываю над организацией разделения памяти - оставить на видео-части двухпортовку 64К*16, а основную отдать только процессору...
    Проблема в работе теста для ПРОшки. На OnChip памяти (для аналогии взял двухпортовую) всё идеально отрабатывает на тесте. А с мои вариантом - последние три столбца не заливаются. Сигналы в обоих вариантах абсолютно одинаковые используются.
    Посмотрел анализатором - в обоих случаях запись в цикле идёт до адреса 0xECFF. дальше пауза и новый цикл. Но у нас же видеопамять до 0xEFFF! Вообще нихрена не понял
    Картинка 1
    Картинка 2

    - - - Добавлено - - -

    И вот так это смотрится на экране.
    "Байт-48"

  10. #369
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Я давно присматриваюсь к двухпортовкам DRAM, у меня их есть на платах с игровых автоматов (надо сдувать) - там в видеомодуле быстродействующие чипы 256Кх16 ЕМНИП (в корпусах SOJ с приемлимом количеством ног порядка 40 т.к. DRAM т.е. с мультиплексированным адресом), но не нравится что надо заморачиваться со схемой регенерации (хотя и регенерация там целыми строками, т.е. возможно хватило бы встроенного регенератора Z80).
    Вот такие у меня динамические двухпортовки ан платах от автоматов: TMS55160dgh 5-вольтовые TTL-совместимые.
    Таки 256Кх16 (с возможностью доступа и побайтно), но наворочено в них - кошмар. И разные режимы построчного доступа, и сериализация (готовый сдвиговый регистр для видеовывода уже в ОЗУ ?) и разная регенерация, и все это в моих глазах только запутывает от понимания как там можно по простому ее регенерировать и заюзать например совместимо с твоей платкой квази-DP ОЗУ.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. #370
    Master Аватар для andreil
    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Вот такие у меня динамические двухпортовки ан платах от автоматов: TMS55160dgh 5-вольтовые TTL-совместимые.
    Таки 256Кх16 (с возможностью доступа и побайтно), но наворочено в них - кошмар. И разные режимы построчного доступа, и сериализация (готовый сдвиговый регистр для видеовывода уже в ОЗУ ?) и разная регенерация, и все это в моих глазах только запутывает от понимания как там можно по простому ее регенерировать и заюзать например совместимо с твоей платкой квази-DP ОЗУ.
    С такой памятью в нашем случае обвес будет примерно равнозначен эмулятору двухпортовки
    И да - можно попробовать в эмуляторе сделать 3-х вольтовую память, с логикой вроде бы ничего сложного нет особо, только данные надо буферизировать, но это делается 1 корпусом. А на входных сигналах (адреса и управление) нет Z-состояния, так что примерно совпадает по уровням, только диоды навесить для снижения верхнего порога.
    "Байт-48"

Страница 37 из 67 ПерваяПервая ... 333435363738394041 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Эмулятор ZX-Poly
    от Raydac в разделе Эмуляторы
    Ответов: 106
    Последнее: 24.01.2024, 11:52
  2. ОРИОН-2010 на ПЛИС.
    от Ewgeny7 в разделе Орион
    Ответов: 447
    Последнее: 23.11.2016, 12:27
  3. Еще один Ленинград 48
    от Ewgeny7 в разделе Ленинград
    Ответов: 0
    Последнее: 16.10.2007, 22:31
  4. Ещё один Д.Р.
    от GNTB в разделе Поздравления
    Ответов: 4
    Последнее: 19.07.2006, 01:52
  5. Ещё один подраздел
    от CityAceE в разделе Форум
    Ответов: 2
    Последнее: 22.05.2005, 11:57

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •