|
|
  |
Какое ОЗУ выбрать для обработки видео?, Динамическое, статическое и сколько микросхем? |
|
|
|
Aug 17 2006, 11:00
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(-Al- @ Aug 17 2006, 17:46)  У меня K6R4016V1D-TI10 (512kx16bit, 10нс) Насколько я помню 4016 - это 256Кх16. Цитата(-Al- @ Aug 17 2006, 17:46)  тоже работает в синхронной схеме, цикл чтения/записи составляет 1 такт (и никаких фокусов на задержках тут нет!, все чисто), Каким образом формируете сигнал nWE? В цикле записи он должен как минимум два раза сменить уровень - сначала уйти в 0, потом вернуться в 1. Итого, два транзишна, т.е. при синхронном дизайне надо два такта. Или по обоим фронтам клока работаете? Если так, то для этого надо, чтобы ПЛИС это умела. Умеют это далеко не все, Cyclone не умеет. Про Спартанцев не помню. В любом случае это уже дополнителные нюансы. Цитата(-Al- @ Aug 17 2006, 17:46)  работает все дело на 48МГц, проблем до сих пор никаких не замечено.... Это еще одна причина, почему удается. Попробуйте перейти хотя бы на 100 МГц, результат будет другой.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Aug 17 2006, 11:10
|

Местный
  
Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894

|
Цитата(dxp @ Aug 17 2006, 15:00)  Цитата(-Al- @ Aug 17 2006, 17:46)  У меня K6R4016V1D-TI10 (512kx16bit, 10нс)
Насколько я помню 4016 - это 256Кх16. Цитата(-Al- @ Aug 17 2006, 17:46)  тоже работает в синхронной схеме, цикл чтения/записи составляет 1 такт (и никаких фокусов на задержках тут нет!, все чисто), Каким образом формируете сигнал nWE? В цикле записи он должен как минимум два раза сменить уровень - сначала уйти в 0, потом вернуться в 1. Итого, два транзишна, т.е. при синхронном дизайне надо два такта. Или по обоим фронтам клока работаете? Если так, то для этого надо, чтобы ПЛИС это умела. Умеют это далеко не все, Cyclone не умеет. Про Спартанцев не помню. В любом случае это уже дополнителные нюансы. Цитата(-Al- @ Aug 17 2006, 17:46)  работает все дело на 48МГц, проблем до сих пор никаких не замечено.... Это еще одна причина, почему удается. Попробуйте перейти хотя бы на 100 МГц, результат будет другой. Да, ошибся, это 256Кх16. По обоим фронтам клока работаю, это проходит по крайней мере на ACEX 1K и MAX II. Как формирую - в предыдущем посте в PPS (добавил) Большие частоты не нужны, по крайней мере пока. С асинхронной памятью с 10нс циклом предел - 50МГц.
Сообщение отредактировал -Al- - Aug 17 2006, 11:13
|
|
|
|
|
Aug 17 2006, 11:35
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(-Al- @ Aug 17 2006, 17:46)  PS тоже пришлось бороться за скорость... Даже на 48 МГц? Ну, это может разве от того, что ACEX - помедленнее он Cyclone. Хотя 48 МГц совсем уж небольшая частота даже для ACEX. Цитата(-Al- @ Aug 17 2006, 17:46)  PPS сигнал WE формируется на двух T-триггерах у которых выходы проXORенные, а у одного из них противофазный такт: Код pulse[].clk =( clk, !clk ); pulse[].( t, ena, clrn ) = ( vcc, en, reset );
out = pulse[ 0 ] xor pulse[ 1 ]; Т.е. триггеры эти располагаются в ядре, не в IOE? Тогда еще добавляется дополнительная задержка на разводку от логики, где out до соответствующего элемента IOE. Это еще скорость придавливает. И еще дополнительная нехорошесть - задержка эта может весьма меняться от сборки к сборке (как трассы лягут). Хотя тут уже можно законстрейнить. Я всегда скоростные синхронные сигналы пропускаю через триггер в IOE, так наружу они выходят с минимальным перекосом. Кстати, тут еще одно просматривается - в сигнале out могут быть (и обязательно бывают) "иголки". Память, видимо, это спокойно переносит, но все равно это нехорошо, имхо. В общем, с синхронной памятью никаких этих вопросов нет, работать с ней проще и скорости значительно выше. О чем и говорилось исходно. Единственный ее минус - потребляет она почему-то заметно больше, мне это зачастую критично - есть дивайсы с автономным питанием. Иногда ее можно заменить на SDRAM (которая потребляет заметно меньше), но, к сожалению, не всегда.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Aug 17 2006, 11:47
|

Местный
  
Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894

