Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Интерфейс NAND Flash
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Serega Doc
Нужно построить итерфейс обмена данными с NAND Flash памятью Не подскажите где можно взять готовую корку и модель NAND памяти?
Styv
Да вроде там обычный I2C, или я ошибаюсь?
Serega Doc
Там паралельный интерфейс с сложными указанием адреса а так же указания комманд операций чтения записи
Микросхема K9F2808Q0B
cdg
А как это Вы себе представляете? Что именно должно реализовываться в ПЛИС, т.е. какая часть протокольного обмена? Если ничего не путаю, то организация нандфлеш очень похожа на организацию IDE, там все через косвенный доступ реализованно, + протокол обмена не сильно простой, фактически микроконтроллер городить надо. Можно и в железе наверное сделать. На телеситемах нандфлешки прямо к портам контроллера прикручивают.
Himer
Ничего там сложного нет. Надо только внимательно почитать доки. К тому же в них все временные диаграммы есть. Я работаю с K9f1208 Запись и чтение идет по страницам в 512 байт. 8-й бит адреса указывается в типе комманды чтения. При комманде записи он не указывается. Модели самой памяти не видел. Корки вроде у ALTERA есть какие то(на telesys что то про них говорили). А вообще корку за день написать можно
Serega Doc
А как же моделировать без модели? Я что то нашел на Xilinx.
Кто встречал пакет Denali Memory Maker и где его можно взять. Там он умеет много разной памяти моделировать.
Himer
Вот нашел какую - то модель на сайте SAMSUNGA smile.gif
http://www.samsung.com/Products/Semiconduc.../K9F2808Q0B.htm. А этот пакет от Denali бешенных денег стоит. Но они eval версию дают скачать.
acex2
Цитата(Serega Doc @ Feb 21 2005, 10:43)
Нужно построить итерфейс обмена данными с NAND Flash памятью Не подскажите где можно взять готовую корку и модель NAND памяти?
*


Xilinx AppNote 354. Идет вместе с исходниками.
Serega Doc
Вы пробовали регистрироватся что бы скачать eval версию. И как эта програмулина взаимодействует с моделировщиками.
А исходники я видел но без ПО они не заработают
fox
Вот возник вопрос в тему. Полистал описание на эту flash от samsung, посмотрел диаграммки ни как не пойиу следующее ----

Согласно описанию линии ALE (выбор адреса) и CLE (выбор команды) должны устанавливаться в активный-высокий уровень во время передачи адреса (ALE-hi, CLE-lo) или команды (ALE-lo, CLE-hi), во всех остальных случаях эти линии надо удерживать в низком (неактивном уровне). Естественно опариции записи адреса и команды происходят при активном уровне на лини CE (выбор чипа, активный уровень - низкий)

Собственно меня интересует ситуация когда микросхема НЕ выбрана и на линии СЕ установлен высокий-неактивный уровень, критичы в этом случае состояния линий ALE и CLE ??? Четкого ответа в описании не нашел.

P.S. Хочу прицепить эту флешку к 51-ому
I/O.0-I/O.7 - на порт данных
RE - RD строб чтения
WE - WR строб записи
CE, ALE, CLE, - на разные адресные линии интерфейса внешней памяти, таким образом различные комбинации на этих линиях будут адресовать порт Данных, порт Адреса и Команды.
Hilter
Применяли NAND Flash STMicro в последних проектах
Советую на ПЛИС реализовать простейший механизм трансляции
команд процессора во времянки flash, а на процессоре крутить
весь протокол общения. процессор/контроллер в таких системах
просто необходим по причине возможного наличия битых блоков
и относительно малого количества циклов программирования (~100000)
Для надежной работы рекомендуется на флешке держать файловую
систему для неё приспособленную (там выравнивается количество записей в каждый сектор)
Postoroniy_V
Цитата(fox @ Oct 10 2005, 17:58)
Вот возник вопрос в тему. Полистал описание на эту flash от samsung, посмотрел диаграммки ни как не пойиу следующее ----

Согласно описанию линии ALE (выбор адреса) и CLE (выбор команды) должны устанавливаться в активный-высокий уровень во время передачи адреса (ALE-hi, CLE-lo) или команды (ALE-lo, CLE-hi), во всех остальных случаях эти линии надо удерживать в низком (неактивном уровне). Естественно опариции записи адреса и команды происходят при активном уровне на лини CE (выбор чипа, активный уровень - низкий)

Собственно меня интересует ситуация когда микросхема НЕ выбрана и на линии СЕ установлен высокий-неактивный уровень, критичы в этом случае состояния линий ALE и CLE ??? Четкого ответа в описании не нашел.
....

