Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
396,5 KB
Nội dung
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
1 /87
CHƯƠNG 4
MỨC VILẬP TRÌNH
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
2 /87
THANH GHI
Chức năng và đặc điểm:
Tập hợp các thanh ghi nằm trong BXL
Chứa các thông tin tạm thời phục vụ cho hoạt động ở thời điểm hiện
tại của BXL
Như là mức đầu tiên của hệ thống nhớ
Tùy thuộc vào BXL cụ thể
Số lượng thanh ghi nhiều → tăng hiệu năng của BXL
Có hai loại thanh ghi
Các thanh ghi lậptrình được
Các thanh ghi không lậptrình được
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
3 /87
THANH GHI
Một số thanh ghi điển hình
Các thanh ghi địa chỉ
Bộ đếm chươngtrình (Program Counter)
Con trỏ dữ liệu (Data Pointer)
Con trỏ ngăn xếp (Stack Pointer)
Thanh ghi cơ sở và thanh ghi chỉ số (Base Register &
Index Register)
Các thanh ghi dữ liệu
Thanh ghi trạng thái (thanh ghi cờ)
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
4 /87
THANH GHI
Thanh ghi địa chỉ
Chương trình mã máy đang thực hiện chiếm 3
vùng nhớ khác nhau trong bộ nhớ: vùng lệnh,
vùng dữ liệu, vùng ngăn xếp
Vùng lệnh: chứa các lệnh của chương trình, do Thanh
ghi bộ đếm chươngtrình quản lý.
Vùng dữ liệu: chứa dữ liệu, do thanh ghi con trỏ dữ liệu
quản lý
Vùng ngăn xếp: chứa địa chỉ CTC, ngắt, phục vụ thực
hiện rẽ nhánh, do thanh ghi con trỏ ngăn xếp quản lý
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
5 /87
THANH GHI
Bộ đếm chương trình
Còn gọi là con trỏ lệnh IP (Instruction Pointer),
quản lý địa chỉ vùng lệnh
Giữ địa chỉ của lệnh tiếp theo sẽ được nhận vào
Sau khi lệnh được nhận vào, nội dung PC tự động
tăng để trỏ sang lệnh kế tiếp
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
6 /87
THANH GHI
Minh họa bộ đếm chương trình
. . .
Lệnh
Lệnh
Lệnh
Lệnh sẽ được
nhận vào
Lệnh kế tiếp
Lệnh
Lệnh
. . .
PC
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
7 /87
THANH GHI
Thanh ghi con trỏ dữ liệu
Chứa địa chỉ của ngăn nhớ dữ liệu mà BXL cần
truy nhập
. . .
Dữ liệu
Dữ liệu
Dữ liệu
DL cần đọc/ghi
Dữ liệu
Dữ liệu
. . .
DP
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
8 /87
THANH GHI
Con trỏ ngăn xếp
Ngăn xếp (Stack):
Là vùng nhớ có cấu trúc LIFO
Đáy ngăn xếp là một ngăn nhớ xác định
Đỉnh ngăn xếp có thể bị thay đổi
Con trỏ ngăn xếp SP:
SP trỏ vào ngăn nhớ đỉnh ngăn xếp
Cất thêm thông tin vào ngăn xếp → SP giảm
Lấy thông tin từ ngăn xếp → SP tăng
Khi ngăn xếp rỗng → SP trỏ vào đáy
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
9 /87
THANH GHI
Đỉnh Stack
Đáy Stack
SP
C
Ê
t
v
µ
o
L
Ê
y
r
a
ChiÒu
t¨ng
cña
®Þa
chØ
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA
ĐIỆN TỬ
10 /
87
THANH GHI
Thanh ghi cơ sở và thanh ghi chỉ số
Thanh ghi cơ sở: chứa địa chỉ của ngăn nhớ cơ sở
(ngăn nhớ gốc tương đối), còn gọi: địa chỉ đoạn
(segment)
Thanh ghi chỉ số: chứa độ lệch của địa chỉ giữa
ngăn nhớ mà BXL cần truy nhập so với ngăn nhớ
cơ sở, còn gọi: địa chỉ offset
[...]... dụ về mứcvichương trình, chúng ta cần nghiên cứu kiến trúc của mức máy thông thường, mức này sẽ được hỗ trợ bởi một trình thông dịch chạy trên máy mức 1 - MứcVi chương trình 4. 3.1 Kiến trúc mức máy thông thường - Vĩ kiến trúc 4. 3.2 Vấn đề đánh địa chỉ bộ nhớ chính và bộ nhớ ngăn xếp 4. 3.3 Tập vĩ chỉ thị BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 30 / 4. 3.1 Kiến trúc mức máy thông thường - Vĩ kiến trúc Trình. .. Trình thông dịch chạy trên máy mức 1 (Gọi là Mic-1)- MứcVichươngtrình Gọi kiến trúc của các máy ở mức 2 và 3 là vĩ kiến trúc (macroarchitecture) cho tương phản với kiến trúc ở mức 1 đã được gọi là vi kiến trúc (microarchitecture) Gọi máy mức 2 là Mac-1 Trong chương này các chỉ thị bình thường như ADD, MOVE và các chỉ thị khác của mức máy thông thường (máy mức 2) sẽ được gọi là vĩ chỉ thị BỘ... ENC=0: Không cất Tổng số bit tín hiệu = 22 bit BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 21 / 4. 2.2 Vi chỉ thị: khuôn dạng gồm 13 trường BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 22 / 4. 2.3 Vi c định thời vi chỉ thị Là vi c định trình tự xảy ra các sự kiện trong quá trình thực hiện một vi chỉ thị Một chu kỳ ALU cơ sở bao gồm vi c: 1 Nạp vi chỉ thị tiếp theo sẽ được thi hành vào MIR 2 Mở cổng các thanh ghi tạm đi vào... định; nạp MAR nếu cần thiết 4 Khi giá trị ra của shifter ổn định, chứa giá trị trên bus C vào bộ nhớ tạm và nạp cho MBR nếu vi c này cũng được yêu cầu sử dụng một đồng hồ 4 pha (có 4 chu kỳ con) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 23 / 4. 2.3 Vi c định thời vi chỉ thị Bộ nhớ điều khiển (Control Store): Chứa vi chương trình Dung lượng 256x32 Chu kỳ con thứ nhất: nạp vi chỉ thị trỏ bởi MPC cho... 27 / 4. 2 .4 Sự định trình tự các vi chỉ thị Đó là vi c chọn vi chỉ thị tiếp theo: tuần tự hay nhảy (Jump) Trường COND sẽ xác định thực hiện: Tuần tự: MPC+1 Rẽ nhánh: ADDR Có 4 cách lựa chọn vi chỉ thị tiếp theo, chỉ ra bằng trường COND như sau: 0 = Không nhảy 1 = Nhảy tới ADDR nếu N =1 2 = Nhảy tới ADDR nếu Z =1 3 = Nhảy tới ADDR vô điều kiện BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 28 / 4. 2 .4 Sự... năng, có thể được sử dụng theo ý của người lập vi chương trình BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 18 / 4. 2.2 Vi chỉ thị - microinstruction Các tín hiệu để điều khiển đường dữ liệu gồm 9 nhóm: 16 tín hiệu để điều khiển vi c nạp cho bus A từ bộ nhớ tạm (có 16 thanh ghi) 16 tín hiệu để điều khiển vi c nạp cho bus B từ bộ nhớ tạm 16 tín hiệu để điều khiển vi c nạp cho bộ nhớ tạm từ bus C 2 tín hiệu... MÁY TÍNH – KHOA 24 / 4. 2.3 Vi c định thời vi chỉ thị Chu kỳ con thứ hai: Đơn vị Increment tính MPC+1; Các trường của MIR bắt đầu điều khiển đường dữ liệu: A decoder và B decoder thực hiện giải mã 2/16 thanh ghi được chọn mở cổng đổ dữ liệu vào bus A và bus B A latch và B latch chốt dữ liệu ở đầu vào và đưa dữ liệu ra BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 25 / 4. 2.3 Vi c định thời vi chỉ thị Chu... MÔN KỸ THUẬT MÁY TÍNH – KHOA 14 / 4. 2.1 Đường dữ liệu Đường dữ liệu là một phần của CPU, nó có chứa ALU, các đầu vào và đầu ra Thí dụ trên hình vẽ: 16 thanh ghi 16 bit giống nhau tạo nên một bộ nhớ tạm chỉ truy cập được ở mứcvichươngtrình Thanh ghi đưa nội dung ra: bus A, bus B hoặc đồng thời cả 2 bus Nạp vào thanh ghi: từ bus C ALU (16 bit) có thể thực hiện 4 chức năng: A+B, A A AND B,... dịch, giá trị này cũng có thể đồng thời được chứa vào một trong các thanh ghi của bộ nhớ tạm M2 và M3 điều khiển vi c đọc và ghi bộ nhớ AMUX: bộ dồn kênh để chọn dữ liệu đưa vào ALU từ A latch hay từ MBR A0 điều khiển AMUX BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 17 / 4. 4.2 Thí dụ về một vi chương trình Các thanh ghi: PC, AC và SP IR: Thanh ghi lệnh TIR (Temporary IR): chứa tạm thời bản sao của IR dùng... chỉ thị của chương trình) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 33 / 4. 3.2 Vấn đề đánh địa chỉ bộ nhớ chính và bộ nhớ ngăn xếp Các mode địa chỉ: Các chỉ thị mode địa chỉ trực tiếp: có chứa một địa chỉ bộ nhớ 12 bit, đánh được địa chỉ của toàn bộ 40 96 từ trong bộ nhớ Những chỉ thị như vậy cần phải có để truy cập các biến toàn cục Các chỉ thị mode gián tiếp: (12 bit) cho phép người lậptrình tính địa . lập vi chương trình. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA ĐIỆN TỬ 19 / 87 4. 2.2 Vi chỉ thị - microinstruction Các tín hiệu để điều khiển đường dữ liệu gồm 9 nhóm: 16 tín hiệu để điều khiển vi c. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA ĐIỆN TỬ 1 /87 CHƯƠNG 4 MỨC VI LẬP TRÌNH BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA ĐIỆN TỬ 2 /87 THANH GHI Chức năng và đặc điểm: Tập. hay từ MBR A0 điều khiển AMUX. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA ĐIỆN TỬ 18 / 87 4. 4.2 Thí dụ về một vi chương trình Các thanh ghi: PC, AC và SP IR: Thanh ghi lệnh. TIR (Temporary IR):