應用

技術

物聯(lián)網世界 >> 物聯(lián)網新聞 >> 物聯(lián)網熱點新聞
企業(yè)注冊個人注冊登錄

內嵌RTOS的DSP物聯(lián)網方案

2022-08-23 08:54 strongerHuang

導讀:物聯(lián)網的快速發(fā)展超出了幾乎所有人的想像,每天都有成千上萬的設備入網。

物聯(lián)網的快速發(fā)展超出了幾乎所有人的想像,每天都有成千上萬的設備入網。面對如此龐大的市場需求,傳統(tǒng)技術早已不堪重負,而對新一代的數(shù)字信號處理提出了高運算能力和低功耗等更多要求。(本文的觀點是,搭載RTOS的新一代混合型DSP技術,是物聯(lián)網的最佳選擇)

隨著新市場及其對新技術需求的快速增長,一些技術的利用率越來越高。數(shù)字信號處理(DSP)就是這樣一種技術,其形式可以是芯片,也可以作為系統(tǒng)級芯片(SoC)的IP核。雖然DSP已經存在很長時間了,但新一代DSP所支持的功能,對于滿足某些特定市場需求來說非常重要,比如IoT(物聯(lián)網)。鑒于許多物聯(lián)網設備的固有性質,通常都會使用實時操作系統(tǒng)(RTOS)。

image.png

OriLeibovich,CEVA嵌入式開發(fā)高級經理

DSP技術演進

DSP被用來轉換和處理現(xiàn)實世界中的模擬信號,這種處理操作是通過復雜的信號處理算法來完成的。作為上世紀80年代就出現(xiàn)的技術,DSP在硬件功能和軟件開發(fā)工具以及基礎設施方面,已取得很大發(fā)展。早年的算法是用匯編語言編程到DSP上的。隨著DSP市場的擴大以及算法變得越來越復雜,其架構也在不斷發(fā)展,并促進了高級語言編譯器的開發(fā)。

帶嵌入式DSP內核的芯片,一般都集成有片內存儲器,其大小通常足以容納執(zhí)行專用任務所需的整套程序。新一代DSP應用范圍涵蓋了音頻/語音處理、圖像處理、電信信號處理、傳感器數(shù)據(jù)處理和系統(tǒng)控制等。而如今的物聯(lián)網市場,則幾乎覆蓋了之前眾多用例的各種組合。行業(yè)分析公司Markets and Markets預計,到2027年,全球物聯(lián)網技術市場規(guī)模將增長到5664億美元。面對如此龐大的物聯(lián)網市場,新一代的DSP技術至關重要。

為什么DSP非常適合物聯(lián)網設備

物聯(lián)網通過使用不同類型的傳感器收集數(shù)據(jù),實現(xiàn)現(xiàn)實世界中萬物間的通信和連接。DSP對來自傳感器的連續(xù)變化信號進行分析和處理。如今,已出現(xiàn)傳感器hub DSP(如CEVA-SensPro2),就是用來處理和融合多個傳感器信息的,并用于上下文感知的神經網絡推理。DSP設計用于分析和處理音視頻、溫度、壓力或濕度等現(xiàn)實世界中的各類信號,其任務涉及精確和準確的實時重復數(shù)字計算。隨著物聯(lián)網市場的增長,越來越多的傳感器得到部署,收集到的所有數(shù)據(jù)都需要得到高效的實時處理。如今越來越清晰的跡象表明,數(shù)據(jù)處理需要在物聯(lián)網設備上直接進行,而不是將其發(fā)送到云端進行處理。

目前正在發(fā)生的另一個事關物聯(lián)網設備的趨勢是,越來越多地使用基于人工智能(AI)的算法完成數(shù)據(jù)的本地化處理。人工智能算法基于神經網絡模型,需要高水平的并行能力才能有效執(zhí)行。并行計算能力是DSP優(yōu)于通用中央處理器(CPU)的一個關鍵優(yōu)勢。為了滿足這一要求,現(xiàn)代DSP架構傾向于使用寬向量和單指令多數(shù)據(jù)(SIMD)功能。

簡而言之,基于DSP的強大解決方案,可以同時滿足現(xiàn)代物聯(lián)網設備的高性能計算和低功耗需求。

為什么DSP與RTOS很匹配?

