硬件接口,串行比并行快的原因

  所谓串行,是指一次只通过一个二进制位,而并行是指一次通过n个二进制位,例如32位、64位。

  在相同频率下,并行的数据传输量是串行的n倍,可是为什么采用并行机制的IDE接口比采用串行机制的SATA接口的数据传输速度要慢呢?主要是频率的问题,串行可以通过提高频率来增加单位时间内的数据传输量,虽然并行也可以,但是并行的频率不能达到很高。至于原因,有两种说法:

  第一种说法是并行的频率如果太高的话,会产生传输信号的干扰,所以导致并行的频率不能达到很高。这种说法本人存在质疑,难道串行就不会有传输信号干扰这个问题吗?

  另一种说法我认为比较有道理:

  假设在并行的情况下,每次传输32个二进制位,那假设在某一次传输中,传输了两个short类型的变量,而另一种情况是传输一个Int类型的变量,刚好32位。那么在硬件层面上还需要判断每一次传过来是什么类型,要做决策,而这种决策花费的时间要比串行做的决策花费的时间要多,所以导致并行的频率不能达到很高。串行的情况下,我们只要知道每一次传过来的数据的位数,即可知道多少二进制位是一个数据,决策简单。

posted @ 2020-01-11 10:13  要不要买菜  阅读(693)  评论(0编辑  收藏  举报