Di:n ti;n thi hành l4nh mã máy(CPU instruction

Một phần của tài liệu Giáo trình kiến trúc máy tính (Trang 118 - 121)

CÂU HeI VÀ BÀI TgP CHƯƠNG

7.5. Di:n ti;n thi hành l4nh mã máy(CPU instruction

cycle)

Công vi c c"a CPU diSn ra liên tgc và vi c th:c hi n các l nh diSn ra như trong hình 7.8. Các l nh ựư;c lCy ra tQ b) nh chắnh và khi CPU tìm thCy m)t l nh, nó sq phân tắch l nh ựó ựF th:c thi, sau ựó lNi sq tìm nNp l nh ti p theo và c8 như v'y diSn ra liên tgc.

Vi c thi hành m)t l nh mã máy có thF chia thành 5 giai ựoNn sau: đ*c l nh (IF: Instruction Fetch)

Gi i mã l nh (ID: Instruction Decode) Thi hành l nh (EX: Execute)

Thâm nh'p b) nh trong hoVc nh y (MEM: Memory access)

Lưu trH k t qu (RS: Result Storing).

Mri giai ựoNn ựư;c thi hành trong m)t hoVc nhi=u chu kỳ xung nhUp.

Hình 7.8. DiSn bi n thi hành l nh c"a CPU

1. đ,c l nh (fetch instruction):

Churi các s: ki n trong m)t l!n tìm ự*c l nh cị thF tGng qt như sau:

1. DH li u trong PC ựư;c load vào MAR: MAR ← PC 2. Giá trU trong thanh ghi PC tăng lên 1: PC PC+1 3. K t qu c"a l nh ự*c tQ b) nh , dH li u ựư;c load vào

MDR: MDR M[MAR] đ*c l nh k ti p Gi i mã l nh Thi hành l nh Truy c'p b) nh hoVc nh y Lưu trH k t qu Bzt ự!u

4. DH li u trong MDR ựư;c load vào IR: IR ← M[MAR] B) ự m chương trình PC ựư;c ựưa vào MAR . L nh ựư;c ự*c tQ b) nh trong, tNi các ơ nh có ựUa chB nom trong MAR và ựư;c ựưa vào thanh ghi l nh IR. Th8 t: th:c hi n l nh theo th`i gian ựZi v i loNi one như sau:

N u dùng " như hình 7.7 thì ta có th8 t: các bư c như sau:

2. GiAi mã l4nh và ựCc các thanh ghi nguDn:

đF hiFu rõ giai ựoNn này, ta lCy dNng th8c c"a m)t l nh làm tắnh tiêu biFu sau ựây:

Các thanh ghi nguan RS1 và RS2 ựư;c s- dgng tuỳ theo tác vg, k t qu ựư;c ựVt trong thanh ghi ựắch RD.

Mã l nh Thanh ghi RS1 Thanh ghi RS1 Thanh ghi RD 8 4 4 4

Chương VII: T ch c B x lý

L nh ựư;c gi i mã. K ựó các thanh ghi RS1 và RS2 ựư;c ựưa vào A và B ựF chusn bU th:c thi l nh(vắ dg như trong tG ch8c one3bus).Thanh ghi PC ựư;c tăng lên ựF chB t i l nh k ựó.

A ← RS1 B ← RS2 B ← RS2 PC ← PC + 4

Trong giai ựoNn này vi c gi i mã sq ựư;c th:c hi n cùng lúc v i vi c ự*c dH li u các thanh ghi nguan RS1 và RS2. Như v'y k t thúc giai ựoNn này thì l nh sq ựư;c gi i mã và máy tắnh sq bi t chắnh xác l nh ph i th:c thi là l nh c)ng, trQ, AND,Ầ và các thanh ghi nguan cũng ựư;c nNp vào vU trắ c!n thi t cho vi c th:c thi l nh.

3. Thi hành l4nh:

Tuỳ theo loNi l nh mà m)t trong ba nhi m vg sau ựây ựư;c th:c hi n:

3 Liên h t i b) nh

MAR ← đUa chB do ALU tắnh tuỳ theo kiFu ựUnh vU (RS2).

MDR ← RS1

đUa chB hi u dgng do ALU tắnh ựư;c ựưa vào MAR và thanh ghi nguan RS1 ựư;c ựưa vào MDR ựF ựư;c lưu vào b) nh trong.

3 M)t l nh c"a ALU

Ngã ra ALU ← K t qu c"a phép tắnh

Chương VII: T ch c B x lý

ALU th:c hi n phép tắnh xác ựUnh trong mã l nh, ựưa k t qu ra ngã ra.

3 M)t phép nh y

Ngã ra ALU ← đUa chB l nh ti p theo do ALU tắnh. ALU c)ng ựUa chB c"a PC v i ự) d`i ựF làm thành ựUa chB ựắch và ựưa ựUa chB này ra ngã ra. N u là m)t phép nh y có ựi=u ki n thì thanh ghi trNng thái ựư;c ự*c quy t ựUnh có c)ng ự) d`i vào PC hay không.

4. Thâm nhEp b nhF trong hoHc nhAy lIn cuJi

Giai ựoNn này thư`ng chB ựư;c dùng cho các l nh nNp dH li u, lưu giH dH li u và l nh nh y.

3 Tham kh o ự n b) nh :

MDR ← M[MAR] hoVc M[MAR] ← MDR

SZ li u ựư;c nNp vào MDR hoVc lưu vào ựUa chB mà MAR trJ ự n.

3 Nh y:

If (ựi=u ki n), PC ← ng ra ALU

N u ựi=u ki n ựúng, ngã ra ALU ựư;c nNp vào PC. đZi v i l nh nh y không ựi=u ki n, ng ra ALU luôn ựư;c nNp vào thanh ghi PC.

5. Lưu tr3 k;t quA

Lưu trH k t qu trong thanh ghi ựắch.

Một phần của tài liệu Giáo trình kiến trúc máy tính (Trang 118 - 121)

Tải bản đầy đủ (PDF)

(143 trang)