|
|
  |
Загрузка Alter-ы через SPI |
|
|
|
Jun 25 2007, 09:47
|
Участник

Группа: Новичок
Сообщений: 18
Регистрация: 25-06-07
Пользователь №: 28 679

|
Привет. Я новичек в работе с ПЛИС. Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ?
|
|
|
|
|
Jun 25 2007, 13:18
|
Знающий
   
Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454

|
Цитата(Морковный @ Jun 25 2007, 12:47)  Привет. Я новичек в работе с ПЛИС. Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ? Скачать полую документацию и почитать о режимах загрузки. Режим AS - ПЛИС самостоятельно с внешней ПЗУ считывает конфинурационные данные Режим PS - Устройство(обычно микроконтроллер) загружает в ПЛИС данные по SPI.
|
|
|
|
|
Jun 26 2007, 06:41
|
Участник

Группа: Новичок
Сообщений: 18
Регистрация: 25-06-07
Пользователь №: 28 679

|
Цитата(misyachniy @ Jun 25 2007, 17:18)  Скачать полую документацию и почитать о режимах загрузки. Режим AS - ПЛИС самостоятельно с внешней ПЗУ считывает конфинурационные данные Режим PS - Устройство(обычно микроконтроллер) загружает в ПЛИС данные по SPI. Спасибо
|
|
|
|
|
Jun 27 2007, 13:43
|
Знающий
   
Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454

|
Цитата(Морковный @ Jun 27 2007, 15:26)  Если не особо затруднит, ответьте на несколько вопросов (что-то не могу найти нормальной документации, только какие-то обрывки. Соответственно не могу получить целостного представления о проблеме):
1) Схема подключения ПЛИС к порту SPI? SPI процессора BlacKFin имеет ножки MISO (вход), MOSI(выход), SCK(тактовый сигнал) и какую-нибудь из ножек FP для выборки устройства. Их необходимо подключить к соответствующим ножкам ПЛИС (MAX EPM7256-10). Насколько я понимаю: MISO к TDO, MOSI к TDI, SCK к TCK, а FP видимо к TMS. Я правильно понял? Нужно ли еще что-то подавать на ПЛИС? 2) Протокол передачи прошивки? Как перевести ПЛИС в режим готовности принять прошивку по SPI? Что фактически надо передавать по SPI? Вряд ли ведь содержимое файла *.pof. Вы спутали CPLD и FPGA. EPM7256 прошивается один раз на все время работы через ByteBlaster например. FPGA тоже обычно загружают всегда одной программой из загрузочной памяти или процессором. Вам нужно перепрограммировать CPLD в системе?
|
|
|
|
|
Jun 28 2007, 06:26
|
Участник

Группа: Новичок
Сообщений: 18
Регистрация: 25-06-07
Пользователь №: 28 679

|
Цитата(misyachniy @ Jun 27 2007, 17:43)  Вы спутали CPLD и FPGA. EPM7256 прошивается один раз на все время работы через ByteBlaster например. FPGA тоже обычно загружают всегда одной программой из загрузочной памяти или процессором. Вам нужно перепрограммировать CPLD в системе? Действительно, что-то я попутал. Просто передо мной поставили задачу програмировать Stratix2 при помощи BlackFin. А поскольку Stratix-а пока нет в наличии дали печатную плату с Max-ом и ByteBlaster со словами "А типа это одно и то же". А как выясняется, Stratix то надо программировать совсем по другому.
|
|
|
|
|
Jul 2 2007, 06:40
|
Знающий
   
Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454

|
Цитата(Морковный @ Jun 28 2007, 09:26)  Действительно, что-то я попутал. Просто передо мной поставили задачу програмировать Stratix2 при помощи BlackFin. А поскольку Stratix-а пока нет в наличии дали печатную плату с Max-ом и ByteBlaster со словами "А типа это одно и то же". А как выясняется, Stratix то надо программировать совсем по другому. Ну что сказать? Правильно поставленное техническое задание это 70% успеха ;-) Вот есть обсуждения как "шить" CPLD: http://www.telesys.ru/wwwboards/fpga/297/messages/6620.shtmlНо нужно ли? ;-)
Сообщение отредактировал misyachniy - Jul 2 2007, 12:16
|
|
|
|
|
Jul 26 2007, 20:06
|

Частый гость
 
Группа: Свой
Сообщений: 153
Регистрация: 8-11-05
Из: Москва
Пользователь №: 10 605

|
Цитата(Морковный @ Jun 25 2007, 13:47)  Привет. Я новичек в работе с ПЛИС. Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ? Напишите мне на vleo@linuxmedialabs.com, я отвечу по существу. Печально мне смотреть как люди не зная ответа на вопрос тем не менее распальцовываются по самое немогу... "читайте документацию". Там ответа НЕТ.
|
|
|
|
|
Jul 26 2007, 21:08
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(vleo @ Jul 26 2007, 23:06)  Печально мне смотреть... Печально смотреть, как люди НЕ ЧИТАЯ документацию чего-то методом тыка рожают. Цитата ..."читайте документацию". Там ответа НЕТ. Конкретно по Altera-м имеет место быть отдельный ИСЧЕРПЫВАЮЩИЙ документ немалой толщины по всевозможным загрузкам всех их FPGA. По нему была c без всякого напряга и сбора информации по "курилкам" сделана загрузка по SPI циклонов. Так-что про "распальцовываются по самое немогу" это прежде всего к обладателям "сокровенных" знаний.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 28 2007, 17:25
|

Частый гость
 
Группа: Свой
Сообщений: 153
Регистрация: 8-11-05
Из: Москва
Пользователь №: 10 605

|
Цитата(zltigo @ Jul 27 2007, 01:08)  Печально смотреть, как люди НЕ ЧИТАЯ документацию чего-то методом тыка рожают.
Конкретно по Altera-м имеет место быть отдельный ИСЧЕРПЫВАЮЩИЙ документ немалой толщины по всевозможным загрузкам всех их FPGA. По нему была c без всякого напряга и сбора информации по "курилкам" сделана загрузка по SPI циклонов.
Так-что про "распальцовываются по самое немогу" это прежде всего к обладателям "сокровенных" знаний. И тем не менее - на вопрос поставленный так (как я понял) - "Как загрузить (допустим Cyclone II/III) используя SPI flash микросхему?" ответа практически нигде нет, ни на интернете, и ТЕМ БОЛЕЕ на сайте у Альтеры. Это вполне законый вопрос между тем. Я недавно узнал ответ. И был в шоке от того, как налетели (не по делу) на человека, задавшего вопрос, но так правильного ответа и БЛИЗКО не дали. Наводящий Вам вопрос - сколько и какие нужны элементы чтобы осуществить такую загрузку, кроме., понятно Циклона и самой flash памяти?
|
|
|
|
|
Jul 28 2007, 18:12
|
Местный
  
Группа: Свой
Сообщений: 368
Регистрация: 16-11-06
Из: Тверь
Пользователь №: 22 379

|
2vleo Цитата И тем не менее - на вопрос поставленный так (как я понял) - "Как загрузить (допустим Cyclone II/III) используя SPI flash микросхему?" Вообще-то человек сам проговорился, что грузить будет с BlackFin. Цитата Наводящий Вам вопрос - сколько и какие нужны элементы чтобы осуществить такую загрузку, кроме., понятно Циклона и самой flash памяти? Не читая документацию, рискну сказать, что потребуется пара резисторов - подтягов на 3,3V. Вопрос в другом - как в саму флеш засунуть прошивку - через программатор?
|
|
|
|
|
Jul 29 2007, 15:54
|

Частый гость
 
Группа: Свой
Сообщений: 153
Регистрация: 8-11-05
Из: Москва
Пользователь №: 10 605

|
Цитата(Andr2I @ Jul 28 2007, 22:12)  2vleo
Вообще-то человек сам проговорился, что грузить будет с BlackFin. Не читая документацию, рискну сказать, что потребуется пара резисторов - подтягов на 3,3V. Вопрос в другом - как в саму флеш засунуть прошивку - через программатор? Проще всего засунуть c помощью кабеля ByteBlaster-II или USB. Да, если задачи программировать flash-ку в схеме не ставится то нужны 3 резистора, а если нужно программировать, то еще и резъем, естественно и еще один резистор. См. стр. 4-7 и 4-8 "Cyclone Device Handbook Volume 1, August 2005". Ладно - вот ответ по существу на все эти вопросы - то, что Альтера называет AS, это на самом деле - SPI. Но этого у них нигде не написано - еще бы EPCS4 стоит $13, а SPI flash такого же размера - $2.50. Сравните распиновку (и цену) EPCS4 и M25P40. Мне думается, что грузить с BlackFin это только мороку себе создавать, но тогда надо пользовать протокол PS (стр. 8-20, "Configuration Handbook, Volume 1, August 2005". Потому что AS (a.k.a. SPI) flash можно перезаливать через мегафункцию SPL, и протокол там вполне простой. Ну и также можно перезаливать через JTAG при загруженной SPL мегафункции, это стандартная функция программатора в Quartus-е. У меня ко всем просьба - ищу замечательный файл от Альтеры, который доступен только купившим лицензию на Quartus - altremote_update_DesignExample_ex1.zip и altaltremote_update_DesignExample_ex2_msim.zip. Эта технология (remote_update) позволяет обновлять flash-ку вообще на ходу, без никаких кабелей, MCU - полностью средствами самой прошивки, которая работает в FPGA, и ко всему прочему позволяет гарантированно вернуться к заводской, рабочей прошивке, если что-то не то залилось.
|
|
|
|
|
Jul 30 2007, 06:42
|
Знающий
   
Группа: Свой
Сообщений: 654
Регистрация: 24-01-07
Из: Воронеж
Пользователь №: 24 737

|
Цитата(vleo @ Jul 29 2007, 18:54)  Эта технология (remote_update) позволяет обновлять flash-ку вообще на ходу, без никаких кабелей, MCU - полностью средствами самой прошивки, которая работает в FPGA Ничего не путаете? Вроде remote_update обновляет конфигурацию в ПЛИС, а не во Flash. И функция существует только для Стратиксов. Обновление Flash средствами FPGA - это flash loader. (посмотрите altserial_flash_loader)
Сообщение отредактировал den_realan - Jul 30 2007, 06:50
|
|
|
|
|
Jul 30 2007, 17:01
|

Частый гость
 
Группа: Свой
Сообщений: 153
Регистрация: 8-11-05
Из: Москва
Пользователь №: 10 605

|
Цитата(den_realan @ Jul 30 2007, 10:42)  Ничего не путаете? Вроде remote_update обновляет конфигурацию в ПЛИС, а не во Flash. И функция существует только для Стратиксов. Обновление Flash средствами FPGA - это flash loader. (посмотрите altserial_flash_loader) А Вы? Читали руководство на Cyclone-III? А сообщение на которое как бы отвечаете? Там и про SFL есть.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|