協(xié)處理器的制造方法
【專利摘要】本發(fā)明公開了一種協(xié)處理器,包括PTP協(xié)議引擎和PTP收發(fā)模塊;PTP協(xié)議引擎包括事件源處理仲裁器和協(xié)議協(xié)處理器,PTP收發(fā)模塊包括PTP發(fā)送處理模塊和PTP接收處理模塊;事件源處理仲裁器配置有事件源和程序段的對應(yīng)關(guān)系;協(xié)議協(xié)處理器用于執(zhí)行若干指令;PTP發(fā)送處理模塊具備可供協(xié)議協(xié)處理器訪問的接口和模塊以及可供外部CPU接口訪問的接口和模塊;PTP接收處理模塊具備可供協(xié)議協(xié)處理器訪問的接口和模塊。本發(fā)明彌補(bǔ)了現(xiàn)有技術(shù)對外部CPU資源浪費(fèi)的不足,利用協(xié)議協(xié)處理器的指令設(shè)計,通過CAM把各種協(xié)處理器驅(qū)動的源做了有效整合,以CAM配置和協(xié)處理器編程的靈活的方式來完成協(xié)議控制幀的處理分析和計算。
【專利說明】
協(xié)處理器
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及一種協(xié)處理器,更具體地,是關(guān)于通信中協(xié)議控制幀處理場合下,一個 采用以CAM劃分多段程序段的通用的協(xié)處理器的設(shè)計。
【背景技術(shù)】
[0002] 現(xiàn)有的精確時鐘同步協(xié)議包括IEEE1588和802. las等PTP協(xié)議(Precise Time Protocol,精確時鐘協(xié)議)。這類協(xié)議的特點(diǎn)是作為協(xié)議控制幀,幀流量比較小,但是控制幀 的類型較多,同時包含有一定的算法需要計算處理。一個通常的做法是需要外部的CPU (Central Processing Unit,中央處理器)來執(zhí)行命令,處理幀的分析,算法的計算,組幀等 處理,雖然外部CPU的處理能力一般比較強(qiáng)勁,但是因?yàn)榇嬖诮涌?l/0(lnput/0utput,輸入/ 輸出)的較多較慢響應(yīng)的操作,極大浪費(fèi)了外部寶貴CHJ資源。另一種通常做法是在PTP協(xié)議 模塊中使用本地CPU,例如MIPS或ARM,作為協(xié)處理器,除了商用CPU需要授權(quán)外,還有因?yàn)樯?用的CPU注重的是流水線和效率等設(shè)計,一般都有復(fù)雜的指令,所以資源占用較多,這樣其 實(shí)是對芯片資源的一個極大的浪費(fèi);同時通常的協(xié)處理器,對指令的執(zhí)行觸發(fā)有中斷和查 詢等常規(guī)的方式但并沒有外圍模塊,不得不在作為協(xié)議處理器的時候,外圍設(shè)計添加較多 的模塊來配合中斷等工作。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)對資源浪費(fèi)的缺陷,提供一種協(xié)處 理器。
[0004] 本發(fā)明是通過以下技術(shù)方案解決上述技術(shù)問題的:
[0005] 本發(fā)明提供一種協(xié)處理器,其特點(diǎn)是,包括:PTP協(xié)議引擎和PTP收發(fā)模塊;
[0006] 所述PTP協(xié)議引擎包括:事件源處理仲裁器和協(xié)議協(xié)處理器,所述PTP收發(fā)模塊包 括:PTP發(fā)送處理模塊和PTP接收處理模塊;
[0007] 所述事件源處理仲裁器配置有事件源和程序段的對應(yīng)關(guān)系,用于以CAM輸入為事 件源,執(zhí)行與命中的CAM對應(yīng)的程序段,命中的CAM的index地址指示程序段的基地址;
[0008] 所述協(xié)議協(xié)處理器用于執(zhí)行若干指令;
[0009] 所述PTP發(fā)送處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊以及可供外 部CPU接口訪問的接口及模塊;
[0010] 所述PTP接收處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊。
[0011 ] CAM(Content Addressable Memory,內(nèi)容可尋址存儲器)通常作為對幀的特定域 (內(nèi)容)是否命中,來過濾出需要的幀,也可以通過內(nèi)容和地址的關(guān)系來做幀字段域的轉(zhuǎn)化, 例如全局port端口號和本地port端口號的轉(zhuǎn)換等等工作。所述PTP發(fā)送處理模塊和所述PTP 接收處理模塊能夠靈活地配置與修改。本技術(shù)方案是對CAM的一個全新的衍生應(yīng)用,基于協(xié) 議控制幀處理的特點(diǎn),以CAM的命中作為程序段觸發(fā),有效把協(xié)議控制幀的事件源和程序執(zhí) 行段結(jié)合起來,并且最大可能地保持事件源和程序執(zhí)行段的可配置性,降低芯片資源。本發(fā) 明除了需要外部CPU作初始化外,在正常的工作過程中,完全由協(xié)處理器自身處理協(xié)議控制 幀,實(shí)現(xiàn)了協(xié)議處理器為主CHJ完全offloacK去負(fù)荷)。
[0012] 較佳地,所述指令包括以下指令的一種或多種:
[0013] 程序段尾指示指令:用于管理程序的執(zhí)行地址位置和內(nèi)部狀態(tài)控制位;
[0014] 查CAM指令:用于配置CAM輸入命中的CAM;
[0015] 讀指令;
[0016] 寫指令;
[0017] 加指令;
[0018] 減指令;
[0019] 空指令。
[0020]較佳地,可供所述協(xié)議協(xié)處理器訪問的模塊包括發(fā)送幀配置RAM、發(fā)送任務(wù)FIFO和 發(fā)送返回FIFO中的一種或多種;
[0021 ]和/或,可供外部CPU接口訪問的模塊包括發(fā)送幀配置RAM;
[0022]和/或,可供所述協(xié)議協(xié)處理器訪問的模塊包括接收任務(wù)FIFO、接收幀緩存和PTP 幀過濾模塊中的一種或多種。
[0023]較佳地,所述PTP協(xié)議引擎還包括總線選擇器,所述協(xié)議協(xié)處理器通過所述總線選 擇器分別與所述PTP發(fā)送處理模塊和所述PTP接收處理模塊連接。
[0024]較佳地,所述協(xié)處理器還包括幀預(yù)處理模塊,所述PTP接收處理模塊通過所述幀預(yù) 處理模塊與以太網(wǎng)MAC連接。
[0025]較佳地,所述PTP發(fā)送處理模塊還用于提供與以太網(wǎng)MAC適配的預(yù)處理模塊。
[0026] 較佳地,所述PTP收發(fā)模塊還包括時間戳(Timestamp)發(fā)生器,所述時間戳發(fā)生器 分別與所述PTP發(fā)送處理模塊和所述PTP接收處理模塊連接,以提供時間戳。
[0027] 較佳地,所述事件源包括:至少一時間計數(shù)器、收幀和發(fā)幀中斷、程序段尾查CAM事 件。
[0028]較佳地,所述指令為微碼指令。
[0029]較佳地,所述協(xié)處理器采用72位微碼指令和基于所述微碼指令的匯編命令。
[0030] 在符合本領(lǐng)域常識的基礎(chǔ)上,上述各優(yōu)選條件,可任意組合,即得本發(fā)明各較佳實(shí) 例。
[0031] 本發(fā)明的積極進(jìn)步效果在于:本發(fā)明利用協(xié)議協(xié)處理器的指令設(shè)計,特別是查CAM 指令,通過CAM把各種協(xié)處理器驅(qū)動的源做了有效整合,通過這個架構(gòu),可以以CAM配置和協(xié) 處理器編程的靈活的方式來完成協(xié)議控制幀的處理分析和計算:這個架構(gòu)在PTP協(xié)議處理 的模塊中作為協(xié)處理器,能在同一的硬件上,通過CAM配置和協(xié)處理編程設(shè)計設(shè)備master (主設(shè)備)和slave(從設(shè)備)的應(yīng)用。
[0032]本發(fā)明不僅可以作為PTP協(xié)議的協(xié)處理器,也可以當(dāng)做其它的非業(yè)務(wù)類控制協(xié)議 的協(xié)處理器使用。PTP協(xié)議的使用只是這個架構(gòu)上配置出來的一個應(yīng)用實(shí)例。
【附圖說明】
[0033]圖1為本發(fā)明實(shí)施例協(xié)處理器的結(jié)構(gòu)框圖。
[0034]圖2為本發(fā)明的CAM的功能衍生不意圖。
[0035]圖3為本發(fā)明示例1PTP時間校準(zhǔn)master功能的流程圖。
[0036]圖4為本發(fā)明示例2PTP時間校準(zhǔn)slave功能的流程圖。
【具體實(shí)施方式】
[0037]下面通過實(shí)施例的方式進(jìn)一步說明本發(fā)明,但并不因此將本發(fā)明限制在所述的實(shí) 施例范圍之中。
[0038] 實(shí)施例
[0039]如圖1所示,一種協(xié)處理器包括:PTP協(xié)議引擎1、PTP收發(fā)模塊2和幀預(yù)處理模塊3。 [0040] 所述PTP協(xié)議引擎包括:事件源處理仲裁器101、協(xié)議協(xié)處理器102和總線選擇器 103〇
[0041 ]所述事件源處理仲裁器配置有事件源和程序段的對應(yīng)關(guān)系,用于以CAM輸入為事 件源,執(zhí)行與命中的CAM對應(yīng)的程序段,命中的CAM的index地址指示程序段的基地址。
[0042]所述協(xié)議協(xié)處理器用于執(zhí)行若干指令,所述指令為微碼指令。所述微碼指令包括 以下指令的一種或多種:
[0043]程序段尾指示指令:用于管理程序的執(zhí)行地址位置和內(nèi)部狀態(tài)控制位;
[0044] 查CAM指令:用于配置CAM輸入命中的CAM;
[0045] 讀指令;
[0046] 寫指令;
[0047] 加指令;
[0048] 減指令;
[0049] 空指令。
[0050] 其中,程序段尾指示命令能夠?qū)Τ绦虻膱?zhí)行地址位置和內(nèi)部狀態(tài)控制位做有效的 管理以便各個程序段完成獨(dú)立的工作;查CAM命令設(shè)計CAM的輸入為協(xié)議處理器的一個特殊 返回寄存器r6,也就是這個CAM輸入可以通過協(xié)處理編程自己決定,例如可以從接收的幀的 某個字段域中獲取信息后,決定CAM命令的輸入源,CAM的命中也是一個可配置的,命中的 CAM的index地址作為程序段的一個指示,CAM命中的結(jié)果是觸發(fā)新的程序段(如果新的程序 段還是和老的程序段一樣,就是嵌套執(zhí)行,也是支持的)的執(zhí)行。
[00511所述PTP收發(fā)模塊包括:PTP發(fā)送處理模塊201、PTP接收處理模塊202和時間戳發(fā)生 器203。
[0052]所述PTP發(fā)送處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊以及可供外 部CHJ接口訪問的接口及模塊。其中,可供所述協(xié)議協(xié)處理器訪問的模塊包括發(fā)送幀配置 RAM(Random Access Memory,隨機(jī)存取存儲器)、發(fā)送任務(wù)FIF0(First In First Out先入 先出緩存)和發(fā)送返回FIFO中的一種或多種;可供外部CPU接口訪問的模塊包括發(fā)送幀配置 RAM,發(fā)送幀配置RAM只是在初始化的時候由外部CPU配置各種類型的發(fā)送控制幀的基本格 式,同時發(fā)送幀配置RAM也如前面描述,支持協(xié)處理器訪問修改。所述PTP發(fā)送處理模塊還用 于提供與以太網(wǎng)MAC(Medium Access Control,媒體訪問控制)適配的預(yù)處理模塊。
[0053]所述PTP接收處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊。其中,可供 所述協(xié)議協(xié)處理器訪問的模塊包括接收任務(wù)FIFO、接收幀緩存和PTP幀過濾模塊中的一種 或多種。其中,PTP幀過濾模塊是為了從大量的網(wǎng)絡(luò)幀中過濾出所述協(xié)議處理器需要處理的 幀,例如IEEE1588的幀。
[0054]所述PTP接收處理模塊通過所述幀預(yù)處理模塊與以太網(wǎng)MAC連接。
[0055]所述時間戳發(fā)生器分別與所述PTP發(fā)送處理模塊和所述PTP接收處理模塊連接,以 提供時間戮。
[0056] 所述協(xié)議協(xié)處理器通過所述總線選擇器分別與所述PTP發(fā)送處理模塊和所述PTP 接收處理模塊連接。所述總線選擇器采用32比特總線。
[0057]本實(shí)施例的協(xié)處理器把通常意義上的"內(nèi)容"查"地址"衍生為"事件源"查"指示程 序段位置",如圖2所示,所述事件源包括:至少一時間計數(shù)器、收幀和發(fā)幀中斷、程序段尾查 CAM事件:(1)多個時間計數(shù)器的事件源可以觸發(fā)以時間間隔的動作,例如固定時間間隔的 發(fā)一定格式的控制幀,再例如固定時間需要做一定的算法;(2)接收與發(fā)送幀完成后的中斷 例程也可通過CAM調(diào)用;(3)通過協(xié)處理器可配置使能的程序段尾查CAM事件來完成程序段 的調(diào)用執(zhí)行(包括嵌套)的功能,也就是程序段尾查CAM事件形式上是一個CAM命令且當(dāng)作協(xié) 處理的命令之一,處理程序段的嵌套和調(diào)用。因?yàn)樵O(shè)計"程序段尾查CAM事件"和非"程序段 尾查CAM事件"的事件源均能觸發(fā)程序段的執(zhí)行,這樣能通過協(xié)處理器編程和CAM配置,結(jié)合 硬件的一些狀態(tài)(例如時間計數(shù)器,中斷等等),靈活地完成復(fù)雜的組合動作。
[0058]為了進(jìn)一步說明本實(shí)施例的協(xié)處理器,下面以舉例的方式說明采用本實(shí)施例的協(xié) 處理器實(shí)現(xiàn)基于CAM驅(qū)動多段程序段的方法,所述協(xié)處理器采用72位微碼指令和基于所述 微碼指令的匯編命令。具體參見表1的指令和表2的指令域的解釋以及表3的根據(jù)協(xié)處理的 指令通過軟件設(shè)計(也就是自己設(shè)計一個簡化編譯器)的匯編命令及解釋。
[0059]表 1
[0067] 示例1 :PTP時間校準(zhǔn)功能的master
[0068]在IEEE1588協(xié)議中,master的功能比較多,本發(fā)明舉個時間校準(zhǔn)的實(shí)例,其它功能 可以類推,相關(guān)的功能有:(1)發(fā)送Sync幀(同步幀),記下物理接口處的發(fā)送時刻tl且在發(fā) 送Sync幀時把tl寫入該幀的timestamp時間戳域;(2)接收Delay Req幀(延時請求幀),且發(fā) 送Delay_Resp幀(延遲響應(yīng)幀),記下接收Delay Req幀的物理接口處的時刻t4且在發(fā)送 Delay_Resp幀的時候把t4寫入該幀的timestamp域。
[0069]為了完成上述相關(guān)的功能,示例1可以這樣處理:
[0070] 1、發(fā)送Sync幀的配置設(shè)計如下:(1)配置Sync幀的基本格式到發(fā)送幀配置RAM中去 (對應(yīng)Sync幀在RAM中位置,由寄存器指示基地址);(2)配置時間計數(shù)器timerl為Sync幀的 時間間隔;(3)配置CAM的地址為2時,內(nèi)容是0x04,其中內(nèi)容0x04對應(yīng)timerl,而CAM地址2是 程序段2的基地址;(4)程序段2的程序包括指定與第(1)步對應(yīng)的發(fā)送幀配置RAM Sync幀 所在的基地址到協(xié)處理器寄存器,獲取發(fā)送幀配置RAM Sync幀中的序列號SEQ_ID,并且 SEQ_ID加1后寫入原位置,把Sync幀在發(fā)送幀配置RAM的基地址寫入到發(fā)送任務(wù)FIFO,觸發(fā) Sync幀的發(fā)送。
[0071]下面以時間順序講下流程,如圖3所示,當(dāng)時間計數(shù)器timerl計數(shù)到時,觸發(fā)CAM查 詢,因?yàn)橛星懊娴呐渲?,從而尋到程序?,執(zhí)行程序段2,把Sync幀發(fā)送出去。其中記下物理 接口的時刻11且在發(fā)送Sync幀時把11寫入該幀的timestamp域。
[0072] 2、接收Delay Req幀,且發(fā)送Delay Resp配置如下:(1)配置Delay Resp幀的基本 格式到發(fā)送幀配置RAM去(對應(yīng)Delay Resp幀在RAM中位置,由寄存器指示基地址);(2)配置 CAM的地址為0時,內(nèi)容是0x01,其中內(nèi)容0x01對應(yīng)接收幀中斷,而CAM地址0是程序段0的基 地址;(3)同時配置CAM的地址為6時,內(nèi)容是0x11,其中內(nèi)容0x11的最高位有效表明本次CAM 的"事件源"來自于協(xié)處理器通用的寄存器r6的11位到8位這4位結(jié)果,后面編程會編寫成接 收幀的幀格式類型MSG_TYPE,在本應(yīng)用中,因?yàn)榻邮盏氖荄elay Req幀,根據(jù)IEEE1588協(xié)議, 故MSG_TYPE為1,和最高有效位合在一起就是內(nèi)容0x11,而CAM地址6是程序段6的基地址; (4)程序段0的程序包括從接收任務(wù)FIFO讀取在接收幀緩存中該接收Delay Req幀的基地 址,由Delay Req幀基地址加上偏移量獲取MSG_TYPE到協(xié)處理器特殊寄存器r6的11位到8 位,發(fā)起CAM查找指令,因?yàn)榍懊娴呐渲?,會跳轉(zhuǎn)到程序段6; (5)程序段6的程序包括指定發(fā) 送幀配置RAM Delay Resp幀的基地址,從接收幀緩存獲取接收Delay Req幀的序列號SEQ_ ID,并且把這個序列號SEQ_ID寫入到發(fā)送幀配置RAM Delay Resp幀的對應(yīng)的序列號SEQ_ID 域,從接收幀緩存獲取Delay Req幀進(jìn)入本芯片物理層時的時間戳t4(這個時間戳有以太網(wǎng) MAC模塊直接放在幀的token頭上,token標(biāo)記是在每一個PTP控制幀的基礎(chǔ)上加上本地模塊 的私有字段,以便本地協(xié)處理器處理),再把獲取的這個時間戳t4寫入發(fā)送幀配置RAM中 Delay Resp幀的timestamp域中去,最后協(xié)處理器把Delay Resp幀在發(fā)送幀配置RAM的基 地址寫入到發(fā)送任務(wù)FIFO,觸發(fā)Delay Resp幀的發(fā)送。
[0073]下面以時間順序講下流程,如圖3所示,當(dāng)PTP接收處理模塊接收到Delay Req幀的 時候,把幀放在接收幀緩存中,同時把該幀在接收幀緩存中的基地址放入接收任務(wù)FIFO中, 產(chǎn)生接收中斷,導(dǎo)致CAM對事件源的分析,因?yàn)榍懊娴呐渲?,首先觸發(fā)程序段0的程序,由程 序段〇再觸發(fā)程序段6,程序段6最后觸發(fā)把Delay Resp幀發(fā)送出去。
[0074] 示例2: PTP時間校準(zhǔn)功能的s 1 a ve
[0075] 在IEEE1588協(xié)議中,slave的功能也比較多,但本發(fā)明舉個時間校準(zhǔn)的實(shí)例,其它 功能可以類推,相關(guān)的事情有:(1)接收同步Sync幀,獲取Sync中的timestamp tl并且記下 接收該幀的物理接口處時間戳t2,并且觸發(fā)或若干次接收同步Sync幀觸發(fā)一次發(fā)送Delay Req幀,記下發(fā)送這個Delay Req幀的物理接口處時間戳t3 ; (2)接收Delay Resp延遲響應(yīng) 幀,獲取Delay Resp幀中的timestamp t4,同時根據(jù)時間校準(zhǔn)算法,有tl 42 43 44計算 slave和master的時間偏差,以便以master時鐘為基準(zhǔn)來校準(zhǔn)slave的時鐘。
[0076]為了完成上述相關(guān)的功能,示例2可以這樣處理:
[0077] 1、接收同步Sync幀,且發(fā)送Delay Req配置如下:(1)配置Delay Req幀的基本格式 到 "發(fā)送幀配置RAM"去(對應(yīng)De lay Req幀在RAM中位置,由寄存器指示基地址);⑵配置CAM 的地址為0時,內(nèi)容是0x01,其中內(nèi)容0x01對應(yīng)接收幀中斷,而CAM地址0是程序段0的基地 址;(3)同時配置CAM的地址為7時,內(nèi)容是0x10,其中內(nèi)容0x10的最高位有效表明本次CAM的 "事件源"來自于協(xié)處理器通用的寄存器r6的11位到8位這4位結(jié)果,后面編程會編寫成接收 幀的幀格式類型MSG_TYPE,在本應(yīng)用中,因?yàn)榻邮盏氖荢ync幀,根據(jù)IEEE1588協(xié)議,故MSG_ TYPE為0,和最高有效位合在一起就是內(nèi)容0x10,而CAM地址7是程序段7的基地址;(4)程序 段0的程序包括從接收任務(wù)FIFO讀取在接收幀緩存中該接收Sync幀的基地址,由Sync幀基 地址加上偏移量獲取MSG_TYPE到協(xié)處理器特殊寄存器r6的11位到8位,發(fā)起CAM查找指令, 因?yàn)榍懊娴呐渲?,會跳轉(zhuǎn)到程序段7; (5)程序段7的程序包括從接收幀緩存獲取接收Sync幀 的timestamp tl(tl時刻是master發(fā)出Sync幀的物理時間戳)到通用寄存器rl和從接收幀 緩存獲取該幀接收進(jìn)入本芯片物理層接口時候的時間戳t2(這個時間戳有以太網(wǎng)MAC模塊 直接放在幀的token頭上)到通用寄存器r2,指定發(fā)送幀配置RAM Delay Req幀的基地址,從 接收幀緩存獲取接收Sync幀的序列號SEQ_ID,并且把這個序列號SEQ_ID寫入到發(fā)送幀配置 RAM Delay Req幀的對應(yīng)的序列號SEQ_ID域,最后協(xié)處理器把Delay Req幀在發(fā)送幀配置 RAM的基地址寫入到發(fā)送任務(wù)FIFO,觸發(fā)Delay Req幀的發(fā)送。通過查詢發(fā)送返回FIFO狀態(tài) (設(shè)計保留幀發(fā)送后中斷和查詢兩種方法,流程圖4示例采用查詢方法),從發(fā)送返回FIFO中 獲取Delay Req發(fā)送幀在物理接口處的時間戳t3到通用寄存器r3。
[0078]下面以時間順序講下流程,當(dāng)PTP接收處理模塊接收到Sync幀的時候,把幀放在接 收幀緩存中,同時把該幀在接收幀緩存中的基地址放入接收任務(wù)FIFO中,產(chǎn)生接收中斷,導(dǎo) 致CAM對事件源的分析,因?yàn)榍懊娴呐渲茫紫扔|發(fā)程序段0的程序,由程序段0再觸發(fā)程序 段7,程序段7最后觸發(fā)把Delay Req幀發(fā)送出去。
[0079] 2、接收Delay Resp幀的配置:(1)配置CAM的地址為0時,內(nèi)容是0x01和上面第1步 是復(fù)用配置;(2)同時配置CAM的地址為4時,內(nèi)容是0x19,其中內(nèi)容0x19的最高位有效表明 本次CAM的"事件源"來自于協(xié)處理器通用的寄存器r6的11位到8位這4位結(jié)果,后面編程會 編寫成接收幀的幀格式類型MSG_TYTO,在本應(yīng)用中,因?yàn)榻邮盏氖荄elay Resp幀,根據(jù) IEEE1588協(xié)議,故MSG_TYPE為9,和最高有效位合在一起就是內(nèi)容0x19,而CAM地址4是程序 段4的基地址;(4)程序段0的程序和步驟1類似,只是接收幀由Sync改為Delay Resp,但是對 程序段0而言任何PTP接收幀都是一樣的流程和代碼;(5)程序段4的程序包括從接收幀緩存 獲取接收Delay Resp幀的timestamp t4(t4時刻是master收到Delay Req的物理時間戳) 到通用寄存器r4;協(xié)議處理器對協(xié)議通用寄存器rl~r4里頭的tl~t4做加減計算,最終結(jié) 果賦值給協(xié)處理器特殊返回寄存器r5中,通過邏輯設(shè)計,定時把這個返回寄存器的時間更 新到s lave的本地時間中去。
[0080] 下面以時間順序講下流程,當(dāng)PTP接收處理模塊接收到Delay Resp幀的時候,把幀 放在接收幀緩存中,同時把該幀在接收幀緩存中的基地址放入接收任務(wù)FIFO中,產(chǎn)生接收 中斷,導(dǎo)致CAM對事件源的分析,因?yàn)榍懊娴呐渲?,首先觸發(fā)程序段0的程序,由程序段0再觸 發(fā)程序段4,程序段4完成計算slave和master的時間偏差,并且觸發(fā)硬件校準(zhǔn)時間。
[0081] 雖然以上描述了本發(fā)明的【具體實(shí)施方式】,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些 僅是舉例說明,本發(fā)明的保護(hù)范圍是由所附權(quán)利要求書限定的。本領(lǐng)域的技術(shù)人員在不背 離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對這些實(shí)施方式做出多種變更或修改,但這些變更 和修改均落入本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1. 一種協(xié)處理器,其特征在于,包括:PTP協(xié)議引擎和PTP收發(fā)模塊; 所述PTP協(xié)議引擎包括:事件源處理仲裁器和協(xié)議協(xié)處理器,所述PTP收發(fā)模塊包括: PTP發(fā)送處理模塊和PTP接收處理模塊; 所述事件源處理仲裁器配置有事件源和程序段的對應(yīng)關(guān)系,用于以CAM輸入為事件源, 執(zhí)行與命中的CAM對應(yīng)的程序段,命中的CAM的index地址指示程序段的基地址; 所述協(xié)議協(xié)處理器用于執(zhí)行若干指令; 所述PTP發(fā)送處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊以及可供外部 (PU接口訪問的接口及模塊; 所述PTP接收處理模塊具備可供所述協(xié)議協(xié)處理器訪問的接口及模塊。2. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述指令包括以下指令的一種或多種: 程序段尾指示指令:用于管理程序的執(zhí)行地址位置和內(nèi)部狀態(tài)控制位; 查CAM指令:用于配置CAM輸入命中的CAM; 讀指令; 寫指令; 加指令; 減指令; 空指令。3. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,可供所述協(xié)議協(xié)處理器訪問的模塊包括 發(fā)送幀配置RAM、發(fā)送任務(wù)FIFO和發(fā)送返回FIFO中的一種或多種; 和/或,可供外部CPU接口訪問的模塊包括發(fā)送幀配置RAM; 和/或,可供所述協(xié)議協(xié)處理器訪問的接模塊包括接收任務(wù)FIFO、接收幀緩存和PTP幀 過濾模塊中的一種或多種。4. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述PTP協(xié)議引擎還包括總線選擇器,所 述協(xié)議協(xié)處理器通過所述總線選擇器分別與所述PTP發(fā)送處理模塊和所述PTP接收處理模 塊連接。5. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述協(xié)處理器還包括幀預(yù)處理模塊,所 述PTP接收處理模塊通過所述幀預(yù)處理模塊與以太網(wǎng)MAC連接。6. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述PTP發(fā)送處理模塊還用于提供與以 太網(wǎng)MAC適配的預(yù)處理模塊。7. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述PTP收發(fā)模塊還包括時間戳發(fā)生器, 所述時間戳發(fā)生器分別與所述PTP發(fā)送處理模塊和所述PTP接收處理模塊連接,以提供時間 戳。8. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述事件源包括:至少一時間計數(shù)器、收 幀和發(fā)幀中斷、程序段尾查CAM事件。9. 如權(quán)利要求1所述的協(xié)處理器,其特征在于,所述指令為微碼指令。10. 如權(quán)利要求9所述的協(xié)處理器,其特征在于,所述協(xié)處理器采用72位微碼指令和基 于所述微碼指令的匯編命令。
【文檔編號】G06F9/30GK105930132SQ201610143284
【公開日】2016年9月7日
【申請日】2016年3月14日
【發(fā)明人】沈衛(wèi)杰, 趙海波, 曹慶華
【申請人】上海劍橋科技股份有限公司