Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 29 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
29
Dung lượng
585,5 KB
Nội dung
Chương – Tổ chức xử lý Tổ chức xử lý trung tâm Bộ ghi Đường liệu (Datapath) Tổ chức One-Bus Tổ chức Two-Bus, Three-Bus Diễn tiến thi hành lệnh mã máy Bộ điều khiển Xử lý ngắt (Interrupt Handling) Kỹ thuật ống dẫn (Pipeline) Khoa KTMT Vũ Đức Lung 7.1 Tổ chức xử lý trung tâm đòi hỏi bên CPU: – – – – – Tìm nạp lệnh (Fetch Instruction) Diễn giải lệnh (Interpret Instruction) Tìm nạp liệu (Fetch data) Xử lý liệu (Process data) Ghi liệu (Write data) Khoa KTMT Vũ Đức Lung Cấu trúc bên CPU Khoa KTMT Vũ Đức Lung 7.2 Bộ ghi Thanh ghi mục đích chung Thanh ghi có mục đích đặc biệt Chiều dài ghi Số lượng ghi Thanh ghi truy cập nhớ – Thanh ghi liệu nhớ (memory data register - MDR) – Thanh ghi địa nhớ (memory address regiater – MAR) Thanh ghi chuyển tải lệnh – Bộ đếm chương trình (program counter – PC) – Thanh ghi lệnh (instruction register – IR) Thanh ghi từ trạng thái chương trình (program status word – PSW) Khoa KTMT Vũ Đức Lung Các ghi họ 80x86 _ ghi mục đích chung: SI (source index), DI (destination index), SP (stack pointer) BP (base pointer) – Thanh ghi segment – Thanh ghi đếm chương trình PC, ghi lệnh IR ghi cờ trạng thái Khoa KTMT Vũ Đức Lung 7.3 Đường liệu (Datapath) Đường liệu gồm có – – – – logic-số học (ALU: Arithmetic and Logic Unit), mạch dịch, ghi đường nối kết phận Nhiệm vụ phần đường liệu – đọc toán hạng từ ghi tổng quát – thực phép tính toán hạng ALU – lưu trữ kết ghi tổng quát Khoa KTMT Vũ Đức Lung Tổ chức One-Bus Một BUS sử dụng liệu di chuyển chu kỳ đồng hồ => phép toán có hai toán hạng cần hai chu kỳ đồng hồ Khoa KTMT Vũ Đức Lung Tổ chức Two-Bus Khoa KTMT Vũ Đức Lung Three-Bus Tổ chức đường truyền liệu dạng three-bus Khoa KTMT Vũ Đức Lung 7.4 Diễn tiến thi hành lệnh mã máy(CPU instruction cycle) Việc thi hành lệnh mã máy chia thành giai đoạn – – – – Đọ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 nhớ nhảy (MEM: Memory access) – Lưu trữ kết (RS: Result Storing) Khoa KTMT Vũ Đức Lung 10 7.5 Bộ điều khiển Bộ điều khiển mạch điện tử – nguyên lý hoạt động mạch hay Automate (mạch tự động hóa) trạng thái hữu hạn – Ưu điểm : • có số hữu hạn trạng thái • tối ưu để tạo chế độ nhanh cho tác vụ Bộ điều khiển vi chương trình – dùng vi chương trình lập sẵn nằm nhớ điều khiển (control memory) để khởi động dãy vi tác vụ theo yêu cầu – dùng rộng rãi xử lý CISC Khoa KTMT Vũ Đức Lung 15 Bộ điều khiển (tt) sơ đồ khối điều khiển mạch điện tử Khoa KTMT Vũ Đức Lung 16 Bộ điều khiển điện tử Ví dụ điều khiển thực lệnh: ADD R0,R1,R2 Các bước thực Cài đặt phần cứng Khoa KTMT Vũ Đức Lung 17 Bộ điều khiển điện tử (tt) VD lệnh ADD R0,R1,R2 với cấu trúc one-bus databath Khoa KTMT Vũ Đức Lung 18 Bộ điều khiển điện tử (tt) Yêu cầu tìm biểu thức logic cho tín hiệu điều khiển VD: giả sử lệnh có lệnh Inst-x, Inst-y, Inst-z A,B,C,D,R,F,G,H đường điều khiển Khoa KTMT Vũ Đức Lung 19 Bộ điều khiển điện tử (tt) Sơ đồ trạng thài thực lệnh Khoa KTMT Vũ Đức Lung 20 Bộ điều khiển vi chương trình Vi lệnh chiều ngang chiều dọc VD: Trong cấu trúc đường truyền three-bus, giả sử có 16 ghi GPR R0-R15, ALU có phép toán (add, sub, multiply, divide, AND,OR, shift left shift right) Xét format cho vi lệnh ADD R0,R1,R2 theo chiều ngang Khoa KTMT Vũ Đức Lung 21 Vi lệnh chiều ngang chiều dọc Khoa KTMT Vũ Đức Lung 22 7.6 Xử lý ngắt (Interrupt Handling) Ngắt kiện xảy cách ngẫu nhiên máy tính làm ngưng tính chương trình (nghĩa tạo lệnh nhảy) ngắt quãng dùng cho công việc: – – – – – – – – – – Ngoại vi đòi hỏi nhập xuất số liệu Người lập trình muốn dùng dịch vụ hệ điều hành Cho chương trình chạy lệnh Làm điểm dừng chương trình Báo tràn số liệu tính toán số học Trang nhớ thực nhớ Báo vi phạm vùng cấm nhớ Báo dùng lệnh tập lệnh Báo phần cứng máy tính bị hư Báo điện bị cắt Khoa KTMT Vũ Đức Lung 23 7.6 Xử lý ngắt (Interrupt Handling) Khi ngắt xảy ra, xử lý thi hành bước: – – – – Thực xong lệnh làm Lưu trữ trạng thái Nhảy đến chương trình phục vụ ngắt Khi chương trình phục vụ chấm dứt, xử lý khôi phục lại trạng thái cũ tiếp tục thực chương trình mà thực bị ngắt Thực vi tác vụ ngắt Khoa KTMT Vũ Đức Lung 24 7.7 Kỹ thuật ống dẫn (PIPELINE) Thực lệnh kỹ thuật pipeline: Một số ràng buộc pipeline – Cần phải có mạch điện tử để thi hành giai đoạn lệnh – Phải có nhiều ghi khác dùng cho tác vụ đọc viết – Cần phải giải mã lệnh cách đơn giản để giải mã đọc toán hạng chu kì – Cần phải có làm tính ALU hữu hiệu để thi hành lệnh số học dài khoảng thời gian chu kì Khoa KTMT Vũ Đức Lung 25 Những khó khăn kỹ thuật ống dẫn Khó khăn cấu trúc Khó khăn điều khiển Khó khăn số liệu – ví dụ trường hợp lệnh liên tiếp sau: Lệnh 1: ADD R1, R2, R3 Lệnh 2: SUB R4, R1, R5 Lệnh 3: AND R6, R1, R7 Lệnh 4: OR R8, R1, R9 Khoa KTMT Vũ Đức Lung 26 ADD R1,R2,R0 Khoa KTMT 27 ADD R1,R2,R3 SUB R3,R1,R4 OR R5,R2,R3 0x8000 0001000100100011 Khoa KTMT 0001000100100011 0010001100010100 0011010100100011 0x8004 0x8008 0010001100010100 0x800c 0011010100100011 Vũ Đức Lung 28 Khoa KTMT Vũ Đức Lung 29 ... 7.2 Bộ ghi Thanh ghi mục đích chung Thanh ghi có mục đích đặc biệt Chiều dài ghi Số lượng ghi Thanh ghi truy cập nhớ – Thanh ghi liệu nhớ (memory data register - MDR) – Thanh ghi địa nhớ. .. lập trình muốn dùng dịch vụ hệ điều hành Cho chương trình chạy lệnh Làm điểm dừng chương trình Báo tràn số liệu tính toán số học Trang nhớ thực nhớ Báo vi phạm vùng cấm nhớ Báo dùng lệnh tập lệnh... Bộ điều khiển vi chương trình – dùng vi chương trình lập sẵn nằm nhớ điều khiển (control memory) để khởi động dãy vi tác vụ theo yêu cầu – dùng rộng rãi xử lý CISC Khoa KTMT Vũ Đức Lung 15 Bộ