svedach 0 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба Добрый день. Возникла задача: нужно хранить в памяти довольно большую таблицу (около 20 МБайт) и чтение из нее должно производиться по случайным адресам целым словом (32 бита)... Количество чтений в секунду не менее 5120000 (т.е. читать нужно такое количество раз в секунду по случайным адресам). Система проектируется на ПЛИС Zynq, прогнали тест на готовом модуле с DDR, получили около 4000000 чтений, при этом проц должен будет выполнять функции управления, обмена и т.д. Встал вопрос какую память выбрать вместо DDR. Поделитесь опытом, пожалуйста... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 16 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба На EDN была статья Design with QDR-IV for high-performance networking systems, в которой сравнивали разные типы памяти: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
svedach 0 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба На EDN была статья Design with QDR-IV for high-performance networking systems, в которой сравнивали разные типы памяти: Спасибо за наводку, буду изучать... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба Встал вопрос какую память выбрать вместо DDR. Поделитесь опытом, пожалуйста... 1. Взять 2 DDR продублировать массивы и иметь счастье :) 2. Взять флешку параллельную. Она без проблем потянет нужное количество запросов секунду. Так как требований к записи никаких должна подойти. 3. Взять жменьку обычных статический озушек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
svedach 0 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба 1. Взять 2 DDR продублировать массивы и иметь счастье :) 2. Взять флешку параллельную. Она без проблем потянет нужное количество запросов секунду. Так как требований к записи никаких должна подойти. 3. Взять жменьку обычных статический озушек. Если можно, про п.2 доскажите подробнее, нашел флешки только со временем доступа около 70 нс, что многовато... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 20 июля, 2017 Опубликовано 20 июля, 2017 · Жалоба Если можно, про п.2 доскажите подробнее, нашел флешки только со временем доступа около 70 нс, что многовато...В смысле маловато? 1/70нс > 14 МГц. Вам нужно если я правильно посчитал нули чуть быстрее 5 МГц. Соответственно можно ставить флешку даже на 16 бит а не на 32. Или в чём вопрос? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kumanika 0 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба Вот и приходим к PSRAM, она быстрее флеша, стоимость адекватная. Из минусов - ток потребления. QDR для этих вещей избыточна, она больше для телекомуникаций итд. Из флеша можно еще посмотреть NOR - у нее рандомное чтение быстрее чем у обычной NAND. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
svedach 0 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба Простите мне мое невежество, но насколько я разобрался из даташитов (я с флешкой раньше не работал) там чтение выполняется бурстом (т.е. сразу передается страница) и передача этого бурста займет много более 70нс? Или там все-таки можно организовать чтение только слова по случайному адресу за время не более 70нс (с учетем задела на будущее)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kumanika 0 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба В том виде как это написано в документе да, это пакетное чтение. т.е. время от принятой команды до выставления данных, соответственно для рандома - опять адрес, команда - выставление данных. Для NOR – Random access times as fast as 55 ns более менее типичное значение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба Приветствую! Добрый день. Возникла задача: нужно хранить в памяти довольно большую таблицу (около 20 МБайт) и чтение из нее должно производиться по случайным адресам целым словом (32 бита)... Количество чтений в секунду не менее 5120000 (т.е. читать нужно такое количество раз в секунду по случайным адресам). Система проектируется на ПЛИС Zynq, прогнали тест на готовом модуле с DDR, получили около 4000000 чтений, при этом проц должен будет выполнять функции управления, обмена и т.д. Встал вопрос какую память выбрать вместо DDR. Поделитесь опытом, пожалуйста... Вы бы уточнили - кто будет читать - проц или свой аппаратный блок ? Если проц - то тут может дело не в памяти а в самой шине или алгоритме чтения - попробуйте для начала сравнить скорость чтения по тому же агоритму из внутреннего блока RAM что в Zynq присутствует. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
svedach 0 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба По поводу чтения как раз и стоит вопрос - вешать это на проц или писать свою корку... Что такое "алгоритм чтения" не совсем понял, чтение выполняется по случайным адресам из заданного диапазона (пока в ДДР это обычный большой статический массив интов...) и перекладывание прочитанного слова в BRAM в PL по адресу, который инкрементируется. Адрес чтения из большого массива берется из BRAM. Это получается что-то вроде гигантской LUT... Если Вы имеете в виду непосредственный обмен с памятью, то туда не лажу... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться