[發明專利]一種多核MIPS平臺下并行系統調試方法有效
| 申請號: | 200710304765.4 | 申請日: | 2007-12-29 |
| 公開(公告)號: | CN101470662A | 公開(公告)日: | 2009-07-01 |
| 發明(設計)人: | 劉彤;吳亞飚;張宏君 | 申請(專利權)人: | 北京天融信網絡安全技術有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 信息產業部電子專利中心 | 代理人: | 梁 軍 |
| 地址: | 100085北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 多核 mips 平臺 并行 系統 調試 方法 | ||
技術領域
本發明涉及多核MIPS(Microprocessor?without?interlocked?piped?stages,無內部互鎖流水級微處理器,或者,Million?Instructions?Per?Second,每秒百萬條指令)平臺下的并行技術,尤其涉及一種多核MIPS平臺下并行系統的調試方法。
背景技術
目前多核并行技術越來越普遍,多核MIPS平臺已可以提供成熟的解決方案,很多大芯片公司及龍芯也提供MIPS的支持,已經成為現代的嵌入式系統主流的平臺。MIPS大量應用在PDA、機頂盒、信息終端和防火墻等設備上,可以說使用多核MIPS嵌入式系統是未來嵌入式領域的發展方向。
由于多核MIPS平臺上并行運行的每個CPU都會對內存、硬盤、IO設備等資源進行操作,會競爭使用互斥資源,所以對于研發產品的調試工作是非常困難的。
目前,普遍使用的調式方法是跟蹤打印調試方法和Jtag調試方法。
跟蹤打印調試方法是目前在研發中最常用的方法,使用這個技術的方法很難找到問題具體發生的位置,要多次進行猜測,做大量試驗才可能會找到問題所在,這樣會在研發進度和成本上產生很大影響.在正式發布的產品上不能有不相關的很多打印信息,不能進行后期的客戶復雜環境中的問題跟蹤。由于要向終端輸出大量的打印信息,將很大影響程序的運行速度,所以有一些對性能要求很高的程序在產生問題的情況下不能使用跟蹤打印進行調試.
在多核并發情況下有可能根本不能使用:在進行嵌入式開發時,很多情況是打印對終端直接操作(如對串口直接操作),由于是并發多核執行,會出現打印重疊以至于看不到在打印什么,因為每個核都在向終端輸出。
Jtag調試方法是使用一個硬件與要調試的機器進行聯接,當系統或軟件出現問題時對CPU進行控制,然后可以讀各個CPU的PC指針,訪問堆棧的當前內容。使用Jtag方法要額外使用硬件設備,會增加成本;每個Jtag只能對一個機器進行操作,還要有一條外接線非常不方便于工作;對于CPU的PC指針跑飛的情況不能進行跟蹤定位;只能在研發價段使用;通過Jtag得到的數值要經過計算和查找才會找到PC運行所在的函數;在正式發布的產品上不能使用,因此不能進行后期的客戶復雜環境中的問題跟蹤。
發明內容
本發明提供一種多核MIPS平臺下并行系統調試方法,用以解決現有調試技術中存在的操作不便或根本無法適用的問題。
本發明方法包括:
步驟A:當運行階段產生關鍵問題時,保存出現問題的現場環境,并進行復位;
步驟B:當確認是由于出現關鍵問題而復位的,進行關鍵問題處理,保存復位現場的現場環境,并重新啟動設備;
步驟C:設備重新啟動,當確認在設備初始化過程產生新的調試信息,保存初始化現場的現場環境。
進一步地,所述步驟A具體包括:
步驟A1:當運行階段產生問題時,判斷所述問題是否為關鍵問題,如果是,執行步驟A2,否則在程序中處理,并在處理后返回到正常運行狀態;
步驟A2:判斷是否需要保存出現問題的CPU的所有寄存器的狀態,如果需要,保存該CPU的所有寄存器的狀態值,并執行步驟A3,否則直接執行步驟A3;
步驟A3:按要求進行復位。
進一步地,所述步驟A1還包括:通過軟件看門狗和/或硬件看門狗記錄死鎖信息,并將死鎖信息作為關鍵問題,執行步驟A2。
進一步地,所述步驟A3具體包括:
調用不可屏蔽中斷廣播函數,當其它CPU收到不可屏蔽中斷廣播后,分別將PC跳到0xBFC00000處進行復位。
進一步地,所述步驟B具體包括:
步驟B1:復位后,判斷是否是由于出現問題而啟動,如果是一次正常的復位操作,則進入復位流程,進行整板復位;如果啟動程序發現是由于出現關鍵問題而復位的,保存復位現場的現場環境,并標記此次復位新產生的調試信息;
步驟B2:保存現場環境后,判斷仲裁復位CPU,如果該CPU就是用來復位的CPU,進行整板復位,并重新啟動設備,否則永遠等待仲裁CPU復位。
進一步地,所述步驟B1中,將復位現場的現場環境保存到非易失寄存器中。
進一步地,所述步驟C具體包括:
步驟C1:設備重新啟動后會重新初始化所有硬件設備;
步驟C2:檢查本次啟動有沒有生成過新的調試信息,如果有,保存所述調試信息,并正常啟動,否則直接正常啟動。
進一步地,所述步驟C2中,保存所述調試信息的過程具體包括:
將調試信息生成文件進行保存;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京天融信網絡安全技術有限公司,未經北京天融信網絡安全技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710304765.4/2.html,轉載請聲明來源鉆瓜專利網。





