|
USB Blaster V2, кто-нибудь юзал? |
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 30)
|
Oct 20 2016, 06:29
|
Местный
  
Группа: Свой
Сообщений: 279
Регистрация: 2-07-08
Из: Новосибирск
Пользователь №: 38 699

|
Цитата(rat @ Oct 20 2016, 11:00)  День добрый. На новом месте работы озаботился USB Blaster-ом для работы с Альтеровскими ПЛИС. По цене приемлимо выглядит http://www.waveshare.com/usb-blaster-v2.htm . Кто-нибудь юзал? Можно такой брать? С большой вероятностью внутри или FT245, или МК с USB интерфейсом. JTAG организуется софтово, больших скоростей (и надежности работы) вряд ли удастся достичь (сужу по китайским клонам). Если покупаете для работы, рекомендую UBR Iso (клон оригинального альтеровского программатора + гальваноразвязка), он на порядок дороже, но на два порядка лучше.
|
|
|
|
|
Oct 20 2016, 13:29
|

Лентяй
     
Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843

|
И таки да, "V2" в названии сего изделия может ввести в заблуждение. Это клон обычного USB Blaster'а (а не USB Blaster II). А хотелось бы иметь именно клон USB Blaster II - это машинка куда как посерьезнее означенного поделия. Ну, даст Бог - сделаем  Цитата(Dima_G @ Oct 20 2016, 09:29)  С большой вероятностью внутри или FT245, или МК с USB интерфейсом. Если глянуть по указанной ссылке, то там написано "FT245 + CPLD". Т.е. вариант штатный.
--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
|
|
|
|
|
Oct 20 2016, 20:49
|

Лентяй
     
Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843

|
Цитата(Flood @ Oct 20 2016, 23:11)  А чем хорош (оригинальный) USB Blaster II по сравнению с (оригинальным) USB Blaster? 1. Быстрый (USB 2.0 High Speed) 2. Позволяет управлять частотой TCK. 3. Позволяет прошивать в ПЛИС ключи для дешифровки криптованной прошивки (ekp-файлы). + для совместной отладки SoC'ов рекомендуют именно его.
--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
|
|
|
|
|
Oct 22 2016, 14:47
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(dvladim @ Oct 22 2016, 17:00)  Если можно, поясните пожалуйста этот пункт. Просто я всегда считал, что JTAG это DRSCAN и IRSCAN, а всё остальное дело команд и их интерпитации. Т.е. от железа не зависит. Цитата After issuing the VOL_KEY_LOCK instruction, the controller cycles the JTAG state machine to the RTI state and waits in this state for 10 μs. After a minimum of 10 μs in RTI, the controller cycles the JTAG state machine to test logic reset. The device must be reconfigured for the volatile key lock fuse to take effect.
After issuing the VOL_KEY_SECURE instruction, the controller cycles the JTAG state machine to the RTI state and waits in this state for 10 μs. After a minimum of 10 μs in RTI, the controller cycles the JTAG state machine to test logic reset. You must reconfigure the device for the volatile key secure fuse to take effect. Для программирования постоянных ключей (NonVolatile) и фьюзов необходимо строго выдерживать тайминги при записи, как в старых ЭСПЗУ. В новых бластерах есть возможность менять частоту клока TCK при обмене по JTAG. Устанавливается частота 100 кГц. Подробности в an680.
|
|
|
|
|
Oct 24 2016, 14:16
|

Лентяй
     
Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843

