亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

微控制器芯片及其調(diào)試方法

文檔序號:6613451閱讀:258來源:國知局
專利名稱:微控制器芯片及其調(diào)試方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種微控制器芯片及其調(diào)試方法,尤其涉及一種基于聯(lián)合測
試行動小組(Joint Test Action Gro叩,以下簡稱JTAG )協(xié)議進(jìn)行調(diào)試的 微控制器芯片及其調(diào)試方法,屬于集成電路測試技術(shù)領(lǐng)域。
背景技術(shù)
20世紀(jì)80年代以來,隨著計算機(jī)嵌入式系統(tǒng)的廣泛應(yīng)用,微控制器 (Microcontroller Unit,以下簡稱MCU),也稱單片機(jī)得到了飛速的發(fā)展。 早期的單片機(jī)是按照嵌入式應(yīng)用技術(shù)要求設(shè)計的計算機(jī)的單芯片化集成電路 器件,也就是電子計算機(jī)的全部特性器件都集成到一片芯片上,故被形象的 稱為單片機(jī)。隨著單片機(jī)應(yīng)用范圍的不斷加大,對于其仿真芯片調(diào)試功能的 要求也逐漸^:高。
目前單片機(jī)廠家大都提供自己的仿真芯片,其芯片仿真器多為外置,大
產(chǎn)生外部電路所需要的信號,同時捕獲外部的所有信號,提供源代碼級調(diào)試 及處理器運(yùn)行控制等功能,通過它可以啟動和停止目標(biāo)系統(tǒng),查閱和修改寄 存器和存儲器,在需要控制或查看內(nèi)部處理器運(yùn)行的地方設(shè)置斷點(diǎn),但是隨 著處理器的性能和復(fù)雜性的飛速發(fā)展,這種方式的仿真調(diào)試系統(tǒng)提供的時間 嚴(yán)重滯后于芯片本身的生命周期,而且價格昂貴,可擴(kuò)展性差,沒有完善的 觸發(fā)和高速定時或模擬分析功能,對芯片內(nèi)部更深層次的時序和內(nèi)部動態(tài)運(yùn) 行監(jiān)控能力差;2、為克服第一種方式的缺陷,目前所采用的另一種方式是將 仿真的一部分功能集成到芯片內(nèi)部,另一部分通過外置的在線仿真調(diào)試系統(tǒng)進(jìn)行操控完成,這種方式主要適用于那些具有調(diào)試模塊和調(diào)試接口 ,例如JTAG 調(diào)試端口和相應(yīng)的調(diào)試模塊的CPU處理器,目前部分高速嵌入式處理器設(shè)有 JTAG調(diào)試接口 ,仿真器通過調(diào)試接口向調(diào)試模塊輸入數(shù)據(jù)以控制CPU的運(yùn)行, 但實(shí)際運(yùn)行還是要CPU自身來完成,因此要求在目標(biāo)板能夠調(diào)試之前,必須 保證CPU,晶振及內(nèi)存等部件正常運(yùn)行,但是目前這種在線仿真調(diào)試系統(tǒng)存 在的問題是大多不支持實(shí)時跟蹤和處理微控制器內(nèi)部總線的代碼流,導(dǎo)致中 央處理器在調(diào)試過程中發(fā)生異?,F(xiàn)象的概率增加。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種微控制器芯片及其調(diào)試方法,以實(shí)現(xiàn)微控制器 芯片在調(diào)試過程中具有內(nèi)部總線代碼流的實(shí)時跟蹤和處理功能,使調(diào)試過程 更加靈活,可以提供更多調(diào)試過程信息以便合理設(shè)計調(diào)試策略,提高調(diào)試效 率,同時能夠減少調(diào)試過程中的異?,F(xiàn)象。
為實(shí)現(xiàn)上述目的,提供了一種微控制器芯片,包括彼此相連的中央處理 器、調(diào)試模塊和調(diào)試接口,該調(diào)試模塊包括用于執(zhí)行調(diào)試操作的調(diào)試處理單 元,該調(diào)試處理單元分別與中央處理器和調(diào)試接口相連,該調(diào)試模塊中還包 括跟蹤單元,與中央處理器和調(diào)試處理單元分別相連,用于在調(diào)試過程中 監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與跟蹤觸發(fā)條件對應(yīng)的地址信息。
為實(shí)現(xiàn)上述目的,還提供了一種微控制器芯片調(diào)試方法,包括在調(diào)試
過程中,當(dāng)監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與跟蹤觸發(fā)條件對應(yīng)的地址信 自
由以上技術(shù)方案可知,本發(fā)明采用在微控制器芯片的調(diào)試模塊內(nèi)部增加 跟蹤單元,在調(diào)試過程中,記錄相關(guān)地址信息的技術(shù)手段,克服了現(xiàn)有微控 制器芯片在調(diào)試過程中不支持實(shí)時跟蹤微控制器內(nèi)部代碼流的技術(shù)問題,本 發(fā)明的微控制器芯片及其調(diào)試方法支持微控制器內(nèi)部代碼流的實(shí)時跟蹤和處 理功能,可在微控制器不停止工作的情況下對調(diào)試過程的歷史數(shù)據(jù)進(jìn)行記錄以供查詢,能夠根據(jù)調(diào)試過程中的歷史記錄設(shè)計調(diào)試策略,使調(diào)試功能的實(shí) 現(xiàn)更加靈活、可靠。
下面通過具體實(shí)施例并結(jié)合附圖對本發(fā)明做進(jìn)一步的詳細(xì)描述。


