Module chức năngChức năng chính hoặc các yêu cầu cho một module I/O rơi vào những điều sau đâythể loại:• Điều khiển và thời gian• Bộ xử lý thông tin liên lạc• Thiết bị thông tin liên lạc• Dữ liệu đệm• Phát hiện lỗiTrong bất kỳ khoảng thời gian, bộ vi xử lý có thể giao tiếp với một hoặc nhiềuCác thiết bị bên ngoài trong mô hình không thể đoán trước, tùy thuộc vào các chương trình cần thiết cho I/O.Các nguồn lực nội bộ, chẳng hạn như bộ nhớ chính và hệ thống xe buýt, phải được chia sẻtrong một số hoạt động, bao gồm dữ liệu I/O. Vì vậy, bao gồm các chức năng I/O mộtkiểm soát và yêu cầu thời gian, phối hợp các dòng chảy của giao thông giữa các nguồn lực nội bộ và bên ngoài các thiết bị. Ví dụ, sự kiểm soát của việc chuyển giao các dữ liệu từ mộtCác thiết bị bên ngoài với bộ vi xử lý có liên quan đến việc theo trình tự các bước:1. việc xử lý interrogates các module I/O để kiểm tra tình trạng của các đính kèmthiết bị.2. các module I/O trở về trạng thái thiết bị.3. nếu thiết bị hoạt động và sẵn sàng để truyền tải, xử lý yêu cầu cácchuyển dữ liệu, bằng một lệnh để các mô-đun I/O.4. các module I/O có được một đơn vị của dữ liệu (ví dụ: 8 hay 16 bit) từ các thiết bị bên ngoài.5. các dữ liệu được chuyển giao từ I/O module cho bộ vi xử lý.Nếu hệ thống sử dụng một chiếc xe buýt, sau đó mỗi người trong số các tương tác giữa các bộ xử lý và các module I/O liên quan đến một hay nhiều xe buýt trọng.Các kịch bản đơn giản trước cũng minh hoạ rằng các module I/O phảigiao tiếp với bộ vi xử lý và các thiết bị bên ngoài. Bộ vi xử lý thông tin liên lạc bao gồm những điều sau đây:• Lệnh giải mã: i/o The module chấp nhận lệnh từ bộ vi xử lý,thường gửi các tín hiệu điều khiển xe. Ví dụ, là một module I/O cho mộtổ đĩa có thể chấp nhận các lệnh sau đây: lĩnh VỰC ĐỌC, VIẾTKhu vực kinh TẾ, TÌM theo dõi số lượng và QUÉT ghi lại ID. Sau hai lệnh mỗi bao gồm một tham số được gửi trên các xe buýt dữ liệu.• Dữ liệu: dữ liệu được trao đổi giữa bộ xử lý và các module I/O qua cácxe buýt dữ liệu.• Tình trạng báo cáo: bởi vì các thiết bị ngoại vi quá chậm, nó là quan trọng để biết cáctrạng thái của I/O module. Ví dụ, nếu một mô-đun I/O là yêu cầu để gửi dữ liệuvới bộ vi xử lý (đọc), nó không có sẵn sàng để làm như vậy bởi vì nó vẫn còn làm việctrên I/O lệnh trước đó. Điều này thực tế có thể được báo cáo với một tình trạng signal.7.2 / i/o mô-ĐUN 223Phổ biến tình trạng tín hiệu đang BẬN và sẵn SÀNG. Cũng có thể có các tín hiệu đếnbáo cáo điều kiện lỗi khác nhau.• Địa chỉ công nhận: cũng giống như mỗi từ bộ nhớ có một địa chỉ, do đó, khôngmỗi thiết bị I/O. Vì vậy, một module I/O phải thừa nhận một địa chỉ duy nhất chomỗi thiết bị ngoại vi, nó kiểm soát.Bên kia, các module I/O phải có khả năng thực hiện các thiết bị thông tin liên lạc.Giao tiếp này liên quan đến lệnh, thông tin trạng thái, và các dữ liệu (hình 7.2).Một nhiệm vụ cần thiết của một module I/O là dữ liệu đệm. Sự cần thiết cho chức năng nàyis apparent from Figure 2.11. Whereas the transfer rate into and out of main memory or the processor is quite high, the rate is orders of magnitude lower for many peripheral devices and covers a wide range. Data coming from main memory are sentto an I/O module in a rapid burst. The data are buffered in the I/O module and thensent to the peripheral device at its data rate. In the opposite direction, data arebuffered so as not to tie up the memory in a slow transfer operation. Thus, the I/Omodule must be able to operate at both device and memory speeds. Similarly, if theI/O device operates at a rate higher than the memory access rate, then the I/O module performs the needed buffering operation.Finally, an I/O module is often responsible for error detection and for subsequently reporting errors to the processor. One class of errors includes mechanical andelectrical malfunctions reported by the device (e.g., paper jam, bad disk track).Anotherclass consists of unintentional changes to the bit pattern as it is transmitted from deviceto I/O module. Some form of error-detecting code is often used to detect transmissionerrors. A simple example is the use of a parity bit on each character of data. For example, the IRA character code occupies 7 bits of a byte.The eighth bit is set so that the totalnumber of 1s in the byte is even (even parity) or odd (odd parity). When a byte is received, the I/O module checks the parity to determine whether an error has occurred.
đang được dịch, vui lòng đợi..
