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

Kiến trúc máy tính chương 6 vi tác vụ

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 (135.51 KB, 22 trang )

Chương 6 – Vi tác vụ

11/12/08

Trường ðHSP TPHCM

1


Mục tiêu
• Hiểu ý nghĩa của “ngôn ngữ” vi tác vụ
• Hiểu cấu trúc của ALU (mạch số học +
mạch luận lý + mạch dịch tổ hợp)

11/12/08

2


6.1. Vi tác vụ thanh ghi
Vi tác v là các tác vụ hay công việc xử lý dữ
liệu thực hiện trên các thanh ghi
Có 4 loại vi tác vụ chính:
1. Vi tác vụ ghi chuyển thông tin nhị phân
2. Vi tác vụ số học
3. Vi tác vụ luận lý
4. Vi tác vụ dịch

11/12/08

3




Vi tác vụ thanh ghi
• Tên thanh ghi: chữ hoa (có thể có kèm số)

PC, MAR, R1, R2, …
• Chuyển nội dung thanh ghi R1 sang thanh ghi
R2 (R1 không ñổi):

R2 ← R1
• Chuyển nội dung thanh ghi R1 sang thanh ghi
R2 (R1 không ñổi) dùng hàm ñiều khiển (khi
hàm có giá trị 1):

P: R2 ← R1hoặc If (P=1) then (R2 ← R1)
S0S1: R2 ← R1
11/12/08

4


Vi tác vụ thanh ghi
Mạch
ñiều
khiển

P

Load


Clock

R2
n

R1

Mạch
ñiều
khiển

S0
Load

Clock

R2

S1
n

R1
11/12/08

Trường ðHSP TPHCM

5


Vi tác vụ thanh ghi

Ký hiệu
Chữ hoa
(hoặc số theo sau)

Diễn giải
Tên thanh ghi

PC,MAR,R1,…
R2(0-7): (bit từ 0 ñến 7
của thanh ghi R2)

Dấu ngoặc
sau tên thanh ghi

Một phần thanh ghi

Mũi tên

Truyền dữ liệu

Dấu phẩy

Tác vụ xảy ra ñồng thời
(trong cùng một chuyển
tiếp ñồng hồ)

11/12/08

Ví dụ


R2(L): các bit thấp của
thanh ghi R2

Trường ðHSP TPHCM

R2← R1
R2← R1, R1← R2

6


6.1.1. Truyền dữ liệu qua bus
S0
S1
4x1
MUX

4x1
MUX

D

3

2

1

0


3

2

1

0

3

2

1

0

3

2

1

0

11/12/08

4x1
MUX

4x1

MUX
3

B

2

3

1

2

Trường ðHSP TPHCM

0

1

0

A

3

2

1

0


3

2

1

0
7


Truyền dữ liệu qua bus 3 trạng thái

3

2

1

0

3

2

1

0

3


2

1

0

3

2

1
S0

11/12/08

Trường ðHSP TPHCM

S1

E

0

3

2

1


2x4
Decoder
8

0


Truyền qua bộ nhớ
• DR ← M[AR]
• M[AR] ← DR
• M[AR] : ô nhớ có ñịa chỉ ñược lưu trong
thanh ghi AR.

11/12/08

Trường ðHSP TPHCM

9


6.2. Vi tác vụ số học
Ký hiệu
R3 ← R1 + R2
R3 ← R1 – R2
R2 ← R2
R2 ← R2 + 1
R3 ← R1 + R2 + 1
R1 ← R1 +1
R1 ← R1 -1
M[AX]

R1
11/12/08

Ý nghĩa
Lấy thanh ghi R1+R2
gán vào R3
???
???
???
???
???
???
Lấy R1 ñưa vào ô nhớ
có ñịa chỉ lưu trong AX
Trường ðHSP TPHCM

10


Mạch số học
S1

S0

Cin

Y

0


0

0

B

D=A+B

Cộng

0

0

1

B

D=A+B+1

Cộng với nhớ

0

1

0

B’


D = A + B’

Trừ có mượn

0

1

1

B’

D = A + B’ + 1

Trừ

1

0

0

0

D=A

Chuyển A

1


0

1

0

D=A+1

Tăng A

1

1

0

1

D=A–1

Giảm A

1

1

1

1


D=A

Chuyển A

11/12/08

Diễn giải

D=A+Y+Cin

Trường ðHSP TPHCM

11


Mạch số học
B3

A3

1 0

B2

A2

1 0

3 2 1 0


X3

Y3

3 2 1 0

X2

C3

3 2 1 0

S0 S1

X1

Cin

S0 S1

C2

X0

Y0

FA
C2

A0 S S

0 1

4x1
MUX

Y1

FA
C3

B0

1 0

4x1
MUX

Y2

FA
C4

S0 S1

4x1
MUX

4x1
MUX


