基于報(bào)文處理信息的芯片調(diào)試方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及芯片調(diào)試技術(shù)領(lǐng)域,尤其是涉及一種可視化的、對(duì)報(bào)文能夠?qū)崟r(shí)定位 的芯片調(diào)試方法及裝置。
【背景技術(shù)】
[0002] 目前的高速交換機(jī),其轉(zhuǎn)發(fā)行為都是通過內(nèi)部集成的ASIC(Application SpecificIntegratedCircuits,專用集成電路)芯片完成的。上層軟件將轉(zhuǎn)發(fā)或者處 理行為下發(fā)到芯片的表項(xiàng)中,芯片直接對(duì)收到的報(bào)文進(jìn)行處理,而不需要CPU(Central ProcessingUnit,中央處理器)干預(yù)。ASIC芯片的使用大大提高了交換機(jī)的轉(zhuǎn)發(fā)效率,但 ASIC芯片內(nèi)部通常包含了大量的轉(zhuǎn)發(fā)處理邏輯,交換機(jī)廠商開發(fā)過程中,通常使用芯片廠 商提供的軟件開發(fā)工具包(SoftwareDevelopmentKit,SDK),從而不需要了解芯片的內(nèi)部 處理邏輯。
[0003] 在對(duì)交換機(jī)的開發(fā)和測試過程中,經(jīng)常會(huì)出現(xiàn)丟包或者轉(zhuǎn)發(fā)行為不對(duì)的情況,這 就要對(duì)其核心部件-ASIC芯片進(jìn)行調(diào)試。
[0004] 現(xiàn)有通常采取的手段都是去讀ASIC芯片內(nèi)部相關(guān)的表項(xiàng)和寄存器進(jìn)行定位。這 種調(diào)試方法對(duì)調(diào)試人員要求較高,一般是比較熟悉芯片內(nèi)部邏輯的人員。而通常情況下,交 換機(jī)開發(fā)人員對(duì)這部分邏輯并不清楚,這就需要芯片廠商提供人員協(xié)助調(diào)試。這種調(diào)試方 式增加了交換機(jī)廠商和芯片廠商的人員、成本投入。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供一種基于報(bào)文處理信息的芯片調(diào)試 方法及裝置,通過將指定調(diào)試報(bào)文的處理信息保存下來,以供分析報(bào)文在芯片中的處理流 程,便于定位問題。
[0006] 為實(shí)現(xiàn)上述目的,本發(fā)明提出如下技術(shù)方案:一種基于報(bào)文處理信息的芯片調(diào)試 方法,包括:解析報(bào)文得出相應(yīng)的報(bào)文解析信息;判斷調(diào)試使能信號(hào)是否使能,若使能,則 將所述報(bào)文解析信息與芯片內(nèi)的配置信息相匹配,若匹配,則將報(bào)文在芯片內(nèi)各個(gè)模塊的 處理信息保存;讀取并根據(jù)所述報(bào)文處理信息進(jìn)行芯片調(diào)試。
[0007] 優(yōu)選地,所述調(diào)試使能信號(hào)采用IpeUserldFlowCtl.flowEn字段表示,通過配置 所述IpeUserldFlowCtl.flowEn字段的值,控制調(diào)試是否使能。
[0008] 優(yōu)選地,所述IpeUserldFlowCtl.flowEn字段置1,則調(diào)試使能;置0,則調(diào)試不使 能。
[0009] 優(yōu)選地,所述芯片內(nèi)的配置信息包括報(bào)文端口信息、配置數(shù)據(jù)和掩碼,所述配置數(shù) 據(jù)與所述報(bào)文解析信息相對(duì)應(yīng)。
[0010] 優(yōu)選地,所述調(diào)試使能信號(hào)和所述配置信息保存在各自的寄存器中。
[0011] 本發(fā)明的另一目的還在于:提出一種基于報(bào)文處理信息的芯片調(diào)試裝置,包括報(bào) 文解析模塊、調(diào)試使能模塊、報(bào)文匹配模塊、報(bào)文處理信息保存模塊和報(bào)文處理信息讀取模 塊,
[0012] 所述報(bào)文解析模塊用于解析報(bào)文得出相應(yīng)的報(bào)文解析信息;
[0013] 所述調(diào)試使能模塊用于判斷是否使能報(bào)文調(diào)試;
[0014] 所述報(bào)文匹配模塊用于所述報(bào)文解析信息與芯片內(nèi)的配置信息相匹配;
[0015] 所述報(bào)文處理信息保存模塊用于將報(bào)文在芯片內(nèi)各個(gè)模塊的處理信息保存;
[0016] 所述報(bào)文處理信息讀取模塊用于讀取所述報(bào)文處理信息,并根據(jù)所述報(bào)文處理信 息進(jìn)行芯片調(diào)試。
[0017] 優(yōu)選地,所述調(diào)試使能模塊采用一全局寄存器,所述全局寄存器內(nèi)存放有調(diào)試使 能字段,通過配置所述調(diào)試使能字段的值,控制調(diào)試是否使能。
[0018] 優(yōu)選地,所述調(diào)試使能字段用IpeUserldFlowCtl.fiowEn字段表示,所述 IpeUserldFlowCtl.flowEn字段置1,則調(diào)試使能;置0,則調(diào)試不使能。
[0019] 優(yōu)選地,所述報(bào)文匹配模塊包括匹配數(shù)據(jù)寄存器和掩碼寄存器,所述匹配數(shù)據(jù)寄 存器內(nèi)包括報(bào)文端口信息和配置數(shù)據(jù),所述配置數(shù)據(jù)與所述報(bào)文解析信息相對(duì)應(yīng)。
[0020] 優(yōu)選地,所述報(bào)文端口信息用localPhyPort字段表示,所述配置數(shù)據(jù)用 parserResult字段表不。
[0021] 本發(fā)明的有益效果是:本發(fā)明提供了一種調(diào)試芯片的方案,基于保存的報(bào)文處理 信息,可視化地準(zhǔn)確定位問題,且本發(fā)明可在不中斷交換機(jī)業(yè)務(wù)的情況下進(jìn)行調(diào)試,降低調(diào) 試人員的技術(shù)門檻,從而提高開發(fā)效率,降低交換機(jī)廠商的開發(fā)成本和芯片廠商的支持成 本。
【附圖說明】
[0022] 圖1是本發(fā)明基于報(bào)文處理信息的芯片調(diào)試方法的流程示意圖;
[0023] 圖2是本發(fā)明報(bào)文識(shí)別匹配的流程示意圖;
[0024] 圖3是本發(fā)明報(bào)文在芯片內(nèi)的處理流程示意圖;
[0025] 圖4是本發(fā)明基于報(bào)文處理信息的芯片調(diào)試裝置的模塊結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0026] 下面將結(jié)合本發(fā)明的附圖,對(duì)本發(fā)明實(shí)施例的技術(shù)方案進(jìn)行清楚、完整的描述。
[0027] 本發(fā)明提供一種不中斷交換機(jī)業(yè)務(wù)、可視的、相對(duì)較容易的調(diào)試方法,在芯片內(nèi)部 對(duì)報(bào)文進(jìn)行解析識(shí)別,保存指定調(diào)試報(bào)文在芯片的各個(gè)模塊的處理信息,通過軟件工具讀 取這些處理處理信息,分析報(bào)文在芯片中的處理流程,并給出可視化的結(jié)果,從而讓交換機(jī) 開發(fā)人員可以更容易的定位和調(diào)試問題。通過芯片廠家提供的專門的軟件工具,無論是芯 片廠商人員還是交換機(jī)開發(fā)人員都可以快速定位問題,大大降低了芯片開發(fā)成本。
[0028] 如圖1所示,本發(fā)明提供的一種基于報(bào)文處理信息的芯片調(diào)試方法,先對(duì)報(bào)文進(jìn) 行解析,解析出相應(yīng)的報(bào)文解析信息,解析信息包括報(bào)文的目的MAC地址、源MAC地址、虛擬 局域網(wǎng)標(biāo)識(shí)、目的IP地址、源IP地址、MPLS標(biāo)簽等報(bào)文內(nèi)容信息,具體的解析過程與現(xiàn)有 芯片解析報(bào)文原理相同,這里便不再贅述。
[0029] 解析報(bào)文后,再對(duì)報(bào)文進(jìn)行具體識(shí)別,確定是否要對(duì)該報(bào)文進(jìn)行調(diào)試,即是否要保 存它的處理信息。結(jié)合圖1、圖2所示,圖2為報(bào)文識(shí)別匹配的流程示意圖,本發(fā)明實(shí)施例采 用一個(gè)全局寄存器來控制是否使能調(diào)試,即若使能,則進(jìn)行后續(xù)的如報(bào)文匹配、保存處理信 息等操作,反之,不進(jìn)行這些操作。具體地,全局寄存器內(nèi)存放有IpeUserldFlowCtl.flowEn 字段,該字段控制是否使能調(diào)試。將該字段置1,則表示使能調(diào)試,即該報(bào)文需要調(diào)試;置〇, 則表示不需要調(diào)試。對(duì)該字段的值的配置可由如CPU等軟件完成。
[0030] 即,解析完報(bào)文后,判斷全局寄存器內(nèi)的IpeUserldFlowCtl. flowEn字段是否使 能,若使能(也就是該字段值為1),則對(duì)報(bào)文進(jìn)行下一步的匹配識(shí)別。
[0031] 判斷調(diào)試使能后,將報(bào)文解析信息與芯片內(nèi)的配置信息相匹配,識(shí)別需要調(diào)試的 報(bào)文。本發(fā)明實(shí)施例采用一個(gè)匹配數(shù)據(jù)寄存器和一個(gè)掩碼寄存器來提供用于報(bào)文匹配的配 置信息,匹配數(shù)據(jù)寄存器內(nèi)包括字段localPhyPort和字段parserResult兩個(gè)字段,字段 localPhyPort用于匹配報(bào)文進(jìn)來的端口信息,字段parserResult與報(bào)文解析信息相對(duì)應(yīng),