Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Необходимо подключить FPGA к микроконтроллерной шине
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Make_Pic
Необходимо подключить FPGA (Cyclone III или другую) к микроконтроллерной шине LPC2378, так же неоходима возможность загрузки управляющего кода (firmware) в FPGA из LPC2378. Есть ли в инете aplication note с примерами такого подключения и загрузки кода?
3.14
1) 2378 поддерживает только ассинхронные устройства, просто подключаете 3 строба да данные с адресом
2) смотрите на сайте xilinx, там есть. Думаю, дешевле/проще S3E (не знаю что у альтеры из SPI грузится может) с внешней SPI флешкой, чем к LPC-шке флешку а потом через нее в FPGA (разве что если несколько версий хранить ...), флешку самой LPC для конфига FPGA испоьзовать жирновато будет.
zltigo
Цитата(3.14 @ May 10 2007, 10:13) *
не знаю что у альтеры из SPI грузится может

По SPI образному в Slave Mode Все. Если скорость загрузки не слишком критична - аппаратный SPI отдавать необязательно.
Цитата
флешку самой LPC для конфига FPGA испоьзовать жирновато будет.

Только так и делаю.
Флешка самой LPC считайте практически бесплатна + процесс загрузки находится под конторлем.
Если уже совсем плохо и в 512K не вписываемся, то внешняя экстемально дешевая AT45 выручит.
RBF (даже уже штатно компрессированный) легко жмется и дальше. Короче, загружать FPGA нужно из контроллеров.





Цитата(Make_Pic @ May 10 2007, 09:43) *
Есть ли в инете aplication note с .....и загрузки кода?

В штатной документации разжевано более, чем подробно, Кроме одного сигнала - Init Done (если будете его использовать), который (по крайней мере раньше) был в AN без PullUp нарисован.
3.14
>>По SPI образному в Slave Mode Все. ...
Имелось ввиду способность FPGA самой грузится из SPI флешки (той же AT45)

>>Только так и делаю. Флешка самой LPC считайте практически бесплатна ...
Позвольте не согласится, проц ~10$, почти половина его флеши уйдет на конфиг FPGA, ладно если знаете что в 250к влезете ... и какие проблемы DONE контроллировать да PRG передергивать (хотя за всю свою практику ни разу не видел чтоб FPGA не всегда правильно из флешки грузилась). Еще прийдется механизм засовывания PROM в LPC продумывать, вечно лишние кнопки нажимать smile.gif. Насчет компрессии не скажу, не пробовал.
Make_Pic
Цитата(zltigo @ May 10 2007, 10:38) *
...
В штатной документации разжевано более, чем подробно, Кроме одного сигнала - Init Done (если будете его использовать), который (по крайней мере раньше) был в AN без PullUp нарисован.

Можно конкретные ссылки на DOC?
zltigo
Цитата(3.14 @ May 10 2007, 10:52) *
>>По SPI образному в Slave Mode Все. ...
Имелось ввиду способность FPGA самой грузится из SPI флешки (той же AT45)

Если у кого-то и есть, то не значит, что у Циклона и других есть. Отдельные умельцы
http://electronix.ru/forum/index.php?showt...p;mode=threaded
ставят для загрузки промежуточные MAX. Очень элегантно sad.gif
Цитата
>>Только так и делаю. Флешка самой LPC считайте практически бесплатна ...
Позвольте не согласится, проц ~10$, почти половина его флеши уйдет на конфиг FPGA,

Позвольте не согласиться с несогласиться smile.gif Типичная разница в стоимости LPC с 256 и 512 Flash порядка 30-40 центов. Именно это и есть цена вопроса, а не половина стоимости контроллера.
Цитата
Еще прийдется механизм засовывания PROM в LPC продумывать

А механизм для программирования/обновления ( в т.ч. и дистанционного) смонтированной на плате Flash продумывать не надо? Да?
Цитата
вечно лишние кнопки нажимать smile.gif.

Про кнопки я что-то вообще совсем не понял.


Цитата(Make_Pic @ May 10 2007, 12:38) *
Можно конкретные ссылки на DOC?

AN116 загрузка Циклона аналогична Acex-1K
3.14
>> Отдельные умельцы ...
Все-таки есть раззница, поключить AT45 прямо к FPGA или городить для этого отдельную CPLD ...

>>Типичная разница в стоимости LPC с 256 и 512 Flash порядка 30-40 центов.
Не 30-40 центов а бакс smile.gif, важнее то что пока мы привыкли втискиваться в десятки килобайт вместе с осями и стеками, но думаю через годик другой и полметра мало станет smile.gif

>>А механизм для программирования/обновления ...
А оно всегда надо?

