本發(fā)明屬于嵌入式技術(shù)領(lǐng)域,具體涉及一種嵌入式設(shè)備cpu及其外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法、系統(tǒng)。
背景技術(shù):
在嵌入式開發(fā)過程中,經(jīng)常會(huì)遇到cpu外設(shè)調(diào)試出現(xiàn)異常的情況。出現(xiàn)異常了之后,很多時(shí)候,程序員會(huì)根據(jù)自己的經(jīng)驗(yàn)去“猜”問題出現(xiàn)在哪里。當(dāng)然,也會(huì)通過去讀取外設(shè)的各種寄存器來進(jìn)行分析,最終找到異常。但是,這個(gè)過程經(jīng)常是比較繁瑣的,有些問題的定位和重現(xiàn)也比較耗時(shí),因?yàn)橛行﹩栴}需要很特殊的測試環(huán)境下才會(huì)重現(xiàn)。而且,有時(shí)候雖然記錄了大量外設(shè)的數(shù)據(jù),但是缺少自動(dòng)的分析工具,消耗在分析異常點(diǎn)的時(shí)間格外多。在研發(fā)過程中可能還會(huì)遇到其他各種各樣的問題,一旦出現(xiàn)問題可以使用很多成熟的技術(shù)手段去解決,但是解決的過程并不都是很有效或者很快速的。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法及系統(tǒng),用以解決現(xiàn)有嵌入式設(shè)備cpu外設(shè)調(diào)試出現(xiàn)異常時(shí)不能快速有效定位和重現(xiàn)異常所在的問題;本發(fā)明還提供一種嵌入式設(shè)備cpu,用以實(shí)現(xiàn)實(shí)時(shí)監(jiān)測嵌入式設(shè)備cpu外設(shè)的狀態(tài)。
為解決上述技術(shù)問題,本發(fā)明的技術(shù)方案為:
本發(fā)明的一種嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng),包括運(yùn)行于嵌入式設(shè)備cpu端的服務(wù)器模塊和運(yùn)行于pc機(jī)端的pc機(jī)客戶端,所述嵌入式設(shè)備cpu端的服務(wù)器模塊和pc機(jī)客戶端通訊連接,所述嵌入式設(shè)備cpu端的服務(wù)器模塊包括:
狀態(tài)記錄模塊:用于讀取外設(shè)寄存器中存儲(chǔ)的狀態(tài)數(shù)據(jù);
數(shù)據(jù)存儲(chǔ)模塊:用于將狀態(tài)數(shù)據(jù)存入設(shè)定的存儲(chǔ)空間;
第一數(shù)據(jù)通訊模塊:用于接收pc機(jī)客戶端的指令信息,并根據(jù)指令信息尋址,查找對應(yīng)的存儲(chǔ)空間,將對應(yīng)存儲(chǔ)空間中的狀態(tài)數(shù)據(jù)發(fā)送到pc機(jī);
所述pc機(jī)客戶端包括:
第二數(shù)據(jù)通訊模塊:用于給外設(shè)狀態(tài)采集單元發(fā)送指令信息,并接收嵌入式設(shè)備cpu發(fā)送的狀態(tài)數(shù)據(jù);
可視化數(shù)據(jù)模塊:用于將狀態(tài)數(shù)據(jù)進(jìn)行顯示。
進(jìn)一步地,所述嵌入式設(shè)備cpu端的服務(wù)器模塊還包括用于將存儲(chǔ)的狀態(tài)數(shù)據(jù)按照設(shè)定的數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包的模塊。
進(jìn)一步地,所述pc機(jī)客戶端還包括用于解析接收的狀態(tài)數(shù)據(jù)的數(shù)據(jù)解析模塊。
進(jìn)一步地,所述pc機(jī)客戶端還包括用于將解析的狀態(tài)數(shù)據(jù)進(jìn)行分析的數(shù)據(jù)分析模塊。
進(jìn)一步地,所述數(shù)據(jù)結(jié)構(gòu)包括:頭部標(biāo)識(shí)、設(shè)備id號(hào)、時(shí)標(biāo)、狀態(tài)分類號(hào)、cpu號(hào)、數(shù)據(jù)長度、校驗(yàn)和以及狀態(tài)數(shù)據(jù);其中,設(shè)備id號(hào)表示不同的外設(shè),時(shí)標(biāo)表示記錄狀態(tài)的時(shí)刻,狀態(tài)分類號(hào)表示外設(shè)的不同狀態(tài),數(shù)據(jù)長度表示記錄狀態(tài)數(shù)據(jù)的長度。
進(jìn)一步地,還包括用于將分析的狀態(tài)數(shù)據(jù)進(jìn)行圖形化顯示的模塊,當(dāng)分析的狀態(tài)數(shù)據(jù)出現(xiàn)異常時(shí),將對應(yīng)的圖形高亮顯示。
本發(fā)明的一種嵌入式設(shè)備cpu,包括運(yùn)行于嵌入式設(shè)備cpu端的服務(wù)器模塊,所述嵌入式設(shè)備cpu端的服務(wù)器模塊包括:
狀態(tài)記錄模塊:用于讀取外設(shè)寄存器中存儲(chǔ)的狀態(tài)數(shù)據(jù);
數(shù)據(jù)存儲(chǔ)模塊:用于將狀態(tài)數(shù)據(jù)存入設(shè)定的存儲(chǔ)空間;
第一數(shù)據(jù)通訊模塊:用于接收pc機(jī)的指令信息,并根據(jù)指令信息尋址,查找對應(yīng)的存儲(chǔ)空間,將對應(yīng)存儲(chǔ)空間中的狀態(tài)數(shù)據(jù)發(fā)送到pc機(jī)。
進(jìn)一步地,還包括用于將存儲(chǔ)的狀態(tài)數(shù)據(jù)按照設(shè)定的數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包的模塊。
進(jìn)一步地,所述數(shù)據(jù)結(jié)構(gòu)包括:頭部標(biāo)識(shí)、設(shè)備id號(hào)、時(shí)標(biāo)、狀態(tài)分類號(hào)、cpu號(hào)、數(shù)據(jù)長度、校驗(yàn)和以及狀態(tài)數(shù)據(jù);其中,設(shè)備id號(hào)表示不同的外設(shè),時(shí)標(biāo)表示記錄狀態(tài)的時(shí)刻,狀態(tài)分類號(hào)表示外設(shè)的不同狀態(tài),數(shù)據(jù)長度表示記錄狀態(tài)數(shù)據(jù)的長度。
本發(fā)明的一種嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法,pc機(jī)客戶端發(fā)送包含需顯示狀態(tài)的外設(shè)的指令信息,嵌入式設(shè)備cpu端的服務(wù)器模塊根據(jù)指令信息尋址,查找對應(yīng)的存儲(chǔ)空間,將對應(yīng)存儲(chǔ)空間中的狀態(tài)數(shù)據(jù)發(fā)送到pc機(jī)客戶端,pc機(jī)客戶端在接收到狀態(tài)數(shù)據(jù)后,將狀態(tài)數(shù)據(jù)進(jìn)行顯示。
進(jìn)一步地,還包括將讀取的狀態(tài)數(shù)據(jù)按照設(shè)定的數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包的步驟。
進(jìn)一步地,還包括在接收到狀態(tài)數(shù)據(jù)后,解析接收的狀態(tài)數(shù)據(jù)的步驟。
進(jìn)一步地,還包括在解析接收的狀態(tài)數(shù)據(jù)后,將狀態(tài)數(shù)據(jù)進(jìn)行分析的步驟。
進(jìn)一步地,所述數(shù)據(jù)結(jié)構(gòu)包括:頭部標(biāo)識(shí)、設(shè)備id號(hào)、時(shí)標(biāo)、狀態(tài)分類號(hào)、cpu號(hào)、數(shù)據(jù)長度、校驗(yàn)和以及狀態(tài)數(shù)據(jù);其中,設(shè)備id號(hào)表示不同的外設(shè),時(shí)標(biāo)表示記錄狀態(tài)的時(shí)刻,狀態(tài)分類號(hào)表示外設(shè)的不同狀態(tài),數(shù)據(jù)長度表示記錄狀態(tài)數(shù)據(jù)的長度。
進(jìn)一步地,還包括將分析的狀態(tài)數(shù)據(jù)進(jìn)行圖形化顯示的步驟,當(dāng)分析的狀態(tài)數(shù)據(jù)出現(xiàn)異常時(shí),將對應(yīng)的圖形高亮顯示。
本發(fā)明的有益效果:
本發(fā)明的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法及系統(tǒng),通過在嵌入式設(shè)備軟件平臺(tái)設(shè)計(jì)實(shí)現(xiàn)的外設(shè)狀態(tài)采集單元來實(shí)時(shí)讀取嵌入式設(shè)備cpu外設(shè)的寄存器,獲取各種外設(shè)的各種狀態(tài),并將這些狀態(tài)信息發(fā)送給pc客戶端,pc客戶端將這些狀態(tài)信息進(jìn)行顯示,以供調(diào)試人員分析。本發(fā)明能夠在嵌入式開發(fā)過程中,及時(shí)的讀取各種外設(shè)的寄存器來查看并分析外設(shè)的狀態(tài),當(dāng)外設(shè)出現(xiàn)異常后,只需將本系統(tǒng)記錄的數(shù)據(jù)做分析便能夠及時(shí)的發(fā)現(xiàn)問題所在,無需再去寫測試代碼、或者拷機(jī)重現(xiàn)異常,方便問題的定位和重現(xiàn),有利于在觀測到外設(shè)異常后做及時(shí)的處理,從而提高測試效率。
本發(fā)明的嵌入式設(shè)備cpu,設(shè)計(jì)多個(gè)模塊來將嵌入式設(shè)備cpu外設(shè)的狀態(tài)信息進(jìn)行讀取并存儲(chǔ),能夠根據(jù)指令信息將需處理的外設(shè)狀態(tài)信息進(jìn)行打包發(fā)送,能夠提高測試效率。
附圖說明
圖1是本發(fā)明的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng)圖;
圖2是本發(fā)明的數(shù)據(jù)通訊示意圖;
圖3是本發(fā)明的數(shù)據(jù)包結(jié)構(gòu)示意圖;
圖4是存儲(chǔ)模塊邏輯存儲(chǔ)空間示意圖;
圖5是外設(shè)在內(nèi)存空間存儲(chǔ)結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖及實(shí)施例,對本發(fā)明作進(jìn)一步的詳細(xì)說明,但本發(fā)明的實(shí)施方式并不局限于此。
本發(fā)明的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng)實(shí)施例:
通常情況下,嵌入式設(shè)備cpu外設(shè)都有各自對應(yīng)的寄存器,而這些外設(shè)都會(huì)根據(jù)事先的定義,將自己的狀態(tài)信息存儲(chǔ)在這些寄存器里。若有需求,可通過讀取這些寄存器里存儲(chǔ)的內(nèi)容,即可獲知該外設(shè)的一些狀態(tài)信息。
如圖1所示,嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng)包括嵌入式設(shè)備cpu端服務(wù)器模塊和pc機(jī)客戶端,嵌入式設(shè)備cpu和pc機(jī)通訊連接,pc機(jī)上設(shè)置有客戶端,嵌入式設(shè)備cpu端服務(wù)器上設(shè)置有外設(shè)狀態(tài)采集單元。外設(shè)狀態(tài)采集單元在嵌入式設(shè)備軟件平臺(tái)設(shè)計(jì)實(shí)現(xiàn),與pc客戶端相互配合從而實(shí)現(xiàn)對嵌入式設(shè)備cpu外設(shè)狀態(tài)的實(shí)時(shí)監(jiān)測。外設(shè)狀態(tài)采集單元與pc客戶端之間的通訊可以支持多種方式:串口、以太網(wǎng)等,不同的通訊方式由相應(yīng)的介質(zhì)及其驅(qū)動(dòng)支持。
另外,這里的pc機(jī)并不只是指個(gè)人pc機(jī),也包括能夠處理數(shù)據(jù)且顯示數(shù)據(jù)的終端,可以是筆記本、pad等等。
外設(shè)狀態(tài)采集單元主要作用是記錄指定外設(shè)的狀態(tài)數(shù)據(jù),按照設(shè)定的數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包并存入各自對應(yīng)的存儲(chǔ)空間里,然后將這些外設(shè)狀態(tài)數(shù)據(jù)傳遞給pc客戶端;pc客戶端主要用來下發(fā)指令給外設(shè)狀態(tài)采集單元,并將接收的外設(shè)狀態(tài)數(shù)據(jù)進(jìn)行解析并分析。
外設(shè)狀態(tài)采集單元包括狀態(tài)記錄模塊、數(shù)據(jù)存儲(chǔ)模塊和第一數(shù)據(jù)通訊模塊。具體的作用和實(shí)現(xiàn)的功能如下:
1)狀態(tài)記錄模塊:根據(jù)pc客戶端發(fā)送的指令,確定需要記錄哪些外設(shè)的狀態(tài)信息以及記錄狀態(tài)的頻率等;然后cpu通過通訊總線來讀取需記錄狀態(tài)信息的外設(shè)的寄存器,獲取外設(shè)的各種狀態(tài)信息;接著將這些外設(shè)狀態(tài)按照圖3的格式進(jìn)行打包,形成一個(gè)個(gè)的數(shù)據(jù)包;并將這些數(shù)據(jù)包發(fā)送給數(shù)據(jù)存儲(chǔ)模塊。
從圖3中可以看出,該數(shù)據(jù)結(jié)構(gòu)包括:頭部標(biāo)識(shí)(oxeb90aa55)、設(shè)備id號(hào)、時(shí)標(biāo)、狀態(tài)分類號(hào)、cpu號(hào)、數(shù)據(jù)長度、校驗(yàn)和以及狀態(tài)數(shù)據(jù)。在嵌入式設(shè)備軟件平臺(tái)初始化的時(shí)候,外設(shè)狀態(tài)采集單元就會(huì)根據(jù)設(shè)備的實(shí)際的外設(shè)情況,為每個(gè)外設(shè)分配不同的設(shè)備id號(hào),以便在解析數(shù)據(jù)包時(shí)能夠根據(jù)設(shè)備id號(hào)便可區(qū)分不同的外設(shè);外設(shè)的狀態(tài)分類號(hào)需要根據(jù)每個(gè)外設(shè)的特性定義,同樣根據(jù)外設(shè)的狀態(tài)分類號(hào)便可區(qū)分外設(shè)的不同狀態(tài);時(shí)標(biāo)是記錄狀態(tài)的時(shí)刻。
2)數(shù)據(jù)存儲(chǔ)模塊:該模塊為每一個(gè)需要統(tǒng)計(jì)狀態(tài)的外設(shè)分配存儲(chǔ)空間,并按照一定的規(guī)律,將接收的數(shù)據(jù)包存儲(chǔ)在對應(yīng)的數(shù)據(jù)存儲(chǔ)區(qū)。如圖4所示,該外設(shè)對應(yīng)的數(shù)據(jù)存儲(chǔ)區(qū)是在初始化時(shí)候申請的內(nèi)存空間,每個(gè)外設(shè)都有自己獨(dú)立的存儲(chǔ)空間。
3)第一數(shù)據(jù)通訊模塊:用來處理和pc客戶端的數(shù)據(jù)交互,如圖2所示。該模塊不僅接收并解析pc客戶端下發(fā)的指令信息,根據(jù)解析出的指令信息來確定有哪些外設(shè)需要統(tǒng)計(jì)狀態(tài)信息;根據(jù)指令信息尋址,查找對應(yīng)的存儲(chǔ)空間,將對應(yīng)存儲(chǔ)空間中的數(shù)據(jù)包進(jìn)行上傳,即發(fā)送給pc客戶端。
pc客戶端包括第二數(shù)據(jù)通訊模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)分析模塊和可視化數(shù)據(jù)模塊。具體的作用和實(shí)現(xiàn)的功能如下:
1)第二數(shù)據(jù)通訊模塊:用來實(shí)現(xiàn)人機(jī)交互,即向外設(shè)狀態(tài)采集單元下發(fā)指令,接收外設(shè)狀態(tài)采集單元反饋來的數(shù)據(jù)包,并傳遞給數(shù)據(jù)解析模塊。
2)數(shù)據(jù)解析模塊:根據(jù)事先定義的數(shù)據(jù)包的數(shù)據(jù)結(jié)構(gòu),解析接收到的數(shù)據(jù)包,并根據(jù)解析的結(jié)果按照cpu號(hào)、設(shè)備id、狀態(tài)分類號(hào)等進(jìn)行分類統(tǒng)計(jì),放入不同的數(shù)據(jù)隊(duì)列供數(shù)據(jù)分析模塊和可視化數(shù)據(jù)模塊使用,存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)示意圖如圖5所示。
3)可視化數(shù)據(jù)模塊:將解析出來的狀態(tài)數(shù)據(jù)以一種圖形化的形式現(xiàn)實(shí)出來(線形圖、柱狀圖、餅狀圖、樹形圖等),顯示方式根據(jù)每種外設(shè)狀態(tài)的特點(diǎn)自動(dòng)選定,也可以是用戶自定義。
4)數(shù)據(jù)分析模塊:根據(jù)不同外設(shè)相應(yīng)的狀態(tài)特征,對數(shù)據(jù)解析模塊解析的狀態(tài)數(shù)據(jù)進(jìn)行實(shí)時(shí)的分析,一旦發(fā)現(xiàn)異常就會(huì)發(fā)出告警,并會(huì)在可視化模塊將異常數(shù)據(jù)對應(yīng)的圖形高亮顯示。這是一個(gè)針對不同的外設(shè)來進(jìn)行二次分析的一個(gè)過程,針對不同的外設(shè)會(huì)增加不同的分析策略,在不斷分析和測試的過程中,可以通過不斷的積累而越來越全面和強(qiáng)大。
具體的狀態(tài)監(jiān)測過程如下:
首先,裝置初始化。主要完成三部分工作,即:
1)為每個(gè)外設(shè)分配唯一的設(shè)備id號(hào),并根據(jù)每種外設(shè)各自的特點(diǎn),對需要進(jìn)行狀態(tài)記錄的外設(shè)進(jìn)行分類并分配狀態(tài)分類號(hào),即設(shè)備id號(hào)用來區(qū)分不同的外設(shè),狀態(tài)分類號(hào)用來區(qū)分同一外設(shè)的不同狀態(tài)類型。
2)初始化狀態(tài)監(jiān)測使用到的變量結(jié)構(gòu)、為外設(shè)分配存儲(chǔ)空間。
3)啟動(dòng)一個(gè)數(shù)據(jù)通訊的任務(wù),該任務(wù)會(huì)根據(jù)pc客戶端的指令來處理數(shù)據(jù)的上送。
接著,在初始化完成后,pc客戶端會(huì)通過第二數(shù)據(jù)通訊模塊下發(fā)指令給外設(shè)狀態(tài)采集單元,該下發(fā)的指令告訴外設(shè)狀態(tài)采集單元有哪些外設(shè)狀態(tài)信息需要進(jìn)行記錄以及記錄的頻率。
外設(shè)狀態(tài)采集單元通過通訊總線來讀取外設(shè)的存儲(chǔ)器,獲取外設(shè)的狀態(tài)信息,并按照圖3的格式進(jìn)行打包,形成一個(gè)個(gè)的數(shù)據(jù)包。這些數(shù)據(jù)包包括備id號(hào)、時(shí)標(biāo)、狀態(tài)分類號(hào)、cpu號(hào)、數(shù)據(jù)長度、校驗(yàn)和以及狀態(tài)數(shù)據(jù)等。并將這些信息發(fā)送給數(shù)據(jù)存儲(chǔ)模塊進(jìn)行存儲(chǔ)。數(shù)據(jù)存儲(chǔ)模塊按照事先分配的存儲(chǔ)空間,將這些數(shù)據(jù)包存儲(chǔ)在對應(yīng)的數(shù)據(jù)存儲(chǔ)區(qū)里。
在接收到pc客戶端下發(fā)的指令后,第一數(shù)據(jù)通訊模塊根據(jù)指令信息尋址,查找對應(yīng)的存儲(chǔ)空間,將對應(yīng)存儲(chǔ)空間中的數(shù)據(jù)包進(jìn)行上傳,將這些外設(shè)數(shù)據(jù)傳遞給pc客戶端。
然后,pc客戶端的第二數(shù)據(jù)通訊模塊在接收到這些數(shù)據(jù)包以后,數(shù)據(jù)解析模塊會(huì)解析接收的數(shù)據(jù)包,將這些數(shù)據(jù)包進(jìn)行分門別類,并將數(shù)據(jù)按照cpu號(hào)、設(shè)備id、外設(shè)分類號(hào)等信息進(jìn)行分類統(tǒng)計(jì),放入不同的數(shù)據(jù)隊(duì)列,以供不同的外設(shè)對應(yīng)的數(shù)據(jù)分析模塊和可視化數(shù)據(jù)模塊來使用。
最后,數(shù)據(jù)分析模塊將解析出來的數(shù)據(jù)進(jìn)行實(shí)時(shí)的分析,并將分析的結(jié)果通過可視化數(shù)據(jù)模塊以一種圖形化的形式表現(xiàn)出來,顯示方式可以根據(jù)每種外設(shè)的特點(diǎn)來選定,可以自動(dòng)選定,也可以是用戶自定義,這些圖形可以是線形圖、柱狀圖、餅形圖、樹形圖等等,方便人機(jī)交互。如若分析時(shí)發(fā)現(xiàn)數(shù)據(jù)異常便會(huì)告警,并在可視化圖形模塊中將對應(yīng)的圖形進(jìn)行高亮顯示,以提示測試人員。
在本實(shí)施例中,外設(shè)狀態(tài)采集單元中的狀態(tài)記錄模塊,能將讀取的狀態(tài)數(shù)據(jù)按照設(shè)定的數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包,形成一個(gè)個(gè)的數(shù)據(jù)包,接著,數(shù)據(jù)存儲(chǔ)模塊將這些數(shù)據(jù)包存儲(chǔ)在設(shè)定的存儲(chǔ)空間中,打包的主要目的是為了區(qū)分每個(gè)外設(shè)的每一種狀態(tài)的數(shù)據(jù),由于狀態(tài)數(shù)據(jù)量可能很大,所以需要將數(shù)據(jù)按照一種科學(xué)緊湊的方式緩存起來,充分利用有限的存儲(chǔ)空間(如圖4、5所示),大量的、不同外設(shè)的、不同狀態(tài)類型的數(shù)據(jù)放在一起,需要制定便捷、有效的數(shù)據(jù)協(xié)議來區(qū)分每一個(gè)狀態(tài)數(shù)據(jù)。在這個(gè)過程中,數(shù)據(jù)打包的過程對應(yīng)pc客戶端的數(shù)據(jù)解析模塊實(shí)現(xiàn)的功能,即將cpu端的數(shù)據(jù)通訊模塊發(fā)送來的數(shù)據(jù)包進(jìn)行解析,將狀態(tài)數(shù)據(jù)解析出來。這是一種較常規(guī)的一種數(shù)據(jù)發(fā)送方法,因數(shù)據(jù)結(jié)構(gòu)中帶有校驗(yàn)和,也使得pc客戶端處理的狀態(tài)數(shù)據(jù)較為準(zhǔn)確。
另外,pc客戶端將接收到外設(shè)狀態(tài)采集單元發(fā)送來的數(shù)據(jù)包進(jìn)行解析以后,可不做處理,直接通過可視化數(shù)據(jù)模塊將這些狀態(tài)數(shù)據(jù)進(jìn)行顯示,調(diào)試人員根據(jù)顯示的狀態(tài)數(shù)據(jù),人為的分析這些數(shù)據(jù),從而判斷是否出現(xiàn)異常。這種方法可能會(huì)花費(fèi)調(diào)試人員較多的時(shí)間,但也基本能實(shí)現(xiàn)本發(fā)明的功能。
總體來說,該系統(tǒng)能夠在研發(fā)階段提高調(diào)試效率、提升問題的分析能力,一旦本系統(tǒng)支持的外設(shè)在有異常的情況下,測試人員無需再去寫測試代碼、不用再耗時(shí)地拷機(jī)重現(xiàn)異常,只需將本系統(tǒng)記錄的數(shù)據(jù)在pc客戶端工具上重現(xiàn),就能在圖形化顯示的界面上發(fā)現(xiàn)異常發(fā)生的時(shí)間、異常發(fā)生的前后外設(shè)的狀態(tài)、異常發(fā)生時(shí)刻的狀態(tài)等,通過這些信息即可方便地分析嵌入式設(shè)備cpu外設(shè)的狀態(tài)。
本發(fā)明的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法實(shí)施例:
在上述介紹的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng),其實(shí)質(zhì)在于提供了一種本發(fā)明的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測方法,即pc機(jī)客戶端發(fā)送包含需顯示狀態(tài)的外設(shè)的指令信息,cpu根據(jù)指令信息讀取cpu外設(shè)存儲(chǔ)器中存儲(chǔ)的狀態(tài)信息,并將讀取的狀態(tài)信息存入設(shè)定的存儲(chǔ)空間,然后將狀態(tài)信息發(fā)送給pc機(jī)客戶端,pc機(jī)客戶端在接收到狀態(tài)數(shù)據(jù)后,將狀態(tài)數(shù)據(jù)進(jìn)行顯示。由于對上述系統(tǒng)的介紹已足夠清楚明白,故對該方法不再做過多介紹。
本發(fā)明的嵌入式設(shè)備cpu實(shí)施例:
在上述介紹的嵌入式設(shè)備cpu外設(shè)狀態(tài)實(shí)時(shí)監(jiān)測系統(tǒng)中介紹了該系統(tǒng)中的嵌入式設(shè)備cpu,嵌入式設(shè)備cpu端服務(wù)器模塊包括狀態(tài)記錄模塊、數(shù)據(jù)存儲(chǔ)模塊和第一數(shù)據(jù)通訊模塊,其實(shí)現(xiàn)的功能及工作原理也已做詳細(xì)介紹,故對本發(fā)明的嵌入式設(shè)備cpu不再做過多介紹。
盡管本發(fā)明的內(nèi)容已經(jīng)通過上述優(yōu)選實(shí)施例作了詳細(xì)介紹,但應(yīng)當(dāng)認(rèn)識(shí)到上述的描述不應(yīng)被認(rèn)為是對本發(fā)明的限制。在本領(lǐng)域技術(shù)人員閱讀了上述內(nèi)容后,對于本發(fā)明的多種修改和替代都將是顯而易見的。因此,本發(fā)明的保護(hù)范圍應(yīng)由所附的權(quán)利要求來限定。