6장 마이크로프로세서 메모리 및 입출력장치 인터페이스
“Microprocessor 메모리 및 입출력장치 인터페이스”에 대해 알아보겠습니다. 학습개요 이번 시간에는... “Microprocessor 메모리 및 입출력장치 인터페이스”에 대해 알아보겠습니다. 학 습 목 표 이장에서는 마이크로프로세서 메모리 맵에 대해 공부하고. 메모리와 입출력 장치를 설계하는 방법을 익힌다. 학 습 목 차 ROM, RAM 영역설계 Decoder를 이용한 Memory 영역설계 Gate를 이용한 Memory 영역설계 8085 microprocessor Input Output Device interface
ROM, RAM 영역설계 메모리 인터페이스 설계 1) 설계 순서 (1) Memory 영역 분석 1) 설계 순서 (1) Memory 영역 분석 (2) Memory device 결정 (3) Memory Map 구성 (4) Address table 구성 (5) 회로설계 ex1) EPROM 2716을 4000H - 47FFH번지에 설계하여라 FFFFH 47FFH 4000H 0000H (1) Address 영역 4000-47FF (2) EPROM 2716 address( A0 - A10) (3) Memory map ROM 영역
ROM, RAM 영역설계 메모리 인터페이스 설계 (4) Address table 영 역 Chip select 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 1 4000H ROM 47FFH Chip select ROM address 고유 영역(A0-A10) (5) 회로설계
ROM, RAM 영역설계 메모리 인터페이스 설계 ex2) EPROM 2716(2Kbyte)을 이용하여 0000H - 0FFFH번지에 설계하여라 FFFFH 0FFFH 0800H 07FFH 0000H (1) Address 영역 0000-0FFF (2) EPROM 2716 address( A0 - A10) 2Kbyte 메모리 (3) Memory map ROM 2영역 ROM 1영역 (4) Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 0000H ROM_1 07FFH 1 0800H ROM_2 0FFFH Chip select ROM address 고유 영역(A0-A10)
ROM, RAM 영역설계 메모리 인터페이스 설계 (5) 회로설계
ROM, RAM 영역설계 메모리 인터페이스 설계 ex3) SRAM MC6116을 2000H – 0FFFH번지에 설계하여라 (1) Address 영역 2000H – 0FFFH (2) SRAM MC6116 address( A0 – A10) (3) Memory map FFFFH 2FFFH 2800H 27FFH 2000H 0000H RAM 2영역 RAM 1영역 (4) Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 1 2000H RAM_1 27FFH 2800H RAM_2 2FFFH Chip select RAM address 고유 영역(A0-A10)
Z80 CPU ROM, RAM 영역설계 A0 – A10 메모리 인터페이스 설계 (5) 회로설계 A0-A10 Address bus(A0 – A10 ) Z80 CPU A0 – A10 A0 – A10 /OE /MREQ /IORQ /RD /WR /OE RAM1 (6116) RAM1 (6116) /WE /WE CE’ CE’ D0 - D7 D0 - D7 D0 - D7 Data bus (D0- D7) 1 A15 A14 A13 A12 A11 2000H 2800H
Memory address 고유 영역(A0-A10) ROM, RAM 영역설계 메모리 인터페이스 설계 ex4) 아래 Memory map에 의해 ROM과 RAM을 설계하시오 FFFFH 27FFH 2000H 07FFH 0000H Address 영역 ROM : 0000H – 07FFH RAM : 2000H- 27FFH (2) ROM 2716 SRAM MC6116 address( A0 – A10) (3) Memory map RAM ROM (4) Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 0000H ROM 07FFH 1 2000H RAM 27FFH Chip select Memory address 고유 영역(A0-A10)
Z80 CPU ROM, RAM 영역설계 D0 - D7 A15 A14 A13 A12 A11 메모리 인터페이스 설계 (5) 회로설계 A0-A10 Address bus(A0 – A10 ) Z80 CPU A0 – A10 A0 – A10 /OE /OE /MREQ /IORQ /RD /WR ROM (2716) RAM (6116) /WE CE’ CE’ D0 - D7 D0 - D7 D0 - D7 D0 - D7 Data bus (D0- D7) 1 A15 A15 A14 A14 A13 A13 A12 A12 A11 A11 0000H 2000H
Decoder를 이용한 Memory 영역설계 74138 3*8 Decoder truth table A B C D0 D1 D2 D3 D4 D5 D6 D7 1 74138 3*8 Decoder A D0 B D1 C D2 D3 D4 G1 D5 G2 D6 G3 D7 G1=1,G2=0,G3=0일때 74138이 Active가 된다
Memory address 고유 영역(A0-A10) Decoder를 이용한 Memory 영역설계 Decoder를 이용한 Map 설정 Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 0000H 07FFH 1 0800H 0FFFH 74138 Decoder 입력 Chip En Memory address 고유 영역(A0-A10) Map 영역 분할
Memory address 고유 영역(A0-A10) Decoder를 이용한 Memory 영역설계 Decoder를 이용한 Map 설정 FFFFH 17FFH 1000H 0FFFH 0800H 07FFH 0000H ex) 아래 Memory map에 의해 ROM을 설계하시오 ROM_3 ROM_2 ROM_1 Address 영역 ROM : 0000H – 07FFH ROM : 0800H – 0FFFH ROM : 1000H – 17FFH (2) ROM 2716 address( A0 – A10) (3) Memory map Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 0000H 07FFH 1 0800H 0FFFH 1000H 17FFH 74138 Decoder 입력 Chip En Memory address 고유 영역(A0-A10)
Decoder를 이용한 Memory 영역설계 Decoder를 이용한 Map 설정 (5) 회로설계
Memory address 고유 영역(A0-A14) Decoder를 이용한 Memory 영역설계 Map 설정 ex) 아래 Memory map에 의해 ROM을 설계하시오 FFFFH 8000H 7FFFH 0000H RAM ROM Address 영역 ROM : 0000H – 7FFFH RAM : 8000H – FFFFH (2) ROM 27256 address( A0 – A14) :32Kbyte RAM 62256 address( A0 – A14) :32Kbyte (3) Memory map (4) Address table A 15 14 13 12 11 10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 영 역 0000H ROM 7FFFH 1 8000H RAM FFFFH Chip En Memory address 고유 영역(A0-A14)
Gate를 이용한 Memory 영역설계 Map 설정 (5) 회로설계
8085 microprocessor 그림 2-12. 8085 CPU 8085 microprocessor 외부 핀 X1 X2 RESET OUT SOD SID TRAP RST7.5 RST6.5 RST5.5 INTR /INTA HOLD HLDA RESET IN READY IO/M S1 /RD /WR ALE INTEL 8085 8bit microprocessor Address data bus AD0 -AD7 AD0-AD7 address bus A8-A15 A8-A15 그림 2-12. 8085 CPU
8085 microprocessor Demultiplexed address interface Intel 계열 CPU는 하위 주소버스는 데이터 버스와 동일한 버스를 사용하도록 설계되어 있다. 따라서 외부 에서 주소와 데이터버스를 분리 시켜주는 회로가 필요하다. 이 방법을 demultiplexed address interface 가고 한다. Address bus INTEL 8085 8bit microprocessor AD0-AD7 A8-A15 Latch ALE A0-A7 A0-A15 D0-D7 Data bus CPU에서 먼저 address 신호를 출력한 다음 ALE( Address Latch Enable)에 의하여 address를 래치 한다. 이때 address bus 는 A0-A7을 구성하고 A8-A15을 합성하면 A0-A15까 된다. 데이터 신호는 address 신호다음에 ALE가 “Low” 일 때에 출력된다.
{ 8085 microprocessor Demultiplexed address interface address data AD0-AD7 ALE D0-D7 Address A0-A7 A0-A7 Address A8-A15 A8-A15 A0-A15 { ① AD0-AD7(하위 8비트 버스)에 주소 신호(A0-A7)를 출력한다 ② ALE신호가 “high”로 되면서 래치회로에서 A0-A7을 래치한다. ③ ALE신호를 “low”로 전환하고 D0-D7 를 출력한다.
Demultiplexed address bus 방식 회로 8085 microprocessor Demultiplexed address interface Demultiplexed address bus 방식 회로
Input Output Device interface Micro-computer system CPU Interface 회로 I/O device Bus Bus Buffer, 기타 Interface 회로 Input Device : Key Board, Mouse,Tablet, AD converter 등 Output Device : CRT display, 7segment, LCD, Printer, Plotter, DA converter 등 I/O device : Memory, Magnetic tape, HDD,FDD
Input Output Device interface Input Output Device의 Address interface 방식 Input Output 의 주소를 구분하는 방식 (1)Memory Mapped I/O방식 (2) I/O Mapped I/O(Isolated Mapped I/O방식 Main memory Main memory FFFF FFFF I/O memory I/O address FF I/O address 00 0000 0000 Main memory 내부에 I/O address 영역을 두는 방식 회로가 간단하다 Main memory 영역 감소 Main memory 영역과 I/O address영역을 분리 시켜서 설계된 방식 회로가 복잡하다 main memory 영역을 모두 사용 가능
Input Output Device interface Parallel I/O Interface device Parallel I/O device CPU PORT I/O device Bus Data Bus 반드시 Port를 통하여 Data 전송 Bus 00 Port A Port A Data Register Chip select Port address A0 A1 Port B 01 Port B Data Register 10 Port C Data Register Port C R/W’ Interrupt요구 11 Control Register Interrupt확인 각 Port들은 8bit로 구성, Handshake 신호들을 포함하고 있다
Input Output Device interface Parallel I/O Interface 연결 PIO : Zilog Z8420, Intel 8255, Motorola MC6820 ex) 8255 PIO를 (30,31,32,33)(34,35,36,37)번지에 연결하시오 (4) Address table PIO address Map FFH 37H 34H 33H 30H 00H A7 A6 A5 A4 A3 A2 A1 A0 영 역 1 30H PIO_1 33H 34H PIO_2 37H PIO_2 PIO_1 Decoder select Decoder 입력 PIO 고유address A0-A1
Input Output Device interface