|
Цитата(dxp @ Aug 17 2006, 15:35)  Даже на 48 МГц? Ну, это может разве от того, что ACEX - помедленнее он Cyclone. Хотя 48 МГц совсем уж небольшая частота даже для ACEX. Т.е. триггеры эти располагаются в ядре, не в IOE? Тогда еще добавляется дополнительная задержка на разводку от логики, где out до соответствующего элемента IOE. Это еще скорость придавливает. И еще дополнительная нехорошесть - задержка эта может весьма меняться от сборки к сборке (как трассы лягут). Хотя тут уже можно законстрейнить. Я всегда скоростные синхронные сигналы пропускаю через триггер в IOE, так наружу они выходят с минимальным перекосом. Кстати, тут еще одно просматривается - в сигнале out могут быть (и обязательно бывают) "иголки". Память, видимо, это спокойно переносит, но все равно это нехорошо, имхо. В общем, с синхронной памятью никаких этих вопросов нет, работать с ней проще и скорости значительно выше. О чем и говорилось исходно. Единственный ее минус - потребляет она почему-то заметно больше, мне это зачастую критично - есть дивайсы с автономным питанием. Иногда ее можно заменить на SDRAM (которая потребляет заметно меньше), но, к сожалению, не всегда.  48МГц потому, что для CY7C68013A это предельная частота работы, ну и вся остальная схема на этойже частоте крутится. Триггеры не в IOE да и как их оба туда запихнешь? Перекос и иголки не важны для асинхронной памяти. Потребляет больше, а мне нужно чтоб было как можно меньше, девайс от линии (USB) питается. К томуже синхронная память подороже будет....
|
|
|
|
|
Aug 17 2006, 12:20
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(-Al- @ Aug 17 2006, 18:47)  Перекос и иголки не важны для асинхронной памяти. Хм, иголки на сигнале WE вполне могут быть важны. Это зависит скорее от конкретной микрухи - Ваши, очевидно, нормально терпели. В доке есть спецификация времянок, ее нарушать нельзя, иначе микросхема находится не в режиме. А раз не в режиме, то производитель ничего не гарантирует (вплоть до сгорания с дымом  ). Лучче так не делать. Цитата(-Al- @ Aug 17 2006, 18:47)  Потребляет больше, а мне нужно чтоб было как можно меньше, девайс от линии (USB) питается. К томуже синхронная память подороже будет.... Для меньшего потребления можно использовать SDRAM - она еще меньше асинхронки кушает (по крайней мере при объемах, необходимых для складирования в нее полных видеокадров). Мы так и делаем.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Aug 17 2006, 12:28
|

Местный
  
Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894

|
Цитата(dxp @ Aug 17 2006, 16:20)  Цитата(-Al- @ Aug 17 2006, 18:47)  Перекос и иголки не важны для асинхронной памяти.
Хм, иголки на сигнале WE вполне могут быть важны. Это зависит скорее от конкретной микрухи - Ваши, очевидно, нормально терпели. В доке есть спецификация времянок, ее нарушать нельзя, иначе микросхема находится не в режиме. А раз не в режиме, то производитель ничего не гарантирует (вплоть до сгорания с дымом  ). Лучче так не делать. Цитата(-Al- @ Aug 17 2006, 18:47)  Потребляет больше, а мне нужно чтоб было как можно меньше, девайс от линии (USB) питается. К томуже синхронная память подороже будет.... Для меньшего потребления можно использовать SDRAM - она еще меньше асинхронки кушает (по крайней мере при объемах, необходимых для складирования в нее полных видеокадров). Мы так и делаем. На SDRAM нужно контроллер городить, а места в ПЛИС и так под завязку. Да и не нужны такие объемы памяти. Для K6R4016 иголки не важны ;) тем более эти иголки могут быть только рядом с переходами ( 0->1, 1->0 ) и микросхема на них никак не реагирует, главное чтоб на WE потенциал держался не менее 10нс (для данной конктретной микросхемы), а это условие выполняется.
Сообщение отредактировал -Al- - Aug 17 2006, 12:29
|
|
|
|
|
Aug 18 2006, 04:57
|
Участник

Группа: Свой
Сообщений: 41
Регистрация: 8-02-05
Пользователь №: 2 484

|
Не вижу причин не использовать SDRAM ... А по поводу "огород городить" - пара десятков строк кода VHDL и несколько процентов ресурсов самого маленького чипа SPARTAN - на мой взгляд. (поскольку выборка попиксельно-построчно без всяких наворотов) Зато память существенно дешевле и есть возможность для дальнейшего развития обработки и для хранения кадров - ведь объемы у СДРАМ не маленькие...
|
|
|
|
|
Aug 21 2006, 06:39
|
Частый гость
 
Группа: Свой
Сообщений: 76
Регистрация: 16-05-05
Из: г.Чебоксары
Пользователь №: 5 090

|
Цитата(Kadzak @ Aug 18 2006, 13:07)  2Flanker: А что за память конкретно используете, и в каких корпусах? Микросхема WS512K32V-15G2UMA. Есть и BGA и CQFP68. Для асинхронной памяти объем 512К, шина 32р, быстродействие 15 нс и расширенный температурный диапазон -55...+125 довольно большая редкость. Нашли только у одной фирмы WEDC (White Electronic Design) www.wedc.com. Цена конечно кусачая - больше 13 тысяч рублей за корпус, но игра на тот момент стоила свечь. Правда в новом проекте собираюсь ставить SDRAM.
|
|
|
|
|
Aug 21 2006, 07:30
|

Местный
  
Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894

|
Цитата(Flanker @ Aug 21 2006, 10:39)  Цитата(Kadzak @ Aug 18 2006, 13:07)  2Flanker: А что за память конкретно используете, и в каких корпусах?
Микросхема WS512K32V-15G2UMA. Есть и BGA и CQFP68. Для асинхронной памяти объем 512К, шина 32р, быстродействие 15 нс и расширенный температурный диапазон -55...+125 довольно большая редкость. Нашли только у одной фирмы WEDC (White Electronic Design) www.wedc.com. Цена конечно кусачая - больше 13 тысяч рублей за корпус, но игра на тот момент стоила свечь. Правда в новом проекте собираюсь ставить SDRAM. неееее.... это уж слишком.....
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|