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

 
 
 
Reply to this topicStart new topic
> BURST in SDRAM
DASM
сообщение Apr 26 2010, 11:07
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Ну я понимаю там во флешках - первый доступ 65 нс, остальные в бурсте по 18. А SDRAM хоть на каждом клоке адрес меняй - данный получишь аккурат после CAS latency. Единственное что приходит в голову - зашаривать ША на несколько устройств, тогда с бурстом можно ускориться, дабы не каждый раз адрес менять (да и то - только при последовательностном доступе поможет). Я чего-то не понимаю наверное sad.gif
Судя по этой диаграмме - неясно зачем он.
Go to the top of the page
 
+Quote Post
yes
сообщение Apr 26 2010, 17:42
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(DASM @ Apr 26 2010, 15:07) *
Ну я понимаю там во флешках - первый доступ 65 нс, остальные в бурсте по 18. А SDRAM хоть на каждом клоке адрес меняй - данный получишь аккурат после CAS latency. Единственное что приходит в голову - зашаривать ША на несколько устройств, тогда с бурстом можно ускориться, дабы не каждый раз адрес менять (да и то - только при последовательностном доступе поможет). Я чего-то не понимаю наверное sad.gif
Судя по этой диаграмме - неясно зачем он.


думаю, исторически сложилось - всякие кэш контроллеры зачитывали строку из памяти, вот и сделали интерфейс

там от всей этой древней беды сохранилось еще извращения в виде интерливед/врапед бёрст - у сдрам-а вроде нет, а во всяких статических быстрых памятях - полно
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Apr 26 2010, 18:17
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



А вы подсчитайте, какая будет скорость, если для каждого слова выставлять RAS и CAS каждый раз.
Go to the top of the page
 
+Quote Post
DASM
сообщение Apr 26 2010, 19:11
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Причем тут это ? RAS по-любому делать придется если не в открытой ROW. CAS делать вообще не надо (по крайней мере в этих SDRAM) - я посмотрел как работаем SDRAM контроллер в NIOS при пересылке по DMA - пока до границы RAW не дойдет только меняет адрес на шине - и вуаля - данные приходят ( с latency ессно). Никаких преимуществ встроенного burst не вижу и не понимаю. То ли мир ушел от 565РУ5 , и RAS CAS - это собсно говоря просто командный набор сигналов (о чем они и пишут). Но тогда странно, что никто пока толком не ответил. Повторюсь - скорость - 16 бит на клок (100 Мгц) в пределах RAW - хоть random хоть не random. А если мнять банк или raw - накладные такие же (тем паче burst за пределы raw сам не перейдет). Так в чем подвох, господа ?
PS несколько часов искал в инете - как понял в древние времена еще какая-то PREFETCH была - то ли команда, то ли что-то еще, и на каждый новый адрес тратилось время. Но в этих чипах заче оно - не пойму. Скорость будет такая же.
Go to the top of the page
 
+Quote Post
yes
сообщение Apr 28 2010, 10:42
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(DASM @ Apr 26 2010, 23:11) *
Причем тут это ?


большинство не знает, что можно менять только CAS, и времянка будет такая же как у BURST-а
так например, работает блэкфиновский контроллер

практическая ценность вопроса?
имхо, хочешь - пользуйся бёрстом, не хочешь - не пользуйся - бандвидс одинаковая

----------

например, бёрсты прописаны в стандарте AMBA AHB (заведены специальные линии управляющих сигналов и страницы маразма в доке), а смысла в этом мало и мне ни разу не встречалась имплементация AHB слэйва, которая имела бы хоть какой-то вин от бёрста (в AHB также есть специальная фаза адреса/конвеер типа CAS, а арбитраж разыгрывается через специальный/не бёрст признак секвентиал/нон-секвентиал)

то есть предполагаю, что бёрст это историческое наследие древних кэш контроллеров, аппаратная реализация в контроллере SDRAM занимает копейки и выбрасывать ее не целесообразно

более прикольно линеар/интерливед бёрст (а не врапед), вот пример микрухи http://www.gsitechnology.com/8640183236.pdf
вобщем-то понятно, для чего, но смысла совсем мало - имхо, так исторически сложилось
Go to the top of the page
 
