|
|
  |
Virtex-4 вывод данных через JTAG автоматизированно |
|
|
|
Apr 21 2016, 06:47
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 19-09-12
Пользователь №: 73 602

|
Здравствуйте!\ В продолжение данного топика: http://electronix.ru/forum/index.php?showtopic=134655Есть Virtex-4, к которому подключена микросхема АЦП через параллельный интерфейс. Есть ISE 14.7. Также установлена Vivado 2015.4 WebPack. Я могу снимать сэмплы с АЦП в ChipScope, сохранять их в текстовом файле и скармливать Матлабу. Но, судя по всему: https://forums.xilinx.com/t5/Design-Tools-O...line/td-p/42684эта процедура не поддается автоматизированию, поскольку нет возможности настраивать триггеры и экспортировать данные из коммандной строки ( используя Tcl-скрипт ). Возможно ли это в ISE 14.7 каким-либо другим способом, чтобы можно было это проделывать просто запуская батник? Задача - сохранять те же 8 КБ сэмплов АЦП, но автоматизированно! Чтобы инженер на производстве мог это проделать двойным щелчком по батнику? Посоветуйте пожалуйста!
|
|
|
|
|
Apr 21 2016, 08:03
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 19-09-12
Пользователь №: 73 602

|
Цитата(iosifk @ Apr 21 2016, 10:48)  Передача данных из проекта пользователя через JTAG - не проблема. Но придется написать свой софт и встроить в проект кусок чего-то, похожего на DMA... Написать софт для ПК и прошивку ПЛИС? Если для ПК, то какие утилиты, скрипты данный софт должен задействовать? На ПЛИСке какие ядра задействовать? Распишите пожалуйста подробнее. Таким образом я могу залить прошивку в ПЛИС: >xtclsh.exe csefpga_example1.tcl 1 blinky.bit -usb А дальше как вычитать состояние сигналов ПЛИСки?
|
|
|
|
|
Apr 21 2016, 08:12
|

я только учусь...
     
Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839

|
Цитата(Almaz1988 @ Apr 21 2016, 09:47)  Здравствуйте!\ В продолжение данного топика: http://electronix.ru/forum/index.php?showtopic=134655Есть Virtex-4, к которому подключена микросхема АЦП через параллельный интерфейс. Есть ISE 14.7. Также установлена Vivado 2015.4 WebPack. Я могу снимать сэмплы с АЦП в ChipScope, сохранять их в текстовом файле и скармливать Матлабу. Но, судя по всему: https://forums.xilinx.com/t5/Design-Tools-O...line/td-p/42684эта процедура не поддается автоматизированию, поскольку нет возможности настраивать триггеры и экспортировать данные из коммандной строки ( используя Tcl-скрипт ). Возможно ли это в ISE 14.7 каким-либо другим способом, чтобы можно было это проделывать просто запуская батник? Задача - сохранять те же 8 КБ сэмплов АЦП, но автоматизированно! Чтобы инженер на производстве мог это проделать двойным щелчком по батнику? Посоветуйте пожалуйста! Почему не хотите использовать интерфейсы UART или SPI через USB переходник (например FTDI)? Написать ПО для ПК и сделать схему в ПЛИС, которая по команде с ПК передаст нужное количество байт/ слов/семплов. Только их предварительно сохранить в отдельной блочной памяти
--------------------
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
|
|
|
|
|
Apr 21 2016, 08:14
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 19-09-12
Пользователь №: 73 602

