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

 
 
> FPGA на шине PCI, Сработает ли Plag&Play?
Aprox
сообщение Jul 8 2010, 09:53
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131



Хочу реализовать в FPGA master-taget PCI шины. Вроде бы все давно известно, решено и проблем нет. Однако, появились сомнения на предмет времени на конфигурацию FPGA. Успеет ли эта конфигурация завершится до того, как BIOS компьютера начнет процедуру Plag&Play и посылать обращения к уже сконфигурированной FPGA? Может, кто уже натыкался на случаи, когда конфигурация FPGA не успевала произойти раньше Plag&Play? С какими матрицами и компьютерам такое случалось?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vmp
сообщение Jul 8 2010, 12:33
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070



Для PCI время документировано и составляет 1 секунду (точнее, сколько-то тактов PCICLK). Сейчас лень искать, но эта цифра приведена в спецификации. Так что если успеете за 1 секунду загрузить свою FPGA, то все будет в порядке.
Для PCIe это время составляет 0.1 секунды. Учитывая немалый объем конфигурационных данных, даже для минимальной GX15 требуется поток данных в 50 Мбит/с. Альтера кстати предупреждает, что это время можно выдержать только при Passive Serial загрузке.
Go to the top of the page
 
+Quote Post
Victor®
сообщение Jul 8 2010, 14:05
Сообщение #3


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(vmp @ Jul 8 2010, 15:33) *
Для PCI время документировано и составляет 1 секунду (точнее, сколько-то тактов PCICLK). Сейчас лень искать, но эта цифра приведена в спецификации. Так что если успеете за 1 секунду загрузить свою FPGA, то все будет в порядке.
Для PCIe это время составляет 0.1 секунды. Учитывая немалый объем конфигурационных данных, даже для минимальной GX15 требуется поток данных в 50 Мбит/с. Альтера кстати предупреждает, что это время можно выдержать только при Passive Serial загрузке.


Хочу добавить, что использовать ресет с PCI надо очень осторожно. Его длительность 1 ms (PCI 2.3, Table 7.4, page 234)
Т.е. если уж очень нужно что-то сбрасывать в FPGA сбросом c PCI, то надо успеть сконфигурироваться за эту 1 ms, что достаточно суровое требование.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Methane
сообщение Jul 8 2010, 16:38
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Victor® @ Jul 8 2010, 17:05) *
Хочу добавить, что использовать ресет с PCI надо очень осторожно. Его длительность 1 ms (PCI 2.3, Table 7.4, page 234)
Т.е. если уж очень нужно что-то сбрасывать в FPGA сбросом c PCI, то надо успеть сконфигурироваться за эту 1 ms, что достаточно суровое требование.

Что-то вы напутали.
Go to the top of the page
 
+Quote Post
Victor®
сообщение Jul 8 2010, 17:15
Сообщение #5


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(Methane @ Jul 8 2010, 19:38) *
Что-то вы напутали.


Что именно? Доводы есть?


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Methane
сообщение Jul 8 2010, 17:19
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Victor® @ Jul 8 2010, 20:15) *
Что именно? Доводы есть?

Нафиг при каждом ресете плис переконфигурировать?
Go to the top of the page
 
+Quote Post
Victor®
сообщение Jul 8 2010, 17:27
Сообщение #7


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(Methane @ Jul 8 2010, 20:19) *
Нафиг при каждом ресете плис переконфигурировать?


1) А я такое и не предлагал.
2) При включении питания надо конфигурировать.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Methane
сообщение Jul 9 2010, 02:10
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Victor® @ Jul 8 2010, 20:27) *
1) А я такое и не предлагал.
2) При включении питания надо конфигурировать.
Цитата
Хочу добавить, что использовать ресет с PCI надо очень осторожно. Его длительность 1 ms (PCI 2.3, Table 7.4, page 234)
Т.е. если уж очень нужно что-то сбрасывать в FPGA сбросом c PCI, то надо успеть сконфигурироваться за эту 1 ms, что достаточно суровое требование.

Вы писали? Конфигурироваться за 1мс не нужно.
Go to the top of the page
 
+Quote Post
Victor®
сообщение Jul 9 2010, 05:59
Сообщение #9


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(Methane @ Jul 9 2010, 05:10) *
Вы писали? Конфигурироваться за 1мс не нужно.



А это смотря в каком случае :-)
Я не точно написал, но и Вы слишком категоричны.

-- Предствьте себе что Вы
1) Включили питание на системной плате.
2) Просходит сброс, через 1 ms сброс снимается
3) Кофигурация FPGA заканчивается допустим, через 100 ms.

Вопрос.... Как сбросом с PCI сбросить что-то в FPGA? При таком раскладе - никак.
Естественно, что если будет происходить сброс с включенным питанием (hot reset) и FPGA уже законфигурирована-
то сброс с PCI работать будет.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Aprox
сообщение Jul 9 2010, 07:11
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131



