FPGA   Field Programmable Gate Array  

(2021-01-13)
1. FPGA (Field Programmable Gate Array)

  ㅇ 하드웨어 설계 유연성을 증대시키기 위해, 프로그램이 가능한 게이트 어레이 기반의 ASIC
     - 1천개 이하의 게이트로 이루어진 소규모 PLD에 비해, 
     - 게이트 어레이에 가깝게 10만개 이상의 게이트로 이루어진 반주문형 ASIC


2. FPGA의 특징

  ㅇ 저 집적도,동작 속도가 다소 느리나, 재구성 및 프로그래밍 가능
     - 서로 연결하여 보다큰 논리 함수를 만들 수 있도록,
        . 상대적으로 작고 독립적인 프로그램 가능 논리 모듈(블록)들로 구성됨
     - 각각의 논리 모듈(블록)은, 
        . 4~5개의 입력 변수들을 다룰 수 있음

  ㅇ 현장 프로그램 가능 (유연성 있는 일반화된 배선 구조)
     - 동일 논리 블록 어레이프로그램 가능한 내부 연결선에 의해,
     - 후에 설계자가 이들을 통해서 프로그램이 가능하여, 원하는 논리 기능을 수행 가능

  ㅇ 원하는 논리 기능을 만들기 위해, 룩업테이블(LUT,Look-Up Table) 방식 사용
     - 함수의 출력 결과를 미리 SRAM 메모리에 저장함으로써 원하는 논리 함수를 생성 
     - 즉, 게이트들을 직접 구현 사용하기 보다, 미리 준비해 둔 LUT 테이블을 사용
        . 룩업테이블 : 조합 논리 함수를 생성하는 프로그램 가능 논리 블록의 일부분
           .. 입력 값들에 대한 출력값을 미리 준비해 둔 구조

  ㅇ 프로토타입(Prototype) 및 제품 개발 등의 하드웨어 설계 유연성 증대
     - HDL(VHDL,Verilog) 등에 의한 설계를 하고,
     - 그 설계 결과물을, FPGA 디바이스에 다운로드하여, 
     - 동작 구현 및 검증


3. FPGA의 내부 구성

  ㅇ (입출력)  프로그램 가능 입출력 블록 (Programmable Input/Output Block)
     - FPGA 칩 외곽에 위치하여, 내부 논리와 외부 칩 선과의 프로그램 가능 연결을 담당
     - 멀티플렉서,플립플롭 등이 있음

  ㅇ (논리)  프로그램 가능 논리 블록 (Programmable or Configuable Logic Block, CLB)
     - 멀티플렉서,룩업테이블,AND-OR 게이트 또는 NAND-NAND 어레이에 의해 만들어짐
     - 로직 셀들이 모여있는 블록(CLB)들의 연결 구성을 통해 로직의 설정이 이루어짐

  ㅇ (배선)  프로그램 가능 배선 자원 (Programmable Routing Resource)
     - 특정 연결을 끊거나 잇는 것


4. FPGA의 설계 과정들설계 명세 작성
     - 요구사항 분석
     - 회로 기능의 분할 및 정의
     - 외부와의 인터페이스 
     - 기타 칩 면적,소모 전력,테스트 등
  ㅇ 설계 입력 및 기술
     - 회로HDL로 기술하고, 게이트 또는 동작적인 관점의 설계 결과물로써 합성됨
  ㅇ 기능 시뮬레이션
     - 설계회로 기능에 대한 시뮬레이션 및 검증
  ㅇ 합성
     - HDL로 기술된 회로를, 각 EDA 제조라이브러리 내 실제 소자로 변경,연결하는 과정
     - 게이트들과 네트들의 정보넷리스트가 만들어짐
  ㅇ 구현 (배치,배선 포함, PAR : Place And Route)
     - 사용 부품들을 배치하고 서로 연결하는 것
  ㅇ 타이밍 시뮬레이션
     - 설계 합선된 회로를 FPGA 보드에 다운로드될 요소들로 변경하여,
     - 이들 간의 전달 지연,배선 지연,팬아웃 등에 대해,
     - 기능,동작,타이밍을 검증 
  ㅇ 보드에 다운로드
  ㅇ 보드 동작 검증


5. FPGA의 개발 환경 例)

  ㅇ 하드웨어
     - Intel(Altera)社, Xilinx社 등의 FPGA 보드
  ㅇ 소프트웨어 
     - Intel(Altera)社의 Quartus Prime, Xilinx社의 ISE,Vivado 등 
     - Mentor Gaphics社의 ModelSim 시뮬레이터 등


[프로그램 가능 IC] 1. ASIC 2. PLD 3. FPGA 4. 게이트 어레이
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   전기전자공학
        1. 전기전자공학
        2. 전기 (Electricity) 이란?
    1.   디지털공학
          1. 디지털 공학
      1.   (디지털) 수 표현
      2.   수치 코드
      3.   부울 대수
      4.   논리 게이트
      5.   조합논리회로
      6.   순서논리회로
      7.   표준 로직 IC
      8.   게이트 전기적 특성
      9.   프로그램 가능 IC
        1.   1. ASIC
            2. PLD
            3. FPGA
            4. 게이트 어레이
      10.   하드웨어 기술(記述)
    2.   신호 및 시스템
    3.   회로해석
    4.   전자기학
    5.   초고주파공학
    6.   반도체
    7.   전자회로
    8.   전기공학
    9.   자동제어
    10.   전자공학(기타일반)
  5.   방송/멀티미디어/정보이론
  6.   통신/네트워킹
  7.   정보기술(IT)
  8.   공학일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