亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

除錯裝置的制作方法

文檔序號:6593460閱讀:135來源:國知局
專利名稱:除錯裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于程序中檢測并確定故障位置的除錯裝置,特別是涉及一種可擷取大量計算機(jī)目標(biāo)系統(tǒng),如微處理器(Microproces sor)在真實環(huán)境下的執(zhí)行狀態(tài)等數(shù)據(jù),并根據(jù)這些數(shù)據(jù)對系統(tǒng)性能、錯誤狀態(tài)進(jìn)行分析的除錯裝置。
背景技術(shù)
在一些具有完整的中央處理單元子程序的處理系統(tǒng)中,如微處理器,當(dāng)系統(tǒng)在執(zhí)行運(yùn)作時,即會有大量的數(shù)據(jù)、地址等信息在不斷進(jìn)行雙向傳輸,但由于系統(tǒng)程序中存在邏輯錯誤或考慮不周而導(dǎo)致程序運(yùn)轉(zhuǎn)發(fā)生的錯誤(bug),易導(dǎo)致系統(tǒng)產(chǎn)生死機(jī)而影響其運(yùn)作功能。為改善并避免系統(tǒng)死機(jī),通常是檢測系統(tǒng)程序中是否存有錯誤或故障之處以及確定該故障位置,以達(dá)到除錯(debug)的目的。
目前在系統(tǒng)的設(shè)計上有許多完善的工具,然而對于最終成品的除錯上卻未能有相對的改進(jìn),主要差異是在于設(shè)計時的目標(biāo)都較為明確,但是在進(jìn)行除錯時則連錯在哪里都不知道,更何況此時系統(tǒng)往往已經(jīng)整合在一起,復(fù)雜度更是增加許多,造成使用者無法有效進(jìn)行除錯。有時只好利用監(jiān)視器(watchdog)來監(jiān)視某預(yù)定狀態(tài)在系統(tǒng)內(nèi)規(guī)定的時間內(nèi)是否出現(xiàn)的事件,若屬于正常事件的定時發(fā)生,則引導(dǎo)系統(tǒng)處理此事件,若有異?,F(xiàn)象出現(xiàn)時,則通常是將系統(tǒng)重置(reset);但這僅能治標(biāo)無法治本的監(jiān)視器,根本無法徹底解決系統(tǒng)死機(jī)的問題。
另外,在嵌入式微處理器(embedded microprocessor)環(huán)境下,已知的程序除錯可使用的工具有示波器(Scope)或是邏輯分析器(logicanalyzer)等儀器。以示波器及邏輯分析器而言,它們比較能發(fā)揮作用的場合都是在比較短時間、容易復(fù)制的情況下的除錯;因為已經(jīng)大略了解錯誤的方向,所以才能在可疑的地方設(shè)定觸發(fā)條件,一旦有偶發(fā)性的錯誤或是長時間之后才發(fā)生錯誤的情況下,由于能記錄的程序執(zhí)行狀態(tài)的時間有限,很難發(fā)現(xiàn)錯誤原因。
因此,本發(fā)明即在針對上述的困擾,提出一種可以不影響真實系統(tǒng)的執(zhí)行,并可大量記錄系統(tǒng)執(zhí)行狀態(tài)的除錯裝置。

