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

 
 
 
Reply to this topicStart new topic
> USB-JTAG адаптер, программирование CPLD фирмы Altera
Konst_777
сообщение Jul 29 2005, 08:21
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Данная тема является продолжением темы http://forum.electronix.ru/index.php?showtopic=6653

Предлагаемый USB-JTAG адаптер был создан для модуля, содержащего два JTAG интерфейса. Первый содержит три PLD фирмы Altera (EPM7064S, EPM7064S, EPM7064AE). Второй содержит два DSP фирмы Analog Devices (ADSP-21062, ADSP21065).
Адаптер был создан по требованию настройщиков прибора, содержащего этот модуль. Для программирования PLD и FLASH памяти для загрузки ADSP модуля им хотелось использовать простую программу и один адаптер, а не устанавливать и осваивать два фирменных пакета (VisualDSP и Quartus) чтобы использовать фирменный эмулятор для ADSP и ByteBlaster для PLD.
Для программирования PLD EPM7064S фирмы Altera использован алгоритм, являющийся универсальным для программирования любой PLD фирмы Altera (и загрузки любой FPGA) через JTAG интерфейс. Число CPLD (FPGA) в JTAG цепочке ограничено только требованиями JTAG.
Quartus позволяет создать выходной файл для программирования CPLD (загрузки FPGA) в формате Serial Vector Format File (.svf). Файл в этом формате содержит команды JTAG для программирования/загрузки одной или нескольких CPLD/FPGA в цепочке JTAG. Программа XL_Loader преобразует JTAG-команды этого файла в команды, выполняемые USB контроллером C8051F320 фирмы SiLabs.
Это краткое описание адаптера и его программного обеспечения. Читайте исходники, задавайте вопросы, улучшайте алгоритм, исправляйте мои ошибки.
Прикрепленные файлы
Прикрепленный файл  XL_Loader.rar ( 429.14 килобайт ) Кол-во скачиваний: 728
 
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Aug 30 2005, 03:26
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Вот и первый апдейт для XL_Loader :

1). В схему адаптера добавлены конденсаторы, фильтрующие выбросы по питанию (файл \XL_Loader_Update_1\Schema\Adapter_SCH.pdf). Отсутствие конденсаторов приводит к неработоспособности адаптера если длина кабеля USB больше 1,8 м. Однако не стоит экономить на конденсаторах и при меньшей длине кабеля USB.
Will the USB hardware retry bulk transfers forever?
F320 C2 interface schematic
CP2102 Regulator Output Stability

2). SiLabs выпустила новую версию USBXpress ver.2.3. Апдейт содержит новую версию драйверов для Windows (папка \XL_Loader_Update_1\Setup\Driver) и новую версию DLL для связи с драйвером (файл \XL_Loader_Update_1\Setup\SiUSBXp.dll).
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Aug 30 2005, 03:31
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Забыл добавить архив в предыдущем сообщении. Вот он:
Прикрепленные файлы
Прикрепленный файл  XL_Loader_Update_1.rar ( 89.7 килобайт ) Кол-во скачиваний: 1288
 
Go to the top of the page
 
+Quote Post
3.14
сообщение Aug 30 2005, 04:30
Сообщение #4


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



А какая получается скорость загрузки (относительно ButeBlaster)?
Дело в том, что SVF может рожать и Impact (Xilinx) (по крайней мере когда писал свой SVF плеер пользовался той же докой), так что думаю Xilinx тоже можно будет грузить.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Aug 30 2005, 10:01
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Сейчас время программирования трех микросхем EPM7064S в цепочке JTAG - 3 сек. При этом скорость обмена по JTAG 1 Мбит/сек (частота TCK=1 МГц). Можно сделать и 12 Мбит/сек (так было изначально), но особого смысла в этом нет. Основное время при программировании занимает не пересылка данных, а задержки микросхем на готовность к программированию следующих данных. Эти задержки в файле .SVF формируются как выдача определенного числа импульсов TCK в состоянии IDLE JTAG (см. файл \XL_Loader\Docums\epm70xx.svf). При создании файла .SVF вы задаете частоту TCK, которую имеет программатор. Чем выше частота, тем больше импульсов TCK в состоянии IDLE JTAG будет содержать файл .SVF. В то же время, чем выше частота обмена, тем короче должен быть шлейф JTAG от контроллера USB к разъему JTAG на модуле.

