Bài giảng Kiến trúc máy tính và hợp ngữ: Giao diện bộ xử lý với I/O - Huỳnh Tổ Hạp
Số trang: 9
Loại file: pdf
Dung lượng: 1.16 MB
Lượt xem: 20
Lượt tải: 0
Xem trước 1 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng "Kiến trúc máy tính và hợp ngữ: Giao diện bộ xử lý với I/O" cung cấp cho người học các kiến thức: Bộ xử lí dùng 2 cách để liên lạc với các bộ phận vào ra, phân biệt bộ xử lý vào ra với CPU,... Mời các bạn cùng bạn cùng tham khảo nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Kiến trúc máy tính và hợp ngữ: Giao diện bộ xử lý với I/O - Huỳnh Tổ Hạp 10/12/2017 Bộ xử lí dùng 2 cách để liên lạc với các bộ phận vào ra: + cách thứ nhất: cách này thường được sử dụng, là cách dùng một vùng địa chỉ của bộ nhớ làm vùng địa chỉ của các ngoại vi. Khi đọc hay viết vào vùng địa chỉ này của bộ nhớ là liên hệ đến các ngoại vi. Cấu trúc hệ thống vào ra 1 10/12/2017 Tất cả các thiết bị ngoại vi đều chậm hơn CPU và RAM. Vì vậy cần có các mô-đun vào ra nối ghép các thiết bị ngoại vi với CPU và bộ nhớ chính. Mô-đun vào ra: Chức năng: Điều khiển và định thời. Trao đổi thông tin với CPU. Trao đổi thông tin với các thiết bị ngoại vi. Đệm giữa bên trong máy tính với các thiết bị ngoại vi. Phát hiện lỗi của các thiết bị ngoại vi. Cấu trúc chung của mô-đun vào ra 2 10/12/2017 Các thành phần của mô-đun vào ra: Thanh ghi đệm dữ kiệu: đệm dữ liệu trong quá trình trao đổi. Các cổng vào ra (I/O port): kết nối các thiết bị ngoại vi, mỗi cổng có một địa chỉ xác định. Thanh ghi trạng thái/điều khiển: lưu giữ thông tin trạng thái/điều khiển cho các cổng vào ra. Khối logic điều khiển: điều khiển các mô-đun vào ra. Kết nối CPU CPU phát địa chỉ đến bộ nhớ hay mô-đun vào ra. Đọc lệnh và dữ kiệu. Đưa dữ liệu ra sau khi xử lí. Phát tín hiệu điều khiển đến mô-đun nhớ hay mô-đun vào ra. Nhận tín hiệu ngắt. 3 10/12/2017 + Cách thứ hai, dùng mã lệnh riêng biệt cho vào/ra (tức là có các lệnh vào/ra riêng, không trùng với lệnh đọc hay viết vào ô nhớ). Trong đó có 2 phương pháp chính để liên lạc: Dùng phương pháp thăm dò (polling) Dùng yêu cầu ngắt IRQ (Interrupt ReQuest) Dùng bộ xử lí DMA (Direct Memory Access) Bộ xử lý phát sinh một lệnh I/O đến các đơn vị I/O, sau đó, nó chờ trong trạng thái 'busy' cho đến khi thao tác này hoàn tất trước khi tiếp tục xử lý. Bộ xử lý phát sinh một lệnh I/O đến các đơn vị I/O, sau đó, nó tiếp tục việc xử lí cho tới khi nhận được một ngắt từ đơn vị I/O báo là đã hoàn tất, nó tạm ngưng việc xử lý hiện tại để chuyển qua xử lí ngắt. 4 10/12/2017 DMA là một kỹ thuật chuyển dữ liệu nhanh từ một card thiết bị tới bộ nhớ, từ bộ nhớ ra card thiết bị, hoặc trong một vài trường hợp từ một vị trí trong bộ nhớ tới một vị trí khác. Việc chuyển theo DMA rất quan trọng vì nó không yêu cầu đến sự thực thi của CPU. Chuyển theo DMA được thực hiện bằng cách lập trình một chip có tên là bộ điều khiển DMA (gọi ngắn gọn là DMAC), chip đó nằm trên bo mạch hệ thống của mọi máy PC. Mỗi lần bộ điều khiển được khởi động và quá trình chuyển dữ liệu bắt đầu, CPU được tự do và làm việc khác trong khi DMAC tiếp tục thực hiện chuyển dữ liệu 5 10/12/2017 Khi không dùng DMA Khi dùng DMA Khi không có DMA, dữ liệu từ disk phải đưa lên bus, chuyển tới CPU, sau đó CPU phải đưa lên bus một lần nữa mới chuyển tới memory. Khi DMA hoạt động, DMA sẽ đạt dữ liệu từ Disk lên bus và chuyển thằng tới Memory mà không qua CPU. 6 10/12/2017 Chip DMA (DMAC) được sử dụng trong phần lớn các máy PC là chip có ký hiệu 8237A hoặc tương đương. Các dòng máy Micro Channel và EISA đã sửa đổi kỹ thuật DMA tạo ra một chip riêng có các chức năng hơn hẳn 8237A, nhưng có rất ít chương trình điều khiển thiết bị tận dụng được những ưu điểm mở rộng đó. Dòng máy IBM-XT chỉ sử dụng một chip 8237A lập trình được cung cấp 4 kênh DMA riêng rẽ, đánh số từ 0 đến 3. Dòng máy IBM-AT (chiếm phần lớn thị trường máy PC hiện nay) sử dụng 2 chip 8237A cung cấp 8 kênh DMA độc lập đánh số từ 0 đến 7. Chỉ có 7 trong số 8 kênh DMA sử dụng được vì một kênh (kênh 4) được sử dụng để liên kết hai bộ điều khiển với nhau sao cho chúng có thể làm việc như một đơn vị thống nhất. Kênh 0 đến 3 chuyển 8 bit dữ liệu cùng một lúc và có thể lưu 64KB chỉ trong một lần hoạt động, trong khi kênh 5 đến 7 chuyển 16 bit và có thể chuyển được 128KB trong một lần hoạt động. 7 10/12/2017 Giống như bộ điều khiển ngắt, nơi nhận yêu cầu ngắt từ các thiết bị thông qua đường IRQ, một DMAC nhận yêu cầu DMA thông qua đường DMA request (DREQ). Chip 8237A cung cấp một vài phương thức và phương pháp hành động khác nhau, tuy nhiên một quá trình chuyển điển hình từ thiết bị tới bộ nhớ diễn ra như sau: DMAC được lập trình đầu tiên với địa chỉ của bộ nhớ sẽ ghi dữ liệu và số byte được chuyển. Khi thiết bị đã sẵn sàng bắt đầu quá trình chuyển, nó kích hoạt đường DREQ để kết nối với DMA. Sau khi được CPU cho phép điều khiển đường truyền, DMAC đưa ra địa chỉ bộ nhớ và tạo ra tín hiệu để một byte (hoặc một từ) dữ liệu được đọc từ thiết bị và ghi vào vùng được chỉ định trong bộ nhớ. ...
Nội dung trích xuất từ tài liệu:
Bài giảng Kiến trúc máy tính và hợp ngữ: Giao diện bộ xử lý với I/O - Huỳnh Tổ Hạp 10/12/2017 Bộ xử lí dùng 2 cách để liên lạc với các bộ phận vào ra: + cách thứ nhất: cách này thường được sử dụng, là cách dùng một vùng địa chỉ của bộ nhớ làm vùng địa chỉ của các ngoại vi. Khi đọc hay viết vào vùng địa chỉ này của bộ nhớ là liên hệ đến các ngoại vi. Cấu trúc hệ thống vào ra 1 10/12/2017 Tất cả các thiết bị ngoại vi đều chậm hơn CPU và RAM. Vì vậy cần có các mô-đun vào ra nối ghép các thiết bị ngoại vi với CPU và bộ nhớ chính. Mô-đun vào ra: Chức năng: Điều khiển và định thời. Trao đổi thông tin với CPU. Trao đổi thông tin với các thiết bị ngoại vi. Đệm giữa bên trong máy tính với các thiết bị ngoại vi. Phát hiện lỗi của các thiết bị ngoại vi. Cấu trúc chung của mô-đun vào ra 2 10/12/2017 Các thành phần của mô-đun vào ra: Thanh ghi đệm dữ kiệu: đệm dữ liệu trong quá trình trao đổi. Các cổng vào ra (I/O port): kết nối các thiết bị ngoại vi, mỗi cổng có một địa chỉ xác định. Thanh ghi trạng thái/điều khiển: lưu giữ thông tin trạng thái/điều khiển cho các cổng vào ra. Khối logic điều khiển: điều khiển các mô-đun vào ra. Kết nối CPU CPU phát địa chỉ đến bộ nhớ hay mô-đun vào ra. Đọc lệnh và dữ kiệu. Đưa dữ liệu ra sau khi xử lí. Phát tín hiệu điều khiển đến mô-đun nhớ hay mô-đun vào ra. Nhận tín hiệu ngắt. 3 10/12/2017 + Cách thứ hai, dùng mã lệnh riêng biệt cho vào/ra (tức là có các lệnh vào/ra riêng, không trùng với lệnh đọc hay viết vào ô nhớ). Trong đó có 2 phương pháp chính để liên lạc: Dùng phương pháp thăm dò (polling) Dùng yêu cầu ngắt IRQ (Interrupt ReQuest) Dùng bộ xử lí DMA (Direct Memory Access) Bộ xử lý phát sinh một lệnh I/O đến các đơn vị I/O, sau đó, nó chờ trong trạng thái 'busy' cho đến khi thao tác này hoàn tất trước khi tiếp tục xử lý. Bộ xử lý phát sinh một lệnh I/O đến các đơn vị I/O, sau đó, nó tiếp tục việc xử lí cho tới khi nhận được một ngắt từ đơn vị I/O báo là đã hoàn tất, nó tạm ngưng việc xử lý hiện tại để chuyển qua xử lí ngắt. 4 10/12/2017 DMA là một kỹ thuật chuyển dữ liệu nhanh từ một card thiết bị tới bộ nhớ, từ bộ nhớ ra card thiết bị, hoặc trong một vài trường hợp từ một vị trí trong bộ nhớ tới một vị trí khác. Việc chuyển theo DMA rất quan trọng vì nó không yêu cầu đến sự thực thi của CPU. Chuyển theo DMA được thực hiện bằng cách lập trình một chip có tên là bộ điều khiển DMA (gọi ngắn gọn là DMAC), chip đó nằm trên bo mạch hệ thống của mọi máy PC. Mỗi lần bộ điều khiển được khởi động và quá trình chuyển dữ liệu bắt đầu, CPU được tự do và làm việc khác trong khi DMAC tiếp tục thực hiện chuyển dữ liệu 5 10/12/2017 Khi không dùng DMA Khi dùng DMA Khi không có DMA, dữ liệu từ disk phải đưa lên bus, chuyển tới CPU, sau đó CPU phải đưa lên bus một lần nữa mới chuyển tới memory. Khi DMA hoạt động, DMA sẽ đạt dữ liệu từ Disk lên bus và chuyển thằng tới Memory mà không qua CPU. 6 10/12/2017 Chip DMA (DMAC) được sử dụng trong phần lớn các máy PC là chip có ký hiệu 8237A hoặc tương đương. Các dòng máy Micro Channel và EISA đã sửa đổi kỹ thuật DMA tạo ra một chip riêng có các chức năng hơn hẳn 8237A, nhưng có rất ít chương trình điều khiển thiết bị tận dụng được những ưu điểm mở rộng đó. Dòng máy IBM-XT chỉ sử dụng một chip 8237A lập trình được cung cấp 4 kênh DMA riêng rẽ, đánh số từ 0 đến 3. Dòng máy IBM-AT (chiếm phần lớn thị trường máy PC hiện nay) sử dụng 2 chip 8237A cung cấp 8 kênh DMA độc lập đánh số từ 0 đến 7. Chỉ có 7 trong số 8 kênh DMA sử dụng được vì một kênh (kênh 4) được sử dụng để liên kết hai bộ điều khiển với nhau sao cho chúng có thể làm việc như một đơn vị thống nhất. Kênh 0 đến 3 chuyển 8 bit dữ liệu cùng một lúc và có thể lưu 64KB chỉ trong một lần hoạt động, trong khi kênh 5 đến 7 chuyển 16 bit và có thể chuyển được 128KB trong một lần hoạt động. 7 10/12/2017 Giống như bộ điều khiển ngắt, nơi nhận yêu cầu ngắt từ các thiết bị thông qua đường IRQ, một DMAC nhận yêu cầu DMA thông qua đường DMA request (DREQ). Chip 8237A cung cấp một vài phương thức và phương pháp hành động khác nhau, tuy nhiên một quá trình chuyển điển hình từ thiết bị tới bộ nhớ diễn ra như sau: DMAC được lập trình đầu tiên với địa chỉ của bộ nhớ sẽ ghi dữ liệu và số byte được chuyển. Khi thiết bị đã sẵn sàng bắt đầu quá trình chuyển, nó kích hoạt đường DREQ để kết nối với DMA. Sau khi được CPU cho phép điều khiển đường truyền, DMAC đưa ra địa chỉ bộ nhớ và tạo ra tín hiệu để một byte (hoặc một từ) dữ liệu được đọc từ thiết bị và ghi vào vùng được chỉ định trong bộ nhớ. ...
Tìm kiếm theo từ khóa liên quan:
Kiến trúc máy tính và hợp ngữ Kiến trúc máy tính Bài giảng Kiến trúc máy tính Lập trình hợp ngữ Giao diện bộ xử lý Phân biệt bộ xử lý vào raGợi ý tài liệu liên quan:
-
67 trang 295 1 0
-
Giáo trình Kiến trúc máy tính và quản lý hệ thống máy tính: Phần 1 - Trường ĐH Thái Bình
119 trang 230 0 0 -
105 trang 200 0 0
-
84 trang 197 2 0
-
Lecture Computer Architecture - Chapter 1: Technology and Performance evaluation
34 trang 167 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 156 0 0 -
142 trang 146 0 0
-
3 trang 143 2 0
-
Thuyết trình môn kiến trúc máy tính: CPU
20 trang 143 0 0 -
Bài giảng Lắp ráp cài đặt máy tính 1: Bài 2 - Kiến trúc máy tính
56 trang 103 0 0