|
Цитата(Maverick @ Apr 21 2016, 11:12)  Почему не хотите использовать интерфейсы UART или SPI через USB переходник (например FTDI)?
Написать ПО для ПК и сделать схему в ПЛИС, которая по команде с ПК передаст нужное количество байт/слов/семплы ТУ методики испытаний регламентируют использование строго JTAG. Насколько это оправдано/юзабельно/адекватно - не знаю. Меня поставили перед фактом, мол менять ТУ - очень хлопотно.
|
|
|
|
|
Apr 21 2016, 13:11
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Прветствую! Странно Цитата(Almaz1988 @ Apr 21 2016, 09:47)  ... эта процедура не поддается автоматизированию, поскольку нет возможности настраивать триггеры и экспортировать данные из коммандной строки ( используя Tcl-скрипт ). .. Так как например Код open_hw_target current_hw_device [lindex [get_hw_devices] 0] refresh_hw_device [lindex [get_hw_devices] 0]
set ila_obj [get_hw_ilas -of_objects [get_hw_devices xcku040_0] -filter {CELL_NAME=~"u_ila_0"}]]
set_property TRIGGER_COMPARE_VALUE eq1'b0 [get_hw_probes i_adc_prc/i_pkt_ctrl/enable_i -of_objects $ila_obj
run_hw_ila $ila_obj wait_on_hw_ila $ila_obj
set hw_data [upload_hw_ila_data $ila_obj] display_hw_ila_data $hw_data write_hw_ila_data -csv_file -force hw_data.csv $hw_data Прекрасно справляется с требуемой задачей в Vivado 2015.4 Смотрите manual по tcl ну и естественно можно потыкав мышкой в GUI аналайзера использовать для образца вывод команд из tcl Console Упехов! Rob. P.S. Упс - проглядел что это нужно для старого ChipScope
|
|
|
|
|
Apr 25 2016, 07:19
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 19-09-12
Пользователь №: 73 602

|
Цитата(RobFPGA @ Apr 21 2016, 16:11)  Прветствую! Странно Так как например Код open_hw_target current_hw_device [lindex [get_hw_devices] 0] refresh_hw_device [lindex [get_hw_devices] 0]
set ila_obj [get_hw_ilas -of_objects [get_hw_devices xcku040_0] -filter {CELL_NAME=~"u_ila_0"}]]
set_property TRIGGER_COMPARE_VALUE eq1'b0 [get_hw_probes i_adc_prc/i_pkt_ctrl/enable_i -of_objects $ila_obj
run_hw_ila $ila_obj wait_on_hw_ila $ila_obj
set hw_data [upload_hw_ila_data $ila_obj] display_hw_ila_data $hw_data write_hw_ila_data -csv_file -force hw_data.csv $hw_data Прекрасно справляется с требуемой задачей в Vivado 2015.4 Смотрите manual по tcl ну и естественно можно потыкав мышкой в GUI аналайзера использовать для образца вывод команд из tcl Console Упехов! Rob. P.S. Упс - проглядел что это нужно для старого ChipScope Спасибо за скрипт для Vivado) Vivado хорош. Жаль, что в ISE нет инструментов работы с ILA core. Попробовал снимать логи, запустив Microblaze, но он слишком медленнен и не успевает снимать сэмплы с необходимой частотой... Даже не знаю что теперь делать. Цитата(FakeDevice @ Apr 22 2016, 00:39)  Иногда возможно просто обойти ворота. Например, использовать какую-либо нехитрую программу отслеживания действий пользователя с возможностью их воспроизведения. Навскидку -- xStarter. Возможно, существует что-то более подходящее для Ваших задач. http://www.xstarter.com/rus (см. пункт "Макросы Windows") Не хотелось бы крутить подобные костыли) Если только в самом крайнем случае)
Сообщение отредактировал Almaz1988 - Apr 25 2016, 07:22
|
|
|
|
|
Apr 27 2016, 13:06
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 19-09-12
Пользователь №: 73 602

|
Цитата(iosifk @ Apr 25 2016, 10:59)  Зачем Вам процессор? Вполне хватит автомата, чтобы "зарядить" DMA и передавать данные в JTAG... Либо сразу сделать DMA с фиксированными "откуда, куда и сколько"... По JTAGу его будете запускать и далее просто будете читать данные. Либо по JTAGу будете назначать адрес "откуда" и потом будете читать данные блоками... Честно говоря, по вашим статьям не понял как они применимы в моем случае.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|