發(fā)明內(nèi)容
本發(fā)明的主要目的是提供一種可長時間對目標(biāo)系統(tǒng)在真實環(huán)境下的執(zhí)行狀態(tài)進(jìn)行記錄、分析的除錯裝置,以根據(jù)其所記錄的信息來進(jìn)行系統(tǒng)性能分析與程序錯誤范圍的判讀。
本發(fā)明的另一目的是提供一種除錯裝置,其是將欲了解的地址(address)、數(shù)據(jù)(data)及輸入/輸出(I/O)等信息事先列表轉(zhuǎn)換,提供使用者編輯設(shè)定,以便當(dāng)目標(biāo)系統(tǒng)執(zhí)行而觸發(fā)上述條件時,經(jīng)由其相對應(yīng)的代碼或索引,可大大地降低相對應(yīng)所需的記錄容量、傳輸頻寬,故可記錄大量信息。
為實現(xiàn)上述目的,本發(fā)明包括一使用者接口,用以設(shè)定欲記錄觸發(fā)的數(shù)據(jù),并將其傳送至一觸發(fā)事件轉(zhuǎn)換器,使其對每一觸發(fā)事件給予一個代碼并進(jìn)行邏輯簡化后傳送至一控制邏輯,以將該簡化數(shù)據(jù)設(shè)定到一可編程比較器,且可編程比較器系接收目標(biāo)系統(tǒng)的輸入信號,藉以比對該輸入信號是否符合事先設(shè)定的觸發(fā)條件;經(jīng)由可編程比較器比對條件符合的輸入數(shù)據(jù)相對應(yīng)的代碼索引傳給該控制邏輯,連同計時值存儲至一存儲裝置中,一觸發(fā)事件分析器自該存儲裝置讀取數(shù)據(jù),以便將該代碼索引取出并還原為原設(shè)定的觸發(fā)事件,并對其進(jìn)行分析除錯。
通過結(jié)合附圖對本發(fā)明的具體實施例的詳細(xì)說明,可更加容易了解本發(fā)明的目的、技術(shù)內(nèi)容、特點(diǎn)及其所達(dá)到的功效。


