计算机组成原理(2)-软件设计(二十三)https://blog.csdn.net/ke1ying/article/details/129394115
一、总线
分为 内部总线、系统总线、外部总线。
内部总线:指芯片级别的总线,连接各个芯片。
系统总线:插件板层级的。
外部总线:则是微机线。
系统总线分为:数据总线、地址总线、控制总线。
系统可靠性分析-串联系统与并联系统
串联的时候只要有一个子系统出现异常,整个流程全部异常。
R = R1 * R2 * R3...
并联只要有一个 正常运行,就可以运转,除非所有的系统全部都失效,才会导致整个流程试下。
R = 1-(1-R1)*(1-R2)*...*(1-Rn)
例子:一个系统可考虑是0.9
串联R = 0.9*0.9*0.9
并联R = 1- (0.1)*(0.1)*(0.1)
可见串联可靠率系统越多,可靠率越低,并联反之。
混合系统则是把串联和并联混合在一起,然后通过表决模式,选择正确的答案,宕机的错误答案剔除。
问:图上可靠度?
整体讲还是串行,所以可以先算两个并联 可靠度,再把两个并联可靠度和R相乘。
- CRC
循环校验码CRC可以检错但不能纠错
右边是普通除法过程。
左边是模2除法,并不是用减法,而是用异或操作。
1和1异或操作得到0
0和1异或操作得到1
1和0异或操作得到1。
问:如图,如果我们要对原始报文“11001010101”做CRC编码?
第一步:我们先把多项式转成二进制形式,11011
代表x的四次方 + x的三次方+(因为是0,所以没有x的平方 + x的一次方 + 1
所以转成二进制就是11011
第二步:用原始报文先补0,补的0就是除数的长度-1个0,所以5-1=4
第三步:用补0后的原始报文11001010101 0000 除以11011
第四步:用模二除法的余数 代替最后的0000.
所以最后CRC编码后的结果是:11001010101 0011
当这个结果与11011模二运算后,结果是0,则代表我们CRC编码正确。
- 海明校验码
问:信息1011的海明码?
2的r次方>=4+r+1
确定效验码是3位,分别在2的0次方,2的1次方,2的二次方位子
所以2的3次方 = 8 >= 4+3+1 = 8
7653很好填入,直接把1011填进去。
由上图可以见到:
7由这三个数组成,所以他会影响到 三个校验位,也就是r2,r1,r0。
6 会影响两个校验位,r2和r1。
5会影响2个校验位 r2和r0。
3会影响r1和r0
所以r2 在属于7和6和5,所以
R2 = I4异或I3异或I2
1 0 1 异或操作算出 0
R1 = 1 0 1异或操作算出 0
R0 = 1 1 1异或操作算出 1
所以校验位算出来分别为 0 0 1
海明码与CRC不同的是,海明码还支持纠错,当发现错误位的时候,直接取反就好。