Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Программатор для Xilinx
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Волощенко
В порядке обмена опытом и в помощь для начинающих.
Это материалы по стандартному программатору Xilinx, который можно разместить в разъеме от LPT-порта. Здесь ничего нового, я только развел Parallel Download Cable, рекомендованный от Xilinx в общеизвестном файле JTAG cable.pdf. Их сделал несколько штук, работают сразу и не подводят уже пару лет:
1. В файле Prog_Xilinx.zip в формате *doc три картинки: принципиальная схема, печатная плата и рисунок фотошаблона. Это для ознакомления тем, кто не работает с Protel-DXP.
2. А те, кто работают с Protel-DXP - сам проект, он в файте Xilinx_JTAG.zip.
3. И еще фотография этого Xilinx программатора. Печатная плата сделана фоторезистивным способом в домашних условиях, после напайки покрыта пластик-лаком. Длина кабеля 90 см.
Удачи. smile.gif
-=Vitaly=-
Цитата(Волощенко @ Dec 5 2006, 11:53) *
В порядке обмена опытом и в помощь для начинающих.
Это материалы по стандартному программатору Xilinx, который можно разместить в разъеме от LPT-порта. Здесь ничего нового, я только развел Parallel Download Cable, рекомендованный от Xilinx в общеизвестном файле JTAG cable.pdf. Их сделал несколько штук, работают сразу и не подводят уже пару лет:
1. В файле Prog_Xilinx.zip в формате *doc три картинки: принципиальная схема, печатная плата и рисунок фотошаблона. Это для ознакомления тем, кто не работает с Protel-DXP.
2. А те, кто работают с Protel-DXP - сам проект, он в файте Xilinx_JTAG.zip.
3. И еще фотография этого Xilinx программатора. Печатная плата сделана фоторезистивным способом в домашних условиях, после напайки покрыта пластик-лаком. Длина кабеля 90 см.
Удачи. smile.gif


Предлагаю каждому кто скачал сказать этому Великому человеку

СПАСИБО!!! w00t.gif
makc
Человеку, конечно, спасибо. Но тему засорять не нужно. Пишите по делу и никаких bb-offtopic.gif ов.
Dimonira
У меня такой кабель давно был сделан и я им успешно пользовался.
Но сейчас выяснилось, что он, например, не "шьёт" platform flash. Там нужна скорость 6 МГц (точнее кажись более 3 МГц), а с LPT она не достижима.
Так что пришлось купить новый фирменный Platform Cable USB.
С ним таких проблем нет (и вообще ни с чем нет проблем).
А этот самосбор ушёл в историю...
Волощенко
к Dimonira и другим:
Вот это и не ясно (разъясните, мой уровень здесь, думаю, средний или ниже):
1.Сколько есть типов программаторов для Xilinx?
2.Какова их сложность, цена и, главное, возможности применительно к сериям FPGA (хорошо бы классифицировать по возрастающей)?
3.Можно ли сделать программатор самому, не покупая его?
4.Да и еще, все же, какие граничные возможности у этого, простейшего программатора, какие серии он уже просто не может осилить?
Буду благодарен за обстоятельные ответы smile.gif
Dimonira
Дык на родном сайте же всё написано (если поискать).

Информация официально открыта только для LPT-шного программатора Parallel Cable III (про который тут и написано). Поэтому только его и можно сделать самому. Но он не шьёт новые EEPROM, только 17х и 18х серии. Spartan 3 тоже не потянет, только 2-й. Попросту говоря - устарел он уже.

По Parallel Cable IV (более новому, с "расширенными" возможностями) - он отличается от предыдущего тем, что сделан с "нормальным" подключением к параллельному порту, т.е. с полноценным стандартным двусторонним 8-битным обменом. Схемы его нету (закрытая инфа), так что самому врядли сделать получится.

Новый USB кабель тоже самому не сделать, т.к. схемы его нету и там копирайт сделан (стоит внутри PLD, которая обновляется IMPACT-ом под покровом тайны), т.е. вся инфа закрыта, и схема, и протоколы обмена и т.д. Может когда-нибудь его и "вскроют", но пока этого не сделали.

