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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Разработка PCIe, на чем поднять PCIe
NikSave
сообщение Jun 20 2015, 06:15
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592



Все добрый день.
Понимаю, что тема не нова, но тем неменее.
Есть желание сделать устройство управляемое по PCIExpress. А отсуда возникает ряд вопросов:
Что использовать ПЛИС или готовый контроллер?
Если ПЛИС, то нужны ли какие либо покупные ядра? Насколько сделать на плис трудоемко и гемморойно?
Если микросхему контроллера, то посоветуйте какую (название) желательно чтобы были стандартные драйвера.
Заранее спасибо за ответы.
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jun 20 2015, 06:30
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(NikSave @ Jun 20 2015, 09:15) *
Что использовать ПЛИС или готовый контроллер?
Если ПЛИС, то нужны ли какие либо покупные ядра?

Делал на ПЛИС, ml605 board. Использовал стандартное ядро. На ПК работал с крякнутым windrive.
Go to the top of the page
 
+Quote Post
NikSave
сообщение Jun 20 2015, 06:49
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592



Цитата(farbius @ Jun 20 2015, 09:30) *
Делал на ПЛИС, ml605 board. Использовал стандартное ядро. На ПК работал с крякнутым windrive.


что за стандартное ядро? В ИСЕ вроде ядра конечных точек платные? или к данной плате было бесплатным?
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jun 20 2015, 07:44
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(NikSave @ Jun 20 2015, 09:49) *
что за стандартное ядро? В ИСЕ вроде ядра конечных точек платные? или к данной плате было бесплатным?

Собирал в XPS. А потом добавлял в PLAN ahead. У меня задача была обмен данными плата-пк
Go to the top of the page
 
+Quote Post
NikSave
сообщение Jun 20 2015, 10:54
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592



Цитата(farbius @ Jun 20 2015, 10:44) *
Собирал в XPS. А потом добавлял в PLAN ahead. У меня задача была обмен данными плата-пк

Впринципе у меня та же задача. Записать в регистр, прочитать из регистра.
Как по Вашему? Было геморойно разобраться? Может стоит сделать на какой либо микросхеме контроллере?
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jun 20 2015, 14:01
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(NikSave @ Jun 20 2015, 13:54) *
Впринципе у меня та же задача. Записать в регистр, прочитать из регистра.
Как по Вашему? Было геморойно разобраться? Может стоит сделать на какой либо микросхеме контроллере?

В XPS все довольно просто: собирается проект где мастер pcie, слейв например leds. Мапировал leds на bar pcie. На ПК запускал программу pcie tree , с её помощью зажигал диоды на плате.
Посмотрите форум, я выкладывал даже скриншот проекта
Go to the top of the page
 
+Quote Post
gerber
сообщение Jun 20 2015, 17:20
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 750
Регистрация: 1-11-11
Пользователь №: 68 088



Цитата(NikSave @ Jun 20 2015, 10:15) *
Есть желание сделать устройство управляемое по PCIExpress. А отсуда возникает ряд вопросов:
Что использовать ПЛИС или готовый контроллер?

Посмотрите в сторону мостов с PCIe на что-либо более "удобоваримое" (PCIe bridge), на PCI или Local Bus.
А уж PCI Target много проще поднять, да и ПЛИС для PCI нужна куда более дешевая, чем для PCIe, какой-нибудь Spartan-2 вполне потянет.


--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
Go to the top of the page
 
+Quote Post
NikSave
сообщение Jun 21 2015, 06:28
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592



Цитата(gerber @ Jun 20 2015, 20:20) *
Посмотрите в сторону мостов с PCIe на что-либо более "удобоваримое" (PCIe bridge), на PCI или Local Bus.
А уж PCI Target много проще поднять, да и ПЛИС для PCI нужна куда более дешевая, чем для PCIe, какой-нибудь Spartan-2 вполне потянет.


PCI не нужен. Именно PCIe. Кстати какой мост порекомендуете? (название микросхемы, чтобы было от чего отталкиваться).
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jun 21 2015, 06:54
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(NikSave @ Jun 21 2015, 10:28) *
PCI не нужен. Именно PCIe. Кстати какой мост порекомендуете? (название микросхемы, чтобы было от чего отталкиваться).