圖1為本發(fā)明的一較佳實施例示意圖。
圖2為圖1的另一示意圖。
圖3為本發(fā)明所有模塊整合在一起的實施例示意圖。
具體實施例方式
本發(fā)明是與一主計算機(jī)連結(jié),并連接至一目標(biāo)系統(tǒng),并依據(jù)使用者事先設(shè)定的地址(address)、數(shù)據(jù)(data)及輸入/輸出(I/O)等信息轉(zhuǎn)換的索引(index),以擷取該目標(biāo)系統(tǒng)執(zhí)行時所觸發(fā)的條件信息的索引并將其存儲,以利使用者進(jìn)行分析除錯操作,故可大大地降低相對應(yīng)所需的記錄容量與傳輸頻寬,進(jìn)而記錄大量信息。
如圖1所示,現(xiàn)在要除錯(debug)的目標(biāo)系統(tǒng)是一個內(nèi)有微處理器(microprocessor)12的專用集成電路(Application specific integratedcircuit,ASIC)10,其程序是放在一內(nèi)存14中。由于該專用集成電路10在進(jìn)行篩選電子組件的老化(burn-in)測試時,系統(tǒng)常會死機(jī),卻不知問題出自哪里,因此將此專用集成電路10連接至一除錯裝置20,以長時間記錄程序流程,故可協(xié)助了解ASIC 10系統(tǒng)實際執(zhí)行時的情況,進(jìn)一步縮小問題的范圍。
該除錯裝置20包括一使用者接口22,提供使用者可在其上進(jìn)行觸發(fā)條件編輯設(shè)定,設(shè)定的條件是所有想要分析的訊號,以條列式的方式記錄,且該訊號是地址、數(shù)據(jù)及輸入/輸出的組合,并將欲記錄觸發(fā)(trigger)的數(shù)據(jù)傳送至一觸發(fā)事件轉(zhuǎn)換器(Translator of Triggering Event)24。由于微處理器12的程序是經(jīng)由編譯器(complier)產(chǎn)生目標(biāo)碼(objectcode),再用連接器(linker)產(chǎn)生機(jī)器碼(machine code)后,即會產(chǎn)生所有子程序(subroutine)的進(jìn)入地址及離開地址,以此當(dāng)作所有觸發(fā)點(diǎn);只要檢測到內(nèi)存讀取的地址是其中一個,則可判斷為微處理器12程序執(zhí)行或離開某一子程序,故可將該些進(jìn)入地址及離開地址等數(shù)據(jù)藉由該使用者接口22輸入成觸發(fā)條件。而后對所有的觸發(fā)事件分別給予一個代碼,且該轉(zhuǎn)換器24會將該觸發(fā)事件作邏輯簡化后傳送至一接口(interface)26,再通過傳輸接口傳輸?shù)揭豢刂七壿?control logic)28;而控制邏輯28則依傳輸協(xié)議分別將該轉(zhuǎn)換器24所傳出的簡化數(shù)據(jù)設(shè)定到一可編程比較器(Programmable Comparator)30,其包括一多重觸發(fā)器(Multi-Trigger)32及一信號映像器(Signal Mapping)34,且該可編程比較器30連接并接收該ASIC 10目標(biāo)系統(tǒng)的輸入信號,以比對該輸入信號是否符合事先設(shè)定觸發(fā)條件的數(shù)據(jù)。該控制邏輯28連接一定時器(Timer)36,用以計時事件發(fā)生時間。
當(dāng)微處理器12執(zhí)行時,所有符合該觸發(fā)事件的輸入信號,即子程序的進(jìn)入地址與離開地址,都會使可編程比較器30內(nèi)的多重觸發(fā)器32產(chǎn)生條件符合的信號給該控制邏輯28,此時該信號映像器34輸出的信號即為這些觸發(fā)事件所相對應(yīng)的代碼,則輸出觸發(fā)事件相對應(yīng)的代碼至控制邏輯28,使控制邏輯28將其所接收到的符合信號及觸發(fā)事件代碼索引等所有訊息連同定時器36所提供觸發(fā)事件的發(fā)生時間傳送回接口26,該接口2 6再將這些訊息數(shù)據(jù)存儲至一存儲裝置(Storage)38中。當(dāng)要了解過去微處理器12到底執(zhí)行到哪里,使用者通過使用者接口22利用其所連接的一觸發(fā)事件分析器(Analyzer of Triggering Event)40從該存儲裝置38中將數(shù)據(jù)取出、還原,使取出的代碼索引還原為原本所設(shè)定的觸發(fā)事件,以進(jìn)行除錯分析,即可了解ASIC 10內(nèi)的微處理器12是否在某個子程序中跑不出來,是否中斷有異常情況發(fā)生,是否程序跑到不該執(zhí)行的地方等等;再加上定時器36,使得所有子程序的執(zhí)行次數(shù)、執(zhí)行時間也都可以得知,因而提供給使用者改善程序的依據(jù)。
在上述圖1所示的實施例中,除了外接式存儲裝置38連接該接口26與觸發(fā)事件分析器40之外,基于存儲容量及頻寬需求的考慮,本發(fā)明亦可將存儲裝置38直接連接至該控制邏輯28,如圖2所示,則該控制邏輯28可將其所接收到的所有訊息及時間值直接存儲在存儲裝置38中,無須再藉由接口26傳遞;反之,當(dāng)使用者通過使用者接口22要進(jìn)行分析除錯時,該觸發(fā)事件分析器40則必須先經(jīng)由接口26及控制邏輯28后,才能從該存儲裝置38中將數(shù)據(jù)取出、還原,以便進(jìn)行除錯分析。
上述二個實施例是利用一接口26將前后二部份的模塊(Module)整合在一起,以提供兩者傳輸數(shù)據(jù)之用。本發(fā)明亦可不藉由該接口26而直接將所有模塊整合在一起;如圖3所示,控制邏輯28直接連接至觸發(fā)事件轉(zhuǎn)換器24,該轉(zhuǎn)換器24將該觸發(fā)事件作邏輯簡化后直接傳送至控制邏輯28;控制邏輯28可將接收到的所有訊息及時間值直接存儲在存儲裝置38中,且觸發(fā)事件分析器40亦可直接從存儲裝置38中將數(shù)據(jù)取出、還原,以進(jìn)行除錯分析,其余的詳細(xì)說明則與圖1的實施例相同,在此不再贅述。
其中,本發(fā)明可將部份對速度要求較高的部份,如可編程比較器30的多重觸發(fā)器32及信號映像器34,直接內(nèi)建于目標(biāo)系統(tǒng)的集成電路(IC)中。且在該可編程比較器的前端還可增設(shè)一模擬-數(shù)字轉(zhuǎn)換器(analog todigital converter,ADC),使其可對所有過大或過小層級(level)的信號記錄下來。
前述除錯裝置除了以單一觸發(fā)條件為設(shè)定方式之外,該觸發(fā)方式亦可為多重觸發(fā),其是先利用可編程比較器30完成設(shè)定觸發(fā)事件1~N,當(dāng)該輸入信號先后依序發(fā)生該事件1至事件N后,即表示是真正的觸發(fā);如此,針對特定的事件模式(event pattern)亦可實時記錄,不用等到事后分析,因此特別用于串行接口(serial interface)的除錯。且該觸發(fā)事件模式可同時設(shè)定多組存在,而使用者接口22則可提供此狀態(tài)轉(zhuǎn)變(statetransition)的編輯之用。
本發(fā)明的除錯裝置是將欲了解的地址、數(shù)據(jù)及輸入/輸出等信息事先列表轉(zhuǎn)換成代碼索引,提供使用者編輯設(shè)定,以便當(dāng)目標(biāo)系統(tǒng)執(zhí)行而觸發(fā)上述條件時,經(jīng)由其相對應(yīng)的索引,可大大地降低相對應(yīng)所需的記錄容量、傳輸頻寬,且由于本發(fā)明僅針對要分析的情況來設(shè)定條件,其它中間過程的訊號都可以被省略,故可記錄大量信息。換言之,假設(shè)平均每個子程序含有100個微處理指令(instruction),則平均100個指令只要記錄一筆,所以記錄的處理速度只要1/100,記錄的數(shù)據(jù)量也只要1/100;再加上只要記錄觸發(fā)事件的代碼即可,存儲的數(shù)據(jù)量還可進(jìn)一步的減少,使得本發(fā)明可長時間對目標(biāo)系統(tǒng)在真實環(huán)境下的執(zhí)行狀態(tài)進(jìn)行記錄、分析,并根據(jù)其所記錄的信息來進(jìn)行程序錯誤范圍的判讀。
再者,本發(fā)明亦可利用上述原理及處理方式進(jìn)行系統(tǒng)性能分析,使其無須再另外加訊號線進(jìn)行分析,在進(jìn)行程序性能分析時,除錯裝置可將進(jìn)出每一程序、子程序的時間點(diǎn)記錄起來,進(jìn)而判斷每(某)一執(zhí)行步驟所需操作的時間,并依據(jù)該時間長短來進(jìn)行性能分析。因此,本發(fā)明不但能夠?qū)ο到y(tǒng)錯誤狀態(tài)進(jìn)行除錯判讀,并可依需要同時對系統(tǒng)進(jìn)行性能分析。
建立在本發(fā)明的主要架構(gòu)下,本發(fā)明的應(yīng)用范圍相當(dāng)廣泛,例如連接到目標(biāo)系統(tǒng)的外部裝置,并對目標(biāo)系統(tǒng)電路板上的集成電路(IC)下一命令(command),去填入該IC內(nèi)的寄存器(register),此時即可將觸發(fā)信號設(shè)成寄存器寫入以及相對應(yīng)的數(shù)據(jù)/地址,如此就可以得知該IC是否被設(shè)定為錯誤(error)的狀態(tài)。亦可應(yīng)用在DVD播放器(player)或MPEG譯碼器(decoder)等媒體,當(dāng)其對伺服機(jī)構(gòu)(servo)下一ATAPI命令時,即可對所有的ATAPI命令予以觸發(fā),由此即可得知是否有不對的命令或是命令的先后順序有錯。另外,定時器是可編程比較器的輸入之一,亦可以利用此計時間隔的過長或過短來判斷是否有某個裝置總線(device bus)產(chǎn)生鎖住(lock)或沖突錯誤。
以上所述的實施例僅是為了說明本發(fā)明的技術(shù)思想及特點(diǎn),其目的在使本領(lǐng)域的技術(shù)人員能夠了解本發(fā)明的內(nèi)容并據(jù)以實施,而不能以此限定本發(fā)明的權(quán)利要求范圍,凡依本發(fā)明所披露的精神所作的均等變化或修飾,均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍內(nèi)。
權(quán)利要求
1.一種除錯裝置,其連接至一目標(biāo)系統(tǒng),以擷取該目標(biāo)系統(tǒng)的信息進(jìn)行分析除錯操作,該除錯裝置包括一控制邏輯,用以輸出一欲紀(jì)錄的觸發(fā)事件的簡化數(shù)據(jù);一可編程比較器,其連接并接收該目標(biāo)系統(tǒng)的輸入信號,且該控制邏輯是將該簡化數(shù)據(jù)設(shè)定于該可編程比較器中,以比對該輸入信號是否符合事先設(shè)定的數(shù)據(jù),使條件符合的輸入數(shù)據(jù)的相對應(yīng)的代碼索引傳送給該控制邏輯;一存儲裝置,用以將該可編程比較器傳送給該控制邏輯的代碼索引存儲至此;以及一分析器,可從該存儲裝置將該代碼索引取出并還原為原本設(shè)定的觸發(fā)事件。
2.如權(quán)利要求1所述的除錯裝置,其中該可編程比較器包括一多重觸發(fā)器及一信號映像器,且該多重觸發(fā)器產(chǎn)生條件符合的信號給該控制邏輯,而該信號映像器則輸出觸發(fā)事件相對應(yīng)的代碼。
3.如權(quán)利要求1或2所述的除錯裝置,其中該設(shè)定數(shù)據(jù)的條件是將所有欲分析的訊號以條列式的方式記錄,且該訊號是地址、數(shù)據(jù)及輸入/輸出的組合。
4.如權(quán)利要求1所述的除錯裝置,其中該控制邏輯還連接一定時器,提供該控制邏輯觸發(fā)事件發(fā)生的時間。
5.如權(quán)利要求1所述的除錯裝置,其中還可將對速度要求較高的該可編程比較器部份直接內(nèi)建于一集成電路中。
6.如權(quán)利要求1所述的除錯裝置,其中該觸發(fā)方式可為多重觸發(fā),先設(shè)定觸發(fā)事件1~N,當(dāng)該輸入信號依序發(fā)生該事件1~N后,即表示是真正的觸發(fā)。
7.如權(quán)利要求6所述的除錯裝置,其中該多重觸發(fā)設(shè)定藉由該可編程比較器完成。
8.如權(quán)利要求1或4所述的除錯裝置,其中該定時器可設(shè)定為該可編程比較器的輸入之一,以利用該輸入信號時間的過長或過短來判斷是否產(chǎn)生沖突或錯誤。
9.如權(quán)利要求1所述的除錯裝置,其中該可編程比較器的前端還設(shè)有一模擬-數(shù)字轉(zhuǎn)換器。
10.如權(quán)利要求1所述的除錯裝置,還包含一使用者接口,用以設(shè)定該欲記錄的觸發(fā)事件的數(shù)據(jù);以及一轉(zhuǎn)換器,其接收該使用者接口送出的觸發(fā)事件數(shù)據(jù),且對該觸發(fā)事件分別給予一代碼,并將其邏輯簡化。
11.如權(quán)利要求10所述的除錯裝置,其中在該控制邏輯與該轉(zhuǎn)換器之間還設(shè)有一接口,提供兩者傳輸數(shù)據(jù)之用。
12.如權(quán)利要求1或11所述的除錯裝置,其中該存儲裝置也可通過該接口進(jìn)行數(shù)據(jù)的存取。
全文摘要
本發(fā)明提供一種除錯裝置,其是擷取一目標(biāo)系統(tǒng)的信息進(jìn)行分析除錯操作。此除錯裝置包括一使用者接口,用以設(shè)定欲記錄觸發(fā)的數(shù)據(jù),并將該數(shù)據(jù)傳送至一觸發(fā)事件轉(zhuǎn)換器,對每一觸發(fā)事件給予一個代碼并作邏輯簡化后傳送至一控制邏輯,以將該簡化數(shù)據(jù)設(shè)定到一可編程比較器,且可編程比較器接收目標(biāo)系統(tǒng)的輸入信號,以比對該輸入信號是否符合事先設(shè)定的觸發(fā)條件;經(jīng)由可編程比較器比對條件符合的輸入數(shù)據(jù)的相對應(yīng)的代碼索引傳給該控制邏輯并存儲至一存儲裝置中,分析器從該存儲裝置將該代碼索引取出并還原為原設(shè)定的觸發(fā)事件,以擷取大量目標(biāo)系統(tǒng)在真實環(huán)境下的執(zhí)行狀態(tài),并對其進(jìn)行分析除錯。
文檔編號G06F11/00GK1479204SQ02142228
公開日2004年3月3日 申請日期2002年8月26日 優(yōu)先權(quán)日2002年8月26日
發(fā)明者王文信 申請人:聯(lián)發(fā)科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1