为何集成电路这么复杂不出问题,只要一只开关坏了,全完了
那个,那个,
1CPU上的主要晶体管都是用在了缓存上,
而缓存往往是有校验的
2 晶体管没有机械运动,一般不容易坏,但使用时间长了,也就有怀的了,要报废
3 产线上下来的,有一些是坏的,
话说我也一直很好奇,十几亿个晶体管,每秒运行几十亿次,按概率总会有错误啊,不知道怎么避免的?一直觉得很神奇
模拟电路比数字电路要精密一些,但也只是要结果在一个可接受的范围内。
数字电路就更不精确了,一个很大的电压范围,只有0和1之分,这个能保证他的结果几乎
是不出错的。
当然了,设计里还会有其他的容错机制。
只要出场检验过, 正常操作,微电子器件的可靠性很高,10年以上没有问题,
练抽真空的泵这种机械装置都能24小时工作,连续抽10年以上不坏,
何况这种微电子器件了。
称作“逻辑”的部分并不大
IC出厂的时候次品率还是很高的,都挑出来扔了
其实IC还可以做的更大,只不过设计师脑子不够用,用不上了
不是设计师的脑子不够用。是太大了,良率会太低。
一个晶圆,假设会有一个坏点,而你的逻辑映射到这个点上,正好又没有纠错机制。对于一个规模一般的芯片,可以切成100片,就丢一个,良率99%。你要是设计的太大了,假设极端--不用切,整个就得丢了,良率0%。
一般芯片里逻辑可能就占20~30%,其余大部分是各种memory,这些东西都会设计冗余,容错与自我修复机制。
很多网络、服务器领域的芯片或设备宣称具有高RAS(Reliability,Availability和Serviceability,即可靠性,可用性和可维护性),对于这些芯片。实际上不仅memory,一般逻辑里面可能会出现的异常,突发错误等等都会做很多很好的容错处理。芯片做不了的,再可以通过软件。
对于这种设备的设计有也会有冗余备份通道,譬如主通道的芯片或软件或硬件出了问题,要求能够自动切换到备用通道上,主通道或自己重启恢复,或人为恢复。总之要能保证整个系统几年不需要重启。
举个例子,很多就是尽量保证芯片里边不因为逻辑的异常,导致维护内存资源等的指针或控制逻辑出现混乱,因为这些东西一乱,有些不用的内存资源可能就释放不出来,导致内存越来越少,系统越来越慢,直到down掉。
一般的消费类的芯片或系统对可靠性的要求就不高了,估计几天重启一次都没问题,何况很多人还习惯每天关机。
服务器几个月不重启也没问题啊
超频的那个所谓电子漂移现象导致损坏的有多少
没有人能保证不出错。只是出错的概率一直都在降低。