|
Подключаем 3,3V SDRAM к LPC3250 |
|
|
|
Jun 7 2010, 15:33
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Здравствуйте, уважаемые форумчане! Помогите разобраться с подключением SDRAM к LPC3250. В доступных примерах подключения для питания SDRAM (или DDR SDRAM) используется напряжение 1,8 или 2,5В. Однако напряжение 3,3В для питания SDRAM заявлено в даташите как допустимое. Используем память MT48LC16M16A2BG-75IT при питании 3,3В. Схема подключения SDRAM к LPC3520 -
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 14)
|
Jun 8 2010, 10:35
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 10-11-09
Пользователь №: 53 547

|
главное запитайте те IO которые относятся к SDRAM тоже 3.3В(VDD_EMC), но при этом не забудьте что и другие IO относящиеся к той ветке питаниа(VDD_EMC) тоже будут иметь 3.3В вход/выход. а в чём проблема то? вроде всё правильно.
Сообщение отредактировал scorp1969 - Jun 8 2010, 10:39
|
|
|
|
|
Jun 8 2010, 11:25
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Проблема в следующем: в IAR EWARM v5.4 проект из примера записывает код во внутреннее ОЗУ и исполняет его корректно. При записи во внешнее ОЗУ для исполнения Debug Log выдает сообщение о том, что не может записать данные в память. Записываются разные байты, но считываются всегда нули. Ошибки выдаются по всем адресам внешнего ОЗУ, начиная с начального. После 200 ошибок процесс завершается фатально.
Сообщение отредактировал V_TC - Jun 8 2010, 11:26
|
|
|
|
|
Jun 8 2010, 13:16
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Согласен. Раз схема подключения SDRAM сомнений не вызывает, попробуем использовать осциллограф.
|
|
|
|
|
Jun 8 2010, 14:46
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 10-11-09
Пользователь №: 53 547

|
Цитата(V_TC @ Jun 8 2010, 12:25)  Проблема в следующем: в IAR EWARM v5.4 проект из примера записывает код во внутреннее ОЗУ и исполняет его корректно. При записи во внешнее ОЗУ для исполнения Debug Log выдает сообщение о том, что не может записать данные в память. Записываются разные байты, но считываются всегда нули. Ошибки выдаются по всем адресам внешнего ОЗУ, начиная с начального. После 200 ошибок процесс завершается фатально. если вы пользуетесь дебагером то он использует фаил типа LPC3250_SDRAM.mac(зависит от проекта, посмотрите в настроиках) для загрузки SDRAM. в нём команды инициализации SDRAM. естественно они для SDRAM установленнои на китовои плате. вам нужно изменить параметры под вашу SDRAM учитывая и режим питания. не забудьте потом такую же инициализацию делать в основной програме вот тут еще почитаите про address memory mapping, у вас же похоже 16-bit интерфеис а не 32, или забыли вторую микруху на верхнюю шину данных? http://www.ctpim.org.br/lpc24xx_esternalmemory.pdf
|
|
|
|
|
Jun 8 2010, 15:19
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 10-11-09
Пользователь №: 53 547

|
Цитата(toweroff @ Jun 8 2010, 16:15)  +1 если микросхема памяти одна, адресацию нужно начинать с A1 процессора нет, это для static RAM верно но не для dynamic. в документе по ссылке есть инфа.
|
|
|
|
|
Jun 8 2010, 15:36
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Мы рассчитывали на возможность использования 16-ти разрядной шины данных: "16-bit and 32-bit wide SDRAM memory support". Документ действительно интересный. В примере подключения 16-ти разрядной SDRAM использован именно наш чип памяти с питанием 3,3В. Но налицо отличие в использовании сигнала CKEx для 16-ти разрядной шины: мы используем CKE0, а в документe - CKE1. Ладно, завтра продолжим разбираться: почему рекомендуют использовать SDRAM bank 1, а не bank 0?
Сообщение отредактировал V_TC - Jun 8 2010, 15:59
|
|
|
|
|
Jun 8 2010, 16:20
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 10-11-09
Пользователь №: 53 547

|
Цитата(V_TC @ Jun 8 2010, 16:36)  Так вроде ж LPC3250 должен поддерживать и 16-ти разрядную шину: "16-bit and 32-bit wide SDRAM memory support" я не говорю что не будет работать. соединение вроде правильное. осталось проинициализировать систему правильно. судя по ошибкам в каждом баите вроде пока дело не в 16-бит конфигурации а в глобальном режиме работы EMC. кстати в ссылке что я дал вроде пример инициализации даже вашеи микросхемы Цитата(V_TC @ Jun 8 2010, 16:36)  Мы рассчитывали на возможность использования 16-ти разрядной шины данных: "16-bit and 32-bit wide SDRAM memory support". Документ действительно интересный. В примере подключения 16-ти разрядной SDRAM использован именно наш чип памяти с питанием 3,3В. Но налицо отличие в использовании сигнала CKEx для 16-ти разрядной шины: мы используем CKE0, а в документe - CKE1. Ладно, завтра продолжим разбираться: почему рекомендуют использовать SDRAM bank 1, а не bank 0? тоже обратил на это внимание но честно говоря не знаю и не разбирался, подумал просто для старших адресов реализация. не забудьте что это для LPC24хх, хотя думаю нет разницы
Сообщение отредактировал scorp1969 - Jun 8 2010, 15:50
|
|
|
|
|
Jun 9 2010, 15:09
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Относительно последнего документа в нашей схеме недостает обратной связи на вывод EMC_CLKIN процессора через резистор R601. Может это быть причиной проблемы доступа к памяти?
|
|
|
|
|
Jun 9 2010, 15:15
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 10-11-09
Пользователь №: 53 547

|
Цитата(V_TC @ Jun 9 2010, 16:09)  Относительно последнего документа в нашей схеме недостает обратной связи на вывод EMC_CLKIN процессора через резистор R601. Может это быть причиной проблемы доступа к памяти? что да то да, упустил. смотрел на подключение SDRAM а на АРМе не проверил. CLK_IN подключается к CLK_OUT в любом исполнении, 16-бит или 32 не важно
Сообщение отредактировал scorp1969 - Jun 9 2010, 15:16
|
|
|
|
|
Jun 9 2010, 15:34
|
Группа: Участник
Сообщений: 7
Регистрация: 1-06-10
Пользователь №: 57 676

|
Попробуем сомкнуть эти выводы на самом процессоре
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|