當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]摘要:介紹了一種基于DMA控制器的SoC系統(tǒng)架構(gòu),解決因使用DMA控制器而導(dǎo)致的處理器異常響應(yīng)不能及時(shí)得到處理的問(wèn)題,使處理器更加快速地響應(yīng)異常請(qǐng)求,提高系統(tǒng)的響應(yīng)速度,使系統(tǒng)架構(gòu)更加適用于硬實(shí)時(shí)系統(tǒng)。 關(guān)鍵


摘要:介紹了一種基于DMA控制器的SoC系統(tǒng)架構(gòu),解決因使用DMA控制器而導(dǎo)致的處理器異常響應(yīng)不能及時(shí)得到處理的問(wèn)題,使處理器更加快速地響應(yīng)異常請(qǐng)求,提高系統(tǒng)的響應(yīng)速度,使系統(tǒng)架構(gòu)更加適用于硬實(shí)時(shí)系統(tǒng)。
關(guān)鍵詞:DMA控制器;AMBA總線;SoC系統(tǒng)架構(gòu)

引言
    隨著微電子技術(shù)的飛速發(fā)展,集成電路規(guī)模按照摩爾定律飛速提高,片上系統(tǒng)(System on Chip,SoC)技術(shù)成為超大規(guī)模集成電路的發(fā)展趨勢(shì)。SoC芯片性能的不斷提高、各模塊間的數(shù)據(jù)交換成為提高微處理器系統(tǒng)運(yùn)行速度的瓶頸。DMA(Direct Memory Access,直接存儲(chǔ)器存取)是一種快速傳送數(shù)據(jù)的機(jī)制。DMA控制器能夠有效替代微處理器的加載/存儲(chǔ)指令,顯著提高系統(tǒng)的并行能力。DMA是在存儲(chǔ)器與輸入/輸出設(shè)備間直接傳送數(shù)據(jù),是一種完全由硬件完成輸入/輸出操作的方式。數(shù)據(jù)傳遞可以從外設(shè)到內(nèi)存,從內(nèi)存到外設(shè)。但DMA控制器的引入
也引進(jìn)了影響系統(tǒng)響應(yīng)速度的因素。本文講述以包含單個(gè)AHB master接口的DMA控制器為基礎(chǔ)的SoC系統(tǒng)架構(gòu)藍(lán)本,分析存在的不足之處,并引入一種以新型DMA控制器為基礎(chǔ)的SoC系統(tǒng)架構(gòu)的設(shè)計(jì),解決提出的問(wèn)題。

1 對(duì)異步事件響應(yīng)速度
    系統(tǒng)實(shí)時(shí)性是指能在限定時(shí)間內(nèi)完成任務(wù),并對(duì)外部異步事件作出及時(shí)響應(yīng)。限定時(shí)間根據(jù)應(yīng)用的要求不同而變化。實(shí)時(shí)系統(tǒng)的實(shí)時(shí)性與使用的軟硬件平臺(tái)有關(guān)。嵌入式系統(tǒng)的中斷服務(wù)響應(yīng)時(shí)間是指從某一個(gè)中斷源發(fā)出中斷服務(wù)請(qǐng)求,到處理器響應(yīng)這個(gè)中斷源的中斷服務(wù)請(qǐng)
求,并開(kāi)始執(zhí)行這個(gè)中斷源的中斷服務(wù)程序所用的這一段時(shí)間。嵌入式操作系統(tǒng)中的進(jìn)程調(diào)度是靠中斷實(shí)現(xiàn)的,處理器對(duì)系統(tǒng)中或系統(tǒng)外發(fā)生的異步事件的響應(yīng)速度是決定系統(tǒng)響應(yīng)速度的關(guān)鍵因素。中斷響應(yīng)時(shí)間是一個(gè)非常重要的指標(biāo)。特別是在實(shí)時(shí)計(jì)算機(jī)系統(tǒng)中,中斷響應(yīng)時(shí)
間是整個(gè)計(jì)算機(jī)系統(tǒng)的一個(gè)關(guān)鍵性指標(biāo)。影響中斷服務(wù)響應(yīng)的因素有很多,如中斷源本身相對(duì)于其他中斷源的優(yōu)先級(jí)設(shè)置。在內(nèi)核不適合或不可能使用中斷技術(shù)期間,不能進(jìn)行中斷響應(yīng)。因此這段時(shí)間也相當(dāng)于一段中斷響應(yīng)延時(shí),DMA操作就是其中一個(gè)因素。因?yàn)镈MA傳輸也相當(dāng)于一種中斷,只不過(guò)它向處理器申請(qǐng)的是總線控制權(quán),而不是處理器本身。在DMA傳輸期間,由于處理器要把總線控制權(quán)讓給DMA而失去總線控制權(quán),盡管處理器可以做些不使用總線的工作,但肯定不會(huì)馬上響應(yīng)來(lái)自總線的外部中斷請(qǐng)求,因此會(huì)造成較大的中斷延時(shí)。