Всё от плис зависит, какая плис то?
Go to the top of the page
 
+Quote Post
gerber
сообщение Jun 21 2015, 10:35
Сообщение #10


Знающий
****

Группа: Участник
Сообщений: 750
Регистрация: 1-11-11
Пользователь №: 68 088



Цитата(NikSave @ Jun 21 2015, 10:28) *
PCI не нужен. Именно PCIe. Кстати какой мост порекомендуете? (название микросхемы, чтобы было от чего отталкиваться).

Я использовал XIO2001 от Texas Instruments, это PCIe-PCI мост, далее ставил Spartan-2 с простейшим PCI Target, и через регистры PCI уже можно делать, что нужно. Если нет огромных потоков данных в PC, требующих мастер-режима от PCI устройства, то достаточно более чем.


--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
Go to the top of the page
 
+Quote Post
NikSave
сообщение Jun 21 2015, 13:06
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 87
Регистрация: 26-05-09
Пользователь №: 49 592



Цитата(dmitry-tomsk @ Jun 21 2015, 09:54) *
Всё от плис зависит, какая плис то?


Впринципе любая от xilinx. Ориентировочно виртекс7. Только я непонял причем здесь плис если рассматривается вариант внешней микоросхемы моста. Или вы рекомендуете сделать контроллер на плис?

Цитата(gerber @ Jun 21 2015, 13:35) *
Я использовал XIO2001 от Texas Instruments, это PCIe-PCI мост, далее ставил Spartan-2 с простейшим PCI Target, и через регистры PCI уже можно делать, что нужно. Если нет огромных потоков данных в PC, требующих мастер-режима от PCI устройства, то достаточно более чем.


А с драйвером как дела особенно под win? Имеются?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jun 21 2015, 13:23
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



На Xilinx 7-й серии всё просто, ip-ядро моста + axi central dma controller. Есть xapp по этому поводу. Там только драйвер писать надо. Зато скорость любая.
Внешний мост такую скорость не даст.
Если есть деньги, покупаете ip-ядро от plda и вообще никаких проблем не имеете.
Go to the top of the page
 
+Quote Post
gerber
сообщение Jun 21 2015, 22:08
Сообщение #13


Знающий
****

Группа: Участник
Сообщений: 750
Регистрация: 1-11-11
Пользователь №: 68 088



Цитата(NikSave @ Jun 21 2015, 17:06) *
А с драйвером как дела особенно под win? Имеются?

Для моста особый драйвер не нужен, его регистры стандартизованы спецификацией и поэтому типовой драйвер подходит.
А для своего устройства за мостом, безусловно, драйверок написать придется.


--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 22 2015, 18:33
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(farbius @ Jun 20 2015, 17:01) *
В XPS все довольно просто: собирается проект где мастер pcie, слейв например leds. Мапировал leds на bar pcie. На ПК запускал программу pcie tree , с её помощью зажигал диоды на плате.

А pcie tree будет работать только под 32-х разрядной системой?

Цитата(dmitry-tomsk @ Jun 21 2015, 16:23) *
На Xilinx 7-й серии всё просто, ip-ядро моста + axi central dma controller. Есть xapp по этому поводу. Там только драйвер писать надо. Зато скорость любая.

Есть задача, данные приходят по 10G Ethernet (используется Virtex 7) и надо их запихнуть в ПК (скорее всего под управлением Linux). Для ядра 10G Ethernet user-интерфейс - это AXI4 Stream. Что лучше в данном случае использовать: ядро AXI4 to PCIe bridge или "голое" ядро Gen3 Integrated Block for PCI Express, где интерфейсы AXI4 Stream? Пока только начинаю разбираться, буду рад совету.
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jun 22 2015, 19:45
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(doom13 @ Jun 22 2015, 21:33) *
А pcie tree будет работать только под 32-х разрядной системой?

pcie tree только для 32-х разрядной системы. Данную программу использовал исключительно для отладки PCIe моста на ПЛИС, чтобы программист мог начать работать с winDrive.

