FPGA와 CPLD의 차이점 차이

Anonim

FPGA vs CPLD

기술의 모든 방대한 개선으로 인해 대부분의 사람들이 정말로 신경 쓰지 않을 것이 많습니다. 그러나 엔지니어와 소프트웨어 개발자에게 디지털 로직 칩은 철저한 고려가 필요합니다.

FPGA와 CPLD는 잘 알려진 유형의 디지털 로직 칩 중 두 가지입니다. 내부 아키텍처에 관해서는 두 칩이 분명히 다릅니다.

Field-Programmable Gate Array의 약자 인 FPGA는 프로그래머블 로직 칩의 일종입니다. 거의 모든 종류의 디지털 기능을 수행하도록 프로그래밍 할 수있어 훌륭한 칩입니다. FPGA의 아키텍처는 칩이 매우 높은 로직 용량을 갖도록 해준다. 높은 게이트 카운트를 필요로하는 설계에서 사용되며 아키텍처 때문에 지연이 예측할 수 없습니다. FPGA는 최대 100,000 개까지 도달 할 수있는 많은 로직 블록을 포함하고 있기 때문에 '미세 입자'로 간주됩니다. 이는 플립 플롭, 조합 논리 및 메모리를 사용합니다. 보다 복잡한 응용 프로그램을 위해 설계되었습니다.

반면에 CPLD (Complex Programmable Logic Device)는 EEPROM을 사용하여 설계되었다. 작은 게이트 카운트 디자인에 더 적합하며 구조가 덜 복잡하기 때문에 지연은 예측 가능하며 비 휘발성입니다. CPLD는 종종 간단한 로직 어플리케이션에 사용됩니다. 하지만 CPLD는 '거친 입자 (coarse-grain)'유형의 디바이스로 간주된다. CPLD는보다 단순한 '거친 그레인'아키텍처 덕분에 훨씬 더 빠른 입력 - 출력 지속 시간을 제공합니다.

아마도 아키텍처가 훨씬 단순하기 때문에 CPLD가 저렴할 것입니다. 1 게이트 당 저렴하게 구입할 수 있지만, FPGA는 특히 패키지별로 제공되는 경우 더 비쌉니다.

FPGA 작업은 RAM 기반이므로 특별한 절차가 필요합니다. 장치를 프로그래밍하려면 먼저 회로도를 그리거나 단순히 텍스트 파일에 기능을 설명하여 컴퓨터를 사용하여 '논리 기능'을 설명해야합니다. 일반적으로 소프트웨어의 도움을 받아 '논리 기능'을 컴파일해야합니다. FPGA에 다운로드 할 바이너리 파일을 생성합니다. 결과적으로 칩은 '논리 기능'에서 지시 한대로 동작합니다.

FPGA 또는 CPLD 중 어떤 것을 사용할 것인지 결정하는 것은 실제로 디자인 목표에 달려 있습니다.

요약:

1. FPGA는 최대 100,000 개의 작은 로직 블록을 포함하고 CPLD는 몇 천 개에 이르는 로직 블록 만 포함합니다. 2. 아키텍처면에서 보면 FPGA는 '미세 입자'디바이스로 간주되지만 CPLD는 '거친 입자'로 간주됩니다. 3. FPGA는 복잡한 애플리케이션에 이상적이며 CPLD는 단순한 애플리케이션에 적합하다. 4. FPGA는 작은 로직 블록으로 구성되며 CPLD는 더 큰 블록으로 구성됩니다.5. FPGA는 RAM 기반 디지털 로직 칩이며 CPLD는 EEPROM 기반입니다. 6. CPLD는 훨씬 저렴하지만 일반적으로 FPGA는 더 비싸다.

7. 지연은 FPGA보다 CPLD에서 훨씬 더 예측 가능하다.