aprox 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Хочу реализовать в FPGA master-taget PCI шины. Вроде бы все давно известно, решено и проблем нет. Однако, появились сомнения на предмет времени на конфигурацию FPGA. Успеет ли эта конфигурация завершится до того, как BIOS компьютера начнет процедуру Plag&Play и посылать обращения к уже сконфигурированной FPGA? Может, кто уже натыкался на случаи, когда конфигурация FPGA не успевала произойти раньше Plag&Play? С какими матрицами и компьютерам такое случалось? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Может, кто уже натыкался на случаи, когда конфигурация FPGA не успевала произойти раньше Plag&Play? С какими матрицами и компьютерам такое случалось? Про PCI не в курсе. Но для PCIe четко задано время в течении которого оно должно начать отвечать. Решение это или батарейка или MAX2+Flash память. Для некоторых микросхем есть мегафункция в квартусе. Я прям сейчас думаю, писать самому или попробовать разобраться с тем что есть в квартусе. Играть в рулетку, и подбирать материнку, не хочется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aprox 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Играть в рулетку, и подбирать материнку, не хочется.Да, я тоже не хочу играться с материнками. Поэтому и продолжаю по старинке PCI-узел делать на EPM3256, не на FPGA. Но сейчас из меркантильных соображений хочется все упаковать в FPGA. Тем более, что кругом полно готовых корок PCI. Но непонятно, на какой тип матриц они рассчитаны и будет ли это работать на FPGA. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Да, я тоже не хочу играться с материнками. Поэтому и продолжаю по старинке PCI-узел делать на EPM3256, не на FPGA. Но сейчас из меркантильных соображений хочется все упаковать в FPGA. Тем более, что кругом полно готовых корок PCI. Но непонятно, на какой тип матриц они рассчитаны и будет ли это работать на FPGA. Зачем делать для PCI, если если PCIe 1x есть уже даже в циклоне, который успевает грузится с последовательной флешки? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vmp 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Для PCI время документировано и составляет 1 секунду (точнее, сколько-то тактов PCICLK). Сейчас лень искать, но эта цифра приведена в спецификации. Так что если успеете за 1 секунду загрузить свою FPGA, то все будет в порядке. Для PCIe это время составляет 0.1 секунды. Учитывая немалый объем конфигурационных данных, даже для минимальной GX15 требуется поток данных в 50 Мбит/с. Альтера кстати предупреждает, что это время можно выдержать только при Passive Serial загрузке. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kopart 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Может, кто уже натыкался на случаи, когда конфигурация FPGA не успевала произойти раньше Plag&Play? С какими матрицами и компьютерам такое случалось? Знаю, что ни разу не было проблем с "успеет конфигурация произойти раньше Plag&Play" Чипы Сyclone, Stratix А вот с реализацией контролера PCI на разных матплатах были приколы. В итоге устройство просто не определялось - приходилось править диаграмму конфигурации master/target в FPGA. Припоминаю, что этим больше всего страдают дешевый матплаты со встроенным видео. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Альтера кстати предупреждает, что это время можно выдержать только при Passive Serial загрузке. Fast Passive Parallel только. FPP. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LV26 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Для 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, что достаточно суровое требование. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Хочу добавить, что использовать ресет с PCI надо очень осторожно. Его длительность 1 ms (PCI 2.3, Table 7.4, page 234) Т.е. если уж очень нужно что-то сбрасывать в FPGA сбросом c PCI, то надо успеть сконфигурироваться за эту 1 ms, что достаточно суровое требование. Что-то вы напутали. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LV26 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Что-то вы напутали. Что именно? Доводы есть? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Что именно? Доводы есть? Нафиг при каждом ресете плис переконфигурировать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aprox 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Хочу добавить, что использовать ресет с PCI надо очень осторожно. Его длительность 1 ms (PCI 2.3, Table 7.4, page 234) Т.е. если уж очень нужно что-то сбрасывать в FPGA сбросом c PCI, то надо успеть сконфигурироваться за эту 1 ms, что достаточно суровое требование. Я встречал материнки, у которых Reset-а вообще не наблюдалось. Пришлось делать собственный по включению питания, это оказалось надежнее всего. Fast Passive Parallel только. FPP. Которого не наблюдается у самых младших Циклонов-3. У них и POR составляет не менее 200mS от выхода питания на номинал. Пытаться раньше грузить конфигурацию - бессмысленно. Зачем делать для PCI, если если PCIe 1x есть уже даже в циклоне, который успевает грузится с последовательной флешки? Стоит задача - встраиваться в дешевые пром.компьютеры китайского пр-ва. Там никаких PCIe не наблюдается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LV26 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Нафиг при каждом ресете плис переконфигурировать? 1) А я такое и не предлагал. 2) При включении питания надо конфигурировать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aprox 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Для PCI время документировано и составляет 1 секунду (точнее, сколько-то тактов PCICLK). Сейчас лень искать, но эта цифра приведена в спецификации. Так что если успеете за 1 секунду загрузить свою FPGA, то все будет в порядке. Спасибо за цифры. За 1сек грузить младшие Циклоны-3 даже при POR 200ms- вполне реально. Я проведу испытания на своем компе. - измерю, сколько проходит времени после вкл.питания до первого обращения к слоту PCI. Насколько эта цифра будет универсальной для разных материнок- не знаю, но проверить цифру 1 сек не мешает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LV26 0 8 июля, 2010 Опубликовано 8 июля, 2010 · Жалоба Спасибо за цифры. За 1сек грузить младшие Циклоны-3 даже при POR 200ms- вполне реально. Я проведу испытания на своем компе. - измерю, сколько проходит времени после вкл.питания до первого обращения к слоту PCI. Насколько эта цифра будет универсальной для разных материнок- не знаю, но проверить цифру 1 сек не мешает. По специфиации от снятия резета до момента начала первого конфиг. цикла должно быть не менее 2^25 периодов PCI_CLK. Для PCI-33 получится 1.006632960 сек. Для PCI-66 вдвое меньше. По поводу PCI-X точно не скажу, посмотрите сами если интересно. Наверное за 1 сек. можно вгрузить все, что пожелаете:-) Например, Spartan-3E\200 грузится примерно за 75 ms. с SPI FLASH Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться