현장 프로그래머블 게이트 어레이 (FPGA) 편집

사용자가 독자적인 논리 회로를 구성할 수 있는 게이트 어레이의 일종이다. FPGA의 정의는 명확하지 않고, 사용자나 제조사에서 독자적으로 규정해서 부르고 있지만, 대체로 1,000 논리 구성체(약 20,000 게이트) 이상FPGA라고 부르는 경우가 많다.

SRAM식 소자 편집

내부에 다수의 LUT(Look Up Table), D-FF, 라우팅 자원을 탑재하고 있어서, 이것들을 조합하여 회로를 구성하는 형식이 대부분이다. LUT의 내용, D-FF의 동작 모드, 라우팅의 정보는 SRAM에 저장된다. 즉 전원을 끄면 회로 정보가 휘발돼버리기 때문에 외부의 ROM을 연결해 전원이 들어올 때 회로 정보를 로드하고 나서 사용되는 형식이 일반적이다. 최근에는 컴팩트플래시에 회로 정보 파일을 저장해서, FPGA에 전송하여 LSI가 초기화되는 경우도 있다.

내부에 다수의 LUT(Look Up Table), D-FF, 라우팅 자원뿐만 아니라 최근에는 이것이 조합된 S-RAM 블록, 곱셈기, PLL, 클럭 드라이버등을 탑재하여 복잡한 응용에 적용할 수 있는 것도 있다. 뿐만 아니라, 입출력의 TTL 레벨, CMOS 레벨, 차분 신호등 다양한 입출력 신호를 용도에 맞추어 설정할 수 있다.

SRAMFPGAIP도 풍부해져서 CPU, 연산기, 주변 회로에 적용이 가능하다. CPU에 이런 기능을 포함시킨 소자도 있다.

EEPROM식 소자 편집

그리고 회로의 정보를 내부의 EEPROM을 이용하는 장치도 있다. 이것은 전원이 꺼져도 회로 정보를 보관할 수 있기 때문에 전원 공급후 신속하게 사용할 수 있고 설계의 기술이 누출될 위험이 없는 장점이 있다.