Цитата(doom13 @ Jun 22 2015, 21:33) *
Есть задача, данные приходят по 10G Ethernet (используется Virtex 7) и надо их запихнуть в ПК (скорее всего под управлением Linux). Для ядра 10G Ethernet user-интерфейс - это AXI4 Stream. Что лучше в данном случае использовать: ядро AXI4 to PCIe bridge или "голое" ядро Gen3 Integrated Block for PCI Express, где интерфейсы AXI4 Stream?


Для bridge PCIe вам необходимо будет делать переход из stream в memory mapped. Data mover вам в помощь. По поводу Gen3 Integrated Block for PCI Express сказать ничего не могу.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jun 22 2015, 19:54
Сообщение #16


Гуру
******

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



Цитата(NikSave @ Jun 20 2015, 09:15) *
Что использовать ПЛИС или готовый контроллер?
Если ПЛИС, то нужны ли какие либо покупные ядра? Насколько сделать на плис трудоемко и гемморойно?

Посмотрите ПЛИС Акроникс. В них аппаратные контроллеры интерфейсов. И они как раз для телекома подходят...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 22 2015, 20:15
Сообщение #17


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(farbius @ Jun 22 2015, 22:45) *
pcie tree только для 32-х разрядной системы. Данную программу использовал исключительно для отладки PCIe моста на ПЛИС, чтобы программист мог начать работать с winDrive.

Спасибо, думал у Вас какой-то другой pcie tree.

Цитата(farbius @ Jun 22 2015, 22:45) *
Для bridge PCIe вам необходимо будет делать переход из stream в memory mapped. Data mover вам в помощь. По поводу Gen3 Integrated Block for PCI Express сказать ничего не могу.

Спасибо. Пока читаю про AXI4 to PCIe bridge, но, возможно, Gen3 Integrated Block for PCI Express для моего случая подойдёт больше?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jun 23 2015, 05:33
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(doom13 @ Jun 22 2015, 23:15) *
Спасибо, думал у Вас какой-то другой pcie tree.


Спасибо. Пока читаю про AXI4 to PCIe bridge, но, возможно, Gen3 Integrated Block for PCI Express для моего случая подойдёт больше?

Не подойдёт, там уровень транзакций, надо пакеты формировать, чем мост и занимается. Мост к тому же мастером работает, удобно управление делать через регистры на AXI4Lite
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 24 2015, 07:13
Сообщение #19


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(dmitry-tomsk @ Jun 21 2015, 16:23) *
На Xilinx 7-й серии всё просто, ip-ядро моста + axi central dma controller. Есть xapp по этому поводу. Там только драйвер писать надо. Зато скорость любая.

Подскажите номер этого xapp.
Go to the top of the page
 
+Quote Post
toshas
сообщение Jun 24 2015, 07:58
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 372
Регистрация: 14-02-06
Пользователь №: 14 339



Цитата(doom13 @ Jun 24 2015, 10:13) *
Подскажите номер этого xapp.

xapp1171-pcie-central-dma-subsystem.pdf
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 24 2015, 08:20
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(toshas @ Jun 24 2015, 10:58) *
xapp1171-pcie-central-dma-subsystem.pdf

Спасибо.
Go to the top of the page
 
+Quote Post
EugeneS
сообщение Jun 24 2015, 12:30
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 181
Регистрация: 28-08-04
Пользователь №: 557



QUOTE (toshas @ Jun 24 2015, 10:58) *
xapp1171-pcie-central-dma-subsystem.pdf


Немного дегтя:
"To test this targeted design platform in hardware, you need a host machine capable of
PCI Express Gen1 x4, and the appropriate drivers and software that allow you to initiate
PCI Express traffic to the FPGA endpoint. The drivers and software are not provided with this
application note, and must be custom developed."

И скорость похоже не меряли.

Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 29 2015, 07:09
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Посоветуйте какую-нибудь прогу под Windows 7 x64, чтоб можно было помониторить PCIe. Чтоб была возможность писать/читать данные из памяти на плате и чтоб можно было посмотреть, что плата записала в память ПК. Есть ли такое?
Go to the top of the page
 
