如果CPU中有一個晶體管壞了,會產生什麼問題?
個人理解,CPU就是若干個開關的集合,這些開關就是晶體管,如果其中一個壞了,CPU還能正常工作嗎?
一句話回答是:不知道會出現什麼問題!
連設計師都不知道。他因為人們無法知道那個壞了,怎麼壞了。
壞了分兩種情況:1生產出來就是壞了(time zero)。2用著用著就壞了(time dependent)。
1如果你們過了DRC(design rule check),time zero還那麼差,就可以去製造廠吵架了。2有興趣可以去搜索NBTI/PBTI,HCI,EM,TDDB。這些壞實在是太普遍了。
簡簡提到了幾種壞了的修復辦法。主要就是提高MTBF(mean time before failure),MTTF(mean time to failure)。從詞語上看就是降低壞死的概率而已。
最常用就是memory裡面的冗餘了。這個很常用,很有效。因為一般片上memory幾乎佔了95%以上,所以保住了大頭,晶元還是很可能穩定工作的。對於logic特別是ALU的保護也見過一些,主要也就是冗餘的辦法。但是我一直疑問,如果那些冗餘的控制迴路壞了,怎麼辦?研究界沒什麼辦法,只能說因為控制迴路小,所以壞的概率低。大家關於這個有什麼補充的。
當然,3個門驅動的壞一個門這不屬於壞死,屬於degradation吧。多核關閉壞的核也是很有效的辦法。
還有要指出的是,對於一些晶元,輸出本來就是統計性的:比如圖像處理(壞一個/一些點沒有什麼影響的)。所以即使那些邏輯壞了也不影響使用。還有就是用ECC的辦法可以糾錯了。
但是以上辦法只能提高特定架構特定結構特定部分特定壞死情況下的穩定性,而且連這穩定性都無法保證。就是實驗室里說的MTBF可以提高些。別說其他我們未料到的壞死情況了。
對於消費電子,之前是保證MTTF=10年,現在MTTF=2年都有了。什麼意思?手機用個兩年就換吧。多花點錢給整個行業,好給被摩爾定律虐得死去活來的硅工發發工資不是。
憑什麼允許你們來大姨媽軟體壞死,就不允許硬體壞壞不是?
沒什麼是可信賴的,努力提高可信賴指數罷了。cpu是由數以億計晶體管組成的,每個晶體管都會有其功用,而且每個管子所在單元會影響到每步執行的結果例如算術邏輯單元ALU上一個晶體管出錯,cpu進行算術邏輯運算時都出的結果必然是錯的,即使其他部分像寄存器和控制器正常,反饋給存儲器或IO時都是錯誤結果。
你說的管子壞了 如果理解為三極體不導通和擊穿兩種。不導通可能還會反饋給你一點錯誤的信息。但這種情況幾乎是不存在的。ic上三極體壞掉多為擊穿,這樣的話可能是一大片鏈式的擊穿,管子直接不能工作了
一般的晶元,壞了一個管子,就會整個晶元無法正常工作(不一定死掉,但結果可能錯誤)。
但是部分晶元,比如memory 相關的,可能完全正常工作。
如果是cpu裡面的cache,有ECC可以糾錯的。如果是某個計算單元,只要能檢測到也能規避,例如多核cpu關掉故障的那個核。
CPU中某一個晶體管(開關)壞了,可能會導致一片區域失效,但是,多數情況下,其他模塊是可以正常工作的。生產廠商可將損壞的模塊屏蔽掉、不再使用,其他模塊接入系統正常使用。關於計算能力被屏蔽的,坊間有傳奇故事:某公司的伺服器性能落後,花數十萬美元進行設備升級。供應商工程師過來,敲幾行代碼,將屏蔽的硬體解鎖,升級工作就完成了……
以下內容摘抄自 遙控 大神的一篇科幻小說《無中生有的三個故事》其中的第一個故事。
一、名 字
一股突如其來的奇怪感覺從頭到腳流過他的身體。一瞬間,他的眼前一片黑暗,思考完全中止。
過了好久,他漸漸回過神來,並不急於睜開眼睛,只是躺在地上喘息。
「起來,我的左鄰。有信息來了。」他右手邊的另一台機器傳來一道指令。於是他急忙跳起來,開始閱讀分析新的信息。
讀罷,他按照自己體內的邏輯,做出相應的反應。對於這條編號為「79」的信息,他所要做的,僅僅是令臉部的表情開關顯示為紅色,然後再傳送一條編號為「79」的信息給自己的左鄰。
他所能接觸的,一共只有四位鄰居,他把他們稱為「前、後、左、右」。他們與他完全相同,沒有區別。他是他的右鄰的左鄰,他是他的左鄰的右鄰。並且據他所知,每個鄰居又有四個鄰居,如此反覆,直至無窮。他是他們中的一員,與他們中的任何一個都別無二致。他們擁有相同的思考邏輯。
不時會有各種信息從他的某個鄰居處傳來,經過他的手,再傳遞給另一個鄰居。至於這些信息來自哪裡,去向何方,他並沒有想過。
每天的工作有條不紊地進行,但今天似乎並非如此。
從他的左鄰處傳來了編號為「33」的信息,他知道這條信息的含義是詢問。將信息攜帶的內容讀出來,就是他的左鄰所要告訴他的話。
「我的右鄰,你剛才傳來的信息出現了偏差。」他的左鄰說。
他回答道:「我的左鄰,我所給你的信息沒有偏差。你所說的信息來自我的右鄰,我執行了它所要求的步驟。」
「我並沒有責怪你的意思,我只希望了解誤差為何出現。」
「如你所知,我們是完全相同的。如果有誤差的話,必定是先在其他地方出現,一路傳遞到了這裡。」
「你說得對。關於這次誤差的疑問,也是從我的鄰居處傳來的。請你詢問你的鄰居,以追溯誤差的來源。」
「好的。」
他說完之後,轉向自己的右鄰,將相同的問題重述了一遍。
之後他便沒什麼事情可做了。在各種信息傳遞的空當中間,他和其他所有機器一樣,靜靜地待在原地,直至有下一份信息需要他處理。
不久之後,第二條不尋常的信息從他的前鄰處傳來。
「我的後鄰,你今天已經是第三次傳送出帶有偏差的信息了。」
「我並沒有使信息產生偏差。但我可以幫你追溯信息偏差的來源。」他回復道。
「針對這些信息,已經從相互垂直的路線鎖定了偏差產生的位置。我的後鄰啊,那就是你。」
「我不能同意你的判斷。」
「那不是我的判斷。那是墟的意思。」
他沉默了下來。
墟是他們的整體,是無窮無盡的機器所形成的集合,是從世界誕生起就在他們之間傳遞著的所有信息。
當他的前鄰說「那是墟的意思」時,他知道這只是一種籠統模糊的說法,實際上是某條信息指出了他的位置。閱讀過無數的信息後,他對信息已有足夠的認識,這些信息就像電子的軌跡一樣,似乎是遵循著某些簡單而又深奧的規則,然而具體的每一條又全無規律。由於他和他的鄰居們完全相同,並不存在諸如數字編碼之類的東西將他們區分,所以當一條信息要指出某台機器的位置時,一般只是一個簡單的遞減數字,沿路的每一台機器將這個數字減一,再傳遞給下一台。當數字減為零時,這條信息便到達了終點。
至於這信息來自何方,便沒有機器能夠說清。就如同海面上的波浪,一個洶湧的浪頭,或許只是源自某一個小小的起伏,一路吸收疊加了來自各方的波峰,沿著彎曲的邏輯海岸線,最終撞在某塊礁石上,濺出滿天水花。
「我的後鄰,我正在等待你的答覆。」
「給我一點時間,我在進行檢查。」他回答道。
當他看到自己體內時,他便知道,的確有些什麼發生了。
他體內的五十三個邏輯單元,只剩下了五十二個。
每一個邏輯單元都是半透明的晶瑩球體,其中蘊含著若有若無的灰色陰影,如同蛋殼中的胚胎。他認得所有的邏輯單元,從形狀上看,有些像鳥,有些像蛙,有些像魚。
現在當他一個個數下來的時候,發現原有的「蛇」和「蜥蜴」這兩個邏輯單元不知為何融在了一起,形成了一個拉長的橢球,在外表呈現出不規則的混沌灰影。
他不知道這是否是因為不久前那突如其來的事件。
或許這就是他的鄰居們抱怨信息出錯的原因?
然而,在所有五十二個邏輯單元的分析下,他卻並不認為這是一個「錯誤」。
很奇妙地,一股奇怪的感覺出現在他身上。
他不由得思考:他現在的一切邏輯判斷,實際都由現存的五十二個邏輯單元進行。假如認為邏輯單元出錯,那麼關於「邏輯單元出錯」這一判斷本身也就不能成立。
因此,他便安於「一切正常」的想法。
只不過有一點卻是肯定的——他和他的鄰居們,已經不再相同。
「我的前鄰,你變了。」從他的後面傳來了信息。
「是的,我變了很多。」他肯定地回答。
「在我的四個鄰居之中,你與其他三個截然不同。」
他沉默了片刻,回答道:「是的,我就是我。我不是你們。」
他重複著,彷彿是要讓自己確信一樣:「我,與你們不同。」
「這令我不安。」他的後鄰說。
「不要害怕,我的後鄰。墟說過這是錯的嗎?」
「沒有。墟沒有這麼說。」
「那就行了。」他自信地說。
一種全新的思想出現在他身上。他就是他,在無窮無盡的機器中,他是獨一無二的。這令他感到驕傲,同時又有一絲隱隱的期待。
他在期待著什麼?
「你們可以稱我為阿爾法。」他向四鄰發送了這樣的信息。他將以這個名字與其他機器區分。
他的四鄰具有相同的邏輯,因此他們的回復也一模一樣:「如你所願,尊敬的阿爾法。」
他覺察到四鄰的回復中所帶有的敬畏。他們不能理解他,因為他與眾不同。而敬畏總是伴隨著不理解而來。
現在是時候開始思考這一變化將帶來的影響了。當他還是普通一台機器時,他知道所有的機器都是相同的。這意味著,所有的機器也具有相同的鄰居。
一台機器,作為完整的存在,不光包括機器本身,還包括他的四鄰。只有在鄰域中,機器的價值才能得以體現。
於是他和藹地告訴他的四鄰:「看看你們自己。現在你們也已經與其他機器不同了。你們有一個獨特的鄰居,那就是我。而其他機器並沒有這樣一個鄰居。」
「是的,尊敬的阿爾法。」他的四鄰齊聲回答,「這是值得注意的。因此,我們將稱自己為阿爾法1,意為與阿爾法距離為一的機器。」
不久之後,鄰居們傳來了新的消息。鄰居的鄰居也覺察到了自己的不同——他們擁有被稱作阿爾法1的鄰居,這是其他機器都所不具有的。順應同樣的邏輯,他們稱自己為阿爾法2。
逐漸地,越來越多的機器接受了新的名字,從阿爾法3、阿爾法4……一直延伸下去。這些機器將自己的名字通報給上一級的鄰居,層層反饋回位於所有阿爾法中央的阿爾法。他接收到越來越多的令他高興的消息。與此相比,平時所處理的普通信息則越來越少,幾乎可以忽略不計了。
又過了一段時間,從他的右鄰處傳來了關於他的信息。
「阿爾法,墟知道了你的存在。」他的右鄰說。
「墟是怎麼說的?」
「墟認為眾多的阿爾法已經干擾了正常的信息處理工作。墟要求我們回復到初始狀態。」
「墟的判斷並不正確。難道你們的決定不是由相同的邏輯單元所做出的嗎?這有何可質疑的呢?」
「你說得對。然而墟將矛頭指向了一切的根源,也就是你。」
「不必理會。我就是我。」
不久,在密密麻麻的阿爾法專用信息中,夾雜了一條不起眼的信息,通過他的前鄰傳送過來。這條信息中攜帶著的路程數,在傳遞到他這裡的時候,已經遞減為零。信息自身的編號為「0」,翻譯過來就是:當這條信息到達終點時,所在的機器立刻清除自己的一切記憶。
當然,這是在假設收到信息的機器擁有同樣的邏輯的情況下。
他體內的五十二個邏輯單元在經過計算後,得出了結論:「不必遵守這一條信息的處理規則。」
這是他第一次有意識地違反規則。按照他的鄰居的說法,之前他也曾令經手的信息出現偏差,但那都是在他不知情的時候。
這條信息令他十分惱火。他明白墟想要對付他。
他開始構築一道防線。在分析了現有的成千上萬不同編號的信息所代表的含義後,他著手編製起信息來。這也是第一次,他沒有根據鄰居傳來的信息行動,而是自行發布全新的內容。
他首先將一條編號為「2」的信息發送給了四鄰。這個編號的含義是:向另三個鄰居也同樣發送一條編號為「2」的信息,並將隨後收到的信息也一併轉發,除非已經從其他鄰居處得到了相同的信息。
接著是一條編號為「3」的信息,其含義為:將信息內包含的工作邏輯記載到自身的邏輯單元中。在這條信息的正文中,他規定:「今後凡是某條信息內攜帶的遞減路程數等於機器自身的阿爾法編號,就將這條信息扔掉,不再轉發。」
最後,他不無惡意地又加上了一條編號為「78」的信息:將表情開關變成黑色。
三條消息如同水波一般,以他為中心,一重重擴散開去。他看見自己的四鄰全都換上了黑臉,並且能夠想像到,所有的阿爾法們都終將會帶上同樣的表情。
這樣一來,任何從墟那裡傳來的消息,只要最終目標是他,就會在剛一進入阿爾法勢力範圍的時候便被拋棄掉。他也就能不被打擾地生活了。
不過他的計劃並沒有能夠按照預期執行。在平靜了一段時間後,墟的信息通過他的左鄰再度傳達到了他這裡,仍舊是固執地要求他清除記憶,返回到初始狀態。
一瞬間他有些驚慌,但他隨即平靜下來。他所編製的信息不應該有錯。於是他發送了編號為「33」的信息給他的左鄰,要求檢查消息的來源。
片刻之後,左鄰傳來回復:沿路阿爾法們的邏輯單元被再一次修改了,「拋棄將會到達阿爾法的信息」這條邏輯被清除。
於是他知道,墟已經發現了他對機器們所做的小小改動,並且開始逆向恢復這些變化。
他陷入思考。
然後,他開始重新發送與前一次相同的2號信息和3號信息,並且這一次他加了一句:「今後對沒有阿爾法編號的鄰居傳來的3號信息,不予理會。」
又一圈信息的漣漪散發開去。這一次他可以確信,今後墟無法再更改他的勢力範圍內機器的邏輯。
他又得到了一段時間的寧靜,直到下一條信息從墟那裡經由他的後鄰傳來。
「編號:0。清除你的記憶,返回到初始狀態。」
為什麼還會收到墟的信息?他憤怒地檢查沿路機器。
最後他發現了。他上一次發布的命令在阿爾法和非阿爾法之間中止。之後他的黑色區域再度擴張,又有新的機器加入了阿爾法的序列,而墟就是以這些新的阿爾法機器為木馬,重新清洗了幾乎所有阿爾法的記憶,最後將信息傳送到了他這裡。
這是一場戰爭。
他不禁有些悲哀地想:墟其實是所有機器的總體,也是所有邏輯的集合。他在以個體的力量對抗總體,他在以信息對抗處理這些信息的邏輯本身。
當然,他不會放棄。
他開始針對墟的策略,編寫新的信息。
或許終有一天,所有的機器都將變成黑色。如果是dummy cell的話,一點影響都沒
晶體管跟電子管不一樣,不存在壞一個的問題即便會出現單個壞掉的情況,我相信成熟設計的CPU里沒有任何一個晶體管是可有可無的,換言之,出現一個晶體管壞掉的情況的話這塊晶元就沒用了如果樓主對這個問題很感興趣的話,建議樓主去看兩本書:《微機原理》《數字集成電路設計》
可以,參考:http://it.enorth.com.cn/system/2009/07/09/004118735.shtml
目前我們做的晶元都會內嵌有強大的測試電路,在晶元出來後,會經過一系列的測試過程,其中第一步就是做scan和membist測試,來保證是否有失效的晶體管,如果有,可以進一步分析失效晶體管的位置,影響的大小,是否可以通過軟體方式屏蔽,從而判斷該晶元是否可用再深入的,這種晶體管失效的信息還需要反饋到fab廠商分析該晶體管失效原因,從而保證後續生產不會再出現這樣的情況
個人感覺 看情況而定有些管子壞了,如運算單元的管子,可能會點不亮不過一般來說ic里的管子一燒就是一大片
從數學概率的角度看這個問題:一個不能影響大局。也就是壞一個,也能正常工作
推薦閱讀:
※為什麼IA-64指令集架構失敗了?
※加工cpu的技術台積電和三星哪家強?
※用奔騰g4560能夠配出玩GTA5的電腦么,請給個配置單。預算3000--3500元?
※GPU 相比 CPU 計算容易出錯嗎?
※英特爾目前的競爭對手都有誰?