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

 
 
 
Reply to this topicStart new topic
> Как настроить SDRAM на EP93xx?
Andrei....
сообщение Apr 3 2006, 05:50
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 104
Регистрация: 20-03-06
Пользователь №: 15 402



Как настроить SDRAM на EP93xx? Очень хотелось бы взглянуть на пример кода.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 3 2006, 10:26
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Вот пример инициализации на asm'е для 32-х бит, закомменченные значения, насколько я помню,
для 16...

Код
; ***************************************************************************
; * SDRAM Controller Configuration

; 1. Wait 100us

; 2. Set SDRAM controller device mode register
        ldr        r0, =0x01210008    ;0x0022000c
        ldr        r1, =SDRAMDevCfg0
        str        r0, [r1]
        ldr        r1, =SDRAMDevCfg1
        str        r0, [r1]
        ldr        r1, =SDRAMDevCfg2
        str        r0, [r1]
        ldr        r1, =SDRAMDevCfg3
        str        r0, [r1]

        ldr        r1, =GlConfig
        ldr        r2, =RefrshTimr

; 3. Set Initialize, MRS, and CKE bits in the GlConfig register

        ldr        r0, =0x80000003
        str        r0, [r1]

; 4. Wait 200us
        mov        r0, #0x4000
1
        subs    r0, r0, #0x01
        bne        %B1

; 5. Clear MRS bit
        ldr        r0, =0x80000001
        str        r0, [r1]

; 6. Write 10 into the refresh timer register
        mov        r0, #0x0a
        str        r0, [r2]

; 7. Wait at least 80 clock cycles
        mov        r0, #0x100
1
        subs    r0, r0, #0x01
        bne        %B1

; 8. Program the refresh counter
        mov        r0, #0x320
        str        r0, [r2]

; 9. Initialize = 0, MRS = 1
        ldr        r0, =0x80000002
        str        r0, [r1]

        ldr        r0, =0xc0008800    ;0xf0006600
        ldr        r0, [r0]

; 10.

; 11. Clear MRS
        ldr        r0, =0x80000000
        str        r0, [r1]
Go to the top of the page
 
+Quote Post
Andrei....
сообщение Apr 4 2006, 05:52
Сообщение #3


Частый гость
**

Группа: Новичок
Сообщений: 104
Регистрация: 20-03-06
Пользователь №: 15 402



Проинициализировал SDRAM контроллер, но память читается не стабильно, а при записи long'а вся память записывается этим long'ом. Последнее особенно неприятно. Что это может быть?
Используется стандартный модуль DIMM128, организация 32-разрядная (4х8bit), AD0-11 ep93xx заведены на A0-11 SDRAM'а, AD14-15 заведены на B0-1 SDRAM'а.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 4 2006, 08:17
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Что-то странное... Давайте уточним некоторые моменты:

1. Что значит "читается нестабильно"?
2. "вся память записывается этим long'ом" - действительно ВСЯ?
3. На каком CS'е сидит память, какая частота, проверялись ли сигналы управления?
4. Как сконфигурирован cache и MMU?
5. Какая память стоит на модуле?
Go to the top of the page
 
+Quote Post
Andrei....
сообщение Apr 4 2006, 09:12
Сообщение #5


Частый гость
**

Группа: Новичок
Сообщений: 104
Регистрация: 20-03-06
Пользователь №: 15 402



Цитата(aaarrr @ Apr 4 2006, 12:17) *
Что-то странное... Давайте уточним некоторые моменты:

1. Что значит "читается нестабильно"?
2. "вся память записывается этим long'ом" - действительно ВСЯ?
3. На каком CS'е сидит память, какая частота, проверялись ли сигналы управления?
4. Как сконфигурирован cache и MMU?
5. Какая память стоит на модуле?


