Professional Documents
Culture Documents
Microprocessor Part4 v1
Microprocessor Part4 v1
© DHBK 2005
A16/S3 G A16
A15
A8
A7
8086
A0
ALE G G
74LS373 74LS373
AD15 D15
‘245
AD8 G DIR D8
AD7 D7
‘245
AD0 G DIR D0
DEN
DT/R
14/Chapter4
© DHBK 2005
CS 1 CS hold time 60 ns
1
2 CS to data valid 30 ns
Data
3 Data hold time 5 10 ns
2 3
19/Chapter4
© DHBK 2005
A0 D0
Tín hiệu A1 D1
Dữ liệu
địa chỉ A2 D2
Am Dn
WR WE
CS OE
WR: write
WE: Write enable
chọn chip RD OE: Output enable
CS: Chip Select
RD: read
26/Chapter4
© DHBK 2005
EPROM
n+ n+
p
27/Chapter4
© DHBK 2005
EPROM
Vô cùng nhiều
electrons tự do
Vss
Vss Vss
D=Vss
EPROM
Vcc
Vss Vss
n+ n+
p
D=Vss
Các e tự do bị hút bởi điện áp
G=Vcc VGS, VGD, bị chặn bởi lớp
cách điện:
Kênh dẫn giữa cực nguồn và
S=Vss cực máng
29/Chapter4
© DHBK 2005
EPROM
Vcc
Vss Vss
n+ n+
p
D=Vss
Không có e tự do bị hút:
G=Vcc ĐIện áp dương bị chặn bởi điện tích
âm ở cực thả nổi:
Không có đường dẫn giữa nguồn và
máng
S=Vss
30/Chapter4
© DHBK 2005
EPROM: đọc
Vcc Vcc Vcc Vcc
Address
2-to-4 Decoder
2
MSB
2
LSB
2-to-4 Mux
Data
31/Chapter4
© DHBK 2005
Read(0x6)
EPROM: đọc
Vcc Vcc Vcc Vcc
0110
2-to-4 Decoder
01
10
2-to-4 Mux
0
32/Chapter4
© DHBK 2005
Read(0x8)
EPROM: đọc
Vcc Vcc Vcc Vcc
1000
2-to-4 Decoder
10
00
2-to-4 Mux
1
33/Chapter4
© DHBK 2005
EPROM: xóa UV
Vcc Vcc Vcc Vcc light
Address
2-to-4 Decoder
2
MSB
2
LSB
2-to-4 Mux
Data
34/Chapter4
© DHBK 2005
Write 1 at 0x2
EPROM: ghi 12V
Address
0010
2-to-4 Decoder
2
00
MSB
2
10
LSB
2-to-4 Mux
Data
35/Chapter4
© DHBK 2005
EPROM
• Ghi vào EPROM
Dùng mạch nạp với điện áp 12 V
1 ms một bit
• Xoá EPROM
20 phút dưới tia tử ngoại
Số lần ghi 3 lần
• Đọc EPROM
100 ns
• EPROM họ 27xxx
2708 (1K*8), 2716 (2K*8), 2732 (4K*8), 2764 (8K*8)
27128 (16K*8), 27256 (32K*8), 27512 (64K*8)
36/Chapter4
© DHBK 2005
EPROM
• Ví dụ: 2716 EPROM
U2
8
A0 O0
9 Address
7 10
6 A1 O1 11
5 A2 O2 13
4 A3 O3 14
3 A4 O4 15 CE
2 A5 O5 16
1 A6 O6 17
23 A7 O7
22 A8
19 A9
A10 Output
20
18 OE
120 100
CE
21
VPP
450
2716
37/Chapter4
© DHBK 2005
Loại ROM Thời gian ghi Thời gian đọc số lần ghi Kích thước
ROM NA 35 ns 0 Mbits
SRAM
Bộ giải mã: 1 hàng được đọc ra
01
1bit 1bit 1bit 1bit
cell cell cell cell
2-to-4 Mux
39/Chapter4
© DHBK 2005
Word
Vcc
Họat động
như điện trở
40/Chapter4
© DHBK 2005
Word
Vcc
5V 0V
Current
Giả thiết
Trạng thái ổn định; lưu trữ bit ‘1’
Word
Vcc
0V 5V
Current
Giả thiết
Trạng thái ổn định; lưu trữ bit‘0’
Word
Vcc
5V 0V
Current
1 0
43/Chapter4
© DHBK 2005
Word
Vcc
0V 5V
Current
0 1
44/Chapter4
© DHBK 2005
Word
Word
Vcc
Bit line
Bit R
Bit line
line inverse
0V
5V 5V
0V
Current
Current
Current
W.D’ W.D
45/Chapter4
© DHBK 2005
SRAM
• Đặc điểm:
6 transistors 1 bit: đắt!
Bị mất dữ liệu khi mất nguồn
nhanh: thời gian đọc và ghi 5 ns
Liên tục tiêu thụ năng lượng
Kích thước: 16 Mbit
• ứng dụng:
Bộ nhớ nhỏ và nhanh (cache)
Không dùng cho các thiết bị chạy pin
• Ví dụ: 4016 (2K*8), 250 ns, 6264(8Kx8), 62128(16Kx8)
A0-A10
D0-D7
OE
WE
CS
46/Chapter4
© DHBK 2005
Address
Data
47/Chapter4
© DHBK 2005
DRAM
Bộ giải mã: 1 hàng được đọc ra
01
1bit 1bit 1bit 1bit
cell cell cell cell
2-to-4 Mux
Data
48/Chapter4
© DHBK 2005
DRAM bit cell
Vcc/2
1 bit
Pre-
cell
charge
Word
line
Sense
amplifier
MUX
49/Chapter4
© DHBK 2005
Lưu trữ
DRAM bit cell
Vcc/2
Pre-
charge
Word
line
5V 0V 5V
0V 5V 5V
.2 m
h
Stores
.5 M e-
MUX
50/Chapter4
© DHBK 2005
Đọc
DRAM bit cell
Vcc/2
Pre-
charge
Word
line
2.55V
5V 2.45V
0V 2.55V
5V
2.55V
2.5V
5V
0V 5V 5V
MUX
51/Chapter4
© DHBK 2005
Pre-
charge
Word
line
2.55V
5V 2.45V
0V
5V 2.55V
5V
0V 5V 5V
MUX
53/Chapter4
© DHBK 2005
Pre-
charge
Word
line
2.51V
5V
3V 2.49V
0V
2V 2.51V
5V
3V
2V
2.49V
0V 2.51V
3V
5V 2.51V
3V
5V
MUX
55/Chapter4
© DHBK 2005
DRAM
• Đặc điểm:
1 transistor 1 bit: rẻ, tuy nhiên việc điều khiển quá trình làm tươi
làm tăng giá thành của DRAM
Chỉ tiêu thụ năng lượng trong quá trình làm tươi và truy nhập
Tương đối nhanh: thời gian đọc và ghi 50 ns
Mỗi một hàng phải được làm tươi sau 4 ms
Nếu có 1024 hàng, chu kỳ làm tươi sẽ là 4 µs
Kích thước: 4 Gbits
• Được dùng làm bộ nhớ chính trong các hệ vi xử lý
• Ví dụ: TMS 4464 (64K*4)
A0-A7
D0-D3 CAS: cho phép chốt địa chỉ cột
OE WE
RAS: cho phép chốt địa chỉ hàng
CAS RAS
57/Chapter4
© DHBK 2005
SRAM vs DRAM
Cost
SRAM
DRAM
Refresh
controller
Size
58/Chapter4
© DHBK 2005
• FF800: 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
1111 1111 1xxx xxxx xxxx
• FFFFF: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
60/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng cổng NAND
A19A18A17A16 A15A14A13A12 A11A10A9A8 A7 A6 A5 A4 A3 A2 A1 A0
• FF800: 1111 1111 1000 0000 0000
1111 1111 1xxx xxxx xxxx
• FFFFF: 1111 1111 1111 1111 1111
A19
A18 8088 A
A17 A0-A10 8088 D
Bus
A16 D0-D7 Bus
A15
A14
CS OE
A13
A12
A11
RD
IO/M
61/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng bộ giải mã
• Ví dụ: Dùng EPROM 2764 (8K*8) để ghép thành bộ nhớ 64 K cho 8088 bắt đầu
từ địa chỉ F0000H
• Phân tích:
Địa chỉ bắt đầu F0000H => địa chỉ kết thúc: FFFFFH
Cần ghép 8 EPROM 2764 vì 64=8*8K
A19A18A17A16 A15A14A13A12 A11A10A9A8 A7 A6 A5 A4 A3 A2 A1 A0
• F0000: 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 IC 0
• F1FFF: 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
• F2000: 1 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 IC 1
• F3FFF: 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
• F4000: 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 IC 2
• F5FFF: 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
...
...
• FE000: 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 IC 7
• FFFFF: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
62/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng bộ giải mã
• Dùng
U1 bộ giải mã 3-8 74LS138
1 15 C B A G2B G2A G1 y0 y1 y2 y3 y4 y5 y6 y7
2 A Y0 14
B Y1 x x x 1 x x 1 1 1 1 1 1 1 1
3 13
C Y2 12 x x x x 1 x 1 1 1 1 1 1 1 1
6 Y3 11 x x x x x 0 1 1 1 1 1 1 1 1
4 G1 Y4 10
G2A Y5 0 0 0 0 0 1 0 1 1 1 1 1 1 1
5 9
G2B Y6 7 0 0 1 0 0 1 1 0 1 1 1 1 1 1
Y7 0 1 0 0 0 1 1 1 0 1 1 1 1 1
0 1 1 0 0 1 1 1 1 0 1 1 1 1
74LS138
1 0 0 0 0 1 1 1 1 1 0 1 1 1
1 0 1 0 0 1 1 1 1 1 1 0 1 1
1 1 0 0 0 1 1 1 1 1 1 1 0 1
1 1 1 0 0 1 1 1 1 1 1 1 1 0
63/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng bộ giải mã
• Dùng bộ giải mã 3-8 74LS138
A0-A12 A0-A12
A0-A10
D0-D7 D0-D7
A0-A10
2764
D0-D7
A0-A10
U1 RD 2764
OE D0-D7
A0-A10
2764
OE D0-D7
A13 1 15 A0-A10
2764
CS OE D0-D7
2 A Y0 14 A0-A10
A14 B Y1 CS OE D0-D7
2764
3 13 A0-A10
CS OE D0-D7
A15 C Y2 2764
12 CS OE D0-D7
2764
6 Y3 11
A16 G1 Y4 CS OE 2764
4 10 CS OE
IO/M 5 G2A Y5 9 CS
G2B Y6 7
A17 CS
Y7
A18
A19 74LS138
64/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng bộ giải mã
• Dùng bộ giải mã kép 2-4 74LS139
1A 1Y0
1B 1Y1
1Y2
1G 1Y3
2A 2Y0
2B 2Y1
2Y2
2G 2Y3
A0-A12 A0-A12
A0-A10
D0-D7 D0-D7
A0-A10
2764
D0-D7
A0-A10
RD 2764
OE D0-D7
A0-A10
2764
OE D0-D7
A13 A0 O0 A0-A10
2764
CS OE D0-D7
A14 A1 O1 A0-A10
CS OE D0-D7
2764
A15 A2 O2 A0-A10
CS OE D0-D7
2764
A16 A3 O3 CS OE D0-D7
2764
A17 A4 TPB28L42
O4 CS OE 2764
A18 A5
O5 CS OE
A19 A6
O6 CS
A7
CS
A8 O7
G
IO/M
66/Chapter4
© DHBK 2005
4.2.2 Giải mã địa chỉ bộ nhớ
dùng PAL
67/Chapter4
© DHBK 2005
8088 hoạt động ở 5 MHz có thời gian truy cập bộ nhớ 460 ns
69/Chapter4
© DHBK 2005
4.2.3 Ghép nối 8088 với bộ nhớ
ROM
• Ví dụ: ghép nối 8088 với EPROM 2732-450 ns
A0-A11 A0-A11
A0-A10
D0-D7 D0-D7
A0-A10
2732
D0-D7
A0-A10
U1 RD 2764
OE D0-D7
A0-A10
2764
OE D0-D7
A12 1 15 F8000-F8FFF A0-A10
2764
CS OE D0-D7
2 A Y0 14 F9000- A0-A10
A13 B Y1 CS OE D0-D7
2764
3 13 F9FFF A0-A10
CS OE D0-D7
2764
A14 C Y2 12 CS OE D0-D7
Y3 2764
6 11 CS OE 2764
A15 4 G1 Y4 10
G2A Y5 CS OE
IO/M 5 9 CS
A16 G2B Y6 7 FF000-FFFFF
Y7 CS
A17
A18 Bộ tạo Tw
74LS138
A19
Tới chân RDY1 của 8284
70/Chapter4
© DHBK 2005
4.2.3 Ghép nối 8088 với bộ nhớ
SRAM
• Ví dụ: ghép nối 8088 với SRAM 62256 (32K*8) để được bộ
nhớ 256 KB, bắt đầu từ địa chỉ 00000H
A0-A14 A0-A14
A0-A10
D0-D7 D0-D7
A0-A10
62256
D0-D7
A0-A10
U1 RD 2764
OE D0-D7
WR WE A0-A10
2764
OE D0-D7
A15 1 15 00000-07FFF A0-A10
2764
CS OE D0-D7
2 A Y0 14 A0-A10
08000-0FFFF CS OE D0-D7
2764
A16 3 B Y1 13 10000-17FFF A0-A10
CS OE D0-D7
2764
A17 C Y2 12 CS OE D0-D7
Y3 2764
A18 6 11 CS OE 2764
4 G1 Y4 10
G2A Y5 CS OE
IO/M 5 9 CS
G2B Y6 7 38000-3FFFF CS
Y7
A19
74LS138
71/Chapter4
© DHBK 2005
4.2.3 Ghép nối 8088 với bộ nhớ
DRAM
• Cần có DRAM controller:
Dồn kênh 2 loại tín hiệu địa chỉ cho mỗi mạch nhớ và cung cấp
xung cho phép chốt địa chỉ RAS và CAS
Cung cấp tín hiệu việc ghi đọc bộ nhớ
Làm tươi bộ nhớ trong thời gian thích hợp
Đảm bảo không có xung đột trong hoạt động ghi đọc với công việc
làm tươi
72/Chapter4
© DHBK 2005
4.2.3 Ghép nối 8088 với bộ nhớ
DRAM
• Ví dụ: ghép 8088 với TMS 4464 (64K*4) DRAM để được bộ
nhớ 128 KB, bắt đầu tại địa chỉ 00000H
A0-A7
RA0-RA7
MA0-MA7 A0-A7
00005 00004
00003 00002
BHE A0 Chức năng
00001 00000
Bank cao Bank thấp
(bank lẻ) (Bank chẵn)
0 0 chọn cả 2 bank
• FF000: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Bank thấp
• FFFFE: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
CS OE
LRD
A19
A18
A17 A1-A11 A0-A10
D0-D7 D8-D15
A16
A15 2716
A14
CS OE
A13
A12
M/IO HRD
78/Chapter4
© DHBK 2005
BHE
HWR
WR
A0 LWR
79/Chapter4
© DHBK 2005
M/IO=1
Ví dụ:
MOV AX, [0FF3H
00000
Memory + I/O
85/Chapter4
© DHBK 2005
8
7
6
5
4
3
2
1
10K
10
12
13
14
15
16
11
9
U1
2 18
4 A1 Y1 16
6 A2 Y2 14
8 A3
A4
Y3
Y4
12 Tới bus dữ liệu
11 9
13 A5
A6
Y5
Y6
7 của CPU
15 5
17 A7 Y7 3
A8 Y8
1
19 1OE
2OE
74ALS244
SEL
330
U2
3 2
4 D0 Q0 5
7 D1 Q1 6
Từ bus dữ liệu 8 D2
D3
Q2
Q3
9
13 12
của CPU 14 D4 Q4 15
17 D5 Q5 16
18 D6 Q6 19
D7 Q7
11
CLK
1
OE
74ALS374
SEL
Từ giải mã địa chỉ cổng
87/Chapter4
© DHBK 2005
BHE A0
FFFF FFFE
FFFD FFFC
FFFB FFFA
D8-D15 D0-D7
0005 0004
0003 0002
0001 0000
Bank cao Bank thấp
(bank lẻ) (Bank chẵn)
89/Chapter4
© DHBK 2005
A0 A0
A1 D0-D7 D8-D15
A1
A2 D0-D7 A2 D0-D7
A3 A3
A4 A4
CS WE CS WE
A5 A5
A6 A6
A7 A7
WR WR
IO/M M/IO
BHE
8088 8086
90/Chapter4
© DHBK 2005
CS WE
A1
A2
A3 WR
A4
A5
A6 D7-D0 D0-D7
A7
M/IO CS WE
91/Chapter4
© DHBK 2005
A1 1 15 10H
2 A Y0 14 12H
A2 3 B Y1 13 14H
A3 C Y2 12 16H
6 Y3 11 18H
A0 G1 Y4 1AH
4 10
M/IO 5 G2A Y5 9 1CH
A4 G2B Y6 7 1EH
A5 Y7
A6
A7 74LS138
92/Chapter4
© DHBK 2005
RD
WR
97/Chapter4
© DHBK 2005
RD
WR
102/Chapter4
© DHBK 2005 ; Lập trình cho 8255
MOV AL, 10000000B ; Port A, Port B mode 0, output
MOV
OUT
DX, 703H
DX, AL
Chế độ 0
; Thủ tục hiển thị LED từ dữ liệu chứa trong bộ nhớ
DISP PROC NEAR
Giả thiết PUSHF ; cất các thanh ghi vào ngăn xếp
STB
PC4 DAV
82C55 Keyboard
109/Chapter4
© DHBK 2005
4.4.3.2 Các chế độ làm việc của 8255A
Chế độ 1
• Port A và B làm việc ở chế độ cổng ra có chốt:
tương tự như cổng ra ở chế độ 0
cổng C làm cổng điều khiển và cấp tín hiệu móc nối
1
110/Chapter4
© DHBK 2005
4.4.3.2 Các chế độ làm việc của 8255A
Chế độ 1
111/Chapter4
© DHBK 2005
4.4.3.2 Các chế độ làm việc của 8255A
Chế độ 1
ACK
PC2 ACK
PC4 DS
82C55 Printer
112/Chapter4
© DHBK 2005
4.4.3.2 Các chế độ làm việc của 8255A
Chế độ 1
BIT1 EQU 2
PORTC EQU 62H
PORTB EQU 61H
CMD EQU 63H