Bài giảng Kiến trúc máy tính và hợp ngữ - Chương 3: Kiến trúc tập lệnh
3.0. Mở đầu
Chương 3.
z Vi tác vụ: tác vụ xử lý dữ liệu lưu trên thanh ghi.
Kiến trúc tập lệnh
z Kết quả là thay thế dữ liệu đã lưu hoặc chuyển sang
thanh ghi khác
z Có 4 loại vi tác vụ:
z Vi tác vụ thanh ghi
VI TÁC VỤ
chuyển thông tin từ thanh ghi này sang th/ghi khác
z Vi tác vụ số học
Thực hiện phép tính số học với dữ liệu số trên thanh ghi
z Vi tác vụ luận lý
Thực hiện các tác vụ thao tác bit với dữ liệu phi số trên thanh ghi
z Vi tác vụ dịch
Thực hiện các tác vụ dịch dữ liệu trên thanh ghi
3.1. Vi tác vụ thanh ghi
Chuyển thông tin nhị phân từ thanh ghi này sang th/ghi khác.
z Tác vụ truyền từ
thanh ghi sang
thanh ghi (hình
6.2)
z
Ký hiệu mô tả dãy vi tác vụ:
z
Mệnh đề (vi lệnh) chuyển thông tin
R2 Å R1
z
Mệnh đề If – then
If (P = 1) then (R2 Å R1)
P: R2 Å R1
Ký hiệu
Diễn giải
Ví dụ
Chữ (và số) Thanh ghi
MAR, R2
Ngoặc ( )
Mũi tên
Một phần thanh ghi
R2 (0 – 7), R2 (L)
R2 Å R1
Chuyển thông tin
Hai tác vụ riêng
Dấu phẩy
R2 Å R1, R1 Å R2
z Đặt thanh ghi lên Bus:
VD: Hệ thống Bus dùng cho 4 thanh ghi 4 bit (h 6.3)
Hệ thống Bus dùng cho k th/ghi n bit sẽ có n mạch dồn k – 1.
z Truyền qua bus
z Bus: tập các đường truyền dẫn tín hiệu
Thường dùng bus cho chung mọi thanh ghi
Tín hiệu điều khiển sẽ xác định thanh ghi nào được truyền
1
z Truyền từ Bus vào thanh ghi: nối Bus với đường nhập
của thanh ghi và có tín hiệu nạp.
Truyền từ thanh ghi C sang thanh ghi R1:
Bus Å C, R1 Å Bus
z Bus 3 trạng thái
z
z
z
z
Có thể tạo Bus bằng cổng 3 trạng thái thay cho mạch dồn
Cổng 3 trạng thái: bổ sung tr/thái thứ 3: trở kháng cao, ngõ ra bị ngắt
Thường dùng cổng đệm để thiết kế Bus (h 6.4)
Bus dùng cổng đệm 3 trạng thái thay cho mạch dồn (h 6.5)
(So sánh với dùng mạch dồn)
z Truyền qua bộ nhớ
z
z
z
z
Truyền thông tin từ một từ nhớ ra ngoài: tác vụ Đọc
Đưa thông tin từ ngoài vào bộ nhớ: tác vụ Ghi
Ký hiệu: Từ nhớ có địa chỉ lưu trong thanh ghi AR: M[AR]
VD: Đọc / Ghi bộ nhớ với địa chỉ chứa trong th/ghi AR, với
thanh ghi DR
Tác vụ Đọc: Read: DR Å M[AR]
Tác vụ Ghi: Write: M[AR] Å DR
2
3.2. Vi tác vụ số học
z Mạch cộng trừ nhị phân
z
Thêm cổng XOR.
z
Thực hiện phép tính số học với dữ liệu số trên thanh ghi
z
Khi M = 0, cộng. Khi M = 1, trừ (h 6.7)
z Mạch cộng nhị phân
z (Yêu cầu giải thích)
z
Dùng mạch toàn cộng (h 6.6)
z Mạch tăng nhị phân
z Mạch số học
z
Có thể dùng mạch đếm
z
Dùng mạch cộng song
song (h 6.9)
z
Tăng 1 cho thanh ghi:
Mạch tăng nhị phân (dùng mạch nửa cộng) (h 6.8)
3.3. Vi tác vụ luận lý
z
z
Thực hiện các tác vụ thao tác bit với dữ liệu phi số trên thanh ghi
z Mạch thực hiện vi
tác vụ luận lý
Có 16 tác vụ luận lý khác nhau thực hiện trên 2 bit nhị phân
(b 6.6)
z
Chỉ cần các cổng
AND, OR, XOR,
NOT (h 6.10)
3
3.4. Vi tác vụ dịch
z
z
Thực hiện các tác vụ dịch dữ liệu trên thanh ghi
z Ứng dụng:
z
Vi tác vụ luận lý cho phép thao tác riêng từng bit hoặc một phần
Dùng để truyền tuần tự dữ liệu
của thanh ghi
hoặc phối hợp với tác vụ số học, luận lý và tác vụ khác
z
Tác vụ Chọn đặt (thiết lập có chọn lựa):
đặt 1 vào các bit trong A tương ứng với vị trí các bit 1 trong B:
A Å A ∨ B
z Dịch luận lý (shl / shr : shift)
z
Chuyển 0 qua ngõ nhập dãy
z
A
B
A
1 0 1 0
1 1 0 0
1 1 1 0
z Dịch vòng / quay (cil / cir : circular shift)
z
Quay vòng các bit ở 2 đầu thanh ghi (nối ngõ xuất dãy với ngõ
nhập dãy)
z
z
z
z
Tác vụ Chọn bù
Tác vụ Chọn xóa
Tác vụ Mặt nạ
Tác vụ Thay (đưa trị mới vào nhóm bit)
z Dịch số học (ashl / ashr : arithmetic shift)
z
z
z
z
Khi thanh ghi lưu 1 số nhị phân có dấu
Dịch trái: nhân đôi - Dịch phải: chia đôi
Khi dịch phải, bit dấu được bảo toàn. VD: 1000 (-8) Æ 1100 (-4)
Khi dịch trái, tràn nếu R n – 1 ≠ R n – 2
3.5. ALU
z Mạch dịch
z Đơn vị luận lý – số học (Arithmetic Logic Unit)
z Thay vì dùng các thanh ghi riêng để thực hiện các vi
z
Có thể dùng
thanh ghi dịch 2
chiều nạp song
song.
tác vụ
Dùng các thanh ghi lưu trữ nối với 1 đơn vị thao tác
chung: ALU
z
z
Dùng mạch tổ
hợp cho tác vụ
dịch sẽ tốt hơn
z Để thực hiện 1 vi tác vụ, nội dung th/ghi được đưa vào
ngõ nhập ALU, ALU thực hiện xong tác vụ, chuyển kết
quả cho th/ghi đích.
VD: Mạch dịch
tổ hợp 4 bit (h
6.12)
z Các tác vụ của ALU (b 6.8)
8 tác vụ số học: với S3S2 = 00
4 tác vụ luận lý: với S3S2 = 01
2 tác vụ dịch: với S3S2 = 10 và 11
z Một phần
của ALU
(h 6.13)
4
Bài tập
z BT 48, 49, 50, 51 (trang 92)
5
Bạn đang xem tài liệu "Bài giảng Kiến trúc máy tính và hợp ngữ - Chương 3: Kiến trúc tập lệnh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_kien_truc_may_tinh_va_hop_ngu_chuong_3_kien_truc_t.pdf