Из всего сказанного вывод простой: если не хочешь себе гимора на одно место, то самое лучшее - купить этот фирменный USB кабель и закрыть на этом все вопросы типа "а у меня не шьётся", "а у меня в IMPACT чип виден, но шьётся с ошибкой" и т.п. Благо стоит он не такие уж большие деньги - 185 usd (хотя в личных целях, конечно, не мало).
pergunt
Цитата(Dimonira @ Dec 13 2006, 11:40) *
У меня такой кабель давно был сделан и я им успешно пользовался.
Но сейчас выяснилось, что он, например, не "шьёт" platform flash. Там нужна скорость 6 МГц (точнее кажись более 3 МГц), а с LPT она не достижима.

Где Вы прочитали, что для загрузки в Flash Prom(XCFxx) по JTAG необходима скорость более 3 МГц
(ссылку если можно) ?
Кроме того 17х серии ПРОМы не шьются ни одним кабелем! а только с помощью программатора.

Для Волощенко:
Вашим кабелем (Parallel III) можно прошивать и Флэш Пром и другие CPLD / FPGA , при питании не менее 2В. Поподробней прочитать какие кабели и с каким софтом можно применять см здесь http://www.xilinx.com/xlnx/xil_ans_display...etPagePath=8097
Flanker
Цитата(Dimonira @ Dec 13 2006, 13:51) *
... Spartan 3 тоже не потянет, только 2-й ...

Если для конфигурации Spartan3/3L использовать ПЗУ XC18V... , и подключить ее как сказано во вложенной документации (3.3V PROM), то можно обойтись и кабелем Parallel Cable III.
Цитата(Dimonira @ Dec 13 2006, 13:51) *
... если не хочешь себе гимора на одно место, то самое лучшее - купить этот фирменный USB кабель ...

Не проверял как в ISE8.2i, но в более старых версиях заметил такую фичу: известно, что для USB кабеля ISE ставит свой драйвер. Так вот после его установки в системе перестают определяться другие USB устройства. Кто-нибудь с этим сталкивался? В связи с этим я себе заказал для работы Parallel Cable IV, благо с USB кабелем они по функциям практически не отличаются.
o-henry
Цитата(Dimonira @ Dec 13 2006, 12:51) *
Информация официально открыта только для LPT-шного программатора Parallel Cable III (про который тут и написано). Поэтому только его и можно сделать самому. Но он не шьёт новые EEPROM, только 17х и 18х серии. Spartan 3 тоже не потянет, только 2-й. Попросту говоря - устарел он уже.

По Parallel Cable IV (более новому, с "расширенными" возможностями) - он отличается от предыдущего тем, что сделан с "нормальным" подключением к параллельному порту, т.е. с полноценным стандартным двусторонним 8-битным обменом. Схемы его нету (закрытая инфа), так что самому врядли сделать получится.


