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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > TMS320C6678存儲(chǔ)器訪問(wèn)性能 (下)

          TMS320C6678存儲(chǔ)器訪問(wèn)性能 (下)

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

            從上面的測(cè)試結(jié)果可以看出,多核同時(shí)訪問(wèn)相同DDR bank 中不同頁(yè)的性能比多核同時(shí)訪問(wèn)不同DDR bank 中不同頁(yè)的性能差很多,原因就是頁(yè)切換的額外開(kāi)銷(xiāo)。

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

            從上面的測(cè)試結(jié)果還可以看出,DDR 的帶寬 (1333 x 8 = 10666MB/s)對(duì)所有DSP 核同時(shí)訪問(wèn)來(lái)說(shuō)是不夠的,DSP 核的優(yōu)先級(jí)對(duì)它獲得的帶寬有明顯影響。當(dāng)優(yōu)先級(jí)相同時(shí),帶寬在多個(gè)核之間平均分配;而當(dāng)優(yōu)先級(jí)不同時(shí)(上表中第二列是每個(gè)主模塊的優(yōu)先級(jí)),優(yōu)先級(jí)低的核得到的帶寬比較小。

            為了防止低優(yōu)先級(jí)的主模塊被“餓死”,DDR 控制器提供了老請(qǐng)求優(yōu)先級(jí)臨時(shí)提高的功能。我們可以通過(guò)配置一個(gè)計(jì)數(shù)器,當(dāng)一個(gè)老的請(qǐng)求的等待時(shí)間超過(guò)這個(gè)計(jì)數(shù)值時(shí),它的優(yōu)先級(jí)會(huì)被臨時(shí)提高。如果沒(méi)有特殊說(shuō)明,本文所有測(cè)試中這個(gè)計(jì)數(shù)周期都被配置成4x16=64 個(gè)DDR3CLKOUT 時(shí)鐘周期。在64 個(gè)DDR3CLKOUT 時(shí)鐘周期內(nèi),可以傳輸64x2x8=1024 bytes。

            表11 是在1GHz C6678 EVM(64-bit 1333MTS DDR)上用不同的優(yōu)先級(jí)提升計(jì)數(shù)值測(cè)得的數(shù)據(jù)。表中第二列是每個(gè)主模塊的預(yù)設(shè)優(yōu)先級(jí)。

            

           

            

           

            表11 DDR 優(yōu)先級(jí)提升計(jì)數(shù)值的影響

            從上面的測(cè)試結(jié)果可以看出,優(yōu)先級(jí)提升計(jì)數(shù)值=0 實(shí)際上使得預(yù)設(shè)的優(yōu)先級(jí)不起作用。當(dāng)這個(gè)計(jì)數(shù)值越大是,預(yù)設(shè)的優(yōu)先級(jí)起的作用越大。所以,在實(shí)際應(yīng)用中,設(shè)計(jì)者需要根據(jù)應(yīng)用的需求來(lái)選擇一個(gè)合適的值。

            2.2.2 多個(gè)EDMA 共享DDR 的性能

            下面的表格列出了不同場(chǎng)景下多個(gè)EDMA TC 共享1GHz C6678 EVM 上64-bit 1333MTS DDR 的性能。

            

           

            

           

            

           

            表12 多個(gè)EDMA 共享DDR 的性能

            由于總共有10 個(gè)EDMA TC,而只有8 個(gè)DSP 核,在這些測(cè)試?yán)铮? 個(gè)TC 在DDR 和8 個(gè)核的LL2 之間傳輸數(shù)據(jù),另兩個(gè)TC 則在DDR 和SL2 之間傳輸數(shù)據(jù)。

            從上面的測(cè)試結(jié)果可以看出,DDR 的帶寬 (1333 x 8 = 10666MB/s)對(duì)所有EDMA 同時(shí)訪問(wèn)來(lái)說(shuō)是不夠的,EDMA TC 的優(yōu)先級(jí)對(duì)它獲得的帶寬有明顯影響。優(yōu)先級(jí)低的EDMA 傳輸?shù)玫降膸挶容^小。對(duì)負(fù)載很高的情況下,一些低優(yōu)先級(jí)的傳輸可能會(huì)被“餓死”,也就是說(shuō),得到的帶寬為0。

            根據(jù)Table 6中列出的不同EDMA TC 的區(qū)別,EDMACC1 TC1 和TC3,EDMACC2 TC1 和TC2在某些情況下獲得的帶寬會(huì)比其它TC 小,即使優(yōu)先級(jí)相同。

            從上面的測(cè)試結(jié)果還可以看出,多個(gè)DMA 同時(shí)訪問(wèn)相同DDR bank 中不同頁(yè)的性能比多個(gè)DMA同時(shí)訪問(wèn)不同DDR bank 中不同頁(yè)的性能差很多,原因就是頁(yè)切換的額外開(kāi)銷(xiāo)。當(dāng)DDR 負(fù)載加重時(shí)結(jié)果變得更差。最壞的情況下,頁(yè)切換的額外開(kāi)銷(xiāo)會(huì)占用整體傳輸時(shí)間的絕大部分,從而使總吞吐量急劇下降。

            頁(yè)切換的概率,也就是,多個(gè)主模塊訪問(wèn)相同DDR bank 的概率取決于同時(shí)訪問(wèn)的主模塊的個(gè)數(shù)和DDR bank 個(gè)數(shù)。例如,4 個(gè)DMA 隨機(jī)訪問(wèn)8 個(gè)bank 的DDR ,至少兩個(gè)TC 訪問(wèn)相同的bank 的概率是:

            

           

            表13 列出了理論上,多個(gè)主模塊訪問(wèn)相同bank 的概率:

            

           

            表13 多個(gè)主模塊訪問(wèn)相同bank 的概率

            為了減少DDR 頁(yè)切換次數(shù),如果有多個(gè)傳輸,有的要訪問(wèn)已經(jīng)打開(kāi)的頁(yè),有的要訪問(wèn)沒(méi)有打開(kāi)的頁(yè),C6678 的DDR 控制器一般情況下會(huì)讓對(duì)已經(jīng)打開(kāi)的頁(yè)的訪問(wèn)先執(zhí)行。

            3. 總結(jié)

            總的來(lái)說(shuō),DSP 核可以高效地訪問(wèn)內(nèi)部,而用DSP 核訪問(wèn)外部數(shù)據(jù)則不是有效利用資源的方式;IDMA 非常適用于DSP 核本地(L1D,L1P,LL2)內(nèi)連續(xù)數(shù)據(jù)塊的傳輸,但它不能訪問(wèn)共享存儲(chǔ)器(SL2, DDR);而外部存儲(chǔ)器的訪問(wèn)則應(yīng)盡量使用EDMA。 為了充分利用cache,DSP 核應(yīng)盡量連續(xù)訪問(wèn)。

            EDMA 的ACNT 越大,效率越高。

            SL2 有足夠的帶寬來(lái)支持所有核的同時(shí)訪問(wèn)。DDR 的帶寬對(duì)所有核同時(shí)訪問(wèn)來(lái)說(shuō)是不夠的,DSP核的優(yōu)先級(jí)對(duì)它獲得的帶寬有明顯影響。

            DDR 性能受頁(yè)切換的影響很大,為了減少DDR 頁(yè)切換應(yīng)該盡量每次訪問(wèn)大塊數(shù)據(jù)。

          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理



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

          關(guān)鍵詞: TMS320C6678 存儲(chǔ)器

          評(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); })();