<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用MIPS多線(xiàn)程處理器優(yōu)化SoC設(shè)計(jì)

          利用MIPS多線(xiàn)程處理器優(yōu)化SoC設(shè)計(jì)

          作者: 時(shí)間:2011-01-20 來(lái)源:網(wǎng)絡(luò) 收藏

          多線(xiàn)程是一種基于硬件或軟件的處理技術(shù),它的首要目標(biāo)是計(jì)算型工作中利用并發(fā)來(lái)提高性能。多線(xiàn)程也可以用于區(qū)別各種任務(wù),以便可以將優(yōu)先權(quán)分配給更多時(shí)間敏感的流量,如語(yǔ)音、視頻或關(guān)鍵數(shù)據(jù)。而公認(rèn)的基于軟件的多線(xiàn)程技術(shù),如任務(wù)切換和基于軟件的線(xiàn)程調(diào)度已經(jīng)存在了相當(dāng)一段時(shí)間,很少有人知道基于硬件的多線(xiàn)程的歷史?;谟布亩嗑€(xiàn)程技術(shù)其實(shí)已經(jīng)存在了相當(dāng)長(zhǎng)一段時(shí)間,其實(shí)現(xiàn)可以追溯到20世紀(jì)60年代的CDC6600。在CDC6600電腦中,10個(gè)硬件線(xiàn)程被用來(lái)保證從I/O處理器到約16個(gè)外圍設(shè)備的響應(yīng)時(shí)間。這個(gè)例子的處理器運(yùn)行速度遠(yuǎn)遠(yuǎn)超過(guò)了許多I/O設(shè)備,是一個(gè)充分利用多線(xiàn)程優(yōu)勢(shì)的典型應(yīng)用,因?yàn)榭臻e處理時(shí)間可以被從線(xiàn)程到線(xiàn)程切換的有益工作所取代。在70年代,Denelcor HEP機(jī)是在CPU內(nèi),而不是在I/O實(shí)際執(zhí)行線(xiàn)程切換。類(lèi)似上例,最終結(jié)果是每個(gè)周期的指令(IPC)有了顯著改善。之后10年推出的其他幾個(gè)系統(tǒng)和學(xué)術(shù)研究進(jìn)一步展示了硬件多線(xiàn)程的好處。

          本文引用地址:http://www.ex-cimer.com/article/151058.htm

            今天的市場(chǎng)上有許多多線(xiàn)程處理器。英特爾公司已經(jīng)利用其超線(xiàn)程技術(shù)將該技術(shù)引入高端計(jì)算應(yīng)用領(lǐng)域。此外,其他許多SoC制造商,如Broadcom、Lantiq、Mobileye、NetLogic Microsystems、PMC-Sierra、Ralink Technology和Sigma Designs也交付了上百萬(wàn)個(gè)采用多線(xiàn)程處理器的產(chǎn)品。許多這樣的SoC都采用了基于業(yè)界標(biāo)準(zhǔn)MIPS架構(gòu)的多線(xiàn)程MIPS32 34K系列內(nèi)核或多線(xiàn)程、多處理MIPS32 1004K一致處理系統(tǒng)(CPS)。目前硬件多線(xiàn)程已經(jīng)成為主流應(yīng)用,并越來(lái)越被視為SoC設(shè)計(jì)中實(shí)現(xiàn)最佳性能的有效方法。

            用多線(xiàn)程提高流水線(xiàn)利用率

            如前所述,增加一個(gè)給定單線(xiàn)程處理器的IPC數(shù)量是一個(gè)主要目標(biāo)。通常情況下,即使是非常高性能的處理器也有大量時(shí)間閑置,目的是等待數(shù)據(jù)到達(dá)。常見(jiàn)的情況是,帶有共享存儲(chǔ)系統(tǒng)先進(jìn)處理器需花50%的時(shí)間等待數(shù)據(jù)在緩存未中(cache miss)后返回。此數(shù)據(jù)檢索的等待時(shí)間可能會(huì)持續(xù)幾十個(gè)周期,在極端情況下甚至是數(shù)百個(gè)周期。無(wú)論數(shù)量多少,處理器在此期間做的都是無(wú)效工作。多線(xiàn)程處理器可以在多個(gè)線(xiàn)程之間切換以利用這些閑置的周期。這些周期現(xiàn)在可以用來(lái)自其他線(xiàn)程的有用指令填滿(mǎn),從而避免未使用的周期白白浪費(fèi)。這最終將獲得更好的流水線(xiàn)利用率并提升系統(tǒng)的吞吐量。

            確保線(xiàn)程切換效率的一個(gè)關(guān)鍵環(huán)節(jié)是怎樣進(jìn)行線(xiàn)程相關(guān)信息或語(yǔ)境的管理。當(dāng)映射到一個(gè)線(xiàn)程時(shí),每個(gè)任務(wù)都有相關(guān)的上下文信息,如程序計(jì)數(shù)器和寄存器信息子集,這些信息是以硬件加載和更新的。在單線(xiàn)程處理器中,由于處理器在線(xiàn)程之間切換,這些上下文必須導(dǎo)入(swapped in)或?qū)С?。?dāng)在線(xiàn)程之間變換時(shí),需要有與保存和恢復(fù)操作有關(guān)的額外處理。這種負(fù)擔(dān)可能會(huì)變得非常繁重,尤其是采用高語(yǔ)境(high context)切換。多線(xiàn)程處理器支持由每個(gè)硬件支持的線(xiàn)程的完整上下文存儲(chǔ),無(wú)需保存和恢復(fù)操作。這種機(jī)制支持切換線(xiàn)程或上下文的零周期開(kāi)銷(xiāo)。

            圖1顯示了多線(xiàn)程是如何提高流水線(xiàn)利用率的基本機(jī)制。在這種情況下,在不同的時(shí)間點(diǎn)有三個(gè)線(xiàn)程出現(xiàn)了緩存未中。在這些線(xiàn)程暫停(stall)期間,其他線(xiàn)程在同一條流水線(xiàn)上做著有用的工作,從而增加了IPC。

            

          《電子系統(tǒng)設(shè)計(jì)》

            MIPS多線(xiàn)程技術(shù)

            MIPS科技的多線(xiàn)程技術(shù)基于兩個(gè)層次框架,涉及虛擬處理單元(VPE)和線(xiàn)程上下文(TC),支持每個(gè)周期的線(xiàn)程切換。每個(gè)多線(xiàn)程內(nèi)核多達(dá)可支持兩個(gè)VPE,它們共享其他硬件資源中的一條流水線(xiàn)。不過(guò),由于每個(gè)VPE可以有自己針對(duì)高速緩存的轉(zhuǎn)換后備緩沖器(Translation Look-aside Buffer,TLB),因此它們都可作為針對(duì)一個(gè)SMP Linux操作系統(tǒng)的兩個(gè)獨(dú)立處理器出現(xiàn)。對(duì)于更細(xì)粒度的線(xiàn)程處理應(yīng)用,每個(gè)VPE可以支持多個(gè)TC。這些TC共享一個(gè)執(zhí)行單元,但各有各的程序計(jì)數(shù)器和內(nèi)核寄存器文件,以便每個(gè)TC都可以處理來(lái)自軟件的線(xiàn)程。34K內(nèi)核多達(dá)可以支持分配在兩個(gè)VPE上的九個(gè)TC,在運(yùn)行時(shí)進(jìn)行優(yōu)化和分區(qū)。利用最小的芯片面積可執(zhí)行MIPS多線(xiàn)程功能。



          關(guān)鍵詞:

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();