Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Bài giảng kiến trúc máy tính chương 4 kiến trúc tập lệnh (isa)...

Tài liệu Bài giảng kiến trúc máy tính chương 4 kiến trúc tập lệnh (isa)

.PDF
60
843
95

Mô tả:

Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Posts and Telecommunications Institute of Technology KIẾN TRÚC MÁY TÍNH Chương IV: Kiến trúc tập lệnh (ISA) Giảng viên: TS. Nguyễn Quý Sỹ Email: [email protected] Hà nội, 17 December 2009 Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Nội dung 1. 2. 3. 4. 5. 6. 7. Giới thiệu Phân loại kiến trúc tập lệnh Chế độ định địa chỉ Các thanh ghi của tập lệnh Khuôn dạng lệnh Các kiểu lệnh Bộ biên dịch Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu • Các máy đa mức hiện đại Đây là mức ngôn ngữ máy Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Kiến trúc tập lệnh là cấu trúc của một máy tính mà người lập trình ngôn ngữ máy phải hiểu để viết một chương trình chuẩn cho máy đó. – • • Đây là phát biểu của IBM vào năm 1964 khi giới thiệu kiến trúc IBM 360, kiến trúc này được rút ra từ 7 tập lệnh IBM khác nhau Ngôn ngữ duy nhất mà một máy tính nhận dạng được khi chạy là ngôn ngữ máy của nó hoặc kiến trúc tập lệnh. Kiến trúc tập lệnh cũng mô tả máy mà một người thiết kế phần cứng cần phải hiểu để thiết kế ra được một sản phẩm máy tính chuẩn. Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • • Kiến trúc tập lệnh dùng như là một giao diện giữa phần cứng và phần mềm (Là một ngôn ngữ cả hai đều phải hiểu) Kiến trúc tập lệnh cung cấp cơ chế để phần mềm “nói” với phần cứng cái cần làm. High level language code : C, C++, Java, Fortan, compiler Assembly language code: architecture specific statements assembler Machine language code: architecture specific bit patterns software instruction set level hardware Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Một kiến trúc sư máy tính phải bàn bạc với cả hai: – người viết chương trình biên dịch – và người thiết kế phần cứng khi thiết kế một máy kết hợp các thuộc tính của cả phần cứng và phần mềm ở mức ISA: – Định nghĩa về chức năng các tác vụ, các chế độ và các vị trí lưu trữ mà phần cứng hỗ trợ – Mô tả chính xác gọi và truy cập bằng phần mềm như thế nào • Thông thường, nên tương thích ngược để có thể chạy các chương trình đang có. Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Một ISA tốt? – Khả năng thực thi • • – Một ISA tốt nên định nghĩa một tập các lệnh sao cho các các lệnh có thể thực thi được hiệu quả hiện tại và tương lai, có kết quả bằng các thiết kế mang lại lợi nhuận qua nhiều thế hệ Các thế hệ x86 (IA32): 8086, 286, 386, 486, Pentium, PentiumII, PentiumIII, Pentium4,… Khả năng lập trình một target (toolkit) rõ ràng cho mã được biên dịch. Dễ dàng biểu diễn các chương trình hiệu quả Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Các đơn vị đo ISA – Tính trực giao • – Tính đầy đủ • – Không quá tải ý nghĩa các trường lệnh Tổ chức hợp lý • – – Hỗ trợ đa dạng các tác vụ và các ứng dụng Tính cân đối • – Không có các thanh ghi đặc biệt, vài trường hợp đặc biệt, tất cả các chế độ toán hạng có thể sử dụng với dạng dữ liệu hoặc dạng lệnh bất kỳ Các yêu cầu tài nguyên dễ xác định Dễ biên dịch Dễ thực hiện Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Các vấn đề khi thiết kế tập lệnh – Các toán hạng được lưu trữ ở đâu? • – Có bao nhiêu toán hạng? • – Thanh ghi, trực tiếpgián tiếp,... Kiểu và kích cỡ toán hạng được hỗ trợ là gì? • – 0, 1, 2 hay là 3 Vị trí toán hạng được xác định như thế nào? • – Các thanh ghi, bộ nhớ, ngăn xếp, tích luỹ Byte, Int, Float, Double, String, Vector Những tác vụ nào được hỗ trợ? • Add, Sub, Mul, Move, Compare ... Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Sự phát triển của kiến trúc tập lệnh Single Accumulator (EDSAC 1950) Accumulator + Index Registers (Manchester Mark I, IBM 700 series 1953) Separation of Programming Model from Implementation High-level Language Based (B5000 1963) Concept of a Family (IBM 360 1964) General Purpose Register Machines Complex Instruction Sets (Vax, Intel 8086 1977-80) Hà nội, 17 December 2009 Load/Store Architecture (CDC 6600, Cray 1 1963-76) RISC (Mips,Sparc,88000,IBM RS6000, . . .1987+) Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • • Mã mức ISA là sản phẩm của một bộ biên dịch. Người viết bộ biên dịch phải biết mô hình bộ nhớ là gì, có các thanh ghi nào, các dạng dữ liệu và các lệnh nào có thể sử dụng được. – – – – – – Các mô hình bộ nhớ Các thanh ghi Các kiểu dữ liệu Các khuôn dạng lệnh Các kiểu lệnh Luồng điều khiển Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Giới thiệu (t) • Các chế độ ISA: Ở mức ISA level, hầu hết các máy hoạt động trên 2 chế độ: – Chế độ Kernel chạy hệ điều hành cho phép các tất cả các lệnh được thực hiện. • • • • – Lập trình các hệ thống Thao tác cache trực tiếp Các lệnh thiết bị ngoại vi trực tiếp Kiến tạo thư viện hệ thống Chế độ người sử dụng chạy chế độ ứng dụng và không cho phép thi hành các lệnh nhạy cảm nào đó . • • • • • Lập trình ứng dụng Thi hành các ứng dụng Word, Excel Applets … Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Nội dung 1. 2. 3. 4. 5. 6. 7. Giới thiệu Phân loại kiến trúc tập lệnh Chế độ định địa chỉ Các thanh ghi của tập lệnh Khuôn dạng lệnh Các kiểu lệnh Bộ biên dịch Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh • Phân lớp các kiến trúc tập lệnh – Tích luỹ (trước 1960): 1 địa chỉ – tos ← tos + next add A, B add A, B, C mem[A] ← mem[A] + mem[B] mem[A] ← mem[B] + mem[C] Thanh ghi-Bộ nhớ (1970s đến nay): 2 địa chỉ – add Bộ nhớ-Bộ nhớ (1970s to 1980s): 2 địa chỉ 3 địa chỉ – acc ← acc + mem[A] Stack (1960s to 1970s): 0 địa chỉ – add A add R1, A load R1, A R1 ← R1 + mem[A] R1 ← mem[A] Thanh ghi/Thanh ghi (Nạp/lưu trữ) (1960s tới nay): 3 địa chỉ Hà nội, 17 December 2009 add R1, R2, R3 load R1, R2 store R1, R2 R1 ← R2 + R3 R1 ← mem[R2] mem[R1] ← R2 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc thanh ghi tích luỹ – – • add A, sub A, mult A, div A, . . . load A, store A Ví dụ: A*B - (A+C*B) load B mul C add A store D load A mul B sub D Hà nội, 17 December 2009 D B B*C A+B*C A+B*C A Học viện Công nghệ Bưu chính Viễn thông A*B kết quả Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc thanh ghi tích luỹ – Ưu điểm • • – Yêu cầu phần cứng rất thấp Dễ hiểu và dễ thiết kế Nhược điểm • • • Thanh ghi tích luỹ trở thành nút cổ chai Khả năng thấp đối với cơ chế sóng song và kỹ thuật đường ống Lưu lượng bộ nhớ cao Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc ngăn xếp – Tập lệnh: • • – add, sub, mult, div, . . . push A, pop A Example: A*B - (A+C*B) push A push B mul push A push C push B mul add sub Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc ngăn xếp – Ưu điểm • • • – Mật độ nguồn tốt (đỉnh của ngăn xếp) Yêu cầu phần cứng thấp Dễ viết bộ biên dịch đơn giản hơn cho các kiến trúc ngăn xếp Nhược điểm • • • • Ngăn xếp trở thành nút cổ chai Ít khả năng cho cơ chế song song và đường ống Dữ liệu không luôn luôn ở đỉnh của ngăn xếp khi cần, vì vậy các lệnh bổ sung như TOP và SWAP được cần tới Khó viết một bộ biên dịch tối ưu cho các kiến trúc ngăn xếp Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc bộ nhớ-bộ nhớ – Tập lệnh • • • (3 toán hạng) (2 toàn hạng) add A, B, C add A, B sub A, B, C sub A, B mul A, B, C mul A, B Ví dụ: A*B - (A+C*B) 3 toán hạng mul D, A, B mul E, C, B add E, A, E sub E, D, E Hà nội, 17 December 2009 2 toán hạng mov D, A mul D, B mov E, C mul E, B add E, A sub E, D Học viện Công nghệ Bưu chính Viễn thông Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Phân loại kiến trúc tập lệnh (t) • Kiến trúc bộ nhớ-bộ nhớ – Ưu điểm • • – Yêu cầu ít lệnh (đặc biệt nếu 3 toán hạng) Dễ viết các bộ biên dịch (đặc biệt nếu 3 toán hạng) Nhược điểm • • • Lưu lượng bộ nhớ rất cao (đặc biệt nếu 3 toán hạng) Số lượng các xung CLK trên một lệnh thay đổi Với 2 toán hạng, yêu cầu dịch chuyển dữ liệu nhiều hơn Hà nội, 17 December 2009 Học viện Công nghệ Bưu chính Viễn thông
- Xem thêm -

Tài liệu liên quan