一種對(duì)芯片進(jìn)行調(diào)試的方法和芯片的制作方法
【專利摘要】本發(fā)明公開了一種芯片,包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊;底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知;寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果;調(diào)試接口模塊,用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。本發(fā)明能夠在對(duì)芯片進(jìn)行調(diào)試的過程中快速、精確定位bug位置,提高調(diào)試效率,實(shí)現(xiàn)對(duì)芯片運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。本發(fā)明還公開了一種對(duì)芯片進(jìn)行調(diào)試的方法。
【專利說明】一種對(duì)芯片進(jìn)行調(diào)試的方法和芯片
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路設(shè)計(jì)領(lǐng)域,尤其涉及的是一種監(jiān)控芯片的方法和芯片。
【背景技術(shù)】
[0002]隨著半導(dǎo)體技術(shù)的發(fā)展,集成電路持續(xù)向更小的外型尺寸發(fā)展,使得每個(gè)芯片可以封裝更多的電路,這就使得集成電路設(shè)計(jì)邏輯越來越復(fù)雜,設(shè)計(jì)調(diào)試過程出現(xiàn)bug時(shí),精確定位bug原因比較困難,降低了調(diào)試的效率。
[0003]因此,如何在系統(tǒng)調(diào)試出現(xiàn)bug后進(jìn)行精確定位成為影響項(xiàng)目進(jìn)程的關(guān)鍵。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題是提供一種對(duì)芯片進(jìn)行調(diào)試的方法和芯片,能夠在對(duì)芯片進(jìn)行調(diào)試的過程中快速、精確定位bug位置,提高調(diào)試效率,實(shí)現(xiàn)對(duì)芯片運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。
[0005]為了解決上述技術(shù)問題,本發(fā)明提供了一種芯片,包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊;
[0006]底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知;
[0007]寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果;
[0008]調(diào)試接口模塊,用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
[0009]該芯片進(jìn)一步包括下述特點(diǎn):
[0010]所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。
[0011]進(jìn)一步地,該芯片還包括下述特點(diǎn):
[0012]所述寄存器代理模塊,還用于如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理。
[0013]進(jìn)一步地,該芯片還包括下述特點(diǎn):
[0014]底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括:
[0015]如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型;
[0016]寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括:
[0017]如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊。
[0018]進(jìn)一步地,該芯片還包括下述特點(diǎn):
[0019]寄存器代理模塊,用于如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回操作結(jié)果,包括:
[0020]接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī);
[0021]接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
[0022]進(jìn)一步地,該芯片還包括下述特點(diǎn):
[0023]調(diào)試接口模塊,用于連接所述芯片和上位機(jī),包括:通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
[0024]為了解決上述技術(shù)問題,本發(fā)明還提供了一種對(duì)芯片進(jìn)行調(diào)試的方法,所述芯片包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊,該方法包括:
[0025]底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知;
[0026]寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,通過調(diào)試接口模塊向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;
[0027]上位機(jī)如接收到來自所述芯片的錯(cuò)誤報(bào)告,則通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器訪問指令;
[0028]所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果;
[0029]其中,所述調(diào)試接口模塊用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
[0030]進(jìn)一步地,該方法還包括下述特點(diǎn):
[0031]所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。
[0032]進(jìn)一步地,該方法還包括下述特點(diǎn):
[0033]底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括:
[0034]底層模塊如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型;
[0035]寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括:
[0036]寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊。
[0037]進(jìn)一步地,該方法還包括下述特點(diǎn):
[0038]所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果,包括:
[0039]所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī);
[0040]所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
[0041]進(jìn)一步地,該方法還包括下述特點(diǎn):
[0042]上位機(jī)接收到芯片返回的讀取結(jié)果后,還包括:
[0043]上位機(jī)通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器控制指令;
[0044]寄存器代理模塊如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理。
[0045]進(jìn)一步地,該方法還包括下述特點(diǎn):
[0046]所述調(diào)試接口模塊通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
[0047]與現(xiàn)有技術(shù)相比,本發(fā)明提供的一種對(duì)芯片進(jìn)行調(diào)試的方法和芯片,芯片內(nèi)的底層模塊如檢測(cè)到工作異常,則產(chǎn)生錯(cuò)誤指示信號(hào)并通知芯片內(nèi)的寄存器代理模塊,寄存器代理模塊接到通知后記錄錯(cuò)誤信息并通過調(diào)試接口模塊向上位機(jī)發(fā)送錯(cuò)誤報(bào)告,然后如接收到上位機(jī)發(fā)送的寄存器訪問/控制指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取/寫入操作,向上位機(jī)返回操作結(jié)果。本發(fā)明能夠在對(duì)芯片進(jìn)行調(diào)試的過程中快速、精確定位bug位置,提高調(diào)試效率,實(shí)現(xiàn)對(duì)芯片運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。
【專利附圖】
【附圖說明】
[0048]圖1為本發(fā)明實(shí)施例的一種芯片的結(jié)構(gòu)示意圖。
[0049]圖2為本發(fā)明實(shí)施例的一種對(duì)芯片進(jìn)行調(diào)試的方法的流程圖。
【具體實(shí)施方式】
[0050]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明。需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
[0051]如圖1所示,本發(fā)明實(shí)施例提供了一種芯片,包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊;
[0052]底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知;
[0053]寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果;
[0054]調(diào)試接口模塊,用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
[0055]該芯片進(jìn)一步包括下述特點(diǎn):
[0056]其中,底層模塊可以通過檢查各寄存器的狀態(tài)獲知是否工作異常。比如,底層模塊如檢查到FIFO寄存器溢出,則判斷工作異常。
[0057]優(yōu)選地,所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。也即,所述寄存器訪問指令用于獲取工作異常的底層模塊的信息以及異常類型信息;
[0058]優(yōu)選地,所述寄存器代理模塊,還用于如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理。
[0059]優(yōu)選地,底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括:
[0060]如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型;也即,本地錯(cuò)誤寄存器用于指示本底層模塊是否工作異常以及出現(xiàn)了哪些類型的異常。
[0061]優(yōu)選地,寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括:
[0062]如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊;也即,全局錯(cuò)誤寄存器用于指示各底層模塊是否出現(xiàn)了工作異常;
[0063]優(yōu)選地,寄存器代理模塊,用于如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回操作結(jié)果,包括:
[0064]接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī);
[0065]接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
[0066]其中,寄存器代理模塊,用于如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理,包括:
[0067]如接收到上位機(jī)發(fā)送的寄存器控制指令,所述指令中攜帶某個(gè)寄存器的地址和待寫數(shù)據(jù),則將所述待寫數(shù)據(jù)寫入所述寄存器中以對(duì)所述芯片進(jìn)行異?;謴?fù)處理,如寫入成功,則向所述上位機(jī)返回控制成功響應(yīng)。
[0068]優(yōu)選地,調(diào)試接口模塊,用于連接所述芯片和上位機(jī),包括:通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
[0069]如圖2所示,本發(fā)明實(shí)施例提供了一種對(duì)芯片進(jìn)行調(diào)試的方法,所述芯片包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊,該方法包括:
[0070]底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知;
[0071]寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,通過調(diào)試接口模塊向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;
[0072]上位機(jī)如接收到來自所述芯片的錯(cuò)誤報(bào)告,則通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器訪問指令;
[0073]所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果;
[0074]其中,所述調(diào)試接口模塊用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
[0075]該方法進(jìn)一步包括下述特點(diǎn):
[0076]優(yōu)選地,所述調(diào)試接口模塊通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
[0077]優(yōu)選地,所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。
[0078]優(yōu)選地,底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括:
[0079]底層模塊如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型;
[0080]優(yōu)選地,寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括:
[0081]寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊;
[0082]優(yōu)選地,所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果,包括:
[0083]所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī);
[0084]所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
[0085]優(yōu)選地,上位機(jī)接收到芯片返回的讀取結(jié)果后,還包括:
[0086]上位機(jī)通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器控制指令;
[0087]寄存器代理模塊如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理。
[0088]其中,寄存器代理模塊如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異?;謴?fù)處理,包括:
[0089]寄存器代理模塊如接收到上位機(jī)發(fā)送的寄存器控制指令,所述指令中攜帶某個(gè)寄存器的地址和待寫數(shù)據(jù),則將所述待寫數(shù)據(jù)寫入所述寄存器中以對(duì)所述芯片進(jìn)行異?;謴?fù)處理,如寫入成功,則向所述上位機(jī)返回控制成功響應(yīng)。
[0090]上述實(shí)施例提供的一種對(duì)芯片進(jìn)行調(diào)試的方法和芯片,芯片內(nèi)的底層模塊如檢測(cè)到工作異常,則產(chǎn)生錯(cuò)誤指示信號(hào)并通知芯片內(nèi)的寄存器代理模塊,寄存器代理模塊接到通知后記錄錯(cuò)誤信息并通過調(diào)試接口模塊向上位機(jī)發(fā)送錯(cuò)誤報(bào)告,然后如接收到上位機(jī)發(fā)送的寄存器訪問/控制指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取/寫入操作,向上位機(jī)返回操作結(jié)果。上述方法和芯片能夠在對(duì)芯片進(jìn)行調(diào)試的過程中快速、精確定位bug位置,提高調(diào)試效率,實(shí)現(xiàn)對(duì)芯片運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。
[0091]本領(lǐng)域普通技術(shù)人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關(guān)硬件完成,所述程序可以存儲(chǔ)于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如只讀存儲(chǔ)器、磁盤或光盤等。可選地,上述實(shí)施例的全部或部分步驟也可以使用一個(gè)或多個(gè)集成電路來實(shí)現(xiàn),相應(yīng)地,上述實(shí)施例中的各模塊/單元可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。本發(fā)明不限制于任何特定形式的硬件和軟件的結(jié)合。
[0092]需要說明的是,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種芯片,包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊; 底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知; 寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,向上位機(jī)發(fā)送錯(cuò)誤報(bào)告;如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果; 調(diào)試接口模塊,用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
2.如權(quán)利要求1所述的芯片,其特征在于: 所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。
3.如權(quán)利要求1所述的芯片,其特征在于: 所述寄存器代理模塊,還用于如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異常恢復(fù)處理。
4.如權(quán)利要求2所述的芯片,其特征在于: 底層模塊,用于如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括: 如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型; 寄存器代理模塊,用于如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括:如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊。
5.如權(quán)利要求4所述的芯片,其特征在于: 寄存器代理模塊,用于如接收到上位機(jī)發(fā)送的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回操作結(jié)果,包括: 接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī); 接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
6.如權(quán)利要求1所述的芯片,其特征在于: 調(diào)試接口模塊,用于連接所述芯片和上位機(jī),包括:通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
7.—種對(duì)芯片進(jìn)行調(diào)試的方法,所述芯片包括:寄存器代理模塊、調(diào)試接口模塊和多個(gè)底層模塊,該方法包括: 底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),向寄存器代理模塊發(fā)送錯(cuò)誤通知; 寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,通過調(diào)試接口模塊向上位機(jī)發(fā)送錯(cuò)誤報(bào)告; 上位機(jī)如接收到來自所述芯片的錯(cuò)誤報(bào)告,則通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器訪問指令; 所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果; 其中,所述調(diào)試接口模塊用于連接所述芯片和上位機(jī),在所述寄存器代理模塊和所述上位機(jī)之間轉(zhuǎn)發(fā)信息。
8.如權(quán)利要求7所述的方法,其特征在于: 所述讀取結(jié)果指示工作異常的底層模塊的信息和異常類型信息。
9.如權(quán)利要求8所述的方法,其特征在于: 底層模塊如檢測(cè)到本底層模塊工作異常,則產(chǎn)生對(duì)應(yīng)的錯(cuò)誤指示信號(hào),包括: 底層模塊如檢測(cè)到本底層模塊工作異常,則將本底層模塊的本地錯(cuò)誤寄存器中對(duì)應(yīng)于所述異常類型的位置位;其中,所述本地錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一種異常類型; 寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則記錄錯(cuò)誤信息,包括: 寄存器代理模塊如接收到底層模塊發(fā)送的錯(cuò)誤通知,則將全局錯(cuò)誤寄存器中對(duì)應(yīng)于所述底層模塊的位置位;其中,所述全局錯(cuò)誤寄存器中的每一位對(duì)應(yīng)于一個(gè)底層模塊。
10.如權(quán)利要求9所述的方法,其特征在于: 所述寄存器代理模塊如接收到來自所述上位機(jī)的寄存器訪問指令,則對(duì)相應(yīng)寄存器進(jìn)行讀取操作,向上位機(jī)返回讀取結(jié)果,包括: 所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)全局錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述全局錯(cuò)誤寄存器的值,將所述值返回給上位機(jī); 所述寄存器代理模塊接收上位機(jī)發(fā)送的對(duì)某個(gè)底層模塊的本地錯(cuò)誤寄存器進(jìn)行訪問的指令,讀取所述本地錯(cuò)誤寄存器的值,將所述值返回給上位機(jī)。
11.如權(quán)利要求8所述的方法,其特征在于: 上位機(jī)接收到芯片返回的讀取結(jié)果后,還包括: 上位機(jī)通過所述調(diào)試接口模塊向所述寄存器代理模塊發(fā)送寄存器控制指令; 寄存器代理模塊如接收到上位機(jī)發(fā)送的寄存器控制指令,則對(duì)相應(yīng)寄存器進(jìn)行寫入操作以對(duì)所述芯片進(jìn)行異常恢復(fù)處理。
12.如權(quán)利要求7所述的方法,其特征在于: 所述調(diào)試接口模塊通過采用JTAG接口或串口連接所述芯片和上位機(jī)。
【文檔編號(hào)】G06F11/26GK104133751SQ201410384386
【公開日】2014年11月5日 申請(qǐng)日期:2014年8月6日 優(yōu)先權(quán)日:2014年8月6日
【發(fā)明者】徐強(qiáng), 劉凱 申請(qǐng)人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司