|
Цитата(rat @ Oct 24 2016, 04:37)  UPD. Конкретно интересует возможность работы USB Blaster V2 с Cyclone IV. Ну, тут все зависит от того, что подданные Поднебесной в этот бластер запихнули  Скорее всего работать будет. JTAG - он и в Африке в Cyclone IV JTAG.
--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
|
|
|
|
|
Oct 26 2016, 13:33
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(dvladim @ Oct 25 2016, 23:00)  когда подаёшь длинный DRSCAN (именно одним куском), то где-то посередине данные сбиваются. Легко проверяется на BYPASS. Вполне может также быть проявлением плохого Signal Integrity. Сбивается всегда одинаково (в одном и том же месте, искажения всегда одни и те же?) Цитата(jks @ Oct 22 2016, 17:47)  Для программирования постоянных ключей (NonVolatile) и фьюзов необходимо строго выдерживать тайминги при записи, как в старых ЭСПЗУ. Цитата After a minimum of 10 μs in RTI, the controller cycles the JTAG state machine to test logic reset. Строгость какая-то ... нестрогая  Поддержать подобное требование даже в фирменном USB Blaster (I) и его клонах на FT245+CPLD, где fTCK фиксированная - вопрос скорее желания [программистов и маркетинговых людей], чем физической возможности. А за наводку на AN - спасибо (не попадало как-то в поле зрения).
|
|
|
|
|
Oct 26 2016, 14:44
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(Raven @ Oct 26 2016, 16:33)  Строгость какая-то ... нестрогая  Поддержать подобное требование даже в фирменном USB Blaster (I) и его клонах на FT245+CPLD, где fTCK фиксированная - вопрос скорее желания [программистов и маркетинговых людей], чем физической возможности. А за наводку на AN - спасибо (не попадало как-то в поле зрения).
из AN556 - p9. Сложно сказать насколько это жесткие требования. Но если частоту фиксировать на 100кГц, то трудно будет работать с СигналТапом и прошивать долго. Можно конечно выделить для прошивания ключей отдельный программатор. В штатном варианте квартус меняет частоту клока динамически при конфигурации бластера. Это надо подшаманить драйвер бластера чтобы он менял частоту. Наводка: jtagconfig --setparam JtagClock 1 100000 // установить jtagconfig --getparam JtagClock 1 // получить значение параметра У марсоходовского драйвера похоже нет такой функциональности. Но если есть желание, то можно подсобить. ПС: А вообще думаю, что пора уже замахнуться на USBlaster III на USB3.0. Концептуально многопортовый JTAG до 100МГц, с возможностью прошивать FPPx8/x16. Ну и параллельные порты или LVDS туда/сюда для подключения к плисине для закачивания/выкачивания данных. А то по JTAG на малой скорости работать не всегда комильфо. Народный такой демократический вариант.
|
|
|
|
|
Oct 26 2016, 15:39
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
AN-556, p.5 содержит краткое, но емкое описание как причин текущего положения дел, так и перспектив: Цитата (9) USB-Blaster support only volatile key programming except in 20-nm FPGAs, where it supports both volatile and non-volatile key programming. (10) For non-volatile key programming, you must regulate the JTAG TCK pulse width (period) for proper polyfuse programming. Т.е., первые варианты исполнения (до-20nm) имеют жесткую зависимость процесса программирования от продолжительности периода TCK, а последние и, думается, все последующие (20nm FPGA - это, как я понял, Arria 10) - от этой жесткой зависимости освобождены. Внутренний контроллер, видимо, сам генерирует импульс правильной продолжительности и не рассчитывает на такую ненадежную субстанцию, как TCK period. И он прав. Цитата А вообще думаю, что пора уже замахнуться на USBlaster III на USB3.0. Э-э-х, батенька, это как раз тот случай, когда не надо бежать впереди паровоза (то бишь, Alter'ы). Программную совместимость с Кактусом как вы думаете всему этому добру обеспечивать? Вот если бы Altera выпустила бы что-нибудь наподобие XVCD protocol specification, как у Хилых, тогда.... Мечты, мечты... :-)
|
|
|
|
|
Oct 26 2016, 16:14
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(Raven @ Oct 26 2016, 18:39)  AN-556, p.5 содержит краткое, но емкое описание как причин текущего положения дел, так и перспектив: Т.е., первые варианты исполнения (до-20nm) имеют жесткую зависимость процесса программирования от продолжительности периода TCK, а последние и, думается, все последующие (20nm FPGA - это, как я понял, Arria 10) - от этой жесткой зависимости освобождены. Внутренний контроллер, видимо, сам генерирует импульс правильной продолжительности и не рассчитывает на такую ненадежную субстанцию, как TCK period. И он прав.
Э-э-х, батенька, это как раз тот случай, когда не надо бежать впереди паровоза (то бишь, Alter'ы). Программную совместимость с Кактусом как вы думаете всему этому добру обеспечивать? Вот если бы Altera выпустила бы что-нибудь наподобие XVCD protocol specification, как у Хилых, тогда.... Мечты, мечты... :-) 20нм и 14нм архитектура видимо "слишком другая", там похоже все сложно достаточно с безопасностью. Еще одна причина перехода на низкую частоту это защита от неправильной записи NonVolatile ключа. На сколько я понял протокол записи ключа ключ обратно не вычитывается и если при записи произойдет сбой, то получится кирпич. Можно прочитать только регистр состояния. По-поводу программной совместимости с кактусом, то протокол условно открытый за исключением авторских прав, сейчас не-понятно кому принадлежащих. Возможно Интел что-то приоткроет  . А если нет, то существует демократический способ. Тут вопрос надо ли это кому-то. Сейчас есть шаблон драйвера под win64/win32, под linux не проверял еще.
|
|
|
|
|
Oct 26 2016, 16:44
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(Raven @ Oct 26 2016, 22:39)  Цитата А вообще думаю, что пора уже замахнуться на USBlaster III на USB3.0. Э-э-х, батенька, это как раз тот случай, когда не надо бежать впереди паровоза (то бишь, Alter'ы). Программную совместимость с Кактусом как вы думаете всему этому добру обеспечивать? ну на http://marsohod.org вон свой программатор mbftdi как-то в кактус запилили. и там тупо ft2232h, без дополнительной цплд, ибо преобразовывать USB в последовательный интерфейс сама умеет в отличии от ft245 в оригинальном первом бластере. и толку от USB3? ограничения на частоту TCK начнутся гораздо раньше чем закончится пропускная способность high speed USB2. даже для FPP, 30-40МБайт/с не особо-то ограничение
|
|
|
|
|
Oct 26 2016, 18:25
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(jks @ Oct 26 2016, 19:14)  Еще одна причина перехода на низкую частоту это защита от неправильной записи NonVolatile ключа. На сколько я понял протокол записи ключа ключ обратно не вычитывается и если при записи произойдет сбой, то получится кирпич. Можно прочитать только регистр состояния. Вот поэтому в Альтере и сообразили, что негоже такую чувствительную вещь ставить в зависимость от TCK period'а, генерируемого устройством, зависящим от USB (который далеко не верх надежности). Пользователь, хоть, может, и сам виноват в сбое, и даже сам это понимает, но понесет по жизни негатив об Альтере (если чип стоимостью несколько килобаксов превратился в кирпич). Оно Альтере нужно? Когда можно добавить небольшой контроллер на N килогейт, и решить проблему. Цитата(jks @ Oct 26 2016, 19:14)  По-поводу программной совместимости с кактусом, то протокол условно открытый за исключением авторских прав, сейчас не-понятно кому принадлежащих. ... Сейчас есть шаблон драйвера под win64/win32, под linux не проверял еще. А вот это что-то новенькое. Протокол аппаратной части действительно хорошо известен со времен немца Коли, а вот API DLL'ки, более или менее задокументированного, я пока не встречал. Не поделитесь? Цитата(_pv @ Oct 26 2016, 19:44)  ну на http://marsohod.org вон свой программатор mbftdi как-то в кактус запилили. и там тупо ft2232h, без дополнительной цплд, ибо преобразовывать USB в последовательный интерфейс сама умеет в отличии от ft245 в оригинальном первом бластере. Свою DLL-ку написали, предварительно похатчив оригинал. Это, конечно, самый правильный путь, т.к. открывает самые широкие перспективы (потому у меня и возник интерес - см. выше). Вопрос только в точности вскрытия API. Кстати, а они где-нибудь этой информацией с широкой общественностью делились?
|
|
|
|
|
Oct 26 2016, 18:56
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(_pv @ Oct 26 2016, 21:27)  а вот тут как раз имхо и будут грабли с инеграцией этого велосипеда (не через JTAG), в квартус, хотя, возможно, и решаемые. Само собой, для такой масштабной задумки плясать следует от программного интерфейса. Когда я говорил про бег впереди паровоза, именно это я и имел в виду. Что не может быть поддержано в рамках известного API - лучше без особой нужды не мутить.
|
|
|
|
|
Oct 26 2016, 20:05
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(_pv @ Oct 26 2016, 22:53)  исходники-то ладно, а вот описание того, что должна вернуть get_supported_hardware() вы где взяли? Начиная где-то с 11 версии лежит в папке исполняемыми файлами. Не совсем в открытом виде, но разобраться можно и Альтера этому способствует. как-то так.
alt_jtag_hw.zip ( 2.56 килобайт )
Кол-во скачиваний: 80
Сообщение отредактировал jks - Oct 27 2016, 08:01
|
|
|
|
|
Oct 27 2016, 13:47
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(jks @ Oct 26 2016, 23:05)  Начиная где-то с 11 версии лежит в папке исполняемыми файлами. Не совсем в открытом виде, но разобраться можно и Альтера этому способствует. Похоже, я далеко не в танке  Под рукой Q13SP1, ничего похожего на файл с таким или подобным именем не нашел во всем поддереве. Видимо, совсем не в открытом виде :-) Или это только в Q11 было?
|
|
|
|
|
Oct 27 2016, 14:04
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Цитата(Raven @ Oct 27 2016, 16:47)  Похоже, я далеко не в танке  Под рукой Q13SP1, ничего похожего на файл с таким или подобным именем не нашел во всем поддереве. Видимо, совсем не в открытом виде :-) Или это только в Q11 было? Этот файл это продукт интерпретации. Я имел ввиду файлы с расширением *.pdb для 32 битной версии. Там информации более чем достаточно. Надеюсь что не открыл страшной тайны. Вообще я был уверен, что эна инфа уже давно находится Центральном Хранилище Артефактов, раз на марсоходе драйвера с 2011 года лежат. Я доступа туда не имею пока пэтому не знаю что там и как.
|
|
|
|
|
Oct 27 2016, 14:15
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(jks @ Oct 27 2016, 02:05)  Начиная где-то с 11 версии лежит в папке исполняемыми файлами. Не совсем в открытом виде, но разобраться можно и Альтера этому способствует. за файлик спасибо. но често говоря, в известное место такое способствование со стороны альтеры. я конечно понимаю что им на средствах отладки тоже очень хочется подзаработать, продавая переходники на ftdi за сотни у.е., много кто так делает, но вообще это свинство. не так давно разбирался с использованием jtag-uarta из своей программы, а не через nios2-terminal (через него как-то всё настолько медленно и печально было). осталась масса "положительных" эмоций, хотя там оно ещё относительно незакрыто и даже исходники кое-какие найти можно.
|
|
|
|
|
Oct 28 2016, 13:29
|
Местный
  
Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987

|
Цитата(jks @ Oct 27 2016, 17:04)  Этот файл это продукт интерпретации. Я имел ввиду файлы с расширением *.pdb для 32 битной версии. Там информации более чем достаточно. Надеюсь что не открыл страшной тайны. Так и есть - не в танке я :-). Ну, не занимался я пока всерьез программным RE,- потому про *.pdb и не в курсе. Теперь уже поспрашивал у знающих людей и стало ясно, что это такой, можно сказать, эксгибиционизм Altera. Формально вроде документы/исходники не выкладывали, но для понимающих (тех, кто "в танке", уж извините, закончу с этим идиоматическим выражением :-)) они содержат массу информации о внутреннем устройстве программных модулей. Тем не менее, за вашим маленьким файликом стоит большая работа, так что - респект и большое спасибо. Цитата(jks @ Oct 27 2016, 17:04)  Вообще я был уверен, что эна инфа уже давно находится Центральном Хранилище Артефактов, раз на марсоходе драйвера с 2011 года лежат. Может, даже и лежит. Но там столько всего, и не всегда оно лежит в очевидном именно для вас месте... Так что аналогия с Хранилищем из "Индианы Джонса" вполне обоснованна :-). Цитата В результате сейчас пользую blaster через Альтеровскую либу jtag_client. Там есть полный функционал. И можно писать переносимое ПО под Win/Linux. Еще бОльшая уважуха и респект. Цитата Была идея JLink с родным драйвером подключить, чтобы разъемы не переставлять каждый раз. Не знаю насколько имеет смысл выкаладывать в открытый доступ либу и описание работы с ней? В открытый ли доступ - это, конечно, вам решать. Но лично мне это было бы интересно.
|
|
|
|
|
Nov 4 2016, 10:34
|
Местный
  
Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084

|
Не стал создавать отдельную тему. Но правильней наверное было бы разместить куда-нибудь в раздел САПР. Undocumented Quartus? Исходный код модуля драйвера под Win32/Win64 и небольшой пример по использованию библиотеки jtag_client. Компиилируется под MSVS.
jtag_hw_sample.zip ( 176.7 килобайт )
Кол-во скачиваний: 106
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|