Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 47 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
47
Dung lượng
874,44 KB
Nội dung
+ Chương 14 Chức cấu trúc Vi xử lý + Tổ chức xử lý Khối điều khiển CU Tổ chức ghi Chu kỳ lệnh Chu kỳ gián tiếp Dòng liệu Pipelining lệnh Chiến lược Pipelining Hiệu suất Pipelining Nguy Pipelining Đối phó với nhánh NỘI DUNG + Tổ chức xử lý a Nhiệm vụ CPU: Truy xuất lệnh: Bộ xử lý đọc lệnh từ nhớ (thanh ghi, nhớ cache, nhớ chính) Giải mã lệnh: Lệnh giải mã để xác định hành động yêu cầu Truy xuất liệu: Việc thực thi lệnh yêu cầu đọc liệu từ nhớ mô-đun I / O Xử lý liệu: Việc thực thi lệnh yêu cầu thực số phép toán số học logic liệu Ghi liệu: Kết thúc việc thực yêu cầu ghi liệu vào nhớ mô-đun I / O Để thực việc này, CPU cần lưu tạm thời số liệu cần nhớ nhỏ bên b Các thành phần CPU • khối số học logic (ALU): thực tính tốn xử lý liệu (chương 10) • khối điều khiển (CU): • kiểm sốt việc di chuyển liệu lệnh vào/ra CPU • điều khiển hoạt động ALU • ghi: nhớ bên CPU, gồm tập hợp vị trí lưu trữ • Đơn vị nối ghép bus • Bus nội Sơ đồ cấu trúc CPU Cấu trúc bên CPU Khối điều khiển CU Chức Điều khiển nhận lệnh từ nhớ đưa vào ghi lệnh Tăng nội dung PC để trỏ sang lệnh Giải mã lệnh nhận để xác định thao tác mà lệnh yêu cầu Phát tín hiệu điều khiển thực lệnh Nhận tín hiệu yêu cầu từ bus hệ thống đáp ứng với u cầu Mơ hình kết nối đơn vị điều khiển Mơ hình kết nối đơn vị điều khiển + Tín hiệu đến CU Clock: tín hiệu nhịp từ mạch tạo dao động bên Mã lệnh từ ghi lệnh đưa đến để giải mã Các cờ từ ghi cờ cho biết trạng thái CPU Các tín hiệu yêu cầu từ bus điều khiển Tín hiệu từ CU Các tín hiệu điều khiển bên CPU: Điều khiển ghi Điều khiển ALU Các tín hiệu điều khiển bên ngồi CPU: Điều Điều khiển nhớ khiển mô-đun vào-ra + Tổ chức ghi Thanh ghi: Không gian lưu trữ tạm thời phục vụ cho hoạt động thời điểm CPU Được coi cấp nhớ cao hệ thống phân cấp Số lượng ghi nhiều tăng hiệu CPU Phân thành loại: Thanh ghi hiển thị với người dùng: Lập trình được, giúp giảm thiểu tham chiếu nhớ Thanh ghi điều khiển trạng thái: Được CU sử dụng để điều khiển hoạt động CPU chương trình hệ điều hành sử dụng để kiểm sốt việc thực thi chương trình Hazard Pipeline Xảy pipeline, phần pipeline, phải đình trệ điều kiện khơng cho phép tiếp tục thực Cịn gọi pipeline bubble Có ba loại hazard: Tài nguyên Dữ liệu Điều khiển Hazard tài nguyên Hazard tài nguyên xảy hai nhiều lệnh đường ống cần dùng tài nguyên Các lệnh phải thực nối tiếp thay song song với phần đường ống Còn gọi Hazard cấu trúc RAW Hazard + Hazard liệu Xảy có xung đột việc truy cập vị trí tốn hạng (Lệnh sau sử dụng liệu kết lệnh trước) + Các loại Hazard liệu Read after write (RAW), true dependency Write after read (WAR), or antidependency Một lệnh sửa đổi ghi vị trí nhớ Lệnh đọc liệu nhớ vị trí ghi Hazard xảy việc đọc diễn trước hoạt động ghi hoàn tất Một lệnh đọc ghi vị trí nhớ Lệnh ghi vào vị trí Hazard xảy thao tác ghi hồn thành trước có thao tác đọc Write after write (WAW), or output dependency Hai lệnh ghi vào vị trí Hazard xảy thao tác ghi diễn theo thứ tự ngược với trình tự dự định + Hazard điều khiển Còn gọi Hazard nhánh Xảy đường ống đưa định sai dự báo nhánh Đưa lệnh đáng sau phải loại bỏ vào đường ống Giải pháp với nhánh có điều kiện: Nhiều luồng Mục tiêu nhánh truy xuất trước Loop buffer Dự báo nhánh Nhánh trễ a Nhiều luồng Một đường ống đơn giản gặp khó khăn lệnh rẽ nhánh phải chọn hai lệnh để truy xuất chọn sai Cách ép buộc nhân rộng phần mở đầu đường ống cho phép đường ống truy xuất hai lệnh, sử dụng hai luồng Có hai vấn đề với cách làm này: Trong nhiều đường ống có trễ tranh chấp để truy cập vào ghi nhớ Lệnh nhánh thêm vào vào đường ống (một hai luồng) trước định lệnh nhánh ban đầu giải b Mục tiêu nhánh truy xuất trước + Khi nhận nhánh điều kiện, mục tiêu nhánh truy xuất trước, bổ sung vào lệnh theo sau nhánh Mục tiêu lưu lại lệnh rẽ nhánh thực thi Nếu nhánh chọn, mục tiêu truy xuất trước IBM 360/91 sử dụng cách + c Bộ đệm vòng lặp nhớ nhỏ, tốc độ cao trì tầng truy xuất lệnh pipeline chứa n lệnh truy xuất gần nhất, theo thứ tự Lợi ích: lệnh truy xuất theo trình tự có sẵn mà tốn thời gian truy cập nhớ thông thường Nếu có rẽ nhánh tới mục tiêu nằm trước địa lệnh rẽ nhánh vài vị trí, mục tiêu đệm Cách đặc biệt phù hợp để xử lý vòng lặp nguyên tắc tương tự với nhớ cache dành riêng cho lệnh Điểm khác biệt: đệm vịng lặp trữ lệnh theo trình tự kích thước nhỏ nhiều; giảm chi phí Loop Buffer + d Dự đoán nhánh Nhiều kỹ thuật sử dụng để dự đoán nhánh chọn hay không: Predict never taken Predict always taken Predict by opcode Taken/not taken switch Branch history table Các phương pháp tĩnh Không phụ thuộc vào lịch sử thực thi tính tới thời điểm có lệnh rẽ nhánh có điều kiện Các phương pháp động phụ thuộc vào lịch sử thực thi + Lược đồ dự đoán nhánh Sơ đồ trạng thái dự đốn nhánh + Đối phó với nhánh Tổng kết + Cấu trúc Chức Bộ xử lý Chương 14 Tổ chức xử lý Tổ chức ghi Pipelining lệnh Chiến lược Pipelining Hiêu suất Pipeline Thanh ghi hiển thị người dùng Pipeline hazard Thanh ghi điều khiển trạng thái Xử lý rẽ nhánh Pipelining Intel 80486 Chu kỳ lệnh Chu kỳ gián tiếp Luồng liệu Họ vi xử lý x86 Tổ chức ghi Xử lý gián đoạn Câu hỏi chương 14 Chức ghi xử lý? Thanh ghi hiển thị với người dùng thường hỗ trợ loại liệu ? Mã điều kiện gì? Từ trạng thái chương trình PSW gì? Tại pipeline lệnh hai giai đoạn không rút ngắn nửa thời gian chu kỳ lệnh so với không sử dụng pipeline? Liệt kê giải thích ngắn gọn giải pháp để pipeline lệnh giải vấn đề lệnh rẽ nhánh có điều kiện Dự báo nhánh sử dụng bit lịch sử nào? ... để điều khiển hoạt động CPU chương trình hệ điều hành sử dụng để kiểm soát việc thực thi chương trình Thanh ghi hiển thị với người dùng Được tham chiếu ngôn ngữ máy mà CPU thực Phân loại... đồ dự đoán nhánh Sơ đồ trạng thái dự đoán nhánh + Đối phó với nhánh Tổng kết + Cấu trúc Chức Bộ xử lý Chương 14 Tổ chức xử lý Tổ chức ghi Pipelining lệnh Chiến lược Pipelining Hiêu... Tổ chức ghi Xử lý gián đoạn Câu hỏi chương 14 Chức ghi xử lý? Thanh ghi hiển thị với người dùng thường hỗ trợ loại liệu ? Mã điều kiện gì? Từ trạng thái chương trình PSW gì? Tại pipeline lệnh