国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      業(yè)務(wù)處理方法及采用該方法的用戶設(shè)備的制作方法

      文檔序號:6608765閱讀:127來源:國知局
      專利名稱:業(yè)務(wù)處理方法及采用該方法的用戶設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及采用微處理器技術(shù)領(lǐng)域,尤其涉及一種應(yīng)用于數(shù)字信號處理 器的業(yè)務(wù)處理方法及釆用該方法的用戶設(shè)備。
      背景技術(shù)
      隨著科學技術(shù)的不斷發(fā)展,數(shù)字信號處理器已經(jīng)被廣泛地應(yīng)用于各種領(lǐng)
      域。數(shù)字信號處理器進行業(yè)務(wù)處理的過程包括
      數(shù)字信號處理器在上電自舉(boot)時,將各種業(yè)務(wù)的業(yè)務(wù)指令加載到 其程序空間。經(jīng)過初始化后,各種業(yè)務(wù)處于激活狀態(tài),等待業(yè)務(wù)調(diào)用或業(yè)務(wù) 切換的通知。數(shù)字信號處理器在調(diào)用某個業(yè)務(wù)時,需要執(zhí)行該業(yè)務(wù)的業(yè)務(wù)指 令,并根據(jù)業(yè)務(wù)命令獲iM目關(guān)的業(yè)務(wù)數(shù)據(jù)。
      由于受內(nèi)存容量的限制,數(shù)字信號處理器往往不能滿足同時調(diào)用多個業(yè) 務(wù)的需求。通過增加外部存儲器雖然能夠解決存儲容量的需求,但外部存儲 器的讀寫速度相對于數(shù)字信號處理器而言是比較低的,從而降低了數(shù)字信號 處理器執(zhí)行業(yè)務(wù)的速度,當數(shù)字信號處理器需要從外部存儲器多次讀取業(yè)務(wù) 數(shù)據(jù)時,對數(shù)字信號處理器執(zhí)行業(yè)務(wù)的速度的影響更力。明顯。
      雖然選擇高速的外部存儲器可以提高數(shù)字信號處理器讀取業(yè)務(wù)數(shù)據(jù)的 速度,但是也帶來了一系列的問題。選擇高速外部存儲器的同時意味著外部 總線速率的提升,這不僅增加了存儲器的成本,還增加了系統(tǒng)的功耗。而且, 為保證正常工作,數(shù)字信號處理器要求其內(nèi)核的工作速率和外部總線的工作 速率保持一定的比例關(guān)系,當外部總線速率提升時,必需相應(yīng)地提高數(shù)字信 號處理器內(nèi)核的工作速率,這也會引入不必要的資源浪費。

      發(fā)明內(nèi)容
      有鑒于此,本發(fā)明解決的技術(shù)問題是提供一種應(yīng)用于數(shù)字信號處理器的 業(yè)務(wù)處理方法及采用該方法的用戶設(shè)備(UE),從而實現(xiàn)在不增加硬件成本 的前提下,提高數(shù)字信號處理器執(zhí)行業(yè)務(wù)的速度。為此,本發(fā)明提供的技術(shù)方案如下 一種業(yè)務(wù)處理方法,包括
      將各單獨編譯的業(yè)務(wù)保存在外部存儲器,數(shù)字信號處理器上電自舉時只 加載主控制程序;
      主控程序根據(jù)系統(tǒng)默認設(shè)置,加載規(guī)定的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)到數(shù)字信 號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,51導運行相關(guān)業(yè)
      務(wù);
      主控制程序收到業(yè)務(wù)切換命令時停止當前執(zhí)行的業(yè)務(wù),解析所述命令得 知待切換的業(yè)務(wù);
      主控制程序?qū)⒋袚Q業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器的相應(yīng) 存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù) 存儲空間;
      引導運行待切換業(yè)務(wù)。
      其中,按業(yè)務(wù)指令存儲空間的大小在外部存儲器中統(tǒng)一設(shè)置每個存放業(yè) 務(wù)指令的指令空間的容量,將每個業(yè)務(wù)的全部業(yè)務(wù)指令保存在相應(yīng)的一個指
      令空間。
      其中,進一步包括
      當一個指令空間無法保存一個業(yè)務(wù)的全部業(yè)務(wù)指令時,將該業(yè)務(wù)中優(yōu)先 級高的業(yè)務(wù)指令保存在該指令空間,將優(yōu)先級低的業(yè)務(wù)指令保存在外部指令 空間。
      其中,按業(yè)務(wù)數(shù)據(jù)存儲空間的大小在外部存儲器中統(tǒng)一設(shè)置每個存放業(yè) 務(wù)數(shù)據(jù)的數(shù)據(jù)空間的容量,將每個業(yè)務(wù)的全部業(yè)務(wù)數(shù)據(jù)保存在相應(yīng)的一個數(shù) 據(jù)空間。
      其中,進一步包括
      當一個數(shù)據(jù)空間無法保存一個業(yè)務(wù)的全部業(yè)務(wù)數(shù)據(jù)時,將該業(yè)務(wù)中優(yōu)先 級高的業(yè)務(wù)數(shù)據(jù)保存在該數(shù)據(jù)空間,將優(yōu)先級低的業(yè)務(wù)lt據(jù)保存在外部數(shù)據(jù) 空間。
      其中,釆用存儲器拷貝的方式加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      其中,采用直接存儲器訪問DMA的方式加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。其中,在引導運行業(yè)務(wù)時,將程序執(zhí)行指針調(diào)整到業(yè)務(wù)指令存儲空間的 首地址。
      其中,保存在外部存儲器的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)是不包含調(diào)試信息的機 器碼。
      其中,進一步包括
      在主控制程序中記錄每個業(yè)務(wù)所包括的各基本功能模塊的信息; 主控制程序得知待切換的業(yè)務(wù)后,確定待切換業(yè)務(wù)和當前業(yè)務(wù)共用的基 本功能模塊;
      不再加載共用的基本功能模塊對應(yīng)的業(yè)務(wù)指令代碼段和數(shù)據(jù)代碼段。其 中,進一步包括
      加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)后,對加載的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)進行校驗; 如果業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)都校驗正確,則引導運行待切換業(yè)務(wù);否則, 再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。 其中,進一步包括
      如果業(yè)務(wù)指令和/或業(yè)務(wù)數(shù)據(jù)校驗不正確,則將校驗次數(shù)加1;
      在校驗次數(shù)小于或等于門限值時,再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù);
      在校驗次數(shù)大于門限值時,不再加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù),將校驗次數(shù) 清零,等待下一次業(yè)務(wù)切換命令。
      本發(fā)明還提供一種采用上述方法的UE,該UE包括數(shù)字信號處理器和外 部存儲器,其特征在于
      外部存儲器保存各單獨編譯的業(yè)務(wù),每個業(yè)務(wù)包括其業(yè)務(wù)指令和業(yè)務(wù)數(shù)
      據(jù);
      數(shù)字信號處理器在上電自舉時只加載主控制程序;
      主控制程序根據(jù)系統(tǒng)默認設(shè)置,加載規(guī)定的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)到數(shù)字 信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,引導運行相關(guān) 業(yè)務(wù);
      主控制程序收到業(yè)務(wù)切換命令時停止當前執(zhí)行的業(yè)務(wù),解析所述命令得 知待切換的業(yè)務(wù);
      主控制程序?qū)⒋袚Q業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器的相應(yīng)存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù) 存儲空間,引導運行待切換業(yè)務(wù)。
      其中,存放業(yè)務(wù)指令的指令空間的容量和業(yè)務(wù)指令存儲空間的大小相
      等,每個業(yè)務(wù)的全部業(yè)務(wù)指令保存在相應(yīng)的一個指令空間;
      存放業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)空間的容量和業(yè)務(wù)數(shù)據(jù)存儲空間的大小相等,每個 業(yè)務(wù)的全部業(yè)務(wù)ft據(jù)保存在相應(yīng)的一個^t據(jù)空間。
      其中,采用存儲器拷貝或直接存儲器訪問DMA的方式加載業(yè)務(wù)指令和 業(yè)務(wù)數(shù)據(jù)。
      其中,在引導運行業(yè)務(wù)時,將程序執(zhí)行指針調(diào)整到業(yè)務(wù)指令存儲空間的 首地址。
      其中,保存在外部存儲器的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)是不包含調(diào)試信息的機 器碼。
      在本發(fā)明中,通過將所有業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)都保存在外部存儲 器,從而節(jié)省了數(shù)字信號處理器的內(nèi)存空間,使數(shù)字信號處理器可以將其內(nèi) 存更多地用于執(zhí)行某一個業(yè)務(wù),從而提高了數(shù)字信號處理器內(nèi)存的使用率。 內(nèi)存使用率的提高,使數(shù)字信號處理器在切換業(yè)務(wù)時,可以一次性地將待切 換業(yè)務(wù)的執(zhí)行指令和業(yè)務(wù)數(shù)據(jù)全部加載到其內(nèi)存,從而減少數(shù)字信號處理器 在執(zhí)行業(yè)務(wù)時對外部存儲器的訪問次數(shù),進而可以有效地提高數(shù)字信號處理 器執(zhí)行業(yè)務(wù)的速度。


      圖1是本發(fā)明中數(shù)字信號處理器通過主控制程序處理業(yè)務(wù)的流程圖; 圖2是本發(fā)明中數(shù)字信號處理器內(nèi)存和外部存儲空間的設(shè)計方式和業(yè)務(wù) 切換示意圖3是本發(fā)明提供的用戶設(shè)備的示意圖。
      具體實施例方式
      目前,數(shù)字信號處理器在上電自舉時會將各種業(yè)務(wù)的業(yè)務(wù)指令一并讀入 其程序空間,并激活各種業(yè)務(wù),以等待業(yè)務(wù)調(diào)用或業(yè)務(wù)切換。但從數(shù)字信號處理器實際應(yīng)用的角度看,很多時候并不需要這些業(yè)務(wù)同
      時運行,例如3G終端在進行Video Teleph one (可視電話)業(yè)務(wù)時,不會進 行流媒體播放業(yè)務(wù),也不需要同時進行手機電視業(yè)務(wù)。由于數(shù)字信號處理器 往往在一段時間內(nèi)僅執(zhí)行一種業(yè)務(wù),而數(shù)字信號處理器的很多內(nèi)存卻被其他 業(yè)務(wù)的控制模塊所占用,這就大大降低了數(shù)字信號處理器內(nèi)存的使用率。
      由于數(shù)字信號處理器內(nèi)存使用率的降低,最直接的后果就是在執(zhí)行某個 業(yè)務(wù)時,可供使用的內(nèi)存大大減少,限制了數(shù)字信號處理器每次從外部存儲 器讀取的數(shù)據(jù)量,增加了數(shù)字信號處理器訪問外部存儲器的次數(shù),降低了數(shù) 字信號處理器執(zhí)行業(yè)務(wù)的速度。
      通過上述分析可知,減少訪問外部存儲器的次數(shù),可以提高數(shù)字信號處 理器執(zhí)行業(yè)務(wù)的速度;而增加數(shù)字信號處理器的一次性數(shù)據(jù)讀取量,可以減 少數(shù)字信號處理器訪問外部存儲器的次數(shù);提高數(shù)字信號處理器內(nèi)存的使用 率,可以增加數(shù)字信號處理器從外部存儲器每次讀取的數(shù)據(jù)量。
      本發(fā)明的基本技術(shù)思想就是將各種業(yè)務(wù)模塊化,并將各種模塊化的業(yè) 務(wù)保存在外部存儲器,而在數(shù)字信號處理器內(nèi)存常駐的只有主控制程序;利 用常駐數(shù)字信號處理器內(nèi)存的主控制程序,動態(tài)地加載模塊化的業(yè)務(wù)到數(shù)字 信號處理器內(nèi)存運行,從而使數(shù)字信號處理器在一個時間只執(zhí)行一個業(yè)務(wù)。 這樣不僅提高了數(shù)字信號處理器內(nèi)存的使用率,而且模塊化的業(yè)務(wù)所占用的 空間也很小,往往可以被一次性地加載到數(shù)字信號處理器內(nèi)存,無需數(shù)字信 號處理器多次訪問外部存儲器,進而提高了數(shù)字信號處理器執(zhí)行業(yè)務(wù)的速度。
      所謂的業(yè)務(wù)^^莫塊化是指將多個單一功能的軟件才莫塊組合在一起,構(gòu)成 一個基本業(yè)務(wù)單元以實現(xiàn)某種業(yè)務(wù)。各種基本業(yè)務(wù)單元的集合構(gòu)成系統(tǒng)的實 時業(yè)務(wù)集。每個基本業(yè)務(wù)單元對數(shù)字信號處理器內(nèi)存的需求遠遠小于系統(tǒng)的 實時業(yè)務(wù)集的需求,這也是業(yè)務(wù)模塊化的思想1^出。
      例如,對于3G的多媒體業(yè)務(wù),需要的單一功能軟件模塊包括H.324 協(xié)議棧軟件、RTP協(xié)議軟件、H.263編解碼器軟件、AMR編解碼器軟件、 AAC解碼器和H.264解碼器等等。這些音、視頻編解碼軟件模塊對存儲器的 速率要求都非常高,同時存在于數(shù)字信號處理器內(nèi)存中幾乎是不可能的。而 從實際應(yīng)用的角度看,并不需要這些軟件模塊同時運行。為此,可以將它們劃歸到下述幾個基本業(yè)務(wù)單元Video Telephone業(yè)務(wù)單元(VT Module )、流 媒體業(yè)務(wù)單元(ST Module )和手機電視業(yè)務(wù)單元(TV Module )。 VT Module 由H.324協(xié)議軟件、H.263編解碼器軟件和AMR編解碼器軟件等基本軟件模 塊組成。ST Module由RTP協(xié)議軟件、AAC編解碼器和H.264解碼器等基本 軟件模塊組成。TV Module由MPEG4和AAC-LP等基本軟件模塊組成。
      同理,為了實現(xiàn)手持終端多模協(xié)議的動態(tài)切換,還可以利用業(yè)務(wù)模塊化 的思想構(gòu)建GSM (全^^移動通信系統(tǒng))、TD-SCDMA (時分同步碼分多址接 入)系統(tǒng)、WCDMA (寬帶碼分多址接入)系統(tǒng)、PHS (個人手持終端系統(tǒng)) 等的物理層協(xié)議能力單元。
      這里需要指出的是,為實現(xiàn)物理層的模式自動切換,可能會出現(xiàn)一些軟 件模塊的復用,例如駐留在GSM網(wǎng)絡(luò)的終端需要判斷TD-SCDMA網(wǎng)絡(luò)的網(wǎng) 絡(luò)條件來決定是否進行模式切換,這時可以只將實現(xiàn)TD-SCDMA網(wǎng)絡(luò)搜索 和測量部分的物理層軟件嵌入到GSM物理層中,而不需要全部的 TD-SCDMA物理層軟件協(xié)議棧與GSM物理層協(xié)議并存。
      將所有的業(yè)務(wù)都進行模塊化后,利用數(shù)字信號處理器內(nèi)存常駐的主控制 程序可以動態(tài)地加載模塊化的業(yè)務(wù)到數(shù)字信號處理器內(nèi)存運行,這就涉及到 數(shù)字信號處理器內(nèi)存劃分的問題。
      通常,^:字信號處理器內(nèi)存都分為程序存儲空間和數(shù)據(jù)存儲空間,這里, 將數(shù)字信號處理器內(nèi)存的程序存儲空間分為主控指令存儲空間和業(yè)務(wù)指令存 儲空間,將數(shù)據(jù)存儲空間分為主控數(shù)據(jù)存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間。
      其中,主控指令存儲空間和主控數(shù)據(jù)存儲空間合稱為片內(nèi)主控存儲空 間,用于滿足主控制程序的需求;業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間合 稱為片內(nèi)業(yè)務(wù)存儲空間,用于滿足基本業(yè)務(wù)單元的運行需求。在進行業(yè)務(wù)切 換時,片內(nèi)業(yè)務(wù)存儲空間將被新的基本業(yè)務(wù)單元的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)所覆 蓋。
      為簡化實現(xiàn),在系統(tǒng)初始化設(shè)計時可以將四個內(nèi)存空間的首地址和容量 明確指定(通過系統(tǒng)的內(nèi)存管理文件實現(xiàn))。對于不同的基本業(yè)務(wù)單元,數(shù)字 信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存^^空間都保持不變。
      根據(jù)實際應(yīng)用場合的不同,片內(nèi)主控存儲空間和片內(nèi)業(yè)務(wù)存儲空間所占的內(nèi)存比例可以不同。對主控調(diào)度實時性要求不高的場景下,可以將數(shù)字信 號處理器內(nèi)存全部設(shè)為片內(nèi)業(yè)務(wù)存儲空間,而將實時性要求低的主控制程序 全部放到外部存儲器中。需要指出的是,在這種情況下,在外部存儲器中也 要明確定義兩段空間,分別用于主控指令和主控數(shù)據(jù)的存放,以滿足主控制 程序運行的需要。
      上述介紹了對數(shù)字信號處理器內(nèi)存劃分的方法,下面介紹在外部存儲器 中為每個基本業(yè)務(wù)單元劃分存儲空間的方法。
      首先,將外部存儲空間分成業(yè)務(wù)指令空間和業(yè)務(wù)數(shù)據(jù)空間;
      然后,按數(shù)字信號處理器內(nèi)存的業(yè)務(wù)指令存儲空間的大小設(shè)置外部存儲 器中每個保存基本業(yè)務(wù)單元的業(yè)務(wù)指令的指令空間的容量,相應(yīng)地,按數(shù)字 信號處理器內(nèi)存的業(yè)務(wù)數(shù)據(jù)存儲空間大小設(shè)置外部存儲器中每個保存基本業(yè) 務(wù)單元的業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)空間的容量。
      可以看出,對于一個基本業(yè)務(wù)單元而言, 一個保存該基本業(yè)務(wù)單元的業(yè) 務(wù)指令的指令空間和一個保存該基本業(yè)務(wù)單元的業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)空間共同構(gòu) 成一個保存該基本業(yè)務(wù)單元的完整的業(yè)務(wù)空間。
      可以按數(shù)字信號處理器內(nèi)存的業(yè)務(wù)指令存儲空間的大小,統(tǒng)一設(shè)置外部 存儲器中每個基本業(yè)務(wù)單元的指令空間;按數(shù)字信號處理器內(nèi)存的業(yè)務(wù)數(shù)據(jù) 存儲空間的大小,統(tǒng)一設(shè)置外部存儲器中每個基本業(yè)務(wù)單元的數(shù)據(jù)空間。這 樣有利于業(yè)務(wù)切換時使用存儲器拷貝或DMA (直接存儲器訪問)方式實現(xiàn) 軟件快速加載,并方便主控制程序的設(shè)計。但是,由于基本業(yè)務(wù)單元的保存 空間有時候會很小,而采用統(tǒng)一的容量保存每個基本業(yè)務(wù)單元有時會浪費外 部存儲空間。
      在實際應(yīng)用時,也可以根據(jù)每個基本業(yè)務(wù)單元的大小為每個基本業(yè)務(wù)單 元單獨設(shè)置指令空間和數(shù)據(jù)空間,這樣可以節(jié)省外部存儲空間。但是,這樣 也會增加數(shù)字信號處理器加載基本業(yè)務(wù)單元時的處理復雜度,不利于數(shù)字信 號處理器采用存儲器拷貝或DMA方式進行快速加載。
      在實際應(yīng)用時,如果出現(xiàn)數(shù)字信號處理器內(nèi)存不能滿足一個基本業(yè)務(wù)單 元的要求的情況時,可以將優(yōu)先級高的單一功能軟件模塊放在內(nèi)存運行,將 優(yōu)先級低的單一功能軟件模塊放在外部存儲器運行。其中,單一功能軟件模塊的優(yōu)先級可以根據(jù)不同的要求具體設(shè)置,例如, 可以根據(jù)實時性的要求設(shè)置單一功能軟件模塊的優(yōu)先級,實時性要求越高的 單一功能軟件模塊,其優(yōu)先級越高。
      當數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間/業(yè)務(wù)數(shù)據(jù)存儲空間不足 以容納一個基本業(yè)務(wù)單元的業(yè)務(wù)指令/業(yè)務(wù)數(shù)據(jù)時,相應(yīng)地,外部存儲器中的
      一個指令空間/數(shù)據(jù)空間也無法容納所述基本業(yè)務(wù)單元的業(yè)務(wù)指令/業(yè)務(wù)數(shù) 據(jù)。此時,可以只將所述基本業(yè)務(wù)單元中優(yōu)先級高的業(yè)務(wù)指令/業(yè)務(wù)lt據(jù)保存 到外部存儲器的指令空間/數(shù)據(jù)空間,而將所述基本業(yè)務(wù)單元中優(yōu)先級低的業(yè) 務(wù)指令/業(yè)務(wù)數(shù)據(jù)保留在數(shù)字信號處理器外部指令/數(shù)據(jù)空間中運行。采用這 樣的保存方法,在進行業(yè)務(wù)切換時,可以保證主控制程序?qū)⑺龌緲I(yè)務(wù)單 元的高優(yōu)先級業(yè)務(wù)指令/業(yè)務(wù)數(shù)據(jù)加載到數(shù)字信號處理器內(nèi)存中運行,將低優(yōu) 先級業(yè)務(wù)指令/業(yè)務(wù)數(shù)據(jù)放在外部存儲器運行。
      需要說明的是,數(shù)字信號處理器外部指令空間、數(shù)據(jù)空間是在邏輯上區(qū) 別于所述的外部存儲器的指令空間和數(shù)據(jù)空間的存儲空間;從物理上而言, 指令空間、數(shù)據(jù)空間、外部指令空間和外部數(shù)據(jù)空間、可以屬于同一個外部 存儲器,也可以分屬于不同的外部存儲器。
      在本發(fā)明中,主控制程序的功能主要是業(yè)務(wù)識別、業(yè)務(wù)加載和引導運行 業(yè)務(wù)。
      業(yè)務(wù)識別是接受系統(tǒng)命令,解析命令獲取下一步需要運行的業(yè)務(wù)信息; 業(yè)務(wù)加載即才艮據(jù)業(yè)務(wù)識別的結(jié)果將相應(yīng)基本業(yè)務(wù)單元的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù) 從外部存儲器中加載到數(shù)字信號處理器內(nèi)存空間,必要時進行適當?shù)拇a可 靠性校驗保護;引導運行業(yè)務(wù)是保證新加載的基本業(yè)務(wù)單元能夠正常運行所 必須進行的系統(tǒng)初始化工作。
      圖1是數(shù)字信號處理器通過主控制程序處理業(yè)務(wù)的流程圖。 在步驟ll中,將主控制程序和每個基本業(yè)務(wù)單元分別構(gòu)成系統(tǒng)子工程, 單獨調(diào)試編譯每個系統(tǒng)子工程,將編譯后的所有基本單元都保存在外部存儲 器。
      為能實現(xiàn)各基本業(yè)務(wù)單元間的動態(tài)切換,本發(fā)明的設(shè)計方法有別于常規(guī) 的軟件工程開發(fā)。在常規(guī)的軟件工程中,所有軟件系統(tǒng)功能組件在內(nèi)存中在的位置是不同的,而本發(fā)明中,所有基本業(yè)務(wù)單元在運行時,都處于相同 的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,并且首地址也是相同的。在軟件 開發(fā)時,本發(fā)明釆用主控制程序和任意基本業(yè)務(wù)單元構(gòu)成系統(tǒng)子工程的方式 開發(fā)和調(diào)試,也就是說,如果全系統(tǒng)要實現(xiàn)N種業(yè)務(wù)切換,就必須組建N個 系統(tǒng)子工程獨立開發(fā)調(diào)試。
      在系統(tǒng)子工程構(gòu)建時,應(yīng)該明確指定基本業(yè)務(wù)單元的業(yè)務(wù)指令和業(yè)務(wù)數(shù) 據(jù)的空間首地址,即,數(shù)字信號處理器內(nèi)存中業(yè)務(wù)指令存儲空間的首地址和 業(yè)務(wù)數(shù)據(jù)存儲空間的首地址。各系統(tǒng)子工程分別開發(fā)調(diào)試完成后,從編譯生 成的目標文件中分離出基本業(yè)務(wù)單元的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù),并通過下載工 具分別存放到數(shù)字信號處理器外部存儲器中預(yù)先定義的指令空間和數(shù)據(jù)空間 中。
      需要指出的是,存放在數(shù)字信號處理器外部的基本業(yè)務(wù)單元代碼是不包 含調(diào)試信息的機器碼。數(shù)字信號處理器上電自舉時讀入內(nèi)存并執(zhí)行的代碼只 有主控制程序的代碼,所以系統(tǒng)中只有主控制程序的代碼以數(shù)字信號處理器 需要的啟動文件格式存在于外部存儲器中,所有基本業(yè)務(wù)能力單元的代碼都 以機器碼的形式存在。
      在步驟12中,數(shù)字信號處理器上電自舉時只加載主控制程序并進行系 統(tǒng)初始化。
      在步驟13中,主控程序根據(jù)系統(tǒng)默認設(shè)置,加載特定的業(yè)務(wù)指令到數(shù) 字信號處理器內(nèi)存,作為當前業(yè)務(wù)。
      在步驟14中,主控制程序執(zhí)行當前業(yè)務(wù),并判斷是否收到業(yè)務(wù)切換命令。
      如果收到業(yè)務(wù)切換命令,則在步驟15中,主控制程序停止當前執(zhí)行的 業(yè)務(wù)。如果沒有收到業(yè)務(wù)切換命令,則繼續(xù)執(zhí)行步驟14。
      在步驟16中,主控制程序解析業(yè)務(wù)切換命令以識別待切換的業(yè)務(wù)。
      在步驟17中,主控制程序根據(jù)識別結(jié)果將待切換業(yè)務(wù)的業(yè)務(wù)指令和業(yè) 務(wù)數(shù)據(jù)從外部存儲器的相應(yīng)存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè) 務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間。
      在步驟18中,引導運行新加載的業(yè)務(wù),執(zhí)行業(yè)務(wù)運行所需要的系統(tǒng)初始化工作。至此,完成業(yè)務(wù)切換功能。
      其中,在引導運行新加載的業(yè)務(wù)時,調(diào)整程序執(zhí)行指針,使程序執(zhí)行指 針指向片內(nèi)業(yè)務(wù)指令存儲空間的首地址。
      數(shù)字信號處理器內(nèi)存和外部存儲空間的設(shè)計方式和業(yè)務(wù)切換示意圖如 圖2所示,這里只描述數(shù)字信號處理器內(nèi)存能夠滿足系統(tǒng)所需的各個基本業(yè)
      務(wù)能力需求的情況。
      更具體的說,假設(shè)用戶終端當前運行的業(yè)務(wù)是流媒體業(yè)務(wù),相應(yīng)執(zhí)行的
      基本業(yè)務(wù)單元是ST Module,此時流媒體業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)被加載 到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間。當主控 制程序收到底層發(fā)送的業(yè)務(wù)切換命令時,將停止當前的流媒體業(yè)務(wù),然后分 析該切換命令,識別待切換的業(yè)務(wù)。假設(shè)待切換的業(yè)務(wù)是可視電話業(yè)務(wù),則 相應(yīng)的基本業(yè)務(wù)單元為VTModule。主控制程序?qū)耐獠看鎯ζ髦屑虞d可視 電話業(yè)務(wù)的相關(guān)業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指 令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,覆蓋了流媒體業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。 加載后,主控程序引導運行可視電話業(yè)務(wù)。在引導運行可視電話業(yè)務(wù)時,調(diào) 整程序執(zhí)行指針,使程序執(zhí)行指針指向片內(nèi)業(yè)務(wù)指令存儲空間的首地址。
      需要說明的是,不同業(yè)務(wù)的業(yè)務(wù)指令/業(yè)務(wù)數(shù)據(jù)之間的覆蓋,不一定是全 面覆蓋,無論是否全面覆蓋,都不影響新加載業(yè)務(wù)的執(zhí)行。
      在進行業(yè)務(wù)切換過程中,對于業(yè)務(wù)指令/業(yè)務(wù)數(shù)據(jù)不需要全面覆蓋的業(yè)務(wù) 切換的情況下,為了進一步減少數(shù)字信號處理器從外部加載業(yè)務(wù)指令/業(yè)務(wù)數(shù) 據(jù)的操作,可以在主控制程序當中記錄設(shè)備所支持的每個業(yè)務(wù)所包括的各基
      本功能模塊的信息,例如,可以設(shè)置一個業(yè)務(wù)特性存儲表,將設(shè)備所支持的 各種業(yè)務(wù)的信息存儲在該表當中,同時將可能出現(xiàn)的業(yè)務(wù)切換進行分類(如 前面已經(jīng)列舉的3G的多媒體業(yè)務(wù)),可以將共用概率比較大的基本功能模塊 固定編譯在多個對應(yīng)系統(tǒng)子工程的特定位置上(如ST業(yè)務(wù)和TV業(yè)務(wù)都要 用到的AAC解碼器模塊固定編譯在這兩個業(yè)務(wù)對應(yīng)的系統(tǒng)子工程的開始位 置),這樣在業(yè)務(wù)切換當中,主控制程序得知待切換的業(yè)務(wù)后,可以確定待切 換業(yè)務(wù)和當前業(yè)務(wù)共用的基本功能模塊。這些特定位置的共用的基本功能模 塊對應(yīng)的業(yè)務(wù)指令代碼段和數(shù)據(jù)代碼段就可以不再重新加載。這樣做雖然會增加主控程序和各個子系統(tǒng)的復雜度,但是可以在應(yīng)用當 中進一步減少數(shù)據(jù)加載量,從而使業(yè)務(wù)切換操作所需要的時間更少。
      在上述主控制程序處理業(yè)務(wù)的過程中,將業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)加載到數(shù) 字信號處理器內(nèi)存后,直接引導運行加載的業(yè)務(wù)。在實際運行時,加載業(yè)務(wù) 指令和業(yè)務(wù)數(shù)據(jù)后,可以先對業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)進行校驗,例如進行循環(huán) 冗余校驗(CRC)。如果業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)都校-瞼正確,則引導運行加載 的業(yè)務(wù),否則,再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      引入校驗后,為防止無休止的校驗,還可以預(yù)先設(shè)置校驗次數(shù)的門限值。 當業(yè)務(wù)指令和/或業(yè)務(wù)數(shù)據(jù)校驗不正確時,將校驗次數(shù)加l,然后判斷校驗次
      數(shù)是否大于門卩艮值。如果校驗次數(shù)大于門限值,則不再加載業(yè)務(wù)指令和業(yè)務(wù) 數(shù)據(jù),將校驗次數(shù)清零,等待下一次業(yè)務(wù)切換命令,否則,再次加載業(yè)務(wù)指 令和業(yè)務(wù)數(shù)據(jù)。其中校驗次數(shù)的初始值為0。
      本發(fā)明還提供一種采用上述方法的UE,該UE如圖3所示,包括數(shù)字信 號處理器S31和外部存儲器S32。
      將主控制程序和每個基本業(yè)務(wù)單元分別構(gòu)成系統(tǒng)子工程,單獨調(diào)試編譯 每個系統(tǒng)子工程,將編譯后的所有基本單元都保存在外部存儲器S32。
      數(shù)字信號處理器S31上電自舉時只加載主控制程序并進行系統(tǒng)初始化。 主控程序根據(jù)系統(tǒng)默認設(shè)置,加載特定的業(yè)務(wù)指令到數(shù)字信號處理器內(nèi)存, 作為當前業(yè)務(wù)。主控制程序在執(zhí)行當前業(yè)務(wù)的同時,判斷是否收到業(yè)務(wù)切換 命令,如果沒有收到業(yè)務(wù)切換命令則繼續(xù)執(zhí)行當前業(yè)務(wù);否則,停止當前執(zhí) 行的業(yè)務(wù),解析業(yè)務(wù)切換命令以識別待切換的業(yè)務(wù),才艮據(jù)識別結(jié)果將待切換 業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器S32的相應(yīng)存儲空間分別加載到數(shù) 字信號處理器S31內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,并引導 運行新加載的業(yè)務(wù),執(zhí)行業(yè)務(wù)運行所需要的系統(tǒng)初始化工作。至此,完成業(yè) 務(wù)切換功能。
      其中,在引導運行新加載的業(yè)務(wù)時,調(diào)整程序執(zhí)行指針,使程序執(zhí)行指 針指向片內(nèi)業(yè)務(wù)指令存儲空間的首地址。
      數(shù)字信號處理器S31內(nèi)存和外部存儲器S32的設(shè)計方式和業(yè)務(wù)切換示意 圖如圖2所示,這里只描述數(shù)字信號處理器S31內(nèi)存能夠滿足系統(tǒng)所需的各個基本業(yè)務(wù)能力需求的情況。
      在上述主控制程序處理業(yè)務(wù)的過程中,將業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)加載到數(shù) 字信號處理器S31內(nèi)存后,直接引導運行加載的業(yè)務(wù)。在實際運行時,加載 業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)后,可以先對業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)進行校驗,例如進行
      CRC校驗。如果業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)都校驗正確,則引導運行加載的業(yè)務(wù),
      否則,再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      引入校驗后,為防止無休止的校驗,還可以預(yù)先設(shè)置校驗次數(shù)的門限值。 當業(yè)務(wù)指令和/或業(yè)務(wù)數(shù)據(jù)校驗不正確時,將校驗次數(shù)加l,然后判斷校驗次
      數(shù)是否大于門限值。如果校驗次數(shù)大于門p艮值,則不再加載業(yè)務(wù)指令和業(yè)務(wù) 數(shù)據(jù),將校驗次數(shù)清零,等待下一次業(yè)務(wù)切換命令,否則,再次加載業(yè)務(wù)指
      令和業(yè)務(wù)數(shù)據(jù)。其中校驗次數(shù)的初始值為0。
      通過上述公開的實施例,可以使得本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)或者使用本 發(fā)明。對于本領(lǐng)域技術(shù)人員來說,這些實施例的各種修改是顯而易見的,并 且這里定義的總體原理也可以在不脫離本發(fā)明的范圍和主旨的基礎(chǔ)上應(yīng)用于 其他實施例。以上所述的實施例僅為本發(fā)明的較佳實施例而已,并不用以限 制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改 進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
      權(quán)利要求
      1、一種業(yè)務(wù)處理方法,用于數(shù)字信號處理器DSP的業(yè)務(wù)處理,其特征在于,包括將各單獨編譯的業(yè)務(wù)保存在外部存儲器,數(shù)字信號處理器上電自舉時只加載主控制程序;主控制程序根據(jù)系統(tǒng)默認設(shè)置,加載規(guī)定的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,引導運行相關(guān)業(yè)務(wù);主控制程序收到業(yè)務(wù)切換命令時停止當前執(zhí)行的業(yè)務(wù),解析所述命令得知待切換的業(yè)務(wù);主控制程序?qū)⒋袚Q業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器的相應(yīng)存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,引導運行待切換業(yè)務(wù)。
      2、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,按業(yè)務(wù)指令存儲 空間的大小在外部存儲器中統(tǒng)一設(shè)置每個存放業(yè)務(wù)指令的指令空間的容量, 將每個業(yè)務(wù)的全部業(yè)務(wù)指令保存在相應(yīng)的一個指令空間。
      3、 如權(quán)利要求2所述的業(yè)務(wù)處理方法,其特征在于,進一步包括當 一個指令空間無法保存一個業(yè)務(wù)的全部業(yè)務(wù)指令時,將該業(yè)務(wù)中優(yōu)先級高的業(yè)務(wù)指令保存在該指令空間,將優(yōu)先級低的業(yè)務(wù)指令保存在外部指令 空間。
      4、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,按業(yè)務(wù)數(shù)據(jù)存儲 空間的大小在外部存儲器中統(tǒng)一設(shè)置每個存放業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)空間的容量, 將每個業(yè)務(wù)的全部業(yè)務(wù)數(shù)據(jù)保存在相應(yīng)的 一個數(shù)據(jù)空間。
      5、 如權(quán)利要求4所述的業(yè)務(wù)處理方法,其特征在于,進一步包括當一個數(shù)據(jù)空間無法保存一個業(yè)務(wù)的全部業(yè)務(wù)數(shù)據(jù)時,將該業(yè)務(wù)中優(yōu)先 級高的業(yè)務(wù)數(shù)據(jù)保存在該數(shù)據(jù)空間,將優(yōu)先級低的業(yè)務(wù)數(shù)據(jù)保存在外部數(shù)據(jù) 空間。
      6、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,釆用存儲器拷貝 的方式或直接存儲器訪問DMA的方式加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      7、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,在引導運行業(yè)務(wù)時,將程序執(zhí)行指針調(diào)整到業(yè)務(wù)指令存儲空間的首地址。
      8、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,保存在外部存儲 器的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)是不包含調(diào)試信息的機器碼。
      9、 如權(quán)利要求1所述的業(yè)務(wù)處理方法,其特征在于,進一步包括 在主控制程序中記錄每個業(yè)務(wù)所包括的各基本功能模塊的信息; 主控制程序得知待切換的業(yè)務(wù)后,確定待切換業(yè)務(wù)和當前業(yè)務(wù)共用的基本功能模塊;不再加載共用的基本功能模塊對應(yīng)的業(yè)務(wù)指令代碼段和數(shù)據(jù)代碼段。
      10、 如權(quán)利要求1至9任意一項所述的業(yè)務(wù)處理方法,其特征在于,進 一步包括加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)后,對加載的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)進行校驗; 如果業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)都校驗正確,則引導運行待切換業(yè)務(wù);否則, 再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      11、 如權(quán)利要求IO所述的業(yè)務(wù)處理方法,其特征在于,進一步包括 如果業(yè)務(wù)指令和/或業(yè)務(wù)數(shù)據(jù)校驗不正確,則將校驗次數(shù)加1; 在校驗次數(shù)小于或等于門限值時,再次加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù); 在校驗次數(shù)大于門限值時,不再加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù),將校驗次數(shù)清零,等待下一次業(yè)務(wù)切換命令。
      12、 一種采用權(quán)利要求1所述方法的用戶設(shè)備,包括數(shù)字信號處理器和 外部存儲器,其特征在于外部存儲器保存各單獨編譯的業(yè)務(wù),每個業(yè)務(wù)包括其業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù);數(shù)字信號處理器在上電自舉時只加載主控制程序;主控制程序根據(jù)系統(tǒng)默認設(shè)置,加載規(guī)定的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)到數(shù)字 信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)凄t悟存儲空間,卩1導運行相關(guān) 業(yè)務(wù);主控制程序收到業(yè)務(wù)切換命令時停止當前執(zhí)行的業(yè)務(wù),解析所述命令得 知待切換的業(yè)務(wù);主控制程序?qū)⒋袚Q業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器的相應(yīng)存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù) 存儲空間,引導運行待切換業(yè)務(wù)。
      13、 如權(quán)利要求12所述的用戶設(shè)備,其特征在于,存放業(yè)務(wù)指令的指 令空間的容量和業(yè)務(wù)指令存儲空間的大小相等,每個業(yè)務(wù)的全部業(yè)務(wù)指令保存在相應(yīng)的一個指令空間;存放業(yè)務(wù)數(shù)據(jù)的數(shù)據(jù)空間的容量和業(yè)務(wù)數(shù)據(jù)存儲空間的大小相等,每個 業(yè)務(wù)的全部業(yè)務(wù)數(shù)據(jù)保存在相應(yīng)的一個數(shù)據(jù)空間。
      14、 如權(quán)利要求12所述的用戶設(shè)備,其特征在于,采用存儲器拷貝或 直接存儲器訪問DMA的方式加載業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)。
      15、 如權(quán)利要求12所述的用戶設(shè)備,其特征在于,在引導運行業(yè)務(wù)時, 將程序執(zhí)行指針調(diào)整到業(yè)務(wù)指令存儲空間的首地址。
      16、 如權(quán)利要求12所述的用戶設(shè)備,其特征在于,保存在外部存儲器 的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)是不包含調(diào)試信息的機器碼。
      全文摘要
      本發(fā)明公開一種業(yè)務(wù)處理方法,用于DSP的業(yè)務(wù)處理,包括將各單獨編譯的業(yè)務(wù)保存在外部存儲器,DSP上電自舉時只加載主控制程序;主控程序根據(jù)系統(tǒng)默認設(shè)置,加載規(guī)定的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)到DSP內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,引導運行相關(guān)業(yè)務(wù);主控制程序收到業(yè)務(wù)切換命令時停止當前執(zhí)行的業(yè)務(wù),解析所述命令得知待切換的業(yè)務(wù);主控制程序?qū)⒋袚Q業(yè)務(wù)的業(yè)務(wù)指令和業(yè)務(wù)數(shù)據(jù)從外部存儲器的相應(yīng)存儲空間分別加載到數(shù)字信號處理器內(nèi)存中的業(yè)務(wù)指令存儲空間和業(yè)務(wù)數(shù)據(jù)存儲空間,引導運行待切換業(yè)務(wù)。本發(fā)明還公開一種采用該業(yè)務(wù)處理方法的UE。
      文檔編號G06F9/445GK101303651SQ20071009905
      公開日2008年11月12日 申請日期2007年5月10日 優(yōu)先權(quán)日2007年5月10日
      發(fā)明者杰 何 申請人:大唐移動通信設(shè)備有限公司;上海大唐移動通信設(shè)備有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1