Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Дурацкий вопрос имею - смена типа интерфейса у пина FPGA в процессе работы
Отправлено
vitalyn 09 сентября 2008 г. 07:35
Рассмотрим обычную FPGA с внешней загрузкой (не прошиваемую насмерть как Actel) и не флэш. У каждого пина задаётся его режим работы - LVTTL, LVDS, LVPECL, SSTL_2, HSTL 1.5 вольта и т.д.
Есть потребность разработать одно хитрое устройство. Проблема заключается в том, что к нему могут подключаться разные модули одинакового назначения, но с разными уровнями сигналов, обусловленные разными типами интерфейсов, которые используют производители микросхем (вот уж где научно-технический прогресс малость перебарщивает!). Разъём должен быть один, а контактов в нём и без того много, так что предусматривать эти контакты для такого случая, а вот эти для другого - не получится. В подключаемом модуле будет стоять конфигурационная флэшка (по своему назначению полностью идентичная SPD в DIMM-модулях), из которой можно считать информацию об интерфейсе подключаемой железяки. Вот потом хочется запрограммировать ноги у FPGA в соответствии с требуемым стандартом, задать требуемую частоту клока, чтобы взаимодействовать с подключенным модулем.
Теоретически проблем не вижу, а практически - мне неизвестны способы выбрать тип сигнала на пине у FPGA "на лету". Само собой Vref, какой надо - такой и подключу к соответствующим банкам, не ахти какая задача.
Можно, конечно, нагенерировать сразу кучу прошивок под разные случаи, а потом микропроцессором считывать конфигурацию из SPD и грузить в FPGA соответствующую прошивку, но как-то это некрасиво - уж больно тупое решение. Коню понятно, что если на лету менять тип интерфейса у пина не получится - именно так и сделаю, но сначала хочется поизвращаться.
Составить ответ | Вернуться на конференцию
Ответы
- Если разделить прошивку FPGA на общую статическую (основной функционал) и индивидуальную динамическую (только конфигурация i/o) части, то можно безусловно грузить общую часть, а затем, определив из "SPD" требуемый вариант i/o, грузить именно тот, что нужно - MBedder (09.09.2008 11:07:50 80.92.96.19, пустое)
- Кроме как перегружать конфигурацию, решений не видно. - Леонид Иванович (09.09.2008 10:12:16 87.252.227.56, пустое)
- В таких случаях пром. fpga pci карточках грузят прошивку по pci перед работой с карточкой. - ++ (09.09.2008 09:42:53 10.0.1.35,212.45.31.226, 198 байт)
- ...А этта...Вместо инфы о СПД в подкл. модуле, тупо писать конфигурацыонную информаццыю? Типа, пусть оно с подключаемого модуля и грузицца. А подключаемый модуль сто пудов знает свой интерфейс. - -mse- (09.09.2008 09:15:13 83.239.86.98, пустое)