Tải bản đầy đủ (.pdf) (7 trang)

Quá trình hình thành giáo trình phương pháp giao tiếp giữa máy tính với bộ vi xử lý AMD trong mainboard p1 pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (219.68 KB, 7 trang )

CHƯƠNG CƠ SỞ LÝ LUẬN
___ oOo ___
I. XÂY DỰNG ĐỀ CƯƠNG LUẬN VĂN:
1). Xác đònh nhiệm vụ nghiên cứu:
Việc chọn đề tài xuất phát từ hai lý do:
- Khách quan: hiện nay các nền công nghiệp có nhu cầu hiện đại hóa
các thiết bò theo xu hướng cải tiến hóa các thiết bò bằng cơ khí sang
thiết bò điều khiển tự động ứng dụng kỹ thuật điện tử.
- Chủ quan: do nhu cầu học tập, nghiên cứu, rèn luyện kỹ năng thực
hành, ứng dụng vốn kiến thức khoa học kỹ thuật tiên tiến trực tiếp
vào lónh vực sản xuất.
Nhiệm vụ nghiên cứu nhằm đạt được các mục đích chủ yếu:
+ Mục đích trước mắt: thỏa mãn về cơ bản các yêu cầu đề ra theo
phương châm “Học đi đôi với hành“.
+ Mục đích sau cùng: Tích lũy kinh nghiệm, rèn luyện và nâng cao
năng lực, tạo bản lónh để sẵn sàng tham gia lao động sản xuất, hòa nhập vào
bước tiến của thế hệ.
2). Phân tích tài liệu liên hệ:
Trong thời gian nghiên cứu đề tài, sinh viên thực hiện đã thống nhất
tham khảo một số tài liệu có liên quan trong khoảng thời gian cho phép.
- Phương pháp luận nghiên cứu khoa học: tìm hiểu về cấu trúc hình
thức của một đề tài nghiên cứu khoa học và phương pháp tư duy để
giải quyết vấn đề.
- Kỹ thuật Vi xử lý - Trần Văn Trọng: Tài liệu cung cấp về cấu trúc
của vi xử lý 8086.
- Sơ đồ chân linh kiện bán dẫn - Dương Minh Trí: cung cấp sơ đồ
chân và bảng trạng thái họat động của các IC và các linh kiện bán
dẫn.
- Cấu trúc máy tính - Lê Anh Việt: Tài liệu cung cấp kiến thức cơ
bản về cấu trúc máy tính, tổ chức CPU, hợp ngữ và cách lập trình.
- The 8086/8088 - Family Design Programming and Interfacing –


John Uffenbeck: tài liệu cung cấp những kỹ thuật kết nối vi xử lý
và những phần mềm ứng dụng.
- Kỹ thuật vi xử lý – Văn Thế Minh: tài liệu cung cấp kỹ thuật giao
tiếp với các thiết bò ngoại vi.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c

u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r

w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Q trình hình thành giáo trình phương pháp giao
tiếp giữa máy tính với bộ vi xử lý AMD trong
mainboard
II. KẾ HOẠCH NGHIÊN CỨU:
1). Dàn ý nghiên cứu:
Phần I: Giới thiệu chung.
Phần II: Phần cứng và phần mềm cuả mạch giao tiếp.
Phần III : Tổng kết và đánh giá

2). Đối tượng nghiên cứu:
Vi xử lý là trung tâm điều khiển các đối tượng, điều khiển hệ thống
như máy tự động, dây chuyền sản xuất… Để hệ thống xử lý thi hành các

chức năng điều khiển như mong muốn, chúng ta phải lập trình bằng ngôn
ngữ tương ứng và trao đổi dữ liệu giữa các hệ vi xử lý. Vì thế đối tượng
nghiên cứu chính là thiết kế mạch giao tiếp để truyền dữ liệu đi xa.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u

-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w

w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
CHƯƠNG I
CẤU TRÚC BÊN TRONG CỦA VI XỬ LÝ 8086
___ oOo ___

Đây là bộ vi xử lý nổi tiếng một thời của hãng Intel, nó được sử dụng
trong nhiều lónh vực khác nhau, nhất là trong các máy IBM PC/XT. Các bộ
vi xử lý thuộc họ này sẽ còn được sử dụng rộng rãi trong hàng chục năm
nữa.

I . CẤU TẠO BÊN TRONG:

Bên trong gồm hai khối chính:
- Khối thực hiện EU (Execution Unit)

- Khối giap tiếp bus (Bus Interface Unit)
1 .Khối thực hiện EU
Ở hình 1.1 ta thấy trong khối EU ta thấy có một khối điều khiền
(Control Unit, CU) chính tại bền trong khối điều khiển này có mạch giải mã
lệnh. Mã lệnh đọc vào từ bộ nhớ đưa đến đầu của bộ giải mã, các thông tin
thu được từ đầu ra củc nó sẽ được đưa đến mạch tạo xung điều khiển, kết
quả là thu được các dãy xung khác nhau (tùy theo mã lệnh) để điều khiển
hoạt động của các bộ phận bên trong và bên ngoài CPU. Trong khối EU còn
có khối số học và logic (Arithmetic and Logic Unit ALU) dùng để thực hiện
các thao tác khác nhau với các toán hạng cuả lệnh. Tóm lại khi CPU hoạt
động EU sẽ cung cấp thông tin về điạ chỉ cho BIU để khối này đọc lệnh và
dữ liệu, còn bản thân nó thì giải mã lệnh và thực hiện lệnh

