亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種cpu及一種cpu內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒?

文檔序號:6471191閱讀:247來源:國知局
專利名稱:一種cpu及一種cpu內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒?br> 技術(shù)領(lǐng)域
本發(fā)明涉及一種芯片處理器,特別涉及一種CPU及一種CPU內(nèi)部與外部
數(shù)據(jù)傳輸?shù)姆椒ā?br> 背景技術(shù)
現(xiàn)有的DMA (Direct Memory Access,直接存儲器存取)是采用 一個專門 的硬件電路——DMA控制器(DMAC)來控制內(nèi)存與外設(shè)之間的數(shù)據(jù)交流, 在進行DMA數(shù)據(jù)傳輸之前,DMAC會向CPU申請總線控制權(quán),CPU接到申 請后,將控制權(quán)交給DMAC,進行數(shù)據(jù)傳輸,在傳輸結(jié)束后,DMAC將總線 控制權(quán)交還給CPU。
具體而言, 一次DMA數(shù)據(jù)傳送過程為當(dāng)外部設(shè)備有數(shù)據(jù)傳輸?shù)男枨髸r, 就向DMAC發(fā)出DMA請求;DMAC接收到請求后,向CPU提出請求;CPU 在當(dāng)前機器周期結(jié)束后響應(yīng)該請求,將系統(tǒng)總線的控制權(quán)交由DMAC接管, 并向DMAC提供DMA數(shù)據(jù)傳輸?shù)男畔ⅲ蝗缓驞MAC開始工作,進行數(shù)據(jù)傳 送;傳送結(jié)束后,DMAC向CPU發(fā)出中斷請求,DMA操作結(jié)束,CPU重新 接管總線的控制權(quán)。
可以看出,現(xiàn)有的DMAC設(shè)置在CPU的外部,負(fù)責(zé)所有內(nèi)存與外設(shè)之間 的數(shù)據(jù)交互,其負(fù)載較大;并且,如果CPU本地寄存器組的數(shù)據(jù)需要與外設(shè) 進行交互時,必須占用總線配置DMAC,并觸發(fā)相應(yīng)外設(shè);然后再將總線控 制權(quán)交給DMAC,而DMAC完成數(shù)據(jù)交互后,又將占用總線向CPU發(fā)出中 斷信號并交還總線控制權(quán),顯然,這個過程非常浪費總線資源,而實際中總線 的帶寬是有限的;再者,由于總線的傳輸速度低于CPU的內(nèi)部數(shù)據(jù)傳輸速度, 在這種情況下,CPU本地寄存器組的數(shù)據(jù)與外設(shè)交互時,其傳輸速度也必然 受到總線傳輸速率的限制,從而傳輸效率較低。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種CPU及一種CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒ǎ靡詼p輕DMAC的負(fù)載、提高總線資源利用率和CPU內(nèi)部與外 部數(shù)據(jù)傳輸?shù)男省?br> 為了解決上述問題,本發(fā)明公開了一種CPU,所述CPU包括
總控制器,用于接收DMA信息指令,以及向運算器發(fā)送控制指令;
運算器,用于將所述DMA信息配置給直接存儲控制器DMAC;
直接存儲控制器DMAC,用于依據(jù)所述DMA信息,進行DMA數(shù)據(jù)傳輸;
外部總線接口 ,用于CPU內(nèi)部與CPU外部的通信;
存儲控制器,用于存儲進行DMA數(shù)據(jù)傳輸?shù)臄?shù)據(jù)。
具體的,所述DMA信息包括進行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔?、目?biāo) 地址信息、數(shù)據(jù)長度信息和控制信息。
優(yōu)選的,所述CPU還包括DMA專用總線接口,用于DMAC與CPU外 部的通信。
進一步,所述總控制器,還用于接收DMAC發(fā)送的中斷請求。
為了解決上述問題,本發(fā)明還公開了一種CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆?法,所述方法包括
所述總控制器接收DMA信息指令,發(fā)送配置所述DMA信息的指令給運 算器;所述運算器將所述DMA信息配置給DMAC;所述DMAC依據(jù)所述DMA 信息,通過外部總線接口,進行DMA數(shù)據(jù)傳輸。
具體的,所述DMA信息包括進行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔?、目?biāo) 地址信息、數(shù)據(jù)長度信息和控制信息。
進一步,所述方法包括當(dāng)從CPU外部到內(nèi)部進行數(shù)據(jù)傳輸時,所述 DMAC依據(jù)所述DMA信息,通過外部總線接口,從CPU外部獲取數(shù)據(jù),并 通過位于CPU內(nèi)部的存儲控制器,將所述數(shù)據(jù)傳輸至目標(biāo)地址。
進一步,所述方法包括當(dāng)從CPU內(nèi)部到外部進行數(shù)據(jù)傳輸時,所述 DMAC依據(jù)所述DMA信息,通過位于CPU內(nèi)部的存儲控制器,從源地址獲 取數(shù)據(jù),,并通過外部總線接口,將所述數(shù)據(jù)傳輸至目標(biāo)地址。
優(yōu)選的,所述方法還包括當(dāng)所述DMA數(shù)據(jù)傳輸完成后,所述DMAC 向所述總控制器發(fā)送中斷請求。優(yōu)選的,所述方法還包括所述DMAC通過專用總線接口與CPU外部進 4亍通信。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點
本發(fā)明的DMAC置于CPU內(nèi)部,在以DMA傳輸方式傳輸數(shù)據(jù)時,CPU 對DMAC的初始化及總線控制權(quán)的交替使用,在CPU內(nèi)部就能完成,從而避 免了總線的竟?fàn)?,提高了傳輸效率?br> 進一步,由于CPU內(nèi)部的傳輸速率遠(yuǎn)大于外部,使得采用DMA傳輸方 式進行數(shù)據(jù)傳輸?shù)男侍岣摺?br> 與此同時,由于DMAC置于CPU的內(nèi)部,在測試時便于對DMAC的狀 態(tài)進行實時的監(jiān)測。


