【问题思考总结】I/O总线的数据线和控制线的辨析【2012年 408真题 T21】

个人经过查阅资料发现,王道给的图好像挺有误导性的,比如,I/O总线中的地址总线应该是单向传输的,但是,在他的图例里面是双向的。文章若有错误,恳请指正,感激不尽。

问题

在做2012年408真题的时候,发现I/O接口中的命令字和I/O接口中的状态字以及中断类型号,都是通过数据线传送的,然而在我的感觉里,命令字,一听就是和控制有关,应该是控制线,状态字,跟什么PSW很像,应该也是控制程序执行的,应该也是通过控制线传输,中断类型号,也是跟程序控制有关,这不都应该是控制线。。。。

思考

经过观察,发现三条线中最容易搞不清楚的是数据线和控制线,因为地址线的功能是很明确的,就是用来让CPU访问I/O接口中的寄存器

然而,而控制线则传输的是读寄存器或者写寄存器,有时还有一些仲裁信号(关于I/O总线争用总线的判优方式(注意区分总线仲裁和中断判优(I/O设备争用CPU(我现在也搞不太清楚,先这么记住吧))))和握手信号(用于主从设备的同步(CPU或DMA和外部设备)

而本题中的三个:I/O接口中的命令字,I/O接口中的状态字,中断类型号,显然都不属于上述,那他们分别都是干什么的呢?

I/O接口中的命令字:CPU发送让IO接口进行特定的操作。
I/O接口中的状态字:每个设备的特有的状态(我感觉是不是就是状态字寄存器里的那些啊。。这个不清楚)(区分于简单的忙碌,空闲状态)
中断类型号:是中断原用来寻址中断处理程序的信息。

我个人辨析一下的感觉就是,控制线是偏宏观,而数据线则是偏微观

比如读寄存器和写寄存器,这个是最基本的控制信号,理应在控制线,而仲裁信号是用来选特定的一个设备的,最后这个握手信号是通信的同步,只有确定了这些,主设备才能真正算是和从设备建立了联系。然而之后的传送数据,比如1. 令I/O接口进行特定的操作 2. 回复该I/O设备的状态 3. 发送中断类型号,用于寻址中断程序,这些都是建立在控制线所建立的通信基础上,因此这可能也是数据线和控制线的区别。

总结

因此,看控制线和看数据线,第一,要牢记控制线的三个功能(相对数据线要好记忆):读写信号,总线仲裁,握手信号。第二,(选)控制线宏观建立通信数据线微观传递数据

我知道写的很牵强。。。但是这确实是目前的水平能够尽力想出来的了,如果有更加nice的思维,欢迎评论区讨论指正。

你可能感兴趣的:(笔记,计算机组成原理,考研)