реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> DDR2 SDRAM, Как video буфер лучше организовать
zombi
сообщение May 9 2018, 14:55
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 041
Регистрация: 10-09-08
Пользователь №: 40 106



Ранее с синхронной памятью не работал. И вот пришлось.
Хочу для начала организовать простейший буфер экрана.
Одна ячейка 4,8 или 16 бит на пиксель (это не столь важно).
Контроллер памяти хочу на альтере MAX10 реализовать.
Понимаю что придётся читать сразу по несколько пикселей 4 или 8 (burst).
Складывать их во временный буфер и затем выводить в порт на нужной частоте.
Читаю DS на MICRON DDR2 SDRAM память.
Вроде как даже чего-то в теории получается.
Но вот хочу отказаться от команд REFRESH вообще.
Где-то на просторах сети попадалось вот такое утверждение :
Цитата
иногда можно и вовсе без рефреша обойтись, если например память является видеобуфером кадра который каждые 20-30мс заведомо весь будет прочитан.

По каким адресам расположить видеобуфер?
Или это для DDR2 не прокатит?
Прикрепленные файлы
Прикрепленный файл  1Gb_DDR2.pdf ( 9.19 мегабайт ) Кол-во скачиваний: 5
 


--------------------
Несправедливо забанен
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 9 2018, 15:09
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 511
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(zombi @ May 9 2018, 17:55) *
Или это для DDR2 не прокатит?

Почему "не прокатит"? За 30мс содержимое ячеек не разрушится.
Go to the top of the page
 
+Quote Post
zombi
сообщение May 9 2018, 15:32
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 041
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(jcxz @ May 9 2018, 18:09) *
Почему "не прокатит"? За 30мс содержимое ячеек не разрушится.

На самом деле у меня время кадра ~16 ms.

Т.е. если я за это время хотя-бы раз выполню команду "ACTIVE" и "READ" для всех строк "ROW" (в моём случае их 16384)
во всех банках (у меня их 8), то команду REFRESH можно вообще не формировать?


--------------------
Несправедливо забанен
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 9 2018, 15:57
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 4 511
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(zombi @ May 9 2018, 18:32) *
Т.е. если я за это время хотя-бы раз выполню команду "ACTIVE" и "READ" для всех строк "ROW" (в моём случае их 16384)
во всех банках (у меня их 8), то команду REFRESH можно вообще не формировать?

Я для пробы на K4S561632N-LC75 отключал рефреш. Содержимое ячеек начинало теряться примерно через 6 сек (точно не помню, тут где-то на форуме в своё время постил сообщение по этому поводу с результатами тестов). Конечно это SDRAM, но думаю разницы нет. И конечно это всё в тепличных условиях стола, но всё же.......
https://electronix.ru/forum/index.php?showt...t&p=1450492
Go to the top of the page
 
+Quote Post
zombi
сообщение May 9 2018, 16:20
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 041
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(jcxz @ May 9 2018, 18:57) *
Конечно это SDRAM, но думаю разницы нет.

Я бы с удовольствием SDRAM в изделие заложил, но нет их нужного объёма.
Поэтому сразу решил смотреть в сторону DDR2.
Пока изучаю MT47H128M8 – 16 Meg x 8 x 8 banks
И чем больше читаю DS тем больше понимаю что ничерта не понимаю.

Вот в DS...
Table 2: Addressing :
Refresh count 8K
Row address A[13:0] (16K)
Bank address BA[2:0] (8)
Column address A[9:0] (1K)

Т.е. строк 16К, банков 8, а Refresh count всего 8K.
Получается несколько строк/банков одновременно рефрешится?


--------------------
Несправедливо забанен
Go to the top of the page
 
+Quote Post
jcxz
сообщение May 9 2018, 16:44
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 511
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(zombi @ May 9 2018, 19:20) *
Т.е. строк 16К, банков 8, а Refresh count всего 8K.
Получается несколько строк/банков одновременно рефрешится?

Ну может раз DDR, то за один период два адреса строки рефрешится - по фронту и спаду клока? 8K*2=16K
Если у вас видеобуфер за кадр все строки переберёт, то о рефреше можно не беспокоиться.
Go to the top of the page
 
+Quote Post
zombi
сообщение May 9 2018, 17:13
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 041
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(jcxz @ May 9 2018, 19:44) *
Ну может раз DDR, то за один период два адреса строки рефрешится - по фронту и спаду клока? 8K*2=16K

Из DS Table 8: General IDD Parameters
tRFC (IDD - 256Mb) - 75ns
tRFC (IDD - 512Mb) - 105ns
tRFC (IDD - 1Gb) - 127,5ns
tRFC (IDD - 2Gb) - 197,5ns
Т.е. чем больше объём тем дольше выполняется рефреш! Думаю клок здесь ни причём.

Цитата(jcxz @ May 9 2018, 19:44) *
Если у вас видеобуфер за кадр все строки переберёт, то о рефреше можно не беспокоиться.

Я бы рад конечно не беспокоится.
Но прежде чем реализовывать весь этот "колхоз" в железе хотелось бы знать точно.
Без рефреша всё так красиво (теоретически) получается.
А этот рефреш всю картину портит.

На всяк случай приаттачил к первому сообщению DS на мс .


--------------------
Несправедливо забанен
Go to the top of the page
 
+Quote Post
zombi
сообщение May 10 2018, 10:57
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 041
Регистрация: 10-09-08
Пользователь №: 40 106



Эх, некому помочь,подсказать начинающему crying.gif


--------------------
Несправедливо забанен
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd May 2018 - 04:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.00882 секунд с 7
ELECTRONIX ©2004-2016