CẤU TRÚC VÀ CHỨC NĂNG
CỦA VI XỬ LÝ
NỘI DUNG CHÍNH
Cấu trúc CPU.
Thanh ghi.
CẤU TRÚC CPU
Nhiệm vụ của CPU:
Lấy lệnh
Giải mã lệnh
Lấy dữ liệu
Xử lý dữ liệu
Ghi dữ liệu
CPU VÀ HỆ THỐNG BUS
CẤU TRÚC BÊN TRONG CỦA
CPU
THANH GHI
CPU cần có 1 không gian làm việc(lưu trữ
tạm thời) gọi là thanh ghi.
Số lượng và chức năng của thanh ghi
khác nhau giữa các thiết kế vi xử lý.
Là 1 thành phần quyết định chủ yếu các
thiết kế.
Là mức cao nhất của hệ thống phân cấp
bộ nhớ.
THANH GHI NGƯỜI DÙNG CÓ
THỂ NHÌN THẤY
Thanh ghi đa năng.
Thanh ghi đoạn
Thanh ghi con trỏ
Thanh ghi chỉ số
Thanh ghi cờ
THANH GHI ĐA NĂNG (thanh ghi dữ liệu )(1)
Là các thanh ghi 16 bit,chia ra làm 2 nửa cao và thấp
gồm các thanh ghi 8 bit : AL,AH,BL,BH,CL,CH,DL,DH
Có thể định địa chỉ một cách độc lập
AX:là thanh ghi chứa kết quả các thao tác :
nhân,chia,1số lệnh chỉnh dữ liệu
BX:là thanh ghi cơ sở chứa địa chỉ lệnh của ô nhớ
trong đoạn DS
CX:là thanh ghi đếm
DX :dùng cùng với AX trong nhân chia các số 16
bit,hay dung để chứa các địa chỉ cổng vào ra dữ liệu
trực tiếp
THANH GHI ĐA NĂNG (ví dụ)
ADD 3,4
Kết quả nằm trong thanh ghi AL
MOV AX, 24H ; gán AX= 24h
MOV BX, 1234H; gán BX =1234H
ADD AX, [ BX]; cộng AX với địa chỉ
của ô nhớ BX
THANH GHI ĐOẠN
Gồm các thanh ghi 16bit
:CS,DS,SS,ES
Dùng để định địa chỉ đoạn vùng nhớ
1MB bằng cách chia thành 16đoạn
64KB
Phạm vi 0 =>FFFFF =2
20
địa chỉ/ô nhớ
THANH GHI CON TRỎ
Chứa địa chỉ bên trong của đoạn(gọi
là địa chỉ lệch)
Địa chỉ lệch :là độ lệch so với địa chỉ
đầu đoạn
Gồm các thanh ghi 16bit :BP,SP,IP
THANH GHI CHỈ SỐ
SI: thanh ghi chỉ số nguồn
DI: thanh ghi chỉ số đích
THANH GHI CỜ
CF cờ nhớ , PF cờ kiểm tra chẵn lẻ
AF cờ phụ, SF cờ dấu
ZF cờ rỗng, OF cờ tràn
…
Dùng để ghi kết quả của các lệnh
kiểm tra so sánh,thực hiện chương
trình.có thể lập hoặc xóa một số
bit.Mỗi cờ chiếm một bit
CÁC THANH GHI KHÁC
Có thể thanh ghi trỏ tới
Process control blocks (khối điều khiển xử lý)
Interrupt Vectors (vector ngắt)
Thiết kế CPU và thiết kế hệ điều hành
có liên kết chặt chẽ
VÍ DỤ CẤU TẠO THANH GHI
CHU KỲ GIÁN TIẾP
Có thể yêu cầu truy cập bộ nhớ để lấy
toán hạng.
Địa chỉ gián tiếp đòi hỏi truy cập bộ nhớ
nhiều hơn.
Có thể được coi như thêm chu kỳ lệnh
nhỏ.
CHU KỲ LỆNH GIÁN TIẾP
LUỒNG DỮ LIỆU( LẤY LỆNH)
Phụ thuộc vào thiết kế của CPU
Fetch(LẤY)
Thanh ghi PC chứa địa chỉ của lệnh tiếp theo
Địa chỉ thì được di chuyển tới MAR
Hàng địa chỉ trên bus địa chỉ
Đơn vị điều khiển thì yêu cầu bộ nhớ đọc
Hàng kết quả trên bus dữ liệu, được copy tới MBR sau
đó tới IR
Trong khi đợi lấy lệnh tiêp theo PC tăng lên mức 1
LUỒNG DỮ LIỆU ( LẤY DỮ
LIỆU)
Thanh ghi IR được kiểm tra
Nếu địa chỉ gián tiếp thì chu kỳ lệnh
gián tiếp được thi hành
N bit ở phía bên phải nhất của MBR được di chuyển
tới MAR
Đơn vị điều khiển thì yêu cầu bộ nhớ đọc
Kết quả (địa chỉ của toán hạng) đưa tới MBR
LUỒNG DỮ LIỆU (sơ đồ lấy lệnh)
LUỒNG DỮ LIỆU (sơ đồ lấy lệnh
gián tiếp)
LUỒNG DỮ LIỆU ( THI HÀNH)
Cho phép lấy nhiều dạng
Phụ thuộc vào lệnh đang thi hành
Có thể bao gồm
Bộ nhớ đọc/ghi
Input/Output
Thanh ghi truyền
Toán hạng ALU
LUỒNG DỮ LIỆU ( NGẮT)
Đơn giản
Có thể dự đoán
Dòng PC được lưu lại, cho phép lấy lại sau khi
ngắt
Những nội dung của PC được copy sang MBR
Vị trí đặc biệt của bộ nhớ đưa tới MAR
MBR ghi tới bộ nhớ
PC được tải với địa chỉ của chương trình điều
khiển ngắt
Lệnh tiếp theo(là lệnh đầu tiên của chương trình
ngắt) có thể được lấy
LUỒNG DỮ LIỆU ( SƠ ĐỒ
NGẮT)
TÌM NẠP
Lấy địa chỉ của bộ nhớ chính
Sự thi hành thường không được đưa
tới bô nhớ chính
Có thể lấy lệnh tiếp theo trong
khoảng thời gian đó
Sự thi hành của dòng lệnh
Lệnh tìm nạp được gọi