2 包含DMA的SoC系統(tǒng)架構(gòu)
2.1 DMA結(jié)構(gòu)介紹
    一般而言,DMA控制器的功能與結(jié)構(gòu)是由系統(tǒng)結(jié)構(gòu)決定的。但是作為IP而言,DMA控制器又要有其一般性。DMA是指外部設(shè)備直接對(duì)計(jì)算機(jī)存儲(chǔ)器進(jìn)行讀寫(xiě)操作的I/O方式。這種方式下數(shù)據(jù)的讀寫(xiě)無(wú)需處理器執(zhí)行指令,也不經(jīng)過(guò)處理器內(nèi)部寄存器,而是利用系統(tǒng)的數(shù)據(jù)總線,由外設(shè)直接對(duì)存儲(chǔ)器寫(xiě)入或讀出,從而達(dá)到極高的傳輸效率。DMA技術(shù)的重要性在于,利用它進(jìn)行數(shù)據(jù)存取時(shí)不需要處理器進(jìn)行干預(yù),可提高系統(tǒng)執(zhí)行應(yīng)用程序的效率。利用DMA傳送數(shù)據(jù)的另一個(gè)好處是數(shù)據(jù)直接在源地址和目的地址之間傳送,不需要中間媒介。在大部分基于AMBA總線的SoC:系統(tǒng)中,當(dāng)需要進(jìn)行DMA操作時(shí),DMA控制器先向處理器發(fā)出占用總線的請(qǐng)求,當(dāng)總線請(qǐng)求成功后,處理器將總線使用權(quán)交給DMA控制
器,可以進(jìn)行數(shù)據(jù)傳輸,當(dāng)此次DMA傳輸完成后DMA控制器釋放總線控制權(quán)。
    AMBA是ARM公司提出的用于微處理器片上通信的先進(jìn)的總線結(jié)構(gòu)。一種典型的AMBA總線由AHB和APB總線分段構(gòu)成??偩€上的設(shè)備可以分為能夠主動(dòng)讀寫(xiě)的主設(shè)備(master)與只能接收來(lái)自master請(qǐng)求的從設(shè)備(slave)。針對(duì)DMA控制器的研究引出了新的SoC架構(gòu),如使用分布式Fly-by DMA結(jié)構(gòu),為數(shù)據(jù)吞吐量大的模塊預(yù)設(shè)專(zhuān)用通道等。從功耗的角度看,當(dāng)系統(tǒng)中存在較多master模塊時(shí),總線仲裁器的負(fù)擔(dān)加重,而仲裁器正是AMBA總線功耗的主要來(lái)源。
2.2 包含AHB主從接口DMA控制器的SoC系統(tǒng)架構(gòu)
    為了緩解在同一系統(tǒng)中需要同時(shí)實(shí)現(xiàn)大批量的數(shù)據(jù)傳輸,提出如圖1所示的基于AMBA總線的SoC系統(tǒng)架構(gòu)。從圖中可以看出,系統(tǒng)處理器的數(shù)據(jù)接口與指令接口都是作為AHB的master掛接在AHB總線上。主存通過(guò)slave接口掛接在AHB總線上,而DMA控制器同時(shí)包含master與slave接口,掛接在AHB總線上。slave接口用來(lái)對(duì)DMA控制器內(nèi)部寄存器進(jìn)行配置,master用來(lái)向AHB申請(qǐng)AHB總線控制權(quán),并進(jìn)行DMA傳輸。


    在圖1中Memory是通過(guò)AHB的slave接口掛在AHB總線上。DMA控制器包含的2個(gè)接口,slave接口完成DMA內(nèi)部寄存器的配置后,master接口可申請(qǐng)AHB總線使用權(quán),當(dāng)獲得許可后,開(kāi)始占用AHB總線,實(shí)現(xiàn)DMA數(shù)據(jù)傳輸。如此使處理器從外設(shè)間的大批量數(shù)據(jù)傳輸解放出來(lái),直接由DMA來(lái)完成,提高了數(shù)據(jù)傳輸放率。但也因此而產(chǎn)生了一個(gè)問(wèn)題:當(dāng)DMA占用AHB總線時(shí)處理器不能通過(guò)AHB接口去實(shí)現(xiàn)取指及讀寫(xiě)數(shù)據(jù)。雖然在現(xiàn)在大部分處理器內(nèi)部或外部配備了容量較大的高速緩存(Cache),當(dāng)DMA控制器占用內(nèi)存時(shí),處理器仍可利用Cache中的程序和數(shù)據(jù)繼續(xù)運(yùn)行;但Cache是利用程序的局部性原理,當(dāng)處理器執(zhí)行的操作有良好的局部性時(shí),在DMA占用AHB總線期間可以利用Cache里的指令和數(shù)據(jù)繼續(xù)運(yùn)行,但若此時(shí)有設(shè)備產(chǎn)生中斷,此時(shí)處理器的PC指針就會(huì)產(chǎn)生跳轉(zhuǎn),從而會(huì)產(chǎn)生Cache不能命中的情況。而AHB總線又被DMA控制器占據(jù),處理器不能對(duì)外取指,而且Cache的容量因成本問(wèn)題不可能太大,從而影響處理器的效率。
