[發明專利]一種DSP數據區動態管理方法有效
| 申請號: | 201010291189.6 | 申請日: | 2010-09-26 |
| 公開(公告)號: | CN101950273A | 公開(公告)日: | 2011-01-19 |
| 發明(設計)人: | 王希敏;蔡志明;姚直象;郭瑞;張衛;幸高翔 | 申請(專利權)人: | 中國人民解放軍海軍工程大學 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02 |
| 代理公司: | 武漢開元知識產權代理有限公司 42104 | 代理人: | 黃行軍 |
| 地址: | 430033 湖北省武漢市*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 dsp 數據 動態 管理 方法 | ||
技術領域
本發明涉及信號處理技術領域,尤其涉及一種DSP數據區動態管理方法。
背景技術
隨著嵌入式實時系統在各個領域的廣泛應用,嵌入式軟件的開發也受到越來越多的矚目。在滿足系統實時性要求的前提下,如何提高內存分配的快速性、可靠性和高效性,是嵌入式軟件系統面臨的一個重大問題。內存分配的快速性從嵌入式系統對實時性的要求出發,要求內存在分配過程中盡可能的快,因此在嵌入式系統中,不可能采用通用操作系統中復雜而繁瑣的內存分配策略,一般都采用簡單、快速的內存分配方案;內存分配的可靠性則要求內存分配的請求必須得到滿足;而內存分配的高效性,則要求內存分配盡可能地減少浪費。
實時性通常要求嵌入式系統具有強大的并行計算能力與足夠的數據吞吐量,通常由多片專用DSP構成高效互聯的并行機來實現。而通用性就意味著系統處理的數據或對象的大小及數目是動態可變的,要求動態分配DSP數據區。在沒有通用操作系統支撐的DSP上,編制的應用軟件很難管理硬件資源,一般的DSP應用軟件與底層硬件緊耦合,與底層硬件緊耦合的DSP一般應用軟件則要求在設計時必須確定各種數據或對象在存儲器中的分布,無法適應動態的變化,無擴展通用性。
目前,一般的嵌入式系統采用的內存管理方法通常是在設計時將內存分成若干個內存區,每個內存區中的多個內存塊大小相同,不同內存區中的內存塊的大小不同,并且不同內存區中的內存塊的大小滿足k*2n,其中,n和k為自然數。這種方法通常存在以下缺點:
1、各內存區域的大小是預先估計得到的,與應用的數據塊大小不匹配,應用需要申請內存時,往往需要根據所申請內存的大小搜索各內存區,從中找到大小合適的內存塊,因而會產生內存碎片。
2、由于內存區中的內存塊的大小與應用的數據塊大小不匹配,當所申請的內存塊小于內存區中空閑塊時,將合并小內存塊;當所申請的內存塊大于內存區中空閑塊時,將分割大內存塊,因此,內存申請效率低下。
因此,亟待提供一種DSP數據區動態管理方法以克服上述缺陷。
發明內容
本發明要解決的技術問題在于提供一種DSP數據區動態管理方法,該方法可以根據實際應用的需要動態管理DSP的內存數據區,高效且沒有內存碎片。
為了解決上述技術問題,本發明提供了一種DSP數據區動態管理方法,其包括以下步驟:
根據DSP節點上對象數據的類型和每類對象數據的存儲需求將DSP數據區的地址空間分區,每個分區對應一個內存資源對象;
在每個所述內存資源對象中創建對象數據池,同一所述對象數據池中的數據塊大小相同且所述數據塊的大小與存入所述對象數據池的對象數據的存儲需求相應;
建立所述分區與對應的所述對象數據池的關聯并初始化所述對象數據池的控制信息;以及
執行所述對象數據池中的數據塊的分配與釋放。
與現有技術相比,本發明的DSP數據區動態管理方法根據需要劃分DSP內存數據區,系統執行時,可以按需動態分布對象數據,適應通用性的需求。并且,由于將不同的對象數據分類存放,每一類的數據池結構統一,減少了對象數據的存儲時間,有效提高了系統運行的效率。此外,由于是根據應用中的各類對象數據的存儲需求確定數據塊的大小,也就是說,數據塊的大小與應用需求相匹配,數據塊不需要分割與合并的操作,因而對象數據池中不會產生內存碎片,DSP數據區的內存利用率高。再者,先將DSP數據區的空間地址分區、創建對象數據池,然后再建立所述分區和所述對象數據池之間的聯系,這樣,內存資源和對象數據池的管理可以獨立變化,便于在各種類型DSP芯片的地址空間或者某個DSP芯片的任何地址區間中創建所需的對象數據池。
優選地,建立所述分區與對應的所述對象數據池的關聯并初始化所述對象數據池的控制信息的步驟具體包括:將所述對象數據池的數據結構定義為連續的數據塊鏈表并建立數據池索引表,所述對象數據池的控制信息包括鏈表頭和數據塊頭,所述鏈表頭用于存儲相應的對象數據池中已分配數據塊存儲空間指針、相應的對象數據池中空閑數據塊存儲空間指針及對象數據池中剩余數據塊的個數,所述數據塊頭存儲有對應數據塊的大小、數據指針以及下一個數據塊的指針。采用連續的數據塊鏈表表示對象數據池,便于實現多個對象數據池的管理,提高存儲效率。兩級的索引結構可以進一步加快數據塊的分配。
優選地,所述DSP數據區動態管理方法還包括將位圖與所述對象數據池相關聯,用于表示相應的對象數據池的空閑或非空閑狀態,以便于非正常使用時能快速返回錯誤信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍海軍工程大學,未經中國人民解放軍海軍工程大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010291189.6/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





