|
Статическая синхронная память., Помогите выбрать. |
|
|
|
Jun 7 2005, 06:46
|

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

|
В проекте на ПЛИС используется аснихронная память. Минусы очевидны: проект синхронный, для работы с асинхронной памятью приходится городить задержки, из-за чего для достижения скорости приходится задирать тактовую частоту (которая, в общем-то, может быть не слишком высокой для решения всех остальных задач), результирующая скорость все равно невысока, усложняется контроллер памяти и т.д. Требуемый объем - 1М слов (16 бит). Комфортная тактовая на ПЛИС - 100 МГц. (В текущем проекте тактовая 160 МГц, память асинхронная самсунговская на 10 нс, цикл обращения получается 3 такта - 6.25нс * 3 = 18.75нс. Не фонтан  ) Разумным решением, вроде бы, является использование синхронной памяти. Посмотрел у Cypress и IDT. Есть ряд вопросов. У Cypress подходящими выглядят CY7C1382C (1Mx18 Pipelined SRAM) и CY7C1383C (1Mx18 Flow-Through SRAM). Микрухи похожи очень, насколько понял, отличие только в том, что у pipelined выход с памяти идет через регистр, поэтому задержка на такт, но зато можно тактовую более высокую гонять. Поправьте, если ошибаюсь. А главная непонятка следующая: не понял толком, возможо ли там обращение по произвольным адресам на каждом такте. Это очень важно для разрабатываемого устройства - требуется записывать поток по произвольным адресам (формировать кадр). Из диаграммы в даташите следует, что там идет загрузка адреса, потом уже данные пишутся или читаются, и приводится диаграмма для т.н. burst режима, когда внутренний счетчик адреса инкрементит. А нельзя ли просто на каждом такте новый адрес метать? И, кстати, не совсем понял смысл того, что счетчик этот внутренний всего 2-битный, т.е. через 4 обращения надо все равно новый адрес грузить. Зачем весь этот огород, что это дает? В общем, кто имеет реальный опыт, посоветуйте/отсоветуйте? Надо просто иметь снаружи ПЛИС хранилище данных на 1 мегаслово с возможностью писать и читать со скоростью 100 Мслов в секунду, т.е. при 100 МГц тактовой. Это, ессно, при обращениях блоком, задержки на загрузку адреса и переключение шины данных тут не принимаются во внимание. И чтобы, хоть обращение и блоком идет от 64 до 256 слов, можно писать/читать каждое слово по произвольному адресу. Подходит ли для данной задачи, например, CY7C1383C?
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
 |
Ответов
|
Jun 7 2005, 12:44
|

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

