User Tag List

Страница 9 из 56 ПерваяПервая ... 5678910111213 ... ПоследняяПоследняя
Показано с 81 по 90 из 661

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    HardWareMan
    Гость

    По умолчанию

    О чем и речь. Жду техмап. Он, кстати, зависим от конкретной FPGA.

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

  3. #2

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

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    О чем и речь. Жду техмап. Он, кстати, зависим от конкретной FPGA.
    Это да. В альтерах там просто куча LOGIC_CELL_COMB'ов =/ Зачастую каждый разбит на куски, раскиданные по "схеме". И внутри ещё хрен пойми какая логика - тяжело её вкуривать вообще =/ Приходится каждый элемент на бумажке расписывать.
    Это может ещё от неопытности просто - это ведь мой первый проект на FPGA, lol До этого не в счёт - баловство в виде написания светофора и прочего, без вникания в суть работы.
    "Байт-48"

  4. #3

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

    По умолчанию

    Итак, сегодня весь день "убил" на перевод схемы на однопортовую память, и оно даже заработало. Правда, при частоте процессора 2,5МГц пока что имеются проблемы, но начиная с 3,125МГц (25МГц/8) всё идеально работает. Буду бороться за сокращение переднего фронта сигнала DSYN - он-то и препятствует обращению к памяти...

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

    Итак, решение пока не самое лучшее, но оно работает 100%:
    Код:
    	process (h_cnt(0))
    	begin
    		if (rising_edge(h_cnt(0))) then
    			dsyn_delayed <= dsyn;
    		end if;
    	end process;
    
    
    mem_to_vbuf	<= h_cnt(1) and (not (dsyn or dsyn_delayed));
    
    
    	process (mem_to_vbuf)
    	begin
    		if (rising_edge(mem_to_vbuf)) then
    			vdata <= mem_data1 & mem_data0;
    		end if;
    	end process;
    
    mem_addr <= vaddr when (dsyn = '0')
    				else addr;
    То есть мы по DSYN мультиплексируем шину адреса памяти, а для арбитража данных задерживаем DSYN на 4 такта (25МГц). Если не делать доп. сигнал с задержкой, то бывают ситуации, когда фронт чтения в буфер приходится на спад DSYN и память естественно ещё не успевает считать данные.
    Позже запаяю на макетке подручную SRAM'ку и протестирую без этой задержки с изменением кода на защёлку:
    Код:
    	process (mem_to_vbuf)	begin
    		if (mem_to_vbuf = '1') then
    			vdata <= mem_data1 & mem_data0;
    		end if;
    	end process;
    "Байт-48"

  5. #4

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

    По умолчанию

    Сделал формирователь тактовых импульсов из частоты 25МГц. Выходные частоты - 2.5МГц, 5МГц, 10МГц.
    Для теста снял все варианты анализатором, частота семплирования - 50МГц.
    10МГц: реализовывал как счётчик до 5, но с генерацией импульсов в 0-ой и 2-ой фазах -
    5МГц: счётчик до 5, генерация в 0-ой фазе -
    2.5МГц: счётчик до 10, генерация в 0-ой фазе -
    На частоте 2.5МГц надо задерживать передний фронт DSYN, пока не придумал как. Иначе на изображении постоянные черные полоски бегают из-за конфликта доступа.
    Завтра ещё сперва оптимизирую формирование тактов, потом займусь DSYN...
    Из минусов текущего решения - необходимы 2 раздельных счётчика после кварца для формирования сигналов для видео и для CPU. Но есть сдвоенные на подходящие частоты, можно попробовать.
    "Байт-48"

  6. #5

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

    По умолчанию

    Итак, сделал переключаемую тактовую 2.5/5/10МГц, а так же перевёл память на однопортовую. Пока что реализовано сильно "в лоб", но оно работает надёжно.
    Так же пришлось ввести аналог сигнала CAS, по которому пишется положительный фронт DSYN, благодаря чему убрана цепочка задержки этого сигнала (из кода не убрал, но оно не используется уже).
    "Байт-48"

  7. #6

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

    По умолчанию

    Набросал формирователь видеосигналов из "кубиков" логики.
    В качестве счётчиков использовал ИЕ19 (74393), имеются некоторые погрешности в синхросигналах (ровно на 1 такт, для упрощения логики).
    Логику пока не упрощал, займусь этим только после стабильной работы с остальным компьютером.
    21mux - в железе будет в виде джамперов.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	orion_video_sch.jpg 
Просмотров:	177 
Размер:	83.3 Кб 
ID:	64201  
    "Байт-48"

  8. #7
    HardWareMan
    Гость

    По умолчанию

    Нипанятна. Есть оригинал?

  9. #8

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

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Нипанятна. Есть оригинал?
    Вот, в чутка лучшем качестве
    Немного оптимизировал сигналы, начал формировать тактовые сигналы (пока только 2.5/5МГц).
    "Байт-48"

  10. #9
    HardWareMan
    Гость

    По умолчанию

    Нехорошая схема. Учитесь мыслить синхронно. Будут много глитчей в цепи сброса.

    Я вот тоже для своего Спеца в CPLD сначала по старинке, ИЕ5 да логика. А потом, когда проект приблизился к ёмкости CPLD и его работоспособность стала зависеть от фазы луны, переписал все на ИЕ7 ИЕ10 с синхронными установками (не сброс!) + синхронизация некоторых сигналов на выходе. И все заверте...
    Последний раз редактировалось HardWareMan; 12.02.2018 в 17:56.

  11. #10

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Нехорошая схема. Учитесь мыслить синхронно. Будут много глитчей в цепи сброса.

    Я вот тоже для своего Спеца в CPLD сначала по старинке, ИЕ5 да логика. А потом, когда проект приблизился к ёмкости CPLD и его работоспособность стала зависеть от фазы луны, переписал все на ИЕ7 с синхронными установками (не сброс!) + синхронизация некоторых сигналов на выходе. И все заверте...
    А еще лучше ИЕ18/ИЕ10. Они еще синхроннее. Я в Ленинграде ИЕ7 заменил на ИЕ17/ИЕ18/ИЕ10. Получился LENINGRAD-2012 без подбора конденсаторов, которые требовались для ИЕ7. Я ИЕ18 буду использовать в "Метеоре" .
    Последний раз редактировалось zx-kit; 12.02.2018 в 17:45.
    "L-256"

Страница 9 из 56 ПерваяПервая ... 5678910111213 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор ZX-Poly
    от Raydac в разделе Эмуляторы
    Ответов: 109
    Последнее: 07.12.2024, 21:42
  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

Ваши права

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