+Quote Post
krux
сообщение Jun 29 2015, 07:28
Сообщение #24


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



Цитата(doom13 @ Jun 29 2015, 10:09) *
Посоветуйте какую-нибудь прогу под Windows 7 x64, чтоб можно было помониторить PCIe. Чтоб была возможность писать/читать данные из памяти на плате и чтоб можно было посмотреть, что плата записала в память ПК. Есть ли такое?

rweverything


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 29 2015, 07:58
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(krux @ Jun 29 2015, 10:28) *
rweverything

Спасибо, слил и установил. Если я воткну мою плату в комп при наличии ядра PCIe-AXI bridge - она появится в перечне устройств? А как правильно задаются адреса и адреса перехода? Как система выделит адресное пространство под мою плату?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jun 30 2015, 05:45
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(doom13 @ Jun 29 2015, 10:58) *
Спасибо, слил и установил. Если я воткну мою плату в комп при наличии ядра PCIe-AXI bridge - она появится в перечне устройств? А как правильно задаются адреса и адреса перехода? Как система выделит адресное пространство под мою плату?

Поставьте jungo windriver, мастер там всё за Вас сделает.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 30 2015, 08:14
Сообщение #27


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(dmitry-tomsk @ Jun 30 2015, 08:45) *
Поставьте jungo windriver, мастер там всё за Вас сделает.

Спасибо попробуем.
Может кто пояснит правило задания параметров для PCIe:BARs и AXI:BARs для ядра AXI to PCIe bridge? Что-то никак не могу понять, как это правильно делается.
Как понимаю, для PCIe:BARs надо ещё память в системе создать, куда ядро будет писать данные полученные по PCIe или читать по запросу PCIe. Но как адрес и размер данной памяти увязать с параметрами PCIe:BARs?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 7 2015, 07:54
Сообщение #28


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(dmitry-tomsk @ Jun 30 2015, 08:45) *
Поставьте jungo windriver, мастер там всё за Вас сделает.

Немного bb-offtopic.gif . Вопрос по работе с jungo windriver. Скачал версию 10.10 + кейген и всё класно работало. После перепрошивки FPGA создавал и устанавливал свой драйвер всё работало. Если заливалась новая прошивка в ПЛИС, то сносил созданный ранее драйвер, создавал и устанавливал новый и можно было работать. Т.е. перезагрузка ПК не требовалась.
Сейчас пришлось переустановить Windows 7 и всё работает как-то совсем не так. Плата вставлена в слот PCIe, заливаю прошивку в FPGA, создаю и устанавливаю драйвер - всё работает. Если перепрошить FPGA то при чтении получаю все FFFF (т.е. ничего не читается и не пишется). Если перезагрузить комп, то всё вернётся в работоспособное состояние. Пробую снести ранее установленный драйвер, он удаляется и комп виснет (пробовал сносить из менегера устройств и windriver-визарда, виснет в обоих случаях). После ресета и создания/переустановки драйвера опять могу писать/читать память в FPGA.
Может посоветуете, что тут можно поправить, чтоб работало без перезагрузки компа? Думаю сносить и переустанавливать систему, не понятно, как раньше работало.
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jul 7 2015, 08:54
Сообщение #29


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(doom13 @ Jun 30 2015, 11:14) *
Может кто пояснит правило задания параметров для PCIe:BARs и AXI:BARs для ядра AXI to PCIe bridge? Что-то никак не могу понять, как это правильно делается.

Я все параметры оставил по умолчанию, за исключением адресов.
Для axi:bar все просто. В параметрах для адреса прописываете адреса мапируемых областей вашей axi системы (Вы так делали на скриншотах).

Цитата
Как понимаю, для PCIe:BARs надо ещё память в системе создать, куда ядро будет писать данные полученные по PCIe или читать по запросу PCIe. Но как адрес и размер данной памяти увязать с параметрами PCIe:BARs?