Неправда ваша.
В комплекте с Xilinx Spartan-3 Starter Kit
( на котором установлены FPGA XC3S200 и память 2Mbit Xilinx XCF02S)
идет в комплекте кабель для программирования через LPT. Схема в прикреплении.
Волощенко
Большое спасибо за ответы! Еще, если можно, несколько вопросов:
В ссылке http://www.nuhorizons.com/products/digilent/jtag-cable.html говорится, что кабель JTAG3 - есть полная замена Parallel Cable III. В частности, JTAG3 включен в старт-кит HW-SPAR3E-SK-US и он есть в некоторых аналогичные китах, в том числе, и для программирования Spartan-3E (по материалам из Google). Однако в моем iMPACT 7.1.03i, в опциях Output\Cable Setup..., самого JTAG3 в списке разрешенных нет.
1. Как поступили в iMPACT те, кто уже использовал JTAG3, какие настройки в опциях Output\Cable Setup... для iMPACT были сделаны?
2. Можно ли JTAG3 программировать другие CPLD и FPGA, есть ли опыт?
3. В приведенной от o-henry схеме jtag3_sch.pdf есть цепи "SHIELD-SHD", не понятно что это такое; а также примечание, что Р9, Р11 и Р12 закорочены на конце кабеля, что это, просто перемычки в разъеме DB-25? Есть ли еще схема JTAG3, где эти моменты более наглядны?
pergunt
JTAG3 Cable будет опознан софтом как Parallel III, так что не беспокойтесь. При запуске IMPACT программа пусть сама определит ваш кабель. Если будут проблемы с кабелем - она вам о них сообщит.
Зачем вам теперь JTAG3 - схема кабеля, если он = Parallel III.
В схеме o-henry - или некачественная копия, или ошибка, но соединяются P8, P11, P12 - как у вас (перемычки). См http://www.plis.ru/pic/pict/File/jtag_cable.pdf
На этом же сайте можете почитать русские доки.
SHIELD-SHD - это экран и земля(у вас в схеме есть).
Mukhanov
В референсных дизанах Протела есть универсальный JTAG програматор, подходит и для XILINX и ALTERA.
С ISE тоже работает, с Quartus-ом не пробывал.
o-henry
Цитата(pergunt @ Dec 13 2006, 17:12) *
В схеме o-henry - или некачественная копия, или ошибка, но соединяются P8, P11, P12 - как у вас (перемычки).

Не мои глюки.
схему взял с фирменного диска, который шел в комплекте с Xilinx Spartan-3 Starter Kit.
сейчас прозвонил - действительно вместе соединены P8, P11, P12 angry.gif
Dimonira
2 pergunt
Цитата
Где Вы прочитали, что для загрузки в Flash Prom(XCFxx) по JTAG необходима скорость более 3 МГц (ссылку если можно) ?

Не только прочитал, а убедился на практике. Это (насколько я помню) написано в errate на platform flash. Я начал это выяснять, когда у меня не прошивалась XCF08P, причём она определялась правильно, но при попытке шитья выдавала ошибку, а user code записывался только наполовину.
Кстати, предыдущий вариант USB кабеля, который назывался MultiLinx, тоже не захотел прошивать XCF08P с теми же симптомами. Как и положено, в его даташите ведь нету поддержки platform flash smile.gif.

2 Flanker
Цитата
Если для конфигурации Spartan3/3L использовать ПЗУ XC18V... , и подключить ее как сказано во вложенной документации (3.3V PROM), то можно обойтись и кабелем Parallel Cable III.

Можно, но это я уже называю гимором, т.к. фактически же вы программируете XC18V, с которой этот кабель работает. И потом, у меня, допустим, нету нигде 3.3В на плате (2.5В и ниже), я что должен тольк ради этого (кабеля) заводить эту напругу? Это гимор однозначно.
Цитата
Не проверял как в ISE8.2i, но в более старых версиях заметил такую фичу: известно, что для USB кабеля ISE ставит свой драйвер. Так вот после его установки в системе перестают определяться другие USB устройства. Кто-нибудь с этим сталкивался? В связи с этим я себе заказал для работы Parallel Cable IV, благо с USB кабелем они по функциям практически не отличаются.

В 8.2 проверял (щас сижу в ней) - всё нормально.
А на счёт Parallel Cable IV, то у него недостаток (помимо самого LPT порта - привет ноутбукам!), - это меньшая чем у Platform Cable USB скорость.

2 o-henry
Цитата
Неправда ваша.
В комплекте с Xilinx Spartan-3 Starter Kit
( на котором установлены FPGA XC3S200 и память 2Mbit Xilinx XCF02S)
идет в комплекте кабель для программирования через LPT. Схема в прикреплении.

Не понял, что именно неправда?
Mukhanov
Специально для Волощенко.
Схема идет с Altium Designer 6, насчет более ранних версий незнаю.
Находиться в Examples\Reference Designs\Universal JTAG interface REV 1.11.
На всякий случай прицепил файл.
Делал сам такую штуку, плату пришлось переделать потому что небыло микросхем в нужном корпусе
и так сказать для адаптации к изготовлению в домашних условиях.
Проблема была со схемой сдвига уровня сигнала TDO, почемуто не работала, я сделал на прямую и
все заработало. Программатор проверял с Altium Designer 6 и ISE 8.1.