2. Khối phối ghép bus (Bus Interface Unit BIU)
Khối BIU có nhiệm vụ đưa ra điạ chỉ, đọc mã lệnh từ bộ nhớ. Nói
cách khác BIU chiu trách nhiệm đưa điạ chỉ ra bus và trao đổi dữ liệu với
bus.
Trong BIU còn có bộ nhớ đệm lệnh với dung lượng 4 byte dùng để
đưa các mã lệnh đọc được nằm sẵn sàng chờ EU xử lý (trong tài liệu cuả
Intel bộ lệnh này còn được gọi là hàng đợi lệnh. Đây là một cấu trúc mới
được đưa vào bộ VXL 8086/8088 cho việc Intel đưa chế độ xử lý xen kẽ liên
tục dùng mã lệnh vào ứng dụng vào trong các bộ VXL thế hệ mới.
Click to buy NOW!
P
D
F
-
X
C
h

a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!

P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a

c
k
.
c
o
m
3. Sơ đồ khối bền trongvà chức năng các khối cuả VXL 8086:



Hàng
đợi
lệnh
Các cờ

AH AL
BH BL
CH CL
DH DL
BP
DI
SI
SP

CS
ES
SS
DS
IP


Điều khiển bus và
tạo đòa chỉ
6
5
4
3
2
1

Bus đòa chỉ

Bus dữ liệu

Các thanh
ghi đoạn
Arithmetic logic
unit (ALU)
Bus dữ liệu nội

Các bus hệ
thống
Excution Unit
(EU)
Bus Interface Unit
(BIU)


Hình 1.1:
Sơ đồ khối 8086


Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r

a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.

d
o
c
u
-
t
r
a
c
k
.
c
o
m
Bộ vi xử lý thực hiện các lệnh theo các bước sau:
- Lấy lệnh từ bộ nhớ.
- Đọc toán hạng (nếu lệnh yêu cầu).
- Thực hiện lệnh.
- Ghi kết quả.


3.1). Khối thực hiện:
Nhiệm vụ của khối thực hiện lệnh là thực hiện các lệnh của chương
trình. Nó gồm có khối số học – logic (ALU) cho phép thực hiện các phép
tính số học (+ , - , * , /) và các phép logic (AND, OR, NOT…). Trong khối
thực hiện còn có một số ô nhớ gọi là thanh ghi dùng để chứa dữ liệu cho các
phép tính. Mỗi thanh ghi giống như một ô nhớ ngoại trừ chúng được đặt tên
thay vì dùng số để chỉ đòa chỉ. EU (Execution Unit) có các thanh ghi công
dụng chung chia thành hai nhóm: nhóm thanh ghi dữ liệu và nhóm thanh ghi
chỉ số.

 Các thanh ghi dữ liệu (Data Register):





 Các thanh ghi chỉ số và con trỏ (Index & Pointer Register):





 Các thanh ghi đoạn (Segment Register):





 Các thanh ghi trạng thái và điều khiển (Status & Control
Register):



AH AL
BH BL
CH CL
DH DL

AX (Accumulator)
BX (Base)

CX (Count)
DX (Data)
SP
BP
SI
DI

Con trỏ Stack (Stack Pointer)
Con trỏ nền (Base Pointer)
Chỉ số nguồn (Source Index)
Chỉ số đích (Destnation Index)
CS
DS
SS
ES

Đoạn mã (Code Segment)
Đoạn dữ liệu (Data Segment)
Đoạn Stack (Stack Segment)
Đoạn thêm (Extra Segment)
IP
Flag

Con trỏ lệnh (Intruction Pointer)
Cờ
Click to buy NOW!
P
D
F
-

X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c

o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-

t
r
a
c
k
.
c
o
m
 Các thanh ghi dữ liệu:
Có bốn thanh ghi dữ liệu ký hiệu lần lượt là: AX, BX, CX, DX, được
người lập trình sử dụng cho các thao tác với dữ liệu. Mặc dù vi xử lý có thể
thao tác với dữ liệu trong bộ nhớ, nhưng một lệnh như vậy sẽ được thực hiện
nhanh hơn trong thanh ghi (cần ít chu kỳ đồng hồ hơn). Đó cũng là nguyên
nhân tại sao các bộ vi xử lý hiện đại có xu hướng nhiều thanh ghi.
Các byte cao và byte thấp trong thanh ghi được truy cập độc lập: Byte
cao của thanh ghi AX được gọi là AH và byte thấp được gọi là AL. Tương tự
như vậy cho các byte cao và byte thấp của các thanh ghi BX, CX, DX lần
lượt là BH & BL, CH & CL, DH & DL. Nhờ điều này mà ta có nhiều thanh
ghi hơn khi làm việc với các số liệu có kích thước byte dài. Trong đa số lệnh
các thanh ghi dữ liệu được chọn tùy ý nhưng các thanh ghi này lại có chức
năng riêng cố đònh trong một số ít lệnh.
 Thanh ghi tích lũy AX (Accumulator):
