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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Как загрузить ПЛИС с микроконтроллера ?
Dimetor Kilov
сообщение Jan 13 2005, 15:47
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 13-01-05
Пользователь №: 1 923



Добрые люди подскажите начинающему где найти исходники под микроконтроллер(лучше какой нибудь Атмега128), для загрузки с него плис и документирование описание сего процесса.
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 13 2005, 15:54
Сообщение #2


Гуру
******

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



А что за ПЛИС? ПЛИСов-то много разных... И даже один и тот же тип может грузиться по-разному.


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


Помогу, чем смогу
******

Группа: Админы
Сообщений: 2 786
Регистрация: 28-05-04
Из: Москва
Пользователь №: 25



Могу предложить для х51 на древнем ассемблере (поэтому сразу не выкладываю) код для загрузки ALTERA FLEX8K/10K. Если нужно, пишите, но на мой взгляд, обладая навыками программирования и имея даташит на чип, можно достаточно быстро написать самому. Если нет ни первого ни второго, то с готовым исходником, но чужим провозитесь дольше smile.gif


--------------------
С уважением,
Ваган Саруханов
Проекты|Форум|Facebook|Linkedin
Go to the top of the page
 
+Quote Post
Diver
сообщение Jan 14 2005, 09:08
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 21
Регистрация: 14-01-05
Из: Gmbh
Пользователь №: 1 944



[COLOR=blue]Описание загрузки FPGA можно посмотреть в доке, сложного там ничего нет и варианты предлагаемых загрузок могут удовлетворить пользователей всех видов МК. [COLOR=blue][COLOR=blue][FONT=Arial]
Altera.com
Go to the top of the page
 
+Quote Post
Dimetor Kilov
сообщение Jan 14 2005, 15:17
Сообщение #5





Группа: Новичок
Сообщений: 2
Регистрация: 13-01-05
Пользователь №: 1 923



Огромное спасибо всем, вроде начинаю разбираться.
Go to the top of the page
 
+Quote Post
one_man_show
сообщение Jan 14 2005, 17:01
Сообщение #6


Помогу, чем смогу
******

Группа: Админы
Сообщений: 2 786
Регистрация: 28-05-04
Из: Москва
Пользователь №: 25



По другому запросу все-таки выложил исходники, посмотрите здесь


--------------------
С уважением,
Ваган Саруханов
Проекты|Форум|Facebook|Linkedin
Go to the top of the page
 
+Quote Post
shodan
сообщение Jan 22 2007, 15:53
Сообщение #7





Группа: Новичок
Сообщений: 5
Регистрация: 17-01-07
Пользователь №: 24 484



А как быть со Spartan II ?
Если ли у кого исходники загрузки ПЛИС Xilinx с помощью микроконтроллеров MCS-51 или в крайнем случае AVR ?
Наличие дополнительной Flash подразумевается...

Очень хотелось бы посмотреть на готовый код, а то ловить глюки сразу MCS-51 и Spartan нехотелось бы ...
Поиск по сайту дал только немного инфы про альтеру, в гугле тоже порылся и ничего на эту тему ненашел. Может я не так ищу smile3046.gif киньте в меня ссылок, если у кого есть.


PS. Побегал я по Москве в эти выходные... флешек ненашел, а прокатывать 200км до Москвы больше нехочу...
Go to the top of the page
 
+Quote Post
disel
сообщение Jan 22 2007, 16:51
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



На сайте ксалинкса: xapp502 и исходники к нему
Go to the top of the page
 
+Quote Post
shodan
сообщение Jan 23 2007, 01:31
Сообщение #9





Группа: Новичок
Сообщений: 5
Регистрация: 17-01-07
Пользователь №: 24 484



Цитата(disel @ Jan 22 2007, 16:51) *
На сайте ксалинкса: xapp502 и исходники к нему


Описанный там способ, мягко скажем ... не лучший w00t.gif но всеравно спасибо.
Ибо конфигурировать FPGA с помощью микропроцессора и ЕЩЕ одного ПЛИС, это ведет за собой большие затраты места на плате и денег. smile3009.gif

Меня интересуют варианты загрузки спартанов с флешки, через микроконтроллеры MCS-51 и AVR, т.к. в случае неработоспособности будет прощще отладить, чем мегамонстр ксилинкса с применением MC68VZ328 и CoolRunner™ CPLD
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 23 2007, 08:33
Сообщение #10


Гуру
******

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



CPLD это далеко не обязательный атрибут конфигурирования ПЛИС с помощью микроконтроллера.
Можно взять любой МК, подключить к нему последовательную (можно и параллельную, если ног хватит) флеш-память и грузить ПЛИС программно формируя временную диаграмму конфигурационных сигналов (PROG, CCLK, DATA и т.п.) в режиме Slave Serial. Почитайте внимательно DataSheet на Spartan-2, там этот режим хорошо описан.


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


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

Группа: Свой
Сообщений: 195
Регистрация: 25-01-06
Из: г. Троицк, МО
Пользователь №: 13 575



Параллельная загрузка Spartan II (XC2S100) из внешней ПЗУхи, AT89C52
Надеюсь разберетесь wink.gif

