IO接口采用存储器映像寻址时,微处理器仅根据地址的不同,区分数据存储器和IO接口。也就是说,IO接口对MIPS微处理器而言就是另一个数据存储器,它与数据存储器不同的是需要连接外设。若采用独立开关作为输入设备、LED灯作为输出设备,那么IO接口内部需要为输入设备独立开关提供数据缓冲器,为输出设备LED灯提供数据锁存器。
存储器映像IO接口数据的输入、输出同样是通过lw、sw指令实现,由此可知CPU同样是通过RtData输出数据到IO接口,通过Res作为地址寻址IO接口的端口,IO接口输出到CPU的数据也需连接到寄存器文件的数据输入端WriteData,写控制信号同样来自主控制器的译码输出。因此为区分IO接口和数据存储器,需要利用地址线译码产生区分IO接口和数据存储器的不同控制信号。有两种不同方法产生不同的控制信号:
(1)控制片选端,即直接利用高位地址译码产生数据存储器和IO接口的不同片选使能信号。由于仅需两个不同的片选使能信号,因此可以直接采用1位高位地址译码产生。
(2)控制读、写使能端,即采用高位地址与主控制器提供的存储器读、写使能信号译码分别产生数据存储器和IO接口的读、写使能信号。
图7-1展示了由高位地址与写信号译码产生不同写控制信号以区分数据存储器和IO接口的一种MIPS微处理器计算机结构框图。该框图采用高位地址Res[7]以及写使能信号memwr译码产生数据存储器写(memw)以及IO接口写(iow)信号。图中虚线部分是在图6-5基础上修改的部分,当Res[7]为0时,选择读写数据存储器;当Res[7]为1时,选择读写IO接口。
图7-2展示了由高位地址译码产生不同片选控制信号以区分数据存储器和IO接口的一种MIPS微处理器计算机结构框图。该框图采用高位地址Res[7]译码产生数据存储器片选以及IO接口片选信号。图中虚线部分是在图6-5基础上修改的部分。当Res[7]为0时,选择读写数据存储器;当Res[7]为1时,选择读写IO接口。
图7-1 译码控制读写信号IO接口MIPS微处理器计算
图7-2 译码控制片选信号IO接口MIPS微处理器计算