專利名稱:一種訪問寄存器的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,特別涉及一種訪問寄存器的方法和裝置。
背景技術(shù):
SRIO (Serial Rapid Input Output,串行高速輸入輸出)是一種基于包交換技術(shù)的開放互聯(lián)協(xié)議,主要定位于解決超高性能系統(tǒng)中芯片之間和模塊之間的互聯(lián)需求,因其具有高速率、引腳少、可靠性高、傳輸距離長、獨(dú)立于處理器工作等優(yōu)點(diǎn),已經(jīng)被廣泛支持和應(yīng)用。
目前,在WCDMA (Wideband Code Division Multiple Access,寬帶碼分多址接入)系統(tǒng)中,參見圖1,基站NodeB的基帶數(shù)據(jù)處理就是基于SRIO接口,由DSP (Digital Signal Processing,數(shù)字信號處理)處理器配合基帶處理ASIC(Application Specific Integrated Circui t,專用集成電路)芯片來完成的,其中,DSP處理器通過SRIO接口對ASIC芯片進(jìn)行訪問操作,其中,訪問操作包括讀操作和寫操作兩類,以讀操作為例,其操作流程如下
首先,DSP處理器發(fā)起讀操作請求,該讀操作請求中攜帶操作地址(即ASIC芯片中的待進(jìn)行讀操作的寄存器地址),DSP處理器側(cè)的SRIO接口將讀操作請求進(jìn)行封裝打包得到讀操作請求包,發(fā)送出去(在基于SRIO傳輸?shù)倪^程中,如果存在交換器Switch,由交換器Switch將該讀揭:作請求包進(jìn)行中轉(zhuǎn));
然后,ASIC芯片側(cè)收到基于SRIO傳輸過來的讀操作請求包后,將該讀操作請求包進(jìn)行反向解析,執(zhí)行相應(yīng)的請求操作,將目的操作地址中保存的待讀取的內(nèi)容封裝打包得到讀操作回復(fù)包,發(fā)送出去;
最后,DSP處理器收到ASIC芯片基于SRIO發(fā)送的讀操作回復(fù)包,至此,整個(gè)讀操作的交互過程才算完成。寫操作過程與此類似,不再贅述。
當(dāng)訪問操作的目的地址是連續(xù)的存儲空間(即待訪問的ASIC寄存器的地址連續(xù)),則由DSP處理器發(fā)送的操作請求包中通過攜帶本次操作的首地址和地址長度,就可以實(shí)現(xiàn)對連續(xù)的寄存器的訪問操作。當(dāng)訪問操作的目的地址是離散
4的存儲空間(即待訪問的ASIC寄存器的地址是離散),則DSP處理器需要針對每個(gè)離散的寄存器發(fā)送操作請求包。
發(fā)明人在實(shí)現(xiàn)本發(fā)明的過程中發(fā)現(xiàn)由于SRIO接口協(xié)議自身的特點(diǎn),通過SRIO進(jìn)行數(shù)據(jù)交換時(shí),其自身的開銷為最大20byte/數(shù)據(jù)包,每個(gè)數(shù)據(jù)包中能夠攜帶的數(shù)據(jù)載荷paylaod,最大為256bytes,并且SRIO數(shù)據(jù)包所承載的數(shù)據(jù)載荷越多,SRIO效率越高,例如,針對讀操作,凄史據(jù)載荷payload為lword時(shí),SRIO傳輸速率為2123ns/SRIO才妄口,當(dāng)凄t據(jù)載荷payload為32word時(shí),SRIO傳輸速率為4193ns……。對于上述訪問操作的目的地址是離散地址的情況,需要針對每個(gè)離散的地址分別單獨(dú)發(fā)送一個(gè)操作請求包(同理ASIC也每次單獨(dú)返回一個(gè)操作回復(fù)包),導(dǎo)致SRIO接口訪問操作的數(shù)據(jù)包所承載的數(shù)據(jù)載荷小,因此,直接制約了 SRIO接口的效率、并且嚴(yán)重影響了傳輸帶寬的利用率,特別是隨著eNodeB通信要求的提高,DSP處理器需要基于SRIO接口對ASIC芯片寄存器進(jìn)行頻繁的讀寫操作,此時(shí),如果讀寫的目的地址是離散的寄存器地址,則上述對接口的效率以及傳輸帶寬的利用率的制約影響將更加明顯。
發(fā)明內(nèi)容
為了提高對ASIC芯片的寄存器的訪問效率、提高傳輸和帶寬的利用率,本發(fā)明實(shí)施例提供了 一種訪問寄存器的方法和裝置。所述技術(shù)方案如下
一方面,提供了一種訪問寄存器的方法,所述方法包括
訪問接口接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶至少兩個(gè)寄存器的地址;
根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行訪問。
另一方面,提供了一種訪問寄存器的裝置,所述裝置包括
接收模塊,用于接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶至少兩個(gè)寄存器的地址;
訪問模塊,用于根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行訪問。
本發(fā)明實(shí)施例提供的技術(shù)方案的有益效果是
在DSP處理器訪問ASIC芯片時(shí),通過設(shè)置的訪問接口 ,實(shí)現(xiàn)了對寄存器的集中訪問,提高了單次訪問操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是現(xiàn)有技術(shù)提供的eNodeB中的DSP處理器和ASIC芯片基于SRIO傳輸示意圖2是本發(fā)明實(shí)施例提供的訪問寄存器的方法流程圖;圖3是本發(fā)明實(shí)施例l凈是供的訪問寄存器的場景示意圖;圖4是本發(fā)明實(shí)施例l提供的訪問寄存器的方法流程圖;圖5是本發(fā)明實(shí)施例2提供的訪問寄存器的場景示意圖;圖6是本發(fā)明實(shí)施例2提供的訪問寄存器的場景示意圖;圖7是本發(fā)明實(shí)施例3提供的訪問寄存器的裝置的示意圖;圖8是本發(fā)明實(shí)施例4提供的處理裝置的示意圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明
實(shí)施方式作進(jìn)一步地詳細(xì)描述。
為了對上述本發(fā)明實(shí)施例提供的方法進(jìn)行詳細(xì)說明,請參見如下實(shí)施例為了在DSP處理器訪問ASIC芯片時(shí),提高單次訪問操作中有效數(shù)據(jù)載荷的
大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率,本發(fā)明實(shí)施例提
供了一種訪問寄存器的方法,參見圖2,該方法內(nèi)容如下
Sl:訪問接口接收處理器發(fā)送的訪問操作請求包,訪問操作請求包中攜帶至
少兩個(gè)待訪問的寄存器的地址;
S2:根據(jù)訪問操作請求包中攜帶的地址,對地址對應(yīng)的寄存器進(jìn)行訪問。下面,根據(jù)訪問操作的類型不同,對本發(fā)明實(shí)施例提供的方法進(jìn)行說明一、當(dāng)訪問操作為讀操作時(shí),方法包括訪問接口接收處理器發(fā)送的讀操作請求包,讀操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址;根據(jù)讀操作請求包中攜帶的地址,對地址對應(yīng)的寄存器進(jìn)行讀操作,獲取寄存器值;根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對寄存器值進(jìn)行組包,得到讀操作回復(fù)包,讀操作回復(fù)包中攜帶至少兩個(gè)寄存器值;向處理器返回讀操作回復(fù)包。
并且,在訪問接口接收處理器發(fā)送的讀操作請求包之前,方法還包括
處理器獲取至少兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址;
根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對至少兩個(gè)寄存器的地址進(jìn)行組包,得到并發(fā)送讀操作請求包,讀操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址。
二、當(dāng)訪問操作為寫操作時(shí),方法包括
訪問接口接收處理器發(fā)送的寫操作請求包,寫操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)寫入的寄存器的地址和待寫入的數(shù)據(jù);
根據(jù)訪問操作請求包中攜帶的地址,對地址對應(yīng)的寄存器進(jìn)行寫操作,將待寫入的數(shù)據(jù)分發(fā)到對應(yīng)的寄存器。
并且,在訪問接口接收處理器發(fā)送的寫操作請求包之前,方法還包括處理器獲取至少兩個(gè)待進(jìn)行數(shù)據(jù)寫入的寄存器的地址和待寫入的數(shù)據(jù);根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對獲取的地址和數(shù)據(jù)進(jìn)行組包,得到并發(fā)送寫操作請求包,寫操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)寫入的地址和待寫入的數(shù)據(jù)。
其中,訪問接口和寄存器位于專用集成電路ASIC芯片中。綜上本發(fā)明實(shí)施例提供的方法,在DSP處理器訪問ASIC芯片時(shí),通過設(shè)置的訪問接口,實(shí)現(xiàn)了對寄存器的集中訪問,提高了單次訪問操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率。
進(jìn)一步地,上述訪問操作請求包中攜帶至少兩個(gè)待訪問的寄存器的地址,且攜帶的待訪問的寄存器的地址為離散地址。從而利用本發(fā)明實(shí)施例提供的方法,通過在ASIC芯片中配置增加訪問接口,將離散地址的寄存器集中起來,實(shí)現(xiàn)了一次對多個(gè)寄存器(離散)的訪問操作,進(jìn)而提高通過SRIO接口訪問ASIC芯片離散地址寄存器的效率,并提高了傳輸帶寬的利用率。其中,上述訪問包括DSP處理器對ASIC芯片的寫操作、讀操作,下面分別以兩個(gè)實(shí)施例分別進(jìn)行說明。
實(shí)施例1
在DSP處理器對ASIC芯片進(jìn)行寫操作時(shí),為了提高單次操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率,本發(fā)明實(shí)施例提供了一種訪問寄存器的方法,參見圖3,為本發(fā)明實(shí)施例提供的訪問寄存器的場景示意圖,其中,ASIC芯片包括設(shè)置的訪問接口、 ASIC芯片中的各實(shí)際寄存器0、寄存器1、寄存器2……寄存器m,本實(shí)施例假設(shè)DSP處理器需要對ASIC芯片中的多個(gè)離散地址的寄存器(例如寄存器1、寄存器3、寄存器5)進(jìn)行寫操作為例進(jìn)行說明,參見圖4,該方法內(nèi)容如下
步驟101: DSP處理器獲取待進(jìn)行寫操作的寄存器的地址以及各寄存器的操作數(shù)據(jù)。
其中,由于本實(shí)施例假設(shè)DSP處理器需要對寄存器1、寄存器3、寄存器5進(jìn)行寫操作,參見表l,為本發(fā)明實(shí)施例提供的寄存器地址和操作數(shù)據(jù)的對應(yīng)關(guān)系示意表。
表l
寄存器寄存器地址操作數(shù)據(jù)(即待寫入對應(yīng)寄存器的數(shù)據(jù))
寄存器l1000AAAA
寄存器33000BBBB
寄存器55000CCCC
步驟102: DSP處理器根據(jù)SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,將獲取寄存器地址和各自對應(yīng)的操作數(shù)據(jù)進(jìn)行處理,得到SRIO寫操作請求包,該SRIO寫操作請求包中包括多個(gè)離散地址的寄存器的地址和各自的操作數(shù)據(jù)。
其中,如前文所述,SRIO數(shù)據(jù)包的凄t據(jù)載荷為256個(gè)bytes,則DSP處理器將上述寄存器地址和操作數(shù)據(jù),即(IOOO、 AAAA)、 ( 3000、 BBBB )、 ( 5000、 CCCC )按照預(yù)設(shè)格式進(jìn)行組包,得到一個(gè)寫操作請求包,該寫才喿作請求包中攜帶(IOOO、AAAA)、 ( 3000、 BBBB)、 ( 5000、 CCCC )。
進(jìn)一步地,當(dāng)上述待處理數(shù)據(jù)((1000、 AAAA)、 ( 3000、 BBBB )、 ( 5000、CCCC))的大小超過了 SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,則DSP處理器按照預(yù)設(shè)的拆分規(guī)則進(jìn)行自動拆包,得到多個(gè)SRIO寫操作請求包,且至少一個(gè)SRIO寫操作請
8求包中攜帶多個(gè)離散地址的寄存器的地址和各自的操作數(shù)據(jù)。例如,假設(shè)當(dāng)上
述(IOOO、 AAAA)、 ( 3000、 BBBB )的數(shù)據(jù)大小已經(jīng)達(dá)到256個(gè)bytes,則DSP處理器,將上述((1000、 AAAA)、 ( 3000、 BBBB))進(jìn)行組包,得到一個(gè)寫操作請求包,再將上述(5000、 CCCC)單獨(dú)進(jìn)行組包,得到一個(gè)寫操作請求包;或者,還可以將上述((1000、 AAAA)、 ( 5000、 CCCC ))進(jìn)《亍組包,得到一個(gè)寫操作請求包,再將上述(3000、 BBBB)單獨(dú)進(jìn)行組包,本實(shí)施例對此不做任何限制。
本實(shí)施例為了便于說明,以上述得到的寫操作請求包中攜帶(IOOO、 AAAA)、(3000、 BBBB)、 ( 5000、 CCCC)為例進(jìn)行i兌明。
步驟103: DSP處理器將上述得到的寫操作請求包通過SRIO傳輸?shù)紸SIC芯片中。
步驟104: ASIC芯片中的訪問接口接收并保存通過SRIO傳輸?shù)膶懖僮髡埱蟀?br>
其中,參見圖3, ASIC芯片中的訪問接口接收到通過SRIO傳輸?shù)膶懖僮髡埱蟀?,其中,可選地,還可以為該訪問接口配置操作類型標(biāo)示,該操作類型標(biāo)示用于標(biāo)識本次操作的類型(寫操作或讀操作)、對該寫操作請求包進(jìn)行保存時(shí),可以釆用地址和內(nèi)容分別對應(yīng)的格式進(jìn)行保存,例如以寄存器地址l、寄存器內(nèi)容l;寄存器地址2、寄存器內(nèi)容2;……;寄存器地址n……寄存器內(nèi)容n的格式,于是,上述(IOOO、 AAAA)、 ( 3000、 BBBB )、 ( 5000、 CCCC ),則相應(yīng)地,(1000、 AAAA)保存在寄存器地址1、寄存器內(nèi)容l中;(3000、 BBBB)保存在寄存器地址3、寄存器內(nèi)容3中;(5000、 CCCC)保存在寄存器地址5、寄存器內(nèi)容5中。另外,還可以采用先地址后內(nèi)容的格式進(jìn)行保存,例如,寄存器地
址l、寄存器地址2.......寄存器地址n;寄存器內(nèi)容1寄存器內(nèi)容2……寄存
器內(nèi)容n的格式,本實(shí)施例對此不做任何限制。
步驟105: ASIC芯片中的訪問接口根據(jù)寫操作請求包中攜帶的寄存器地址,獲取各寫操作請求包攜帶的地址對應(yīng)的寄存器,將上述保存的各地址對應(yīng)的數(shù)據(jù),分發(fā)到各地址對應(yīng)的寄存器中。
至此,DSP處理器按照約定格式對離散地址寄存器的地址和待寫入的數(shù)據(jù)進(jìn)行組包,然后通過SRIO接口將組好的包寫入至ASIC芯片中的訪問接口,再由該訪問接口進(jìn)行分發(fā),將對應(yīng)地址的數(shù)據(jù)寫入到AS IC芯片的對應(yīng)寄存器中,從而DSP處理器通過該訪問接口,可以實(shí)現(xiàn)一次性對多個(gè)離散地址的寄存器的數(shù)
9據(jù)的寫入。進(jìn)一步地,本發(fā)明實(shí)施例提供的方法,還適用于對連續(xù)地址的訪問,方法類似,不再贅述。
綜上所述,本發(fā)明實(shí)施例提供的訪問寄存器的方法,實(shí)現(xiàn)一次性對多個(gè)離
散地址的寄存器的數(shù)據(jù)的寫入,提高了通過SRIO接口訪問ASIC芯片離散地址寄存器的效率,并提高了傳輸帶寬的利用率。
實(shí)施例2
為了在DSP處理器對ASIC芯片進(jìn)行讀操作時(shí),提高單次操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率,本發(fā)明實(shí)施例提供了一種訪問寄存器的方法,參見圖5,為本發(fā)明實(shí)施例提供的訪問寄存器的場景示意圖,其中,ASIC芯片包括設(shè)置訪問接口、 ASIC芯片中的各實(shí)際寄存器0、寄存器l、寄存器2……寄存器m,本實(shí)施例假設(shè)DSP處理器需要對ASIC芯片中的多個(gè)離散地址的寄存器(例如寄存器1、寄存器3、寄存器5)進(jìn)行讀操作為例進(jìn)行說明,與實(shí)施例1不同,在本實(shí)施例提供的ASIC芯片中所設(shè)置的訪問接口中配置的格式為先地址后內(nèi)容的形式,參見圖6,該方法內(nèi)容如下
步驟201: DSP處理器獲取待進(jìn)行讀揭:作的寄存器的地址。
其中,本實(shí)施例以DSP處理器希望讀取ASIC芯片中的寄存器的地址分別為
寄存器l、寄存器3、寄存器5,相應(yīng)地,上述寄存器的地址分別為1000、 3000、
5000。
步驟202: DSP處理器根據(jù)SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,將獲取的寄存器地址進(jìn)行處理,得到SRIO讀操作請求包,該SRIO讀才喿作-清求包中包括多個(gè)離散地址的寄存器的地址。
與實(shí)施例1類似,DSP處理器會根據(jù)SRIO數(shù)據(jù)包的數(shù)據(jù)載荷對獲取的地址進(jìn)行處理,盡可能多的實(shí)現(xiàn)一個(gè)讀操作請求包中攜帶盡可能多的離散地址。當(dāng)攜帶的數(shù)據(jù)(即欲讀取的離散地址的數(shù)量)的大小超過SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,則自動進(jìn)行拆包處理,與上述實(shí)施例l類似,不再贅述。
本實(shí)施例為了便于說明,以上述得到的讀操作請求包中攜帶了寄存器地址1000、 3000、 5000為例進(jìn)行i兌明。
步驟203: DSP處理器將上述得到的讀操作請求包通過SRIO傳輸?shù)紸SIC芯片中。
10步驟204: ASIC芯片中的訪問接口接收并保存讀操作請求包。
其中,與實(shí)施例1不同在于,本實(shí)施例提供的訪問接口配置的保存格式為
先地址后內(nèi)容的格式,于是相應(yīng)地,將上述讀操作請求包中攜帶的1000、 3000、
5000分別保存到地址域?qū)?yīng)的存儲空間中,例如,在寄存器地址1中保存1000、
寄存器地址3中保存3000、在寄存器地址5中保存5000。
步驟205: ASIC芯片中的訪問接口根據(jù)讀操作請求包中攜帶的寄存器地址,
查找寫操作請求包攜帶的地址對應(yīng)的寄存器,獲取各寄存器值。
其中,所謂寄存器值,即該寄存器保存的數(shù)據(jù);相應(yīng)地,寄存器的地址1000、
3000、 5000中保存的數(shù)據(jù),即為DSP處理器待讀取的數(shù)據(jù)。
步驟206: ASIC芯片中的訪問接口將獲取的各寄存器值,進(jìn)行保存。
步驟207: ASIC芯片中的訪問接口將寄存器的地址和該地址對應(yīng)的寄存器
值,按照SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,將寄存器地址和寄存器值行處理,得到SRIO
讀操作回復(fù)包,該SRIO讀操作回復(fù)包中包括多個(gè)離散地址的寄存器的地址和對
應(yīng)的值。
其中,在形成讀操作回復(fù)包時(shí),需要根據(jù)按照SRIO數(shù)據(jù)包的數(shù)據(jù)載荷進(jìn)行處理,當(dāng)攜帶的數(shù)據(jù)大于數(shù)據(jù)載荷時(shí),自動進(jìn)行拆包,得到多個(gè)讀操作回復(fù)包,將寄存器的值回復(fù)給DSP處理器。
至此,DSP處理器按照約定的格式對要讀取的離散地址進(jìn)行組包,然后通過SRIO接口將組好的包寫入至ASIC芯片中的訪問接口 ,該訪問接口會讀取對應(yīng)地址的寄存器值,寫入到相應(yīng)的存儲空間中,DSP處理器再從對應(yīng)的空間中一次性將各離散地址對應(yīng)的寄存器值讀出。從而實(shí)現(xiàn)了 DSP處理器通過該訪問接口,可以一次性讀取多個(gè)離散地址的寄存器值的目的,進(jìn)一步地,本發(fā)明實(shí)施例提供的方法,還適用于對連續(xù)地址的訪問,方法類似,不再贅述。
綜上本發(fā)明實(shí)施例提供的方法,在DSP處理器訪問ASIC芯片時(shí),通過設(shè)置的訪問接口,實(shí)現(xiàn)了對寄存器的集中訪問,提高了單次訪問操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率。特別是針對離散址的情況,實(shí)現(xiàn)DSP處理器再從對應(yīng)的空間中一次性將各離散地址對應(yīng)的寄存器值讀出,提高了通過SRIO接口訪問ASIC芯片離散地址寄存器的效率,并提高了傳輸帶寬的利用率。參見圖7,本發(fā)明實(shí)施例提供了一種訪問寄存器的裝置,裝置包括接收模塊701,用于接收處理器發(fā)送的訪問操作請求包,訪問操作請求包中
攜帶至少兩個(gè)待訪問的寄存器的地址;
訪問模塊702,用于根據(jù)訪問操作請求包中攜帶的地址,對地址對應(yīng)的寄存
器進(jìn)4亍{方問。
一、 當(dāng)訪問操作為讀操作時(shí),
接收模塊701具體用于接收處理器發(fā)送的讀操作請求包,讀操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址;
訪問模塊702具體用于根據(jù)讀操作請求包中攜帶的地址,對地址對應(yīng)的寄存器進(jìn)行讀操作,獲取寄存器值;
并且,進(jìn)一步地,本發(fā)明實(shí)施例提供的裝置還包括
組包模塊,用于根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對寄存器值進(jìn)行組包,得到讀操作回復(fù)包,讀操作回復(fù)包中攜帶至少兩個(gè)寄存器值;發(fā)送模塊,用于向處理器返回讀操作回復(fù)包。
二、 訪問操作為寫操作時(shí),
接收模塊701具體用于接收處理器發(fā)送的寫操:作請求包,寫操作請求包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)寫入的寄存器的地址和待寫入的數(shù)據(jù);
訪問模塊702具體用于根據(jù)訪問操作請求包中攜帶的地址,對地址對應(yīng)的寄存器進(jìn)行寫操作,將待寫入的數(shù)據(jù)分發(fā)到對應(yīng)的寄存器。
其中,裝置和寄存器位于專用集成電路ASIC芯片中。
其中,上述兩個(gè)寄存器的地址為離散地址。
綜上所述,本發(fā)明實(shí)施例提供的訪問寄存器的裝置,在DSP處理器訪問ASIC芯片時(shí),通過設(shè)置的訪問接口,實(shí)現(xiàn)了對寄存器的集中訪問,提高了單次訪問操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率。特別是針對離散地址的情況,將離散地址的寄存器集中起來,實(shí)現(xiàn)了一次對多個(gè)寄存器(離散)的訪問操作,進(jìn)而提高通過SRIO接口訪問ASIC芯片離散地址寄存器的效率,并提高了傳輸帶寬的利用率。實(shí)施例4
參見圖8,本發(fā)明實(shí)施例提供了一種處理裝置,所述處理裝置包括
獲取模塊801,用于獲取至少兩個(gè)待訪問的寄存器的地址;
組包模塊802,用于根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對至
少兩個(gè)寄存器的地址進(jìn)行組包,得到訪問操作請求包,訪問操作請求包中攜帶
至少兩個(gè)待訪問數(shù)據(jù)的寄存器的地址;
發(fā)送模塊8 03,用于發(fā)送訪問操作請求包。
一、 當(dāng)待訪問的操作為讀操作,裝置還包括
接收模塊,用于接收讀操作回復(fù)包,讀操作回復(fù)包中攜帶至少兩個(gè)寄存器值。
二、 當(dāng)待訪問的操作為寫操作; 獲取模塊801,還用于獲取待寫入的數(shù)據(jù);
組包模塊802,具體用于根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷, 對獲取的地址和數(shù)據(jù)進(jìn)行組包,得到寫操作請求包,寫操作請求包中攜帶至少 兩個(gè)待進(jìn)行數(shù)據(jù)寫入的地址和待寫入的數(shù)據(jù)。
其中,上述兩個(gè)寄存器的地址為離散地址。
綜上所述,本發(fā)明實(shí)施例提供的處理裝置,通過按照數(shù)據(jù)載荷進(jìn)行組包處 理后發(fā)送,對端的訪問寄存器接收到組包后的數(shù)據(jù)包后,實(shí)現(xiàn)了一次對多個(gè)寄 存器的訪問操作,特別是針對離散地址的寄存器的訪問操作,進(jìn)而提高通過SRIO 接口訪問ASIC芯片離散地址寄存器的效率,并提高了傳輸帶寬的利用率。
綜上,本發(fā)明實(shí)施例提供的技術(shù)方案,通過在ASIC芯片中配置訪問接口, 從而實(shí)現(xiàn)片外DSP處理器通過該接口,集中訪問(包括讀寫操作)芯片內(nèi)部離 散地址寄存器,例如在進(jìn)行寫操作時(shí),該訪問接口通過分發(fā)的方式,將片外 DSP處理器按照固定格式集中配置的離散地址寄存器,分別寫入到對應(yīng)的寄存器 中去;在進(jìn)行讀操作時(shí),該訪問接口將片外處理器按照固定格式集中讀取的寄 存器,分別讀取后,填入相應(yīng)位置,等待片外DSP處理器來讀取。將原本只能 離散訪問的離散地址寄存器,集中起來訪問,提高片外DSP處理器通過SRIO接 口訪問芯片寄存器的效率以及^t是高了傳輸帶寬的利用率。
本發(fā)明實(shí)施例中的"接收,, 一詞可以理解為主動從其他模塊獲取也可以是 接收其他模塊發(fā)送來的信息。
13本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模 塊或流程并不一定是實(shí)施本發(fā)明所必須的。
本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的才莫塊可以按照實(shí)施例描述分 布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的 一個(gè)或多個(gè) 裝置中。上述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子 模塊。
上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。 本發(fā)明實(shí)施例中的部分步驟,可以利用軟件實(shí)現(xiàn),相應(yīng)的軟件程序可以存
儲在可讀取的存儲介質(zhì)中,如光盤或硬盤等。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的
精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的
保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種訪問寄存器的方法,其特征在于,所述方法包括訪問接口接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶至少兩個(gè)寄存器的地址;根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行訪問。
2、 如權(quán)利要求l所述的方法,其特征在于,當(dāng)所述訪問操作為讀操作時(shí), 所述訪問接口接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶 至少兩個(gè)寄存器的地址,包括訪問接口接收處理器發(fā)送的讀操作請求包,所述讀操作請求包中攜帶至少 兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址;所述根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn) 4亍訪問,包4舌根據(jù)所述讀操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行讀操 作,獲取寄存器值。
3、 如權(quán)利要求2所述的方法,其特在于,所述根據(jù)所述訪問操作請求包中 攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行訪問之后,還包括根據(jù)串行高速輸入輸出SRIO數(shù)據(jù)包的數(shù)據(jù)載荷,對所述寄存器值進(jìn)行組包 得到讀操作回復(fù)包,所述讀^操作回復(fù)包中攜帶至少兩個(gè)寄存器值;向所述處理 器返回所述讀才喿作回復(fù)包。
4、 如權(quán)利要求l所述的方法,其特征在于,當(dāng)所述訪問操作為寫操作時(shí), 所述訪問接口接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶 至少兩個(gè)寄存器的地址,包括訪問接口接收處理器發(fā)送的寫操作請求包,所述寫操作請求包中攜帶至少 兩個(gè)待進(jìn)行數(shù)據(jù)寫入的寄存器的地址和待寫入的數(shù)據(jù);所述根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)4亍i方問,包才舌根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行寫 操作,將所述待寫入的數(shù)據(jù)分發(fā)到對應(yīng)的寄存器。
5、 如權(quán)利要求l-4任一權(quán)利要求所述的方法,其特征在于,所述訪問操作 請求包中攜帶至少兩個(gè)寄存器的地址,且所述兩個(gè)寄存器的地址為離散地址。
6、 如權(quán)利要求l-4任一權(quán)利要求所述的方法,其特征在于,所述訪問接口 和所述寄存器位于專用集成電路ASIC芯片中。
7、 一種訪問寄存器的裝置,其特征在于,所述裝置包括接收模塊,用于接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包 中攜帶至少兩個(gè)寄存器的地址;訪問模塊,用于根據(jù)所述訪問搡作請求包中攜帶的地址,對所述地址對應(yīng) 的寄存器進(jìn)行訪問。
8、 如權(quán)利要求7所述的裝置,其特征在于,所述當(dāng)所述訪問操作為讀操作 時(shí),所述接收模塊具體用于接收處理器發(fā)送的讀操作請求包,所述讀操作請求 包中攜帶至少兩個(gè)待進(jìn)行數(shù)據(jù)讀取的寄存器的地址;所述訪問模塊具體用于根據(jù)所述讀操作請求包中攜帶的地址,對所述地址 對應(yīng)的寄存器進(jìn)行讀操作,獲取寄存器值。
9、 如權(quán)利要求7-8任一權(quán)利要求所述的裝置,其特征在于,所述裝置和 所述寄存器位于專用集成電路ASIC芯片中。
10、 如權(quán)利要求7-8任一權(quán)利要求所述的裝置,其特征在于,所述兩個(gè)寄 存器的地址為離散地址。
全文摘要
本發(fā)明公開了一種訪問寄存器的方法和裝置,屬于通信領(lǐng)域。所述方法包括訪問接口接收處理器發(fā)送的訪問操作請求包,所述訪問操作請求包中攜帶至少兩個(gè)待訪問的寄存器的地址;根據(jù)所述訪問操作請求包中攜帶的地址,對所述地址對應(yīng)的寄存器進(jìn)行訪問。一種訪問寄存器的裝置包括接收模塊和訪問模塊。本發(fā)明在DSP處理器訪問ASIC芯片時(shí),通過設(shè)置的訪問接口,實(shí)現(xiàn)了對寄存器的集中訪問,提高了單次訪問操作中有效數(shù)據(jù)載荷的大小,從而有效地提高SRIO接口的效率及傳輸帶寬的利用率。
文檔編號G06F13/42GK101582058SQ20091008716
公開日2009年11月18日 申請日期2009年6月10日 優(yōu)先權(quán)日2009年6月10日
發(fā)明者李華嵩, 亮 許 申請人:華為技術(shù)有限公司