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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Разработка PCIe, на чем поднять PCIe
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
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 14:29
Рейтинг@Mail.ru


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