2.3 包含2個(gè)AHB從接口DMA控制器的新型SoC系統(tǒng)架構(gòu)
    為了解決因圖1所示架構(gòu)大批量數(shù)據(jù)傳輸而引入DMA產(chǎn)生的問(wèn)題,提出了包含2個(gè)AHB接口的DMA控制器的SoC系統(tǒng)架構(gòu)。在AHB總線上的sla-ve接口都是不能發(fā)起傳輸?shù)?,它的一切操作都是被?dòng)的。因此圖2中的DMA控制器的主要功能是提供需要進(jìn)行DMA傳輸?shù)耐庠O(shè)接口與處理器讀寫(xiě)主存的通道以及它們間優(yōu)先級(jí)設(shè)定。在此雙AHB從接口的DMA控制器中處理器優(yōu)先級(jí)永遠(yuǎn)最高,其他外設(shè)通道都可以相互設(shè)置優(yōu)先級(jí),而且除處理器外,為了防止同一個(gè)外設(shè)長(zhǎng)期占用DMA總線的使用權(quán),可對(duì)外設(shè)DMA通道設(shè)置回退(暫時(shí)釋放DMA總線)。如當(dāng)通道2需要與Memory進(jìn)行數(shù)據(jù)傳輸時(shí),先向DMA控制申請(qǐng)總線使相應(yīng)通道2的REQ信號(hào)有效,若DMA控制器允許通道2進(jìn)行數(shù)據(jù)傳輸,則向通道2響應(yīng)ACK應(yīng)答信號(hào)。當(dāng)通道2傳輸完,DMA控制回退長(zhǎng)度的寄存器設(shè)定的值進(jìn)入回退階段,若數(shù)據(jù)傳輸完成,則使REQ信號(hào)無(wú)效,否則繼續(xù)使REQ信號(hào)有效,并在回退期后當(dāng)DMA總線空閑時(shí)參于DMA總線競(jìng)爭(zhēng)。在總線空閑時(shí)只有不處于回退期間的最高優(yōu)先級(jí)的通道才能獲得DMA總線使用權(quán),對(duì)Memory進(jìn)行讀寫(xiě)。


    經(jīng)過(guò)Design Compiler邏輯綜合,DMA控制器在SMIC0.18μm的工藝下,能夠達(dá)到AHB時(shí)鐘域90MHz。能滿足所設(shè)計(jì)SoC系統(tǒng)時(shí)鐘的要求。
2.4 2種架構(gòu)性能對(duì)比
    在圖1所示架構(gòu)中,每次DMA傳輸都要發(fā)起1次讀與1次寫(xiě)操作。若在DMA傳輸期間有需要緊急處理的異常響應(yīng),AHB總線此時(shí)又被DMA控制器占用,則處理器只能等DMA控制器釋放AHB總線后才能占用AHB總線進(jìn)行操作,影響處理器效率與系統(tǒng)對(duì)異步事件的響應(yīng)速度。
    圖2中是通過(guò)DMA控制器的一個(gè)通道與Memory相接。DMA控制器包含2個(gè)AHB的slave接口,一個(gè)是用來(lái)對(duì)DMA控制器的內(nèi)部寄存器進(jìn)行配置,而另一個(gè)是被處理器用來(lái)對(duì)Memory進(jìn)行讀寫(xiě)。首先處理器可以利用Cache中的指令與數(shù)據(jù)來(lái)運(yùn)行,若出現(xiàn)沒(méi)命中的問(wèn)題,也可以對(duì)AHB總線上其他存儲(chǔ)區(qū)域進(jìn)行訪問(wèn),因?yàn)榇藭r(shí)AHB總線沒(méi)有因DMA傳輸而被占據(jù)。并且除處理器通道外,對(duì)于其他所有通道的DMA傳輸都可以設(shè)置回退,
從而使處理器在外設(shè)DMA傳輸期間盡快獲得DMA總線,對(duì)掛接在DMA控制器上的Memory能盡快進(jìn)行讀寫(xiě),從而提高處理器的效率。當(dāng)異常中斷發(fā)生時(shí),處理器也能盡快對(duì)響應(yīng)中斷,提高系統(tǒng)對(duì)異步事件的響應(yīng)速度,從而提高系統(tǒng)的實(shí)時(shí)性。這樣的架構(gòu)在一定程度上解決了上述架構(gòu)所產(chǎn)生的影響處理器效率的問(wèn)題。

3 總結(jié)
    通過(guò)對(duì)2種不同架構(gòu)的分析得出,包含雙從AHB接口DMA技術(shù)的SoC系統(tǒng)架構(gòu),不僅解決了外設(shè)與Memory間的大批量數(shù)據(jù)傳輸問(wèn)題,同時(shí)又解決了因DMA技術(shù)的引入而帶來(lái)的處理器對(duì)異步事件響應(yīng)速度過(guò)慢及處理器效率變低的問(wèn)題,提高了對(duì)異常中斷的響應(yīng)速度,使系統(tǒng)更加適用于硬實(shí)時(shí)系統(tǒng)。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