Chap 9. Programmable logic and memory 디지탈 논리 회로 Chap 9. Programmable logic and memory 한양대학교 전자컴퓨터공학부 박 성 주 교수
대량의 정보를 저장하는 반도체 메모리 시스템에 관하여 설명한다. 메모리의 구조, 읽기, 쓰기, 프로그래밍 등의 동작을 설명한다. ROM: 읽기 전용 반도체 메모리 PROM: 1회 프로그램가능, 읽기 전용 반도체 메모리 EPROM: 지울 수 있는 읽기 전용 반도체 메모리 PLD: 논리구조를 프로그램할 수 있는 소자 PLA: AND-OR 배열을 프로그램 하도록 구성됨 PAL: AND 배열만 프로그램 하도록 구성됨 GAL: PAL과 같으나, 맥크로 셀 출력 EPLD: 논리구조를 프로그램할 수 있는 PLD FPGA: 유저가 논리함수를 프로그램할 수 있는 EPLD
9.1 Memory 그림 9-1 ROM(PROM 및 EPROM) 블록
입력 출력 A3 A2 A1 D4 D3 D2 D1 1 표 9.1 ROM으로 실현된 진리표
그림 9-2 3X8 디코드, 다이오드, 인버터로 구성된 ROM
그림 9-3 단일 퓨즈 PROM 셀
그림 9-4 전형적인 ROM의 내부구조
Intel part number 어레이 크기 (bits) 메모리 조직 2716 2732 2764 27128 27256 27512 27C010 27C020 27210 27C210 27C220 27C040 27C240 16K 32K 64K 128K 256K 512K 1M 2M 4M 2K × 8 4K × 8 8K × 8 16K × 8 32K × 8 64K × 8 128K × 8 256K × 8 64K × 16 128K × 16 512K × 8 256K × 16 표 9.2 Intel EPROM 메모리 어레이 크기 및 조직
6.2 Using an EPROM to realize a sequential circuit 그림 9-5 EPROM/ROM 및 상태변수 플립플롭으로 분할된 순서회로
9.3 Programmable Logic Devices 그림 9-7 AND와 OR 상호 연결로 구성 가능한 PLA
그림 9-8 부울함수 O3, O2, 및 O1 PAL실현
그림 9-9 PLA 논리
그림 9-10 PAL 논리
그림 9-11 표준 I/O PAL
그림 9-12 프로그래머블 I/O PAL
그림 9-13 레지스트된 출력 PAL
그림 9-14 EX-OR 레지스트된 출력 PAL
그림 9-15 O1, O2, O3을 실현하기 위해 연결된 PAL10H8
표 9.6 10진 업/다운 카운터 천이표 차기 상태: X CE = 현재 상태 0 0 0 1 1 0 1 1 F4 F3 F2 F1 차기 상태: X CE = 현재 상태 0 0 0 1 1 0 1 1 F4 F3 F2 F1 TC 1 표 9.6 10진 업/다운 카운터 천이표
그림 9-16 PAL16R4를 이용하여 실현된 업/다운 카운터 (a) PAL16R4를 이용하여 실현된 업/다운 카운터 상태변수 F4 & F3
그림 9-16 Continued (b) PAL16R4를 이용하여 실현된 업/다운 카운터 상태변수 F2 & F1
(c) PAL16R4를 이용하여 실현된 업/다운 카운터 TC 출력 그림 9-16 Continued
9.4 Erasable Programmable Logic Devices 그림 9-23 EPLD의 일반적인 구조
특징 퓨즈 가능 PLD 소거 가능 PLD Power consumption Programmability Density Testability Speed Security Higher (bipolar) Once (fuse links) Lower Difficult Fastest No, designs can be reconstructed Lower (CMOS) UV-erasable, reprogram Higher Easier Slower Yes, protection bits are buried in silicon 표 9.10 퓨즈가능 PLD와 소거가능 PLD의 비교
그림 9-24 Altera EPLD 설계 시스템
그림 9-25 EPM5000 시리즈 EPLD 매크로 셀
그림 9-26 EP600 EPLD 매크로 셀
그림 9-27 74xx191 업-다운 카운터
그림 9-30 PLD 설계과정 흐름도
9.6 Field Programmable Gate Array 그림 9-37 Xilinx 필드 프로그래머블 게이트 어레이 구조
그림 9-38 Xilinx 2000 시리즈 FPGA 논리 블록
그림 9-39 Xilinx FPGA I/O 블록
그림 9-40 Xilinx 3000 시리즈 논리 블록
그림 9-41 조합논리 함수를 생성하는데 사용된 논리 블록
그림 9-42 두 개의 4 변수 함수를 생성하는데 사용된 논리 블록
그림 9-43 멀티플렉스된 조합논리 함수
그림 9-44 멀티플렉스 플립플롭 출력으로 구성된 논리블록
그림 9-45 13 변수 부울함수까지 생성할 수 있는 내부 연결된 세 개의 CLB
그림 9-46 Xilinx 스위칭 행렬의 내부 연결구조
그림9-47 외부 직렬 메모리 칩을 사용한 Xilinx FPGA 직렬모드
그림 9-48 외부 EPROM을 사용한 Xilinx FPGA 병렬모드
부품 XC2064 XC2018 XC3020 XC3030 XC3042 XC3064 XC3090 Equivalent gates CLBs IOBs Logic flip-flop On-chip 1200 64 58 None 1800 100 74 2000 128 16-bit 3000 80 200 20-bit 4200 144 96 288 24-bit 6400 224 120 448 32-bit 9000 320 640 40-bit Bus (horizontal long lines) 표 9.13 Xilinx FPGA 소자 패밀리 (Xilinx사 제공)
표 9.14 Xilinx 매크로함수의 일부 리스트 Xilinx mnemonic Function #CLBs GADD GEQGT Function #CLBs GADD GEQGT PIN LD FD FDMS FJK FT2 D2-4 D3-8 74-42 M3-1 74-151 RD4 RD8 RS4 74-194 C4BCP C8JCR 74-160 74-161 Full adder Equal or greater Input pad Data latch D flip-flop D FF w/2-in mux and set J-K flip-flop 2-input toggle FF 1-of-4 decoder 1-of-8 decoder 1-of-10 decoder 3-to-1 multiplexer 8-to-1 multiplexer 4-bit data register 8-bit data register 4-bit shift register 4-bit bidirection SR 2-bit binary counter 4-bit Johnson counter 4-bit BCD counter 4-bit binary counter 1 1 I/O 2 4 7 8 12 3 표 9.14 Xilinx 매크로함수의 일부 리스트
(a) PIO Input/Output Pad (b) Multiplexed Data Latch 그림 9-51 매크로 논리기호의 예
(d) 74xx151 8-to1 Multiplexer (c) 1-of-8 Decoder 그림 9-51 매크로 논리기호의 예