FPGA는 프로그래밍 가능 논리소자(PLD)의 일종인 디지털 회로를 기반으로 한 집적 칩으로, FPGA는 ASIC(주문형 집적 회로) 분야에서 반맞춤형 회로로 등장하며, 이러한 단점을 해결할 뿐만 아니라 맞춤형 회로를 개발할 뿐만 아니라 원래 프로그래밍 가능 장치의 게이트 회로 수가 제한되어 있다는 단점도 극복합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, Dell G3 컴퓨터.
FPGA(Field Programmable Gate Array)는 PAL(Programmable Array Logic), GAL(General Array Logic) 등 프로그래밍 가능한 장치를 기반으로 더욱 발전된 제품입니다. 주문형 회로의 단점을 해결할 뿐만 아니라 원래 프로그래밍 가능 장치의 제한된 게이트 수의 단점도 극복한 ASIC(주문형 집적 회로) 분야에서 세미 맞춤형 회로로 나타납니다.
FPGA는 본질적으로 칩, 주로 디지털 회로로 구성된 통합 칩입니다.
FPGA는 Xilinx의 창립자 중 한 명인 Ross Freeman이 1985년에 발명했습니다. 프로그래밍 가능 논리 장치(PLD)의 일종입니다. 이는 유명한 무어의 법칙이 등장한 때보다 약 20년 정도 늦은 시점이지만, FPGA가 발명된 이후 이후의 개발 속도는 대부분의 사람들이 상상하는 것보다 빨랐다.
그림 1은 FPGA 칩의 물리적 그림을 보여줍니다.
그림 1 FPGA 칩의 물리적 그림
PLD가 발명되기 전에 엔지니어들은 여러 논리 게이트가 포함된 개별 논리 칩을 사용했습니다. 회로 시스템을 구축할 때 복잡한 논리 기능을 구현하는 것은 어렵습니다.
이 문제를 해결하기 위해 1970년대에 PLC(Programmable Logic Array)가 나왔습니다. PLA에는 각각 "AND 평면"과 "OR 평면"을 형성하는 고정된 개수의 AND 게이트와 NOT 게이트가 포함되어 있습니다. ", 즉 "AND 연결 행렬" 및 "OR 연결 행렬"뿐만 아니라 한 번만 프로그래밍할 수 있는 연결 행렬(여기서 프로그래밍은 퓨즈 프로세스를 기반으로 하기 때문)이므로 상대적으로 복잡한 AND 또는 다중 PLA의 내부 구조는 그림 2와 같습니다.
PLA와 동시에 PROM(Programmable Read-Only Memory)이 나왔고 내부 구조 그림 3과 같습니다. PROM은 PLA와 마찬가지로 내부적으로 "AND 연결 행렬"과 "OR 연결 행렬"을 포함하지만 AND 게이트의 연결 행렬은 하드웨어에 고정되어 있으며 OR 게이트의 연결 행렬만 프로그래밍할 수 있습니다.
AND 게이트의 연결 매트릭스만 프로그래밍 가능하고 OR 게이트의 연결 매트릭스가 하드웨어에 의해 고정된 경우 이러한 칩을 PAL(Programmable Array Logic)이라고 합니다. ), 출력 회로의 다양한 작동 모드에 따라 PAL은 3상태 출력, 레지스터 출력 및 보완 출력으로 나눌 수 있지만 PAL은 여전히 퓨즈 기술을 사용하며 한 번만 프로그래밍할 수 있습니다. PAL의 구조 다이어그램은 그림 4에 나와 있습니다.
PAL을 기반으로 일반 배열 논리 장치(Generic Array Logic, GAL)가 개발되었습니다. PAL과 비교하여 GAL은 두 가지 개선 사항이 있습니다.
GAL의 구조 다이어그램은 그림 5에 나와 있습니다.
초기 PLD는 주로 위의 네 가지 유형의 칩, 즉 PROM, PLA, PAL 및 GAL로 구성되었습니다. 이들의 공통점은 속도 특성이 좋은 논리 기능을 구현할 수 있다는 점이지만, 구조가 너무 단순하기 때문에 더 작은 디지털 회로만 구현할 수 있다는 점이다.
과학 기술이 발전하고 사회가 발전함에 따라 사람들은 칩 통합에 대한 요구 사항이 점점 더 높아지고 있습니다. 초기 PLD 제품은 사람들의 요구를 충족할 수 없었고, CPLD(Complex Programmable Logic Device)가 탄생했습니다. CPLD는 PLA 장치 구조의 연속으로 간주될 수 있으며, CPLD 장치는 여러 PLA 및 프로그래밍 가능한 연결 매트릭스의 집합으로 간주될 수도 있습니다. CPLD의 내부 구조 다이어그램은 그림 6에 나와 있습니다.
FPGA는 CPLD보다 몇 년 먼저 출시되었으며, CPLD와 함께 고밀도 프로그래밍 가능 논리소자라고 불리지만 근본적으로 다릅니다. FPGA 칩의 내부 아키텍처는 PLA와 유사한 구조를 따르지 않고 LCA(Logic Cell Array) 개념을 채택하여 PLD 장치에 다수의 AND 게이트와 NOT 게이트를 사용한다는 개념을 변화시켰습니다. 과거에는 주로 조회 테이블을 사용했습니다.
또한 FPGA와 CPLD는 아래 표와 같이 리소스 종류, 속도 등에서도 차이가 있습니다.
장치 유형/특성 | FPGA | CPLD |
---|---|---|
내부 구조 | Look Up Table | 제품 용어 |
내부 내부 EEPROM 또는 플래시 | 리소스 유형 | |
통합 | High | |
경우에 따라 사용 | 완료 더욱 복잡한 알고리즘 | |
Speed | Fast | |
기타 리소스 | RAM, PLL, DSP 등 | |
기밀 ity | 일반적으로 보관할 수 없습니다 secret (암호화 코어 사용 가능) | |
위 내용은 FPGA는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!