<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 多核處理器設計的九大關(guān)鍵問(wèn)題

多核處理器設計的九大關(guān)鍵問(wèn)題

作者: 時(shí)間:2013-10-15 來(lái)源:網(wǎng)絡(luò ) 收藏
CMP和SMT一樣,致力于發(fā)掘計算的粗粒度并行性。CMP可以看做是隨著(zhù)大規模集成電路技術(shù)的發(fā)展,在芯片容量足夠大時(shí),就可以將大規模并行處理機結構中的SMP(對稱(chēng)多處理機)或DSM(分布共享處理機)節點(diǎn)集成到同一芯片內,各個(gè)處理器并行執行不同的線(xiàn)程或進(jìn)程。在基于SMP結構的單芯片多處理機中,處理器之間通過(guò)片外Cache或者是片外的共享存儲器來(lái)進(jìn)行通信。而基于DSM結構的單芯片多處理器中,處理器間通過(guò)連接分布式存儲器的片內高速交叉開(kāi)關(guān)網(wǎng)絡(luò )進(jìn)行通信。

由于SMP和DSM已經(jīng)是非常成熟的技術(shù)了,CMP結構設計比較容易,只是后端設計和芯片制造工藝的要求較高而已。正因為這樣,CMP成為了最先被應用于商用CPU的“未來(lái)”高性能處理器結構。

雖然多核能利用集成度提高帶來(lái)的諸多好處,讓芯片的性能成倍地增加,但很明顯的是原來(lái)系統級的一些問(wèn)題便引入到了處理器內部。

1 核結構研究: 同構還是異構

CMP的構成分成同構和異構兩類(lèi),同構是指內部核的結構是相同的,而異構是指內部的核結構是不同的。為此,面對不同的應用研究核結構的實(shí)現對未來(lái)微處理器的性能至關(guān)重要。核本身的結構,關(guān)系到整個(gè)芯片的面積、功耗和性能。怎樣繼承和發(fā)展傳統處理器的成果,直接影響多核的性能和實(shí)現周期。同時(shí),根據Amdahl定理,程序的加速比決定于串行部分的性能,所以,從理論上來(lái)看似乎異構微處理器的結構具有更好的性能。

核所用的指令系統對系統的實(shí)現也是很重要的,采用多核之間采用相同的指令系統還是不同的指令系統,能否運行操作系統等,也將是研究的內容之一。

2 程序c

設計的首要問(wèn)題是選擇程序執行模型。程序執行模型的適用性決定能否以最低的代價(jià)提供最高的性能。程序執行模型是編譯器設計人員與系統實(shí)現人員之間的接口。編譯器設計人員決定如何將一種高級語(yǔ)言程序按一種程序執行模型轉換成一種目標機器語(yǔ)言程序; 系統實(shí)現人員則決定該程序執行模型在具體目標機器上的有效實(shí)現。當目標機器是多核體系結構時(shí),產(chǎn)生的問(wèn)題是: 多核體系結構如何支持重要的程序執行模型?是否有其他的程序執行模型更適于多核的體系結構?這些程序執行模型能多大程度上滿(mǎn)足應用的需要并為用戶(hù)所接受?

3 Cache設計: 多級Cache設計與一致性問(wèn)題

處理器和主存間的速度差距對CMP來(lái)說(shuō)是個(gè)突出的矛盾,因此必須使用多級Cache來(lái)緩解。目前有共享一級Cache的CMP、共享二級Cache的CMP以及共享主存的CMP。通常,CMP采用共享二級Cache的CMP結構,即每個(gè)處理器核心擁有私有的一級Cache,且所有處理器核心共享二級Cache。

Cache自身的體系結構設計也直接關(guān)系到系統整體性能。但是在CMP結構中,共享Cache或獨有Cache孰優(yōu)孰劣、需不需要在一塊芯片上建立多級Cache,以及建立幾級Cache等等,由于對整個(gè)芯片的尺寸、功耗、布局、性能以及運行效率等都有很大的影響,因而這些都是需要認真研究和探討的問(wèn)題。

另一方面,多級Cache又引發(fā)一致性問(wèn)題。采用何種Cache一致性模型和機制都將對CMP整體性能產(chǎn)生重要影響。在傳統多處理器系統結構中廣泛采用的Cache一致性模型有: 順序一致性模型、弱一致性模型、釋放一致性模型等。與之相關(guān)的Cache一致性機制主要有總線(xiàn)的偵聽(tīng)協(xié)議和基于目錄的目錄協(xié)議。目前的CMP系統大多采用基于總線(xiàn)的偵聽(tīng)協(xié)議。

4 核間

CMP處理器的各CPU核心執行的程序之間有時(shí)需要進(jìn)行數據共享與同步,因此其硬件結構必須支持核間通信。高效的通信機制是CMP處理器高性能的重要保障,目前比較主流的片上高效通信機制有兩種,一種是基于總線(xiàn)共享的Cache結構,一種是基于片上的互連結構。

總線(xiàn)共享Cache結構是指每個(gè)CPU內核擁有共享的二級或三級Cache,用于保存比較常用的數據,并通過(guò)連接核心的總線(xiàn)進(jìn)行通信。這種系統的優(yōu)點(diǎn)是結構簡(jiǎn)單,通信速度高,缺點(diǎn)是基于總線(xiàn)的結構可擴展性較差。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>