A1

1 0

3 2 1 0

S0 S1

B1

FA
C1

C0

C1

Cout
11/12/08

D3

D2
Trường
ðHSP TPHCM

D1

D0


12


6.3. Vi tác vụ luận lý
Hàm
F0 = 0
F1 = xy
F2 = x.y
F3 = x
F4 = x.y

Ký hiệu
F←0
F←A∧B
F←A∧B
F←A
F←A∧B

F5 = y

F←B

F6 = x ⊕ y

F←A⊕B

F7 = x + y
F8 = (x + y)
F9 = x ⊕ y


F←A∨B
F←A∨B
F←A⊕B

F10 = y

F←B

F11 = x + y

F←A∨B

F12 = x

F←A

F13 = x + y

F←A∨B

F14 = xy
11/12/08
F15 = 1

F←A∧B
Trường ðHSP TPHCM
F ← 1…1

Vi tác vụ
xóa 0

AND
truyền A

OR
NOR
NXOR

NAND
Gán 1

13


Mạch luận lý
S0
S1
Ai

S0
S1

MUX
4x1

0

Bi
Ei
1
2

3

11/12/08

S1 S0

ðầu ra

phép tính

0

0

E=A∧B

AND

0

1

E=A∨B

OR

1

0


E=A⊕B

XOR

1

1

E=A

Inverter

Trường ðHSP TPHCM

14


Mạch luận lý
S0
S1
Ai
Bi

S0
S1
0
1

MU
X

4x1

S1 S0
Ei

ðầu ra

phép tính

0

0

E=A∧B

AND

0

1

E=A∨B

OR

1

0

E=A⊕B


XOR

1

1

E=A

Inverter

2
3

Vẽ mạch luận lý với i=2. Cho S0=S1=1,
A1=0,A2=1,B1=1,B2=0. Xác ñịnh E1, E2?
11/12/08

Trường ðHSP TPHCM

15


6.4. Vi tác vụ dịch
Ký hiệu

11/12/08

Ý nghĩĩa


R ← shl R

Dịch trái R

R ← shr R

Dịch phải R

R ← cil R

Dịch vòng trái R

R ← cir R

Dịch vòng phải R

R ← ashl R

Dịch trái số học R

R ← ashr R

Dịch phải số học R
Trường ðHSP TPHCM

16











R= 10101011
Shl R= 01010110
Shr R= 01010101
Cil R= 01010111
Cir R=???
Ashl R=???
Ashr R=???


Mạch dịch tổ hợp 4 bit
A3

A2

A1

A0

IL

IR

S
1


11/12/08

0

S

1

0

S

1

0

S

2x1
MUX

2x1
MUX

2x1
MUX

H3


H2

H1

Trường ðHSP TPHCM

1

0

S

2x1
MUX

H0

18


6.5. ALU (Arithmetic and Logic Unit)
Ai+1

Ai-1

Ai

S0 S1

Bi


Một tầng mạch
luận lý

Ci+1

Một tầng mạch
số học

Ei

S2 S3

Ci-1

Di

3 2 1 0

S0 S1

4x1
MUX
11/12/08

Trường ðHSP TPHCM

19



Các tác vụ của ALU
S3
0
0
0
0
0
0
0
0
0
0
0
0
1
1
11/12/08

Chọn tác vụ
S2 S1 S0 Cin
0
0
0
0
0
0
0
1
0
0

1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
0
x
1
0
1
x

1
1
0
x
1
1
1
x
0
x
x
x
1
x
x
x

Tác vụ

Chức năng

F=A
F=A+1
F=A+B
F=A+B+1
F=A+B
F=A+B+1
F=A–1
F=A
F=A∧B

F=A∨B
F=A⊕B
F=A
F = shr A
F = shl A

Chuyển A
Tăng A
Phép cộng
Cộng với nhớ
Trừ có mượn
Phép trừ
Giảm
Chuyển A
AND
OR
XOR
Inverter
Dịch phải A
Dịch trái A

Trường ðHSP TPHCM

20


There are six shift microoperations:
shl that shifts the bits of a register one place left
shr that shifts the bits of a register one place right;
cil that shifts the bits of a register one place left with the

leftmost bit being circled back to the right
cir that works similarly but to the right
ashl that shifts all bits except the sign bit of a register to the
left but not into the sign bit
ashr that shifts all bits excluding the sign bit to the right


Eight-bit examples
Type

Symbolic

Source R2 Destination R1

shift left

R1 ← shl R2

10011110

00111100

shift right

R1 ← shr R2

10011110

01001111


Circle shift left

R1 ←cil R2

10011110

00111101

Circle shift right

R1 ← cir R2

10011110

01001111

arithmetic shift left

R1 ← ashl R2

10011110

10111100

arithmetic shift right

R1 ← ashr R2

10011110


10001111



×