Программирование Xilinx
Программирование Xilinx
Добрый день. Вот осваиваю программирование ПЛИС. Нужно большой кусок схемы на логике вогнать по максимуму в ПЛИС. Посоветуйте толковую литературу. Может есть у кого-нибудь статьи где рассматривается весь путь от создания схемы до программирования ПЛИС. Выложите пожалуйста. Спасибо.
- Реклама
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Сейчас схемы на всяких там элементах не делают -- это долго и неудобно. Вместо этого описывают нужное поведение на VHDL или Verilog, после чего компилятор соответствующего языка вместе с прочими программами преобразует всё это в прошивку ПЛИС. Для Xilinx всё необходимое входит в ISE. Правда, качать его тяжело -- что-то вроде 3 гигабайт. Ну а литература... Что-то было на этом сайте, а так -- поиском.
Re: Программирование Xilinx
Кто-нибудь пробовал программировать Xilinx через USB? Есть у кого-нибудь схема распайки кабеля?
-
Pe3ucTop
- Прорезались зубы
- Сообщения: 231
- Зарегистрирован: Пт ноя 16, 2007 13:52:44
- Откуда: Рига, Латвия
Re: Программирование Xilinx
Как понять пробовал ?? Оригинальный кабель полноценно работает...Valek87 писал(а):Кто-нибудь пробовал программировать Xilinx через USB? Есть у кого-нибудь схема распайки кабеля?
По поводу распайки - нету, тоже искал, но ничего хорошего не нашел... Пришлось делать на LPT..
Говорят можно сделать на CY7C68013A и XC2C256, дорого да и конкретных данных по содержанию ЕЕПРОМ и CPLD не увидел.
Можно JTAG кабель сделать на FTDI FT245 и CPLD но в том что оно будет работать с оригинальным софтом уверенности тоже нету..
Re: Программирование Xilinx
Да и он и стоит вроде прилично.Pe3ucTop писал(а):Как понять пробовал ?? Оригинальный кабель полноценно работает...
- Реклама
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Я имею дело с Дигилентовской платой со Спартаном-3Е. С ней в комплекте идёт УСБ-шнурок для программирования, но он рассчитан на связь с УСБ-контроллером, стоящим на плате. Однако отдельно можно купить и шнурок УСБ-ЖТАГ, который работает уже с самой ПЛИСиной. Правда, он действительно недёшев -- 2 тыщи, что ли. Схем не попадалось, но я и не пытался найти: предпочитаю такие вещи брать готовые, чем заморачиваться с "доработкой напильником".
Re: Программирование Xilinx
Допустим у меня есть схема. На вход к.-л. микросхемы подается сигнал с опред. частотой. Подскажите, как мне записать этот сигнал на языке VHDL, чтобы я смог увидеть какой частоты сигнал у меня будет на выходе.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Зависит от того, нужно это лишь в симуляторе или в реальном железе (т.е. чтобы сигнал физически генерился). В последнем случае придётся соображать умножители-делители частоты и т.п. вещи, чтобы получить нужный сигнал из опорного (от кварца, что прилеплен к ПЛИС).
Re: Программирование Xilinx
У меня стоит кварц 10 МГц. Мне нужно написать на VHDL этот сигнал. Якобы он поступает на МС.
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Где написать? В симуляторе для отладки кода? Или в реальной схеме подать эту частоту?
Re: Программирование Xilinx
SII писал(а):В симуляторе для отладки кода?
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Пример из мануала:
Код: Выделить всё
PROCESS -- clock process for clk_in
BEGIN
CLOCK_LOOP : LOOP
clk_in <= '0';
WAIT FOR PERIOD * 0.5;
clk_in <= '1';
WAIT FOR PERIOD * 0.5;
END LOOP CLOCK_LOOP;
END PROCESS;
Re: Программирование Xilinx
Вот моя простенькая схема.
Я хочу просимулировать так, чтобы на вход first якобы поступал вышеуказанный сигнал частотой 10 МГц. Вот мой код (написано в Xilinx ISE Design Suite 12.3).
Проверка ошибок выдает ошибку:Код: Выделить всё
entity ANDOR is Port ( first, second, third: in BIT; four : out BIT); end ANDOR; architecture chema of ANDOR is New: PROCESS (first) -- clock process for clk_in BEGIN CLOCK_LOOP : LOOP first <= '0'; WAIT FOR 200 ns; first <= '1'; WAIT FOR 200 ns; END LOOP CLOCK_LOOP; END PROCESS New; END chema;
Где ошибка?ERROR:HDLParsers:164 - "C:/Documents and Settings/Xilinxproj/module.vhd" Line 38. parse error, unexpected PROCESS
-
Pe3ucTop
- Прорезались зубы
- Сообщения: 231
- Зарегистрирован: Пт ноя 16, 2007 13:52:44
- Откуда: Рига, Латвия
Re: Программирование Xilinx
Советую вам отдельно - сделать модуль частоты, и отдельно модуль элемента.
И потом главным модулем (будь то схема или синтаксис) соеденить их оба..
И потом главным модулем (будь то схема или синтаксис) соеденить их оба..
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
А где begin? Компилятор не зря сказал, что в этом месте процесс он никак не ожидал увидеть...Valek87 писал(а):Где ошибка?
Re: Программирование Xilinx
После этой строки в коде:
Код: Выделить всё
New: PROCESS (first) -- clock process for clk_in
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
А вообще-то должен быть ещё и после объявления архитектуры... а между архитектурой и бегином могут быть объявления внутренних сигналов (можно считать -- переменных) и т.п.
Код: Выделить всё
architecture XXXX of YYYY is
здесь описания сигналов
begin
а здесь описание того, как всё это работает -- в частности, операторы process
end XXXX;-
Wladimir_TS
- Друг Кота
- Сообщения: 5066
- Зарегистрирован: Вс фев 15, 2009 01:04:58
- Откуда: Kaluga
Re: Программирование Xilinx
У меня вопрос более приземленный к железу. К сожалению в современных компьютерах уже нету LPT и COMов - поэтому неспешно разрабатываю USB програматор (база однокристалка с аппаратным USB). Вопрос - не раскрыто-ли глде в инете содержание протокола обмена конфигурационная ЭСППЗУ-програматор ? Как я понимаю там при JTAGовской маркировке используется банальный SPI. Вопрос в специфике связанной с тем что ЭСППЗУшки новых годов выпуска почему-то не шьються программами старых версий - занчит алгоритм зависит от года выпуска (ID) микросхемы ЭСППЗУ. В общем - кто что знает - расскажите.
- Uklunok
- Вымогатель припоя
- Сообщения: 561
- Зарегистрирован: Сб апр 03, 2010 10:12:41
- Откуда: Хабаровск
Re: Программирование Xilinx
Я делаю так:Valek87 писал(а):
Я хочу просимулировать так, чтобы на вход first якобы поступал вышеуказанный сигнал частотой 10 МГц.
Код: Выделить всё
constant PERIOD : time:= 100 ns;
BEGIN
first <= not first after PERIOD/2;
-
SII
- Вымогатель припоя
- Сообщения: 635
- Зарегистрирован: Пт янв 30, 2009 14:50:35
- Откуда: Солнечногорск
Re: Программирование Xilinx
Wladimir_TS, я не встречал подобной информации, хотя было б интересно. Что же касается программаторов, то предпочитаю готовые. Для USB такие тоже имеются, не говоря о том, что переходник USB-COM -- вещь легкодоступная, так что и старые программаторы использовать можно.


