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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
Shivers
сообщение Aug 29 2011, 14:50
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Цитата(Putnik @ Aug 29 2011, 17:42) *
Есть проект(микропроцессор), у него есть внутрисхемный отладчик, для отладки программ. А именно чтение/запись памяти, регистров, точки останова и прочее.
Доступ к этому отладчику(транспорт) осуществляется через жтаг (tck/tms/tdi/tdo сигналы), эти сигналы заводим на ПЛИС.

Свой процессор? Что то много вскорости отечественных процессоров народится, чувствую.
Могу только сказать, каким путем пошли некоторые другие "разработчики процессоров" в РФ - встроили E-Jtag для отладки, говорят что очень удобно для таких задач, хотя монстр тот еще. Для отладки в ПЛИС он по отдельному порту доступен, разумеется, а в силиконе - к общему тап контроллеру привязан.
Go to the top of the page
 
+Quote Post
XVR
сообщение Aug 29 2011, 17:45
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Сделать в ПЛИСине 2й TAP JTAG'а и подсоединить его последовательно со встроенным JTAG'ов (в цепочку) невозможно. При таком включении вы не сможете прошить ПЛИС, т.к. до загрузки прошивки ваш самопальный TAP не будет работать, а значит и JTAG цепочка окажется разорванной.

Подключиться изнутри к JTAG пинам ПЛИС скорее всего можно. Я вижу 2 варианта (с Альтерой не работал, так что за их реализуемость не поручусь).

1. Объявить TMS/TCK/TDI/TDO пользовательскими ногами после конфигурирования, и посадить на них свой JTAG в прошивке. ПЛИС должна поддерживать возможность отдать JTAG ноги прошивке (Xilinx например умеет, насколько я помню)

2. Забрать ноги JTAG'а через virtual_jtag. Опять же, мегафункция должна это поддерживать. (Xilinx умеет это частично, TDO он не отдаст. Т.е. для ваших целей - не умеет)

Go to the top of the page
 
+Quote Post
_pv
сообщение Aug 30 2011, 08:57
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(Stewart Little @ Aug 29 2011, 20:20) *
Через USB-Blaster, как указал уважаемый iosifk, это сделать весьма проблематично, т.к. Altera никому не дает описания API jtagserver'а.
Еще можно попробовать работать с JTAG'ом не через альтеровский бластер, а использовать что-нибудь типа FT232H или FT2232H (MPSSE в режиме JTAG - на сайте у FTDI есть примеры).

можно и с blaster'om самому работать, там же внутри тот же самый ft245 (fifo) и мелкая плисина которая прилетающие байты разбирает и соответственно ногами jtaga дергает. Протокол там не сказать чтобы сложный (описание тут), а то что лежит в папке quartus\drivers\usb-blaster\ - так просто переименованные драйвера D2XX от ftdi.

Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 30 2011, 12:06
Сообщение #19


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Putnik @ Aug 29 2011, 16:16) *
Вы все правильно поняли, нужно для отладки микропроцессорной системы в ПЛИС

Кстати, а Вы софт-симулятор для Вашего процессора сделали? Мне, например, это сильно помогло при отладке.
И что за процессор у Вас?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Putnik
сообщение Aug 30 2011, 12:17
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 4-09-07
Из: Зеленоград
Пользователь №: 30 272



Цитата(iosifk @ Aug 30 2011, 16:06) *
Кстати, а Вы софт-симулятор для Вашего процессора сделали? Мне, например, это сильно помогло при отладке.
И что за процессор у Вас?

Программный симулятор есть.
Встроенный(внутрисхемный) отладчик нужен для отладки программ на живом железе, на симуляторе не все возможно реализовать, а если возможно, то встает проблема верификации симулятора.

Архитектур процессоров 2, собственной разработки, с уникальными системами команд.
Ссылка



--------------------
за Навального!
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Aug 30 2011, 20:04
Сообщение #21


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Так если у вас хватило терпения нарисовать целиком две архитектуры, то может быть и отладочный интерфейс к ним можно нарисовать свой собственный, и не привязывать его к альтеровскому JTAG'y? Ну и, кроме того, появляется возможность вообще управлять интерфейсом отладочного модуля, хоть JTAG, хоть SPI или 2-wire, а то и вовсе 1-wire протокол прикрутить для компактных вариантов корпусов типа QFN.
Go to the top of the page
 
+Quote Post
Putnik
сообщение Aug 30 2011, 20:33
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 4-09-07
Из: Зеленоград
Пользователь №: 30 272



Цитата(Hoodwin @ Aug 31 2011, 00:04) *
Так если у вас хватило терпения нарисовать целиком две архитектуры, то может быть и отладочный интерфейс к ним можно нарисовать свой собственный, и не привязывать его к альтеровскому JTAG'y? Ну и, кроме того, появляется возможность вообще управлять интерфейсом отладочного модуля, хоть JTAG, хоть SPI или 2-wire, а то и вовсе 1-wire протокол прикрутить для компактных вариантов корпусов типа QFN.

Дык, он и есть свой собственный, и в Хилых плисках так же работает.
Пока вот только не получается через usb-blaster его на специализированных ногах TMS/TCK/TDI/TDO запустить. Пробовал к sld_virtual_jtag подключаться нашим контроллером JTAG используя только эти 4 сигнала, бросив все остальные. не работает - в цепочке только альтера после прошивки, хотя в Technology Map и файлике с пинами видно что к ящику макрофункции заходят TMS/TCK/TDI/TDO с правильных ножек ПЛИС а выходят на мой блок. копаю дальше..


--------------------
за Навального!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 3rd July 2025 - 07:13
Рейтинг@Mail.ru


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