Нажмите для просмотра прикрепленного файла
o-henry
Цитата(Dimonira @ Dec 14 2006, 11:30) *
Не понял, что именно неправда?


это:
Цитата
Но он не шьёт новые EEPROM, только 17х и 18х серии. Spartan 3 тоже не потянет, только 2-й.


поскольку приведенный мной кабель аналогичен Parallel III и при этом с Xilinx Spartan-3 Starter Kit
работает "на ура"
pergunt
Цитата(Dimonira @ Dec 14 2006, 12:30) *
2 pergunt
Цитата
Где Вы прочитали, что для загрузки в Flash Prom(XCFxx) по JTAG необходима скорость более 3 МГц (ссылку если можно) ?

Не только прочитал, а убедился на практике. Это (насколько я помню) написано в errate на platform flash. Я начал это выяснять, когда у меня не прошивалась XCF08P, причём она определялась правильно, но при попытке шитья выдавала ошибку, а user code записывался только наполовину.
Кстати, предыдущий вариант USB кабеля, который назывался MultiLinx, тоже не захотел прошивать XCF08P с теми же симптомами. Как и положено, в его даташите ведь нету поддержки platform flash smile.gif.

2 Flanker
Цитата
Если для конфигурации Spartan3/3L использовать ПЗУ XC18V... , и подключить ее как сказано во вложенной документации (3.3V PROM), то можно обойтись и кабелем Parallel Cable III.

Можно, но это я уже называю гимором, т.к. фактически же вы программируете XC18V, с которой этот кабель работает. И потом, у меня, допустим, нету нигде 3.3В на плате (2.5В и ниже), я что должен тольк ради этого (кабеля) заводить эту напругу? Это гимор однозначно.

Насчет образцов XCF08P - есть такая ссылка, нашел, но:
NOTE: These issues affect only the XCF08P, XCF16P, and XCF32P PROM early engineering samples marked with "ES". It is corrected in the later engineering samples marked with "ESB". These issues do NOT affect the XCF01S, XCF02S, or XCF04S PROMs.

Микросхема шинного буфера 74HC125, применяемая в Параллельном кабеле 3 - работает от 2В питания.
Так что отсутствие 3,3В не есть проблема. Если у вас на плате только 1,8 и 1,5В - тогда проблема.

USB Cable хороший, споров нет, но для быстрого подхода к изучению и работы с XILINX, вполне приемлем пока Parallel III. Для Parallel IV и USB - нет доступных схем, а главное прошивок.
Попытка разработать свой USB Cable здесь кем-то обсуждалась ранее, но по-моему не разработали?
Dimonira
Цитата(o-henry @ Dec 14 2006, 14:03) *
поскольку приведенный мной кабель аналогичен Parallel III и при этом с Xilinx Spartan-3 Starter Kit
работает "на ура"

PC4 аналогичен PC3 по смыслу, но не по реализации.
Я практически выяснил, что PC3 НЕ РАБОТАЕТ с platform flash. Правда уточню - с параллельными, а с сериальными скорее всего будет работать (именно такая и стоит в спартан3-ките).
Вот выдержка из ерраты параллельных XCFххP:
Цитата
TCK Must Be Greater Than 3 MHz
Overview
A design-related timing issue requires that TCK frequency must run faster than 3 MHz during JTAG programming and JTAG readback. This does not affect boundary-scan test or FPGA configuration (CLK timing).
Implication
The affected devices do not program or read back properly with TCK frequency less than 3 MHz.
Workaround
Use PC4 and iMPACT 6.1.03i (or later) with a 5 MHz setting to program and read back the Platform Flash PROM (XCF08P, XCF16P, and XCF32P).