Создаете память физическую с начальным адресом например AddrPhys (адрес возвращает функция из драйвера windrive). Далее в соответствующие контрольные регистры моста пишете адрес следующий AddrPhys & (Buffersize - 1), где Buffersize - размер выделяемого буфера.
Если необходимо читать из PCIe:BARs с помощью ДМА, то в регистр источника ДМА пишете адрес PCIe:BAR в системе с axi + AddrPhys & (Buffersize - 1)
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 7 2015, 09:27
Сообщение #30


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(farbius @ Jul 7 2015, 11:54) *

Спасибо, тут я более-менее разобрался. С PCIe:BARs уже всё понятно и уже затестил, как работает. Остаётся проверить работу AXI:BARs, но тут, как понял, без написания драйвера не прокатит (драйвер должен выделить адреса и размеры для буферов на которые ссылаются AXI:BARs + прописать эти параметры в настройки моста).

Сейчас наиболее актуально
Цитата(doom13 @ Jul 7 2015, 10:54) *
Немного bb-offtopic.gif . Вопрос по работе с jungo windriver. Скачал версию 10.10 + кейген и всё класно работало. После перепрошивки FPGA создавал и устанавливал свой драйвер всё работало. Если заливалась новая прошивка в ПЛИС, то сносил созданный ранее драйвер, создавал и устанавливал новый и можно было работать. Т.е. перезагрузка ПК не требовалась.
Сейчас пришлось переустановить Windows 7 и всё работает как-то совсем не так. Плата вставлена в слот PCIe, заливаю прошивку в FPGA, создаю и устанавливаю драйвер - всё работает. Если перепрошить FPGA то при чтении получаю все FFFF (т.е. ничего не читается и не пишется). Если перезагрузить комп, то всё вернётся в работоспособное состояние. Пробую снести ранее установленный драйвер, он удаляется и комп виснет (пробовал сносить из менегера устройств и windriver-визарда, виснет в обоих случаях). После ресета и создания/переустановки драйвера опять могу писать/читать память в FPGA.
Может посоветуете, что тут можно поправить, чтоб работало без перезагрузки компа? Думаю сносить и переустанавливать систему, не понятно, как раньше работало.

Не знаю что делать, то ли сносить Windows и пробовать всё переустановить?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 8 2015, 06:01
Сообщение #31


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



После переустановки Windows ситуация не изменилась. Windriver устанавливает INF-файл, в системе появляется созданное устройство, но при попытке выполнить для данного INF-файла uninstall комп виснет.
Go to the top of the page
 
+Quote Post
Alexey_Rostov
сообщение Jul 8 2015, 06:22
Сообщение #32


Местный
***

Группа: Свой
Сообщений: 236
Регистрация: 28-06-13
Из: Минск, Беларусь
Пользователь №: 77 312



Цитата(doom13 @ Jul 8 2015, 09:01) *
После переустановки Windows ситуация не изменилась. Windriver устанавливает INF-файл, в системе появляется созданное устройство, но при попытке выполнить для данного INF-файла uninstall комп виснет.

Пересоберите проект, проверьте параметры ядра
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 8 2015, 06:59
Сообщение #33


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



А как это поможет? Заливаю один и тот же бинарник. После перезаливки FPGA драйвер перестаёт писать/читать память FPGA. Перезагружаю комп и работает. Вот комп каждый раз перезагружать не хочется, поэтому удаляю установленный драйвер, создаю и устанавливаю новый и работаю дальше (раньше именно так работало, пока не сломал и не переустановил систему). Сейчас при удалении драйвера комп всё время виснет, уже переставил систему, но не помогло. Т.е. если менять прошивку FPGA, то дальнейшая работа возможна только с перезагрузкой компа. Хочется как-то исправить это.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Jul 8 2015, 07:19
Сообщение #34


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(doom13 @ Jul 8 2015, 09:59) *
А как это поможет? Заливаю один и тот же бинарник. После перезаливки FPGA драйвер перестаёт писать/читать память FPGA. Перезагружаю комп и работает. Вот комп каждый раз перезагружать не хочется, поэтому удаляю установленный драйвер, создаю и устанавливаю новый и работаю дальше (раньше именно так работало, пока не сломал и не переустановил систему). Сейчас при удалении драйвера комп всё время виснет, уже переставил систему, но не помогло. Т.е. если менять прошивку FPGA, то дальнейшая работа возможна только с перезагрузкой компа. Хочется как-то исправить это.