>>Про кнопки я что-то вообще совсем не понял.
Когда за день сотню раз перезаливаешь фирмварь/пром лишний клик мышью уже на мозги давит, а тут еще вечно в подсосзнании будет казаться что-то не обновил.
zltigo
Цитата(3.14 @ May 10 2007, 13:32) *
>> Отдельные умельцы ...
Все-таки есть раззница, поключить AT45 прямо к FPGA или городить для этого отдельную CPLD ...

Перестал понимать - НАПРЯМУЮ AT45 НЕ ПОДКЛЮЧАЕТСЯ.
Цитата
>>Типичная разница в стоимости LPC с 256 и 512 Flash порядка 30-40 центов.
Не 30-40 центов а бакс smile.gif

Вам дать ссылку на, например, Mt-System, или сами найдете?
Цитата
, важнее то что пока мы привыкли втискиваться в десятки килобайт вместе с осями и стеками,

Ну а stack-то здесь к Flash причем? Да и свободные килобайты на сотни считаются.
Цитата
>>А механизм для программирования/обновления ...
А оно всегда надо?

Типа мы тут выпаяемм и в программатор запихнем? Даже как-то и спорить неудобно sad.gif
Цитата
>>Про кнопки я что-то вообще совсем не понял.
Когда за день сотню раз перезаливаешь фирмварь/пром лишний клик мышью уже на мозги давит, а тут еще вечно в подсосзнании будет казаться что-то не обновил.

Понятнее не стало sad.gif. Вам известен способ программирования наметво запаяной Flash подключенной к FPGA без каких-то "лишних" движений?
Что касается прошивки для FPGA, то она не лежит вместе с фирмварью и не стирается и обновляется отдельно от фирмвари. Какие проблемы?
3.14
>>Перестал понимать - НАПРЯМУЮ AT45 НЕ ПОДКЛЮЧАЕТСЯ.
Поэтому я и рекомендовал человеку Spartan3E.

>>Вам дать ссылку на, например, Mt-System, или сами найдете?
Не поленитесь сами туда зайти.

>>Ну а stack-то здесь к Flash причем? ...
А место ему не требуется? Это uIP надо десяток килобайт, NicheLite уже около сотни требует, что дальше будет ...

>>Типа мы тут выпаяемм и в программатор запихнем? Даже как-то и спорить неудобно
Чего то Вы передергиваете, а JTAG куда подевался.

>>Вам известен способ программирования наметво запаяной Flash подключенной к FPGA без каких-то "лишних" движений?
Да, родной флоу у xilinx, сведен к тому что кликаете мышкой, весь проект пересоберется (если надо) и зальется. В случае с интеграцией PROM в контроллер, вся рутина нам достанется (не много, но неприятно, когда часто).
vmp
Цитата(zltigo @ May 10 2007, 14:09) *
Если у кого-то и есть, то не значит, что у Циклона и других есть. Отдельные умельцы
ставят для загрузки промежуточные MAX. Очень элегантно sad.gif


Есть у циклона, есть. Только не из AT45D, а из M25P от ST. Это - девичья фамилия альтеровских EPCS.

А грузить из контроллера - вполне возможно. Если хватает памяти и скорость устраивает.
Прошивка жмется примерно в 1.5-2 раза.

По интерфейсу с микроконтроллером - если скорость не слишком важна, то рекомендую посмотреть на SPI, хотя в LPC он говорят слишком медленный. Зато всего 4 линии и не требует контроллера с внешней шиной.
zltigo
Цитата(3.14 @ May 10 2007, 14:15) *
>>Вам дать ссылку на, например, Mt-System, или сами найдете?
Не поленитесь сами туда зайти.

Зашел:
LPC2136FBD64/01 6.5000
LPC2138FBD64,151 6.8000
Что дальше?
Цитата
>>Ну а stack-то здесь к Flash причем? ...
А место ему не требуется?

Stack уже во Flash работает? Если нет, то он и места там не занимает.
Цитата
>>Типа мы тут выпаяемм и в программатор запихнем? Даже как-то и спорить неудобно
Чего то Вы передергиваете, а JTAG куда подевался.

Ну кто тут передергивает, если у поминаемой AT45 и почих Flash общего назначения JTAG отродясь не было. Хотите рассказать о дергании ножками в режиме Boundary Scan? Слушаю.

Цитата
Да, родной флоу у xilinx, сведен к тому что кликаете мышкой

Кликаем мышкой - а это тогда чьи слова
Цитата
лишний клик мышью уже на мозги давит

?????
Цитата
, весь проект пересоберется (если надо) и зальется. В случае с интеграцией PROM в контроллер, вся рутина нам достанется (не много, но неприятно, когда часто).

