物聯(lián)網(wǎng)的快速發(fā)展超出了幾乎所有人的想像,每天都有成千上萬的設備入網(wǎng)。面對如此龐大的市場需求,傳統(tǒng)技術(shù)早已不堪重負,而對新一代的數(shù)字信號處理提出了高運算能力和低功耗等更多要求。(本文的觀點是,搭載RTOS的新一代混合型DSP技術(shù),是物聯(lián)網(wǎng)的最佳選擇) ? 隨著新市場及其對新技術(shù)需求的快速增長,一些技術(shù)的利用率越來越高。數(shù)字信號處理(DSP)就是這樣一種技術(shù),其形式可以是芯片,也可以作為系統(tǒng)級芯片(SoC)的IP核。雖然DSP已經(jīng)存在很長時間了,但新一代DSP所支持的功能,對于滿足某些特定市場需求來說非常重要,比如IoT(物聯(lián)網(wǎng))。鑒于許多物聯(lián)網(wǎng)設備的固有性質(zhì),通常都會使用實時操作系統(tǒng)(RTOS)。
DSP技術(shù)演進
DSP被用來轉(zhuǎn)換和處理現(xiàn)實世界中的模擬信號,這種處理操作是通過復雜的信號處理算法來完成的。作為上世紀80年代就出現(xiàn)的技術(shù),DSP在硬件功能和軟件開發(fā)工具以及基礎設施方面,已取得很大發(fā)展。早年的算法是用匯編語言編程到DSP上的。隨著DSP市場的擴大以及算法變得越來越復雜,其架構(gòu)也在不斷發(fā)展,并促進了高級語言編譯器的開發(fā)。 帶嵌入式DSP內(nèi)核的芯片,一般都集成有片內(nèi)存儲器,其大小通常足以容納執(zhí)行專用任務所需的整套程序。新一代DSP應用范圍涵蓋了音頻/語音處理、圖像處理、電信信號處理、傳感器數(shù)據(jù)處理和系統(tǒng)控制等。而如今的物聯(lián)網(wǎng)市場,則幾乎覆蓋了之前眾多用例的各種組合。行業(yè)分析公司Markets and Markets預計,到2027年,全球物聯(lián)網(wǎng)技術(shù)市場規(guī)模將增長到5664億美元。面對如此龐大的物聯(lián)網(wǎng)市場,新一代的DSP技術(shù)至關重要。
為什么DSP非常適合物聯(lián)網(wǎng)設備?
物聯(lián)網(wǎng)通過使用不同類型的傳感器收集數(shù)據(jù),實現(xiàn)現(xiàn)實世界中萬物間的通信和連接。DSP對來自傳感器的連續(xù)變化信號進行分析和處理。如今,已出現(xiàn)傳感器hub DSP(如CEVA-SensPro2),就是用來處理和融合多個傳感器信息的,并用于上下文感知的神經(jīng)網(wǎng)絡推理。DSP設計用于分析和處理音視頻、溫度、壓力或濕度等現(xiàn)實世界中的各類信號,其任務涉及精確和準確的實時重復數(shù)字計算。隨著物聯(lián)網(wǎng)市場的增長,越來越多的傳感器得到部署,收集到的所有數(shù)據(jù)都需要得到高效的實時處理。如今越來越清晰的跡象表明,數(shù)據(jù)處理需要在物聯(lián)網(wǎng)設備上直接進行,而不是將其發(fā)送到云端進行處理。 目前正在發(fā)生的另一個事關物聯(lián)網(wǎng)設備的趨勢是,越來越多地使用基于人工智能(AI)的算法完成數(shù)據(jù)的本地化處理。人工智能算法基于神經(jīng)網(wǎng)絡模型,需要高水平的并行能力才能有效執(zhí)行。并行計算能力是DSP優(yōu)于通用中央處理器(CPU)的一個關鍵優(yōu)勢。為了滿足這一要求,現(xiàn)代DSP架構(gòu)傾向于使用寬向量和單指令多數(shù)據(jù)(SIMD)功能。 簡而言之,基于DSP的強大解決方案,可以同時滿足現(xiàn)代物聯(lián)網(wǎng)設備的高性能計算和低功耗需求。
為什么DSP與RTOS很匹配?
正如DSP是一種專用處理器一樣,RTOS也是一種專用操作系統(tǒng)。DSP致力于極其快速和可靠地處理現(xiàn)實世界的數(shù)據(jù),而RTOS則致力于可靠地滿足響應/反應時間方面的特定時序要求。DSP與通用CPU相比更緊湊,RTOS與常規(guī)操作系統(tǒng)相比也是如此。這些特性完全符合物聯(lián)網(wǎng)設備的需求,因而使得DSP和RTOS成為物聯(lián)網(wǎng)應用的理想之選。 從歷史上看,嵌入式設備一般會利用一個專門用途、通常為8位或16位的微控制器,可以在沒有RTOS的情況下工作。但如今的物聯(lián)網(wǎng)設備更加復雜,需要一個32位CPU與帶有RTOS的DSP相結(jié)合,來管理控制功能,并運行復雜的信號處理。 但問題是,新一代DSP是否足以同時完成物聯(lián)網(wǎng)設備的信號處理和控制功能?答案是肯定的。一種能夠提供面向DSP功能和面向控制器功能的混合DSP架構(gòu),正在迅速被物聯(lián)網(wǎng)和其他嵌入式設備所采用。這種混合DSP具有支持超低指令字(VLIW)架構(gòu)實現(xiàn)、單指令多數(shù)據(jù)(SIMD)操作、單精度浮點運算、緊湊的代碼規(guī)模、全RTOS、超快速上下文切換、動態(tài)分支預測等特點,從而設備上不再需要額外的處理器來運行RTOS。
面向DSP的RTOS
基于DSP的RTOS旨在充分利用DSP的高性能特性。它是一個先占式、基于優(yōu)先級的多任務操作系統(tǒng),可提供非常低的中斷延遲。這類RTOS附帶驅(qū)動程序、應用程序編程接口(API)、以及為DSP芯片定制的DSP功能運行芯片支持庫(CSL)。所有片上外設都可以被控制,比如高速緩存、直接內(nèi)存訪問(DMA)、定時器、中斷單元等。因此,物聯(lián)網(wǎng)應用程序開發(fā)人員能夠輕松地配置RTOS,從而高效處理資源請求和管理系統(tǒng)。
面向物聯(lián)網(wǎng)的RTOS:RT-Thread
RT-Thread是一款專為物聯(lián)網(wǎng)設備優(yōu)化的開源RTOS,資源占用率極低、可靠性高、可擴展性強。RT-Thread得到物聯(lián)網(wǎng)設備所需豐富的中間件、硬件以及軟件生態(tài)系統(tǒng)的廣泛支持。 RT-Thread支持GCC、Keil、IAR等所有主流編譯工具,支持POSIX、CMSIS、C++應用環(huán)境、以及Micropython、Javascript等多種標準接口。 RT-Thread還為所有主流CPU和DSP架構(gòu)提供強大的支持。通過RTOS消息傳遞線程間的通信和同步、信號旗語等業(yè)務可得到始終如一的高效處理。 目前,RT-Thread有兩個版本。一個是用于資源豐富的物聯(lián)網(wǎng)設備的標準版,而另一個則為Nano版,用于資源受限的系統(tǒng)。
DSP與RT-Thread的完美結(jié)合
某些DSP(如CEVA DSP)架構(gòu)設計,原生就支持RTOS功能和超快速上下文切換,因此使用CEVA DSP和RT-Thread RTOS實現(xiàn)的物聯(lián)網(wǎng)設備,可以不中斷RTOS,同時處理不同資源之間的多種通信任務。例如,多核通信接口(MCCI)機制支持內(nèi)核之間的命令通信和消息傳遞。內(nèi)核之間的通信是通過使用AXI從端口直接訪問專用命令寄存器來實現(xiàn)的。DSP有專門的控制和指令,可以通過MCCI跟蹤通信的狀態(tài)。 ?
多核通信接口架構(gòu)。(來源:CEVA)
通過使用均為32位的MCCI_NUM專用命令寄存器來執(zhí)行內(nèi)核之間的消息傳遞。32位COM_REGx寄存器由外部內(nèi)核通過AXI從端口寫入,內(nèi)核只能讀取。對于128位AXI總線,命令生成內(nèi)核可以同時寫入的寄存器多達四個,而對于256位AXI總線,該數(shù)目則增至八個。 當生成命令的內(nèi)核將命令輸出到COM_REGx時,尋址寄存器將會被更新,COM_STS寄存器中的相關狀態(tài)位也會被更新。此外,中斷(MES_INT)將被確認以通知接收內(nèi)核。
當接收內(nèi)核讀取其中一個COM_REGx寄存器后,會向發(fā)起方發(fā)送一個讀取指示信號。讀取指示信號由接收內(nèi)核使用專用的RD_IND(讀取指示)MCCI_NUM位總線接口發(fā)送。RD_IND總線的每一位分別表示來自其中一個COM_REGx寄存器的讀取操作。利用IO接口,接收內(nèi)核一次只能讀取一個COM_REGx寄存器。這樣不僅使不同內(nèi)核間同步變得更簡單,而且使同一內(nèi)核中不同任務間的同步也變得更為容易。
審核編輯:劉清
評論
查看更多