KIẾN TRÚC MÁY TÍNH NÂNG CAO

17 909 9
KIẾN TRÚC MÁY TÍNH NÂNG CAO

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 Khoa KTMT Vũ Đức Lung 1 KIẾN TRÚC MÁY TÍNH NÂNG CAO  Thi gian: – Lý Thuyt: 30 tit (2TC) – Thc hành: 30 tit (1TC)  im s: – im thi bài thu hoch + báo cáo: 50% – im thi cui kỳ: 50%  Khoa Kỹ thuật máy tính  GV: TS. Vũ Đức Lung  Email: lungvd@uit.edu.vn Khoa KTMT Vũ Đức Lung 2 Mục Mục đ đ ích ích & & nội nội dung dung môn môn học học Nhằm trang bị cho sinh viên các kiến thức chuyên sâu về kiến trúc máy tính.  Kin trúc vi lnh và t chc máy tính  Thit k và t chc b nh  K thut ng dn  Máy tính song song, Máy tính SIMD, Máy tính MIMD  Kin trúc h thng b nh chia s  Kin trúc h thng truyn thông ip  Mô hình tru tưng  Lp trình song song trong máy o song song Khoa KTMT Vũ Đức Lung 3 Tài Tài liệu liệu học học tập tập & & tham tham khảo khảo 1. Vũ Đức Lung. Giáo trình kiến trúc máy tính. Trường ĐH Công nghệ thông tin, ĐHQG TP.HCM, 2009. . 2. H. El-Rewini. Advanced Computer Architecture and Parallel Processing, Wiley, 2005 3. Andrew S. Tanenbaum. Structured Computer Organization, 5-th edition, Prentice Hall, 2005 4. Patterson, D. A., and J. L. Hennessy. Computer Organization and Design: The Hardware/Software Interface, 3rd ed. San Mateo, CA: Morgan Kaufman, 2004 5. Kai Hwang, Advanced Computer Architecture : Parallelism, Scalability, Programmability, McGraw-Hill, 1993. Tài liệu: http://groups.google.com/group/aca-vdlung Khoa KTMT Vũ Đức Lung 4 Chương 1 : Vi tác vụ và tổ chức máy tính Chương 2 : Hệ thống máy tính đơn giản trên NIOS II Chương 3 : Hệ Thống bộ nhớ Chương 4 : Kỹ thuật ống dẫn Chương 5 : Máy tính song song Chương 6 : Kiến trúc hệ thống bộ nhớ chia sẻ Chương 7: Kiến trúc hệ thống truyền thông điệp Chương 8: Mô hình trừu tượng Chương 9: Lập trình song song trong máy ảo song song Nội dung môn học 1 UIT KTMT 1 Chương 1 Vi tác vụ và tổ chức máy tính UIT KTMT 2 Mục tiêu • Hiểu ý nghĩa của “ngôn ngữ” vi tác vụ • Hiểu cấu trúc của ALU (mạch số học + mạch luận lý + mạch dịch tổ hợp) • Hiểu cấu tạo và cách thức hoạt động (ở mức vi trình) của một máy tính cơ bản • Hiểu cách thức máy tính cơ bản thi hành chu kỳ máy (ở mức vi trình) UIT KTMT 3 Vi tác vụ là các tác vụ hay công việc xử lý dữ liệu thực hiện trên các thanh ghi Có 4 loại vi tác vụ chính: 1. Vi tác vụ ghi chuyển thông tin nhị phân 2. Vi tác vụ số học 3. Vi tác vụ luận lý 4. Vi tác vụ dịch 1.1 Vi tác vụ thanh ghi UIT KTMT 4 Vi tác vụ thanh ghi • Tên thanh ghi: chữ hoa (có thể có kèm số) PC, MAR, R1, R2,  • Chuyển nội dung thanh ghi R1 sang thanh ghi R2 (R1 không đổi): R2 ← R1 • Chuyển nội dung thanh ghi R1 sang thanh ghi R2 (R1 không đổi) dùng hàm điều khiển (khi hàm có giá trị 1): P: R2 ← R1 hoặc If (P=1) then (R2 ← R1) S 0 S 1 : R2 ← R1 UIT KTMT 5 Vi tác vụ thanh ghi R2 R1 P Load Clock Mạch điều khiển n R2 R1 S 0 Load Clock Mạch điều khiển n S 1 UIT KTMT 6 Vi tác vụ thanh ghi R2(0-7): (bit từ 0 đến 7 của thanh ghi R2) R2(L): các bit thấp của thanh ghi R2 Một phần thanh ghiDấu ngoặc sau tên thanh ghi R2← R1, R1← R2 Tác vụ xảy ra đồng thời (trong cùng một chuyển tiếp đồng hồ) Dấu phẩy R2← R1 Truyền dữ liệuMũi tên PC,MAR,R1,Tên thanh ghiChữ hoa (hoặc số theo sau) Ví dụDiễn giảiKý hiệu 2 UIT KTMT 7 1.2. Truyền dữ liệu qua bus 3 2 1 0 4x1 MUX 3 2 1 0 4x1 MUX 3 2 1 0 4x1 MUX 3 2 1 0 4x1 MUX S 0 S 1 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0 A B D C UIT KTMT 8 Truyền dữ liệu qua bus 3 trạng thái 3 2 1 0 2x4 Decoder 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0 S 0 S 1 E UIT KTMT 9 Truyền qua bộ nhớ • DR ← M[AR] • M[AR] ← DR • M[AR] : ô nhớ có địa chỉ được lưu trong thanh ghi AR. UIT KTMT 10 1.3. Vi tác vụ số học R3 ← R1 + R2 R3 ← R1 – R2 R2 ← R2 R2 ← R2 + 1 R3 ← R1 + R2 + 1 R1 ← R1 +1 R1 ← R1 -1 Ý nghĩaKý hiệu UIT KTMT 11 Mạch số học Chuyển AD = A1111 Giảm AD = A – 11011 Tăng AD = A + 10101 Chuyển AD = A0001 B’ B’ B B Y 1 0 1 0 C in 1 1 0 0 S 0 0 0 0 0 S 1 Cộng với nhớD = A + B + 1 TrừD = A + B + 1 Trừ có mượnD = A + B CộngD = A + B Diễn giảiD=A+Y+C in UIT KTMT 12 Mạch số học Y 3 X 3 FA C 4 C 3 Y 2 X 2 FA C 3 C 2 Y 1 X 1 FA C 2 C 1 Y 0 X 0 FA C 1 C 0 D 0 D 1 D 2 D 3 C out 3 2 1 0 4x1 MUX S 0 S 1 3 2 1 0 4x1 MUX S 0 S 1 3 2 1 0 4x1 MUX S 0 S 1 3 2 1 0 4x1 MUX S 0 S 1 A 3 A 2 A 1 A 0 B 0 B 1 B 2 B 3 01 01 01 01 C in S 0 S 1 3 UIT KTMT 13 1.4. Vi tác vụ luận lý Gán 1 F ← 1…1 F15 = 1 NAND F ← A ∧ B F14 = xy F ← A ∨ B F13 = x + y F ← A F12 = x F ← A ∨ B F11 = x + y F ← B F10 = y NXOR F ← A ⊕ BF9 = x ⊕ y NOR F ← A ∨ B F8 = (x + y) OR F ← A ∨ B F7 = x + y F ← A ⊕ BF6 = x ⊕ y F ← B F5 = y F ← A ∧ B F4 = x.y truyền A F ← A F3 = x F ← A ∧ B F2 = x.y AND F ← A ∧ B F1 = xy xóa 0 F ← 0 F0 = 0 Vi tác vụKý hiệuHàm UIT KTMT 14 Mạch luận lý 0 1 2 A i B i 3 E i S 0 S 1 InverterE = A11 0 1 0 S0 XOR E = A ⊕ B 1 OR E = A ∨ B 0 AND E = A ∧ B 0 phép tínhĐầu raS1 S 0 S 1 MUX 4x1 UIT KTMT 15 1.5. Vi tác vụ dịch Dịch phải số học R R ← ashr R Dịch trái số học R R ← ashl R Dịch vòng phải R R ← cir R Dịch vòng trái R R ← cil R Dịch phải R R ← shr R Dịch trái R R ← shl R Ý nghĩaKý hiệu UIT KTMT 16 Mạch dịch tổ hợp 4 bit I R A 0 A 1 A 2 A 3 1 0 2x1 MUX S 1 0 2x1 MUX S 1 0 2x1 MUX S 1 0 2x1 MUX S H 0 I L H 1 H 2 H 3 S I L A3A2A11 A2A1A0I R 0 H3H2H1H0S UIT KTMT 17 1.6. ALU (Arithmetic and Logic Unit) 3 2 1 0 4x1 MUX S 0 S 1 Một tầng mạch số học Một tầng mạch luận lý S 3 S 2 S 1 S 0 B i A i A i-1 A i+1 C i+1 C i D i E i shr shl UIT KTMT 18 Các tác vụ của ALU Dịch trái AF = shl Axxx11 Dịch phải AF = shr Axxx01 InverterF = Ax1110 XOR F = A ⊕ B x0110 OR F = A ∨ B x1010 AND F = A ∧ B x0010 Chuyển AF = A11100 GiảmF = A – 101100 Phép trừF = A + B + 110100 Trừ có mượnF = A + B00100 Cộng với nhớF = A + B + 111000 Phép cộngF = A + B01000 Tăng AF = A + 110000 Chuyển AF = A00000 C in S 0 S 1 S 2 S 3 Chức năngTác vụChọn tác vụ 4 UIT KTMT 19 2. Tổ chức máy tính UIT KTMT 20 Mã Lệnh • Mã lệnh là nhóm bit ra lệnh cho máy tính thực hiện một tác vụ nào đó • Mã lệnh gồm nhiều phần: Mã tác vụ, địa chỉ bộ nhớ, các bit chỉ thị khác UIT KTMT 21 Tổ chức chương trình 15 12 11 0 Mã tác vụ Địa chỉ tác tố Chương trình (mã lệnh) Dữ liệu 16 bit 4096 từ AC (accumulator) UIT KTMT 22 Địa chỉ gián tiếp 14 12 11 0 Mã tác vụ Địa chỉ tác tố 15 I 22 457 0 ADD 457 AC + 22 457 1 ADD 457 AC + 1350 1350 UIT KTMT 23 Tập thanh ghi Lưu ký tự xuấtTh.ghi xuất8OUTR Lưu ký tự nhậpTh.ghi nhập8INPR Lưu dữ liệu tạmTh.ghi tạm16TR Lưu địa chỉ lệnh kếTh.ghi đếm chương trình12PC Lưu mã lệnh kế tiếp Th.ghi xử lý Lưu địa chỉ bộ nhớ Lưu tác tố Chức năng Th.ghi địa chỉ12AR Th.ghi lệnh16IR Th.ghi tích lũy16AC Th.ghi dữ liệu16DR TênBitKý hiệu UIT KTMT 24 Thanh ghi và bus 5 UIT KTMT 25 thanh ghi có các ngõ nhập LD, INR và CLR tương đương mạch đếm nạp song song, xóa đồng bộ UIT KTMT 26 thanh ghi chỉ có ngõ nhập LD (IR và OUTR) tương đương thanh ghi nạp song song UIT KTMT 27 Tập lệnh 14 12 11 Mã tác vụ Địa chỉ tác tố 15 I 12 11 Tác vụ thanh ghi 15 0 1 1 1 12 11 Tác vụ nhập/xuất 15 1 1 1 1 Mã tác vụ 000 – 110 Mã tác vụ 111, I = 0 Mã tác vụ 111, I = 1 0 0 0 UIT KTMT 28 Định thời và điều khiển 14 13 12 11 – 0 15 Mạch giải mã 3x8 Các cổng điều khiển Tín hiệu điều khiển 7 D 7  0 Mạch giải mã 4x16 15 0 D 0 T 15 T 0  Mạch đếm tuần tự 4 bit INR (increment) CLR (clear) Clock UIT KTMT 29 Mối quan hệ thời gian giữa các thời hiệu UIT KTMT 30 3. Quy trình thực hiện lệnh 6 UIT KTMT 31 Chu kỳ lệnh 1.Tìm lệnh 2.Giải mã lệnh 3.Đọc địa chỉ hiệu dụng từ bộ nhớ nếu lệnh có địa chỉ gián tiếp 4.Thực hiện lệnh UIT KTMT 32 Tìm và giải mã lệnh T 0 : AR PC T 1 :IR M[AR] ,PC PC+1 T 2 : UIT KTMT 33 Chu kỳ lệnh tổng quát Start SC ← 0 AR ← PC IR ← M[AR], PC ← PC + 1 Giải mã tác vụ trong IR(12-14) AR ← IR(0-11), I ← IR(15) D 7 I I Thi hành tác vụ nhập/xuất SC ← 0 Thi hành tác vụ tham chiếu thanh ghi SC ← 0 AR ← M[AR] Thi hành tác vụ tham chiếu bộ nhớ SC ← 0 T 0 T 1 T 2 T 3 T 3 T 4 T 3 =1 (thanh ghi hoặc nhập/xuất) =0 (tham chiếu bộ nhớ) =1 (nhập xuất) =0 (thanh ghi) =1 (gián tiếp) =0 (trực tiếp) UIT KTMT 34 Lệnh thanh ghi Xóa SC SC ← 0 r Dừng S ← 0 rB 0 HLT Nhảy nếu E=0 if E=0 then PC ← PC + 1 rB 1 SZE Nhảy nếu AC=0 if AC=0 then PC ← PC + 1 rB 2 SZA Nhảy nếu âm if AC(15)=1 then PC ← PC + 1 rB 3 SNA Nhảy nếu dương if AC(15)=0 then PC ← PC + 1 rB 4 SPA Tăng AC AC ← AC + 1 rB 5 INC Vòng trái AC ← shl AC, AC(0) ← E, E ← AC(15) rB 6 CIL Vòng phải AC ← shr AC, AC(15) ← E, E ← AC(0) rB 7 CIR Bù E Bù AC Xóa E Xóa AC Diễn giải E ← 0 rB 10 CLE E ← E rB 8 CME AC ← AC rB 9 CMA AC ← 0 rB 11 CLA Vi tác vụMã lệnh )(, 37 iIRBTIDr i == UIT KTMT 35 Lệnh bộ nhớ If M[AR] + 1 = 0 then PC ← PC + 1 D 6 ISZ M[AR] ← PC, PC ← AR + 1 D 5 BSA PC ← AR D 4 BUN AC ← AC + M[AR], E ← C out D 1 ADD M[AR] ← AC D 3 STA AC ← M[AR] D 2 LDA AC ← AC ^ M[AR] D 0 AND Vi tác vụMã lệnh UIT KTMT 36 Lệnh nhập xuất Xóa SC, p=D 7 I T 3 SC ← 0 P Cấm ngắt IEN ← 0 pB 6 IOF Cho phép ngắt IEN ← 1 pB 7 ION Nhảy theo cờ xuất Nhảy theo cờ nhập Xuất ký tự Nhập ký tự Diễn giải OUTR ← AC(0-7), FGO ← 0 pB 10 OUT If (FGI=0) then PC ← PC + 1 pB 8 SKO If (FGI=1) then PC ← PC + 1 pB 9 SKI AC(0-7) ← INPR, FGI ← 0 pB 11 INP Vi tác vụMã lệnh 7 UIT KTMT 37 Cấu hình nhập xuất Máy in Bàn phím Giao tiếp thiết bị xuất Giao tiếp thiết bị nhập OUTR AC INPR FGI FGO UIT KTMT 38 Câu hỏi và bài tập 1 Khoa KTMT Vũ Đức Lung 1 Chương 02 HỆ THỐNG MÁY TÍNH ĐƠN GIẢN TRÊN NIOS II Khoa KTMT Vũ Đức Lung 2 MỤC ĐÍCH  Giới thiệu  Kiến trúc bộ xử lý  Mô hình lập trình  Tạo và sử dụng một hệ thống máy tính đơn giản được xây dựng trên nền bộ xử lý Nios II của hãng Altera.  Ứng dụng hệ thống tạo ra viết chương trình với lập trình assembly cho Nios II.  Sử dụng Quartus II và phần mềm SOPC Builder được tích hợp bên trong Quartus II.  Biên dịch chương trình, nạp và chạy trên kit DE2 thông qua software Altera Debug Client. Khoa KTMT Vũ Đức Lung 3 NIOS II System Là một users system được thiết kế trên Cyclone II FPGA bằng một công cụ trên Quartus II, đó là SOPC Builder. Tất nhiên về mặt lí thuyết thì users có thể tự tạo một system trên FPGA nhưng điều đó sẽ tốn thời gian và công sức. – FPGA “Field programmable Gate Array” thuộc họ PLD (Programmable Logic Device) hay ASIC lập trình được. Quy trình sản xuất Chip ASIC bằng cách này gọi là fabless rất phổ biến hiện nay trên thế giới. – ASIC (application-specific integrated circuit) vi mạch tích hợp chuyên dụng , là một vi mạch IC được thiết kế dành cho một ứng dụng cụ thể. ASIC: Thiết kế ứng dụng -> Thiết kế mạch logic -> Mô phỏng -> Kiểm tra chức năng codes -> Place & Route -> Làm wafer (silicon) -> Test prototype (nếu lỗi quay lại sửa bản thiết kế logic) -> Sản xuất hàng loạt (dạng chip) -> Triển khai ứng dụng trên board. FPGA: • Nhà sản xuất: Thiết kế platform của FPGA -> Mô phỏng + Kiểm tra chức năng của platform -> Place & Route -> Làm wafer -> Sản xuất chíp FPGA hàng loạt + Tool hỗ trợ • Người sử dụng: Thiết kế ứng dụng -> Thiết kế mạch logic -> Mô phỏng -> Kiểm tra chức năng code -> Place & Route (theo quy định của platform) -> Đổ codes lên platform FPGA -> triển khai ứng dụng trên board Khoa KTMT Vũ Đức Lung 4 Nios II Processor System Basics  NIOS II processsor là 1 lõi xử lý mục đích chung RISC cung cấp: – Tập lệnh 32 bit, đường dẫn dữ liệu, không gian địa chỉ. – 32 thanh ghi mục đích chung. – 32 nguồn ngắt ngoài. – Tập lệnh đơn 32x32, nhân và chia kết quả 32bit. – Tập lệnh dành cho tính toán 64bit và 128bit kết quả của phép nhân. – Tập lệnh dấu chấm động dành cho những thao tác dấu chấm động chính xác đơn. – Bộ dịch chuyển lệnh đơn. – Truy cập vào một loạt các thiết bị ngoại vi on-chip, và giao diện với bộ nhớ và thiết bị ngoại vi off-chip. – Module phần cứng hỗ trợ gỡ lỗi cho phép xử lý start, stop, step và truy dấu dưới sự kiểm soát của môi trường phát triển tích hợp (IDE). Khoa KTMT Vũ Đức Lung 5 Nios II Processor System Basics – Đơn vị quản lý bộ nhớ tùy chọn (MMU) để hỗ trợ hệ điều hành mà yêu cầu MMUs. – Đơn vị bảo vệ bộ nhớ tùy chọn (MPU). – Phần mềm phát triển môi trường dựa trên công cụ GNU C/C++ và Eclipse IDE. – Tích hợp với Altera's SignalTap® II Embedded Logic Analyzer tạo điều kiện cho việc phân tích các tập lệnh và dữ liệu thời gian thực cùng với các tín hiệu trong thiết kế FPGA. – Hướng dẫn thiết lập kiến trúc (ISA) tương thích trên tất cả các hệ thống xử lý Nios II. – Hiệu suất tối đa là 250 DMIPS, hệ thống xử lý Nios II tương đương với một vi điều khiển hay "máy tính trên một chip" bao gồm một bộ xử lý và một sự kết hợp của các thiết bị ngoại vi và bộ nhớ trên một chip. Hệ thống xử lý Nios II bao gồm một bộ xử lý lõi Nios II, một thiết bị ngoại vi on-chip, bộ nhớ on- chip, và giao diện bộ nhớ off-chip, tất cả được thực thi trên một thiết bị đơn Altera. Giống như một gia đình vi điều khiển, tất cả các hệ thống xử lý Nios II sử dụng bao gồm tập lệnh cài đặt và lập trình mô hình Khoa KTMT Vũ Đức Lung 6 Nios II Processor System Basics 2 Khoa KTMT Vũ Đức Lung 7 Cấu trúc câu lệnh trong Nios II  Lệnh trong Nios II đều dài 32 bít.  Gồm các lệnh ảo được sử dụng trong chương trình ngôn ngữ Assembler, Assembler thay thế mỗi lệnh ảo bằng một hay nhiều mã máy.  Có 3 kiểu format lệnh: I-type, R-type and J-type. Khoa KTMT Vũ Đức Lung 8 Cấu trúc câu lệnh trong Nios II Trong tất cả các trường hợp 6bit b[5:0] biểu thị cho OP code các bít còn lại để chỉ ra những thanh ghi,toán hạng trực tiếp,hoặc OP code mở rộng. Khoa KTMT Vũ Đức Lung 9 Cấu trúc thanh ghi Nios II processor có 32 thanh ghi chức năng cơ bản.Một số những thanh ghi này được dùng cho chức năng đặc biệt và có tên riêng biệt được nhận ra bởi Asembler Khoa KTMT Vũ Đức Lung 10 Cấu trúc thanh ghi  Thanh ghi R0 được xem như thanh ghi zero.Nó chứa hằng số 0.Vì vậy việc đọc thanh ghi sẽ trả về giá trị 0 trong khi viết lên nó thì không có kết quả.  Thanh ghi R1 được sử dụng bởi Assembler như một thanh ghi tạm thời,không nên tham chiếu trong chương trình người dùng.  Thanh ghi R24 và R29 được dùng cho ngoại lệ của tiến trình, chúng không có giá trị trong mode người dùng.  Thanh ghi R25 và R30 được sử dụng dành riêng cho JTAG Debug mode.  Thanh ghi R27 và R28 được sử dụng để điều khiển stack.  Thanh ghi R31 được sử dụng để giữ địa chỉ trả về khi mà một subrountine được gọi Khoa KTMT Vũ Đức Lung 11 Cấu trúc thanh ghi  Có 6 thanh ghi điều khiển 32 bit. Tên của chúng được nhận ra bởi Assembler. Những thanh ghi này được sử dụng tự động cho mục đích điều khiển.Chúng có thể được đọc và ghi bởi các câu lệnh đặc biệt rdctl và wrctl, chỉ được kích hoạt bởi mode giám sát.Thanh ghi được sử dụng như sau: – Thanh ghi ctl0 phản xạ lại trạng thái hoạt động của processor. • U là bít mode User/Supervisor. U=1: User mode, U=0: Supervisor mode. • PIE là bít cho phép ngắt processor.Khi PIE=1 processor chấp nhận ngắt ngoài, PIE=0 processor lờ đi ngắt ngoài. Khoa KTMT Vũ Đức Lung 12 Cấu trúc thanh ghi  Thanh ghi ctl1 giữ bản sao của thanh ghi trạng thai strong suốt tiến trình ngoại lệ.  Thanh ghi ctl2 giữ bản sao của thanh ghi trạng thái trong suốt tiến trình debug break.  Thanh ghi ctl3 được dùng để enable riêng lẻ những ngắt ngoài. Mỗi bít tương đương một trong những ngắt irq0 đến irq31.Giá trị 1 có nghĩa là ngắt đươc enable và 0 là disable.  Thanh ghi ctl4 cho biết ngắt nào đang pending. Giá trị của bít ctl4không được set lên 1 nếu ngắt irqk được active và enable.  Thanh ghi ctl5 giữ giá trị nhận dạng duy nhất processor trong hệ thống đa processor. [...]... Lung 32 Virtual Memory Bộ nhớ ảo có thể được quản lý bằng cách chia bộ nhớ thành các mảng nhỏ có độ lớn tính theo đoạn, cơ chế này gọi là phân đoạn (đối với họ Intel có từ các bộ VXL 80286 trở đi) hoặc trang, cơ chế này gọi là phân trang ( đối với họ Intel có từ các bộ VXL 80386) trở đi Trong các máy tính hiện đại 1 đoạn có thể có độ lớn từ 1 byte đến 4GB còn 1 trang thông thường có độ lớn từ 2KB đến... hỏng Bộ nhớ ảo dựa trên sự kết hợp các bộ nhớ với tốc độ rất cao như bộ nhớ trong (RAM) và bộ nhớ có tốc độ chậm như bộ nhớ phụ Dưới quan điểm của người lập trình và đối với người sử dụng thì tập hợp các bộ nhớ trên được quan niệm là một bộ nhớ thuần nhất với dung lượng lớn (gần hoặc bằng dung lượng ổ đĩa cứng) nhưng lại làm việc ở tốc độ cao (gần bằng tốc độ bộ nhớ trong) Khoa KTMT Vũ Đ c Lung 31 Khoa...Xây d ng Nios System(m u) dùng SOPC builder trên Quantus II DEMO Thiết kế một hệ thống đơn giản Khoa KTMT Vũ Đ c Lung 13 Khoa KTMT Vũ Đ c Lung 14 Đ c Thêm Kiến trúc bộ xử lý chương II “nios II Processor Reference Handbook” Mô hình lập trình chương III Ứng dụng hệ thống tạo ra viết chương trình với lập trình assembly cho Nios II Sử dụng Quartus II và phần mềm... Lung Khái ni m cơ b n Nguyên t c t ch c b nh Thứ tự thực hiện tìm một item trong bộ nhớ: Thống kê: 90% thời gian thi hành 10% số lệnh của chương trình Nguyên tắc không gian: – Tìm Item trong bộ nhớ mức cao nhất của các cấp bộ nhớ (xác suất tìm thấy item trong đó gọi là hit ratio h1, không tìm thấy là miss ratio (1h1)) – Khi không tìm thấy thì tìm ở cấp thấp hơn (h2, (1-h2)) – Quá trình tiếp diễn cho... chỉ có một số lệnh và một phần số liệu được thâm nhập nhiều nhất mà thôi Ví dụ như một lệnh trong một vòng lặp của chương trình Giả sử Các cấp bộ nhớ có 3 cấp Thời gian truy cập bộ nhớ trung bình được tính: tav = h1*t1 + (1-h1)*[t1+h2*t2+(1-h2)*(t2+t3)] = t1 + (1-h1)*[t2 + (1-h2)*t3] Khoa KTMT Vũ Đ c Lung 2 3 Khoa KTMT Vũ Đ c Lung Cache Memory 4 Cache Memory (2) Ảnh hưởng của nguyên lý lân cận thời... khi cần ghi số liệu? Khoa KTMT Virtual Memory Vũ Đ c Lung 34 Ví d t ng quát Cho một bộ nhớ cache tương ứng trực tiếp có 8 khối, mỗi khối có 16 byte (word) Bộ nhớ trong có 64 khối Giả sử lúc khởi động máy, 8 khối đầu tiên của bộ nhớ trong được đưa lên cache a Viết bảng nhãn của các khối hiện đang nằm trong cache b CPU lần lượt đưa các địa chỉ sau đây để đọc số liệu: O4AH, 3F5H, 27CH Nếu thất bại thì

Ngày đăng: 27/03/2014, 21:17

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan