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

 
 
> Загрузка программы из NAND
vladimir_orl
сообщение Dec 4 2012, 11:27
Сообщение #1


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

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Здравствуйте, уважаемые форумчане.
Скажите, если я хочу загрузиться из внешнего NANDа в ARM926 (TI DM368), какова должна быть последовательность действий?
Я делаю так:

1) пишу программу на CCS5, выходной файл - prog.out
2) С помощью утилиты hex470.exe преобразую его в prog.b0 (бинарник)
3) JTAG-ом заливаю в NAND-память (тут сразу вопрос - по 2048 Б заливать, или по 2048+64Б ?).
4) Выставлением джамперов ставлю загрузку процессора с NAND.
5) Перезагрузка - и ничего на работает.
6) Слышал, что нужен uboot, но до него ещё, похоже, плыть и плыть.

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
am1808
сообщение Dec 5 2012, 14:44
Сообщение #2


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

Группа: Участник
Сообщений: 125
Регистрация: 29-05-11
Из: Nizhny Novgorod, Russian Federation
Пользователь №: 65 337



сам nаnd chip позволяет с него бутиться?
Go to the top of the page
 
+Quote Post
vladimir_orl
сообщение Dec 6 2012, 07:24
Сообщение #3


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

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Да, в тестовой программе работает. Скажите, пишут что размер страницы 2048+64. При загрузке страница считывается по 2048 или по 2048+64 байта?
Go to the top of the page
 
+Quote Post
GDI
сообщение Dec 6 2012, 08:09
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Зашивать надо 2048 + 64 байта. Эти 64 байта могут быть либо нулями, если процессор не проверяет их, либо там должны быть контрольные суммы. Т.е. ваша прошивка в файле должна выглядеть так; 2048 (данные1) + 64 байт(нули или контрольные суммы) + 2048 (данные2) и т.д.
Но лучше поручить это юбуту, таким образов Вам нужно будет лишь правильно прошить юбут, который, обычно, влезает в одну страницу. А остальную прошивку заливать юбутом непрерывным файлом, а уж он сам разберется куда и как вставлять лишние 64 байта.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Dec 6 2012, 08:15
Сообщение #5


Гуру
******

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



Цитата(GDI @ Dec 6 2012, 12:09) *
Эти 64 байта могут быть либо нулями...

Вот только не нулями - первый байт spare-области в первых двух страницах каждого блока должен быть равен 0xFF, если блок исправен.
Go to the top of the page
 
+Quote Post
GDI
сообщение Dec 6 2012, 08:40
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Да, Вы правы, в общем надо сделать их в соответствии с даташитом.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
vladimir_orl
сообщение Dec 6 2012, 10:17
Сообщение #7


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

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Большое спасибо. Так вот я и и пишу юбут. Под давинчи DM368. Тут ещё смотрю, правильно ли я бинарник делаю из out файла. Если можно,
киньте ссылку на правильное пользование hex470.exe, в частности на опции -image, -fill, -zero, не совсем понял что это такое .

Ещё один вопрос, если можно.
В даташите по загрузке из NAND юбут может располагаться (как я понял) в блоках с 1 по 24, нумерация страниц при загрузке - с 0 для каждого блока.
У меня в код композере нумерация страниц сквозная для всех блоков, количество страниц в блоке - 64.
То есть, если мне надо расположить юбут в блоке 1, страница 1, я пишу у себя страницу 65?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 09:01
Рейтинг@Mail.ru


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