1. При чтении большого куска памяти, получаются разные данные, (почти разные). В основной меняется небольшое число байт при каждом зачитывании. Всё это при частоте HCLK=98MHz. Если не настраивать PLL1, как я понимаю, тогда HCLK=14Mhz, ситуация с чтением стабильна.
2. точнее сказать около килобайта...дальше не смотрел.
3. На всех одинаковая ситуация, настроены одинаково. В основном смотрю в SDCS3, отображена в адрес 0x00000000. HCLK=98Mhz. Сигналы не смотрел.
4. Не настраивались.
5. Hynix HY57V658020B. Обычный модуль DIMM 128Mb 16 микросхем PC100
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 4 2006, 10:09
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Andrei.... @ Apr 4 2006, 13:12) *
1. При чтении большого куска памяти, получаются разные данные, (почти разные). В основной меняется небольшое число байт при каждом зачитывании. Всё это при частоте HCLK=98MHz. Если не настраивать PLL1, как я понимаю, тогда HCLK=14Mhz, ситуация с чтением стабильна.
2. точнее сказать около килобайта...дальше не смотрел.
3. На всех одинаковая ситуация, настроены одинаково. В основном смотрю в SDCS3, отображена в адрес 0x00000000. HCLK=98Mhz. Сигналы не смотрел.
4. Не настраивались.
5. Hynix HY57V658020B. Обычный модуль DIMM 128Mb 16 микросхем PC100

1. Похоже на проблемы с EMI. Как разведена плата, сколько слоев?
2. Ерунда какая-то, даже не представляю, как такое возможно. Приведите пример кода.
3. Что значит "отображена в адрес 0x00000000", если MMU не настроен?
Go to the top of the page
 
+Quote Post
Andrei....
сообщение Apr 4 2006, 11:15
Сообщение #7


Частый гость
**

Группа: Новичок
Сообщений: 104
Регистрация: 20-03-06
Пользователь №: 15 402



Цитата(aaarrr @ Apr 4 2006, 14:09) *
Цитата(Andrei.... @ Apr 4 2006, 13:12) *

1. При чтении большого куска памяти, получаются разные данные, (почти разные). В основной меняется небольшое число байт при каждом зачитывании. Всё это при частоте HCLK=98MHz. Если не настраивать PLL1, как я понимаю, тогда HCLK=14Mhz, ситуация с чтением стабильна.
2. точнее сказать около килобайта...дальше не смотрел.
3. На всех одинаковая ситуация, настроены одинаково. В основном смотрю в SDCS3, отображена в адрес 0x00000000. HCLK=98Mhz. Сигналы не смотрел.
4. Не настраивались.
5. Hynix HY57V658020B. Обычный модуль DIMM 128Mb 16 микросхем PC100

1. Похоже на проблемы с EMI. Как разведена плата, сколько слоев?
2. Ерунда какая-то, даже не представляю, как такое возможно. Приведите пример кода.
3. Что значит "отображена в адрес 0x00000000", если MMU не настроен?


1. Два слоя.
2. Собственно после
(*((volatile unsigned long *)0x00000000))=0x01020304;
в окне дебуггера memory смотрю память и вижу что всё записано значеиями 0x01020304
3. ASDO вывод в 1. тогда в нижние адреса отображается SDCS3.
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Apr 4 2006, 14:05
Сообщение #8


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Andrei.... @ Apr 4 2006, 15:15) *
1. Два слоя.
В инете полно отзывов о то, что EP93xx довольно капризны по шине. Так что, думаю, в 2-х слоях все дело.
Go to the top of the page
 
+Quote Post
Andrei....
сообщение Apr 4 2006, 14:25
Сообщение #9


Частый гость
**

Группа: Новичок
Сообщений: 104
Регистрация: 20-03-06
Пользователь №: 15 402



Ну на скорости 14Mhz должно уж работать!
Думаю что то неправильно настроил. Но вот не могу понять что.
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Apr 4 2006, 14:58
Сообщение #10


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Andrei.... @ Apr 4 2006, 18:25) *
Ну на скорости 14Mhz должно уж работать!
Не факт! Один фронт - а за счет несогласования на том конце несколько фронтов - вот и приплыли. И от частоты слабо зависит - Вы же крутизну фронта не переключаете пропорционально тактовой....
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 4 2006, 15:49
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Andrei.... @ Apr 4 2006, 18:25) *
Ну на скорости 14Mhz должно уж работать!

Евгений прав: совершенно не факт, что будет работать. А резисторы на шине есть?
И как разведена земля? Можно попробовать чуть прижать SDCLK (резистор + конденсатор)...

Цитата(Andrei.... @ Apr 4 2006, 18:25) *
Думаю что то неправильно настроил. Но вот не могу понять что.

Там настраивать практически нечего - оно или работает, или нет sad.gif
Go to the top of the page
 
+Quote Post

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

 


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


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