Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: xapp1052 и chipscopepro
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > ISA/PCI/PCI-X/PCI Express
kstk
Скачал xapp1052 с примером, поставил драйвер из примера, собрал проект: ядро + dma из примера(как сказано в xapp1052) + chipscopepro, прогрузил кристалл, плата прекрасно опознается, запускаю приложение для обмена паттернами по PCI Express, в chipscopepro на transaction interface(что на trn_rd, что на trn_td) наблюдаю одинаковые пакеты, состоящие из 3 64-битных словофреймов(в соотвествии со всеми управляющими сигналами типа start_of_frame, end_of_frame, сигналами готовности):
730000010000007F
0000808600000080
84000000083AC28F
следующих один за другим. Payload, судя по принятому пакету - 1, хотя программа отсылает/принимает 32. Да и сам тип пакета - Message Request - так и дожно быть или я чего-то не понимаю? Отличие между пакетами только в последнем DWORD-e. Глубина данных в chipscopepro стоит 1024 сэмплов, на картинке в даташите обмен нормальными пакетами виден при меньшей глубине.
Помогите разобраться, что я делаю не так?
dmitry-tomsk
Цитата(kstk @ Dec 28 2009, 14:52) *
Скачал xapp1052 с примером, поставил драйвер из примера, собрал проект: ядро + dma из примера(как сказано в xapp1052) + chipscopepro, прогрузил кристалл, плата прекрасно опознается, запускаю приложение для обмена паттернами по PCI Express, в chipscopepro на transaction interface(что на trn_rd, что на trn_td) наблюдаю одинаковые пакеты, состоящие из 3 64-битных словофреймов(в соотвествии со всеми управляющими сигналами типа start_of_frame, end_of_frame, сигналами готовности):
730000010000007F
0000808600000080
84000000083AC28F
следующих один за другим. Payload, судя по принятому пакету - 1, хотя программа отсылает/принимает 32. Да и сам тип пакета - Message Request - так и дожно быть или я чего-то не понимаю? Отличие между пакетами только в последнем DWORD-e. Глубина данных в chipscopepro стоит 1024 сэмплов, на картинке в даташите обмен нормальными пакетами виден при меньшей глубине.
Помогите разобраться, что я делаю не так?

Да скорее всего триггер в чипскопе не на те условия, вот и ловит системные сообщения. А зачем понадобилось смотреть чипскопом пакеты? Что-то не работает?
kstk
Цитата(dmitry-tomsk @ Dec 28 2009, 21:30) *
Да скорее всего триггер в чипскопе не на те условия, вот и ловит системные сообщения. А зачем понадобилось смотреть чипскопом пакеты? Что-то не работает?

А на какие условия лучше триггер ставить, чтобы ловить то, что нужно?
Чипскоп - можно сказать, первые шаги для отработки самописного драйвера и дальнейшего описания устройства в кристалле. А то у нас тут даже ядра не хотят собираться под 11 Исой, только под 10 отчего-то.
dmitry-tomsk
Цитата(kstk @ Dec 29 2009, 11:02) *
А на какие условия лучше триггер ставить, чтобы ловить то, что нужно?
Чипскоп - можно сказать, первые шаги для отработки самописного драйвера и дальнейшего описания устройства в кристалле. А то у нас тут даже ядра не хотят собираться под 11 Исой, только под 10 отчего-то.

условия на _sof сигнал и старшие биты данных при sof = 0, старшие биты 1-го слова равны 0 для чтения памяти, 1 - для записи (смотрите сами состав tlp пакета)
kstk
Цитата(dmitry-tomsk @ Dec 29 2009, 19:21) *
условия на _sof сигнал и старшие биты данных при sof = 0, старшие биты 1-го слова равны 0 для чтения памяти, 1 - для записи (смотрите сами состав tlp пакета)

Нашел данные, но в виде пакетов CplD, всвязи с этим возник вопрос. Раз есть completion с данными, стало быть должен быть request. Данные CplD присуствуют на шине trn_rd, т.е. передаются от ядра к пользовательскому приложению(в кристалле), стало быть приложение(в чипе) должно высылать ровно такое же количество запросов Mrd, сколько присутствует подтверждений CplD и высылать оно должно их по шине trn_td. Тогда, может, подскажете мне, как такое происходит, если посылку пакетов я инициирую с приложения из под виндовса на компьютере? Т.е. - запускаю приложение из под виндовса(от ксайлинкса из примера), ставлю крыжик Read, давлю кнопку Start и наблюдаю на trn_rd пакеты CplD с отосланными данными.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.