圖1為本發(fā)明的一種CPU裝置實施例的結(jié)構(gòu)示意圖; 圖2為本發(fā)明的一種CPU內(nèi)部與外部數(shù)據(jù)傳輸方法實施例的步驟流程圖; 圖3為本發(fā)明的一種從CPU外部到內(nèi)部進行數(shù)據(jù)傳輸方法實施例的步驟 流程圖4為本發(fā)明的一種從CPU內(nèi)部到外部進行數(shù)據(jù)傳輸方法實施例的步驟 流程圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細(xì)的說明。
本發(fā)明的核心構(gòu)思之一在于DMAC設(shè)置于CPU內(nèi)部,這樣CPU內(nèi)部 與外設(shè)之間進行數(shù)據(jù)傳輸時,無需占用總線進行DMAC配置和總線控制權(quán)的 交替使用,節(jié)約了總線資源,提高了 CPU和DMAC的工作效率。
參照圖1,示出了本發(fā)明 一種CPU裝置實施例,該CPU包括
總控制器101,用于接收DMA信息指令,以及向運算器102發(fā)送控制指 令;具體的,所述DMA信息包括進行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔?、目?biāo) 地址信息、數(shù)據(jù)長度信息和控制信息。
6運算器102,用于將所述DMA信息配置給所述DMAC103;即把所述DMA 信息相應(yīng)的配置到DMAC103的源地址寄存器、目標(biāo)地址寄存器、數(shù)據(jù)長度寄 存器和控制寄存器中。
直接存儲控制器DMAC103,用于依據(jù)所述DMA信息,進行DMA數(shù)據(jù) 傳輸。 一種優(yōu)選的方案是,當(dāng)所述DMA數(shù)據(jù)傳輸結(jié)束后,所述DMAC103向 總控制器101發(fā)送中斷請求,然后總控制器101重新接管總線控制權(quán)。當(dāng)然, 在所述DMA數(shù)據(jù)傳輸結(jié)束后,所述DMAC103也可以不向總控制器101發(fā)送 中斷請求,只是停止執(zhí)行數(shù)據(jù)傳輸,此時總控制器可以通過查看的方式獲得 DM AC的狀態(tài)。
外部總線接口 104,用于CPU內(nèi)部與CPU外部的通信;即所述DMAC103 需要通過外部總線接口,與CPU外部進行通信。在另一種優(yōu)選的實施例中, 可以在CPU中增加一個DMA專用總線接口 ,所述接口專用于DMAC與CPU 外部的通信,在進行DMA傳輸時,就不需要占用原有的外部總線接口 104, 提高系統(tǒng)效率。
存儲控制器105,用于存儲進行DMA數(shù)據(jù)傳輸?shù)臄?shù)據(jù)。 當(dāng)有DMA傳輸需求時,用戶發(fā)出進行DMA傳輸?shù)腃PU指令,所述指令 為向內(nèi)部DMAC103的寄存器寫入DMA信息;總控制器101接收所述指令, 并向運算器102發(fā)送控制指令;然后所述運算器102執(zhí)行該指令,將所述DMA 信息配置到DMAC103的寄存器中;接著DMAC103依據(jù)所述DMA信息,經(jīng) 過外部總線接口 104,通過存儲控制器105進行DMA數(shù)據(jù)傳輸。
參照圖2,示出了使用本發(fā)明的CPU進行CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆?法實施例,所述方法包括以下步驟
步驟201,當(dāng)有DMA傳輸需求時,用戶發(fā)出向內(nèi)部DMAC的寄存器寫入 DMA信息的CPU指令;總控制器接收所述指令,并向運算器發(fā)送控制指令。
步驟202,所述運算器執(zhí)行所述CPU指令,將所述DMA信息配置到DMAC 的寄存器中;并且所述總控制器通過CPU的內(nèi)部連線,向所述DMAC交出總 線的控制權(quán)。其中,所述DMA信息包括進行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔ⅰ?br> 7目標(biāo)地址信息、數(shù)據(jù)長度信息和控制信息;該步驟中,所述運算器把所述DMA 信息相應(yīng)的配置到DMAC的源地址寄存器、目標(biāo)地址寄存器、數(shù)據(jù)長度寄存 器和控制寄存器中。
步驟203,所述DMAC依據(jù)所述DMA信息,經(jīng)過外部總線接口 ,通過位 于CPU內(nèi)部的存儲控制器進行DMA數(shù)據(jù)傳輸,把指定的數(shù)據(jù)從源地址傳輸 到目的地址。在一種優(yōu)選的實施方式中,可以在CPU內(nèi)部增加一個DMA專 用總線接口,所述DMAC可以通過所述DMA專用總線接口與CPU外部進行 數(shù)據(jù)傳輸,這就不需要占用原有的外部總線接口,提高了系統(tǒng)效率。
進一步,在另一種方法實施例中,還可以包括步驟204,即當(dāng)所述DMA 數(shù)據(jù)傳輸完畢后,所述DMAC向所述總控制器發(fā)送中斷請求,然后總控制器 重新接管總線控制權(quán)。當(dāng)然,在所述DMA數(shù)據(jù)傳輸結(jié)束后,所述DMAC也 可以不向總控制器發(fā)送中斷請求,只是停止執(zhí)行數(shù)據(jù)傳輸,此時總控制器可以 通過查看的方式獲得DMAC的狀態(tài)。
下面結(jié)合圖3和圖4,分別對本方法中,從CPU外部到內(nèi)部和從CPU內(nèi) 部到外部進行的數(shù)據(jù)傳輸過程進行詳細(xì)描述。
參照圖3,本發(fā)明的一種從CPU外部到內(nèi)部進行數(shù)據(jù)傳輸?shù)姆椒▽嵤├?的步驟如下
步驟301,當(dāng)有從CPU外部到內(nèi)部進行DMA傳輸?shù)男枨髸r,用戶發(fā)出向
內(nèi)部DMAC的寄存器寫入DMA信息的CPU指令;
步驟302,總控制器接收所述指令,并向運算器發(fā)送控制指令;
步驟303 ,所述運算器執(zhí)行所述CPU指令,將所述DMA信息配置到DMAC
的寄存器中;并且所述總控制器通過CPU的內(nèi)部連線,向所述DMAC交出總
線的控制權(quán);
步驟304,依據(jù)所述DMA信息,所述DMAC通過外部總線接口,從CPU 外部的源地址獲取數(shù)據(jù),并存儲至位于CPU內(nèi)部的存儲控制器中;
步驟305,所述存儲控制器將所述數(shù)據(jù)傳輸至CPU內(nèi)部的目標(biāo)地址; 步驟306,所述DMAC向所述總控制器發(fā)送中斷請求。參照圖4,本發(fā)明的一種從CPU內(nèi)部到外部進行數(shù)據(jù)傳輸?shù)姆椒▽嵤├?的步驟如下
步驟401,當(dāng)有從CPU內(nèi)部到外部進行DMA傳輸?shù)男枨髸r,用戶發(fā)出向 內(nèi)部DMAC的寄存器寫入DMA信息的CPU指令;
步驟402,總控制器接收所述指令,并向運算器發(fā)送控制指令;
步驟403,所述運算器執(zhí)行所述CPU指令,將所述DMA信息配置到DMAC 的寄存器中;并且所述總控制器通過CPU的內(nèi)部連線,向所述DMAC交出總 線的控制權(quán);步驟404,依據(jù)所述DMA信息,位于CPU內(nèi)部的存儲控制器從 CPU內(nèi)部的源地址獲取數(shù)據(jù);
步驟405,所述DMAC從所述存儲控制器中獲取數(shù)據(jù),并通過外部總線 接口,將所述數(shù)據(jù)傳輸至CPU外部的目標(biāo)地址;
步驟406,所述DMAC向所述總控制器發(fā)送中斷請求。
在本發(fā)明中,由于DMA設(shè)置在CPU的內(nèi)部,對DMAC的配置以及總線 接口控制權(quán)的交替,都是通過CPU內(nèi)部連線完成的,節(jié)約了總線資源,避免 了與外部總線的竟?fàn)帲岣吡藗鬏斝省?br> 需要說明的是,由于DMAC、總控制器、運算器和存儲控制器都處于CPU 的內(nèi)部,所以它們之間的通信都是通過CPU的內(nèi)部連線實現(xiàn)的。 一般情況下,
的方法,增加了通信和數(shù)據(jù)傳輸?shù)乃俣取?br> 同時,由于DMAC置于CPU的內(nèi)部,在測試時便于對DMAC的狀態(tài)進 行實時的監(jiān)測。
為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明,以下通過一個具體的例子對本發(fā) 明的方法實施例作進一步的說明?,F(xiàn)有以下需求從CPU外部地址0x10000000 向內(nèi)部地址0x00000000傳送一,爻數(shù)據(jù),凄t據(jù)長度為0x100,即256字節(jié)。
首先,用戶發(fā)出向內(nèi)部DMAC的寄存器寫入DMA信息的CPU指令;總 控制器接收所述指令,并發(fā)送配置DMA信息的指令給運算器;所述運算器執(zhí) 行所述CPU指令,將所述DMA信息配置到DMAC的寄存器中,即把源地址 信息(0x10000000)、目標(biāo)地址信息(0x00000000)和數(shù)據(jù)長度信息(0x100,即256字節(jié)),分別配置到DMAC的源地址寄存器、目標(biāo)地址寄存器和數(shù)據(jù)長 度寄存器中;
然后,所述DMAC開始進行DMA傳輸,依據(jù)所述DMA信息,所述DMAC 通過外部總線接口,從源地址0x10000000處,獲取長度256字節(jié)的數(shù)據(jù),并 將所述數(shù)據(jù)寫入存儲控制器;所述存儲控制器再將所述數(shù)據(jù)寫入目標(biāo)地址 0x00000000處;
最后,所述DMA傳輸結(jié)束,所述DMAC向總控制器發(fā)出中斷請求,交 還總線控制權(quán)。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的 都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即 可。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡 單,相關(guān)之處參見方法實施例的部分說明即可。
以上對本發(fā)明所提供的一種CPU及一種CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒?br> 述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時, 對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍 上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種CPU,其特征在于,所述CPU包括總控制器,用于接收DMA信息指令,以及向運算器發(fā)送控制指令;運算器,用于將所述DMA信息配置給直接存儲控制器DMAC;直接存儲控制器DMAC,用于依據(jù)所述DMA信息,進行DMA數(shù)據(jù)傳輸;外部總線接口,用于CPU內(nèi)部與CPU外部的通信;存儲控制器,用于存儲進行DMA數(shù)據(jù)傳輸?shù)臄?shù)據(jù)。
2、 根據(jù)權(quán)利要求1所述的CPU,其特征在于,所述DMA信息包括進 行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔?、目?biāo)地址信息、數(shù)據(jù)長度信息和控制信息。
3、 根據(jù)權(quán)利要求1所述的CPU,其特征在于,還包括 DMA專用總線接口 ,用于DMAC與CPU外部的通信。
4、 根據(jù)權(quán)利要求1所述的CPU,其特征在于, 所述總控制器,還用于接收DMAC發(fā)送的中斷請求。
5、 一種CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒?,其特征在于,所述方法包?所述總控制器接收DMA信息指令,發(fā)送配置所述DMA信息的指令給運算器;所述運算器將所述DMA信息配置給DMAC;所述DMAC依據(jù)所述DMA信息,通過外部總線接口,進4于DMA數(shù)據(jù) 傳輸。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述DMA信息包括進 行DMA數(shù)據(jù)傳輸?shù)脑吹刂沸畔ⅰ⒛繕?biāo)地址信息、數(shù)據(jù)長度信息和控制信息。
7、 根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)從CPU外部到內(nèi)部進行數(shù)據(jù)傳輸時,所述DMAC依據(jù)所述DMA信息, 通過外部總線接口,從CPU外部獲取數(shù)據(jù),并通過位于CPU內(nèi)部的存儲控制 器,將所述數(shù)據(jù)傳輸至目標(biāo)地址。
8、 根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)從CPU內(nèi)部到外部進行數(shù)據(jù)傳輸時,所述DMAC依據(jù)所述DMA信息, 通過位于CPU內(nèi)部的存儲控制器,從源地址獲取數(shù)據(jù),,并通過外部總線接口 , 將所述數(shù)據(jù)傳輸至目標(biāo)地址。
9、 根據(jù)權(quán)利要求5所述的方法,其特征在于,還包括當(dāng)所述DMA數(shù)據(jù)傳輸完成后,所述DMAC向所述總控制器發(fā)送中斷請求。
10、 根據(jù)權(quán)利要求5所述的方法,其特征在于所述DMAC通過專用總線 接口與CPU外部進行通信。
全文摘要
本發(fā)明提供了一種CPU和一種CPU內(nèi)部與外部數(shù)據(jù)傳輸?shù)姆椒ǎ揅PU包括總控制器,用于接收DMA信息指令,以及向運算器發(fā)送控制指令;運算器,用于將所述DMA信息配置給直接存儲控制器DMAC;直接存儲控制器DMAC,用于依據(jù)所述DMA信息,進行DMA數(shù)據(jù)傳輸;外部總線接口,用于CPU內(nèi)部與CPU外部的通信;存儲控制器,用于存儲進行DMA數(shù)據(jù)傳輸?shù)臄?shù)據(jù)。本發(fā)明的DMAC置于CPU內(nèi)部,在進行DMA傳輸時,CPU對DMAC的初始化及總線控制權(quán)的交替使用,在CPU內(nèi)部就能完成,從而避免了總線的競爭,提高了數(shù)據(jù)傳輸?shù)男省?br> 文檔編號G06F13/20GK101452429SQ20081022666
公開日2009年6月10日 申請日期2008年11月19日 優(yōu)先權(quán)日2008年11月19日
發(fā)明者艷 石 申請人:北京紅旗勝利科技發(fā)展有限責(zé)任公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1