CPU的门电路输出错误会怎样?

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:30:58
如果CPU里的某个门电路故障,输出总是1或总是0了,应该会导致系统错误,死机蓝屏之类的吧?但要是出这种故障的门电路是分支预测器的一部分,会不会影响预测结果使预测失败,导致CPU性能下降呢?望高人赐教!
不是,3楼大哥,我是说,你能肯定门电路输出错误,结果是导致预测失败吗?不会直接导致预测器罢工,CPU罢工之类的么。。。我是菜鸟别笑我。。。

分支预测就是根据之前的分支的结果(BRANCH OR NOT )来判断现在的分支的结果,其本质是个状态机。在分支指令执行的时候,由于不清楚到底是不是要跳转,所以后续指令的执行与否就先用分支预测的结果来判断。如果分支预测结果为不跳转,那就继续执行后面的指令,如果跳转了,那就执行跳转到的L1 指令地址的那个指令。如果预测正确,那皆大欢喜,如果预测发生错误,那就必须将已经执行的后续指令在流水线中全部FLUSH 掉,这会浪费很多周期。而分支预测器本身是个状态机,如果其中的门电路错误,如状态转换的NSL(NEXT STAGE LOGIC)有问题,那预测结果的正确率显然会大大下降,从而导致要FLUSH 后续指令的次数大大上升,浪费无数周期,严重影响CPU 性能。

补充:分支预测错误了,充其量是BRANCH 指令的执行效率降低,不会影响ALU 或浮点单元的计算功能,也不会使程序正常指令执行顺序发生变化,故我认为是只会影响性能。如果 你说的导致预测器罢工,那我认为有两个可能,一是TAKEN/NOT TAKEN 输出始终为0或为1,在这种情况下,相当于做静态预测,就是预测分支始终发生或者始终不发生,这样不会有致命的影响。如果罢工导致的输出为高阻,则要看前端有没有对此采取保护措施(比如加一个保护的控制电路,一个简单的转态机就可以了),如果没有的话,则可能造成输入的指令无法判断TAKEN 的输入,而都不能执行,这样应该会使CPU 废掉。

预测分支说白了是根据任务的相关性,将不相关、没有前后顺序的任务并行处理,因此如果预测失败,将会大大降低CPU的性能

不可能吧,CPU出毛病就坏了,他是电脑核心出错轻者蓝屏,重者烧毁啊。门电路故障??
会是电脑出错的!虽说不是重要的损坏,但可以说这款CPU报废了。。