專利名稱:一種寄存器的讀寫方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路技術(shù)領(lǐng)域,特別涉及一種寄存器的讀寫方法及裝置。
背景技術(shù):
隨著集成電路規(guī)模和集成度的增大,芯片中的各個內(nèi)核邏輯模塊(RLM,Random Logic Module)會用到多個配置相同的寄存器,中央處理器CPU需要依次下發(fā)配置給各個內(nèi)核邏輯模塊。目前,一種寄存器的讀寫方法中,中央處理器CPU需要依次下發(fā)讀寫操作給芯片內(nèi)各個內(nèi)核邏輯模塊中的微處理器接口(MPI, Micro Process Interface),即將相同的讀寫操作分別下發(fā)給各個RLM的MPI,進行重復(fù)讀寫。在對現(xiàn)有技術(shù)的研究和實踐過程中,本發(fā)明的發(fā)明人發(fā)現(xiàn),現(xiàn)有的實現(xiàn)方式中,如果該芯片中的RLM比較多(假設(shè)為N個模塊),并且每個模塊需要公用的寄存器數(shù)目也非常多(假設(shè)每個模塊有公用M個寄存器),則CPU需要重復(fù)讀寫操作M*N次,從而導(dǎo)致CPU讀寫操作次數(shù)和時間較長的技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種寄存器的讀寫方法及裝置,以解決現(xiàn)有技術(shù)中處理器讀寫次數(shù)較多,讀寫時間較長的技術(shù)問題。為解決上述技術(shù)問題,本發(fā)明實施例提供一種寄存器的讀寫方法,將全局寄存器中的寄存器,在各個內(nèi)核邏輯模塊RLM中配置相同的偏移地址,所述方法包括接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址;根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果。相應(yīng)的,本發(fā)明還提供一種寄存器的讀寫裝置,所述裝置包括接收單元,用于接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址;讀寫控制單元,用于根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果;其中,所述全局寄存器中的寄存器在各個內(nèi)核邏輯模塊RLM中的偏移地址相同。由上述實施例可知,本發(fā)明實施例通過廣播的方式,將接收到處理器發(fā)送的操作信號廣播給芯片內(nèi)所有的內(nèi)核邏輯模塊RLM,簡化了處理器的讀寫次數(shù),縮短處理器的讀寫時間。
圖I為本發(fā)明實施例提供的一種寄存器的讀寫方法的流程圖2為本發(fā)明實施例提供的另一種寄存器的讀寫方法的流程圖;圖3為本發(fā)明實施例提供的一種寄存器的讀寫裝置的結(jié)構(gòu)示意圖;圖4為本發(fā)明實施例提供的另一種寄存器的讀寫裝置的結(jié)構(gòu)示意圖;圖5為本發(fā)明實施例提供的一種寄存器的讀寫方法的應(yīng)用實例的結(jié)構(gòu)示意圖。
具體實施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實施例的方案,下面結(jié)合附圖和實施方式對本發(fā)明實施例作進一步的詳細說明。請參閱圖1,為本發(fā)明實施例提供的一種寄存器的讀寫方法的流程圖;在該實施例中,將全局寄存器中的寄存器,在芯片中各個內(nèi)核邏輯模塊(RLM,Random Logic Module)中配置相同的偏移地址,所述方法包括步驟101 :接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址;在該實施例中,可以是多端口轉(zhuǎn)發(fā)器HUB接收到處理器發(fā)送的操作信號,當(dāng)然也可以是其他多端口轉(zhuǎn)發(fā)器,本實例不作限制。步驟102 :根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果;其中,所述全局寄存器中的寄存器在各個內(nèi)核邏輯模塊RLM中的偏移地址相同。im, config_a寄存器,RLMO 5都使用了,全局寄存器(即全局地址空間)給config_a寄存器分配一個地址0x0100,則config_a寄存器在各個RLM的寄存器地址空間的偏移地址,全部都為0x0100。在該步驟中,HUB可以在接收到所述操作信號時,根據(jù)所述偏移地址,通過廣播的方式向所有內(nèi)核邏輯模塊RLM的微處理器接口發(fā)送操作信號;以及接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果。也就是說,HUB在接收到操作信號時,將所述操作信號通過廣播的方式下發(fā)給芯片內(nèi)所有的內(nèi)核邏輯模塊RLM的微處理器接口,所述各個內(nèi)核邏輯模塊RLM反饋各個自身寄存器的回讀值給HUB。優(yōu)選的,所述接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器中的寄存器反饋的讀寫操作結(jié)果具體為在預(yù)定時間內(nèi),接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器中的寄存器反饋的讀寫操作結(jié)果。也就是說,為了提高讀寫的效率,HUB為各個內(nèi)核邏輯模塊RLM反饋讀寫操作結(jié)果設(shè)定了時間,對于在設(shè)定時間內(nèi)接收到的讀寫操作結(jié)果,按位進行或運算,對于在該時間外接收到的讀寫操作結(jié)果將不予理會。優(yōu)選的,在該實施例中,如果內(nèi)核邏輯模塊RLM中不存在全局寄存器,則所述接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果為0 ;如果讀寫操作用到內(nèi)核邏輯模塊RLM中的全局寄存器中的部分寄存器,則所述接收內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的所述部分寄存器的讀寫操作結(jié)果為O。也就是說,當(dāng)某一個內(nèi)核邏輯模塊RLM中不存在全局寄存器時,則內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的所述部分寄存器的讀寫操作結(jié)果為0,也就是說,在該內(nèi)核邏輯模塊RLM中沒有全局寄存器?;蛘?,
如果該讀寫操作只用到內(nèi)核邏輯模塊RLM中的全局寄存器中的部分寄存器,則內(nèi)核邏輯模塊RLM在反饋的讀寫操作結(jié)果沒有用到的寄存器的讀寫操作結(jié)果為全0,用到的寄存器的讀寫操作結(jié)果正常反饋回讀值。本發(fā)明實施例通過廣播的方式,將接收到處理器發(fā)送的操作信號廣播給芯片內(nèi)所有的內(nèi)核邏輯模塊RLM,簡化了處理器的讀寫次數(shù),縮短處理器的讀寫時間。在另一實施例中,如圖2所示,圖2為本發(fā)明實施例提供的另一種寄存器的讀寫方法的流程圖,該實施例在上述在圖I所示實施例的基礎(chǔ)上,還可以進一步包括步驟103 :將得到的各個讀寫操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù);步驟104 :向處理器發(fā)送所述或運算后的數(shù)據(jù)。在該實施例中,比如,如果所述操作信號為讀操作信號,HUB接收處理器發(fā)送的讀操作信號,并根據(jù)讀操作信號中的偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀操作,得到讀操作結(jié)果,并將得到的各個讀操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù),之后,HUB向處理器發(fā)送所述或運算后的數(shù)據(jù)。如果所述操作信號為寫操作信號,也同樣使用該過程,即HUB接收處理器發(fā)送的寫操作信號,并根據(jù)寫操作信號中的偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行寫操作,得到寫操作結(jié)果,并將得到的各個寫操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù),之后,HUB向處理器發(fā)送所述或運算后的數(shù)據(jù)。本發(fā)明實施例通過廣播的方式,將接收到處理器發(fā)送的操作信號廣播給芯片內(nèi)所有的內(nèi)核邏輯模塊RLM,進一步,還可以對接收到各個內(nèi)核邏輯模塊RLM反饋的讀寫操作結(jié)果進行或運算,并向處理器反饋一次結(jié)果,簡化了處理器的讀寫次數(shù),縮短處理器的讀寫時間?;谏鲜龇椒ǖ膶崿F(xiàn)過程,本發(fā)明實施例提供一種寄存器的讀寫裝置,其結(jié)構(gòu)示意圖如圖3所示,所述裝置包括接收單元31和讀寫控制單元32,其中,所述接收單元31,用于接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址;所述讀寫控制單元32,用于根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果;其中,所述全局寄存器中的寄存器在各個內(nèi)核邏輯模塊RLM中的偏移地址相同。其中,讀寫控制單元32具體包括讀寫命令發(fā)送單元和讀寫命令接收單元,所述讀寫命令發(fā)送單元,用于根據(jù)所述偏移地址,通過廣播的方式向所有內(nèi)核邏輯模塊RLM的微處理器接口發(fā)送操作信號;所述讀寫命令接收單元,用于接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果。其中,所述讀寫命令接收單元具體用于,在預(yù)定時間內(nèi),接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器反饋的讀寫操作結(jié)果。優(yōu)選的,所述裝置除了包括接收單元31和讀寫控制單元32外,還可以包括計算單元33和發(fā)送單元34,具體如圖4所示,圖4為本發(fā)明實施例提供的另一種寄存器的讀寫裝置的結(jié)構(gòu)示意圖。其中,所述計算單元33,用于將所述讀寫控制模塊的各個讀寫操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù);所述發(fā)送單元34,用于向處理器發(fā)送所述或運算后的數(shù)據(jù)。優(yōu)選的,所述寄存器的讀寫裝置可以集成在多端口轉(zhuǎn)發(fā)器HUB中,也可以獨立部署,本實施例不作限制。為了便于本領(lǐng)域技術(shù)人員的理解,下面以具體的應(yīng)用實例來說明。還請參閱圖5,為本發(fā)明實施例提供的一種寄存器的讀寫方法的應(yīng)用實例圖。在該實施例中,處理器通過地址總線與HUB連接,HUB通過地址總線分別與各個RLM連接。假設(shè)芯片中有 N 個 RLM,其各個 RLM 分別為RLM_0 ;RLM_1 ;RLM_2 ;RLM_3 ;...... ;RLM_N。本實施例中,對全局寄存器的讀寫,采取了廣播讀寫的方式,當(dāng)并不限于此,開辟一個全局寄存器的偏移地址,該偏移地址為各個RLM偏移地址的前半部分,全局寄存器中的寄存器,在各個RLM中的偏移地址相同。即對于公用寄存器的讀操作,在各個RLM中的偏移地址相同,HUB廣播下發(fā)給所有RLM的MPI ;同樣,對于全局寄存器的讀操作,HUB同時下發(fā)給所有RLM的MPI,各個RLM各自返回狀態(tài)寄存器的回讀值給HUB。在該實施例中,如果某個RLM中沒有全局寄存器實體,則這個RLM在接收到HUB發(fā)送的讀操作信號后,向HUB返回全0,即表明該RLM中沒有寄存器;如果某個RLM中只用到這個全局寄存器的部分比特bit,則這個RLM在接收到讀操作信號后,將沒有用到的部分寄存器返回全0給HUB。如圖5所示,在該實施例中,以CPU讀取各個RLM的全局寄存器中的數(shù)據(jù)為例,但并不限于此,還可以是CPU向各個RLM的全局寄存器中寫數(shù)據(jù),其實現(xiàn)過程類似,具體為CPU向HUB發(fā)送讀操作命令,該讀操作命令中包括全局寄存器中的寄存器的偏移地址;HUB在接收到該讀操作命令時,依據(jù)該偏移地址通過廣播的方式向各個RLM(即RLM_0至RLM_N)發(fā)出讀操作命令,各個RLM向HUB反饋讀操作結(jié)果(即讀取到的數(shù)據(jù));經(jīng)過固定延時(預(yù)定時間)后,HUB將各個RLM返回的數(shù)據(jù)按位做或運算,并將或運算得到的數(shù)據(jù)作為全局寄存器的讀數(shù)據(jù)發(fā)給CPU。其中,在該實施例中,在固定延時(預(yù)定時間)內(nèi),HUB并非能接收到芯片中所有RLM反饋的讀操作結(jié)果,對于HUB只對固定延時內(nèi)接收到的讀操作結(jié)果(數(shù)據(jù))按位進行或運算,對于固定延時內(nèi)沒有接收到的RLM反饋的讀操作結(jié)果,視為丟棄。本發(fā)明實施例中,通過廣播的方式將讀寫操作信號發(fā)送給各個RLM,與現(xiàn)有技術(shù)中CPU依次將讀寫操作信號發(fā)送給相各個RLM相比,不但簡化CPU的讀寫次數(shù),還縮短了 CPU讀寫時間。同時,本發(fā)明特別適用于各個RLM有很多個公用寄存器的芯片。也適用于邏輯規(guī)模巨大,模塊眾多,配置復(fù)雜的芯片的實現(xiàn),能夠簡化設(shè)計,節(jié)省邏輯資源。通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更 佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的 前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種寄存器的讀寫方法,其特征在于,將全局寄存器中的寄存器,在各個內(nèi)核邏輯模塊RLM中配置相同的偏移地址,所述方法包括 接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址; 根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述方法還包括 將得到的各個讀寫操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù); 向處理器發(fā)送所述或運算后的數(shù)據(jù)。
3.根據(jù)權(quán)利要求I或2所述的方法,其特征在于,所述根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果具體包括 根據(jù)所述偏移地址,通過廣播的方式向所有內(nèi)核邏輯模塊RLM的微處理器接口發(fā)送操作信號; 接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器中的寄存器反饋的讀寫操作結(jié)果具體為 在預(yù)定時間內(nèi),接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器中的寄存器反饋的讀寫操作結(jié)果。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于, 如果內(nèi)核邏輯模塊RLM中不存在全局寄存器,則所述接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果為全O ; 如果讀寫操作只用到內(nèi)核邏輯模塊RLM中的全局寄存器中的部分寄存器,則所述接收內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的所述寄存器的讀寫操作結(jié)果沒有用到的寄存器的讀寫操作結(jié)果為全O。
6.一種寄存器的讀寫裝置,其特征在于,包括 接收單元,用于接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址; 讀寫控制單元,用于根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果; 其中,所述全局寄存器中的寄存器在各個內(nèi)核邏輯模塊RLM中的偏移地址相同。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括 計算單元,用于將所述讀寫控制模塊的各個讀寫操作結(jié)果按位進行或運算,得到或運算后的數(shù)據(jù); 發(fā)送單元,用于向處理器發(fā)送所述或運算后的數(shù)據(jù)。
8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述讀寫控制單元包括 讀寫命令發(fā)送單元,用于根據(jù)所述偏移地址,通過廣播的方式向所有內(nèi)核邏輯模塊RLM的微處理器接口發(fā)送操作信號; 讀寫命令接收單元,用于接收所述內(nèi)核邏輯模塊RLM反饋的讀寫全局寄存器中的寄存器的讀寫操作結(jié)果。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述讀寫命令接收單元,具體用于,在預(yù)定時間內(nèi),接收各個內(nèi)核邏輯模塊RLM中對應(yīng)的全局寄存器反饋的讀寫操作結(jié)果。
10.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述寄存器的讀寫裝置集成在多端口轉(zhuǎn)發(fā)器HUB中,或者獨立部署。
全文摘要
本發(fā)明實施例提供一種寄存器的讀寫方法及裝置,將全局寄存器中的寄存器,在各個內(nèi)核邏輯模塊RLM中配置相同的偏移地址,所述方法包括接收處理器發(fā)送的操作信號,所述操作信號包括全局寄存器中的寄存器的偏移地址;根據(jù)所述偏移地址,通過廣播的方式對所有內(nèi)核邏輯模塊RLM的全局寄存器中的寄存器進行讀寫操作,得到讀寫操作結(jié)果。本發(fā)明實施例通過廣播的方式,將接收到處理器發(fā)送的操作信號廣播給芯片內(nèi)所有的內(nèi)核邏輯模塊RLM,簡化了處理器的讀寫次數(shù),縮短處理器的讀寫時間。
文檔編號G06F9/30GK102629190SQ201210050028
公開日2012年8月8日 申請日期2012年2月29日 優(yōu)先權(quán)日2012年2月29日
發(fā)明者張科, 謝英浩, 韓新偉 申請人:華為技術(shù)有限公司