Cấu trúc máy tính chương 6

Bộnhớchính (main memory) là đơn vịchứa chương trình và dữliệu trong quá trình hoạt động của máy tính Chương trình được nạp vào bộnhớchính trước khi được thực thi bởi bộxửlý •Chương trình gồm nhiều câu lệnh xếp kếtiếp nhau trong bộnhớ chính • Trong quá trình thực thi chương trình, các câu lệnh chứa trong bộnhớchính lần lượt được đọc và thực thi bởi bộxửlý

pdf13 trang | Chia sẻ: longpd | Lượt xem: 2801 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Cấu trúc máy tính chương 6, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Khoa KH & KT Máy tính Boää moânâ Kyõõ thuaäät Maùùy tính Phaïïm Töôøøng Haûûi Nguyeãnã Quoáác Tuaáán Kiến trúc Máy tính - Chap 06 2 Tài liệu tham khảo ) “Computer Organization and Design: the hardware/software interface”, John L. Hennessy & David A. Patterson, Second Edition, MORGAN KAUFMANN PUBLISHERS, INC. 1998 ) “Computer Architecture: a quantitative approach”, John L. Hennessy & David A. Patterson, Third Edition, MORGAN KAUFMANN PUBLISHERS, INC. 2002 Kiến trúc Máy tính - Chap 06 3 Chương 6. Kiến trúc Máy tính - Chap 06 4 6.1 Vai trò của bộ nhớ chính )Bộ nhớ chính (main memory) là đơn vị chứa chương trình và dữ liệu trong quá trình hoạt động của máy tính )Chương trình được nạp vào bộ nhớ chính trước khi được thực thi bởi bộ xử lý • Chương trình gồm nhiều câu lệnh xếp kế tiếp nhau trong bộ nhớ chính • Trong quá trình thực thi chương trình, các câu lệnh chứa trong bộ nhớ chính lần lượt được đọc và thực thi bởi bộ xử lý )Dữ liệu liên quan đến chương trình bao gồm • Số liệu đầu vào: được nạp vào bộ nhớ chính cùng với chương trình • Kết quả cuối cùng: được ghi vào bộ nhớ chính trước khi thể hiện ra bên ngoài • Kết quả trung gian: đa phần cũng được ghi tạm vào bộ nhớ chính trong quá trình thực thi chương trình Kiến trúc Máy tính - Chap 06 5 6.1 ... )Chương trình và dữ liệu sẽ được lấy ra khỏi bộ nhớ chính (thực chất là ghi chồng lên !) sau khi kết thúc thực thi )Các hoạt động liên quan đến bộ nhớ chính • Ghi các câu lệnh của chương trình • Ghi số liệu đầu vào • Ghi kết quả và kết quả trung gian • Đọc câu lệnh • Đọc số liệu đầu vào và kết quả trung gian (đọc toán hạng) )Các công nghệ hiện thực bộ nhớ • Chuyển mạch điện từ (relay) • Xuyến từ • Bộ nhớ bán dẫn: ROM, SRAM, DRAM • Đĩa từ Kiến trúc Máy tính - Chap 06 6 6.1 ... )Kiến trúc bộ nhớ chính T h a n h g h i ñ ò a c h æ Thanh ghi döõ lieäu 0ù 1ù 2ù 3ù 4ù 5ù OÂ nhôù M a ï c h g i a û i m a õ c h o ï n o â n h ô ù 6 Ñ O Ï C G H I Ñòa chæ Vuøng nhôù choïn oâ nhôù Döõ lieäu Ñieàu khieån ÑOÏC/GHI • Vùng nhớ • Thanh ghi địa chỉ • Mạch giải mã chọn ô nhớ • Thanh ghi dữ liệu • Các tác vụ liên quan đến bộ nhớ * Tác vụ đọc ô nhớ * Tác vụ ghi ô nhớ Kiến trúc Máy tính - Chap 06 7 6.2 Bộ nhớ phân cấp )Người sử dụng đòi hỏi gì về bộ nhớ • Dung lượng vô tận • Tốc độ nhanh • Giá thành thấp )Mâu thuẫn giữa những đòi hỏi trên • Mâu thuẫn giữa dung lượng và tốc độ • Mâu thuẫn giữa dung lượng và giá thành • Mâu thuẫn giữa tốc độ và giá thành ) Liệu có chăng 1 giải pháp khả thi cho các đòi hỏi trên ? )Khảo sát và phân tích cách làm của một đọc giả trong thư viện ) Liên tưởng đến hoạt động của bộ nhớ ? Kiến trúc Máy tính - Chap 06 8 6.2 ... )Nguyên lý phân bổ vị trí (principle of locality) • Các nguyên lý này được rút ra dựa trên khảo sát việc truy xuất bộ nhớ khi thực thi chương trình • Phân bổ về thời gian (temporal locality): nếu 1 phần tử dữ liệu/chương trình được truy xuất, phần tử này sẽ lại được truy xuất trong tương lai gần • Phân bổ về không gian (spatial locality): nếu 1 phấn tử dữ liệu/chương trình được truy xuất, các phần tử lân cận phần tử trên sẽ được truy xuất trong tương lai gần • Suy nghiệm các nguyên lý trên đối với việc truy xuất chương trình và dữ liệu ) Liên tưởng đến việc truy xuất sách trong thư viện )Giải pháp nào khi áp dụng cho bộ nhớ ? • Kiến trúc ra sao ? • Hiệu quả đạt được thế nào ? Kiến trúc Máy tính - Chap 06 9 6.2 ... )Các nguyên lý phân bổ được khai thác nhờ vào kiến trúc của bộ nhớ phân cấp (memory hierarchy) • Một bộ nhớ phân cấp sẽ bao gồm nhiều cấp (level) bộ nhớ với tốc độ và kích thước khác nhau • Bộ nhớ có tốc độ càng nhanh thì đơn giá/bit càng cao Ö kích thước trong bộ nhớ phân cấp càng phải nhỏ • Bố trí kích thước, tốc độ, giá thành của các cấp bộ nhớ trong 1 hệ bộ nhớ phân cấp Memory Memory Memory CPUSpeed Size Cost ($/bit) Fastest Smallest Highest Slowest Biggest Lowest Kiến trúc Máy tính - Chap 06 10 6.2 ... )Khảo sát 3 công nghệ bộ nhớ thông dụng hiện hành • Tốc độ và giá thành • Vì các công nghệ bộ nhớ có sự khác biệt rất lớn về tốc độ và giá thành, nên việc tổ chức bộ nhớ thành nhiều cấp, cấp càng gần CPU càng có tốc độ cao nhưng có kích thước càng nhỏ là hoàn toàn hợp lý • Bộ nhớ chính sử dụng công nghệ DRAM • Bộ nhớ nằm gần với CPU sử dụng công nghệ SRAM • Bộ nhớ phụ sử dụng công nghệ đĩa từ, có dung lượng rất lớn nhưng tốc độ chậm rất nhiều lần so với bộ nhớ chính $0.10 - $0.2010 - 20 million ns .Magnetic disk $5 - $1060 - 120 ns .DRAM $100 - $2505 - 25 ns .SRAM $ per Mbyte in 1997Typical access timeTechnology Kiến trúc Máy tính - Chap 06 11 6.2 ... )Sơ đồ khối kiến trúc của bộ nhớ phân cấp ) Trong hệ bộ nhớ phân cấp, cấp gần CPU là tập con của các cấp xa hơn và cấp xa nhất (hay thấp nhất) là cấp chứa tất cả chương trình/dữ liệu ) Tuy hệ bộ nhớ phân cấp được tổ chức thành nhiều cấp, nhưng tại mỗi thời điểm, thông tin chỉ được sao chép giữa 2 cấp kề nhau mà thôi Ö Chúng ta có thể giới hạn chỉ khảo sát trên 2 cấp Level n Level 2 Level 1 CPU Kiến trúc Máy tính - Chap 06 12 6.2 ... ) Trong hệ bộ nhớ 2 cấp (two-level hierarchy) • Cấp cao (upper level) - cấp gần CPU hơn – có kích thước nhỏ hơn và có tốc độ nhanh hơn (do sử dụng công nghệ bộ nhớ có tốc độ nhanh và mắc tiền hơn) so với cấp thấp (lower level) • Đơn vị thông tin nhỏ nhất có thể hoặc là hiện diện hoặc là không hiện diện trong hệ bộ nhớ 2 cấp gọi là block CPU Upper level Lower level Kiến trúc Máy tính - Chap 06 13 6.2 ... • Trường hợp dữ liệu do CPU yêu cầu nằm trong 1 block nào đó ở bộ nhớ cấp cao được gọi là 1 hit • Trường hợp ngược lại với hit được gọi là 1 miss. Trong trường hợp này, bộ nhớ cấp thấp sẽ được truy xuất để chép block thông tin có chứa dữ liệu cần thiết lên bộ nhớ cấp cao và sau đó chuyển dữ liệu yêu cầu (nằm trong block thông tin vừa chép) đến CPU • Hit rate hay hit ratio là tỉ lệ hit trong truy xuất bộ nhớ cấp cao • Quan hệ giữa hit ratio và miss ratio miss ratio = 1 - hit ratio • Ở hệ bộ nhớ 2 cấp, hit ratio ở bộ nhớ cấp thấp luôn luôn là 1 • hit time là thời gian truy xuất dữ liệu ứng với 1 hit, bao gồm thời gian xác định hit hay miss + thời gian chuyển dữ liệu đến CPU • miss penalty bao gồm thời gian thay thế 1 block trong bộ nhớ cấp cao bởi 1 block từ bộ nhớ cấp thấp + thời gian chuyển dữ liệu đến CPU
Tài liệu liên quan