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

 
 
 
Reply to this topicStart new topic
> Загрузка Alter-ы через SPI
Морковный
сообщение Jun 25 2007, 09:47
Сообщение #1


Участник
*

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



Привет.
Я новичек в работе с ПЛИС.
Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 25 2007, 10:03
Сообщение #2


Гуру
******

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



Цитата(Морковный @ Jun 25 2007, 12:47) *
Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ?

Берете документацию на конкретный чип и читаеете.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Jun 25 2007, 13:18
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 716
Регистрация: 27-05-05
Из: Kyiv
Пользователь №: 5 454



Цитата(Морковный @ Jun 25 2007, 12:47) *
Привет.
Я новичек в работе с ПЛИС.
Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ?


Скачать полую документацию и почитать о режимах загрузки.
Режим AS - ПЛИС самостоятельно с внешней ПЗУ считывает конфинурационные данные
Режим PS - Устройство(обычно микроконтроллер) загружает в ПЛИС данные по SPI.
Go to the top of the page
 
+Quote Post
Морковный
сообщение Jun 26 2007, 06:41
Сообщение #4


Участник
*

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



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

Спасибо
Go to the top of the page
 
+Quote Post
Морковный
сообщение Jun 27 2007, 12:26
Сообщение #5


Участник
*

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



Если не особо затруднит, ответьте на несколько вопросов (что-то не могу найти нормальной документации, только какие-то обрывки. Соответственно не могу получить целостного представления о проблеме):

1) Схема подключения ПЛИС к порту SPI?
SPI процессора BlacKFin имеет ножки MISO (вход), MOSI(выход), SCK(тактовый сигнал) и какую-нибудь из ножек FP для выборки устройства. Их необходимо подключить к соответствующим ножкам ПЛИС (MAX EPM7256AETC100-10). Насколько я понимаю: MISO к TDO, MOSI к TDI, SCK к TCK, а FP видимо к TMS. Я правильно понял? Нужно ли еще что-то подавать на ПЛИС?


2) Протокол передачи прошивки?
Как перевести ПЛИС в режим готовности принять прошивку по SPI?
Что фактически надо передавать по SPI? Вряд ли ведь содержимое файла *.pof.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Jun 27 2007, 13:43
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 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 в системе?
Go to the top of the page
 
+Quote Post
Морковный
сообщение Jun 28 2007, 06:26
Сообщение #7


Участник
*

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



Цитата(misyachniy @ Jun 27 2007, 17:43) *
Вы спутали CPLD и FPGA.
EPM7256 прошивается один раз на все время работы через ByteBlaster например.
FPGA тоже обычно загружают всегда одной программой из загрузочной памяти или процессором.
Вам нужно перепрограммировать CPLD в системе?


Действительно, что-то я попутал. Просто передо мной поставили задачу програмировать Stratix2 при помощи BlackFin. А поскольку Stratix-а пока нет в наличии дали печатную плату с Max-ом и ByteBlaster со словами "А типа это одно и то же".
А как выясняется, Stratix то надо программировать совсем по другому.
Go to the top of the page
 
+Quote Post
misyachniy
сообщение Jul 2 2007, 06:40
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
vleo
сообщение Jul 26 2007, 20:06
Сообщение #9


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

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



Цитата(Морковный @ Jun 25 2007, 13:47) *
Привет.
Я новичек в работе с ПЛИС.
Подскажите пожалуйста, как запрограммировать ПЛИС через порт SPI ?


Напишите мне на vleo@linuxmedialabs.com, я отвечу по существу.

Печально мне смотреть как люди не зная ответа на вопрос тем не менее распальцовываются по самое немогу... "читайте документацию". Там ответа НЕТ.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 26 2007, 21:08
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
vleo
сообщение Jul 28 2007, 17:25
Сообщение #11


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

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



Цитата(zltigo @ Jul 27 2007, 01:08) *
Печально смотреть, как люди НЕ ЧИТАЯ документацию чего-то методом тыка рожают.

Конкретно по Altera-м имеет место быть отдельный ИСЧЕРПЫВАЮЩИЙ документ немалой толщины по всевозможным загрузкам всех их FPGA. По нему была c без всякого напряга и сбора информации по "курилкам" сделана загрузка по SPI циклонов.

Так-что про "распальцовываются по самое немогу" это прежде всего к обладателям "сокровенных" знаний.


И тем не менее - на вопрос поставленный так (как я понял) - "Как загрузить (допустим Cyclone II/III) используя SPI flash микросхему?"

ответа практически нигде нет, ни на интернете, и ТЕМ БОЛЕЕ на сайте у Альтеры. Это вполне законый вопрос между тем. Я недавно узнал ответ. И был в шоке от того, как налетели (не по делу) на человека, задавшего вопрос, но так правильного ответа и БЛИЗКО не дали.

Наводящий Вам вопрос - сколько и какие нужны элементы чтобы осуществить такую загрузку, кроме., понятно Циклона и самой flash памяти?
Go to the top of the page
 
+Quote Post
Andr2I
сообщение Jul 28 2007, 18:12
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 368
Регистрация: 16-11-06
Из: Тверь
Пользователь №: 22 379



2vleo
Цитата
И тем не менее - на вопрос поставленный так (как я понял) - "Как загрузить (допустим Cyclone II/III) используя SPI flash микросхему?"


Вообще-то человек сам проговорился, что грузить будет с BlackFin.

Цитата
Наводящий Вам вопрос - сколько и какие нужны элементы чтобы осуществить такую загрузку, кроме., понятно Циклона и самой flash памяти?


Не читая документацию, рискну сказать, что потребуется пара резисторов - подтягов на 3,3V. Вопрос в другом - как в саму флеш засунуть прошивку - через программатор?
Go to the top of the page
 
+Quote Post
vleo
сообщение Jul 29 2007, 15:54
Сообщение #13


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

Группа: Свой
Сообщений: 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, и ко всему прочему позволяет гарантированно вернуться к заводской, рабочей прошивке, если что-то не то залилось.
Go to the top of the page
 
+Quote Post
dvladim
сообщение Jul 30 2007, 06:42
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
vleo
сообщение Jul 30 2007, 17:01
Сообщение #15


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

Группа: Свой
Сообщений: 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 есть.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 4th July 2025 - 12:26
Рейтинг@Mail.ru


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