SRAM 기반 FPGA는 전원을 끈 후 비트 스트림을 다시로드해야합니다. 반면 비 휘발성 기반은 필요하지 않습니다.
NVM 기반보다 SRAM FPGA에 대해 더 많은 실험과 보안 연구가 수행되는 이유가 궁금합니다. 보안 제한에 관계없이 휘발성 기술이 더 안전한 것으로 보입니다 (보안 부팅을 보장 할 때).
(PS : 나는 통계가 없다, 그것은 개인적인 관찰이다)
SRAM 기반 FPGA는 전원을 끈 후 비트 스트림을 다시로드해야합니다. 반면 비 휘발성 기반은 필요하지 않습니다.
NVM 기반보다 SRAM FPGA에 대해 더 많은 실험과 보안 연구가 수행되는 이유가 궁금합니다. 보안 제한에 관계없이 휘발성 기술이 더 안전한 것으로 보입니다 (보안 부팅을 보장 할 때).
(PS : 나는 통계가 없다, 그것은 개인적인 관찰이다)
답변:
주요 원인은 SRAM이 실제 논리를 구현하는 데 사용되는 것과 동일한 물리 프로세스와 매우 호환된다는 것입니다. 실제로 요즘 대부분의 FPGA는 LUT (조회 테이블)를 기반으로하며, 이는 실제로 아주 작은 RAM 자체입니다.
반면, EEPROM (비 휘발성 메모리)을 구축하는 데 필요한 프로세스에는 특별한 산화물 두께 등을 사용하여 플로팅 게이트를 생성하기위한 추가 단계가 필요합니다.이 프로세스는 로직 / SRAM 프로세스와 직접 호환되지 않습니다. 이것은 비 휘발성 FPGA가 두 영역에서 다소 타협한다는 것을 의미합니다.
관련된 제조 공정에 관한 Dave Tweed의 답변 외에도 대부분의 플래시 기반 FPGA는 여전히 SRAM을 사용하여 패브릭을 구동합니다. 비트 스트림은 기존의 FPGA와 마찬가지로 플래시에서 SRAM으로로드되며, 유일한 차이점은 플래시가 내부에 있다는 것입니다. 이 아키텍처는 데이터 시트 및 애플리케이션 노트를 볼 때 분명합니다. 특히, Lattice MachXO2 / 3와 같은 일부 장치는 장치가 실행되는 동안 플래시를 다시 프로그래밍하는 기능을 지원합니다. 이는 장치가 실제로 플래시가 아닌 SRAM에서 실제로 실행되기 때문에 가능합니다. 따라서 "플래시 기반"FPGA 에는 SRAM 외에 플래시 가 필요하므로 다이 영역이 더 필요합니다.
보안과 관련하여 FPGA 시작 프로세스는 비트 스트림을 캡처 할 수 있다는 점에서 약점이 될 수 있습니다. 이러한 격차를 해소하기 위해 많은 FPGA는 이제 비트 스트림 암호화에 대한 지원을 통합합니다. 비트 스트림 암호화는 FPGA 내의 전용 메모리에 저장된 보안 키를 기반으로합니다. 비트 스트림 이미지는이 키로 암호화되어 구성 메모리에로드 된 다음 FPGA가 시작될 때 암호화 된 비트 스트림을 읽고이를로드 할 때이를 해독합니다 (외부 메모리가 필요한 일부 마이크로 컨트롤러는 원칙은 거의 같습니다.)
무엇보다도 요구 사항에 따라 다릅니다. 크기, 무게 및 전력 (SWaP)은 일반적으로 IC의 주요 동인이지만 이러한 요구 사항으로 인해 ASIC을 개발하지 않을 경우 성능은 다음 고려 사항이므로 어쨌든 ASIC으로 되돌아 갈 수 있습니다. 그러나 SWaP 트레이드 오프를 감당할 수 있다면 FPGA를 사용할 수 있습니다.
FLASH 기반 FPGA (Actel, 현재 Microsemi)는 전통적으로 SRAM 기반 FPGA로 달성 할 수있는 밀도 나 성능을 갖지 못 했으므로 성능이 주요 요인 인 경우 Xilinx 또는 Altera (현재 Intel)를 선택하거나 아마도 격자.
본질적으로, 당신은 당신의 시스템과 IC의 요구 사항에 의해 특별히 좌우됩니다. 초기에 이러한 요구 사항을 해결하고 다양한 FPGA (스프레드 시트)에 대한 거래 연구를 수행합니다. SWaP와 성능, 반복되는 비용은 프로젝트 수석 엔지니어 / 관리자에게 피드백을 제공하는 팀 (시스템, CCA, 아마도 SW)과 반복 할 주요 고려 사항입니다. 신뢰성, 제조 가능성 등과 같은 다른 문제는 일반적으로 해당 조직의 다른 팀 구성원이 제공하지만 일반적으로 초기 거래가 없으면 의미가 없으며 일반적으로 선택을 방해하지 않습니다.
"SRAM vs FLASH FPGAs"를 검색하면 웹에 기사가 있지만 데이터 시트를 사용하는 요구 사항에 대한 무역 연구에서 다른 것보다 더 많은 정보를 얻을 수 있습니다.
보안 측면을 해결하기 위해 대부분의 최신 SRAM FPGA는 일반적으로 256 비트 AES와 같은 최신 암호화 표준을 사용하여 암호화 된 스트림 으로 구성 할 수 있습니다 . 구성을 내부에 저장하는 것만 큼 안전 할 수도 있습니다. 디핑 된 칩에서 개인 키를 추출 할 수있는 전용 어태커도 내부 플래시를 읽을 수 있습니다.
플래시 기반 FPGA는 일반적으로 구현이 다소 단순하거나 (대형 SRAM FPGA가 필요하지 않은) 또는 즉시 시작이 필요할 때 사용됩니다.