Chương 2:
CẤU TRÚC PHẦN CỨNG VI XỬ LÍ 8085A
1 . GIỚI THIỆU CHUNG
a .Các họ vi xử lí 8 bit:
Vi xử lí 8 bit là sự cải tiến của vi xử lí 4 bit. Các vi xử lí
này ra đời vào thập niên 70, có rất nhiều hãng chế tạo ra vi xử lí
8 bit như Intel, Motorola, Zilog…
Các vi xử lí của Intel luôn bắt đầu từ các con số 80XX,
được tính từ vi xử lí 8 bit trở về sau như 8085, 8086, 80186
Bảng sau đây sẽ liệt kê một số vi xử lí của hãng Intel:
Tên Năm Chiều dài
thanh ghi
Bus dữ liệu Bộ
nhớ
4040 1971 4 4 1K
8088 1972 8 8 16K
8080 1974 8 8 64K
8085 1974 8 8 64K
8086 1978 16 16 1M
8088 1980 16 8 1M
80186 1982 16 16 1M
80188 1982 16 16 1M
80286 1982 16 16 16M
80386 1985 32 32 70T
80386SX 1988 32 16 70T
80486 1989 32 32 70T
Chú ý : K = Kilo(2
10
) , M = Mega(2
20
) , T = Tera(2
a . Sơ đồ chân:
Hình 2 .1: Sơ đồ chân của Vi xử lí 8085
b . Chức năng, dạng tín hiệu, trạng thái các chân của vi
xử lí 8085 được liệt kê ở bảng sau:
Chân Ký hiệu
In/Out
3 state
Ý nghóa
A9
A10
A12
A15
A14
A11
X
2
SOD
TRAP
AD1
X
1
RESET
SID
RST 7.5
RST 6.5
RST 5.5
INTR
INTA
\
AD0
2
I X
1
, X
2
: là hai ngõ vào đặt thạch anh,
mạch RC, LC để xác đònh tần số
xung đồng hồ, có thể đưa xung dao
động ngoài vào X
1
thay cho thạch
anh.
3 RESET
OUT
O Tín hiệu đồng bộ xung đồng hồ cho
biết CPU đang trong trạng thái
Reset, có thể dùng để đặt lại hệ
thống.
4 SOD O Serial output data: Dữ liệu ra nối tiếp
được điều khiển bởi lệnh SIM.
5 SID I Serial input data: Ngõ vào nối tiếp
được đặt vào bit 7 của bộ tích lũy khi
thi hành chỉ thò RIM.
6 TRAP I Tín hiệu yêu cầu ngắt không ngăn
được, nó được nhận dạng cùng lúc
như INTR và có mức ưu tiên cao
nhất trong các yêu cầu ngắt.
7,8,9 INTR I Interrupt request: Được dùng như
một ngắt công dụng chung, ngắt chỉ
được lấy mẫu trong suốt chu kì xung
đòa chỉ ở mức cao trong khoảng thời
gian chu kì đồng hồ đầu tiên (lúc này
các chân AD0-AD7 là byte thấp đòa
chỉ), cho phép đòa chỉ được đưa vào
chốt đòa chỉ trên mạch ngoại vi, các
chân này được treo lên trạng thái Z
cao trong chế độ HOLD và HALT.
31 WR\ 0-3 Write :Dữ liệu trên bus dữ liệu đang
được ghi vào bộ nhớ hoặc cổng I/O,
dữ liệu được thiết lập lại tại cạnh
xuống của xung WR\, chân này treo
lên trạng thái Z cao ở chế độ HOLD
và HALT
32 RD\ 0-3 Read: Dữ liệu được đọc từ bộ nhớ
hoặc cổng I/O và truyền trên bus dữ
liệu, ở trạng thái Z cao trong chế độ
HOLD và HALT.
29,33,3
4,
S0,S1,
IO/M\
0-3 Ba bit này cho biết trạng thái chu kì
máy.
35 READY I Nếu chân Ready ở mức cao trong
suốt chu kì đọc hoặc ghi có nghóa là
bộ nhớ hoặc thiết bò ngoại vi đã sẵn
sàng để gởi hoặc nhận dữ liệu. Khi
Ready ở mức thấp CPU sẽ chờ trước
khi hoàn tất chu kì đọc/ghi.
36 RESET IN I Tín hiệu vào đặt bộ đếm chương
Hình 1.2 : Giản đồ của chu kì đọc
Mỗi chu kì bus tương đương với chu kì máy. Mối liên hệ
thời gian của các tín hiệu luôn khác nhau đối với mỗi loại chu kì
máy. 8085 có 4 loại chu kì máy: chu kì READ, chu kì WRITE,
chu kì INTERRUPT ACKNOWLEDGE và chu kì DMA.
Đối với chu kì đọc, có 3 sự thay đổi: đọc bộ nhớ, đọc IO và
đón giải mã lệnh. Sơ đồ thời gian đọc bộ nhớ hoặc đọc IO không
có trạng thái chờ.
Ở chu kì T
1
, bus AD
7
-AD
0
đóng vai trò là bus đòa chỉ A
7
-
A
0
, tín hiệu ALE lên mức logic 1 ở chu kì T1 nên tín hiệu ALE
dùng để chốt 8 bit đòa chỉ thấp A
7
-A
0
vào một IC chốt. Tín hiệu
RD\ vẫn ở mức logic 1 nên quá trình giao tiếp dữ liệu chưa xảy
ra.
Ở chu kì T
2
và T
, S
2
, vẫn ở ổn đònh trạng thái. Trong chu kì bus D
7
-D
0
nhận dữ liệu các bit đòa chỉ A
7-
A
0
được chốt trong IC chốt và các
bit đòa chỉ cao A
15
-A
8
vẫn không thay đổi nên vi xử lí sẽ nhận
đúng dữ liệu của ô nhớ cần truy xuất.
Vi xử lí đang đọc bộ nhớ I/O chỉ được phân biệt bằng tín
hiệu IO/M\. Chu kì máy thực hiện một lệnh gồm 4 đến 6 chu kì
xung clock. Chu kì thực hiện được chia làm hai quá trình đón
lệnh và thực hiện lệnh. Quá trình đón lệnh giống như quá trình
đọc bộ nhớ tốn khoảng 3 chu kì xung clock từ T
1
đến T
3
. Quá
trình giải mã và thực hiện lệnh tốn thêm 1 đến 3 chu kì xung
clock từ T
4
đến T
hiệu RD\ và trạng thái của nó dùng để báo cho thiết bò yêu cầu
ngắt biết vi xử lí chấp nhận yêu cầu ngắt này nếu ở mức logic 0.
Nếu lệnh ngắt là lệnh Restart thì vi xử lí cần thêm hai chu
kì máy ghi dữ liệu vào bộ nhớ để cất đòa chỉ trở về sau khi thực
hiện xong chương trình.
Khi Vi xử lí làm việc thì cả 3 Bus ddữ liệu, điều khiển, đòa
chỉ do vi xử lí sử dụng và DMA ở trạng thái ngừng làm việc, khi
muốn chuyển dữ liệu DMA sẽ tác động đến ngõ vào HOLD của
Vi xử lí. Nếu Vi xử lí chấp nhận thì nó sẽ trả lời bằng cách tác
động đến ngõ HLDA ở mức logic 1 và các ngõ ra dữ liệu, đòa chỉ
và điều khiển ở trạng thái tổng trở cao để không ảnh hưởng đến
dữ liệu.
Vi xử lí luôn kiểm tra ngõ vào HOLD, nếu tín hiệu này
xuống mức logic 0 thì Vi xử lí sẽ trở lại thực hiện đúng công
việc đang xử lí.
Hình 1.4