1. Куда-куда он зальется?
2. C таким-же успехом и совершенно независимо он зальется по тому-же JTAG и в FPGA во Flash контроллера.
3. Когда "часто", тогда вообще-то прямо в FPGA льют.
4. И с теми-же трудозатратами (клик мышкой, например). Ну а если добавить к этому возможность заливать в контроллер не только по JTAG, но и по другим интерфейсам, то дискуссия становится какой-то совсем глупой sad.gif.

Резюме:
-За несколько (максимум) десятков центов мы получаем загрузку FPGA от контроллера.
-С гибкими возможностями обновления (в том числе и удаленного) и через разнообразные интерфейсы контролера (в том числе и не через JTAG адаптер а через банальные RS232/USB)
-цена вопроса - написание загрузчика из полусотни строчек исходника и 3-4-5 пинов контроллера.
-утверждение с котрого все началось:
Цитата
флешку самой LPC для конфига FPGA испоьзовать жирновато будет.

несправедливое.


Цитата(vmp @ May 10 2007, 14:41) *
Есть у циклона, есть. Только не из AT45D, а из M25P от ST. Это - девичья фамилия альтеровских EPCS.

И сколько sad.gif стоит даже "девичий вариант" smile.gif на четверть мега? А?
Цитата
По интерфейсу с микроконтроллером - если скорость не слишком важна, то рекомендую посмотреть на SPI, хотя в LPC он говорят слишком медленный.

Медленным и кривоватым он был у серии LPC21xx. Свежие на половине тактовой процессора особо медленными не назовешь. Я пока периферию через параллельную шину не подключаю вообще.
vmp
Цитата(zltigo @ May 10 2007, 16:03) *
И сколько sad.gif стоит даже "девичий вариант" smile.gif на четверть мега? А?


От 11.24 руб. до 4.72 ? в зависимости от продавца:
http://www.efind.ru/icsearch/?search=m25p20

Эта серия M25Pxxx - вполне бюджетный вариант наравне с AT45D.
Serial Flash for Code Storage, M25P
zltigo
Цитата(vmp @ May 10 2007, 15:21) *
От 11.24 руб. до 4.72 € в зависимости от продавца:
http://www.efind.ru/icsearch/?search=m25p20


Ну ладно (хотя 11.24руб я чего-то не увидел, да и по 0.9USD по 2500 штук продают smile.gif ), разброс цен очень настораживает и в свое время они доставабельные были ближе к 6USD. Тем не менее грузить я буду контроллером, даже если-бы это было дороже а не дешевле - остальное перевешивает по любому.
3.14
Уважаемый, не кипятитесь smile.gif
Давайте сменим тон на более взаиморасполагающий.

LPC2364FBD100,551 5.6000
LPC2366FBD100,551 6.6000
LPC2368FBD100,551 7.6000

>>Stack уже во Flash работает? Если нет, то он и места там не занимает.
А откуда он в контроллере возмется если не из флеши ..., ладно черт со стеком (и даже с его размером), я к тому клонил, что через годик другой полметра уже маловато для контроллерной фирмвари станет.

>>... JTAG отродясь не было. Хотите рассказать о дергании ножками в режиме Boundary Scan? Слушаю.
У xilinx имеется утилита (не знаю точно, вроде Impact у ISE 9.1 тоже может их шить, руки не доходят проверить) для программирования ширпотребных SPI флешек через обычный JTAG кабелек, ест-но если есть еще устройства с JTAG то надо будет отдельный разъем.

>>Кликаем мышкой - а это тогда чьи слова
Оставлю без комментариев, дабы не распалять в Вас зверя smile.gif

>>1. Куда-куда он зальется? ...
В PROM или SPI конфигурационные флешки.

>>2. C таким-же успехом и совершенно независимо он зальется по тому-же JTAG и в FPGA во Flash контроллера.
С таким же удобством не получится, т.к. надо подготовить конфиг, потом запихнуть его в прошивочный файл контроллера а потом зашить. Конечно, на скриптах это все проходит почти незаматно, но на практике всегда что-то происходит ... "ЧЕ ТАМ ОПЯТЬ С ЭТИМ КОНФИГОМ"

>>3. Когда "часто", тогда вообще-то прямо в FPGA льют.
Только "голые" FPGA битники, с микроблайзом, например, нужна будет флешка (внутреняя BRAM слишком мала), хотя там уже и по JTAG-у заливать во внешнюю память можно, но с флешкой надежнее.

