新聞中心

ARM的BUS Matrix的作用

作者: 時間:2016-11-21 來源:網(wǎng)絡(luò) 收藏
ARMBUSMatrix就是多主(Core,DMA等),多從(內(nèi)部RAM,APB,外部總線等)的交聯(lián)和仲裁。目的是為了提高不同主機訪問不同外設(shè)情況下的帶寬,另外一個就是簡化BusMaster的協(xié)議設(shè)計。


比如,DMA把片內(nèi)RAM的數(shù)據(jù)搬運到APB的外設(shè),如串行口。同時Core從外部總線,SDRAM取指令。如果單一總線,那么Core和DMA控制器就需要先仲裁總線控制權(quán),然后才能訪問對應(yīng)的外設(shè),此時單一總線的帶寬不一定夠。如果用交聯(lián)矩陣,那么Core可以直接訪問SDRAM,同時DMA訪問APB外設(shè)。

如果沒有用到多個BUSMaster,典型如DMA,LCD控制器等都沒有用到,具體看芯片,那么Matrix不會有什么性能提升;當(dāng)然,如果用到了多個Slave,可能會有少量的性能損失,切換總線節(jié)點可能需要比直接仲裁更多的時間;(仲裁完成-傳輸數(shù)據(jù)vs仲裁完成-切換/保持總線節(jié)點-傳輸數(shù)據(jù))
如果只用了一個Slave,比如Core,DMA,LCD都是只訪問外部總線的SDRAM,實質(zhì)上就是多主單從結(jié)構(gòu),效率或許會下降。至少看ATmel的手冊,切換連接節(jié)點好像需要一個MCK,單總線仲裁,不一定會需要這一個周期。
多主多從的應(yīng)用才會得到較為明顯的好處。


本文引用地址:http://butianyuan.cn/article/201611/319322.htm


關(guān)鍵詞: ARMBUSMatri

評論


技術(shù)專區(qū)

關(guān)閉