DSP/BIOS?實時操作系統
DSP/BIOS?是一個可定標的實時作業核心(kernel),特地為TMS320C5000? 及 TMS320C6000? DSP 的平臺所設計。 DSP/BIOS 已被數以千計的客戶研究證實過,并成為Code Composer Studio?發展工具內建不可或缺的功能之一,DSP/BIOS 不需要注冊使用費用,為德州儀器在全球舉辦的訓練課程及研討會重要后盾。
DSP/BIOS不同于傳統的DSP軟件方法,能助您迅速發展及部署復雜的應用,而不需另外開發及維護常用的操作系統或控制回路,因為多組鏈接碼(multi-threading) 使得實時應用能清楚地劃分。 DSP/BIOS的應用能輕易地維護,且新增功能時不需中斷實時響應; 此外,它并提供標準化APIs 適用于C5000 及 C6000 DSP 平臺來支持快速應用的轉換。
DSP/BIOS 與DSP外圍的數據庫(Chip Support Library)兼容并且內建于Code Composer Studio 交互式開發環境,Code Composer Studios 核心監管及實時分析也是一個十分有用的內建工具,注重在程序除錯及多個任務的輪調。
Real-Time OS: DSP/BIOS:DSP/BIOS? 核心(Kernel)
DSP/BIOS 提供一組豐富且確定的核心服務,幫助研發人員開發精密且復雜的應用時不致影響到實時性。 DSP/BIOS 是可定標且多組鏈接配置要求少至1K 字符(words),而核心服務可支持C語言功能或組合(assembly)語言接口。
圖形配制(Graphical configuration)DSP/BIOS和所有慣用的實時操作系統一樣,可在執行的應用上,任何時間點,動態地建立操作系統,如任務(tasks)或信號(semaphores)。 此外,DSP/BIOS提供一個主機端的圖形設定工具來簡單點選DSP/BIOS圖形設定以符合應用需求。 這個靜態設定程序可經由刪除核心功能及動態操作系統下的程序代碼(如threads及semaphores等),來大幅減少其在目標內存所占的體積。
核心服務(Kernel services)為了達到分析及外圍配置支持,DSP/BIOS還包含了下列核心模塊:
硬件中斷(Hardware Interrupt): 提供一個硬件中斷到DSP/BIOS核心的接口
軟件中斷(Software Interrupt):使用程序堆棧以達到輕載pre-emptible threads
任務(Tasks):獨立執行的threads來產生程序周期功能(Periodic Functions): 時間觸發器輕載threads信箱: 在各任務間進行同步資料交換
信號(Semaphores): 計算semaphores
排序(Queues): 自動連結排列
時鐘(Clock): 硬件定時器接口
Streams: 任務專用的串行I/O
Pipes: 軟件中斷專用的串行I/O
內存管理員(Memory Manager): 采低量動態內存配置
為了加速DSP應用的響應,DSP/BIOS新增額外的鏈接機制(threading mechanisms)在傳統tasking模式中、 軟件中斷輕載pre-emptible threads 來分享一個共同的堆棧,結果,在不需儲存任務堆棧的狀況下,只會占用少許內存并加快活動次數。周期功能是指時間觸發器排序的方法,可輕易將取得的資料樣本設定在一個固定的時間間隔中,以簡化系統(multirate systems)的設計。 為了促進復雜應用的設計,DSP/BIOS提供多任務內部各任務的溝通服務,其中包括semaphores,mailboxes,及 queues等。
有效中斷管理(Efficient Interrupt Management)DSP/BIOS 提供兩種選擇來控制中斷 C 一個中斷調度(dispatcher)及宏(macros),這兩個裝置都密切關系到中斷最小化的取消及中斷延遲的極大化,這個調度能使ISRs接受C程序語言來執行任務,如儲存與修復程序及暫時關閉工作表,讓ISRs能正確與核心作互動; 這個方法是利用刪減每個ISR中的特殊功能程序而減少了程序的大小。 為了進一步減少內存的需求,所有ISRs使用一個共同堆棧器(common stack)而不用各個中斷任務的堆棧器; 而宏的進出會使得ISR如同一個調度者在不斷地執行相同的操作。宏的功能在每個ISR中是成對出現的,這使得研發人員只能在特殊ISR中進行儲存及修復工作,因此而減少了中斷的響應時間。DSP/BIOS 能在同一個應用中進行宏和調度來取得功效和內存間的最佳化組合。
硬件概念(Hardware Abstraction)為了排定工作及?成內部任務的溝通服務,DSP/BIOS 亦提供了實時時鐘管理,內存管理,及獨立作業的I/O端口。 DSP/BIOS 內存管理員提供”再加入(re-entrant)”動態記憶管理,可利用邏輯內存區塊將零散的記憶配置自DSP應用中抽離。 DSP/BIOS 提供一零件獨立性I/O端口模塊可提高實時數據的有效過程極佳化,利用抽離外圍組件及內存配置的特殊獨立裝置,DSP/BIOS使得轉換應用到一顆新的DSP或發展板時變得十分容易。
Real-Time OS: DSP/BIOS : 多組鏈接的優勢(MultiThreading Benefits)
許多傳統DSP的開發者建構他們的軟件應用于順序處理循環及狀態機器上,這種方式十分適用在DSP執行一個的主要功能,然而一旦DSP必須執行多組功能時它便會受到很大的限制。當這種現象逐漸普遍在使用DSP于支持不同取樣率下的多任務處理時,開發人員便會采納這個多組鏈接的(multithreaded)設計方法,在微處理器的實時應用下已是被大家所接受的。 在順序處理循環方面,新功能的加入或既存功能的修改,會影響到正在服務的函式,因此,越復雜的實時應用要維護及更改就越加困難。
至于多功處理應用或未來需要擴充功能應用,一個較好的方法是,利用設計范例來使各個獨立作業之功能的反應時間不相關,而多組鏈接(Multithreaded)則應用在分配各個執行鏈接碼于其系統功能內。當一個特殊鏈接碼提供一個CPU時序時,在調度程序(scheduler)控制下,這些鏈接碼會并列執行; 當高順位的鏈接碼開始執行時,調度程序將占用較低順位的鏈接碼,而此時每個鏈接碼都已被付予一個順序來決定,一旦準備開始執行時它會在多久時間內被排到工作。 因此,執行一高順位鏈接的臨界功能,其反應時間將不會受到修正其它功能或增加新的且順位較低功能的影響。
此外,利用一個多功處理核心可降低電源消耗,因為多功處理應用可完全是中斷驅動的,并有可能消除應用程序的查詢(Polling)程序。這樣降低了處理器的利用率使得處理器在空閑狀態(Idle)時可以致能省電模式。
Real-Time OS: DSP/BIOS : 標竿(Benchmarks)
標竿號碼將提供DSP/BIOS核心專用之定時及功能資料于C6000 及 C5000 DSP平臺上。
Real-Time OS: DSP/BIOS : DSP/BIOS 應用資料
審核編輯:湯梓紅
-
dsp
+關注
關注
554文章
8059瀏覽量
350445 -
mcu
+關注
關注
146文章
17324瀏覽量
352655 -
ti
+關注
關注
112文章
7987瀏覽量
212953 -
操作系統
+關注
關注
37文章
6896瀏覽量
123749
發布評論請先 登錄
相關推薦
評論