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àylà rõ ràng từ hình 2.11. Trong khi đó tốc độ truyền vào và ra khỏi bộ nhớ chính hoặc bộ vi xử lý là khá cao, tỷ lệ là đơn đặt hàng của cường độ thấp hơn cho nhiều thiết bị ngoại vi và bao gồm một phạm vi rộng. Gửi dữ liệu đến từ bộ nhớ chínhđể một module I/O trong một burst nhanh chóng. Dữ liệu được đệm trong I/O module và sau đógửi đến thiết bị ngoại vi tốc độ dữ liệu của nó. Theo hướng đối diện, dữ liệuđệm để không làm tie lên bộ nhớ trong một chiến dịch chuyển chậm. Do đó, i/oMô-đun phải có khả năng vận hành ở tốc độ thiết bị và bộ nhớ. Tương tự như vậy, nếu cácI/O thiết bị hoạt động ở tốc độ cao hơn tốc độ truy cập bộ nhớ, sau đó thực hiện các module I/O hoạt động đệm cần thiết.Cuối cùng, một module I/O thường chịu trách nhiệm phát hiện lỗi và sau đó báo cáo lỗi cho các bộ xử lý. Một trong những lớp học lỗi bao gồm cơ khí vàhỏng hóc điện báo cáo của các thiết bị (ví dụ như, kẹt giấy, theo dõi tình trạng đĩa). Kháclớp học bao gồm các thay đổi không chủ ý cho các mô hình bit như nó được truyền từ thiết bịModule I/O. Một số hình thức phát hiện lỗi mã thường được sử dụng để phát hiện các bộ truyền độnglỗi. Một ví dụ đơn giản là sử dụng một bit chẵn lẻ trên mỗi ký tự của dữ liệu. Ví dụ, mã ký tự IRA chiếm 7 bit của một byte. 8 bit được thiết lập để tổng sốthậm chí là số 1 trong các byte (ngay cả tương đương), hoặc lẻ (lẻ chẵn lẻ). Khi nhận được một byte, các module I/O sẽ kiểm tra chẵn lẻ để xác định liệu một lỗi đã xảy ra.Cấu trúc mô-đun i/oI/O modules thay đổi đáng kể trong sự phức tạp và số lượng các thiết bị bên ngoàihọ kiểm soát. Chúng tôi sẽ cố gắng chỉ rất chung chung mô tả ở đây. (Một cụ thểthiết bị, Intel 82C55A, được mô tả trong phần 7.4.) Hình 7.3 cung cấp một vị tướngSơ đồ khối của một module I/O. Module kết nối với phần còn lại của máy tínhthông qua một tập hợp các tín hiệu dòng (ví dụ, Hệ thống xe buýt). Dữ liệu được chuyển đến và đi từ cácMô-đun được đệm trong một hoặc nhiều thanh ghi dữ liệu. Cũng có thể có một hoặc nhiềutình trạng đăng ký cung cấp thông tin trạng thái hiện tại. Một tình trạng đăng ký cũng có thểchức năng như
đang được dịch, vui lòng đợi..