Цитата(Victor® @ Jul 9 2010, 09:59) *
1) Включили питание на системной плате.
2) Просходит сброс, через 1 ms сброс снимается
3) Кофигурация FPGA заканчивается допустим, через 100 ms.

Вопрос.... Как сбросом с PCI сбросить что-то в FPGA? При таком раскладе - никак.
Естественно, что если будет происходить сброс с включенным питанием (hot reset) и FPGA уже законфигурирована-
то сброс с PCI работать будет.
Получается, сброс PCI должен запускать конфигурацию FPGA в любом случае. Вот, только этого сброса случается, что не бывает он на разьеме китайской материнки.
Go to the top of the page
 
+Quote Post
sazh
сообщение Jul 9 2010, 07:19
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Aprox @ Jul 9 2010, 10:11) *
Получается, сброс PCI должен запускать конфигурацию FPGA в любом случае. Вот, только этого сброса случается, что не бывает он на разьеме китайской материнки.


А зачем Вам сброс на FPGA. Все регистры и так в ноль устанавливаются.
Go to the top of the page
 
+Quote Post
Aprox
сообщение Jul 9 2010, 13:38
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131



Цитата(sazh @ Jul 9 2010, 11:19) *
А зачем Вам сброс на FPGA. Все регистры и так в ноль устанавливаются.
Дело не в начальных значениях регистров. Нужно знать момент, с которого стартовать загрузку конфигурации FPGA.


Цитата(Victor® @ Jul 9 2010, 11:24) *
Нет, конфигурацию FPGA имеет смысл делать по включению питания.
Я знаю, что у большинства ПК питание на слотах PCI не исчезает по завершению работы Windows. Как же тогда узнаем, когда юзер нажмет кнопку "ON" компьютера и надо будет грузить FPGA?
Go to the top of the page
 
+Quote Post
Victor®
сообщение Jul 9 2010, 13:53
Сообщение #13


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(Aprox @ Jul 9 2010, 16:38) *
Дело не в начальных значениях регистров. Нужно знать момент, с которого стартовать загрузку конфигурации FPGA.


Я знаю, что у большинства ПК питание на слотах PCI не исчезает по завершению работы Windows. Как же тогда узнаем, когда юзер нажмет кнопку "ON" компьютера и надо будет грузить FPGA?


Давайте определимся - какой режим загрузки используется?
Если FPGA инициатор загрузки - то зачем знать "момент, с которого стартовать загрузку конфигурации FPGA." И кому надо это знать?

Вообщем совсем непонятно, для чего Вы хотите использовать PCI_RST для старта конфигурирования FPGA.
Включили питание - загрузилась FPGA. Не выключаете питание - конфигурация хранится в FPGA.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Aprox
сообщение Jul 9 2010, 18:34
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131



Цитата(Victor® @ Jul 9 2010, 17:53) *
Давайте определимся - какой режим загрузки используется?
Если FPGA инициатор загрузки - то зачем знать "момент, с которого стартовать загрузку конфигурации FPGA." И кому надо это знать?
Вообщем совсем непонятно, для чего Вы хотите использовать PCI_RST для старта конфигурирования FPGA.
Включили питание - загрузилась FPGA. Не выключаете питание - конфигурация хранится в FPGA.
Давайте тогда конкретно. Вот, пришел юзер и нажимает кнопочку "ON" на компьютере При этом, совершенно неизвестно было ли отключено питание ПК, или не было. Ориентироваться на это - игра 50 на 50. Однако известно, что при нажатии "ON" у правильных материнок на PCI-слотах появится сигнал nRESET. Разве это не сигнал к загрузке конфигурации FPGA? Далее, более-менее надежным приемом от "зависаний" служит WatchDog. При его срабатывании тоже будет происходить reset-PCI, но питание - нет, останется постоянным. И как вы перезагрузите в этом случае зависшую FPGA?


Цитата(Victor® @ Jul 9 2010, 17:53) *
Давайте определимся - какой режим загрузки используется?
Если FPGA инициатор загрузки - то зачем знать "момент, с которого стартовать загрузку конфигурации FPGA." И кому надо это знать?
Я использую FPGA в комплекте с простым ARM-ом, который и грузит конфигурацию из своего flash. Пассивная загрузка. Вот, ARMу и надо знать, когда грузить FPGA. Самое простое- завести сигнал PCI-reset на nReset ARMa и он всгда будет стартовать приложение с загрузки FPGA. Как такое сделать с активной загрузкой из последовательной flash- я плохо представляю.

Go to the top of the page
 
+Quote Post
sazh
сообщение Jul 9 2010, 18:57
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(Aprox @ Jul 9 2010, 21:34) *
И как вы перезагрузите в этом случае зависшую FPGA?


Нажав кнопочку ресет.
Вам ведь надо, чтобы плата как Plug and Play определилась.
Чем быстрее стартанет, тем лучше.
Go to the top of the page
 
