FPGA на основе SRAM необходимо снова загрузить поток битов после выключения питания. Между тем энергонезависимому не нужно это.
Интересно, почему на SRAM FPGA проводится больше экспериментов и исследований в области безопасности, чем на основе NVM, кажется, что энергозависимая технология используется чаще, независимо от ее пределов безопасности (когда речь идет об обеспечении безопасной загрузки).
(PS: у меня нет статистики, это личное наблюдение)
Ответы:
Основным драйвером является тот факт, что SRAM очень совместим с тем же физическим процессом, который используется для реализации фактической логики. Действительно, большинство FPGA в наши дни основаны на LUT (таблицах поиска), которые на самом деле сами по себе являются крошечными кусочками ОЗУ.
С другой стороны, процесс, необходимый для создания EEPROM (энергонезависимой памяти), требует дополнительных шагов - для создания плавающих затворов со специальной толщиной оксида и т. Д. Этот процесс НЕ непосредственно совместим с процессом логики / SRAM. Это означает, что энергонезависимые ПЛИС являются своего рода компромиссом в обеих областях.
источник
В дополнение к ответу Дэйва Твида относительно процессов изготовления, большинство FPGA на основе флэш-памяти все еще используют SRAM для управления своей фабрикой. Битовый поток загружается в SRAM из флэш-памяти, как в более обычной FPGA, единственное отличие состоит в том, что флэш-память является внутренней. Эта архитектура становится очевидной, когда вы смотрите на их таблицы данных и приложения. В частности, некоторые устройства, такие как Lattice MachXO2 / 3, поддерживают перепрограммирование своей флэш-памяти во время работы устройства, что возможно только потому, что устройство фактически запускается из SRAM, а не непосредственно из флэш-памяти. Таким образом, «основанная на флэш» FPGA нуждается в вспышке в дополнение к SRAM, что означает, что ей нужно больше площади кристалла.
Что касается безопасности, вы вправе указать, что процесс запуска FPGA может быть слабым местом с точки зрения возможности захвата потока битов. Чтобы восполнить этот пробел, многие FPGA теперь включают поддержку шифрования битового потока, которая основана на безопасном ключе, хранящемся в выделенной памяти внутри FPGA. Изображение битового потока шифруется этим ключом, загружается в память конфигурации, а затем при запуске FPGA считывает зашифрованный битовый поток и расшифровывает его при загрузке в свой (некоторые микроконтроллеры, которым требуется внешняя память, имеют аналогичные возможности, и принципы в основном одинаковы.)
источник
Больше всего, это зависит от ваших требований. В то время как размер, вес и мощность (SWaP) являются основными драйверами для интегральных схем в целом, если вы не обязаны разрабатывать ASIC из-за этих требований, производительность будет вашим следующим соображением, которое в любом случае может подтолкнуть вас к ASIC, но вы можете использовать FPGA, если можете позволить себе компромиссы в SWaP.
ПЛИС на базе FLASH (Actel, в настоящее время Microsemi) традиционно не обладали такой плотностью или производительностью, которых можно было бы достичь с помощью ПЛИС на основе SRAM, поэтому, если бы производительность была определяющим фактором, вы бы выбрали Xilinx или Altera (теперь Intel), или возможно Решетка.
По сути, вы руководствуетесь требованиями вашей системы, и в частности вашей IC. Вначале вы выполняете эти требования и изучаете различные FPGA (электронная таблица). SWaP и производительность, а затем повторяющаяся стоимость - это основные соображения, которые вы хотите обсудить с вашей командой (системы, CCA, возможно, даже SW), которые передаются вашему главному инженеру / менеджеру проекта. Другие проблемы, такие как надежность, технологичность и т. Д., Обычно обеспечиваются другими членами команды из этих соответствующих организаций, но обычно не имеют большого значения без вашей первоначальной торговли и, как правило, не помешают вашему выбору.
В Интернете есть статьи, если вы будете искать «SRAM vs FLASH FPGA», но вы, скорее всего, узнаете больше из отраслевого исследования ваших требований, используя таблицы данных, чем что-либо еще.
источник
Для решения проблемы безопасности большинство современных ПЛИС SRAM могут быть сконфигурированы с зашифрованным потоком , обычно с современными стандартами шифрования, такими как 256-битный AES. Возможно, это так же безопасно, как и внутреннее хранение конфигурации: выделенный атакующий, способный извлечь закрытый ключ из поврежденного чипа, также сможет считывать внутреннюю флэш-память.
ПЛИС на основе флэш-памяти обычно используются, когда реализация довольно проста (поэтому большая ПЛИС SRAM не требуется) или когда требуется мгновенный запуск.
источник