프로그래머블 로직 소자
Programmable logic device프로그래머블 로직 디바이스(PLD)는 재구성 가능한 디지털 회로를 구축하기 위해 사용되는 전자 부품입니다.고정 기능을 가진 이산 논리 게이트를 사용하여 구성된 디지털 로직과 달리 PLD는 제조 시 정의되지 않은 기능을 가지고 있습니다.회로에서 PLD를 사용하려면 먼저 원하는 [1]기능을 구현하도록 PLD를 프로그래밍해야 합니다.고정 논리 소자에 비해 프로그램 가능한 논리 소자는 복잡한 논리 설계를 단순화하고 뛰어난 [2]성능을 제공할 수 있습니다.마이크로프로세서와 달리 PLD를 프로그래밍하면 장치의 게이트 간 연결이 변경됩니다.
PLD는 심플한 프로그래머블 로직 디바이스(SPLD)로 크게 분류할 수 있습니다.심플 프로그래머블 로직 디바이스(SPLD), 프로그래머블 로직 어레이 및 범용 어레이 로직, 복합 프로그래머블 로직 디바이스(CPLD)와 필드 프로그래머블 게이트 어레이(FPGA)가 있습니다.
역사
1969년 모토로라는 12개의 게이트와 30개의 미커밋 입출력 [3]핀을 갖춘 마스크 프로그래밍된 게이트 어레이인 XC157을 제공하였다.
1970년에 Texas Instruments는 IBM 읽기 전용 연상 메모리(ROAM)를 기반으로 마스크 프로그래밍 가능한 IC를 개발했습니다.이 장치인 TMS2000은 IC를 생산하는 동안 금속층을 변경하여 프로그래밍되었습니다.TMS2000에는 최대 17개의 입력과 18개의 출력이 있으며 메모리용 JK 플립 플랍은 8개입니다.TI는 이 [4]장치를 위해 Programmable Logic Array(PLA; 프로그래머블 로직 어레이)라는 용어를 만들었습니다.
1971년 GE(General Electric Company)는 새로운 PROM(Programmable Read-Only Memory) 기술을 기반으로 프로그래밍 가능한 논리 소자를 개발하고 있었습니다.이 실험 장치는 다단계 로직을 허용함으로써 IBM의 ROAM을 개선했습니다.인텔은 방금 플로팅 게이트 UV 소거 가능 PROM을 도입했기 때문에 GE의 연구원이 이 기술을 도입했습니다.GE 장치는 Altera EPLD보다 10년 이상 앞서 개발된 최초의 소거 가능한 PLD였습니다.GE는 프로그래밍 가능한 논리 [5][6][7]소자에 대한 몇 가지 초기 특허를 취득했습니다.
1973년 National Semiconductor는 메모리 레지스터가 없는 14개의 입력과 8개의 출력을 가진 마스크 프로그래밍 가능한 PLA 장치(DM7575)를 도입했습니다.이것은 TI 부품보다 인기가 높았지만 금속 마스크를 만드는 데 드는 비용은 사용을 제한했습니다.1975년 시그네틱스가 생산한 82S100의 필드 프로그래머블 로직 어레이의 기초가 됐기 때문에 의미가 크다.[8][9]
1974년 GE는 MMI(Monolithic Memory)와 GE의 혁신을 통합한 마스크 프로그램 가능한 논리 소자를 개발하기로 계약을 체결했습니다.이 디바이스는 'Programmable Associative Logic Array' 또는 PALA로 명명되었습니다.MMI 5760은 1976년에 완성되었으며 100개가 넘는 게이트의 다단계 또는 순차 회로를 구현할 수 있습니다.디바이스는 부울식이 디바이스 설정을 위한 마스크 패턴으로 변환되는 GE 설계 환경에서 지원되었습니다.그 부품은 시장에 [10]나온 적이 없다.
PLA
1970년에 Texas Instruments는 IBM 읽기 전용 연상 메모리(ROAM)를 기반으로 마스크 프로그래밍 가능한 IC를 개발했습니다.이 장치인 TMS2000은 IC를 생산하는 동안 금속층을 변경하여 프로그래밍되었습니다.TMS2000에는 최대 17개의 입력과 18개의 출력, 메모리용 8개의 JK 플립 플랍이 있습니다.TI는 이 [4]장치를 위해 프로그래밍 가능한 논리 어레이라는 용어를 만들었습니다.
프로그래머블 로직 어레이(PLA)는 프로그래머블 AND 게이트 어레이를 가지며, 이 어레이는 프로그래머블 OR 게이트 어레이에 링크되어 조건부로 보완되어 출력을 생성할 수 있다.PLA는 ROM의 개념과 비슷하지만 PLA는 변수의 완전한 디코딩을 제공하지 않으며 ROM과 같이 모든 Minterms를 생성하는 것은 아닙니다.
PAL
PAL 디바이스는 입력 및 출력으로부터의 동기 또는 비동기 피드백의 관점에서 각 출력에 대해 "제품의 합계" 이진 논리식을 구현하기 위해 사용되는 "고정 OR, 프로그래머블 AND" 평면에 배치된 트랜지스터 셀 어레이를 가진다.
MMI는 1978년에 프로그래머블 어레이 로직(PAL)이라는 획기적인 장치를 도입했습니다.이 아키텍처는 프로그래밍 가능한 OR 어레이를 생략했기 때문에 Signatics FPLA보다 단순했습니다.이것은 부품을 더 빠르고, 더 작고, 더 저렴하게 만들었습니다.FPLA는 28핀 600밀리 패키지로 제공되었으며, FPLA는 20핀 300밀리 DIP 패키지로 제공되었습니다.PAL 핸드북은 설계 프로세스를 명확하게 설명했습니다.PALASM 설계 소프트웨어(PAL 어셈블러)는 엔지니어의 부울 방정식을 부품을 프로그래밍하는 데 필요한 퓨즈 패턴으로 변환했습니다.PAL 장치는 곧 National Semiconductor, Texas Instruments 및 AMD에 의해 세컨드 소싱되었습니다.
MMI가 20핀 PAL 부품에 성공한 후 AMD는 추가 기능을 갖춘 24핀 22V10 PAL을 출시했습니다.AMD는 MMI(1987년)를 인수한 뒤 반티스라는 통합사업부를 분사해 1999년 라티스반도체에 인수됐다.
GAL
PAL의 개량점은 1985년 래티스 세미컨덕터에 의해 발명된 범용 어레이 로직 디바이스(GAL)입니다.이 장치는 PAL과 동일한 논리적 특성을 가지고 있지만 지우고 다시 프로그래밍할 수 있습니다.GAL은 재프로그래밍을 통해 로직의 버그를 수정할 수 있는 설계의 프로토타이핑 단계에서 매우 유용합니다.GAL은 PAL 프로그래머 또는 지원 칩의 회로 내 프로그래밍 기법을 사용하여 프로그래밍 및 재프로그래밍됩니다.
래티스 GAL은 CMOS와 전기적으로 소거 가능한(E2) 플로팅 게이트 기술을 결합하여 고속 저전력 로직 소자를 구현합니다.International CMOS Technology(ICT; 국제 CMOS 기술) 법인에 의해 PEEL(프로그래머블 전기적 소거 가능 논리)이라고 불리는 유사한 장치가 도입되었습니다.
CPLD
PAL 및 GAL은 수백 개의 논리 게이트에 해당하는 작은 크기에서만 사용할 수 있습니다.대형 논리회로의 경우 복잡한 PLD 또는 CPLD를 사용할 수 있습니다.이것들은, 프로그램 가능한 상호 접속에 의해서 링크 되는 복수의 PAL 와 동등하게, 모두 1 개의 집적 회로에 포함됩니다.CPLD는 수천 또는 수십만 개의 논리 게이트를 대체할 수 있습니다.
일부 CPLD는 PAL 프로그래머를 사용하여 프로그래밍되지만 수백 개의 핀이 있는 디바이스에서는 이 방법이 불편해집니다.프로그래밍의 두 번째 방법은 장치를 프린트 회로 기판에 납땜한 다음 PC에서 직렬 데이터 스트림을 공급합니다.CPLD에는 데이터 스트림을 디코딩하고 지정된 논리 기능을 실행하도록 CPLD를 설정하는 회로가 포함되어 있습니다.일부 제조업체(Altera 및 Microsemi 포함)에서는 JTAG를 사용하여 에서 인서킷 CPLD를 프로그래밍하고 있습니다.JAM 파일
FPGA
PAL이 GAL과 CPLD로 개발되는 동안(위에서 모두 논의된), 별도의 개발 흐름이 일어나고 있었습니다.이러한 유형의 장치는 게이트 어레이 기술을 기반으로 하며 Field-Programmable Gate Array(FPGA; 필드 프로그래밍 가능 게이트 어레이)라고 불립니다.FPGA의 초기 예로는 시그네틱스가 1970년대 후반에 도입한82s100 어레이와 82S105 시퀀서가 있습니다.82S100은 AND 용어의 배열입니다.82S105에는 플립 플랍 기능도 탑재되어 있습니다.
(주의: 82S100 및 시그네틱스의 유사한 IC는 PLA-Structure, AND-Plane + OR-Plane)
FPGA는 논리 게이트의 그리드를 사용하며, 일단 저장되면 데이터는 일반 게이트 어레이와 유사하게 변경되지 않습니다."현장 프로그래밍 가능"이란 제조사가 아닌 고객이 기기를 프로그래밍하는 것을 말한다.
FPGA는 보통 큰 CPLD와 같은 방법으로 회로 기판에 납땜된 후 프로그래밍됩니다.대부분의 대규모 FPGA는 휘발성이 높기 때문에 전원이 공급되거나 다른 기능이 필요할 때마다 디바이스에 새로고침해야 합니다.설정은 보통 Configuration PROM 또는 EEPROM에 저장됩니다.EEPROM 버전은 시스템 내에서 프로그래밍할 수 있습니다(통상은 JTAG 경유).
FPGA와 CPLD의 차이점은 FPGA가 내부적으로 룩업 테이블(LUT)에 기반하고 있는 반면 CPLD는 게이트의 바다(Sea-of-Gate)로 논리 함수를 형성한다는 것이다(예: 제품의 합계).CPLD는 단순한 설계를 의미하며 FPGA는 보다 복잡한 설계를 의미합니다.일반적으로 CPLD는 광범위한 조합 로직 애플리케이션에 적합한 선택이며, FPGA는 마이크로프로세서와 같은 대형 스테이트 머신에 적합합니다.
EPLD
EPLD는 EPROM과 동일한 기술을 사용하여 패키지에 [11][12]석영 창이 있어 자외선에 노출되면 지워집니다.
EEPROM과 동일한 기술을 사용하여 EEPLD를 [11][12]전기적으로 삭제할 수 있습니다.
Erasable Programmable Logic Device(EPLD)는 사전에 연결되지 않은 PLD 배열로 구성된 집적회로입니다. 연결은 사용자에 의해 전기적으로 프로그래밍됩니다.대부분의 GAL 및 FPGA 디바이스는 EPLD의 [citation needed]예입니다.
기타 변종
이것들은 마이크로프로세서 회로로, 프로세서상에서 동작하는 코드에 의해서 변경할 수 있는 고정 기능이나 그 외의 기능을 포함하고 있습니다.자동 변경 시스템을 설계하려면 엔지니어가 새로운 방법을 배우고 새로운 소프트웨어 도구를 개발해야 합니다.
PLD는 현재 프로그램 가능한 로직으로 둘러싸인 고정된 기능(이른바 코어)을 가진 마이크로프로세서를 포함하고 있습니다.이러한 장치를 통해 설계자는 마이크로프로세서를 작동시킬 염려 없이 설계에 새로운 기능을 추가하는 데 집중할 수 있습니다.또, 고정 기능 마이크로프로세서는, 같은 프로세서를 실장하는 프로그래머블 게이트 어레이의 일부보다, 칩상의 공간을 적게 차지해, 프로그래머블 게이트 어레이가 설계자의 전용 회로를 격납하기 위한 공간을 더 많이 남긴다.
PLD의 설정 유지 방법
PLD는 논리 디바이스와 메모리 디바이스의 조합입니다.메모리는 프로그래밍 중에 칩에 주어진 패턴을 저장하는 데 사용됩니다.집적회로에 데이터를 저장하는 방법의 대부분은 PLD에서 사용하도록 조정되었습니다.여기에는 다음이 포함됩니다.
실리콘 부동액은 칩 내부의 실리콘 수정 영역에 전압을 가하여 이루어지는 연결부입니다.그것들은 전류에 의해 끊어질 때까지 연결부로 삶을 시작하는 일반적인 퓨즈와는 반대되는 방식으로 작동하기 때문에 항균제라고 불립니다.
SRAM(스태틱 RAM)은 휘발성 메모리 타입으로 전원을 끌 때마다 내용이 손실됩니다.따라서 회선을 켤 때마다 SRAM 기반의 PLD를 프로그래밍해야 합니다.이것은, 통상은 회선의 다른 부분에 의해서 자동적으로 행해집니다.
EPROM 메모리 셀은 게이트 전극에 전하를 영구적으로 포착하여 켤 수 있는 MOSFET(금속 산화물 반도체 전계효과 트랜지스터, MOS 트랜지스터)입니다.이것은 PAL 프로그래머에 의해서 행해집니다.이 전하는 수년 동안 지속되며 EPROM 지우개라고 불리는 장치에서 칩을 강한 자외선에 노출해야만 제거할 수 있다.
플래시 메모리는 비휘발성이기 때문에 전원이 꺼진 상태에서도 내용을 유지합니다.플로팅 게이트 MOSFET 메모리 셀에 저장되며 필요에 따라 지우고 재프로그래밍할 수 있습니다.따라서 프로토타입에 사용되는 PLD와 같이 자주 재프로그래밍될 수 있는 PLD에서 유용합니다.플래시 메모리는 EPROM과 유사한 전하를 포착하여 정보를 유지하는 EEPROM의 일종입니다.따라서 플래시 메모리는 정보를 수년 동안 저장할 수 있지만 EPROM만큼 오래 유지할 수는 없습니다.
2005년 현재 대부분의 CPLD는 전기적으로 프로그램 및 소거 가능하며 비휘발성입니다.시작할 때마다 내부 SRAM 셀을 프로그래밍하는 불편함을 정당화하기에는 너무 작고 EPROM 셀은 석영창이 달린 세라믹 패키지로 가격이 비싸기 때문이다.
PLD 프로그래밍 언어
많은 PAL 프로그래밍 장치는 표준 파일 형식(일반적으로 'JEDEC 파일')의 입력을 받아들입니다.소프트웨어 컴파일러와 유사합니다.로직 컴파일러의 소스 코드로 사용되는 언어를 하드웨어 기술 언어(HDL)[1]라고 합니다.
PALASM, ABEL 및 CUPL은 복잡도가 낮은 장치에 자주 사용되며, Verilog 및 VHDL은 보다 복잡한 장치에 널리 사용되는 상위 기술 언어입니다.더 제한적인 ABEL은 역사적 이유로 자주 사용되지만, 새로운 설계에서는 복잡도가 낮은 설계에서도 VHDL이 더 인기가 있습니다.
최신 PLD 프로그래밍 언어, 설계 흐름 및 도구에 대해서는 FPGA 및 재구성 가능 컴퓨팅을 참조하십시오.
PLD 프로그래밍 장치
디바이스 프로그래머는 부울 논리 패턴을 프로그래머블 디바이스에 전송하기 위해 사용된다.프로그래머블 로직의 초기에는 모든 PLD 제조업체가 자사의 로직 소자 제품군에 특화된 소자 프로그래머를 생산하기도 했습니다.이후 유니버설 디바이스 프로그래머가 시장에 등장하여 여러 제조사의 로직 디바이스 패밀리를 지원하게 되었습니다.오늘날의 장치 프로그래머는 일반적으로 기존의 모든 제조업체에서 제공하는 공통 PLD(대부분 PAL/GAL 등가물)를 프로그래밍할 수 있습니다.부울 로직 패턴(퓨즈)을 저장하기 위해 사용되는 일반적인 파일 형식은 JEDEC, Altera POF(프로그래머블오브젝트 파일) 또는 Xilinx BITstream입니다.[13]
「 」를 참조해 주세요.
- 복합 프로그래머블 로직 디바이스(CPLD)
- Field-Programmable Gate Array(FPGA; 필드 프로그래밍 가능 게이트 어레이)
- 매크로셀 어레이
- 프로그래머블 어레이 로직(PAL)
레퍼런스
- ^ a b Horowitz, Paul; Hill, Winfield (2015). Horowitz P., Hill W. - The Art of Electronics. New York. p. 764. ISBN 978-0-521-80926-9.
- ^ Holdsworth, B.; Woods, R. C. (2003). Digital Logic Design (4th ed.). Elsevier. ISBN 978-0-7506-4582-9.
- ^ Motorola Semiconductor Data Book, Fourth Edition. Motorola Inc. 1969. p. IC-73.
- ^ a b Andres, Kent (October 1970). A Texas Instruments Application Report: MOS programmable logic arrays. Texas Instruments. Bulletin CA-158. Report(리포트)에서는 마스크 프로그래밍 가능한 PLA의 TMS2000 및 TMS2200 시리즈를 소개합니다.
- ^ 그리어, 데이비드 L.전기 프로그램 가능한 논리 회로 미국 특허 3,818,452.양수인:제너럴 일렉트릭, 신청: 1972년 4월 28일 인정:1974년 6월 18일
- ^ 그리어, 데이비드 L.다중 레벨 어소시에이션 로직 회로 미국 특허 3,816,725양수인:제너럴 일렉트릭, 신청: 1972년 4월 28일 인정:1974년 6월 11일
- ^ 그리어, 데이비드 L.세그먼트 어소시에이션 로직 회로 미국 특허 3,849,638.양수인:제너럴 일렉트릭, 파일:1973년 7월 18일 인정:1974년 11월 19일
- ^ "Semiconductors and IC's : FPLA". EDN. Boston, MA: Cahners Publishing. 20 (13): 66. July 20, 1975. Intersil IM5200 필드 프로그래머블 로직 어레이에 관한 프레스 릴리즈.14개의 입력 핀과 48개의 제품 항.눈사태 유발 이주 프로그램.단가는 37.50달러였다.
- ^ "FPLA's give quick custom logic". EDN. Boston, MA: Cahners Publishing. 20 (13): 61. July 20, 1975. Signetics 82S100 및 82S101 필드 프로그래머블 로직 어레이에 관한 프레스 릴리즈.입력 핀 14개, 출력 핀 8개, 제품 항 48개NiCr 퓨즈 링크 프로그래밍.
- ^ Pellerin, David; Michael Holley (1991). Practical Design Using Programmable Logic. Prentice-Hall. p. 15. ISBN 0-13-723834-7.
- ^ a b 테르툴리엔 은주트체"디지털 일렉트로닉스 2: 순차 및 산술 논리 회로", 2016. 페이지 224.
- ^ a b 클라이브 맥스필드.'FPGA 설계 전사 가이드' 2004.p. 20.
- ^ PLD 파일 형식
외부 링크
Wikibooks는 다음과 같은 주제에 관한 책을 가지고 있습니다: Programmable Logic |
Wikimedia Commons에는 프로그래머블 로직 디바이스와 관련된 미디어가 있습니다. |
- "PLD Tools Creating SVF, JAM, STAPL and other formats". JTAG / boundary-scan. Corelis. Dec 1, 2010.
- "FPGAs and CPLDs". Lattice Semiconductor.