Là thanh ghi được sử dụng nhiều nhất trong các lệnh số học – logic và
truyền dữ liệu bởi vì việc sử dụng thanh ghi này tạo ra mã máy ngắn nhất.
Trong các thao tác nhân hoặc chia một trong các số hạn tham gia phải
chứa trong AH hoặc AL, các thao tác vào ra cũng sử dụng thanh ghi AH
hoặc AL.
 Thanh ghi cơ sở BX (Base):
Thanh ghi BX được dùng cho tính toán đòa chỉ trong phương pháp đònh

đòa chỉ gián tiếp.
 Thanh ghi đếm CX (Count):
Việc thực hiện các chương trình lập được thực hiện dễ dàng nhờ thanh
ghi CX, trong đó CX đóng vai trò là bộ đếm vòng lập. Một thí dụ khác của
việc sử dụng thanh ghi CX đó là lệnh REP (Repeat) lệnh này điều khiển
một lớp các lệnh chuyên về các thao tác chuỗi. CL cũng được sử dụng là
một biến đếm trong các lệnh dòch hay quay các bit.
 Thanh ghi dữ liệu DX (Data):
DX dùng để đònh đòa chỉ gián tiếp trong các thao tác vào ra, nó cũng
còn được sử dụng chứa toán hạn, kết quả trong phép nhân và chia.
 Thanh ghi con trỏ và chỉ số:
Các thanh ghi SP, BP, SI, DI thường trỏ tới các ô nhớ (tức là chứa các
đòa chỉ offset của các ô nhớ đó). Khác với thanh ghi đoạn, các thanh ghi con
trỏ và ngăn xếp được sử dụng trong các thao tác số học và một số thao tác
khác nhau.
 Thanh ghi con trỏ – ngăn xếp SP (Stack Pointer):
Di chuyển từ đòa chỉ cao đến đòa chỉ thấp, dùng để kết hợp với thanh
ghi đoạn Stack SS (Stack Segment)để lưu trử đòa chỉ trở về hoặc dữ liệu vào
trong ngăn xếp.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g

e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F

-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.

c
o
m
 Thanh ghi con trỏ cơ sở BP (Base Pointer):
Thanh ghi này được dùng để truy cập dữ liệu trong ngăn xếp mà không
làm thay đổi SP. Tuy nhiên, khác với SP thanh ghi BP cũng còn được sử
dụng đễ truy cập dữ liệu ở các đoạn khác.
 Thanh ghi chỉ số nguồn SI (Source Index):
Thanh ghi SI được sử dụng để trỏ tới các ô nhớ trong đoạn dữ liệu được
đònh bởi thanh ghi đoạn dữ liệu DS (Data Segment), có thể truy cập dễ dàng
các ô nhớ liên tiếp bằng cách tăng SI.
 Thanh ghi chỉ số đích DI (Destination Index):
Thanh ghi DI có chức năng tương tự như thanh ghi SI và được dùng kết
hợp với thanh ghi đoạn thêm ES (Extra Segment). Cả hai DI và SI thích hợp
trong các thao tác sao chép, di chuyển hoặc so sánh các khối dữ liệu có
dung lượng đến 64kB.
 Thanh ghi con trỏ lệnh IP (Intruction Pointer):
8086 không thực hiện lệnh trực tiếp trong bộ nhớ mà lệnh được lấy ở
hàng đợi lệnh có cấu tạo giống như một thanh ghi dòch (FIFO: First In First
Out: vào trước ra trước) chứa các mã lệnh cung cấp bởi khối BIU. Thanh ghi
IP chỉ đến lệnh tiếp theo chưa được nhập vào hàng đợi lệnh và được dùng
kết hợp với thanh ghi CS. Thanh ghi IP được cập nhật mỗi khi có một lệnh
được thực hiện xong, khác với các thanh ghi khác, IP không bò tác động trực
tiếp bởi các lệnh.
 Thanh ghi cờ (Flag Register):
Thanh ghi cờ của 8086 có độ dài 16bit (2byte) byte thấp chứa các bit
trạng thái giống như trong 8085 phản ánh trạng thái của vi xử lý, byte cao
chứa 1 bit trạng thái đó là bit 11 và 3 bit điều khiển dùng để điều khiển hoạt
động của vi xử lý. Sau đây là cấu tạo của thanh ghi cờ trong 8086:
15 8 7 0

O

D

I T

S Z

A

P C

Thanh ghi cờ của 8086
C: carry flag.
P: parity flag.
A: auxiliary flag.
Z: zero flag.
S: sign flag.
T: trap flag.
I: interrupt enable flag.
D: direction flag.
O: overflow flag.
+ Cờ nhớ CF :
Click to buy NOW!
P
D
F
-
X
C

h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m

Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e

V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r

a
c
k
.
c
o
m

×