圖1為本發(fā)明翁b控制器芯片具體實(shí)施例一的結(jié)構(gòu)示意圖; 圖2為本發(fā)明微控制器芯片具體實(shí)施例二的結(jié)構(gòu)示意圖; 圖3為本發(fā)明微控制器芯片具體實(shí)施例三的結(jié)構(gòu)示意圖; 圖4為本發(fā)明微控制器芯片具體實(shí)施例三中一種調(diào)試過程端口信號的時序圖。
具體實(shí)施例方式
微控制器芯片實(shí)施例一
如圖1所示為本發(fā)明微控制器芯片具體實(shí)施例一的結(jié)構(gòu)示意圖,該微控 制器芯片100包括彼此相連的中央處理器1、調(diào)試模塊2和作為調(diào)試接口的 JTAG接口 3,該調(diào)試模塊2中具體包括調(diào)試處理單元21,分別與中央處理器 1和JTAG接口 3相連,用于從JTAG接口 3獲取調(diào)試相關(guān)的指令和數(shù)據(jù),進(jìn) 行處理后傳輸給中央處理器1以執(zhí)行調(diào)試操作,調(diào)試模塊2中還包括跟蹤單 元20,與中央處理器1和調(diào)試處理單元21分別相連,用于在該微控制器芯 片IOO進(jìn)行調(diào)試的過程中,當(dāng)監(jiān)測到中央處理器1中產(chǎn)生跟蹤觸發(fā)條件時, 記錄與跟蹤觸發(fā)條件對應(yīng)的地址信息。
本實(shí)施例的微控制器芯片在調(diào)試模塊中增加了跟蹤單元,在調(diào)試模塊控 制中央處理器進(jìn)行調(diào)試的過程中,當(dāng)中央處理器執(zhí)行指令時被監(jiān)測到產(chǎn)生跟 蹤觸發(fā)條件時,跟蹤單元就會記錄相應(yīng)的地址信息,這些地址信息可以記錄
斷返回、無條件跳轉(zhuǎn)、條件跳轉(zhuǎn)、調(diào)用或子程序返回等指令,記錄的地址信
7息與跟蹤觸發(fā)條件相對應(yīng),例如當(dāng)產(chǎn)生中斷指令時,記錄的地址信息是中 斷指令和中斷服務(wù)程序的地址;當(dāng)產(chǎn)生中斷返回指令時,記錄的地址信息是 返回地址信息;當(dāng)產(chǎn)生跳轉(zhuǎn)指令時,記錄的地址信息是跳轉(zhuǎn)目的點(diǎn)的地址信 息;當(dāng)產(chǎn)生調(diào)用指令時,記錄的地址信息是調(diào)用點(diǎn)的地址信息;當(dāng)產(chǎn)生子程 序返回指令時,記錄的地址信息是子程序返回點(diǎn)的地址信息。所記錄的地址 信息并不限于地址,還可以為與調(diào)試過程相關(guān)的,需要記錄的其他數(shù)據(jù)。
采用本實(shí)施例的技術(shù)方案,在需要時,調(diào)試處理單元或者中央處理器可 以實(shí)時地,在微控制器的運(yùn)行不停止的情況下在跟蹤單元中記錄調(diào)試過程的 相關(guān)數(shù)據(jù)以供查詢,跟蹤并處理微控制器內(nèi)部的代碼流,該微控制器芯片可 支持調(diào)試過程中內(nèi)部代碼流的跟蹤、處理功能,可適用于更靈活的調(diào)試技術(shù)。
微控制器芯片具體實(shí)施例二
如圖2所示為本發(fā)明微控制器芯片具體實(shí)施例二的結(jié)構(gòu)示意圖,本實(shí)施 例的微控制器芯片100包括中央處理器1、調(diào)試模塊2和JTAG接口 3,以及 設(shè)置在調(diào)試模塊2中的調(diào)試處理單元21和跟蹤單元20,該跟蹤單元20的具 體結(jié)構(gòu)包括緩沖區(qū)202,用于存儲地址信息,該緩沖區(qū)202與調(diào)試處理單 元21相連;類型寄存器203,用于記錄各跟蹤觸發(fā)條件對應(yīng)所需記錄的地址 信息類型;狀態(tài)寄存器204,用于配置存儲緩沖區(qū)202的狀態(tài)參數(shù);指針寄 存器205,用于記錄緩沖區(qū)202的待存儲地址;控制寄存器206,用于在產(chǎn)生 各跟蹤觸發(fā)條件時,使能控制地址信息的記錄操作;控制電路201,用于在 調(diào)試過程中監(jiān)測到中央處理器1中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)控制寄存器206 對應(yīng)跟蹤觸發(fā)條件的使能控制和類型寄存器203記錄的地址信息類型,從中 央處理器1中讀取地址信息,并根據(jù)狀態(tài)寄存器204配置的緩沖區(qū)202的狀 態(tài)參數(shù)和指針寄存器205記錄的緩沖區(qū)202待存儲地址,將該地址信息記錄 至緩沖區(qū)202,該控制電路201與中央處理器1、緩沖區(qū)202、類型寄存器203、 狀態(tài)寄存器204、指針寄存器205和控制寄存器2G6相連接。
本實(shí)施例中的控制寄存器206具體為在產(chǎn)生某個跟蹤觸發(fā)條件時,通過 其預(yù)先設(shè)定的使能控制值,控制是否執(zhí)行相關(guān)的地址信息的記錄操作,例如,
8產(chǎn)生中斷指令時,控制是否對應(yīng)記錄中斷指令和中斷服務(wù)程序的地址信息, 對應(yīng)哪些指令需要記錄地址信息可以根據(jù)具體情況通過設(shè)置控制寄存器來設(shè)
定;控制寄存器206還可以通過開始/停止位控制跟蹤單元20的開始、停止 及初始化狀態(tài),即停止或開始對所有地址信息的記錄操作;控制寄存器206 也可進(jìn)一步控制當(dāng)緩沖區(qū)202溢出時控制電路201是否執(zhí)行記錄操作的狀態(tài), 例如當(dāng)緩沖區(qū)202溢出時可選擇停止或繼續(xù)工作的狀態(tài),當(dāng)選擇繼續(xù)工作時, 緩沖區(qū)2 02的內(nèi)容可被覆蓋。
本實(shí)施例中類型寄存器203所記錄的是在跟蹤觸發(fā)條件產(chǎn)生時,緩沖區(qū) 202內(nèi)需要記錄的地址類型,例如前面所述的產(chǎn)生中斷指令,則應(yīng)記錄的地 址信息類型是中斷指令和中斷服務(wù)程序的地址。另外地址信息數(shù)據(jù)的類型可 以分為16位和8位的,多數(shù)情況下,8位地址信息數(shù)據(jù)即可滿足程序的正常 工作,而僅記錄較少位數(shù)的地址信息數(shù)據(jù)可以提高微控制器芯片在調(diào)試狀態(tài) 下的工作效率。
本實(shí)施例中狀態(tài)寄存器204通過配置相關(guān)位的數(shù)值定義了緩沖區(qū)202的 當(dāng)前狀態(tài),緩沖區(qū)202的狀態(tài)可以包括是否使能、是否為空、是否溢出等。 狀態(tài)寄存器204還配置了緩沖區(qū)202存儲空間的大小,通過設(shè)置狀態(tài)寄存器 204相關(guān)位的數(shù)值可將緩沖區(qū)202的存儲空間配置為512字節(jié)、256字節(jié)、128 字節(jié)或64字節(jié)等。
本實(shí)施例中指針寄存器205,可以為16位的寄存器,其存儲的信息是緩 沖區(qū)202中或RAM中待存儲下一個數(shù)據(jù)的地址,可以為一個指針,當(dāng)緩沖區(qū) 202不滿時,指針寄存器205中的存儲的地址指向緩沖區(qū)202中第一個未存 儲數(shù)據(jù)的地址,此時的有效存儲數(shù)據(jù)是從緩沖區(qū)202的第一個存儲單元到指 針寄存器205中地址減一的地址指向的存儲單元,當(dāng)緩沖區(qū)202溢出時,緩 沖區(qū)202內(nèi)的數(shù)據(jù)全部為有效數(shù)據(jù),指針寄存器205中的地址又循環(huán)成為緩 沖區(qū)202的起始地址。
本實(shí)施例中的控制電路201,實(shí)際上為跟蹤單元20的核心部件,控制電 路201根據(jù)各寄存器中的狀態(tài)值,完成跟蹤觸發(fā)條件的監(jiān)測、地址信息的讀取、向緩沖區(qū)的寫入等操作。
本實(shí)施例中的緩沖區(qū)202,進(jìn)一步的與調(diào)試處理單元21相連,調(diào)試處理 單元21可以從緩沖區(qū)202中讀取地址信息,從調(diào)試接口 3傳輸出去以供查詢。 緩沖區(qū)202中所存儲的地址信息,并不限于由調(diào)試處理單元/人調(diào)試接口向外 輸出的一種方式,還可以采用其他方式讀取以供查詢。
采用本實(shí)施例的技術(shù)方案,可以在微控制器不停止調(diào)試工作的過程中, 實(shí)時地查看調(diào)試過程的歷史數(shù)據(jù),跟蹤并處理微控制器內(nèi)部的代碼流,并且 能夠根據(jù)具體情況相應(yīng)的控制跟蹤單元的使能狀態(tài)、控制緩沖區(qū)的記錄操作, 則使實(shí)時跟蹤功能的實(shí)現(xiàn)更加靈活。
微控制器芯片實(shí)施例三
如圖3所示為本發(fā)明微控制器芯片具體實(shí)施例三的結(jié)構(gòu)示意圖,本實(shí)施 例可以是在上述實(shí)施例一或?qū)嵤├幕A(chǔ)上對JTAG接口 3,即測試接口的 擴(kuò)展,可增加測試就緒(Test Ready,以下簡稱TRDY)端口 31。本實(shí)施例的 微控制器芯片100可執(zhí)行標(biāo)準(zhǔn)的JTAG協(xié)議(參見IEEE standard 1),
外部的調(diào)試軟件可通過JTAG接口 3與調(diào)試模塊2和微控制器1實(shí)現(xiàn)通信,使 用測試存取端口 (Test Access Port,以下簡稱TAP)擴(kuò)展命令執(zhí)行在線調(diào) 試,其中JTAG接口 3使用的TAP命令可包括進(jìn)入/退出調(diào)試模式、訪問調(diào) 試指令寄存器、訪問調(diào)試地址寄存器、訪問調(diào)試數(shù)據(jù)寄存器和執(zhí)行調(diào)試指令 等。
具體應(yīng)用中,可執(zhí)行JTAG協(xié)議的調(diào)試模塊的具體結(jié)構(gòu)可以有多種形式, 例如可以包括調(diào)試控制寄存器、調(diào)試狀態(tài)寄存器、數(shù)個斷點(diǎn)控制寄存器和 數(shù)個斷點(diǎn)地址寄存器等。本實(shí)施例中,執(zhí)行調(diào)試功能的各部件可集成在調(diào)試 處理單元21中,調(diào)試處理單元21與JTAG接口 3的端口相連,接收數(shù)據(jù)和指 令,進(jìn)行相關(guān)的調(diào)試操作處理。
標(biāo)準(zhǔn)JTAG接口 3可配置以下端口測試時鐘(Test Clock,以下簡稱 TCK)端口 32,用于為調(diào)試模塊提供時鐘;測試模式選擇(Test Mode Select, 以下簡稱TMS)端口 33,用于進(jìn)行測試模式選擇;測試輸入數(shù)據(jù)(Test DataI叩ut,以下簡稱TDI )端口 34,用于通過該端口按照TCK所提供時鐘信號移 位輸入TAP指令或數(shù)據(jù);測試輸出數(shù)據(jù)(Test Data Input,以下簡稱TD0) 端口 35,用于通過該端口按照TCK所提供時鐘信號移位輸出TAP狀態(tài)和數(shù)據(jù); 測試復(fù)位(Test Reset,以下簡稱TRST)端口 36,用于復(fù)位調(diào)試寄存器和 TAP端口控制器。在上述標(biāo)準(zhǔn)端口的基礎(chǔ)上,本實(shí)施例中又增加了 TRDY端口 31,與調(diào)試處理單元21相連,用于標(biāo)識調(diào)試處理單元21接收指令或數(shù)據(jù)的 狀態(tài),即在進(jìn)入調(diào)試才莫式后,TRDY端口 31置位操作,標(biāo)識調(diào)試處理單元內(nèi) 部對接收調(diào)試指令或數(shù)據(jù)已準(zhǔn)備就緒,此時可輸入指令或數(shù)據(jù)。
本實(shí)施例具體執(zhí)行的操作過程為當(dāng)微控制器進(jìn)入調(diào)試模式后,TRDY端 口 31被置高電平,標(biāo)識芯片內(nèi)部已準(zhǔn)備好接收外部輸入進(jìn)來的指令,在調(diào)試 模式下,當(dāng)微控制器正在處理調(diào)試命令時,TRDY端口 31將置低電平,此時 調(diào)試處理單元21不能接收外部TAP命令;當(dāng)進(jìn)入調(diào)試模式且TRDY端口 31置 高后,外部軟件通過TAP端口先將調(diào)試命令寫入調(diào)試處理單元21,然后輸入 執(zhí)行調(diào)試指令命令,調(diào)試命令執(zhí)行中所需的數(shù)據(jù)均通過JTAG接口 3完成輸入 和輸出。如圖4所示為一典型的調(diào)試過程端口信號時序圖,其中第一行為TCK 端口、 TMS端口和TDI端口的信號,BEGI匯DM為進(jìn)入調(diào)試模式命令, ACCESS-DADR為訪問調(diào)試地址寄存器命令,ACCESS—DIR為訪問調(diào)試指令寄存 器命令,EXECUTE—DIR為執(zhí)行調(diào)試指令寄存器中指令的命令,ACCESS—DDAT訪 問調(diào)試數(shù)據(jù)寄存器命令,END-DM為退出調(diào)試模式命令;第二行為TRDY端口 的信號;第三行為對應(yīng)的微控制器的模式。
本實(shí)施例的微控制器芯片可進(jìn)一步保證在進(jìn)行微控制器調(diào)試過程中,輸 入、輸出數(shù)據(jù)的可靠讀寫,避免發(fā)生沖突。
樣t控制器芯片調(diào)試方法實(shí)施例
本發(fā)明微控制器芯片調(diào)試方法的具體實(shí)施例包括如下步驟在微控制器 執(zhí)行調(diào)試的過程中,當(dāng)監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與跟蹤觸發(fā)條件對 應(yīng)的地址信息。
本實(shí)施例的微控制器芯片調(diào)試方法可以具體由本發(fā)明微控制器芯片各實(shí)
ii施例的技術(shù)方案來執(zhí)行,在調(diào)試過程中,當(dāng)跟蹤單元的控制電路監(jiān)測到中央 處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)跟蹤觸發(fā)條件對應(yīng)的使能控制值和所需 記錄的地址信息類型,從中央處理器中讀取地址信息,并根據(jù)緩沖區(qū)狀態(tài)參 數(shù)以及緩沖區(qū)的待存儲地址,將地址信息記錄至緩沖區(qū)。
本實(shí)施例中,在調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時, 根據(jù)跟蹤觸發(fā)條件對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處
理器中讀取地址信息的步驟具體可以為
當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生中斷指令時,根據(jù)中斷指令對應(yīng) 的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取中斷指令和 中斷服務(wù)程序的地址信息。
或者可以為
當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生中斷返回指令時,根據(jù)中斷返回 指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取中 斷返回地址信息。
或者可以為
當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生跳轉(zhuǎn)指令時,根據(jù)跳轉(zhuǎn)指令對應(yīng)
的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取跳轉(zhuǎn)地址信 自
或者可以為
當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生調(diào)用指令時,根據(jù)調(diào)用指令對應(yīng) 的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取調(diào)用地址。 或者可以為
當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生子程序返回指令時,根據(jù)程序返 回指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取 子程序返回的地址信息。
當(dāng)然,跟蹤觸發(fā)條件和地址信息并不限于以上幾種,還可以根據(jù)具體需 要設(shè)置所需記錄的跟蹤觸發(fā)條件對應(yīng)的地址信息。對地址信息進(jìn)行記錄之后,調(diào)試處理單元可以獲取并從調(diào)試接口輸出地址信息,可以便于查閱,及時的 調(diào)整調(diào)試策略。
采用本實(shí)施例的技術(shù)方案,在需要時,可以實(shí)時地,在微控制器的運(yùn)行 不停止的情況下查看調(diào)試過程的歷史數(shù)據(jù),跟蹤并處理微控制器內(nèi)部的代碼 流,該^f鼓控制器芯片調(diào)試方法可支持調(diào)試過程中內(nèi)部代碼流的跟蹤、處理功 能,可適用于更靈活、可靠的調(diào)試技術(shù)。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟 可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機(jī)可讀 取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實(shí)施例的步驟;而前述 的存儲介質(zhì)包括R0M、 R雄、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其 限制;盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù) 人員應(yīng)當(dāng)理解其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或 者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技
術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
權(quán)利要求
1、一種微控制器芯片,包括彼此相連的中央處理器、調(diào)試模塊和調(diào)試接口,所述調(diào)試模塊包括用于執(zhí)行調(diào)試操作的調(diào)試處理單元,所述調(diào)試處理單元分別與所述中央處理器和調(diào)試接口相連,其特征在于所述調(diào)試模塊中還包括跟蹤單元,與所述中央處理器和調(diào)試處理單元分別相連,用于在調(diào)試過程中監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與所述跟蹤觸發(fā)條件對應(yīng)的地址信息。
2、 根據(jù)權(quán)利要求1所述的微控制器芯片,其特征在于,所述跟蹤單元包括緩沖區(qū),用于存儲所述地址信息,所述緩沖區(qū)與所述調(diào)試處理單元相連; 類型寄存器,用于記錄各所述跟蹤觸發(fā)條件對應(yīng)所需記錄的地址信息類型;狀態(tài)寄存器,用于配置所述緩沖區(qū)的狀態(tài)參數(shù); 指針寄存器,用于記錄所述緩沖區(qū)的待存儲地址; 控制寄存器,用于在產(chǎn)生各所述跟蹤觸發(fā)條件時,使能控制地址信息的 記錄操作;控制電路,用于在調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時, 根據(jù)所述控制寄存器對應(yīng)所述跟蹤觸發(fā)條件的使能控制和所述類型寄存器記 錄的地址信息類型,從所述中央處理器中讀取所述地址信息,并根據(jù)所述狀 態(tài)寄存器配置的緩沖區(qū)的狀態(tài)參數(shù)和所述指針寄存器記錄的緩沖區(qū)待存儲地 址,將所述地址信息記錄至所述緩沖區(qū),所述控制電路與所述中央處理器、 緩沖區(qū)、類型寄存器、狀態(tài)寄存器、指針寄存器和控制寄存器相連接。
3、 根據(jù)權(quán)利要求1 ,述的微控制器芯片,其特征在于所述調(diào)試接口為 JTAG接口。
4、 根據(jù)權(quán)利要求1或2或3所述的微控制器芯片,其特征在于所述調(diào) 試接口包括測試就緒端口 ,與所述調(diào)試處理單元相連,用于標(biāo)識所述調(diào)試處 理單元接收指令或數(shù)據(jù)的狀態(tài)。
5、 一種微控制器芯片調(diào)試方法,其特征在于包括在調(diào)試過程中,當(dāng)監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與所述跟蹤觸發(fā)條件對應(yīng)的地址信息。
6、 根據(jù)權(quán)利要求5所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào)試 過程中,當(dāng)監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時,記錄與所述跟蹤觸發(fā)條件對應(yīng)的地 址信息具體為在調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤 觸發(fā)條件對應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器 中讀取所述地址信息,并根據(jù)所述緩沖區(qū)狀態(tài)參數(shù)以及所述緩沖區(qū)的待存儲 地址,將所述地址信息記錄至所述緩沖區(qū)。
7、 根據(jù)權(quán)利要求6所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào)試 過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤觸發(fā)條件對 應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器中讀取所述 地址信息具體為當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生中斷指令時,根據(jù) 中斷指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處理器中讀 取中斷指令和中斷服務(wù)程序的地址信息。
8、 根據(jù)權(quán)利要求6所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào)試 過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤觸發(fā)條件對 應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器中讀取所述 地址信息具體為當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生中斷返回指令時, 根據(jù)中斷返回指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處 理器中讀取中斷返回地址信息。
9、 根據(jù)權(quán)利要求6所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào)試 過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤觸發(fā)條件對 應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器中讀取所述 地址信息具體為當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生跳轉(zhuǎn)指令時,根據(jù) 跳轉(zhuǎn)指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取跳轉(zhuǎn)地址信息。
10、 根據(jù)權(quán)利要求6所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào) 試過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤觸發(fā)條件 對應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器中讀取所述地址信息具體為當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生調(diào)用指令時,根 據(jù)調(diào)用指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中央處理器中讀取調(diào)用地址信息。
11、 根據(jù)權(quán)利要求6所述的微控制器芯片調(diào)試方法,其特征在于,在調(diào) 試過程中監(jiān)測到中央處理器中產(chǎn)生跟蹤觸發(fā)條件時,根據(jù)所述跟蹤觸發(fā)條件 對應(yīng)的使能控制值和所需記錄的地址信息類型,從所述中央處理器中讀取所 述地址信息具體為當(dāng)調(diào)試過程中監(jiān)測到中央處理器中產(chǎn)生子程序返回指令 時,根據(jù)程序返回指令對應(yīng)的使能控制值和所需記錄的地址信息類型,從中 央處理器中讀取子程序返回的地址信息。
12、 根據(jù)權(quán)利要求5 ~ 11所述的任一微控制器芯片調(diào)試方法,其特征在 于,在記錄與所述跟蹤觸發(fā)條件對應(yīng)的地址信息之后,還包括所述調(diào)試處 理單元獲取并輸出所述地址信息。
全文摘要
本發(fā)明涉及一種微控制器芯片及其調(diào)試方法,該芯片包括彼此相連的中央處理器、調(diào)試模塊和調(diào)試接口,該調(diào)試模塊包括調(diào)試處理單元,分別與中央處理器和調(diào)試接口相連,還包括跟蹤單元,與中央處理器和調(diào)試處理單元分別相連,用于在調(diào)試過程中監(jiān)測到產(chǎn)生跟蹤觸發(fā)條件時對應(yīng)記錄地址信息。該調(diào)試方法包括在調(diào)試過程中,記錄與所述跟蹤觸發(fā)條件對應(yīng)的地址信息。本發(fā)明采用在微控制器芯片的調(diào)試模塊內(nèi)部增加跟蹤單元的技術(shù)手段,克服現(xiàn)有調(diào)試過程中不支持實(shí)時跟蹤微控制器內(nèi)部代碼流的技術(shù)問題,本發(fā)明支持微控制器內(nèi)部代碼流的實(shí)時跟蹤和處理功能,可在微控制器不停止工作的情況下對調(diào)試過程的歷史數(shù)據(jù)進(jìn)行查詢,使調(diào)試功能的實(shí)現(xiàn)更加靈活。
文檔編號G06F17/50GK101458725SQ200710172339
公開日2009年6月17日 申請日期2007年12月14日 優(yōu)先權(quán)日2007年12月14日
發(fā)明者史衛(wèi)東, 谷志坤, 趙啟山 申請人:上海海爾集成電路有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1