硅晶片融合技術(shù)助力 SoC FPGA設(shè)計(jì)架構(gòu)脫穎而出(二)
現(xiàn)場(chǎng)可編程門陣列(FPGA)是系統(tǒng)設(shè)計(jì)人員的第三種方案(圖1)。在很多方法中,FPGA一直是以軟體為中心採(cǎi)用CPU架構(gòu)的方法,與以硬體為中心的ASIC方法之間的一種做法。在FPGA中實(shí)現(xiàn)的演算法,并不像軟體那么容易進(jìn)行修改,但是修改FPGA配置要比投入生產(chǎn)新版ASIC容易得多,即使這種修改只是在幾個(gè)金屬層上。
圖1 現(xiàn)場(chǎng)可編程門陣列發(fā)展藍(lán)圖
相反地,與在軟體中運(yùn)行任務(wù)相比,在FPGA中運(yùn)行相同的任務(wù)會(huì)非???,而且功率消耗也很低。但是FPGA通常要比相等價(jià)格的ASIC速度慢,功能效率也要低一些。
因此,當(dāng)一種僅採(cǎi)用軟體的解決方案無(wú)法滿足速度和功率消耗要求,無(wú)法找到能夠突出產(chǎn)品優(yōu)勢(shì)的ASSP,或者使用ASIC不能滿足預(yù)算要求,達(dá)不到預(yù)期的產(chǎn)量,無(wú)法支援往后的系統(tǒng)改動(dòng)時(shí),系統(tǒng)設(shè)計(jì)人員會(huì)轉(zhuǎn)向採(cǎi)用FPGA。對(duì)于FPGA供應(yīng)商,這種情況經(jīng)常出現(xiàn),在最近幾年,F(xiàn)PGA的銷售要比其替代方案好得多。
在監(jiān)控實(shí)例中,設(shè)計(jì)人員可以結(jié)合使用運(yùn)行系統(tǒng)軟體的工業(yè)標(biāo)準(zhǔn)微處理器,以及實(shí)現(xiàn)商用硅智財(cái)(IP)進(jìn)行標(biāo)準(zhǔn)影像處理和訂製設(shè)計(jì)DSP管線的FPGA。這樣一來(lái),F(xiàn)PGA中的設(shè)計(jì)在功能模組層級(jí)上類似于ASIC,而在閘級(jí)實(shí)現(xiàn)起來(lái)卻是完全不同。
針對(duì)任務(wù)選擇最佳實(shí)現(xiàn)方法
在理想情況下,系統(tǒng)開發(fā)人員不必在多種方法上進(jìn)行選擇。開發(fā)人員可以針對(duì)每個(gè)任務(wù)來(lái)選擇最佳實(shí)現(xiàn)方法??梢栽谙鄳?yīng)的CPU軟體中實(shí)現(xiàn)很少改變而且不關(guān)鍵的任務(wù)。透過(guò)標(biāo)準(zhǔn)定義性能和功率消耗非常關(guān)鍵的任務(wù),如此一來(lái),這些任務(wù)不會(huì)改變,成為固定硬體。而有可能改變并且需要硬體支援的任務(wù),則在FPGA可程式設(shè)計(jì)邏輯架構(gòu)內(nèi)實(shí)現(xiàn)。
在過(guò)去的幾個(gè)硅晶片製程世代中,這實(shí)際上是常用的方法。那時(shí)的整合度較低,微處理器、加速器、復(fù)雜介面控制器及FPGA都是獨(dú)立的晶片。但是在90奈米(nm)製程世代,除了FPGA架構(gòu)外,系統(tǒng)單晶片(SoC)包括這些所有功能,而且由SoC設(shè)計(jì)人員而不是系統(tǒng)設(shè)計(jì)人員來(lái)確定大部分實(shí)現(xiàn)方法。系統(tǒng)設(shè)計(jì)人員選擇最合適的SoC,編寫自己的軟體,實(shí)現(xiàn)FPGA與SoC靈活的介面,進(jìn)而突出產(chǎn)品優(yōu)勢(shì)。
現(xiàn)在,情況又發(fā)生了變化。晶片開發(fā)人員能夠使用大量的電晶體,支援FPGA的硅晶片融合。功能強(qiáng)大的微控制器增加專用硬體,因此它們看起來(lái)像是ASIC SoC。ASIC和ASSP能夠含有功能強(qiáng)大的32位元CPU,因此看起來(lái)像高階微控制器。新的SoC FPGA系列同時(shí)含有多核心CPU和專用硬體模組,契合實(shí)際需求,可支援系統(tǒng)設(shè)計(jì)人員根據(jù)不同的任務(wù)要求來(lái)選擇軟體、專用硬體或是可程式設(shè)計(jì)邏輯。
設(shè)計(jì)人員可以採(cǎi)用這類融合晶片,在一對(duì)功能強(qiáng)大的CPU核心上實(shí)現(xiàn)系統(tǒng)軟體及影像處理演算法的多執(zhí)行緒部分。他們可以在DSP硬式核心和可程式設(shè)計(jì)架構(gòu)上實(shí)現(xiàn)其他演算法,這些都是在一個(gè)晶片上實(shí)現(xiàn)。
日益攀升的開發(fā)成本,使得ASIC的應(yīng)用領(lǐng)域越來(lái)越少,而硅晶片融合發(fā)展趨勢(shì)可支援實(shí)現(xiàn)叁種系統(tǒng)層級(jí)解決方案。微控制器、ASSP和FPGA變得幾乎是一樣的,但有一個(gè)重要的不同點(diǎn)。出于技術(shù)和智慧財(cái)產(chǎn)權(quán)法律的考慮,只有FPGA能夠?qū)崿F(xiàn)最先進(jìn)的可程式設(shè)計(jì)邏輯架構(gòu)。因此只有FPGA支援系統(tǒng)設(shè)計(jì)人員可在硬體層級(jí)實(shí)現(xiàn)其突出產(chǎn)品優(yōu)勢(shì)的策略。
硅晶片融合帶來(lái)各種可能
硅晶片融合將為今后幾年的系統(tǒng)開發(fā)確定方向。一方面,將看到高階微控制器和ASSP成為系統(tǒng)的硬體基礎(chǔ),這些系統(tǒng)硬體將實(shí)現(xiàn)商品化,在市場(chǎng)上系統(tǒng)產(chǎn)品之間的不同體現(xiàn)在軟體上。另一方面,也會(huì)看到突出硬體優(yōu)勢(shì)、採(cǎi)用FPGA架構(gòu)的系統(tǒng)脫穎而出。
這種趨勢(shì)會(huì)進(jìn)一步加速,塬因是兩種新出現(xiàn)的技術(shù):叁維(3D)IC和異質(zhì)結(jié)構(gòu)程式設(shè)計(jì)系統(tǒng)。3D IC技術(shù)支援完全不同技術(shù)的IC整合,例如FPGA、微處理器、動(dòng)態(tài)隨機(jī)存取記憶體(DRAM)和射頻(RF)等,在一個(gè)堆疊中實(shí)現(xiàn)這些技術(shù),沒(méi)有獨(dú)立IC的晶片間時(shí)序和電源成本問(wèn)題。此一趨勢(shì)的一個(gè)早期例子是英特爾(Intel)凌動(dòng)(Atom)E6x5C系列,其整合Atom CPU和Altera FPGA。Atom為軟體提供業(yè)界標(biāo)準(zhǔn)架構(gòu),而FPGA能夠建立專用加速器和介面控制器。
E6x5C系列還滿足另一種新出現(xiàn)的技術(shù)的需求--異質(zhì)結(jié)構(gòu)程式設(shè)計(jì)環(huán)境。理想情況下,系統(tǒng)開發(fā)人員只須要編寫并除錯(cuò)一個(gè)CPU的軟體就可以開始設(shè)計(jì)。然后,開發(fā)平臺(tái)會(huì)幫助他們找到關(guān)鍵程式碼片段,在多個(gè)CPU核心上分配任務(wù),共用快取記憶體,為關(guān)鍵程式碼核心建立硬體加速器。透過(guò)這種方法,設(shè)計(jì)團(tuán)隊(duì)能夠細(xì)緻地調(diào)整設(shè)計(jì),直至其滿足時(shí)序和功率消耗要求。
這種開發(fā)環(huán)境的一個(gè)例子是Altera現(xiàn)在正在進(jìn)行的OpenCL-FPGA計(jì)畫(圖2)。其目的是提供單一的環(huán)境,讓系統(tǒng)開發(fā)人員能夠在其中採(cǎi)用C語(yǔ)言開發(fā)程式,隔離需要大量運(yùn)算的核心,產(chǎn)生平行硬體引擎來(lái)加速核心,整合最終的硬體軟體系統(tǒng)。
圖2 OpenCL-FPGA計(jì)畫
在提高硅晶片整合度需求的推動(dòng)下,融合功能逐漸將系統(tǒng)所有主要電子模組整合到一個(gè)封裝內(nèi),讓系統(tǒng)開發(fā)人員能夠集中精力來(lái)突顯其最終產(chǎn)品的優(yōu)勢(shì)。FPGA表面上看起來(lái)越來(lái)越像ASSP和微控制器,而實(shí)際上增強(qiáng)系統(tǒng)開發(fā)人員突出硬體優(yōu)勢(shì)的能力。新出現(xiàn)的3D IC技術(shù)及異質(zhì)結(jié)構(gòu)開發(fā)環(huán)境將加速FPGA系統(tǒng)級(jí)IC從傳統(tǒng)微電子世界中脫穎而出。
圖3 硅晶片融合將為FPGA開創(chuàng)出更多應(yīng)用可能。
評(píng)論