|
|
  |
SRD SDRAM на контроллере altera |
|
|
|
Sep 26 2011, 06:11
|
Частый гость
 
Группа: Свой
Сообщений: 127
Регистрация: 2-09-11
Из: Москва
Пользователь №: 66 970

|
Я начинающий разработчик, так сказать, и мне стало необходимо разобраться с работой разных типов памяти. SSRAM освоился и заработал довольно таки легко. При переходе же к SDRAM начались некоторые сложности и проблемы. Я использую плату DE-2-70 и для начала хочу поднять на ней альтеровский контроллер для микросхемы SDR SDRAM. Это конечно тестовый проект и там много лишнего ( например ветка с авторегенерацией, я сперва не понял что она есть в контроллере) Вот сам проект : http://rghost.ru/23075171Все вроде просто. По нажатию одной кнопки пишутся нарастающие числа, при нажатии другой, собственно, они же и читаются. В симуляции все сигналы, на мой взгляд, соответствуют требованиям даташита к памяти. В signal tab, вроде та же картина. Но, на двунаправленной шине с данными (DQ) при чтении ничего не наблюдается. Собственно в этом и суть вопроса. Почему это может быть и как это решить. Конечно, прозреваю, что меня щас ткнут носом в абсолютно глупую ошибку, но что уж поделать. Заранее благодарен.
|
|
|
|
|
Sep 26 2011, 23:05
|
Знающий
   
Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831

|
Цитата(Swup @ Sep 26 2011, 17:11)  В симуляции все сигналы, на мой взгляд, соответствуют требованиям даташита к памяти. В signal tab, вроде та же картина. Но, на двунаправленной шине с данными (DQ) при чтении ничего не наблюдается. Не понял, где вы смотрите signaltap и где,соответственно, все нормально? И чем Вы смотрите на двунаправленной шине? И что значит на двунаправленной шине - на ножках ПЛИС? Если на ножках и смотрите signaltap, то не увидете, там посмотреть этим инструментом невозможно. В общем, уточните.
|
|
|
|
|
Sep 27 2011, 10:30
|
Знающий
   
Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831

|
Цитата(Swup @ Sep 27 2011, 16:24)  Да, на ножках плис, а частности на пинах которые выводятся на ножки плис. Да и считаю это возможно, по крайней мере можно наблюдать данные на SSRAM читаемые, чем SDRAM отличается? Вы не уточнили - посмотреть хотите signaltap? Не, тогда нельзя. Много раз уже эта тема здесь поднималась. Signaltap это некое IP, собранное из тех же внутренних элементов ПЛИС, что и Ваш проект. Соответственно, "провода" к нему (sygnaltap) должны идти. А теперь откройте хэндбук на плис, где описан блок ввода-вывода IOB, и представьте, какие элементы из этого блока используются для вывода, какие для ввода при двунаправленном режиме, и какие элементы Вы бы оставили для sygnaltap. Окажется что их нет! Это дорого и сложно. Гораздо проще завести в Ваш sygnaltap или любое другое IP отладки отдельно выходные сигналы с "проводов" между внутренней структурой и IOB.
|
|
|
|
|
Sep 28 2011, 04:48
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(DmitryR @ Sep 27 2011, 17:59)  SDRAM отличается обычно скоростью. Для того, чтобы иметь возможность прицепить signaltap к пинам выход на пин должен идти либо с логики, либо последний триггер, с которого идет выход должен быть размещен не в пине. А это сильно снижает скорость. Если же последний триггер расмещен в пине, как это нужно для построения более-менее быстрого интерфейса (fast output trigger) - то присоединить signaltap туда уже на самом деле нельзя. Тем не менее никто не запрещает поглядеть отдельно шину данных на выход до I/O пина и шину данных на вход после I/O пина. Однако подозреваю, что проблемы ТС это не решит.Думаю идея начать с функциональной симуляции с моделью памяти была правильной. Другое дело что в процессе этого появится ещё не один десяток вопросов...
|
|
|
|
|
Sep 28 2011, 09:44
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 17-05-07
Пользователь №: 27 775

|
У меня работает этот контроллер (не уверен в версии, но файлы вроде те же, что у Вас). А не забываете сделать инициализацию SDRAM ? т.е. установить CKE=1 и выждать 200 uS (если не подзабыл) и уже потом задавать режим работы SDRAM. Инициализация именно в мкс, а не в клоках!!! И это еще не все. Вот во вложении на стр. 43 расписана инициализация. Без нее микруха не работает.
Сообщение отредактировал alevnew - Sep 28 2011, 09:51
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|