+Quote Post
dinam
сообщение Apr 29 2010, 04:32
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Если используете burst, то появляется возможность выполнять команды Row Acive и Precharge во время выдачи данных. Т.е. теоретически можно получить пропускную способность под 100% при записи или чтении. Правда не забываем про Refresh smile.gif . Вот один из самых первых вопросов на эту тему
Go to the top of the page
 
+Quote Post
yes
сообщение Apr 29 2010, 10:10
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(dinam @ Apr 29 2010, 08:32) *
Если используете burst, то появляется возможность выполнять команды Row Acive и Precharge во время выдачи данных. Т.е. теоретически можно получить пропускную способность под 100% при записи или чтении. Правда не забываем про Refresh smile.gif . Вот один из самых первых вопросов на эту тему


по темам топикстартера я предположил, что SDRAM он использует для работы с процессором и предполагается рандомный доступ к памяти, то есть какой банк будет открыт следующим чтением/записью неизвестно, и вложить в текущий обмен ров-активейт для следующего не получится (пайплайн у проца не такой длинный и толстый smile.gif )

но согласен, при потоковых операциях можно получить увеличение полосы при переключениях банок

но если мой склероз не подводит меня - при потоковых операциях можно вычитать всю страницу, тогда польза от пары сэкономленных тактов не велика, но чтобы направление чтение/запись не менять нужно иметь в ПЛИСине буфер на страницу, когда с видео мутил, такой контроллер сделать мне показалось проще, чем банки интерливить

но опять - SDRAM чип это типа некий стандарт - делай контроллер как хочешь
Go to the top of the page
 
+Quote Post
DASM
сообщение Apr 29 2010, 15:09
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Нет, мне как раз потоковое надо. К сожалению SDRAM контроллер альтеровский при переключении банок закрывает все открытые row (lf и вообще burst не поддерживает)
Go to the top of the page
 
+Quote Post
yes
сообщение Apr 30 2010, 13:23
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(DASM @ Apr 29 2010, 19:09) *
Нет, мне как раз потоковое надо. К сожалению SDRAM контроллер альтеровский при переключении банок закрывает все открытые row (lf и вообще burst не поддерживает)

на опенкоресах des00 выложил хитрый контроллер (hssdrc или как то так), там похитрее простых потоков, но вроде бы и с потоками терять тактов не должен
Go to the top of the page
 
+Quote Post
muravei
сообщение Jul 1 2010, 07:30
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(DASM @ Apr 26 2010, 23:11) *
То ли мир ушел от 565РУ5

Тоже в расстройстве crying.gif
Раньше можно было считать и записать в одном цикле, а сейчас как это будет выглядеть приминительно к K4S561632H ?
Требуется последовательный доступ (чтение , иногда запись) к 700-1300 ячеек с частотой 25-75MHz.
Go to the top of the page
 
+Quote Post
Timmy
сообщение Jul 11 2010, 18:26
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(muravei @ Jul 1 2010, 10:30) *
Тоже в расстройстве crying.gif
Раньше можно было считать и записать в одном цикле, а сейчас как это будет выглядеть приминительно к K4S561632H ?
Требуется последовательный доступ (чтение , иногда запись) к 700-1300 ячеек с частотой 25-75MHz.

В первом такте открывается банк, в следующем - выдается команда чтения с автозакрытием банка. Затем примерно через 4 такта ловятся пришедшие на DQ/DQS данные. Причем не дожидаясь данных можно сразу начинать следующий цикл чтения из другого банка. Конечно, латентность, в отличие от РУ5 высокая, зато и частота тоже.
Я сваял свой простой контроллер SDRAM, так как фирменный латтисовский вообще никуда не годится. Сейчас, пока плата с латтисовским ECP2M не готова, протестировал на DL-S3EBOARD. Получилось гораздо лучше, чем то, что делает MIG, так как латентность моего контроллера единица, при частоте 166МГц, и после команды чтения/записи можно сразу обращаться к другому свободному банку(или непрерывно продолжать работать с открытой строкой текущего).

Какой контроллер лучше - продвинутый незакрывающий банки, или дубовый закрывающий однозначно сказать нельзя. Поскольку дубовый объективно будет иметь латентность на 2-4 такта ниже продвинутого, это может перекрыть выгоду от незакрытия банков.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 20:21
Рейтинг@Mail.ru


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