Но Ваш вопрос очень кстати. Нужно иметь ввиду, что скорость обмена по JTAG в настоящее время равна 1 Мбит/сек и задавать TCK=1MHz при создании файла .SVF.

Сообщение отредактировал Konst_777 - Sep 1 2005, 04:48
Go to the top of the page
 
+Quote Post
3.14
сообщение Aug 30 2005, 18:22
Сообщение #6


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



У меня нет особого желания разбираться в исходниках, поэтому предполагаю (исходя из заявленных скоростей), что Вы обмениваетесь с контроллером блоками-аргументами SIR и SDR команд.
Когда я писал SVF плеер уткнулся в один неприятный момент, при программировании PROM xc18v02 команда SDR содержит 4096бит и я не смог его целиком засунуть в буфер контроллера, пришлось "лепнину стряпать" а это уже не есть универсальный программатор sad.gif
Если применять методы без исполнения SVF комманд в контроллере (с предварительной загрузкой в буфер данных), тогда, как я не прикидывал, на full speed не получить скорости большей чем через LPT.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Aug 31 2005, 03:55
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Сразу отмечу, что я в своем предыдущем сообщении убрал последний абзац. Речь шла о том как "легко" получить скорость обмена по JTAG 6 Мбит/сек. Работы по созданию адаптера были завершены пять месяцев тому назад и, что-то я уже подзабыл. В настоящей версии, при программировании CPLD сигнал TCK формируется программно. Поэтому его частота меняется от 1 до 3 МГц в разных частях программы. При программировании FLASH памяти процессоров ADSP для обмена по JTAG используется SPI порт. При этом скорость обмена по JTAG около 12 Мбит/сек.

Программа XL_Loader преобразует формуляры .SVF файла в команды контроллера C8051F320 таким образом, чтобы избежать пересылки низкоуровневых SIR и SDR команд между ПЭВМ и контроллером. Формуляр обмена с контроллером напоминает RLE кодирование изображений.

Следует иметь в виду, что программное обеспечение адаптера (software и firmware) используется не столь часто и не так долго, чтобы гарантировать отсутствие любых ошибок. Поэтому я и опубликовал исходники. Это не коммерческий продукт. Это отправная точка для создания Вашего собственного программатора.
Go to the top of the page
 
+Quote Post
3.14
сообщение Aug 31 2005, 07:55
Сообщение #8


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Ну что мы "все про Фому да про Ерему".
Если привести программер к виду - через USB только устанавливать состояние и опрашивать JTAG пины, то с учетом накладных раходов USB скорость получется медленнее чем через LPT.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
Dr.Toll
сообщение Nov 2 2005, 13:40
Сообщение #9





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



Давно вижу у вас тема не обновлялась. Скачиваний много, а нареканий не видно. Наверное у народа отладочной платы SiLabs нет.

Ну а у нас первое нарекание. Так как все для реализации вышепредъявленного устройства у нас имеется (в хорошем смысле слова), то мы постарались применить труды коллеги на практике. Но после обнаружения XL_Loadera (F320 мы естественно прошили, и Silab драйвер поставили) на USB при попытке установки драйвера устройства XP падет smile.gif Синее окно смерти говорит что ошибка вызвана приложением SIUSBXP.sys
Пробовали и с апдейтом и без, а главное на разных машинах. Все одно - синий экран Била.

Хочется комментариев.
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Nov 2 2005, 15:14
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(Dr.Toll @ Nov 2 2005, 16:40)
Давно вижу у вас тема не обновлялась. Скачиваний много, а нареканий не видно. Наверное у народа отладочной платы SiLabs нет.

Для меня тоже загадка, как при общем числе просмотров данной темы 568 , число скачиваний XL_Loader_Update_1.rar может быть равным 1029 . Наверное ссылка на этот Update гуляет по просторам интернета. Зачем? Если нужна новая версия драйверов USBXpress, то проще загрузить USBXpress с сайта SiLabs.

Цитата(Dr.Toll @ Nov 2 2005, 16:40)
Ну а у нас первое нарекание. Так как все для реализации вышепредъявленного устройства у нас имеется (в хорошем смысле слова), то мы постарались применить труды коллеги на практике.  Но после обнаружения XL_Loadera (F320 мы естественно прошили, и Silab драйвер поставили) на USB при попытке установки драйвера устройства XP падет smile.gif Синее окно смерти говорит что ошибка вызвана приложением SIUSBXP.sys
Пробовали и с апдейтом и без, а главное на разных машинах. Все одно - синий экран Била.

