|
altera ddr2 sdram controller |
|
|
|
May 5 2007, 18:52
|
Участник

Группа: Свой
Сообщений: 43
Регистрация: 15-09-06
Пользователь №: 20 407

|
Хотелось бы опробовать альтеровский ddr2 контроллер, а как скачать с альтеры не ясно.  Если я правильно понял, то теперь только целиком установка megacore library требуется. Кто пользовался - какие впечатления? 400 МГц Stratix II потянет? Есть ли у кого сам контроллер или вся megacore library, поделитесь, pls.
|
|
|
|
|
 |
Ответов
|
Jul 2 2007, 17:05
|
Местный
  
Группа: Свой
Сообщений: 464
Регистрация: 1-10-04
Из: Челябинск
Пользователь №: 751

|
Если это про контроллер SDRAM DDR2 - то это ни о чем. Версия что распространяется как Megacore - покоцанная, по документам 266 Mhz, реально запускал на 300 - работает... Для полного варианта с динамическим обновлением DLL - говорят обращяйтесь лично в оффис ALTERы. Логика динамического обновления DLL мне не понятна, интересно было б узнать как. Минусы Megacore: 1. Схема ресинхронизации - совсем не очень, у меня получилось гораздо проще и совсем не проблеммно по фазе. 2. Выборка полосы пропускания памяти - никакая (работаем только с одним банком, откупорим - закупорим. При линейной записи - считывании нормально, при разбросанных запросах - (как память процессора) будут проблеммы с производительностью). А к примеру для 4 банковых устройств можно сделать одновременное открытие всех 4 банков, хранить можно до 4 открытых банков и тд - этого в Megacore нет. Плюсы: Быстрая проверка дизайна PCB и целостности чипов. Итого: Покупать это чудо не стоит, непонятно за что Altera деньги берет. Демо можно использовать для первоначального ознакомления с DDR SDRAM. Реально за неделю -полторы сделать самому контроллер DDR и не заморачиваться с Megacore. На Stratix 2 - с3 TOP с DLL легко получается 300 MHz, при увеличении длинны конвейеров можно натянуть на 333 MHz. Ключевая особенность при разработке - ручное размещение входных регистров (capture) и указания времени распространения от пинов до них (при большом времени  обратите внимание на входные программируемые задержки)...
|
|
|
|
|
Jul 3 2007, 02:33
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Stas @ Jul 2 2007, 12:05)  1. Схема ресинхронизации - совсем не очень, у меня получилось гораздо проще и совсем не проблеммно по фазе. можно у вас узнать, для повышения образованности, а какую вы схему синхронизации реализовали ? Цитата 2. Выборка полосы пропускания памяти - никакая (работаем только с одним банком, откупорим - закупорим. При линейной записи - считывании нормально, при разбросанных запросах - (как память процессора) будут проблеммы с производительностью). А к примеру для 4 банковых устройств можно сделать одновременное открытие всех 4 банков, хранить можно до 4 открытых банков и тд - этого в А вы представляете во что выливаеться реализация логики обработки 4-х банков ? думаю что ни о каких 333 МГц в этом случае речи не будет, а будете конвейеризировать тогда либо просядете по латентности доступа либо не уложитесь в конвейер памяти. в свободное время я разрабатываю подобный контроллер, НО для сдрам 133МГц CL=3. логика занятная получаеться. Потом планирую выложить его в опенсорс.
--------------------
|
|
|
|
|
Jul 3 2007, 09:54
|
Местный
  
Группа: Свой
Сообщений: 464
Регистрация: 1-10-04
Из: Челябинск
Пользователь №: 751

