IO接口的主要功能
⑴ 對輸入輸出數據進行緩衝和鎖存;
輸出接口有鎖存、緩衝環節;
輸入接口有鎖存、緩衝環節;
⑵ 對信號的形式和數據的格式進行變換
微機直接處理:數字量、開關量、脈衝量;
⑶ 對I/O端口進行尋址;
⑷ 與CPU和I/O設備進行聯絡。
接口電路的內部結構
• CPU與外設主要有數據、狀態和控制信息需要相互交換,於是從應用角度看內部:
⑴ 數據寄存器
• 保存外設給CPU和CPU發往外設的數據
⑵ 狀態寄存器
• 保存外設或接口電路的狀態
⑶ 控制寄存器
• 保存CPU給外設或接口電路的命令
I/O端口的編址
接口電路佔用的I/O端口有兩類編排形式
• I/O端口單獨編址
I/O地址空間獨立於存儲地址空間;如8086/8088;
• I/O端口與存儲器統一編址
它們共享一個地址空間;
• 如ARM-CORTEX M3。
I/O端口單獨編址
• 優點:
• I/O端口的地址空間獨立
• 控制和地址譯碼電路相對簡單
• 專門的I/O指令使程序清晰易讀
• 缺點:
• I/O指令沒有存儲器指令豐富
I/O端口與存儲器統一編址
• 優點:
• 不需要專門的I/O指令
• I/O數據存取與存儲器數據存取一樣靈活
• 缺點:
• I/O端口要佔去部分存儲器地址空間
• 程序不易閱讀(不易分清訪存和訪問外設)