[發(fā)明專利]一種實(shí)現(xiàn)虛擬驗(yàn)證系統(tǒng)覆蓋率分析的方法有效
| 申請?zhí)枺?/td> | 201710141593.7 | 申請日: | 2017-03-10 |
| 公開(公告)號: | CN106844221B | 公開(公告)日: | 2020-05-22 |
| 發(fā)明(設(shè)計(jì))人: | 吳翔虎;陶永超;曲明成 | 申請(專利權(quán))人: | 深圳航天科技創(chuàng)新研究院 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 深圳市科吉華烽知識產(chǎn)權(quán)事務(wù)所(普通合伙) 44248 | 代理人: | 胡玉 |
| 地址: | 518000 廣東省*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 實(shí)現(xiàn) 虛擬 驗(yàn)證 系統(tǒng) 覆蓋率 分析 方法 | ||
本發(fā)明提供了一種實(shí)現(xiàn)虛擬驗(yàn)證系統(tǒng)覆蓋率分析的方法,包括:調(diào)用核接口函數(shù)生成disassembly.dat、disassembly.txt文件;打開disassembly.txt、all_c_file.txt、assemble.s文件;從disassembly.txt中讀取一行數(shù)據(jù),從中取得PC值、指令值、匯編指令,獲取PC值對應(yīng)的符號表信息;判斷disassembly.txt文件是否已經(jīng)讀取完畢,讀取完畢則判斷當(dāng)前C源文件指針是否有效,當(dāng)前C臨時(shí)文件指針是否有效,如二者皆有效則將當(dāng)前源文件中剩下的C語句都寫入臨時(shí)C文件中;關(guān)閉disassembly.txt、all_c_file.txt、assemble.s、當(dāng)前打開的源文件、當(dāng)前臨時(shí)C文件;逐行讀取disassembly.dat文件內(nèi)容,將每一行信息存入text_record結(jié)構(gòu)體中,并將每一個(gè)結(jié)構(gòu)體都串聯(lián)起來,組成結(jié)構(gòu)體鏈表;調(diào)用函數(shù)GenerateReport(),生成報(bào)告。本發(fā)明能夠?qū)σ逊抡鎴?zhí)行的用戶代碼進(jìn)行指令執(zhí)行次數(shù)統(tǒng)計(jì)、分支跳轉(zhuǎn)情況統(tǒng)計(jì)、代碼覆蓋率分析等操作。
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬驗(yàn)證系統(tǒng)仿真技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)虛擬驗(yàn)證系統(tǒng)覆蓋率分析的方法。
背景技術(shù)
虛擬驗(yàn)證系統(tǒng)是能夠?qū)η度胧接布到y(tǒng)進(jìn)行完整模擬的軟件系統(tǒng)。用戶可以在該系統(tǒng)上模擬運(yùn)行嵌入式軟件,無需相應(yīng)的硬件即可對嵌入式軟件進(jìn)行測試與調(diào)試。通過使用虛擬驗(yàn)證系統(tǒng),用戶不僅可以極大地縮短嵌入式軟件研制周期,而且能夠避免高昂的輔助測試硬件研制費(fèi)用、極大地降低系統(tǒng)成本。產(chǎn)品可以廣泛應(yīng)用于航空、航天、武器裝備、汽車、機(jī)器人、工業(yè)控制等嵌入式系統(tǒng)開發(fā)領(lǐng)域,提升這些行業(yè)的勞動(dòng)生產(chǎn)效率、降低成本、增強(qiáng)產(chǎn)品的競爭能力。
虛擬驗(yàn)證系統(tǒng)在提供純軟件模擬板級硬件測試環(huán)境的基礎(chǔ)上,提供了大量的輔助調(diào)試測試手段,包括暫停仿真執(zhí)行、斷點(diǎn)設(shè)置、下一步執(zhí)行(4種形式)、查看變量、仿真硬件信息以及故障注入、數(shù)據(jù)采集、覆蓋率分析功能。其中,覆蓋率分析功能能夠完成對虛擬驗(yàn)證系統(tǒng)仿真執(zhí)行的用戶代碼進(jìn)行指令執(zhí)行次數(shù)統(tǒng)計(jì)、分支跳轉(zhuǎn)情況統(tǒng)計(jì)、代碼覆蓋率分析等操作,最終生成覆蓋分析報(bào)告。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種實(shí)現(xiàn)虛擬驗(yàn)證系統(tǒng)覆蓋率分析的方法,在虛擬驗(yàn)證系統(tǒng)下,用戶能夠?qū)σ逊抡鎴?zhí)行的用戶代碼進(jìn)行指令執(zhí)行次數(shù)統(tǒng)計(jì)、分支跳轉(zhuǎn)情況統(tǒng)計(jì)、代碼覆蓋率分析等操作。
為達(dá)上述目的,本發(fā)明通過以下技術(shù)方案實(shí)現(xiàn):
一種實(shí)現(xiàn)虛擬驗(yàn)證系統(tǒng)覆蓋率分析的方法,所述方法包括:
S1、調(diào)用核接口函數(shù)CompECPUGetCovData(),SPARC核生成disassembly.dat、disassembly.txt文件,ARM核時(shí)只生成disassembly.dat文件;其中disassembly.txt為所有指令的執(zhí)行序列記錄,disassembly.dat為虛擬驗(yàn)證系統(tǒng)生成的中間代碼執(zhí)行歷史記錄文件;
S2、判斷當(dāng)前是否是ARM核,是ARM核則調(diào)用disassembly(elf_path)函數(shù),生成disassembly.txt文件;
S3、打開disassembly.txt、all_c_file.txt、assemble.s文件,其中,assemble.s是自動(dòng)生成的匯編源文件;
S4、從disassembly.txt文件中讀取一行數(shù)據(jù),從中取得PC值、指令值、匯編指令,獲取PC值對應(yīng)的符號表信息;
S5、判斷disassembly.txt文件是否已經(jīng)讀取完畢,讀取完畢執(zhí)行S6,否則執(zhí)行S11;
S6、判斷當(dāng)前C源文件指針是否有效,當(dāng)前C臨時(shí)文件指針是否有效,如二者皆有效則將當(dāng)前源文件中剩下的C語句都寫入臨時(shí)C文件中;
S7、關(guān)閉disassembly.txt、all_c_file.txt、assemble.s、當(dāng)前打開的源文件、當(dāng)前臨時(shí)C文件;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳航天科技創(chuàng)新研究院,未經(jīng)深圳航天科技創(chuàng)新研究院許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710141593.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測;錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測試作故障硬件的檢測或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測試或調(diào)試防止錯(cuò)誤
- 互動(dòng)業(yè)務(wù)終端、實(shí)現(xiàn)系統(tǒng)及實(shí)現(xiàn)方法
- 街景地圖的實(shí)現(xiàn)方法和實(shí)現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實(shí)現(xiàn)裝置及其圖像實(shí)現(xiàn)方法
- 增強(qiáng)現(xiàn)實(shí)的實(shí)現(xiàn)方法以及實(shí)現(xiàn)裝置
- 軟件架構(gòu)的實(shí)現(xiàn)方法和實(shí)現(xiàn)平臺
- 數(shù)值預(yù)報(bào)的實(shí)現(xiàn)方法及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 輸入設(shè)備實(shí)現(xiàn)方法及其實(shí)現(xiàn)裝置
- 確定吸收制品功效
- 一種虛擬機(jī)的安全訪問方法及虛擬機(jī)系統(tǒng)
- 一種虛擬桌面的解鎖方法及裝置
- 一種實(shí)時(shí)處理虛擬交換機(jī)網(wǎng)絡(luò)流量的虛擬化平臺
- 虛擬智能家居實(shí)訓(xùn)系統(tǒng)及其虛擬實(shí)訓(xùn)方法
- 虛擬機(jī)的磁盤資源的管理方法和裝置
- 一種基于KVM的虛擬網(wǎng)卡管理方法
- 虛擬資源數(shù)據(jù)處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲介質(zhì)
- 基于虛擬環(huán)境的道具使用方法、裝置、設(shè)備及介質(zhì)
- 虛擬道具的獲取方法、裝置、設(shè)備及介質(zhì)
- 驗(yàn)證系統(tǒng)、驗(yàn)證服務(wù)器、驗(yàn)證方法、驗(yàn)證程序、終端、驗(yàn)證請求方法、驗(yàn)證請求程序和存儲媒體
- 驗(yàn)證目標(biāo)系統(tǒng)的驗(yàn)證系統(tǒng)及其驗(yàn)證方法
- 驗(yàn)證設(shè)備、驗(yàn)證方法和驗(yàn)證程序
- 驗(yàn)證裝置、驗(yàn)證系統(tǒng)以及驗(yàn)證方法
- 驗(yàn)證方法、驗(yàn)證系統(tǒng)、驗(yàn)證設(shè)備及其程序
- 驗(yàn)證方法、用于驗(yàn)證的系統(tǒng)、驗(yàn)證碼系統(tǒng)以及驗(yàn)證裝置
- 圖片驗(yàn)證碼驗(yàn)證方法和圖片驗(yàn)證碼驗(yàn)證裝置
- 驗(yàn)證裝置、驗(yàn)證程序和驗(yàn)證方法
- 驗(yàn)證裝置、驗(yàn)證方法及驗(yàn)證程序
- 跨多個(gè)驗(yàn)證域的驗(yàn)證系統(tǒng)、驗(yàn)證方法、驗(yàn)證設(shè)備