Хочется комментариев.

В моей практике такого поведения (отчуждения) драйвера SiLabs я не встречал. Сомнений в работоспособности адаптера и firmware нет. Изготовлено около 10 адаптеров. Все работают. На разных компьютерах и с различными версиями Windows: от 98SE до XP.
Впрочем, припоминаю, что встречал нарекания на то, что USBXpress некорректно работал с каким-то chipset-ом материнской платы. На сайте SiLabs.ru, в разделе "Публикации", есть ссылка на разработку USB осциллографа. На этом сайте автор анализирует число проданных осциллографов и проблемы при установки ПО.
В ближайшее бесплатное интернет-время я постараюсь найти точную ссылку. Также, "качну" и проверю, выложенные мной архивы.
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Nov 3 2005, 06:19
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Проверил архивы XL_Loader.rar и XL_Loader_Update_1.rar:
1). Деинсталировал установленный драйвер USBXpress (через "Установка и удаление программ" - "USBXpress driver set заменить/удалить");
2). Установил драйвер USBXpress из XL_Loader_Update_1.rar (запустил программу PreInstaller.exe из папки \XL_Loader_Update_1\Setup\Driver);
3). Запрограммировал C8051F320 (файл FIRMWARE.OMF из папки \XL_Loader\Setup архива XL_Loader.rar). Запустил контроллер. Windows запросила драйвер, выбрал "Автоматическая установка...". В ответ на предупреждение о неподписанном драйвере нажал кнопку "Все равно продолжить". Windows создала контрольную точку восстановления и сообщила об успешной установке драйвера и нормальной работе устройства.
4). Создал папку \Test, в которую перенес файл XL_Loader.exe из папки \XL_Loader\Setup архива XL_Loader.rar и файл SiUSBXp.dll из папки \XL_Loader_Update_1\Setup архива XL_Loader_Update_1.rar.
5). Запустил программу XL_Loader.exe. Программа нормально функционировала до выхода из программы. При выходе из программы (вызове функции SI_Close) Windows сообщила о нарушении доступа в модуле SiUSBXp.dll. После замены на старую версию (2.1.0.0) жалоб на SiUSBXp.dll не было.

Выводы:
1). Следует использовать старую версию SiUSBXp.dll.
2). На WEB странице, о которой я упоминал в своем предыдущем сообщении приведен опыт работы C8051F320 на разных компьютерах с драйвером от Jungo, не от USBXpress. Так что, на сегодня для меня остается загадкой такое поведение драйвера USBXpress. Пожалуйста, сообщите мне, если у Вас появится какая-то новая информация.

Сообщение отредактировал Konst_777 - Nov 3 2005, 07:00
Go to the top of the page
 
+Quote Post
sKWO
сообщение Sep 26 2007, 11:14
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(Konst_777 @ Nov 3 2005, 10:19) *
2). На WEB странице, о которой я упоминал в своем предыдущем сообщении приведен опыт работы C8051F320 на разных компьютерах с драйвером от Jungo, не от USBXpress.

'Konst_777' молдаване скоро приедут? хотелось бы посмотреть.....


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Sep 26 2007, 16:13
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(sKWO @ Sep 26 2007, 14:14) *
'Konst_777' молдаване скоро приедут? хотелось бы посмотреть.....


Да, "стерся" web-сайт до непристойности. Надеюсь, что создателю USB осциллографа его детище принесло такой доход, что он сейчас на лазурном берегу в окружении прекрасных девушек...

Еще осталась ссылка на USB Осциллограф на сайте дистрибьютера Silabs в России. А вот сам архив с Э3, PCB и ПО для этого осциллографа остался на форумах и у меня где-то на жестком диске.
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Mar 17 2008, 19:43
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Дальнейшее развитие темы в этом топике форума
Go to the top of the page
 
+Quote Post
Andy Great
сообщение Mar 18 2008, 08:37
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 793
Регистрация: 5-11-04
Из: Краматорск, Украина
Пользователь №: 1 057



Цитата(Konst_777 @ Sep 26 2007, 18:13) *
Еще осталась ссылка на USB Осциллограф на сайте дистрибьютера Silabs в России. А вот сам архив с Э3, PCB и ПО для этого осциллографа остался на форумах и у меня где-то на жестком диске.

Вот здесь оно. И здесь. И здесь.
Go to the top of the page
 
+Quote Post

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

 


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


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