正如DSP是一種專用處理器一樣,RTOS也是一種專用操作系統(tǒng)。DSP致力于極其快速和可靠地處理現(xiàn)實世界的數(shù)據(jù),而RTOS則致力于可靠地滿足響應/反應時間方面的特定時序要求。DSP與通用CPU相比更緊湊,RTOS與常規(guī)操作系統(tǒng)相比也是如此。這些特性完全符合物聯(lián)網設備的需求,因而使得DSP和RTOS成為物聯(lián)網應用的理想之選。

從歷史上看,嵌入式設備一般會利用一個專門用途、通常為8位或16位的微控制器,可以在沒有RTOS的情況下工作。但如今的物聯(lián)網設備更加復雜,需要一個32位CPU與帶有RTOS的DSP相結合,來管理控制功能,并運行復雜的信號處理。

但問題是,新一代DSP是否足以同時完成物聯(lián)網設備的信號處理和控制功能?答案是肯定的。一種能夠提供面向DSP功能和面向控制器功能的混合DSP架構,正在迅速被物聯(lián)網和其他嵌入式設備所采用。這種混合DSP具有支持超低指令字(VLIW)架構實現(xiàn)、單指令多數(shù)據(jù)(SIMD)操作、單精度浮點運算、緊湊的代碼規(guī)模、全RTOS、超快速上下文切換、動態(tài)分支預測等特點,從而設備上不再需要額外的處理器來運行RTOS。

面向DSP的RTOS

基于DSP的RTOS旨在充分利用DSP的高性能特性。它是一個先占式、基于優(yōu)先級的多任務操作系統(tǒng),可提供非常低的中斷延遲。這類RTOS附帶驅動程序、應用程序編程接口(API)、以及為DSP芯片定制的DSP功能運行芯片支持庫(CSL)。所有片上外設都可以被控制,比如高速緩存、直接內存訪問(DMA)、定時器、中斷單元等。因此,物聯(lián)網應用程序開發(fā)人員能夠輕松地配置RTOS,從而高效處理資源請求和管理系統(tǒng)。

面向物聯(lián)網RTOS:RT-Thread

RT-Thread是一款專為物聯(lián)網設備優(yōu)化的開源RTOS,資源占用率極低、可靠性高、可擴展性強。RT-Thread得到物聯(lián)網設備所需豐富的中間件、硬件以及軟件生態(tài)系統(tǒng)的廣泛支持。

RT-Thread支持GCC、Keil、IAR等所有主流編譯工具,支持POSIX、CMSIS、C++應用環(huán)境、以及Micropython、Javascript等多種標準接口。

RT-Thread還為所有主流CPU和DSP架構提供強大的支持。通過RTOS消息傳遞線程間的通信和同步、信號旗語等業(yè)務可得到始終如一的高效處理。

目前,RT-Thread有兩個版本。一個是用于資源豐富的物聯(lián)網設備的標準版,而另一個則為Nano版,用于資源受限的系統(tǒng)。

DSP與RT-Thread的完美結合

某些DSP(如CEVA DSP)架構設計,原生就支持RTOS功能和超快速上下文切換,因此使用CEVA DSP和RT-Thread RTOS實現(xiàn)的物聯(lián)網設備,可以不中斷RTOS,同時處理不同資源之間的多種通信任務。例如,多核通信接口(MCCI)機制支持內核之間的命令通信和消息傳遞。內核之間的通信是通過使用AXI從端口直接訪問專用命令寄存器來實現(xiàn)的。DSP有專門的控制和指令,可以通過MCCI跟蹤通信的狀態(tài)。

image.png

多核通信接口架構。(來源:CEVA)

通過使用均為32位的MCCI_NUM專用命令寄存器來執(zhí)行內核之間的消息傳遞。32位COM_REGx寄存器由外部內核通過AXI從端口寫入,內核只能讀取。對于128位AXI總線,命令生成內核可以同時寫入的寄存器多達四個,而對于256位AXI總線,該數(shù)目則增至八個。

當生成命令的內核將命令輸出到COM_REGx時,尋址寄存器將會被更新,COM_STS寄存器中的相關狀態(tài)位也會被更新。此外,中斷(MES_INT)將被確認以通知接收內核。

當接收內核讀取其中一個COM_REGx寄存器后,會向發(fā)起方發(fā)送一個讀取指示信號。讀取指示信號由接收內核使用專用的RD_IND(讀取指示)MCCI_NUM位總線接口發(fā)送。RD_IND總線的每一位分別表示來自其中一個COM_REGx寄存器的讀取操作。利用IO接口,接收內核一次只能讀取一個COM_REGx寄存器。這樣不僅使不同內核間同步變得更簡單,而且使同一內核中不同任務間的同步也變得更為容易。