После смены прошивки стирается конфиг пространство PCIE - прописывает его windows при загрузке, так что придётся каждый раз перезагружать
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Jul 8 2015, 07:33
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



может удалять драйвер до прошивки FPGA поможет? Ну и если уж совсем беда, я бы попробовал виртуальную машину, ее куда легче передернуть....
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 8 2015, 07:41
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(dmitry-tomsk @ Jul 8 2015, 10:19) *
После смены прошивки стирается конфиг пространство PCIE - прописывает его windows при загрузке, так что придётся каждый раз перезагружать

Это 100%?
Хорошо, тогда ситуация такая - всё происходит в первый раз. Залили FPGA, драйвера в системе ещё нет. Запускаем Windriver-wizard, создаём и устанавливаем драйвер. Система видит новое устройство и может по PCIe писать/читать адресное пространство в ПЛИС.
Пару дней назад после перепрошивки FPGA помогал снос старого и создание/установка нового драйвера. Что-то изменилось и теперь так не работает (при сносе драйвера ОС виснет). Уже начинаю сомневаться, работало ли оно вообще по этому принципу (тогда только-только всё запустил и проверил, что пишет/читает данные в ПЛИС), но работало.

Цитата(Golikov A. @ Jul 8 2015, 10:33) *
может удалять драйвер до прошивки FPGA поможет? Ну и если уж совсем беда, я бы попробовал виртуальную машину, ее куда легче передернуть....

Хорошо, счас ещё раз всё с нуля установлю и попробую. А по поводу виртуальной машины, что-то мне кажется, что там будет ещё больше проблем (с доступом к PCIe).
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 8 2015, 09:09
Сообщение #37


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Golikov A. @ Jul 8 2015, 10:33) *
может удалять драйвер до прошивки FPGA поможет? Ну и если уж совсем беда, я бы попробовал виртуальную машину, ее куда легче передернуть....

Такой способ также не проходит. Windows чистая, пока поставил только Vivado и Jungo Windriver.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jul 8 2015, 12:45
Сообщение #38


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Нашёл волшебную последовательность действий при которой всё работает:
1. Удаляем установленное PCIe устройство в менеджере устройств (ставим галку Delete the driver software for this device).
2. Перезаливаем прошивку FPGA.
3. Обновляем конфигурацию оборудования в менеджере устройств.
4. Запускаем Jungo WinDriver (Driver Wizard), создаём и устанавливаем драйвер для нового устройства.
5. Получаем рабочую систему без перезапуска ПК (установленный драйвер пишет/читает память в FPGA).
Go to the top of the page
 
+Quote Post
gosh74
сообщение Jul 20 2015, 06:34
Сообщение #39


Участник
*

Группа: Свой
Сообщений: 62
Регистрация: 22-09-06
Из: Новосибирск
Пользователь №: 20 585



Делал на Spartan6, у которого аппаратный Endpoint. Поддержку прерываний и DMA контроллер писал сам, правда DMA только в одну сторону - от устройства в систему. Драйвер сделал в Jungo Windriver. Если интересно, схемку вышлю, опытом поделюсь.

Цитата(doom13 @ Jul 8 2015, 16:45) *
Нашёл волшебную последовательность действий при которой всё работает:
...


Тоже с таким приходится сталкиваться. Win7 помнит все что в нее втыкали, поэтому иногда приходится делать так:

1) Запустить командную строку командой cmd
2) В командной строке выполнить команду set devmgr_show_nonpresent_devices=1
3) затем start devmgmt.msc и запустить Диспетчер устройств
4) В Диспетчере устройств в меню Вид поставить галку Показать скрытые устройства
5) Раскрыть нужную ветку, найти отсутсвующее устройство (оно будет затемненным) и удалить его.

Можно в батник оформить.

Еще бывает полезно включить Write filter, чтобы ничего не приходилось чистить.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 03:45
Рейтинг@Mail.ru


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