Написано что TCK должна быть не менее 3MHz, иначе будут ошибки. Что делать: использовать PC4 и т.д. Т.е. PC4 будет работать, но не PC3 (что у меня и подтвердилось на практике).
dryadae
Цитата
Информация официально открыта только для LPT-шного программатора Parallel Cable III (про который тут и написано). Поэтому только его и можно сделать самому. Но он не шьёт новые EEPROM, только 17х и 18х серии. Spartan 3 тоже не потянет, только 2-й. Попросту говоря - устарел он уже.

А второй Виртекс? unsure.gif
Dimonira
2 dryadae

Надо найти errat-у на виртекс-2 и почитать. Если там ничего такого нету, то PC3 его потянет, ведь виртекс-2 же старый чип, так что скорее всего да чем нет. Сам я виртексы не юзал, только спартаны и флешки.
shodan
Подскажите пожалуйста, а этим программатором(первый пост) как я понял, внутрисхемно прошиваются XC17**** так ?
А будут ли им прошиваться AT17LV*** ?

PS. на XC17* и XC18* что то, цены очень заоблачные ....
Dimonira
2 shodan

Дык можно взять XCFxx, они, насколько помню, дешевле.
pergunt
Цитата(shodan @ Jan 19 2007, 12:50) *
Подскажите пожалуйста, а этим программатором(первый пост) как я понял, внутрисхемно прошиваются XC17**** так ?
А будут ли им прошиваться AT17LV*** ?

PS. на XC17* и XC18* что то, цены очень заоблачные ....

Для прошивки ПРОМов XC17**** необходим специальный программатор! При помощи Параллельного кабеля и др кабелей их прошить нельзя (о чем я ранее здесь уже писал). AT17LV* тоже им не программируют, но у ATMEL можно найти для них кабель и по-моему програмку. Только вот цена этих схем тоже немалая (от 10$).
Флэш Промы , как уже написали, применять дешевле.
khach
Начиная с 8.1 появилась поддержка программатора DLC9LP (low power), который несовместим со старым DLC9. Кто знает, что это за зверь и на каком процессоре собран?
Wh`te
Цитата(pergunt @ Jan 19 2007, 21:01) *
Для прошивки ПРОМов XC17**** необходим специальный программатор! При помощи Параллельного кабеля и др кабелей их прошить нельзя (о чем я ранее здесь уже писал). AT17LV* тоже им не программируют, но у ATMEL можно найти для них кабель и по-моему програмку. Только вот цена этих схем тоже немалая (от 10$).
Флэш Промы , как уже написали, применять дешевле.

Это точно?
Victor®
Цитата(khach @ Jan 19 2007, 18:32) *
Начиная с 8.1 появилась поддержка программатора DLC9LP (low power), который несовместим со старым DLC9. Кто знает, что это за зверь и на каком процессоре собран?


Почему не совместим?
Что именно не совместимо?
Откуда сведения?
dsmv
Есть ещё программаторы от Digilent: http://www.terraelectronica.ru/catalog.php?ID=949

DL-JTAG-HS1 programming cable - 1957 руб; Он работает с IMPACT, ChipScope через специальный драйвер.

Вот интересно, где-нибуть есть спецификация как написать драйвер к IMPACT для работы со своим устройством JTAG ?










Yuris
В копилку всеобщих знаний...
Не совсем для начинающих, но, внезапно выяснилось, что для доступа к регистрам eFUSE (Spartan6, Virtex6) не то, что LPT-кабель, но и фирменный Platform Cable USB (DLC9G) не подходит. Для срочного криптования FPGA пришлось в самый распоследний момент за очень неслабые деньги заказывать Platform Cable USB II (HW-USB-II-G). Вот такая хитрая преемственность продуктов Xilinx. Я уж молчу про российских диллеров-барыг, торгующих в два конца...
Flood
Известный факт с eFUSE: только Platform Cable USB II, только Windows XP 32bit, только 6МГц.
Yuris
Верно только первое, работает на семерке, на скорости не больше 1,5МГц
Flood
Хм, значит уже сделали. Если не ошибаюсь, еще в 14.2 поддерживался только win xp 32bit. Плюс еще еррата у eFUSE есть - при наличии других устройств в цепочке портится записываемый ключ. Начиная с какой-то версии софт учитывает это автоматом.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.