Vi xử lý máy vi tính - Chương 3
Số trang: 56
Loại file: doc
Dung lượng: 381.00 KB
Lượt xem: 23
Lượt tải: 0
Xem trước 7 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
tai lieu hoc tapSau khi đã tìm hiểu qua về cấu trúc của hệ vi xử lý. Trong chương này ta sẽ đi sâu tìm hiểu mọt bộvi xử lý cụ thể và rất điển hình: bộ vi xử lý của Intel.
Trước hết cần nói rỏ lý do tại sao ở đâyta lại chọn đích danh bộ vi zử láy 8088 để tìm hiểu mà không phải là bộ vi xử lý nào khác ( điều mà nhiều người khác phải làm ). Thứ nhất, đây là bộ vi xử lý nổi tiếng một thời thuộc họ 80x86 của...
Nội dung trích xuất từ tài liệu:
Vi xử lý máy vi tính - Chương 3 Trang : 1 CHƯƠNG 3 BỘ VI XỬ LÝ INTEL 8088 Sau khi đã tìm hiểu qua về cấu trúc của hệ vi xử lý. Trong chương này ta sẽ đi sâu tìm hiểu mọt bộvi xử lý cụ thể và rất điển hình: bộ vi xử lý của Intel. Trước hết cần nói rỏ lý do tại sao ở đâyta lại chọn đích danh b ộ vi z ử láy 8088 để tìm hiểu mà không phải là bộ vi xử lý nào khác ( đi ều mà nhi ều người khác phải làm ). Thứ nhất, đây là bộ vi xử lý nổi tiếng một thời thuộc họ 80x86 của Intel, nó được sử dụng trong nhiều lĩnh vực khác nhau, nhất là trong các máy IBM PC /XT. Các bộ vi xử lý thuộc họ này sẽ còn đ ược sủ d ụng r ộng rãi trong hàng chục năm nữa, và vi tính kế thừa của các sản phẩm trong h ọ 80x86., các chương trình viết cho8088 vẫn có thể chạy trên các hệ thống tiên tiến sau này. Thứ hai, về góc độ sư phạm thì đây là bộ vi xử lý khá đơn giản và vì vi ệc d ạy hi ểu nó là tương đối dể đối với những người mới bắt đầu thâm nhập vào lĩnh v ực này. Thứ ba, các họvi xử lý tuy có khác nhau nhưng xét cho cùng cũng có khá nhi ều điểm chủ yếu rất giống nhau. Do đó một khi đã nắm được các vấn đề k ỷ thu ật của8088, ta sẽ có cơ sở để nắm bắt các kỷ thuật của các bộ vi xử lý khác cùng trong họ Intel 80x86 hoặc của các họ khác. 1. Giới thiệu cấu trúc bên trong vàhoạt động của bộ vi xử lý 8088. Trước khi giới thiệu tập lệnh và cách thức lập trình cho bộvi xử lý8088 hoạt động ta cần phải tìm hiểu kỹ cấu trúc bên trong của nó. Trên hình 3.1 là sơ đồ khối cấu trúc bên trong cảu bộ vi xử lý Intel 8088: 1.1.BIU Và EU theo sơ đồ khối trên hình 3.1 ta thấy bên trong CPU 8088 có 2 kh ối chính: khối phối ghép ( bus interface unit, BIU ) vàkhối thực hiện lệnh ( execution unit, EU ). Việc chia CPU ra thành 2 phần làm vi ệc đ ồng th ời có liên h ệ v ới nhau qua đệm lệnh làm tăng đáng kể tốc độ xử lý của CPU. Các bus bên trong CPU có nhiệm vụ chuyển tải tín hiệu của các khối khác. Trong số các bus đó có bus d ữ liệu 16 bit của ALU, bus các tín hiệu điều khiển ở EU và bus trong c ủa h ệ th ống ở BIU. Trước khi đi ra bus ngoài hoặc đivào bus trong c ủa b ộ vi x ử l, các tín hi ệu truyền trên bus thường được cho đi qua các bộ đệm để nâng cao tính tương thích cho nối ghép hoặc nâng cao phối ghép. BIU đưa ra địa chỉ, đọc mã lệnh từ bộ nhớ, đọc / ghi dữ li ệu từ vào c ổng hoặc bộ nhớ. Nói cách khác BIU chịu trách nhiệm đưa địa chỉ ra bus và trao đ ổi d ữ liệu với bus. Trong EU ta thấy có một khối điều khiển ( control unit, CU ). Chính tại bên trong khối điều khiển này có mạch giải mã lệnh. Mã lệnh đọc vào từ bộ nhớ được đưa đến đầu vào của bộ giải mã, các thông tin thu được từ đầu ra c ủa nó sẽ được đưa đến mạch tạo xung điều khiển, kết quả là tu thu được các dãy xung khác nhau ( tuỳ theo mã lệnh ) để điều khiển hoạt động của các bộ phận bên trong và bên ngoài CPU. Trong khối EU còn có khối số học và lôgic ( arithmetic anh logic unit. ALU ) dùng để thực hiện các thao tác khác nhau v ới các toán h ạng c ủa l ệnh. Tóm lại, khi CPU hoạt động EU sẽ cung cấp thông tin về đ ịa ch ỉ cho BIU đ ể kh ối này đọc lệnh và dữ liệu, còn bản thân nó thì đọc lệnh và giải mã lệnh. Trong BIU còn có một bộ nhớ đệm lệnh với dung lượng 4 byte dùng để chứa các mã lệnh đọc được nằm sẵn để chờ EU xử lý ( trong tài li ệu của Intel b ộ đệm lệnh này còn được gọi là hàng đợi lệnh ). Đây là một cấu trúc mới được cấy vào bộ vi xử lý 8086x88 do việc Intel đưa cơ chế xử lý xen kẻ liên tục, dòng mã lệnh ( instruction pipelining ) vào ứng dụng trong các b ộ vi xử lý th ế hệ m ới. Trang : 2 Pipeline là một cơ chế đã được ứng dụng từ những năm 60 t ừ các máy l ớn. Nhân đây ta sẽ giới thiệu sơ qua một chút về cơ chế này. Trong các bộ vi xử lý ở các thế hệ trước ( như ở 8085 chẳng hạn ), thông thường hoạt động của CPU gồm 3 giai đoạn: đọc mã lệnh ( ôpcde fetch ), gi ải mã lệnh ( đecode ) và thực hiện lệnh ( execution ). Trong m ột th ời đi ểm nh ất đ ịnh, CPU thế hệ này chỉ có thể thực hiện một trong ba công việc nói trên và vì vậy tuỳ theo từng giai đoạn sẽ có những bộ phận nhất định c ủa CPU ở trạng thái nhàn r ỗi. Chẳng hạn, khi CPU giải mã lệnh hoặc khi nó đang thực hi ện những lệnh không liên quan đến bus ( thao tác nội bộ ) thì các bus không đ ược dùng vào vi ệc gì d ẫn đến tình trạng lãng phí khả năng của chúng ( hình 3.2 ). Trong khi đó t ừ b ộ vi x ử lý 8086/88, Intel sử dụng cơ chế xử lý xen kẻ liên tục dòng mã lệnh thì CPU đ ược chia thành 2 khối và có sự phân chia công việc cho từng khối: vi ệc đ ọc mã l ệnh là do khối BIU thực hiện, việc giải mã lệnh và thực hiện lệnh là do kh ối EU đ ảm nhiệm. Các khối chức năng này có khả năng làm vi ệc đồng thời và các bus s ẽ liên tục sử dụng: trong khi EU lấy mã lệnh từ bộ đệm 4 byte đ ể gi ải mã ho ặc th ực hiện các thao tác nội bộ thì BIU vẫn có thể đọc mã lệnh từ b ộ nh ớ chính r ồi đặt chúng vào bộ nhớ đệm lệnh đã nói. Bộ đệm lệnh này làm vi ệc theo ki ểu “ vào trước – ra trước “ (first in-first out, FIFO ), nghĩa là byte nào được cất vào đệm trước sẽ được lấy ra xử lý trước. Nếu có sự vào/ra liên tục của dòng mã lệnh trong bộ đệm này thì có nghĩa là có sự phối hợp ho ạt động hi ệu qu ả gi ữa hai kh ối EU và BIU theo cơ chế xử lý xen kẻ liên tục dòng mã lệnh để làm tăng tốc đ ộ xử lý t ổng thể. Kỹ thuật xử lý xen kẻ liên tục dòng mã lệnh sẽ không còn tác d ụng tăng t ốc độ xử lý chung của CPU nữa nếu như trong đệm lệnh có chứa các mã lệnh của các lệnh CALL ( gọi chương trình con ) hoăc JMP ( nhảy ), b ởi vì lúc các l ệnh này n ội dung của bộ đệm sẽ bị xoá và thay thế vào đó là nội dung m ới đ ược n ạp b ởi các mã lệnh mới do lệnh nhảy hoặc gọi quyết định. Việc này tiêu tốn nhi ều th ời gian hơn so với trường hợp trong đệm chỉ có mã lệnh của các lệnh tuần tự Khon co p e âg ù ip lining F1 D1 E1 F2 D2 E2 F ...
Nội dung trích xuất từ tài liệu:
Vi xử lý máy vi tính - Chương 3 Trang : 1 CHƯƠNG 3 BỘ VI XỬ LÝ INTEL 8088 Sau khi đã tìm hiểu qua về cấu trúc của hệ vi xử lý. Trong chương này ta sẽ đi sâu tìm hiểu mọt bộvi xử lý cụ thể và rất điển hình: bộ vi xử lý của Intel. Trước hết cần nói rỏ lý do tại sao ở đâyta lại chọn đích danh b ộ vi z ử láy 8088 để tìm hiểu mà không phải là bộ vi xử lý nào khác ( đi ều mà nhi ều người khác phải làm ). Thứ nhất, đây là bộ vi xử lý nổi tiếng một thời thuộc họ 80x86 của Intel, nó được sử dụng trong nhiều lĩnh vực khác nhau, nhất là trong các máy IBM PC /XT. Các bộ vi xử lý thuộc họ này sẽ còn đ ược sủ d ụng r ộng rãi trong hàng chục năm nữa, và vi tính kế thừa của các sản phẩm trong h ọ 80x86., các chương trình viết cho8088 vẫn có thể chạy trên các hệ thống tiên tiến sau này. Thứ hai, về góc độ sư phạm thì đây là bộ vi xử lý khá đơn giản và vì vi ệc d ạy hi ểu nó là tương đối dể đối với những người mới bắt đầu thâm nhập vào lĩnh v ực này. Thứ ba, các họvi xử lý tuy có khác nhau nhưng xét cho cùng cũng có khá nhi ều điểm chủ yếu rất giống nhau. Do đó một khi đã nắm được các vấn đề k ỷ thu ật của8088, ta sẽ có cơ sở để nắm bắt các kỷ thuật của các bộ vi xử lý khác cùng trong họ Intel 80x86 hoặc của các họ khác. 1. Giới thiệu cấu trúc bên trong vàhoạt động của bộ vi xử lý 8088. Trước khi giới thiệu tập lệnh và cách thức lập trình cho bộvi xử lý8088 hoạt động ta cần phải tìm hiểu kỹ cấu trúc bên trong của nó. Trên hình 3.1 là sơ đồ khối cấu trúc bên trong cảu bộ vi xử lý Intel 8088: 1.1.BIU Và EU theo sơ đồ khối trên hình 3.1 ta thấy bên trong CPU 8088 có 2 kh ối chính: khối phối ghép ( bus interface unit, BIU ) vàkhối thực hiện lệnh ( execution unit, EU ). Việc chia CPU ra thành 2 phần làm vi ệc đ ồng th ời có liên h ệ v ới nhau qua đệm lệnh làm tăng đáng kể tốc độ xử lý của CPU. Các bus bên trong CPU có nhiệm vụ chuyển tải tín hiệu của các khối khác. Trong số các bus đó có bus d ữ liệu 16 bit của ALU, bus các tín hiệu điều khiển ở EU và bus trong c ủa h ệ th ống ở BIU. Trước khi đi ra bus ngoài hoặc đivào bus trong c ủa b ộ vi x ử l, các tín hi ệu truyền trên bus thường được cho đi qua các bộ đệm để nâng cao tính tương thích cho nối ghép hoặc nâng cao phối ghép. BIU đưa ra địa chỉ, đọc mã lệnh từ bộ nhớ, đọc / ghi dữ li ệu từ vào c ổng hoặc bộ nhớ. Nói cách khác BIU chịu trách nhiệm đưa địa chỉ ra bus và trao đ ổi d ữ liệu với bus. Trong EU ta thấy có một khối điều khiển ( control unit, CU ). Chính tại bên trong khối điều khiển này có mạch giải mã lệnh. Mã lệnh đọc vào từ bộ nhớ được đưa đến đầu vào của bộ giải mã, các thông tin thu được từ đầu ra c ủa nó sẽ được đưa đến mạch tạo xung điều khiển, kết quả là tu thu được các dãy xung khác nhau ( tuỳ theo mã lệnh ) để điều khiển hoạt động của các bộ phận bên trong và bên ngoài CPU. Trong khối EU còn có khối số học và lôgic ( arithmetic anh logic unit. ALU ) dùng để thực hiện các thao tác khác nhau v ới các toán h ạng c ủa l ệnh. Tóm lại, khi CPU hoạt động EU sẽ cung cấp thông tin về đ ịa ch ỉ cho BIU đ ể kh ối này đọc lệnh và dữ liệu, còn bản thân nó thì đọc lệnh và giải mã lệnh. Trong BIU còn có một bộ nhớ đệm lệnh với dung lượng 4 byte dùng để chứa các mã lệnh đọc được nằm sẵn để chờ EU xử lý ( trong tài li ệu của Intel b ộ đệm lệnh này còn được gọi là hàng đợi lệnh ). Đây là một cấu trúc mới được cấy vào bộ vi xử lý 8086x88 do việc Intel đưa cơ chế xử lý xen kẻ liên tục, dòng mã lệnh ( instruction pipelining ) vào ứng dụng trong các b ộ vi xử lý th ế hệ m ới. Trang : 2 Pipeline là một cơ chế đã được ứng dụng từ những năm 60 t ừ các máy l ớn. Nhân đây ta sẽ giới thiệu sơ qua một chút về cơ chế này. Trong các bộ vi xử lý ở các thế hệ trước ( như ở 8085 chẳng hạn ), thông thường hoạt động của CPU gồm 3 giai đoạn: đọc mã lệnh ( ôpcde fetch ), gi ải mã lệnh ( đecode ) và thực hiện lệnh ( execution ). Trong m ột th ời đi ểm nh ất đ ịnh, CPU thế hệ này chỉ có thể thực hiện một trong ba công việc nói trên và vì vậy tuỳ theo từng giai đoạn sẽ có những bộ phận nhất định c ủa CPU ở trạng thái nhàn r ỗi. Chẳng hạn, khi CPU giải mã lệnh hoặc khi nó đang thực hi ện những lệnh không liên quan đến bus ( thao tác nội bộ ) thì các bus không đ ược dùng vào vi ệc gì d ẫn đến tình trạng lãng phí khả năng của chúng ( hình 3.2 ). Trong khi đó t ừ b ộ vi x ử lý 8086/88, Intel sử dụng cơ chế xử lý xen kẻ liên tục dòng mã lệnh thì CPU đ ược chia thành 2 khối và có sự phân chia công việc cho từng khối: vi ệc đ ọc mã l ệnh là do khối BIU thực hiện, việc giải mã lệnh và thực hiện lệnh là do kh ối EU đ ảm nhiệm. Các khối chức năng này có khả năng làm vi ệc đồng thời và các bus s ẽ liên tục sử dụng: trong khi EU lấy mã lệnh từ bộ đệm 4 byte đ ể gi ải mã ho ặc th ực hiện các thao tác nội bộ thì BIU vẫn có thể đọc mã lệnh từ b ộ nh ớ chính r ồi đặt chúng vào bộ nhớ đệm lệnh đã nói. Bộ đệm lệnh này làm vi ệc theo ki ểu “ vào trước – ra trước “ (first in-first out, FIFO ), nghĩa là byte nào được cất vào đệm trước sẽ được lấy ra xử lý trước. Nếu có sự vào/ra liên tục của dòng mã lệnh trong bộ đệm này thì có nghĩa là có sự phối hợp ho ạt động hi ệu qu ả gi ữa hai kh ối EU và BIU theo cơ chế xử lý xen kẻ liên tục dòng mã lệnh để làm tăng tốc đ ộ xử lý t ổng thể. Kỹ thuật xử lý xen kẻ liên tục dòng mã lệnh sẽ không còn tác d ụng tăng t ốc độ xử lý chung của CPU nữa nếu như trong đệm lệnh có chứa các mã lệnh của các lệnh CALL ( gọi chương trình con ) hoăc JMP ( nhảy ), b ởi vì lúc các l ệnh này n ội dung của bộ đệm sẽ bị xoá và thay thế vào đó là nội dung m ới đ ược n ạp b ởi các mã lệnh mới do lệnh nhảy hoặc gọi quyết định. Việc này tiêu tốn nhi ều th ời gian hơn so với trường hợp trong đệm chỉ có mã lệnh của các lệnh tuần tự Khon co p e âg ù ip lining F1 D1 E1 F2 D2 E2 F ...
Tìm kiếm theo từ khóa liên quan:
các hệ đếm mã hóa thông tin kỹ thuật vi xử lý vi xử lý intel hệ thống vi xử lýTài liệu liên quan:
-
Giáo án Tin học lớp 10 (Trọn bộ cả năm)
152 trang 190 0 0 -
Báo cáo môn học vi xử lý: Khai thác phần mềm Proteus trong mô phỏng điều khiển
33 trang 187 0 0 -
Giáo trình Máy thu hình (Nghề Điện tử dân dụng - Trình độ: Trung cấp) - Trường Cao đẳng nghề Cần Thơ
79 trang 168 0 0 -
Báo cáo bài tập lớn môn Kỹ thuật vi xử lý: Thiết kế mạch quang báo - ĐH Bách khoa Hà Nội
31 trang 135 0 0 -
Báo cáo thực tập ngành: Máy điện, khí cụ điện, truyền động điện, kỹ thuật vi xử lý
95 trang 118 0 0 -
Giáo trình An toàn mạng (Nghề: Quản trị mạng - Trình độ: Cao đẳng) - Trường Cao đẳng nghề Cần Thơ
117 trang 88 1 0 -
Báo cáo đồ án 2: Đo nhiệt độ, độ ẩm khí ga
31 trang 62 0 0 -
15 trang 47 1 0
-
Bài giảng Kiến trúc của hệ vi xử lý
256 trang 45 0 0 -
Bài giảng ý thuyết kỹ thuật vi xử lý
11 trang 43 0 0