Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
0,94 MB
Nội dung
Kiến trúc Harvard Linhlg8593@gmail.com Mục lục Trang 1. Vị trí của đề tài trong môn Kiến trúc máy tính……………2 2. Kiến trúc Harvard. 2.1 Lịch sử………………………………………………2 2.2 Định nghĩa………………………………………… 5 2.3 Đặc điểm…………………………………………….7 2.4 Ứng dụng……………………………………………12 2.4.1 Vi điều khiển PIC………………………… 13 2.4.2 Vi điều khiển AVR…………………………15 2.4.3 Vi điều khiển 8031…………………………17 3. Tài liệu tham khảo………………………………………….19 1 Kiến trúc Harvard Linhlg8593@gmail.com I. Vị trí của đề tài trong môn Kiến trúc máy tính Kiến trúc máy tính: 1. Khái niệm chung về Hệ thống máy tính 2. Lịch sử phát triển: 4 thế hệ máy tính 3. Phân loại: 3.1. Phân loại theo kích thước, tốc độ… 3.2. Phân loại theo kiến trúc • SISD (single instruction - single data) • SIMD (Single Instruction Multiple Data) • MIMD (Multiple Instruction Multiple Data) • Hai kiến trúc phổbiến Von neumann CPU <-> Bộnhớ<-> Ngoại vi BộnhớCT <-> CPU <-> Bộnhớdữliệu <-> Ngoại vi II. Kiến trúc Harvard. 1. Lịch sử. Kiến trúc Harvard bắt đầu với máy tính Harvard Mark I, nó cho phép các lệnh được đặt trong các tape đục lỗ (với 24 bit) và dữ liệu thì được chứa trong các thẻ (với 23 ký tự). Những máy tính đầu tiên này rất giới hạn dung lượng dữ liệu, nó được chứa hoàn toàn trong bộ xử lý trung tâm (CPU), và không cho phép truy cập vào khu vực chứa lệnh 2 Harvard Kiến trúc Harvard Linhlg8593@gmail.com (chương trình) như với dữ liệu (làm cho việc tạo, load, sửa chữa, v.v. toàn bộ chương trình phải được thực hiện offline). Hình 1: Harvard Mark-I in use, 1944 Vào năm 1939, người ta bắt đầu chế tạo chiếc máy Harvard Mark I tại phòng thí nghiệm Endicott của IBM. Được biết đến chính thức với tên gọi Automatic Sequence Controlled Calculator (Máy tính được điều khiển bằng chuỗi tự động), Mark I là một máy tính cơ-điện đa năng được chế tạo bằng tiền bạc và sự hỗ trợ nhân lực từ IBM, dưới sự hướng dẫn của nhà toán học Howard Aiken của trường Harvard. Bản thiết kế của nó ảnh hưởng từ Máy phân tích của Babbage, sử dụng số thập phân và bánh xe lưu trữ cùng với công tắc xoay kèm với rờ-le điện từ. Nó có thể lập trình được nhờ cuộn giấy đục lỗ, và có thể cùng lúc tính toán vài đơn vị song song. Các phiên 3 Kiến trúc Harvard Linhlg8593@gmail.com bản sau đó có vài bộ đọc cuộn giấy và nó có thể thay đổi giữa các bộ đọc dựa trên một điều kiện nào đó. Tuy nhiên, chiếc máy không hoàn toàn là máy Turing đầy đủ. Mark I được chuyển đến Đại học Harvard và bắt đầu được đưa vào hoạt động vào tháng 5 năm 1944. Máy nặng 5 tấn, kết hợp 500 dặm của dây kim loại, cao 8 feet và 51 feet dài, và có một trục 50 ft quay chạy chiều dài của nó, quay bởi một động cơ điện 5 mã lực, chạy không ngừng trong 15 năm, âm thanh giống như hàng chục phụ nữ đan. Để đánh giá cao quy mô của máy này lưu ý bốn máy đánh chữ ở mặt trước của bức ảnh sau. Hình 2: Harvard Mark I- một máy tính cơ điện Một vài hình ảnh khác: 4 Kiến trúc Harvard Linhlg8593@gmail.com Hình 3 Hình 4 2. Định nghĩa. Cụm từ kiến trúc Harvard được dùng để chỉ những kiến trúc máy tính mà trong đó phân biệt rõ ràng bộ nhớ dữ liệu và bộ nhớ chương trình, chúng có những đường truyền (bus) riêng để truy cập 5 Kiến trúc Harvard Linhlg8593@gmail.com vào bộ nhớ dữ liệu và bộ nhớ chương trình (ngược lại, kiến trúc von Neumann có bộ nhớ và bộ nhớ chương trình chung). Hình 5: Sơ đồ kiến trúc Harvard Mô hình: 6 Kiến trúc Harvard Linhlg8593@gmail.com Hình 6: Mô phỏng hoạt động bên trong Tổng quát, để hình dung rõ hơn ta có sơ đồ: Hình 7: Khái quát sơ đồ 3. Đặc điểm. Để làm rõ đặc điểm của kiến trúc Harvard, ta so sánh nó với kiến trúc von Neumann. 7 Kiến trúc Harvard Linhlg8593@gmail.com Ta có sơ đồ sau: Hình 8: So sánh mô hình kiến trúc Harvard và kiến trúc von Neumann Trong kiến trúc von Neumann không phân biệt vùng chứa dữ liệu và mã chương trình. Cả chương trình và dữ liệu đều được truy nhập theo cùng một đường. Điều này cho phép đưa dữ liệu vào vùng mã chương trình ROM, và cũng có thể lưu mã chương trình vào vùng dữ liệu RAM và thực hiện từ đó. CPU có thể đọc một lệnh, hoặc đọc/ghi dữ liệu từ bộ nhớ. Tuy vậy, cả hai quá trình tương tác với lệnh hoặc với dữ liệu, không thể thực hiện cùng lúc, vì nó sử dụng chung một đường truyền và bộ nhớ. 8 Kiến trúc Harvard Linhlg8593@gmail.com Trong một máy tính kiến trúc Harvard, CPU có thể vừa đọc một lệnh, vừa truy cập dữ liệu từ bộ nhớ cùng lúc, do Kiến trúc Havard tách/phân biệt vùng lưu mã chương trình và dữ liệu. Mã chương trình chỉ có thể được lưu và thực hiện trong vùng chứa ROM và dữ liệu cũng chỉ có thể lưu và trao đổi trong vùng RAM: Hình 9: Quá trình đọc lệnh ở kiến trúc Harvard và kiến trúc von Neumann Hầu hết các vi xử lý nhúng ngày nay sử dụng kiến trúc bộ nhớ Havard hoặc kiến trúc Havard mở rộng (tức là bộ nhớ chương trình và dữ liệu tách biệt nhưng vẫn cho phép khả năng hạn chế để lấy dữ liệu ra từ vùng mã chương trình). Trong kiến trúc bộ nhớ Havard mở rộng thường sử dụng một số lượng nhỏ các con trỏ để lấy dữ liệu từ vùng mã chương trình theo cách nhúng vào trong các lệnh tức thời. Một số Chip vi điều khiển nhúng tiêu biểu hiện nay sử dụng cấu trúc Havard là 8031, PIC, Atmel AVR90S. Nếu sử dụng Chip 8031 chúng ta sẽ nhận thấy điều này thông qua việc truy nhập lấy dữ liệu ra từ vùng dữ 9 Kiến trúc Harvard Linhlg8593@gmail.com liệu RAM hoặc từ vùng mã chương trình. Chúng ta có một vài con trỏ được sử dụng để lấy dữ liệu ra từ bộ nhớ dữ liệu RAM, nhưng chỉ có duy nhất một con trỏ DPTR có thể được sử dụng để lấy dữ liệu ra từ vùng mã chương trình. Ưu điểm nổi bật của cấu trúc bộ nhớ Harvard so với kiến trúc von Neumann là có hai kênh tách biệt để truy nhập vào vùng bộ nhớ mã chương trình và dữ liệu nhờ vậy mà mã chương trình và dữ liệu có thể được truy nhập đồng thời và làm tăng tốc độ luồng trao đổi với bộ xử lý, có thể thực hiện ngay lệnh tiếp theo khi vừa kết thúc lệnh trước đó . Nên một máy tính kiến trúc Harvard có thể chạy nhanh hơn: Hình 10: Mô hình Bus hệ thống ở Harvard và von Neumann Tuy nhiên tốc độ được tăng lên nhưng phải trả giá bằng sự thiết kế phần cứng phức tạp hơn (cụ thể nhất mà chúng ta thấy, đó là việc phải thiết kế 2 bus khác nhau cho dữ liệu và chương trình): 10 [...]... ra, Kiến trúc Harvard còn được ứng dụng cho thiết kế rất nhiều thiết bị khác, nhưng nhóm 8 xin phép được trình bày 1 số nội 17 Kiến trúc Harvard Linhlg8593@gmail.com dung trên, mong thầy và các bạn theo dõi và cho ý kiến bổ sung cho đề tài Xin cảm ơn!!!!!! 18 Kiến trúc Harvard Linhlg8593@gmail.com Tài liệu tham khảo 1 2 3 4 5 6 7 8 9 www.wattpad.com www.slideshare.net vi.wikipedia.org/wiki /Kiến_ trúc_ Harvard. .. lệnh giản lược) Trong kiến trúc Harvard, bộ nhớ dữ liệu và bộ nhớ chương trình nằm riêng biệt, do đó CPU có thể làm việc trực tiếp với cả hai bộ nhớ dữ liệu và bộ nhớ chương trình cùng một lúc, làm cho tốc độ xử lý nhanh hơn Hình 12: Mô hình tổng thể Vi điều khiển PIC kiến trúc Harvard Việc bộ nhớ chương trình và bộ nhớ dữ liệu được tách riêng, do đó, tập lệnh trong kiến trúc Harvard có thể được tối... với khi cache phải thay đổi và lấy dữ liệu từ bộ nhớ chính 11 Kiến trúc Harvard Linhlg8593@gmail.com đưa vào Việc điều chỉnh cache là một vấn đề quan trọng trong việc thiết kế máy tính Những thiết kế chip CPU tốc độ cao ngày này thường kết hợp hai kiến trúc Harvard và von Neumann Bộ nhớ cache trên chip được phân thành cache chương trình và cache dữ liệu Kiến trúc Harvard được dùng khi CPU truy cập vào... có cache, dữ liệu được lấy từ bộ nhớ chính, mà bộ nhớ chính không được chia thành vùng nhớ chương trình và vùng nhớ dữ liệu Như vậy, kiến trúc von Neumann được dùng ở tầm vực truy cập bộ nhớ chính Kiến trúc Harvard cũng thường được dùng trong một số DSP chuyên dụng, thường dùng trong các sản phẩm xử lý âm thanh, hình ảnh Ví dụ như vi xử lý Blackfin của Analog Devices Inc dùng kiến trúc Harvard Thêm... tìm hiểu một vài vi điều khiển có sử dụng kiến trúc Harvard như sau: 4.1 Vi điều khiển PIC : 12 Kiến trúc Harvard Linhlg8593@gmail.com PIC có bus dữ liệu 8-bit (phụ thuộc vào dòng PIC), nhưng bus chương trình có thể là 12-bit, 14-bit hoặc 16-bit word Điều này cho phép mỗi một lệnh đơn có đủ chỗ chứa cho một giá trị hằng PIC được tổ chức phần cứng theo kiến trúc Harvard, và tập lệnh RISC (reduced instruction... đó, tập lệnh trong kiến trúc Harvard có thể được tối ưu tùy theo yêu cầu kiến trúc của vi điều khiển Bằng chứng, độ dài lệnh của dòng PIC16 luôn luôn là 14 bit Trong khi đó, độ dài lệnh của các vi điều khiển kiến trúc von-Neumann là bội số của 1 byte: 13 Kiến trúc Harvard Linhlg8593@gmail.com Hình 13: Mô hình vi điều khiển kiến trúc von-Neumann PIC là một Vi điều khiển RISC, tập lệnh của PIC chỉ có... hãng Atmel Corporation, được phát triển dựa trên kiến trúc Harvard Những vi xử lý này có đặc tính là có lượng bộ nhớ dữ liệu và bộ nhớ chương trình nhỏ, rất phù hợp với kiến trúc Harvard và tập lệnh RISC để đảm bảo hầu hết các lệnh được thực hiện trong 1 chu kỳ máy Việc phân chia bộ nhớ ra thành bộ nhớ chương trình và bộ nhớ dữ liệu có thể làm cho bus dữ liệu và bus chương trình có kích thước băng truyền... vi, với register file Trong khi đó program memory bus có độ rộng 16 bits và chỉ phục vụ cho instruction registers Hình sau mô tả cấu trúc bộ nhớ của AVR Hình 14: Cấu trúc bộ nhớ của AVR Cấu trong bên trong của 1 AVR: 15 Kiến trúc Harvard Linhlg8593@gmail.com Hình 15 Cấu trúc bên trong AVR Bạn thấy rằng 32 thanh ghi trong Register File được kết nối trực tiếp với Arithmetic Logic Unit -ALU (ALU cũng được... CPU RISC khác, ví dụ như ARM, thường cần ít nhất 2 lệnh để load một hằng số đủ kích thước 4.2 AVR: có cấu trúc Harvard, trong đó đường truyền cho bộ nhớ dữ liệu (data memory bus) và đường truyền cho bộ nhớ chương trình (program memory bus) được tách riêng Data memory bus chỉ có 8 bit 14 Kiến trúc Harvard Linhlg8593@gmail.com và được kết nối với hầu hết các thiết bị ngoại vi, với register file Trong khi.. .Kiến trúc Harvard Linhlg8593@gmail.com Hình 11: Nhược điểm của Harvard so với von Neumann 4 Ứng dụng: Thực tế, Những năm gần đây, tốc độ CPU tăng lên rất nhiều lần so với tốc độ truy cập vào bộ nhớ chính Người ta cần quan tâm đến việc . đặc điểm của kiến trúc Harvard, ta so sánh nó với kiến trúc von Neumann. 7 Kiến trúc Harvard Linhlg8593@gmail.com Ta có sơ đồ sau: Hình 8: So sánh mô hình kiến trúc Harvard và kiến trúc von Neumann Trong. điều khiển 8031…………………………17 3. Tài liệu tham khảo………………………………………….19 1 Kiến trúc Harvard Linhlg8593@gmail.com I. Vị trí của đề tài trong môn Kiến trúc máy tính Kiến trúc máy tính: 1. Khái niệm. cho ý kiến bổ sung cho đề tài. Xin cảm ơn!!!!!! 18 Kiến trúc Harvard Linhlg8593@gmail.com Tài liệu tham khảo 1. www.wattpad.com 2. www.slideshare.net 3. vi.wikipedia.org/wiki /Kiến_ trúc_ Harvard 4.