|
Цитата(Serega Doc @ Jun 7 2005, 17:35) Ну я допустим организую блок памяти как буфер скадем 4х288 слов внутри FPGA (18 kbit) - EP2C5 (119,808 kBit) И писал бы туда как мне надо по столбцам - 4 столбца записал а потом выплюнул бы это в SDRAM (не DDR) за 288 циклов пакетной записи по 4 слова в пакете. Далее простой расчет для SDRAM 3 такта установка активного банка и стороки 3 такта до подачи первых 4х слов и далее организовываем непрерывный поток данных 6+288*4+3=1161 такт При частоте 133 MHz получаем 8,729 ms для 4 столбиков уже транспонированых Для DDR это время должно быть процентов на 40 меньше. У вас же 4 столбика 4*2.88=11.52 ms Вот и считайте! Вот теперь понял, что вы имеете в виду. Ок, считаем. При использовании быстрой SDRAM имеем 9 тактов на запись из 4-х слов. Итого, наши 4 столбика запишутся за время (возьмем тактовую 100 МГц) 9*288*10нс = 25920 нс или 25.92 мкс. При пересчете на один столбец - 25.92/4 = 6.48 мкс. А на SRAM при этой же тактовой я получаю 2.88 мкс. Более, чем в два раза. При вашем подходе я еще должен выделить буфер внутри под 4 столбца (18 кбит, как вы указали), только реально там должно быть два таких буфера - пока один заполняется, другой заливается во внешнюю память. Либо иметь 4 фифо - на каждый столбец. В принципе, это несложно. А ПЛИСка у меня не второй Циклон (которых реально еще, можно сказать, нет и которые только в коммерческом диапазоне температур, а мне надо индастриал), а EP1C6, где памяти всего 92 кбита. Жирновато получается. В общем, по всем пунктам на динамической памяти это решение выходит хуже: и сложнее, и толще, и геморройнее. Универсальности, как раз, тут нет - универсальность на статической. А расширяемость тут гарантировано не нужна.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
Сообщений в этой теме
dxp Статическая синхронная память. Jun 7 2005, 06:46 Serega Doc А почему решили пользовать Статическую?
Какое врем... Jun 7 2005, 07:38 dxp Цитата(Serega Doc @ Jun 7 2005, 13:38)А почем... Jun 7 2005, 08:04  andrew_b Цитата(dxp @ Jun 7 2005, 12:04)А SDRAM, afaik... Jun 7 2005, 08:16  scheme_ru Использовали синхронную память Samsung NtRAM (No ... Jun 7 2005, 08:29 Serega Doc Неужели чаще чем 4-5 тактов вы хотите менять адрес... Jun 7 2005, 08:20 dxp Цитата(andrew_b @ Jun 7 2005, 14:16)Цитата(dx... Jun 7 2005, 08:28 des00 Цитата(dxp @ Jun 7 2005, 03:28)Да не в потоке... Jun 7 2005, 08:29  dxp Цитата(des00 @ Jun 7 2005, 14:29)Цитата(dxp ... Jun 7 2005, 08:59   des00 Цитата(dxp @ Jun 7 2005, 03:59) Дык когда кад... Jun 7 2005, 09:10    dxp Цитата(des00 @ Jun 7 2005, 15:10)Цитата(dxp ... Jun 7 2005, 09:26     des00 Цитата(dxp @ Jun 7 2005, 04:26)Сдается мне, ч... Jun 7 2005, 09:34      dxp Цитата(dxp @ Jun 7 2005, 04:26)Сдается мне, ч... Jun 7 2005, 10:40 Serega Doc По поводу QDR но она помоему должна стоить много м... Jun 7 2005, 08:52 Serega Doc Абсолютно согласен с des00
Для вас что стоимость в... Jun 7 2005, 09:19 dxp Цитата(andrew_b @ Jun 7 2005, 15:24)Цитата(an... Jun 7 2005, 10:10 des00 Цитата(dxp @ Jun 7 2005, 05:10)Цитата(Serega ... Jun 7 2005, 10:33 Serega Doc Почему вы сразу отбрасываете DDR как таковую!
... Jun 7 2005, 10:51 dxp Цитата(des00 @ Jun 7 2005, 16:33)Скорее всего... Jun 7 2005, 10:59 des00 Цитата(dxp @ Jun 7 2005, 05:59)Я уже устал тв... Jun 7 2005, 11:11  dxp Цитата(des00 @ Jun 7 2005, 17:11)Цитата(dxp ... Jun 7 2005, 11:55 NeoN Чет я не понял ваших проблем... Любая синхронная S... Jun 7 2005, 12:07 Serega Doc Я смотредл DATASHEET для cy7c1383c и там на времян... Jun 7 2005, 12:24 dxp Цитата(Serega Doc @ Jun 7 2005, 18:24)Я смотр... Jun 7 2005, 12:48 NeoN вот тут на стр. 14 все показано. Jun 7 2005, 12:46 prototype Может не надо блестеть ржавой стороной? Dxp соверш... Jun 7 2005, 12:57 Serega Doc В предыдущем посте есть даташит AS7C33128FT18B где... Jun 7 2005, 13:03 prototype Цитата(Serega Doc @ Jun 7 2005, 16:03)В преды... Jun 7 2005, 13:11 NeoN Вам, что 288 Мбит надо? Или 144 разряда??? Они ж р... Jun 7 2005, 13:07 Serega Doc 2 prototype
Заметте что dxp не делает случайных в... Jun 7 2005, 13:11 prototype Цитата(Serega Doc @ Jun 7 2005, 16:11)2 proto... Jun 7 2005, 16:45  des00 Цитата(prototype @ Jun 7 2005, 11:45)Цитата(S... Jun 8 2005, 03:47 NeoN Кстати, 1M x 18 SSRAM не так уж и дорого стоит... Jun 7 2005, 13:20 Gate Внесу и я свои 5 копеек в обсуждение:
Во-первых, м... Jun 7 2005, 16:22 dxp Кстати, объясните, кто знает, тонкую разницу между... Jun 8 2005, 08:14 v_mirgorodsky Метну ка и я свои пять копеек Для Вашей задачи ни... Jun 8 2005, 10:56  dxp Цитата(v_mirgorodsky @ Jun 8 2005, 16:56)Метн... Jun 8 2005, 11:22 Diod У нас в проекте мы сталкивались с похожей проблемо... Jun 8 2005, 17:50
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|