軟件工程師們一直非常依賴摩爾定律來提高半導(dǎo)體的處理能力,但不斷增加的MIPS現(xiàn)在已經(jīng)接近尾聲。半導(dǎo)體工業(yè)面臨什么問題,軟件工程師為什么不能依賴于減少指令周期,軟件應(yīng)該如何適應(yīng)計(jì)算機(jī)體系結(jié)構(gòu)的變化?
為什么摩爾定律會(huì)結(jié)束?
自從第一個(gè)晶體管問世以來,每?jī)赡暝谝粋€(gè)芯片上增加一倍晶體管數(shù)量的能力基本上決定了電子技術(shù)的能力。這種效應(yīng)被稱為摩爾定律,它極大地成就了CPU行業(yè),每次CPU迭代都包含更多的晶體管,從而提高了CPU的性能。同時(shí),還觀察到另一個(gè)影響:隨著半導(dǎo)體技術(shù)的改進(jìn),CPU時(shí)鐘頻率也提高了。時(shí)鐘速率的提高對(duì)于每秒提供指令是必不可少的,正是這種影響使軟件得到了重大改進(jìn)。
然而,縮小晶體管尺寸正變得越來越困難,而且很快就幾乎不可能了。當(dāng)這種情況發(fā)生時(shí),期望晶體管密度增加以提供更高性能的設(shè)計(jì)人員將面臨困難,并將不得不尋找提高性能的替代方法。但是,當(dāng)前的半導(dǎo)體技術(shù)面臨的第二個(gè)問題是,它已經(jīng)以最快的速度運(yùn)行。當(dāng)CPU的頻率從100MHz增加到200MHz時(shí),每秒可執(zhí)行的指令數(shù)加倍。每秒執(zhí)行兩倍指令的能力允許CPU同時(shí)運(yùn)行兩個(gè)相同的任務(wù),或者一個(gè)任務(wù)的速度提高一倍,從而提高性能。然而,在過去的十年里,消費(fèi)者的CPU速度一直未能突破5GHz的界限,只有使用先進(jìn)的液氮冷卻系統(tǒng)才能實(shí)現(xiàn)8GHz。因此,計(jì)算機(jī)性能的提高來自于其他方法,如集成多核、加速內(nèi)存?zhèn)鬏敗④浖剔D(zhuǎn)移到專門的硬件加速器中。
隨著時(shí)間的推移,軟件是如何改進(jìn)的?
隨著時(shí)間的推移,軟件在提供更好的特性和功能(如圖形渲染)方面有了很大的改進(jìn),但軟件主要依賴于對(duì)硬件的改進(jìn)。例如,求解復(fù)雜矩陣計(jì)算的能力一直是眾所周知的,而且從第一臺(tái)計(jì)算機(jī)開始,用軟件編寫這種計(jì)算方法是可行的。然而,硬件(如硬件乘法器和矩陣求解器)的改進(jìn)使現(xiàn)代應(yīng)用程序能夠快速解決這些問題,而不是更好的編寫軟件的方法。
當(dāng)考慮操作系統(tǒng)時(shí),令人驚訝的是,盡管一臺(tái)現(xiàn)代計(jì)算機(jī)的內(nèi)核數(shù)量是20年前的8倍,RAM是16倍,但啟動(dòng)Windows7的時(shí)間卻比WindowsXP長(zhǎng)。誠(chéng)然,這可能與現(xiàn)代操作系統(tǒng)加載大量進(jìn)程和后臺(tái)服務(wù)有關(guān)。更多的內(nèi)核允許更多的進(jìn)程同時(shí)運(yùn)行,但是更多的內(nèi)核不能更快地執(zhí)行單個(gè)指令。
因此,要說軟件已經(jīng)改進(jìn)是一種延伸,因?yàn)殡m然現(xiàn)在可以使用功能豐富的應(yīng)用程序,但這些功能中的大多數(shù)都是由性能更好的硬件造成的。
半導(dǎo)體硬件如何適應(yīng)這種變化?
由于減小晶體管的尺寸越來越少,半導(dǎo)體有多種途徑可供選擇。一種方法是制造3D芯片,允許晶體管的多層結(jié)構(gòu)增加晶體管的數(shù)量,從而增加核心的數(shù)量。然而,如前所述,僅僅增加更多的核心并不能改善每個(gè)周期的指令。
例如,軟件乘法涉及到重復(fù)地將兩個(gè)數(shù)字相加在一起,每次加法都要消耗一個(gè)指令周期。相反,硬件乘法器可以在一個(gè)時(shí)鐘周期內(nèi)將兩個(gè)數(shù)字相乘,從而提高性能。硬件加速器的另一個(gè)例子是加密加速器,它可以比軟件例程更快地執(zhí)行加密任務(wù),如AES和密鑰生成。
軟件需要做什么?
為了提高軟件性能,首要任務(wù)是充分利用硬件加速。在處理通用編譯器時(shí),這可能是一個(gè)問題,因?yàn)樗鼈兛赡苁褂密浖潭皇遣渴鹩布獭H欢词管浖こ處熓褂糜布铀倨鳎?dāng)試圖瞄準(zhǔn)盡可能多的平臺(tái)時(shí),也會(huì)導(dǎo)致問題;并非所有的cpu都支持相同的硬件加速功能。智能的軟件系統(tǒng)(如操作系統(tǒng))可以檢測(cè)到支持的硬件,從而根據(jù)機(jī)器調(diào)整其性能,但是用戶應(yīng)用程序很難將這些功能集成到其中。為微控制器編寫高效的代碼要容易得多,而且這樣的系統(tǒng)很少有特權(quán)機(jī)制。即使是這樣,程序員也很有可能訪問特權(quán)區(qū)域,從而最大限度地利用硬件加速器。
總的來說,為了讓軟件有助于對(duì)抗摩爾定律,軟件工程師和操作系統(tǒng)開發(fā)人員都需要重新思考軟件是如何運(yùn)行的。操作系統(tǒng)設(shè)計(jì)者首先需要明白,運(yùn)行100個(gè)后臺(tái)服務(wù)可能不是最好的,創(chuàng)建一個(gè)向后兼容DOS應(yīng)用程序的操作系統(tǒng)意味著底層架構(gòu)必須是古老的。軟件工程師可能需要開始考慮他們所用的語言,該語言是如何執(zhí)行/解釋的,以及他們是否可以使用硬件加速器。
責(zé)任編輯:tzh
-
芯片
+關(guān)注
關(guān)注
463文章
54010瀏覽量
466096 -
半導(dǎo)體
+關(guān)注
關(guān)注
339文章
30737瀏覽量
264156 -
cpu
+關(guān)注
關(guān)注
68文章
11279瀏覽量
225000 -
晶體管
+關(guān)注
關(guān)注
78文章
10396瀏覽量
147765
發(fā)布評(píng)論請(qǐng)先 登錄
【「芯片設(shè)計(jì)基石——EDA產(chǎn)業(yè)全景與未來展望」閱讀體驗(yàn)】--中國(guó)EDA的發(fā)展
【「芯片設(shè)計(jì)基石——EDA產(chǎn)業(yè)全景與未來展望」閱讀體驗(yàn)】+ 芯片“卡脖子”引發(fā)對(duì)EDA的重視
總規(guī)模達(dá)50億!元西安半導(dǎo)體產(chǎn)業(yè)鏈發(fā)展基金落地
2025年半導(dǎo)體產(chǎn)業(yè)的發(fā)展復(fù)盤與方向探索報(bào)告
大族數(shù)控亮相2025電子半導(dǎo)體產(chǎn)業(yè)創(chuàng)新發(fā)展大會(huì)
芯匯聯(lián)盟讓半導(dǎo)體產(chǎn)業(yè)鏈活起來!# 半導(dǎo)體
【「AI芯片:科技探索與AGI愿景」閱讀體驗(yàn)】+半導(dǎo)體芯片產(chǎn)業(yè)的前沿技術(shù)
自主創(chuàng)新賦能半導(dǎo)體封裝產(chǎn)業(yè)——江蘇拓能半導(dǎo)體科技有限公司與 “半導(dǎo)體封裝結(jié)構(gòu)設(shè)計(jì)軟件” 的突破之路
半導(dǎo)體產(chǎn)業(yè)的崛起力量
左藍(lán)微電子亮相第三屆特色工藝半導(dǎo)體產(chǎn)業(yè)發(fā)展常州大會(huì)
我國(guó)為什么要發(fā)展半導(dǎo)體全產(chǎn)業(yè)鏈
半導(dǎo)體產(chǎn)業(yè)發(fā)展正面臨什么樣的問題?
評(píng)論