面向對稱(chēng)體系結構的FPGA仿真模型研究
隨著(zhù)元器件制造工藝的不斷進(jìn)步,單片上可集成的晶體管數急劇增加。納米工藝將使單芯片中晶體管密度達到每平方厘米包含百億至千億。2010年已出現集成度超過(guò)10億支晶體管的高性能CPU(Intel的Polaris),2020年將達到70億。因此,單片多核、眾核等體系結構以其豐富的計算資源,且處理器核或計算簇的數量根據應用計算量和并行度的需求可擴展的特性,成為體系結構研究領(lǐng)域的一個(gè)重要方向。
在芯片設計中,需要花費極大的人力和物力用于測試和驗證,而其中還有很大一部分測試工作必須等到芯片樣片出產(chǎn)后才能進(jìn)行,這嚴重影響了芯片的開(kāi)發(fā)周期和設計成本。軟件模擬器可以對各種規模的處理器進(jìn)行時(shí)鐘精確模擬,但其模擬精度受限于建模的精度,且隨著(zhù)系統規模的增大和建模精度的提高,軟件模擬的時(shí)間急劇增加直至不可接受。FPGA仿真為芯片設計的測試和驗證提供了一個(gè)很好的解決方案,它具有建造運行和成品幾乎一樣快的工作原型硬件的能力,同時(shí)又具備可編程和快速可重構的靈活性,能夠更加精準地模擬系統仿存、I/O等行為,因此FPGA仿真能極大降低芯片研發(fā)的固有風(fēng)險,縮短產(chǎn)品的開(kāi)發(fā)周期。將被仿真的體系結構稱(chēng)為目標系統,將由FPGA構成的仿真平臺則稱(chēng)為仿真系統。在仿真系統的設計中,其仿真規模嚴重受限于FPGA芯片的容量,在面向多核、眾核這類(lèi)具有高擴展性的體系結構仿真時(shí),問(wèn)題更為明顯。若采用更大容量的FPGA或利用多片FPGA仿真,將面臨FPGA開(kāi)發(fā)板重設計和多片FPGA互連通信等問(wèn)題。隨著(zhù)研究的深入,系統會(huì )越來(lái)越復雜,這會(huì )造成研究成本和設計復雜度越來(lái)越高。因此,如何最大化片上資源的利用率,增大FPGA的仿真規模成為處理器設計和體系結構研究中的一個(gè)重要問(wèn)題。
本文提出了一種面向對稱(chēng)體系結構的FPGA仿真模型,該模型的核心設計思想是:分時(shí)復用仿真系統中的一個(gè)單元來(lái)仿真目標系統中多個(gè)對稱(chēng)單元的行為,從而利用較少的硬件資源完成系統仿真,提高FPGA的利用率。
1 對稱(chēng)多核體系結構FPGA仿真模型
對稱(chēng)多核如SMP(Symmetry Multi-Processor)體系結構中,通常包含多個(gè)對稱(chēng)的處理器核或計算核心,這里統稱(chēng)為計算核。計算核占據了多核體系結構的主要硬件開(kāi)銷(xiāo),且對稱(chēng)多核體系結構的硬件仿真平臺FPGA資源消耗隨計算核數目成線(xiàn)性增加。這里提出的對稱(chēng)多核體系結構FPGA仿真模型,解耦合計算核數目與系統硬件開(kāi)銷(xiāo)的線(xiàn)性關(guān)系,其核心設計思想是:在構建仿真系統時(shí),使用一個(gè)與目標系統中單個(gè)計算核等同的處理單元,稱(chēng)為虛擬計算單元VAU(Virtual Arithmetic Unit)代替所有的對稱(chēng)計算核,通過(guò)分時(shí)復用VAU實(shí)現一個(gè)計算單元虛擬多個(gè)計算核的行為。
圖l中的左圖是當前具有對稱(chēng)結構的多核體系結構模型抽象,n個(gè)對稱(chēng)的計算核通過(guò)特定的互連結構連接,其連接關(guān)系由目標處理器的工作模式?jīng)Q定;右圖是本文提出的仿真模型??梢钥闯?,仿真系統中采用一個(gè)VAU代替了目標系統中所有對稱(chēng)的處理單元PU。在對目標系統進(jìn)行仿真時(shí),計算頁(yè)控制器VAUC(VAU Controller)控制1個(gè)VAU分時(shí)復用的方式工作,虛擬多個(gè)PU并行執行。分時(shí)的粒度與處理單元之間的耦合度相關(guān)。虛擬計算單元將目標系統中并行執行模式轉變?yōu)榇袌绦械姆绞竭M(jìn)行仿真,以時(shí)間換取空間,減少系統中計算資源的消耗。BS(Backup Storage)用于存儲VAU虛擬各PU執行時(shí)的中間結果。
評論