[發明專利]一種VisualDSP++環境下外設讀寫模擬方法有效
| 申請號: | 201811269317.X | 申請日: | 2018-10-29 |
| 公開(公告)號: | CN109408388B | 公開(公告)日: | 2021-07-20 |
| 發明(設計)人: | 陳俊文;馮云;陳琦;王之鵬 | 申請(專利權)人: | 北京控制與電子技術研究所 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 中國航天科工集團公司專利中心 11024 | 代理人: | 葛鵬 |
| 地址: | 100038 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 visualdsp 環境 外設 讀寫 模擬 方法 | ||
本發明公開一種VisualDSP++環境下外設讀寫模擬方法,通過構建外設讀寫模擬系統、在內部存儲空間添加外設地址虛擬寄存器、在程序讀寫外設處插樁、在外設地址虛擬寄存器上建立觀察點、獲取外設讀寫時機和模擬外設接口數據步驟實現。本發明解決了在VisualDSP++環境下外設地址上的觀察點不能觸發DSP暫停問題。
技術領域
本發明涉及一種IDE環境下的模擬方法,特別是一種VisualDSP++環境下外設讀寫模擬方法。
背景技術
VisualDSP++是控制軟件典型的集成開發環境,由于控制軟件的通訊、數據采集、時序控制功能通過讀寫接口外設地址實現,為實現控制軟件閉環仿真運行,需要模擬外設接口功能,一般的外設模擬方法是通過集成開發環境調試運行控制軟件的DSP程序,在外設地址上建立觀察點,當程序讀寫接口外設地址時觸發DSP暫停,向該地址注入激勵數據以完成讀外設操作模擬,或獲取該地址的輸出數據以完成寫外設操作模擬。但是,VisualDSP++提供的觀察點功能對外部存儲空間范圍的地址無效,程序讀寫外設地址無法觸發DSP暫停,不能提供時機給用戶進行外設數據模擬。
發明內容
本發明目的在于提供一種VisualDSP++環境下外設讀寫模擬方法,解決在VisualDSP++環境下外設地址上的觀察點不能觸發DSP暫停的問題。
一種VisualDSP++環境下外設讀寫模擬方法的具體步驟為:
第一步 構建VisualDSP++環境下外設讀寫模擬系統
VisualDSP++環境下外設讀寫模擬系統,包括:VisualDSP++控制模塊和外設模擬模塊。
VisualDSP++控制模塊的功能為:設置外設地址虛擬寄存器、對程序進行插樁、編譯生成目標碼文件、設置觀察點和獲取外設模擬時機。
外設模擬模塊的功能為:保存和注入外設接口數據。
第二步 VisualDSP++控制模塊在內部存儲空間添加外設地址虛擬寄存器
VisualDSP++控制模塊分析DSP程序的內存映射文件,找出DSP程序未占用的兩個內存地址,分別記為$PRA,$PWA。
第三步 VisualDSP++控制模塊在程序讀寫外設處插樁
VisualDSP++控制模塊在DSP程序讀外設的代碼塊起始位置之前插入一段指令,將源外設地址保存到$PRA;在DSP程序寫外設的代碼塊結束位置之后插入一段指令,將目的外設地址保存到$PWA。重新編譯生成目標碼文件。
第四步 VisualDSP++控制模塊在外設地址虛擬寄存器上建立觀察點
VisualDSP++控制模塊加載DSP程序目標碼文件,在$PRA上建立一個存儲器觀察點,觸發類型設置為寫觸發,觸發值為程序讀外設代碼塊的源地址;在$PWA上建立一個存儲器觀察點,觸發類型設置為寫觸發,觸發值為程序寫外設代碼塊的目的地址。
第五步 VisualDSP++控制模塊獲取外設讀寫時機
VisualDSP++控制模塊將$PRA和$PWA地址單元的值清零后,記當前指令周期數為0,啟動調試運行DSP程序。
VisualDSP++控制模塊在DSP暫停時,讀取當前指令周期數,利用VisualDSP++的內存查看功能讀取$PRA和$PWA地址單元的值,當指令周期數發生變化且$PRA地址單元的值非零時,視為讀外設事件;當指令周期數發生變化且$PWA地址單元的值非零時,視為寫外設事件。
第六步 外設模擬模塊模擬外設接口數據
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京控制與電子技術研究所,未經北京控制與電子技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811269317.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:頁面測試方法及裝置
- 下一篇:一種基于深度學習的代碼缺陷檢測方法及裝置





