專利名稱:片上系統(tǒng)的ip模塊與片上總線的通訊方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種半導(dǎo)體通訊方法,具體地說,涉及一種片上系統(tǒng)的IP模塊與片上總線之間的通訊方法。
背景技術(shù):
片上系統(tǒng)SoC (system on chip)系統(tǒng)將原來由許多芯片完成的功能,集中到一塊芯片中完成,但是它不是各個芯片功能的簡單疊加,而是從整個系統(tǒng)功能和性能出發(fā),用軟硬件結(jié)合的方法,利用IP復(fù)用技術(shù),在一個芯片上以一個或多個CPU為核心,實現(xiàn)復(fù)雜的功能。IP復(fù)用技術(shù)的關(guān)鍵是建立完整的片上總線(OCB,on-chip bus)通訊系統(tǒng)。片上總線是 SoC設(shè)計中的關(guān)鍵,各IP與CPU之間的通訊是依靠片上總線實現(xiàn)的。這在時間長或是數(shù)據(jù)量大的應(yīng)用時表現(xiàn)得尤為突出,這就對片上總線和IP之間的通訊有了很高的要求。如何高效快速的實現(xiàn)IP與處理器在SOC中的通訊就在于IP與片上總線的通訊方式。片上總線與微機總線有許多相似之處,例如能夠提供靈活多樣的集成方法,提供確定的總線讀寫時序和總線寬度,可以將不同供應(yīng)商的產(chǎn)品集中在一起設(shè)計?,F(xiàn)有技術(shù)中, 一般的IP與片上總線的通訊多是采用1 總線方式或是并行的方式。采用1 總線的數(shù)據(jù)傳輸方式對于時序要求較高,速度較慢,對于處理器占用時間較長。采用并行的數(shù)據(jù)傳輸方式則對于總線的資源占用較多,包括數(shù)據(jù)線地址線都需要總線自身進行控制。還有一種是采用橋(bridge)的方式,設(shè)計一種專用的橋接模塊,在片上總線和IP之間進行通訊。這種方式適用于復(fù)雜的通訊方式,并非所有的IP都適用。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種適用于各種片上系統(tǒng)的IP模塊的快捷、高效、節(jié)省資源的IP模塊與片上總線之間的通訊方法。為達到上述目的,本發(fā)明采用的技術(shù)方案是
一種片上系統(tǒng)的IP模塊與片上總線的通訊方法,在所述的IP模塊與所述的片上總線之間設(shè)置兩組寄存器,所述的兩組寄存器分別為控制寄存器、數(shù)據(jù)寄存器,
所述的片上系統(tǒng)的CPU發(fā)出的控制信號通過所述的片上總線加載至所述的控制寄存器,所述的控制寄存器控制所述的IP模塊工作,工作結(jié)束后,所述的IP模塊通過所述的控制寄存器向所述的CPU請求中斷并將產(chǎn)生的數(shù)據(jù)寫入所述的數(shù)據(jù)寄存器中,所述的CPU在合適的時候響應(yīng)所述的中斷,將所述的數(shù)據(jù)寄存器中的數(shù)據(jù)讀進所述的CPU或放入所述的片上系統(tǒng)的片上存儲器中。優(yōu)選的,所述的CPU為所述的控制寄存器、所述的數(shù)據(jù)寄存器分配地址,每個所述的IP模塊的所述的控制寄存器與所述的數(shù)據(jù)寄存器具有相同的基地址和不同的偏移地址。進一步優(yōu)選的,所述的控制寄存器、所述的數(shù)據(jù)寄存器的長度分別為16位,且分為兩個所述的地址。
優(yōu)選的,所述的片上總線為C*BUS。優(yōu)選的,所述的控制寄存器包括
片選位CS—,所述的IP模塊的片選信號,低電平有效; 讀使能位RD_,所述的IP模塊的讀有效信號,低電平有效; 轉(zhuǎn)換信號位Corwst」所述的IP模塊的轉(zhuǎn)換信號,低電平有效; 全休眠/部分休眠式信號位PS/FS_,所述的IP模塊的全休眠/部分休眠信號,PS/ FS_=1,所述的IP模塊進入部分休眠模式,PS/FS_=0,所述的IP模塊進入全休眠模式; 中斷使能位BIE,BIE=I,中斷請求使能,BIE=O,中斷請求禁止; 中斷標(biāo)志位BIF,BIF=I,申請中斷,BIF=O,所述的IP模塊工作,此時寫1清0。進一步優(yōu)選的,當(dāng)需要所述的IP模塊工作時,所述的CPU的信號通過所述的片上總線加載至所述的控制寄存器,所述的轉(zhuǎn)換信號位0)1^計_置0,中斷使能位BIE使能,啟動所述的IP模塊的一個工作周期。進一步優(yōu)選的,所述的CPU響應(yīng)所述的中斷,首先清除所述的中斷標(biāo)志位BIF,再使能所述的片選信號、所述的讀有效信號,將所述的數(shù)據(jù)寄存器中的數(shù)據(jù)讀進所述的CPU 或放入所述的片上系統(tǒng)的片上存儲器中。在本發(fā)明的一個實施例中,所述的IP模塊為12位逐次逼近式的AD轉(zhuǎn)換器。所述的AD轉(zhuǎn)換器接收所述的控制寄存器的信號后啟動轉(zhuǎn)換,所述的AD轉(zhuǎn)換器的 BUSY信號自動為高電平,轉(zhuǎn)換正在進行,轉(zhuǎn)換結(jié)束后,所述的BUSY信號變?yōu)榈碗娖?,并通過所述的控制寄存器向所述的CPU請求中斷。由于上述技術(shù)方案運用,本發(fā)明與現(xiàn)有技術(shù)相比具有下列優(yōu)點
1、本發(fā)明的通訊方法使得IP模塊的工作速率與CPU的時鐘無關(guān),具有獨立性;
2、本發(fā)明的通訊方法中,CPU根據(jù)實際情況在合適的時刻自動完成讀寫,這樣可以釋放出CPU去處理其他事務(wù),通訊更快捷、更高效;
3、與現(xiàn)有技術(shù)相比,本發(fā)明的通訊方法可以節(jié)省很多資源,適用于各種IP模塊。
附圖1為本發(fā)明的一種片上系統(tǒng)的IP模塊與片上總線的通訊方法的原理框圖。附圖2為本發(fā)明的一種片上系統(tǒng)的IP模塊與片上總線的通訊方法的實施例一的原理框圖。附圖3為本發(fā)明的一種片上系統(tǒng)的IP模塊與片上總線的通訊方法的實施例一中 AD轉(zhuǎn)換器的工作時序圖。
具體實施例方式下面結(jié)合附圖所示的實施例對本發(fā)明作進一步描述。實施例一參見附圖1所示。一種片上系統(tǒng)的IP模塊與片上總線的通訊方法,在IP模塊與片上總線之間設(shè)置兩組寄存器,兩組寄存器分別為控制寄存器、數(shù)據(jù)寄存器。參見附圖2所示。例如,IP模塊為12位逐次逼近式的AD轉(zhuǎn)換器。片上總線為 OBUS。
模數(shù)(Analog to Digital, AD)轉(zhuǎn)換器是一種通用的模擬信號與數(shù)字信號處理的接口,是現(xiàn)代SoC中的一個關(guān)鍵IP。AD轉(zhuǎn)換器的BUSY信號為高電平,轉(zhuǎn)換正在進行,轉(zhuǎn)換結(jié)束后,BUSY信號變?yōu)榈碗娖?。OBUS是一種在半導(dǎo)體重用標(biāo)準SRSGemiconductor Reuse Standard)的基礎(chǔ)上進行改進和優(yōu)化而來的片上標(biāo)準總線。OBus由系統(tǒng)總線MLB (Module Local Bus)、外圍總線IPBus以及IPI (IPBus hterface)三部分構(gòu)成。IPBus則用來連接系統(tǒng)周邊的IP 模塊,其協(xié)議相對簡單,與MLB之間則通過IPI相連,期望能減小系統(tǒng)總線的負載。本實施例中提到的AD轉(zhuǎn)換器與OBUS的通訊實際為與OBUS中的IPBUS直接通訊。在AD轉(zhuǎn)換器與OBUS之間設(shè)置控制寄存器、數(shù)據(jù)寄存器。CPU為這兩組寄存器分配了地址。分配地址的原則是對于不同的IP分配不同的基地址,每個IP與OBUS接口的寄存器具有相同的基地址而每個寄存器具有不同的偏移地址。為了統(tǒng)一格式,寄存器組的長度為16位,分兩個地址。例如分配給AD轉(zhuǎn)換器的基地址為0x00d3_0000,控制寄存器的地址為 0x00d3_0000 和 0x00d3_0001,數(shù)據(jù)寄存器的地址為 0x00d3_0002 和 0x00d3_0003。其中,控制寄存器的設(shè)計如下 地址0x00d3_0000 和 0x00d3_000權(quán)利要求
1.一種片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于在所述的IP模塊與所述的片上總線之間設(shè)置兩組寄存器,所述的兩組寄存器分別為控制寄存器、數(shù)據(jù)寄存器,所述的片上系統(tǒng)的CPU發(fā)出的控制信號通過所述的片上總線加載至所述的控制寄存器,所述的控制寄存器控制所述的IP模塊工作,工作結(jié)束后,所述的IP模塊通過所述的控制寄存器向所述的CPU請求中斷并將產(chǎn)生的數(shù)據(jù)寫入所述的數(shù)據(jù)寄存器中,所述的CPU在合適的時候響應(yīng)所述的中斷,將所述的數(shù)據(jù)寄存器中的數(shù)據(jù)讀進所述的CPU或放入所述的片上系統(tǒng)的片上存儲器中。
2.根據(jù)權(quán)利要求1所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的CPU為所述的控制寄存器、所述的數(shù)據(jù)寄存器分配地址,每個所述的IP模塊的所述的控制寄存器與所述的數(shù)據(jù)寄存器具有相同的基地址和不同的偏移地址。
3.根據(jù)權(quán)利要求2所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的控制寄存器、所述的數(shù)據(jù)寄存器的長度分別為16位,且分為兩個所述的地址。
4.根據(jù)權(quán)利要求1所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的片上總線為C*BUS。
5.根據(jù)權(quán)利要求1所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的控制寄存器包括片選位CS—,所述的IP模塊的片選信號,低電平有效;讀使能位RD_,所述的IP模塊的讀有效信號,低電平有效;轉(zhuǎn)換信號位Corwst」所述的IP模塊的轉(zhuǎn)換信號,低電平有效;全休眠/部分休眠式信號位PS/FS_,所述的IP模塊的全休眠/部分休眠信號,PS/ FS_=1,所述的IP模塊進入部分休眠模式,PS/FS_=0,所述的IP模塊進入全休眠模式;中斷使能位BIE,BIE=I,中斷請求使能,BIE=O,中斷請求禁止;中斷標(biāo)志位BIF,BIF=I,申請中斷,BIF=O,所述的IP模塊工作,此時寫1清0。
6.根據(jù)權(quán)利要求5所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于當(dāng)需要所述的IP模塊工作時,所述的CPU的信號通過所述的片上總線加載至所述的控制寄存器,所述的轉(zhuǎn)換信號位C0nvst_置0,中斷使能位BIE使能,啟動所述的IP模塊的一個工作周期。
7.根據(jù)權(quán)利要求5所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的CPU響應(yīng)所述的中斷,首先清除所述的中斷標(biāo)志位BIF,再使能所述的片選信號、所述的讀有效信號,將所述的數(shù)據(jù)寄存器中的數(shù)據(jù)讀進所述的CPU或放入所述的片上系統(tǒng)的片上存儲器中。
8.根據(jù)權(quán)利要求1所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的IP模塊為12位逐次逼近式的AD轉(zhuǎn)換器。
9.根據(jù)權(quán)利要求8所述的片上系統(tǒng)的IP模塊與片上總線的通訊方法,其特征在于所述的AD轉(zhuǎn)換器接收所述的控制寄存器的信號后啟動轉(zhuǎn)換,所述的AD轉(zhuǎn)換器的BUSY信號自動為高電平,轉(zhuǎn)換正在進行,轉(zhuǎn)換結(jié)束后,所述的BUSY信號變?yōu)榈碗娖?,并通過所述的控制寄存器向所述的CPU請求中斷。
全文摘要
本發(fā)明涉及一種片上系統(tǒng)的IP模塊與片上總線的通訊方法,該方法在IP模塊與片上總線之間設(shè)置兩組寄存器,兩組寄存器分別為控制寄存器、數(shù)據(jù)寄存器,片上系統(tǒng)的CPU發(fā)出的控制信號通過片上總線加載至控制寄存器,控制寄存器控制IP模塊工作,工作結(jié)束后,IP模塊通過控制寄存器向CPU請求中斷并將產(chǎn)生的數(shù)據(jù)寫入數(shù)據(jù)寄存器中,CPU在合適的時候響應(yīng)中斷,將數(shù)據(jù)寄存器中的數(shù)據(jù)讀進CPU或放入片上系統(tǒng)的片上存儲器中。本發(fā)明的通訊方法使得IP模塊的工作速率與CPU的時鐘無關(guān),具有獨立性;CPU根據(jù)實際情況在合適的時刻自動完成讀寫,這樣可以釋放出CPU去處理其他事務(wù),通訊更快捷、更高效;適用于各種IP模塊。
文檔編號G06F13/40GK102306135SQ20111014767
公開日2012年1月4日 申請日期2011年6月2日 優(yōu)先權(quán)日2011年6月2日
發(fā)明者張磊, 汪健, 王少軒, 趙忠惠, 陳亞寧 申請人:中國兵器工業(yè)集團第二一四研究所蘇州研發(fā)中心