Могут ли ПЛИС динамически изменять свою логику?


15

Теоретически FPGA могла бы записать образ конфигурации во внешнюю память и загрузить образ конфигурации из памяти, чтобы перенастроить себя. Это будет «нединамическая» реконфигурация.

Есть ли у ПЛИС возможность динамически перестраивать свою логическую структуру? Действительно, хотя у триггеров может быть изменено их значение, я не слышал о динамической реконфигурации справочных таблиц и внутренних цепей, составляющих логическую структуру.

Может ли внутренняя логика ПЛИС (кроме памяти) динамически изменяться? Если нет, то почему нет?


«Динамическая реконфигурация» - это действительно фраза, которую вы ищете :)
Мартин Томпсон,

Вы ищете ПЛИС, которые могут реконфигурировать себя (как это делают некоторые микроконтроллеры) или что они могут быть реконфигурированы (во время выполнения) из внешнего компонента?
Trygve Laugstøl

Ответы:


12

Да, я знаю, что, по крайней мере, в Xilinx есть компоненты, которые поддерживают динамическую реконфигурацию, и, вероятно, другие крупные поставщики тоже.

Это серьезное обязательство, поэтому вам действительно нужно убедиться, что вам это нужно. Вам необходимо физически разделить микросхему на две или более областей, по крайней мере, одна из которых не подлежит реконфигурированию, и физически «закрепить» все внутренние интерфейсы между областями, чтобы инструменты синтеза могли устанавливать все правильные соединения.


1
Поищите на веб-сайте Xilinx «реконфигурируемость»!
Леон Хеллер

3

Есть два основных подхода, которые можно использовать. Многие типы FPGA хранят свою конфигурацию в защелках, которые выбираются с внешнего устройства (обычно EEPROM) при запуске; внешнее устройство не требуется ПЛИС после того, как оно было прочитано. Изменения в EEPROM во время работы устройства не вступят в силу, пока FPGA не получит команду перезагрузить его содержимое. Таким образом, для устройства, которое было бы полностью неработоспособным без ПЛИС, перепрограммировать эту ПЛИС во время работы; однако, если что-то идет не так во время записи в ЭСППЗУ, устройство может быть неработоспособным до тех пор, пока не будет перезаписано внешним устройством или пока оно не будет перезаписано (состояние, которое иногда называют «заблокированным»).

Альтернативный подход, который часто полезен для CPLD, чьи ячейки EEPROM «непосредственно» управляют их функциональностью (в отличие от копирования в защелки), состоит в том, чтобы иметь систему, которая может работать с ограниченными функциональными возможностями, даже когда программируемое устройство находится в бесполезном состоянии. Если таких ограниченных функциональных возможностей достаточно для перепрограммирования CPLD, устройство может быть защищено от «блокировки». Например, беспроводное устройство может использовать CPLD для управления своими беспроводными функциями и другими функциями. Обычный метод перепрограммирования CPLD может состоять в том, чтобы получить изображение в RAM через беспроводную связь, а затем использовать это изображение для перепрограммирования CPLD. При программировании файлов беспроводная связь может быть непригодна до перепрограммирования CPLD. Однако, чтобы система могла восстановиться, процессор может содержать «значение по умолчанию»

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.