значит невнимательно читали :-)
CE
CHIP ENABLE
The CE input is the device selection control. When the device is in the Busy state, CE high is ignored, and
the device does not return to standby mode in program or erase operation. Regarding CE control during
read operation, refer to ’Page read’ section of Device operation.

DEVICE SELECTION CONTROL о чем нибудь говорит? :-)
мне говорит - можно сделать вывод что нанд флешек может быть несколько
каждая со своим CE
Тоесть если нет активного CE, то на изменения ale и cle нандфлеш не будет реагировать.
lutik
Цитата(Serega Doc @ Feb 21 2005, 16:43)
Нужно построить итерфейс обмена данными с NAND Flash памятью Не подскажите где можно взять готовую корку и модель NAND памяти?
*


Серега, тыж вроде этот флеш уже месяцев 5 назад делать начал и я те тада еще модель от самсунга слал..
стукнись мине в почту - получишь и модель и пример.
или иди на www.xess.com там пример есть (тока работает херово, времянка там у него не очень)
wladimiru
Цитата(Hilter @ Oct 10 2005, 18:32)
Применяли NAND Flash STMicro в последних проектах
Советую на ПЛИС реализовать простейший механизм трансляции
команд процессора во времянки flash, а на процессоре крутить
весь протокол общения. процессор/контроллер в таких системах
просто необходим по причине возможного наличия битых блоков
и относительно малого количества циклов программирования (~100000)
Для надежной работы рекомендуется на флешке держать файловую
систему для неё приспособленную (там выравнивается количество записей в каждый сектор)
*

Hilter, может опишите структуру вашего проекта? Вы тоже применяли ПЛИС для подключения NAND Flash? Что применили в качестве процессора/контроллера?
Hilter
NAND Flash применялся в 2-х проектах
1) Проект на Virtex 2 Pro (2 PPC405) Linux на JFFS2
2) Проект на Spartan 3 (Microblaze) - файловая система своя (flash использовалась
для хранения большого количества редкоизменяемых аудио данных)

И в том и другом случае применялась одна и таже простенькая OPB корка (просто транслировала комманды и шины на flash). По опыту предыдущих разработок могу
сказать что при пребованиях высокой надежности путем развития
таких интерфейсов может быть добавление DMA для автоматического чтения/записи
блоков, а формирование команд и обработку ошибок дллжен проводить процессорный элемент.

WBR KNK
wladimiru
Цитата(Hilter @ Oct 31 2005, 10:54)
NAND Flash применялся в 2-х проектах
1) Проект на Virtex 2 Pro (2 PPC405)  Linux на JFFS2
2) Проект на Spartan 3 (Microblaze) - файловая система своя (flash использовалась
для хранения большого количества редкоизменяемых аудио данных)
И в том и другом случае применялась одна и таже простенькая OPB корка (просто транслировала комманды и шины на flash). По опыту предыдущих разработок могу
сказать что при пребованиях высокой надежности путем развития
таких интерфейсов может быть добавление DMA для автоматического чтения/записи
блоков, а формирование команд и обработку ошибок дллжен проводить процессорный элемент.
*

Спасибо. Второй вариант мне более близок. Я заложил Virtex2 c Microblaze.
Цитата(Hilter @ Oct 10 2005, 18:32)
Для надежной работы рекомендуется на флешке держать файловую
систему для неё приспособленную (там выравнивается количество записей в каждый сектор)
*

Чем формировали эту файловую систему? Поищу инфу по ней. Может подскажите где ее найти? Флэшки заложил Samsung.
Hilter
Файловая система JFFS2 - драйвер под Linux есть в сети
там насколько я помню есть несколько версий JFFS1 - JFFS3. Почитай возможно есть смысл реализовать часть ее функциональности.
Для Microblaze как таковой ФС не применялось - Была таблица расположения файлов (Особенность проекта в том что данные программировались во flash 1-2
раза за всё время жизни устройства).
Flash применяли STMicroelectronics NAND01GW3A

WBR KNK
wladimiru
Цитата(Hilter @ Oct 31 2005, 13:33)
Файловая система JFFS2 - драйвер под Linux есть в сети
там насколько я помню есть несколько версий JFFS1 - JFFS3. Почитай возможно есть смысл реализовать часть ее функциональности.
Для Microblaze как таковой ФС не применялось - Была таблица расположения файлов (Особенность проекта в том что данные программировались во flash 1-2
раза за всё время жизни устройства). 
Flash применяли STMicroelectronics NAND01GW3A

WBR KNK
*

Спасибо. Ключевые слова понятны. Бум смотреть.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.