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

 
 
 
Reply to this topicStart new topic
> Загрузка ПЛИС при помощи другой ПЛИС
jericho
сообщение Jan 18 2007, 13:45
Сообщение #1


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



Для новых ПЛИС (Spartan3E) в даташите слабо описана процедура загрузки ПЛИС. Кто-нибудь пробовал загружать Спартан-3Е с другой ПЛИС?
Go to the top of the page
 
+Quote Post
BSV
сообщение Jan 18 2007, 13:53
Сообщение #2


Знающий
****

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



В каком режиме? Если Slave Serial или Slave Parallel, то аналогично другим семействам. На сайте у них есть XAPP про загрузку, да и здесь обсуждалось, правда применительно к микроконтроллерам.

P.S. Сейчас посмотрел - и в самом ds312.pdf написано про конфигурацию довольно подробно.


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
jericho
сообщение Jan 18 2007, 15:44
Сообщение #3


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



Что-то я не увидел в ds312 подробностей...
Описание формата .bit файла можно где-нибудь найти?
Go to the top of the page
 
+Quote Post
RKOB
сообщение Jan 18 2007, 17:22
Сообщение #4


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

Группа: Свой
Сообщений: 172
Регистрация: 17-03-05
Пользователь №: 3 422



Посмотри xapp452.pdf Spartan Advanced Configuration Architecture.
Go to the top of the page
 
+Quote Post
BSV
сообщение Jan 18 2007, 17:55
Сообщение #5


Знающий
****

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



Можно грузить не bit, a bin - тогда вопросов про формат не будет.
Если внимательно посмотреть на содержимое bit-файла и сравнить его с содержимым bin можно заключить, что первый состоит из заголовка и собс-но битового потока. Заголовок имеет формат <сигнатура поля - байт> <номер поля - байт> <длина поля - байт> <поле>. Битовый поток - тоже поле, только длина у него задается более длинной посл-ю, догадаться как разбирать несложно. Биты задвигать начиная со старшего (в bit-е), кажется. Времянки в даташите имеются.


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
jericho
сообщение Jan 18 2007, 18:25
Сообщение #6


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



...а после загрузки продолжать подавать клок, пока DONE не появится? Bin-это тот, что из hex-файлов делается с помощью hex2bits?
Go to the top of the page
 
+Quote Post
BSV
сообщение Jan 18 2007, 18:55
Сообщение #7


Знающий
****

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



В свойствах процесса Generate Programming File поставьте галку напротив Create Binary Configuration File. Только я не знаю меняется ли при этом порядок бит в байте. Алгоритм такой - выставляем PROG, держим его > 0.3us, проверяем INIT = '0', снимаем PROG, дожидаемся INIT = '1' (если слишком долго нет, то ошибка), начинаем задвигать биты. Можно еще проверять INIT и DONE после заталкивания каждого байта или нескольких (если INIT = '0' или DONE = '1' - то ошибка).

После заталкивания последнего байта достаточно генерить CCLK 8 тактов, потом проверить DONE.


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Jan 19 2007, 09:00
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(BSV @ Jan 18 2007, 17:55) *
Если внимательно посмотреть на содержимое bit-файла и сравнить его с содержимым bin можно заключить, что первый состоит из заголовка и собс-но битового потока.
"Читайте доки -- они рулез". Это английским по белому так и написано в доке на bitgen:
Цитата
.bin A binary file that contains only configuration data. The .bin has no header like the .bit file. Produced when g Binary:Yes is specified.

.bit A binary file that contains proprietary header information as well as configuration data. Meant for input to other Xilinx tools, such as PROMGen and iMPACT. Always produced unless the - j option is specified.
Go to the top of the page
 
+Quote Post
BSV
сообщение Jan 19 2007, 12:08
Сообщение #9


Знающий
****

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



Вот здесь я исходник программы загрузки конфигурации положил:
http://electronix.ru/forum/index.php?showt...amp;st=15&#

Там есть и разбор заголовка bit-файла.


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
jericho
сообщение Jan 19 2007, 12:22
Сообщение #10


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



А если нужен Daisychain, то сначала сгенерить из нескольких .bit-файлов один .mcs, а потом с помощью promgen преобразовать его в .bin?
Go to the top of the page
 
+Quote Post
BSV
сообщение Jan 19 2007, 12:41
Сообщение #11


Знающий
****

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



Да, наверно так.
Мне пока не приходилось грузить несколько камней таким способом.


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 19 2007, 12:49
Сообщение #12


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(jericho @ Jan 19 2007, 12:22) *
А если нужен Daisychain, то сначала сгенерить из нескольких .bit-файлов один .mcs, а потом с помощью promgen преобразовать его в .bin?


Да, именно так. У меня в Makefile с помощью промгена из нескольких битов создается общий файл прошивки в формате mcs:
promgen -w -p mcs -c FF -o fpga_fw -u 0 dummy_x1/dummy_x1_top.bit dummy_x2/dummy_x2_top.bit dummy_x3/dummy_x3_top.bit -s 1048576


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
jericho
сообщение Jan 19 2007, 14:49
Сообщение #13


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



Насчет клоков, пишут, что нужно держать клок дольше, особенно если есть DCM-ы...
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 19 2007, 14:55
Сообщение #14


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



В документации описано минимальное количество start-up тактов CCLK. Их обычно вполне достаточно.
Но если их сделать больше, то ничего страшного не будет. smile.gif


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
jericho
сообщение Jan 19 2007, 19:17
Сообщение #15


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

Группа: Свой
Сообщений: 120
Регистрация: 18-01-06
Из: Нижний Новгород
Пользователь №: 13 319



Большое спасибо за помощь, господа....
Go to the top of the page
 
+Quote Post

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

 


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


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