|
можно у вас узнать, для повышения образованности, а какую вы схему синхронизации реализовали ?
Я в контракте подписывался о собственности заказчика на все мои поделки. Но тонко намекну: 2-x клоковое FIFO+сдвиговый регистр для передачи разрешения приема из генератора адреса в приемную часть. Так я делал в контроллере SSRAM DDR2 300MHz, так и в 2 - контроллерах SDRAM DDR2 . Метастабильности не замечено, но легкая заморочка при подборе длинны сдвигового регистра, что легко решаемо с SignalTap. Секретное комбо - сброс FIFO от задержанного сигнала готовности PLL.
А вы представляете во что выливаеться реализация логики обработки 4-х банков ? думаю что ни о каких 333 МГц в этом случае речи не будет, а будете конвейеризировать тогда либо просядете по латентности доступа либо не уложитесь в конвейер памяти.
Представляю. 4 банка выливаются не во много, и не понятно при чем тут латентность, наверно слово понравилось? Логика как у ALTERA'ы в моей поделке - это простенький автомат на 10 состояний + автомат инициализации на 19 состояний + 2 таймера с конвейерными входами управления и выходами. Обработка одновременно 4-х банков несложно. У меня ето реализовано как стек регистров с номерами банков, кол-во состояний базового автомата не изменилось, 310 тянет контроллер тянет, больше пока не надо, но резервы есть.... Одно но, я в своем контроллере не использую режим Power-down.
|
|
|
|
|
Jul 3 2007, 10:54
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
по датафлоу понятно, спасибо Цитата(Stas @ Jul 3 2007, 04:54)  А вы представляете во что выливаеться реализация логики обработки 4-х банков ? думаю что ни о каких 333 МГц в этом случае речи не будет, а будете конвейеризировать тогда либо просядете по латентности доступа либо не уложитесь в конвейер памяти.
Представляю. 4 банка выливаются не во много, и не понятно при чем тут латентность, наверно слово понравилось? Логика как у ALTERA'ы в моей поделке - это простенький автомат на 10 состояний + автомат инициализации на 19 состояний + 2 таймера с конвейерными входами управления и выходами. Обработка одновременно 4-х банков несложно. У меня ето реализовано как стек регистров с номерами банков, кол-во состояний базового автомата не изменилось, 310 тянет контроллер тянет, больше пока не надо, но резервы есть.... Одно но, я в своем контроллере не использую режим Power-down. похоже вы меня не так поняли. Если бы просто держать банки открытыми проблем бы не было но сдрам в момент act получает адресс ряда банка. и при доступе в разные строки одного банка все равно потребуеться закрыть и открыть банк. что например у сдрам cl = 3 занимает 6 тактов (на precharge + 3 act.). держать 4 банка открытыми хорошо когда идет доступ в пределах 1 ряда всех банков с редкой сменой номера ряда. Есть и такие апликации (особенно с длинным бурстом). Но рано или поздно банки все равно придеться закрыть, а закрыть их можно либо по очереди, либо все сразу. ИМХО при полностью случайном доступе держать открытым имеет смысл только 1 банк + очередь команд и логика конвейеризации команд act + prech. Про латентость доступа : контроллеры с подобной логикой имеет смысл делать только при наличии очереди команд + логика окна просмотра очереди команд на 1 и более команды. без такой очереди коэффициент увеличения полосы пропускания контроллера будет случайным, зависящим от кол-ва смены адреса ряда в банке . Про конвейеризацию : если распаралеливания обработки act+pre нет, то времени на декодирование следующей команды вагон, а если есть то желаемое время принятия решения для этого 2-3 такта, лишний такт конвейризации может сломать грамотно придуманый конвейер комманд. ЗЫ. Вы подали мне хорошую идею, надо сделать реализацию с 1 банком и всеми и погонять на симуляторе со случайным набором адресов и бурстов. и померить коэффициент использования полосы пропусания.
--------------------
|
|
|
|
Сообщений в этой теме
AlexY altera ddr2 sdram controller May 5 2007, 18:52 Пушкин На ихнем фтп все что нужно лежит May 5 2007, 20:28 AlexY Цитата(Пушкин @ May 6 2007, 00:28) На ихн... May 7 2007, 08:20 sazh там есть например 70_ip_windows. 98M
Там два контр... May 7 2007, 09:46 AlexY Цитата(sazh @ May 7 2007, 13:46) там есть... May 7 2007, 10:01 nikavano Цитата(sazh @ May 7 2007, 12:46) там есть... Jul 3 2007, 08:51 sazh на фтп альтеры
удаленный каталог набирать все сраз... May 7 2007, 10:18 AlexY Цитата(sazh @ May 7 2007, 14:18) на фтп а... May 7 2007, 19:06 oval Цитата(Stas @ Jul 2 2007, 21:05) Реально ... Jul 2 2007, 18:30 oval Stas, то есть в Вашей реализации контроллера DDR2 ... Jul 3 2007, 11:17 Stas Используем SDRAM c 8 банками, page 1 kB, режим ра... Jul 7 2007, 05:45 v_mirgorodsky des00
Какие знакомые и приятные темы Мы с товари... Jul 7 2007, 15:10 des00 Цитата(v_mirgorodsky @ Jul 7 2007, 10:10)... Jul 9 2007, 02:51 Loki5000 Цитата(v_mirgorodsky @ Jul 7 2007, 19:10)... Jul 11 2007, 07:56 v_mirgorodsky Цитатаtras + twr и возможный t_bta. Из за этого не... Jul 9 2007, 07:40 des00 Спасибо за разьяснение! Постепенно до меня дох... Jul 9 2007, 07:55 v_mirgorodsky ЦитатаСечас исследую возможности конвейера комман... Jul 9 2007, 08:41 Stas des00
Не поделитесь технологией создания и отлад... Jul 9 2007, 11:48 des00 Цитата(Stas @ Jul 9 2007, 06:48) des00
... Jul 10 2007, 02:51 Stas Я в том смысле каким ПО (ассемблером) пользуетесь.... Jul 10 2007, 12:44 des00 Цитата(Stas @ Jul 10 2007, 07:44) Я в том... Jul 10 2007, 13:30 v_mirgorodsky ЦитатаУважаемый v_mirgorodsky, прежде чем делать т... Jul 11 2007, 09:10 Loki5000 Цитата(v_mirgorodsky @ Jul 11 2007, 13:10... Jul 11 2007, 11:48 des00 2 Loki5000
простите что вмешиваюсь в дискуссию на... Jul 11 2007, 12:20 v_mirgorodsky ЦитатаИнтересно было бы померить пропускную способ... Jul 12 2007, 18:09 des00 Цитата(v_mirgorodsky @ Jul 12 2007, 13:09... Jul 16 2007, 02:51 des00 Добрый день господа!
На этих НГ праздниках я... Jan 11 2008, 04:32 ReedCat Цитата(des00 @ Jan 11 2008, 07:32) После ... Jan 15 2008, 15:07  des00 Цитата(ReedCat @ Jan 15 2008, 10:07) Пиши... Jan 16 2008, 04:36   Cbiker Не подскажите где можно найти достаточно понятную ... Jan 17 2008, 02:35  des00 Цитата(ReedCat @ Jan 15 2008, 10:07) Пиши... Feb 7 2008, 06:11 Iouri Не подскажите где можно найти достаточно понятную ... Jan 17 2008, 12:52 des00 Добрый день всем!!!
Свершилось, изви... Mar 6 2008, 13:53 vetal нескромный вопрос - а предполагается ли модуль(тес... Mar 6 2008, 16:12 des00 Цитата(vetal @ Mar 6 2008, 11:12) нескром... Mar 7 2008, 03:32 torik А русское описание сохранилось?) Mar 6 2008, 18:29 Progman А варианты с САМ кэшем ( ассоциативной памятью) не... Mar 13 2008, 13:09 des00 Цитата(Progman @ Mar 13 2008, 08:09) А ва... Mar 14 2008, 03:19 Progman Элементарно Ватсон. Предположим хотя-бы 8 потоко... Mar 14 2008, 08:19 des00 Цитата(Progman @ Mar 14 2008, 03:19) Элем... Mar 14 2008, 10:00
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|