|
|
  |
BURST in SDRAM |
|
|
|
Apr 28 2010, 10:42
|
Гуру
     
Группа: Свой
Сообщений: 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 вобщем-то понятно, для чего, но смысла совсем мало - имхо, так исторически сложилось
|
|
|
|
|
Apr 29 2010, 10:10
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(dinam @ Apr 29 2010, 08:32)  Если используете burst, то появляется возможность выполнять команды Row Acive и Precharge во время выдачи данных. Т.е. теоретически можно получить пропускную способность под 100% при записи или чтении. Правда не забываем про Refresh  . Вот один из самых первых вопросов на эту темупо темам топикстартера я предположил, что SDRAM он использует для работы с процессором и предполагается рандомный доступ к памяти, то есть какой банк будет открыт следующим чтением/записью неизвестно, и вложить в текущий обмен ров-активейт для следующего не получится (пайплайн у проца не такой длинный и толстый  ) но согласен, при потоковых операциях можно получить увеличение полосы при переключениях банок но если мой склероз не подводит меня - при потоковых операциях можно вычитать всю страницу, тогда польза от пары сэкономленных тактов не велика, но чтобы направление чтение/запись не менять нужно иметь в ПЛИСине буфер на страницу, когда с видео мутил, такой контроллер сделать мне показалось проще, чем банки интерливить но опять - SDRAM чип это типа некий стандарт - делай контроллер как хочешь
|
|
|
|
|
Jul 11 2010, 18:26
|
Знающий
   
Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515

|
Цитата(muravei @ Jul 1 2010, 10:30)  Тоже в расстройстве Раньше можно было считать и записать в одном цикле, а сейчас как это будет выглядеть приминительно к K4S561632H ? Требуется последовательный доступ (чтение , иногда запись) к 700-1300 ячеек с частотой 25-75MHz. В первом такте открывается банк, в следующем - выдается команда чтения с автозакрытием банка. Затем примерно через 4 такта ловятся пришедшие на DQ/DQS данные. Причем не дожидаясь данных можно сразу начинать следующий цикл чтения из другого банка. Конечно, латентность, в отличие от РУ5 высокая, зато и частота тоже. Я сваял свой простой контроллер SDRAM, так как фирменный латтисовский вообще никуда не годится. Сейчас, пока плата с латтисовским ECP2M не готова, протестировал на DL-S3EBOARD. Получилось гораздо лучше, чем то, что делает MIG, так как латентность моего контроллера единица, при частоте 166МГц, и после команды чтения/записи можно сразу обращаться к другому свободному банку(или непрерывно продолжать работать с открытой строкой текущего). Какой контроллер лучше - продвинутый незакрывающий банки, или дубовый закрывающий однозначно сказать нельзя. Поскольку дубовый объективно будет иметь латентность на 2-4 такта ниже продвинутого, это может перекрыть выгоду от незакрытия банков.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|