Код
nPROGRAM equ P1.6
nINIT equ P3.2
nCS equ P3.3
nWRITE equ P3.3
CCLK equ P3.6;(nWR)

Bank equ P3.4;(это к ПЗУхе)

   clr nPROGRAM
   Setb nPROGRAM

Config:
   Jnb nINIT , Config
   clr nCS
   mov R0, #&h0
   mov R1, #&h0
   mov R2, #&h0
   mov P2, #&h80

   clr Bank
   mov DPTR, #&h2000
   mov R6, #&h00;тут поменять под конкретную ПЛИСину
   mov R7, #&hE0;и здесь
   Acall Conf_sub

   Setb Bank
   mov DPTR, #&h2000
   mov R6, #&h74;и соответсвенно здесь
   mov R7, #&h9E;и здесь
   Acall Conf_sub

   Setb nCS
   clr nCS
   mov DPTR, #&h8000
   Movx @dptr , A
   Setb nCS
   Sjmp Conf_done

Conf_sub:

   Movc A, @A+Dptr
   Movx @r0, A
   inc DPTR
   Djnz R6, Conf_sub
   Djnz R7, Conf_sub
   ret

Conf_done:
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Jan 23 2007, 10:46
Сообщение #12


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Чтобы не ловить глюки Spartan-II настоятельно рекоммендую ознакомиться с XAPP176 (Spartan-II FPGA Family Configuration and Readback); по крайне мере, у наших програмистов все вопросы, как конфигурировать Spartan-IIE, после прочтения данного документа пропали.

Обрящаю внимание на несколько типовых скользких моментов:
1. При компиляции ПЛИС надо правильно выставить тип выхода DONE.
2. После передачи прошивки необходимо дать еще 8 тактовых импульсов (для старта ПЛИС)
3. Необходими обратить особое внимание на расположение старшего бита в байте конфигурационного файла (.bin) и места/времени этого бита в потоке данных заливаемом в ПЛИС.
Go to the top of the page
 
+Quote Post
vladec
сообщение Jan 23 2007, 11:17
Сообщение #13


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

Группа: Свой
Сообщений: 1 167
Регистрация: 3-10-05
Из: Москва
Пользователь №: 9 158



Еще насколько замечаний для Spartan2 да и других Xilinx. После снятия сигнала Progr обязательно сделайте паузу в несколько милисекунд. В качестве исходного лучше использовать загрузочный файл в формате bin. Задвигать данные со старшего бита байта.
Go to the top of the page
 
+Quote Post
Skorp
сообщение Jan 29 2007, 21:00
Сообщение #14


Участник
*

Группа: Новичок
Сообщений: 23
Регистрация: 26-01-06
Пользователь №: 13 631



Выше рассматривался Spartan II. А как обстоят дела со Spartan3? Есть ли характерные отличия?

На данный момент пытаюсь загрузить XC3S400 посредством Atmega128 в режиме SlaveSerial.
Пока что не удалось получить 1 на DONE по окончании загрузки.

В связи с чем вопрос:
1. На сколько я понял в исходниках к xapp502 для заданного режима биты передаются начиная с LSB,
тогда как выше говорилось, что требуется "Задвигать данные со старшего бита байта" - как все таки правильно?
2. Требуются ли дополнительные тактовые импульсы по окончании загрузки и где про это почитать?
3. Судя по рисунку 6 из даташита(ds099.pdf) после INT_B -> 1 данные должны начинать поступать со второго фронта сигнала CCLK - я правильно понимаю?
Go to the top of the page
 
+Quote Post
makc
сообщение Jan 29 2007, 21:19
Сообщение #15


Гуру
******

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



Цитата(Skorp @ Jan 29 2007, 21:00) *
Выше рассматривался Spartan II. А как обстоят дела со Spartan3? Есть ли характерные отличия?


На сколько я помню - существенных отличий нет. Во всяком случае тот код, который у меня успешно грузил Spartan-2, так же успешно грузит и Spartan-3.

Цитата
На данный момент пытаюсь загрузить XC3S400 посредством Atmega128 в режиме SlaveSerial.
Пока что не удалось получить 1 на DONE по окончании загрузки.


У меня была проблема с длительностью сигнала PROG, необходимого для начала конфигурации. При слишком маленькой длительности не всегда происходила успешная конфигурация.

Кроме того, по-умолчанию необходима подтяжка сигнала DONE.

Цитата
В связи с чем вопрос:
1. На сколько я понял в исходниках к xapp502 для заданного режима биты передаются начиная с LSB,
тогда как выше говорилось, что требуется "Задвигать данные со старшего бита байта" - как все таки правильно?


Я задвигаю биты начиная с младшего (LSB).

Цитата
2. Требуются ли дополнительные тактовые импульсы по окончании загрузки и где про это почитать?


Требуются. Так называемые импульсы StartUp clock. В данном случае - CCLK. А почитать про это можно в DataSheet в разделе конфигурирования ПЛИС. На эту тему есть иллюстрация - Figure 25: Default Start-Up Sequence.

Цитата
3. Судя по рисунку 6 из даташита(ds099.pdf) после INT_B -> 1 данные должны начинать поступать со второго фронта сигнала CCLK - я правильно понимаю?


Не нашел такого рисунка.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post

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

 


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


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