4b.3. Lệnh (tham chiếu) bộ nhớ
7 lệnh bộ nhớ ứng với Di = 1 (i = 0 . 6)
Địa chỉ hiệu dụng đặt trong AR
Tại T2 khi I = 0
Tại T3 khi I = 1
Lệnh bộ nhớ bắt đầu tại T4
Chú ý:
Phải đưa dữ liệu vào thanh ghi
Kết quả luôn được ghi vào AC
ALU chỉ có 2 đầu vào AC và DR
(Bảng 8.2)
***
(Mã D0) AND (vào AC)
Ý nghĩa: AC Å AC ∧ M[AR]
D
0T4: DR Å M[AR]
D
0T5: AC Å AC ∧ DR, SC Å 0
(Mã D1) ADD (vào AC)
(Mã D2) LDA (nạp từ nhớ vào AC) Load
(Mã D3) STA (lưu AC vào bộ nhớ) Store
4 trang |
Chia sẻ: thanhle95 | Lượt xem: 504 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Bài giảng Kiến trúc máy tính - Chương 4: Tổ chức bộ xử lý - Phần B: Quy trình thực hiện lệnh, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1Chương 4.
Tổ chức bộ xử lý
B. QUY TRÌNH
THỰC HIỆN LỆNH
Kiến thức bài trước
z Tổ chức của máy tính
z Hệ thống bus, thanh ghi
z Đơn vị điều khiển
z Tập lệnh
Cấu trúc:
Các dạng mã lệnh:
Mã lệnh 000 đến 110 :
I = 0 : Lệnh tham chiếu bộ nhớ với địa chỉ trực tiếp
I = 1 : Lệnh tham chiếu bộ nhớ với địa chỉ gián tiếp
(Indirect)
Mã lệnh 111
I = 0 : Lệnh tham chiếu thanh ghi
I = 1 : Lệnh nhập – xuất (Input / Output)
4b.1. Chu kỳ lệnh
z Mỗi lệnh được thực hiện qua 1 chu kỳ lệnh
z Gồm 1 dãy tiểu chu kỳ (pha, giai đoạn)
z Tìm lệnh
z Giải mã lệnh
z Đọc địa chỉ hiệu dụng từ bộ nhớ
(nếu lệnh có địa chỉ bộ nhớ)
z Thực hiện lệnh
z (Lặp cho đến khi thực hiện lệnh dừng HLT)
z Lưu đồ
chu kỳ
lệnh
Khởi đầu, PC được nạp địa chỉ đầu
tiên của chương trình.
z Tìm và giải mã:
z SC xóa 0 tạo thời hiệu T0
z Giai đoạn Tìm lệnh
z T0: AR Å PC
z T1: IR Å M[AR], PC Å PC + 1
z Giai đoạn Giải mã lệnh
z T2: D0, ... D7Å Giải mã IR (12 – 14),
AR Å IR (0 – 11),
I Å IR (15)
z Cài đặt giai đoạn Tìm lệnh
z Từ vi lệnh xác định các tín hiệu điều khiển (điều
khiển bus, các thanh ghi, bộ nhớ, ...)
VD: H 8.1: Cài đặt mạch điều khiển cho g/đ Tìm lệnh
T0: AR Å PC
S2S1S0 = 010, LD (AR) = 1
T1: IR Å M[AR], PC Å PC + 1
Read (Mem) = 1, S2S1S0 = 111, LD (IR) = 1, INR (PC) = 1
2 T0: AR Å PC
S2S1S0 = 010,
LD (AR) = 1
T1: IR Å M[AR],
PC Å PC + 1
Read (Mem) = 1,
S2S1S0 = 111,
LD (IR) = 1,
INR (PC) = 1
z Xác định kiểu lệnh
z Sau khi giải mã lệnh,
Tại thời điểm T3, đơn vị điều khiển xác định loại lệnh vừa đọc
(Nhắc lại) Các dạng mã lệnh
Mã lệnh 000 đến 110 :
I = 0 : Lệnh tham chiếu bộ nhớ với địa chỉ trực tiếp
I = 1 : Lệnh tham chiếu bộ nhớ với địa chỉ gián tiếp (Indirect)
Mã lệnh 111
I = 0 : Lệnh tham chiếu thanh ghi
I = 1 : Lệnh nhập – xuất (Input / Output)
z Nếu D7 = 1
(mã tác vụ: 111)
lệnh tham chiếu thanh
ghi / nhập xuất
z Nếu D7 = 0
(mã tác vụ: 000 – 011)
lệnh tham chiếu bộ
nhớ
z Nếu I = 1:
địa chỉ gián tiếp
AR Å M[AR]
4b.2. Lệnh (tham chiếu) thanh ghi
z (Khi D7 = 1, I = 0)
z Bit 0 - 11 xác định 1 trong 12 lệnh tham chiếu thanh ghi
z Bảng 8.1. Lệnh tham chiếu thanh ghi
z VD: lệnh CLA (Clear AC)
(D7 I’ T3 = r)
r B11 : AC Å 0
D7 I’ T3 B11 : AC Å 0
4b.3. Lệnh (tham chiếu) bộ nhớ
z 7 lệnh bộ nhớ ứng với Di = 1 (i = 0 .. 6)
z Địa chỉ hiệu dụng đặt trong AR
Tại T2 khi I = 0
Tại T3 khi I = 1
z Lệnh bộ nhớ bắt đầu tại T4
z Chú ý:
Phải đưa dữ liệu vào thanh ghi
Kết quả luôn được ghi vào AC
ALU chỉ có 2 đầu vào AC và DR
z (Bảng 8.2)
***
z (Mã D0) AND (vào AC)
Ý nghĩa: AC Å AC ∧ M[AR]
z D0T4: DR Å M[AR]
z D0T5: AC Å AC ∧ DR, SC Å 0
z (Mã D1) ADD (vào AC)
z (Mã D2) LDA (nạp từ nhớ vào AC) Load
z (Mã D3) STA (lưu AC vào bộ nhớ) Store
3z (Mã D4) BUN (rẽ không điều kiện)
Branch Uncondition
z Thay đổi thứ tự thực hiện lệnh
z (Mã D5) BSA (rẽ và lưu địa chỉ quay về)
Branch and Store Address
Để rẽ đến đoạn ch/trình (ch/trình con, thủ tục)
z Lưu địa chỉ lệnh sẽ thực hiện kế (đang nằm
trong PC) vào vùng nhớ chỉ định (nằm ở đầu
đoạn ch/trình con)
z Chuyển th/hiện đến lệnh kế tiếp (đoạn ch/tr con)
z Cuối đoạn ch/tr có lệnh nhảy không điều kiện
với địa chỉ gián tiếp chứa tại vùng nhớ chỉ định
z (Mã D6) ISZ (tăng và nhảy nếu bằng 0)
0 BSA 13520
Lệnh sẽ th/hiện21
135
Ch/trình con136
1 BUN 135
21
4b.4. Lệnh nhập xuất
z VD thiết bị nhập: bàn phím, xuất: máy in
z Cấu hình nhập xuất
z Cách gửi / nhận thông tin: tuần tự
z Đơn vị gửi / nhận : một ký tự (8 bit)
z Dãy thông tin từ bàn phím được dịch vào INPR
z Dãy thông tin cho máy in được lưu trong OUTR
z INPR, OUTR
liên lạc tuần tự với giao tiếp (cổng) truyền thông
liên lạc song song với AC
z (Hình 8.5)
***
z Cơ chế nhập:
Cờ nhập: FGI (= 1 khi thông tin mới
đã sẵn sàng trong th/bị nhập)
để đồng bộ tốc độ giữa th/bị nhập
và máy
(Ban đầu FGI Å 0)
Khi nhấn phím, mã ký tự (8 bit)
được dịch vào INPR
FGI Å 1
Máy kiểm tra FGI = 1, INPR được
chuyển song song vào AC
FGI Å 0
(Mới có thể nhấn phím khác)
FGI
FGI Å 0
AC Å INPR
FGO Å 0
INPR <----- Nhập
...
...
FGO Å 1
1
0
z Cơ chế xuất:
Cờ xuất: FGO (= 1 khi thông tin mới đã
sẵn sàng trong th/bị xuất)
để đồng bộ tốc độ giữa th/bị xuất và
máy
Ban đầu FGO Å 1
Máy kiểm tra FGO = 1, th/tin chuyển
song song từ AC vào OUTR
FGO Å 0
OUTR xuất tuần tự ra thiết bị xuất,
th/bị xuất in ký tự
FGI Å 1 (Mới có thể xuất ký tự
khác)
FGO
FGO Å 1
OUTR Å AC
FGO Å 0
Xuất <--- OUTR
...
...
FGO Å 1
1
0
4z Lệnh nhập xuất
z Chuyển thông tin vào ra AC
z Kiểm tra các cờ
z Điều khiển ngắt
z Mã tác vụ: 1111 (D7 = 1 và I = 1)
z Xác định lệnh: IR (6 – 11)
z Ngắt:
z Khi nhập / xuất, máy duy trì việc kiểm tra bit cờ.
Do khác biệt về tốc độ giữa máy và th/bị nhập xuất, cách
truyền thông này không hiệu quả.
z Cách giải quyết: để th/bị báo cho máy khi sẵn sàng truyền
z Tính năng ngắt: khi cờ bật, máy tạm thời bị ngắt để xử lý
nhập xuất
z Quy trình ngắt
Cờ cho phép ngắt
(IEN: Interrup Enable)
Nếu IEN = 0, các
cờ (FGI, FGO)
không thể ngắt máy
Nếu IEN = 1, máy
có thể bị ngắt
Dùng mạch lật ngắt R
Nếu R = 0, máy qua
chu kỳ lệnh
R
Lưu địa chỉ
quay về
1
0
10 Chu kỳ ngắtChu kỳ lệnh
Tìm lệnh,
Giải mã lệnh
Th/hiện
lệnh
IEN
0
1
FGI
FGO
R Å 1
1
0
Rẻ nhánh
đến chương
trình ngắt
IEN Å 0
R Å 0
Nhập/xuất
z VD Minh họa chu kỳ ngắt (h 8.7)