Basic/기초지식

FPGA

Elect-M 2021. 8. 25. 10:00
728x90
반응형
SMALL

FPGA 란?

 

Field Programmable Gate Array의 약자이다.

 

설계 가능 논리 소자와 프로그래밍이 가능한 내부 회로가 포함된 반도체 소자이다.

 

설계 가능 논리 소자는 AND, OR, XOR, NOT, 디코더나 계산기능의 조합 기능같은 기본적인 논리 게이트의 기능을 복제하여 프로그래밍할 수 있다. 

대부분의 FPGA는 프로그래밍 가능 논리 요소 (FPGA 식으로는 논리 블록이라고도 함)에 간단한 플립플롭이나 더 완벽한 메모리 블록으로 된 메모리 요소를 포함하고 있다.

 

FPGA의 핵심은 (“FPGA-dom”의 원래 정의로 볼 때) 프로그래밍이 가능한 논리 블록의 어레이로 표기되는 프로그래밍 가능 패브릭이라는 것이다.

 

FPGA의 회로 구성

 

FPGA 내부의 디지털 회로를 구현할 때에 가장 기초적인 요소는 Look-up Table(LUT) 과 Flip-Flop(플립플롭) 이다.

 

Look-up Table

Look-up Table 은 한 데이터 형태에서 다른 데이터 형태로 변환할 때 사용된다.

 

대부분의 FPGA는 4입력 논리 함수를 구현하도록 구성 가능한 4-INPUT LUT를 사용한다.

4-Input LUT 로 예를 들자면 Input 4개로 조합할 수 있는 모든 불 함수(Boolean Func.)구현이 가능하다.

 

FPGA 에서 Input 을 통해 조합가능한 모든 Truth Table 을 내장하고 있다.

 

이러한 LUT 를 조합하면 AND/OR/NOR Gate 등 모든 디지털 회로를 구현할 수 있다는 장점이 있다.

 

Flip-Flop(F/F) - 플립플롭 

Flip-Flop(F/F) 는 Latch 와 기능적으로 비슷하다.

 

전자공학에서 1비트의 정보를 보관, 유지할 수 있는 회로이며 순차회로의 기본 요소라고 볼 수 있다.

 

Flip-Flop 과 Latch 의 차이점은 Clock Pin 의 유무이다. Flip-Flop 은 Latch 와 달리 Clock Pin 을 포함하는 것이 특징이다.

 

디지털 시스템 설계에서의 회로를 구성할 때, 조합논리와 결합하여 순차회로의 기능을 구현하는 중요한 요소로서 디지털 로직을 사용하는 많은 전자회로에 사용한다는 특징이 있다.

 

즉, 순차적인 기능을 수행하는 등 Timing 에 관련된 부분에서 Flip-Flop 을 사용하기 때문에 FPGA 에는 보통 LUT 끝에 Flip-Flop 이 달려있다.

 

 

FPGA의 프로그래밍 

 

원하는 설계를 만들려면 몇가지 HDL (Hardware Description Language)를 사용할 수 있는데, 

HDL은 마치 소프트웨어와 비슷하게 하드웨어를 구성할 수 있게 해주는 언어이다.

 

가장 많이 사용하는 HDL은 Verilog 및 VHDL이다. 

 

HDL로 회로를 언어적 형태로 작성한 후 FPGA를 구성하는데 사용할 수 있는 비트 파일로 변환시켜 FPGA를 구성한다.

 

VHDL

디지털 회로 및 혼합 신호를 표현하는 하드웨어 기술 언어이다.

기존의 심볼에 의한 회로도 작성 대신 언어적 형태로 전자회로의 기능을 표현한다.

 

아날로그 신호(mixed-signal)는 VHDL-AMS(VHDL Analog and Mixed-Signal Extensions) 로 표현하지만, 실제 활용면에서 디지털회로에 많이 적용되어 사용한다.

 

VHDL 을 이용한 AND GATE 동작 예문

 

Verilog

IEEE 1364로 표준화된 Verilog(베릴로그)는 전자 회로 및 시스템에 사용되는 하드웨어 기술 언어이며, 회로 설계, 검증, 구현 등 여러 용도로 사용할 수 있다.

C 언어와 비슷한 문법을 가져서 사용자들이 쉽게 접근할 수 있도록 만들어졌다.

‘if’나 ‘while’과 같은 제어 구조도 동일하며, 출력 루틴 및 연산자들도 거의 비슷하다.

Verilog 를 사용한 두개의 플립플롭 동작 예문

728x90
반응형
SMALL

'Basic > 기초지식' 카테고리의 다른 글

스펙트럼 분석기(Spectrum Analyzer) - 1  (0) 2022.02.07
특성 임피던스(Characteristic Impedance)  (0) 2021.10.08
임피던스(Impedance)  (0) 2021.10.07
DC(직류) VS AC(교류)  (0) 2021.10.04
세계 정격 전압/주파수 규격  (0) 2021.08.14