>>4. И с теми-же трудозатратами (клик мышкой, например). Ну а если добавить к этому возможность заливать в контроллер не только по JTAG, но и по другим интерфейсам ...
Класно, но не всегда надо, особенно на этапах отладки.
CodeWarrior1241
Я бы тоже не грузил из code memory микроконтроллера если мог бы этого избежать - для новых spartan3 даже 512кБ не хватит... Platform flash через JTAG+iMPACT самый удобный метод, по крайней мере мне. Если есть backplane или какой-нибудь глобальный bus типа VME, cPCI, etc., тогда можно использовать проц. что бы снимать с backplane конфигурацию для ПЛИСа.
zltigo
Цитата(3.14 @ May 10 2007, 15:29) *
Уважаемый, не кипятитесь smile.gif
Давайте сменим тон на более взаиморасполагающий.

LPC2364FBD100,551 5.6000
LPC2366FBD100,551 6.6000
LPC2368FBD100,551 7.6000

Не кипячусь - в устояшихся сериях LPC это 30 центов. В первой партии новинок доллар, но по любому не половина стоимости кон
троллера.
Цитата
>>Stack уже во Flash работает? Если нет, то он и места там не занимает.
А откуда он в контроллере возмется если не из флеши ...,

Давайте я помолчу sad.gif на счет того, откуда берется Stack, но огорчили Вы меня сильно sad.gif
Цитата
>>... JTAG отродясь не было. Хотите рассказать о дергании ножками в режиме Boundary Scan? Слушаю.
У xilinx имеется утилита (не знаю точно, вроде Impact у ISE 9.1 тоже может их шить, руки не доходят проверить) для программирования ширпотребных SPI флешек через обычный JTAG кабелек, ест-но если есть еще устройства с JTAG то надо будет отдельный разъем.

Душевно рад за Xilinx. Но совсем не рад необходимости использовать JTAG адаптеров в "полевых условиях" и еще меньше необходимости комплектования этими девайсами ЗИПа.
Цитата
>>Кликаем мышкой - а это тогда чьи слова
Оставлю без комментариев, дабы не распалять в Вас зверя smile.gif

Какого зверя smile.gif просто уж совсем за уши притягивать пользу от использования внешней Flash, право не стоилоsad.gif
Цитата
>>2. C таким-же успехом и совершенно независимо он зальется по тому-же JTAG и в FPGA во Flash контроллера. С таким же удобством не получится, т.к. надо подготовить конфиг, потом запихнуть его в прошивочный файл контроллера а потом зашить.
Конечно, на скриптах это все проходит почти незаматно, но на практике всегда что-то происходит ... "ЧЕ ТАМ ОПЯТЬ С ЭТИМ КОНФИГОМ"

Можете не верить, но это действительно проходит незаметно и без риторических вопросов к конфигу и при отладке вообще заливка во Flash вполне лишняя.
Цитата
>>3. Когда "часто", тогда вообще-то прямо в FPGA льют.
Только "голые" FPGA битники, с микроблайзом, например, нужна будет флешка (внутреняя BRAM слишком мала), хотя там уже и по JTAG-у заливать во внешнюю память можно, но с флешкой надежнее.

Мы ведь не этот случай рассматриваем, не правда-ли?
Цитата
Класно, но не всегда надо, особенно на этапах отладки.

Ну против "не надо и все тут" возражать нету сил smile.gif.
3.14
Ладно, мне надоело ...
Позволю только:
>>Давайте я помолчу на счет того, откуда берется Stack, но огорчили Вы меня сильно
Как думаете, в контескте слова ОС, какой смысл может приобретать слово СТЭК.
zltigo
Цитата(3.14 @ May 10 2007, 16:27) *
>>Давайте я помолчу на счет того, откуда берется Stack, но огорчили Вы меня сильно
Как думаете, в контескте слова ОС, какой смысл приобретает слово СТЭК.

Какое?!
Я заинтригован до глубины души. Внимаю!

Цитата
Ладно, мне надоело ...

Не могу привести доказательств smile.gif, но мне это надоело несколько раньше smile.gif smile.gif smile.gif

P.S.
Про Stack - можете не пытаться "объяснять" - я возражать не буду.
SpyBot
Сорри, но мне кажется, что автор хочет подключить FPGA именно к MiniBus, тогда о какой последовательной загрузке вы говорите? smile.gif
Т.е. для начала надо как минимум изучить
http://altera.com/literature/hb/cyc3/cyc3_ciii51010.pdf

FPP Configuration Using a MAX II Device as an External Host
zltigo
Цитата(SpyBot @ May 10 2007, 18:52) *
Сорри, но мне кажется, что автор хочет подключить FPGA именно к MiniBus, тогда о какой последовательной загрузке вы говорите? smile.gif

Мы прежде всего говорим о загрузке от контроллера вообще. Документы по загрузке с хоста по SPI или по параллельной шине есть. Проблем с этим нет.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.