CPLD와 FPGA 간의 차이

Anonim

CPLD와 FPGA로 인해 흐려지기 시작한 두 개의 로직 디바이스입니다 CPLD (Complex Programmable Logic Device)와 FPGA (Field Programmable Gate Array)는 기술의 향상과 다른 기능의 도입으로 흐려지기 시작한 두 개의 논리 소자이다. FPGA와 CPLD의 주된 차이점은 각각에 포함 된 로직 게이트의 복잡성 또는 수입니다. 서로 다른 모델간에 실제 수치가 크게 다를 수 있지만, CPLD에는 수천 게이트에서 수만 게이트가 포함됩니다. 이와는 대조적으로 FPGA는 수천에서 수 백만 가지가있다. 게이츠 수의 차이가 크기 때문에 CPLD보다 FPGA로 더 복잡한 로직을 구현할 수 있다고 쉽게 말할 수 있습니다.

매우 높은 수의 게이트를 갖는 주된 장점 중 하나는 높은 수준의 기능을 칩에 내장 할 수 있다는 것입니다. 직접 작성하는 대신 일부 FPGA는 가장 일반적인 작업을 위해 이미 가산기, 곱셈기 및 기타 여러 가지 연산자를 사용합니다. 그런 다음 프로그래머는 디자인의 실제 목표에 중점을 둘 수 있으며 이러한 기능의 구현에 대해 걱정할 필요가 없습니다.

두 아키텍처가 아키텍처에있어서 큰 차이가 있습니다. FPGA는 LUT (Look-up Table)을 사용하는 반면 CPLD는 더 간단한 제품 합계 (게이트 오브 바다 (sea of ​​gates)라고도 함)를 사용합니다. LUT를 사용하면 칩이 CPLD가하는 것처럼 제품 합계를 다시 계산하는 과정을 거칠 필요가 없으므로 처리 시간이 크게 단축되므로 이점이 있습니다. 또한 LUT는 CPLD가 수행 할 수있는 것보다 내부 FPGA 모듈 간의 유연한 상호 연결을 제공합니다.

둘 사이의 마지막 주요 차이점은 비 휘발성 메모리입니다. LUT는 메모리의 한 형태이지만 전원이 제거되면 지속되지 않습니다. CPLD는 칩에 내장 된 비 휘발성 메모리를 가지고있어 외부 ROM없이 즉시 작동 할 수 있습니다. CPLD는 심지어 FPGA를위한 "부트 로더"역할을하는 데 사용됩니다. 이 기사의 시작 부분에서 이미 언급했듯이 기능 간의 경계가 흐려지기 시작했습니다. "부트 로더 (boot loader)"의 필요성을 없애기 위해 FPGA 제조업체들은 비 휘발성 메모리를 FPGA 칩에 내장하기 시작했습니다. 따라서이 기능을 CPLD 및 일부 FPGA에 모두 제공 할 수 있습니다.

요약:

1. FPGA는 CPLD보다 복잡하다. 2. FPGA는 CPLD보다 더 높은 수준의 임베디드 기능을 갖추고있다. 3. FPGA는 룩업 테이블을 사용하는 반면 CPLD는 다양한 제품을 사용합니다. 4. CPLD는 비 휘발성 메모리를 가지고 있지만 FPGA는 그렇지 않다.