CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

文章图片

CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

文章图片

CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

文章图片

CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

文章图片

CPU|CPU里都有几十亿个晶体管,万一坏掉几个还能用吗

以前修理一些电子产品的时候 , 偶尔会碰到某个指示灯或者继电器没有输出了 , 开始以为是灯或者继电器或者驱动三极管烧了 , 更换了还是一样 , 怀疑是线路断线或者漏电 , 把线路划断了 , 重新飞线过去 , 依然没有动作 , 后来测量CPU的对应输出管脚 , 居然没有电压 , 而产品其他功能运行找正常 , 也就是说CPU的其他功能都正常 , 只是某个管脚坏了 , 估计是里边的驱动三极管坏掉了 。

CPU虽然复杂 , 但是里边的电路原理并不会特别
普通电路里边有什么元件 , 不外是电阻 , 电容 , 电感 , 还有二极管 , 三极管等晶体管 。 这些电路最早是使用模拟形式的 , 主要是处理连续变化的模拟量的电路 , 它把模拟量信号进行放大(缩小) , 对信号进行一定的运算处理 , 还有震荡和反馈 , 调制电路 , 滤波 , 解调电路等等 。 应该说 , 早期的电路都是模拟电路 , 特别只有电阻 , 电容和电感的年代 。

晶体管技术发展后 , 另外一种电路专门用来处理数字信号的 , 就是数字电路 , 它主要是研究输入输出逻辑关系的 , 它分为时序逻辑和组合逻辑两种 , 是一种量化的电路 。 因为任何一个模拟量都可以经过量化来处理 , 而量化后的数据更容易处理 , 而且传输非常稳定 , 逻辑可以做得非常复杂 , 所以数字电路飞快发展 , 逐步把很多逻辑功能集成到一个芯片里边 , 芯片集成的晶体管越来越多 , 出现了各种触发器 , 逻辑门电路 , 移位寄存器等 , 最终就出来微处理器这样一个东西 , 也就是我们常说的CPU了 , 它是可以通过软件的方式来修改数字逻辑的 , 但是硬件的基础 , 还是很多数字电路组合体 , 而且今天的CPU还带D/A和A/D接口之类的 , 也就是说里边包含了一些模拟相关电路 。

可以设想一下 , 传统的电路上 , 如果某个电阻老化了 , 或者某个三极管坏了 , 电路一定是会出现一定的问题的 , 这个问题影响大小 , 和这个出问题的元件的重要性有很大关系了 。 比如只是放大回路上的一个电阻阻值变大了 , 就会影响模拟量输出的精确度 。 但是如果是一个电路里边的三极管放大倍数变化了 , 因为电路里边设计有负反馈之类的 , 可能会被校准过来 。 也就是说 , 这些元件只是性能不良 , 参数发生了一定的变化 , 可以利用电路原理来让整体电路功能工作正常 。 无论如何 , 如果一个通道上的一个电阻被烧短路了 , 传统的电路都会无法正常工作下去的 , 除非有元件能够更换掉它 。

但是在一个电路里边 , 如果设计一个备用的元件 , 是有点不太现实的 , 一方面是电路的体积要求比较小 , 另外对成本要求控制比较严格 , 而且多个元件还可能会带来多个不可靠 , 切换起来还要加电路 , 所以似乎没有什么人真正在传统的电路里边通过双元件来保证一块电路板的可靠性 , 也就是说电路系统里边 , 几乎不会使用所谓的元件冗余技术来切换掉坏的元件 。

既然CPU里边的电路和普通肉眼能看到的电路本质是一样的东西 , 所以如果CPU里边某个晶体管坏了 , 碰巧用上这个晶体管 , 在一些关键的部位上 , 比如管脚上 , 肯定是会造成这个管脚的功能失效的 。 因为这个管脚一旦失效 , 除非CPU设计了一套能检测到管脚失效的电路来 , 否则它本身是不会知道这个管脚工作是否正常的 , CPU功能这些多 , 不可能对每个晶体管都去做所谓的“闭环反馈”检查 , 如果里边某个晶体管失效 , 它不大可能可以自我判断和切换的 , 自我修复可以说是天方夜谭 , 好比一个人的大脑坏了一个神经元 , 大脑本身不可能去自我修复的 。