+Quote Post
Aprox
сообщение Jul 10 2010, 07:29
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 374
Регистрация: 7-11-07
Из: Moscow
Пользователь №: 32 131



Цитата(sazh @ Jul 9 2010, 22:57) *
Нажав кнопочку ресет.
Вам ведь надо, чтобы плата как Plug and Play определилась.
Чем быстрее стартанет, тем лучше.
Речь шла о том, чтобы ориентироваться на пропадание-возникновение питания в PCI-слотах вместо Reset. Повторю- считаю это очень ненадежным решением потому, что питание в материнках не пропадает при "выключении" ПК.
Go to the top of the page
 
+Quote Post
Methane
сообщение Jul 10 2010, 07:52
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Aprox @ Jul 10 2010, 10:29) *
Речь шла о том, чтобы ориентироваться на пропадание-возникновение питания в PCI-слотах вместо Reset. Повторю- считаю это очень ненадежным решением потому, что питание в материнках не пропадает при "выключении" ПК.

Скажите, вы хоть немножко, хоть чуть чуть смотрели документацию на PCI?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Aprox   FPGA на шине PCI   Jul 8 2010, 09:53
- - Methane   Цитата(Aprox @ Jul 8 2010, 12:53) Может, ...   Jul 8 2010, 10:02
|- - Aprox   Цитата(Methane @ Jul 8 2010, 14:02) Играт...   Jul 8 2010, 11:07
|- - Methane   Цитата(Aprox @ Jul 8 2010, 14:07) Да, я т...   Jul 8 2010, 11:26
|- - Methane   Цитата(vmp @ Jul 8 2010, 15:33) Альтера к...   Jul 8 2010, 13:46
||||- - Koluchiy   Цитата(sazh @ Jul 9 2010, 11:19) А зачем ...   Jul 9 2010, 09:12
|||||- - sazh   Цитата(Koluchiy @ Jul 9 2010, 12:12) А ес...   Jul 9 2010, 09:37
||||- - Methane   Цитата(Aprox @ Jul 9 2010, 16:38) Дело не...   Jul 9 2010, 13:47
||||- - ktod   Цитата(Aprox @ Jul 10 2010, 00:34) И как ...   Jul 10 2010, 04:31
||||- - Aprox   Цитата(ktod @ Jul 10 2010, 08:31) Это как...   Jul 10 2010, 08:12
||||- - Methane   Цитата(Aprox @ Jul 10 2010, 11:12) ...   Jul 10 2010, 08:16
||||- - Aprox   Цитата(Methane @ Jul 10 2010, 12:16) Маги...   Jul 13 2010, 08:46
||||- - Victor®   Цитата(Aprox @ Jul 13 2010, 11:46) Мы нав...   Jul 13 2010, 02:06
||||- - Aprox   Цитата(Victor® @ Jul 13 2010, 14:06) Это ...   Jul 13 2010, 10:42
||||- - Victor®   Цитата(Aprox @ Jul 13 2010, 21:42) Вы сам...   Jul 13 2010, 11:12
||||- - Aprox   Цитата(Victor® @ Jul 13 2010, 23:12) Откр...   Jul 13 2010, 22:29
||||- - Victor®   Цитата(Aprox @ Jul 14 2010, 01:29) Вы зна...   Jul 16 2010, 06:30
||||- - Aprox   Цитата(Victor® @ Jul 16 2010, 10:30) Прим...   Jul 16 2010, 07:35
||||- - Victor®   Цитата(Aprox @ Jul 16 2010, 10:35) Извини...   Jul 16 2010, 07:46
||||- - Aprox   Цитата(Victor® @ Jul 16 2010, 11:46) Разм...   Jul 16 2010, 14:16
|||- - Victor®   Цитата(Aprox @ Jul 9 2010, 10:11) Получае...   Jul 9 2010, 07:24
||- - Aprox   Цитата(Victor® @ Jul 8 2010, 18:05) Хочу ...   Jul 8 2010, 17:25
|- - Aprox   Цитата(vmp @ Jul 8 2010, 16:33) Для PCI в...   Jul 8 2010, 17:31
|- - Victor®   Цитата(Aprox @ Jul 8 2010, 20:31) Спасибо...   Jul 8 2010, 18:17
- - NiOS   Цитата(Aprox @ Jul 8 2010, 13:53) Может, ...   Jul 8 2010, 12:36
- - ktod   Простите, но это бред. Вы не там ищете проблему. е...   Jul 10 2010, 12:22
- - Aprox   Цитата(ktod @ Jul 10 2010, 16:22) Короче,...   Jul 12 2010, 18:08
- - ViKo   Цитата(ktod @ Jul 10 2010, 15:22) В любом...   Jul 13 2010, 02:57
- - Victor®   Цитата(ViKo @ Jul 13 2010, 05:57) А не лу...   Jul 13 2010, 05:07


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

 


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


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