智汇工业-智慧工业、智能制造及工业智能、工业互联门户网站,专业的工业“互联网+”传媒

采用 Linux 與 DSP/BIOS RTOS 實施雙 OS 信號處理技術

來源:網絡

點擊:1428

A+ A-

所屬頻道:新聞中心

關鍵詞: Linux,DSP,BIOS,RTOS,OS,信號處理

      在系統性能與編程簡易性之間的權衡折中是通用操作系統與實時操作系統之間的主要區分點之一。

      GPOS 傾向于提供較高程度的資源抽象,這不僅可通過支持軟件模塊性與資源隔離來提高應用的便攜性、簡化開發流程,同時還能增強系統的穩健性。這使 GPOS 成為諸如網絡、用戶界面以及顯示管理等通用系統組件的理想選擇。

      然而,該抽象需要以系統資源的精細粒度控制作為代價,以滿足信號處理代碼等高強度算法的計算性能要求。對于實現這種高級別的控制,開發人員通常需要采用實時操作系統 (RTOS)。

      從嵌入式信號處理角度上講,我們通常要考慮兩種類型的操作系統,即通用操作系統 Linux 與實時操作系統 DSP/BIOS。Linux 可支持更高水平的抽象技術,而 DSP/BIOS 則可提供更精細的控制。

      為了充分發揮這兩種操作系統的優勢,開發人員可采用系統虛擬機,這就使編程人員可在同一 DSP 處理器上同時運行 Linux 與 DSP/BIOS 系統。

      (編者注:與 Java 虛擬機等特定編程語言使用的進程虛擬機環境不同,系統虛擬機對應于實際硬件,可在相同計算環境中與其它類似實例相隔離的情況下執行完整的操作系統。)

      然而,我們要提出一個重要的問題:為什么不使用分別運行 Linux 與 DSP/BIOS 系統的 CPU+DSP 組合器件呢?畢竟,CPU 在運行用戶接口控制代碼等方面具有更高的效率。此外,不同的內核可避免虛擬化帶來的開銷。不過,在同一顆芯片上集成所有功能還是很有吸引力的,原因如下:

      其一,當今高性能 DSP 比前代 DSP 要強大得多,這樣可減少控制處理周期數。其二,大多數高性能 DSP 的通用性能均比前代產品更強,從而可實現更高效的控制代碼處理工作。

      如果所有功能都可集成在 DSP 上,那么其優勢將更加出眾。更少的芯片數量可實現更低的成本與更小的占用空間。此外,由于不再需要在耗費大量電力的處理器間數據傳輸,因此還可降低能耗。

     

      進度安排

     

      操作系統最常見也是最有利的一個特性就是能同時執行多個任務或多個線程。操作系統通過時間表來管理內核處理,以連續執行相關任務。

      以往,嵌入式編程人員在使用 Linux 時會擔心實時性能較低的問題。不過,對 Linux 內核的最新增強顯著提高了其對系統事件的響應能力,從而使其可滿足各種企業與個人以及嵌入式產品的需求。

      Linux 可實現線程的時間切片以及優先次序時間安排。時間切片技術是指在所有線程之間共享處理工作周期,以確保無封鎖線程。這種方法通常適用于用戶接口功能,以確保在系統超載、響應較慢的情況下也不至于完全丟失用戶功能。

      與此形成對比的是,優先次序線程時間安排技術則可確保系統中最高優先級線程的執行,直至該線程放棄控制為止,這時下一個最高優先級的線程即開始執行。

      Linux 內核在每次從內核到用戶模式的轉換時都會對可用線程的優先級進行重新評估,這就意味著內核最新評估的任何事件(如驅動程序上數據的可用性)都能立即觸發新線程(調度器的時延響應時間內)的轉換。由于確定了基于優先級的線程,其通常用于必須滿足實時要求的信號處理應用。

      在推出 Linux 內核 2.6 版本之前,制約實時性能的主要因素是 Linux 內核會禁用中斷,且禁用時間有時會長達數百毫秒。

      就此而言,我們可以提高內核實施的效率。因為在禁用中斷時,代碼的某些部分無需重新進入,而這會增加中斷響應的時延。

      目前的 2.6 版本提供了構建選項,可在整個內核代碼中以更高的頻率插入中斷再啟用指令。Linux 社區通常將該特性稱作先占內核 (preempt kernel),盡管這會讓內核性能略有下降,但卻能夠顯著提高實時性能。對于眾多系統任務而言,在先占性 Linux 2.6 內核與實時線程結合使用時,將能提供足夠的性能來滿足實時需求。

      例如,德州儀器 (TI) 的 DSP/BIOS 以軟件中斷和任務的形式僅支持優先級調度。與 Linux 調度器一樣,軟件中斷和任務都屬于先占型的。但是,DSP/BIOS 也為應用編程人員提供了直接存取硬件中斷的條件,該資源僅適用于 Linux 內核模式。

      直接存取硬件中斷使應用編程人員可在理論上實現底層硬件所支持的最短時延響應。對控制環路等需要絕對最低時延的應用而言,這種精細粒度的硬件中斷控制機制通常是一種非常重要的特性。

     

      受保護的資源訪問

     

      Linux 與大多數通用操作系統的一個基本屬性就是用戶空間程序與所用的底層系統資源相分離。僅在工作處于監控(如內核)模式下時才允許直接訪問存儲器和設備外設。

      如果用戶程序希望訪問系統資源,那么它必須通過稱作驅動器的內核模塊從內核發出請求。該應用位于用戶存儲器空間,并將通過虛擬文件訪問驅動程序。然后,虛擬文件將應用的請求轉至驅動器執行的內核存儲器空間。

      Linux 可提供特性極為豐富的驅動器模型,其中包括標準流媒體外設、模塊存儲設備以及文件系統,甚至還包括網絡與基于網絡的文件系統。

      驅動器與用戶空間應用的分離可實現高度的穩健性。此外,通用驅動器接口上的抽象水平使其便于將數據流傳輸給串行端口、閃存文件系統或網絡共享文件夾,且僅需對底層應用代碼稍作更改。

      然而,實現這種靈活性需要付出代價。應用與物理資源的嚴格分離會加大開銷。如果用戶空間程序要訪問設備外設,則內核模式必須進行環境交換才能處理該請求。

      由于數據是成塊訪問,而非逐個樣本 (sample-by-sample) 訪問,因此通常來說這不會造成太大的局限性。這樣,內核模式下每次塊訪問僅需進行一次環境交換即可。

      但是,在某些情況下,應用代碼需與物理硬件嚴格匹配。如果使用 DSP 等對數據吞吐量要求較高且不能容忍停頓的高性能處理器時,通常就會出現此類情況。這時,內核空間的物理資源與用戶空間的應用相分離的做法就可能會嚴重影響系統性能。

     

      應用與硬件的匹配

     

      我們不妨使用 TMS320DM643x 處理器架構來研究在執行塊視頻處理時會遇到的典型情況,該架構采用一個 600 MHz / 4800 MIPS DSP 處理內核以及諸如功能豐富的視頻端口子系統等各種多媒體外設。這種硬件通常用于將輸入視頻流進行 H.264 格式壓縮。

      為了充分發揮 DSP 內核的處理能力,處理的數據應從周期操作內部存儲器讀取,而不是從速度較慢的外部存儲器讀取。盡管在技術上可以讓具有足夠快的片上存儲器的處理器存儲一個或多個完整的視頻幀,但這種技術對大多數目標市場來說成本太高。因此,采用可提供 80 KB 的單周期操作片上數據存儲器的處理器取而代之。

      80 KB 雖然小,不能存儲完整的視頻幀,但 TI 通過模擬檢測認為,這樣的存儲量足夠為 H.264與其它視頻處理算法提供最佳的面積/性能綜合比。

      DSP 通過直接存儲器存取 (DMA) 控制器為該存儲器提供數據,這種控制器還可用于內外部存儲器之間高效傳輸數據子塊,而不會占用處理器內核的周期操作(見以下圖 1)。

      圖 1. DSP 處理器采用DMA 硬件將外部存儲器中較小的視頻幀子塊傳輸到內部存儲器中,以供 DSP內核進行處理。

     

      

      圖1. DSP 處理器采用 DMA 硬件將外部存儲器中較小的視頻幀子塊傳輸到內部存儲器中,以供 DSP內核進行處理。

     

      從整體系統的角度來說,這種方法可提供幾乎相當于具有整個視頻緩沖器的芯片所提供的性能,但成本卻非常低。不過,為了實現這樣的高性能,就需要應用、操作系統以及底層存儲器與 DMA 硬件之間的緊密配合。

      首先,應用必須能夠區別快速內部存儲器與大容量外部存儲器。其次,應用必須能夠執行許多時間精確的小型 DMA 操作。由于訪問 DMA 時發生的所有時延在 DMA 訪問每個視頻幀時都會放大數百倍乃至數千倍,因而在 Linux 驅動程序模型內高效實現 DMA 操作雖非不可能,但也極為困難。

      這種方法的實際實施可通過 DSP/BIOS 完成,并提供原生 API 來實現應用對內外部存儲器的請求,同時也使應用可直接訪問 DMA 寄存器,不會產生環境交換損失。

     

      兩種操作系統的優勢結合

     

      盡管眾多多媒體應用的大部分處理器周期操作都用來進行信號處理,但能滿足消費需求的產品同時還必須執行許多更高級的功能,如用戶界面、顯示功能、網絡以及文件處理等。

      由于上述特性對時間要求不高,因此無需精確控制 DSP/BIOS。這時,Linux驅動程序模型所提供的資源提取功能就可更好地提高靈活性,縮短開發時間,更不用說可獲得 Linux 社區豐富的開源應用代碼支持了。

      可使 Linux 與 DSP BIOS 操作系統同時運行在同一設備上的解決方案,就是需要使用虛擬程序 (virtualizer) 為系統開發或集成人員提供這兩種操作系統的優勢(見圖 2)。

     

      

      圖 2. Linux 和 DSP/BIOS 同時運行在 DM643x DSP 器件上

     

      虛擬程序作為快速、可預測的交換機可在 Linux 與 DSP/BIOS 操作系統之間實現 DSP 資源。當接收到中斷時對 DSP/BIOS 操作系統環境做出推測性交換,從而確保 DSP/BIOS 線程的最佳性能。

      如果新到達的中斷對應于 DSP/BIOS 環境中已識別的事件,那么將在已經加載且準備運行的 DSP/BIOS 環境中對其進行處理。

      在虛擬程序支持 DSP/BIOS 的同時,應用可直接訪問所需的系統資源,且不會影響(掛起)Linux 環境中保持的用戶與內核空間。

      一旦應用完成 DSP/BIOS 環境下的高性能信號處理計算,虛擬機就將強制轉回到 Linux環境,以便訪問該環境下的更高級特性。

      在虛擬程序的調節下,操作系統之間的交換時間不到 10 微秒,這使編程人員能達到實時性能要求,相對于只包含 DSP/BIOS 的原生系統而言,性能上也沒什么損失。該解決方案對典型多媒體設備的處理資源占用僅約 1.5%。

     

      雙操作系統的更多優勢

     

      或許為了支持 DSP/BIOS 操作系統對基于 Linux 的產品進行擴展的最明顯優勢之一:無需移植就可使用成百上千種第三方的相關算法。由于符合 xDAIS 標準,因此可確保第三方算法無縫集成于 DSP/BIOS 環境中。

      為了支持 DSP/BIOS 操作系統對基于 Linux 的系統進行擴展的另一個優勢:在 DSP/BIOS 環境下執行應用不受 Linux 內核 GNU 通用公共許可證 (GPL) 的限制。

      在實施基于 Linux 的解決方案時,我們有時不是很清楚開發商推出的獨特軟件知識產權在許可證方面到底有哪些具體要求。通過在 DSP/BIOS 而非 Linux 操作環境下執行 IP,可以避免這方面的法律問題。

     

      結論

     

      使用本文介紹的技術,Linux 與 DSP BIOS 可同時運行在統一的 DSP 內核上,這既能夠提供 Linux 解決方案的全部功能,又可確保 DSP/BIOS 環境下的高精度與硬件控制。

      編程人員可充分利用適用于 Linux 的應用代碼與適用于 DSP/BIOS的信號處理代碼,無需針對不同環境進行移植。

      對要在實時嵌入式應用中采用 Linux 特性的設計人員而言,通過虛擬程序升級、同時獲得 DSP BIOS 工具套件,將大幅提高信號處理性能,并可顯著節省系統資源的成本。

      關于作者:

      Dave Beal 是 VirtualLogix 公司的產品管理總監,Steve Preissig 是 TI 技術培訓機構的一名講師,而 Aurelien Jacquiot 是 VirtualLogix 法國公司的項目經理。

    (審核編輯: 智匯小新)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 实验室实验台-钢木实验台-实验室通风柜-实验室家具-苏州奥纳威 | 汽车检具标准件_汽车检具配件_昆山宏易腾达模具五金有限公司 | 千斤顶-超薄电动千斤顶-电动液压千斤顶-液压螺母扳手-泰州杰克液压机械制造有限公司 | 无线对讲机系统-中继台-山区隧道信号覆盖-贝亚特 | 聚达|聚达物联|聚达物联科技|杭州聚达物联科技有限公司|www.judawulian.com|智慧社区|数字驾驶舱|智慧清运|智慧工地|邻家小达 | 网带输送机_皮带_滚筒_链板输送机_不锈钢输送链条生产厂家-宁津县鸿昶机械设备有限公司 | 手板模型-温州手板模-快速成型厂家-温州星科模具加工厂 | 郑州编织袋厂_郑州塑料编织袋_河南塑料编织袋厂-河南宏旺塑料编织袋厂家 | 无轴螺旋输送机_双无轴螺旋输送机_垃圾,污泥无轴螺旋输送机-新乡市大汉振动机械有限公司 | 山东向阳电子科技有限公司-多用户集中式电能表生产厂家,NB物联网水表,刷卡水电表生产厂家,泰安智能水电表价格 | 生物质蒸发器_燃气蒸发器_燃气锅炉价格|厂家直销-山东泰锅锅炉设备有限公司 | 金属网帘|金属帘|装饰网帘|金属环网|金属幕墙网|金属垂帘|金属扣帘-安平县名图金属丝网制品有限公司 | 卫生间隔断-东莞卫生间隔断-东莞卫生间隔断厂家-公共卫生间隔断-东莞市康丰家居建材有限公司 | 液晶拼接屏_液晶监视器_液晶广告机_触摸一体机_户外广告机_中亿睿企业官网 | 随车吊/洒水车/低平板运输车-程力专用汽车股份有限公司 | 精密机械加工_零件加工_机械零部件加工厂_高精密零件加工定制—深圳精密机械加工厂 | 切割片-砂轮片-抛光片-磨片-方格片-百叶片生产厂家定制加工-达蒙砂轮价格优惠 | 郑州房产律师|专业房地产纠纷律师热线_河南锦盾律师事务所 | 上海家博会_2025上海家博会时间表_5月31-6月2日_上海家博会门票_免费领取入口 | 三亚酒吧KTV会所 专业舞台音响灯光 智能影音 会议音响工程 首选海南东演音响公司 | 亚克力游泳池_透明/空中/无边泳池_别墅亚克力泳池设计生产厂家_瑞地格乐-深圳他拍档 | 停车场设计|地下停车场规划设计|智能停车位地下车库设计施工装修|深圳创安顺停车库规划设计有限公司 | 热水工程|空气能热水工程|超低温采暖工程|太阳能热水工程|空气源热泵厂家|炬邦热能设备有限公司 热熔钻孔机【优质厂家】_多年热熔钻设备研发制造经验 | 久久91精品久久91综合_国产亚洲自拍一区_国产精品第1页_亚洲高清视频一区_91成人午夜在线精品_亚洲国产精品网站在线播放_亚洲国产成人久久综合区_国产精品亚洲专区在线观看_免费视频精品一区二区三区 | 食品甲醛测定仪,啤酒甲醛测定仪,食盐碘测定仪,食品细菌检验仪,水质细菌检验仪-厦门欣锐仪器仪表有限公司 | 亚洲一区日韩一区欧美一区a,中文字幕乱妇无码AV在线,欧美日韩免费在线观看,国产精品一区二区三区免费,日韩精品免费一线在线观看,日韩一本在线,国产呦精品一区二区三区下载,国产日韩精品一区二区在线观看,欧美日韩高清一区二区三区,日韩在线免费观看视频,欧美日韩一区在线观看 | 耐磨颗粒胶_陶瓷颗粒胶_大小颗粒耐磨胶_耐磨防护胶-北京耐默 | 烟台广告公司-烟台仁和图文广告制作有限公司 | 永康风水大师选风水先生老徐 - 徐根法 | 检重秤,液化气充装秤,滚筒电子秤,汽车衡厂家|上海越衡实业 | 上海舞台灯光音响租赁搭建线阵_年会演出摇头光束面光灯出租_led电子显示屏出租-上海led大屏幕租赁 | 喷涂机器人|自动喷涂生产线|自动喷涂设备|自动化生产线-深圳市荣德机器人科技有限公司 | 软文营销推广-新闻稿发布-软文撰写-百科词条编辑-品牌全案策划推广网络营销传播-喜尚传媒 | 洁净室、手术室、实验室、无尘车间厂房的净化工程装修设计施工公司-福临建设 | 河南专升本-河南省统招专升本 | 远程供电系统-电源发生器-隔离电源转换器-深圳市安博特电源设备有限公司 | 装备升级改造I成都星迅通科技有限公司-成都星迅通科技有限公司官方网站 | 呼吸家官网|肺功能检测仪生产厂家|国产肺功能仪知名品牌|肺功能检测仪|肺功能测试仪|婴幼儿肺功能仪|弥散残气肺功能仪|肺功能测试系统|广州红象医疗科技有限公司|便携式肺功能仪|大肺功能仪|呼吸康复一体机|儿童肺功能仪|肺活量计|医用简易肺功能仪|呼吸康复系统|肺功能仪|弥散肺功能仪(大肺)|便携式肺功能检测仪|肺康复|呼吸肌力测定肺功能仪|肺功能测定仪|呼吸神经肌肉刺激仪|便携式肺功能 | 商城网站建设_商城系统_响应式商城_小程序商城_FwShop | 长春市龙飞数码印务有限公司,龙飞印务,长春商务印刷,长春精品包装,长春数码快印 | 数控滑台,机床滑台,十字滑台,直线滑台,三轴滑台,立柱滑台厂家-泊头市北重机械制造有限公司 |