Перейти к содержанию
    

Как прошить NAND-Flash черех J-TAG ?

Всем доброго дня/вечера/ночи/утра B) !

 

Есть отладочная плата mini3250 с 1Gb NAND-Flash фирмы Samsung K9F1G08. Контроллер LPC3250. Подцеплен J-Tag через J-Link Segger'а (точнее копия этого девайса). Сам контроллер встроенной Flash не имеет. В ROM прошит маленький загрузчик, который сначала "сканирует" UART, потом EMC, а потом уже NAND.

 

Вопрос - как прошить программу во флеш сразу? Чтобы была возможность отладки.

 

Честно говоря, процесс загрузки из NAND большого (больше чем Internal RAM) приложения пока мне кажется трудновыполнимым.

 

Я это представляю так:

1. Загрузчик читает данные из NAND в IRAM.

2. Новая программа в IRAM продолжает чтение из NAND и инициализирует SDRAM.

3. Переносим уже конечный полезный код из NAND в SDRAM и начинаем выполнение нужной нам программы.

 

Непонятки: Как отлаживать конечное приложение, если сначала код выполняется не под отладчиком?

 

И еще. Посоветуйте где взять библиотеку для работы с NAND ? Запись/чтение/учет bad-блоков. Чтобы более-менее документированная и понятная.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Инициализируете память j-link'ом и грузите свою программу сразу в сдрам. Не знаю, в какой среде вы ведете разработку, поэтому конкретных советов давать не могу.

Простой wear leveling я видел в примерах к какому-то отладочному набору на stm32.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все загрузчики включая загрузчики в NAND, SPI FLASH, SD card есть вот в этом проекте:

ARMGeoSpyder2

 

Также есть полная библиотека файловой системы для NAND с выравниванием износа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Инициализируете память j-link'ом и грузите свою программу сразу в сдрам. Не знаю, в какой среде вы ведете разработку, поэтому конкретных советов давать не могу.

Простой wear leveling я видел в примерах к какому-то отладочному набору на stm32.

 

 

Собственно, сейчас так и есть. Но при снятии питания программа стирается и при включении опять работает программа из NAND.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просто Вы так написали "Чтобы была возможность отладки".

 

Пишите свой лоадер. Который будет по какому-нибудь быстрому интерфейсу принимать прошивку и класть в NAND. Если хватает объема IRAM можно совместить его с загрузчиком.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как прошивать LPC32xx

 

Делаем как описано - и все работает. Написано много, но почти все по делу и конкретно.

 

И еще. При компиляции по указанной выше инструкции сначала возникли ошибки. Какая-то, уже не помню какая, несовместимость или недообъявление типов типов. Надо подправить.

 

Библиотеки от NXP

 

Также надо скачать. И компилятор, один из указанных в руководстве. У меня был GNU.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...