Altera Cyclone 3, TERASIC DE0, Quartus 2, проблемы с FIFO

Программируемая логика - это не так уж и сложно. Разберемся вместе.
Ответить
Moyo
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн май 08, 2006 07:25:21
Откуда: Екатеринбург

Altera Cyclone 3, TERASIC DE0, Quartus 2, проблемы с FIFO

Сообщение Moyo »

Всем доброго времени суток!

В общем делаю устройство задача которого вывести изображение на экран ЖК монитора 1024x768 60Гц. Структура устройства - источник изображения микроконтроллер, буфер кадров SDRAM, ну а сам видеоадаптер с интерфейсом SDRAM и интерфейсом для связи с микроконтроллером на ПЛИС.
Для вывода изображения читаю из SDRAM пиксели с частотой 130 МГц, а на экран вывожу с частотой 65МГц, паралельно пишу в SDRAM другое изображение. Цикл запись-чтение 32 такта CL=2, чтение, пакетное FullPage, прерывание чтения на 16-ом слове, запись одиночная. Все нормально выводиться на экран и записывается в память, но при записи появляются вертикальные полосы шириной 3-4 пикселя с шагом через 16 пикселей по горизонтали. Проанализировав проблему пришел к выводу, что во время записи в память выход генератора цветных полос подключаю к выводам DQ[15..0] SDRAM памяти ну и соответственно ко входу асинхронног FIFO, в этот момент запись в FIFO для чтения данных из SDRAM запрещена, и это подключение не должно влиять так как вход FIFO вроде как заперт. Но как выяснилось влияет из-за чего и возникают ненужные полосы. Вопрос почему??????

Куда выложить проект для его анализа, размер 46 Мб. Проект Quartus 2 Web Edition v11.1, в архиве RAR.
Moyo
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн май 08, 2006 07:25:21
Откуда: Екатеринбург

Re: Altera Cyclone 3, TERASIC DE0, Quartus 2, проблемы с FIF

Сообщение Moyo »

Все разобрался! Проблема была в том, что чтение из SDRAM опаздывало на 2 такта от сигнала wr_req. Получалось что FIFO активировалось для записи на два такта раньше чем начинался очередной цикл чтения. В это время на DQ стояло что угодно, это попадало в FIFO и довало полосы.
Аватара пользователя
РадиоЛоматель
Мудрый кот
Сообщения: 1733
Зарегистрирован: Чт авг 21, 2008 22:03:30
Откуда: Одесса(Украина)
Контактная информация:

Re: Altera Cyclone 3, TERASIC DE0, Quartus 2, проблемы с FIF

Сообщение РадиоЛоматель »

Moyo, на будущее, что-бы выложить проект, в нем можно оставить только входные файлы, указанные сбоку в списке файлов (например Verilog файлы .v), и файл проекта .qpf. Этого достаточно, ведь в вашей папке хранятся и история, и различные промежуточные файлы компилятора. Они то и занимают основное место.
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Moyo
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн май 08, 2006 07:25:21
Откуда: Екатеринбург

Re: Altera Cyclone 3, TERASIC DE0, Quartus 2, проблемы с FIF

Сообщение Moyo »

РадиоЛоматель, Спасибо! По разбираюсь с файлами проекта. В следующий раз попробую выложить только то, что необходимо.
Ответить

Вернуться в «ПЛИС»