CPU与外部设备进行信息交换时的困难:
①CPU和外设的速度差异非常大
②CPU不能和外设直接通过引脚连接
注意:
CPU和外设之间必须要设置输入/输出接口(I/O接口),作为CPU与外设进行信息交换的桥梁。
①I/O地址译码与设备选择
所有外设都通过I/O接口挂接在系统总线上,在同一时刻,总线只允许一个外设与CPU进行数据传送。
②信息的输入/输出
③命令、数据和状态的缓冲与缓存
④信息转换
I/O接口还要实现信息格式变换、电平转换、码值转换、传送管理以及联络控制等功能
CPU与外设通信时传送的信息由:数据信息、状态信息、控制信息不同的的信息进入不同的寄存器。
传输的通道都是一样的,都是通过数据总线。
指I/O端口与存储器共享
一个寻址空间,又称为统一编制
。CPU可以用同样的指令
对I/O端口和存储器单元的进行访问。
优点:
不必设置专用的IO指令,对I/O口的访问更灵活方便。
IO地址空间可大可小,可以根据外设数据调整。
缺点:
I/O端口占用了主存地址,相对减少了主存的可用范围。
主存地址空间
和I/O端口地址空间
相互独立,分别编址
。CPU通过指令
来区分是访问I/O口还是存储单元。
优点:
主存和I/O端口的地址可用范围都比较大
操作存储器指令
和操作端口指令
明显分开,清晰易读
。
缺点:
专用I/O指令的功能一般比较弱;
CPU要提供区分存储器访问和I/O访问的控制信号。