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

 
 
> SDRAM и равномерный поток данных, можно ли организовать.
zuy
сообщение Dec 23 2007, 09:17
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 173
Регистрация: 30-11-05
Из: San Francisco
Пользователь №: 11 593



Есть задача. Надо на фиксированной частоте(50 или 100 МГц) на 8 бит шину выдавать данные.
Очень критично, чтобы данные шли строго равномерно во времени с одинаковыми промежутками между байтами.
Одна из идей, поместить массив данных размером 100МБ в SDRAM, на асме написать процедуру, которая будет эту память читать в цикле байт за байтом и т.о. на шине памяти мы и получим необходимую последовательность байт.
Вопрос в том, можно ли так настроить контроллер SDRAM контроллеров AT91RM9200 или AT91SAM9260 чтобы из памяти данные выходили равномерно?
Почитав описания я понял, что могут помешать две вещи:
1. При циклическом чтении, по достижении границ страницы или строки, контроллер памяти указанных процессоров будет генерировать команду precharge, потом заново активировать строку и давать новую команду чтения. Этот процесс заберет в сумме 8 тактов. Т.о. в потоке данных будут появляться пробелы.

2. Авто рефреш. Я должен буду настроить количество тактов через которое контроллер будет передавать в SDRAM команду ато рефреша, что так же сделает паузу в выходе данных на 16 тактов.

Верны ли мои опасения, что таким подходом не получить равномерного потока данных или я что-то не допонял в работе SDRAM и указанных выше контроллеров?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
PSP
сообщение Dec 23 2007, 11:55
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 1-10-07
Пользователь №: 30 988



Вы не указали необходимую точность "строго равномерно во времени с одинаковыми промежутками между байтами". Но наверняка эту задачу нужно решать используя внешний или внутренний (если есть) буфер FIFO с тактированием требуемой частотой.
Go to the top of the page
 
+Quote Post
zuy
сообщение Dec 24 2007, 07:30
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 173
Регистрация: 30-11-05
Из: San Francisco
Пользователь №: 11 593



Цитата(PSP @ Dec 23 2007, 15:55) *
Вы не указали необходимую точность "строго равномерно во времени с одинаковыми промежутками между байтами". Но наверняка эту задачу нужно решать используя внешний или внутренний (если есть) буфер FIFO с тактированием требуемой частотой.


Немного перефразирую насчет точности.
Нужно(а точнее очень хочется) чтобы данные на шине появлялись по тактам. В пределах одного периода тактового сигнала, точность не критична, но главное, чтобы не было пропущеных ттактов.
Другими словами при частоте 100МГц на шину должно выйти 100 миллионов байт.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 26th June 2025 - 03:55
Рейтинг@Mail.ru


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