Follow+Star PublicAccount, don’t miss the wonderful content
Source | Network
With the comprehensive coverage of basic networks, the Internet of Things (IoT) has developed rapidly, and the number of IoT terminal devices is increasing.
This article will discuss the next generation of hybrid DSP technology equipped with RTOS, which is the best choice for the Internet of Things.
Evolution of DSP Technology
DSP is used to convert and process analog signals in the real world, and this processing operation is accomplished through complex signal processing algorithms. As a technology that emerged in the 1980s, DSP has made significant advancements in hardware functionality, software development tools, and infrastructure. Early algorithms were programmed onto DSPs using assembly language. With the expansion of the DSP market and the increasing complexity of algorithms, its architecture has also evolved, promoting the development of high-level language compilers.
Chips with embedded DSP cores typically integrate on-chip memory, which is usually large enough to accommodate the complete set of programs needed to execute dedicated tasks. The application range of the new generation of DSPs covers audio/speech processing, image processing, telecommunications signal processing, sensor data processing, and system control. Today’s IoT market almost covers various combinations of many previous use cases. Industry analysis company Markets and Markets predicts that by 2027, the global IoT technology market size will grow to $566.4 billion. Facing such a vast IoT market, the new generation of DSP technology is crucial.
Why is DSP Very Suitable for IoT Devices?
The IoT collects data using different types of sensors, enabling communication and connectivity between all things in the real world. DSP analyzes and processes the continuously changing signals from sensors. Today, sensor hub DSPs (such as CEVA-SensPro2) have emerged to process and fuse information from multiple sensors and are used for context-aware neural network inference. DSPs are designed to analyze and process various signals in the real world, such as audio and video, temperature, pressure, or humidity, with tasks involving precise and accurate real-time repetitive digital calculations. As the IoT market grows, more and more sensors are deployed, and all collected data needs to be efficiently processed in real time. Increasingly clear signs indicate that data processing needs to occur directly on IoT devices rather than being sent to the cloud for processing.
Another trend currently happening concerning IoT devices is the increasing use of AI-based algorithms for localized data processing. AI algorithms based on neural network models require high levels of parallel capabilities to be effectively executed. Parallel computing capability is a key advantage of DSPs over general-purpose CPUs. To meet this requirement, modern DSP architectures tend to use wide vector and Single Instruction Multiple Data (SIMD) features.
In short, powerful DSP-based solutions can simultaneously meet the high-performance computing and low-power requirements of modern IoT devices.
Why DSP Matches Well with RTOS?
Just as DSP is a dedicated processor, RTOS is also a dedicated operating system. DSP is committed to processing real-world data extremely quickly and reliably, while RTOS is dedicated to reliably meeting specific timing requirements in response/reaction times. DSP is more compact compared to general CPUs, and RTOS is also more compact compared to conventional operating systems. These features perfectly match the needs of IoT devices, making DSP and RTOS an ideal choice for IoT applications.
Historically, embedded devices typically utilized a dedicated, usually 8-bit or 16-bit microcontroller that could operate without an RTOS. However, today’s IoT devices are more complex and require a 32-bit CPU combined with a DSP with RTOS to manage control functions and run complex signal processing.
The question is whether the new generation of DSP is capable of simultaneously performing signal processing and control functions for IoT devices. The answer is yes. A hybrid DSP architecture that can provide DSP-oriented functionality and controller-oriented functionality is being rapidly adopted by IoT and other embedded devices. This hybrid DSP features super low instruction word (VLIW) architecture implementation, SIMD operations, single-precision floating-point operations, compact code size, full RTOS, ultra-fast context switching, dynamic branch prediction, etc., thus eliminating the need for an additional processor to run the RTOS on the device.
DSP-Oriented RTOS
DSP-based RTOS is designed to take full advantage of the high-performance features of DSPs. It is a preemptive, priority-based multitasking operating system that offers very low interrupt latency. Such RTOS comes with drivers, application programming interfaces (APIs), and DSP function running chip support libraries (CSL) customized for DSP chips. All on-chip peripherals can be controlled, such as caches, direct memory access (DMA), timers, interrupt units, etc. Therefore, IoT application developers can easily configure the RTOS to efficiently handle resource requests and manage the system.
RT-Thread is an open-source RTOS optimized for IoT devices, with extremely low resource occupancy, high reliability, and strong scalability. RT-Thread has extensive support from a rich middleware, hardware, and software ecosystem needed for IoT devices.
RT-Thread supports all mainstream compilation tools, including GCC, Keil, and IAR, and supports various standard interfaces such as POSIX, CMSIS, C++ application environments, as well as Micropython, Javascript, etc.
RT-Thread also provides strong support for all mainstream CPU and DSP architectures. Through RTOS message passing, inter-thread communication and synchronization, signaling, etc., can be consistently and efficiently handled.
Currently, RT-Thread has two versions. One is the standard version for resource-rich IoT devices, and the other is the Nano version for resource-constrained systems.
The Perfect Combination of DSP and RT-Thread
Some DSPs (such as CEVA DSP) are designed to natively support RTOS functionality and ultra-fast context switching. Therefore, IoT devices implemented using CEVA DSP and RT-Thread RTOS can handle multiple communication tasks between different resources without interrupting the RTOS. For example, the multi-core communication interface (MCCI) mechanism supports command communication and message passing between cores. Communication between cores is achieved by directly accessing dedicated command registers using AXI from ports. DSPs have dedicated controls and instructions that can track the communication status through MCCI.
Figure 1: Multi-core communication interface architecture. (Source: CEVA)
Message passing between cores is executed using the 32-bit MCCI_NUM dedicated command registers. The 32-bit COM_REGx registers are written by external cores via AXI from ports and can only be read by the cores. For a 128-bit AXI bus, the command generating core can write to up to four registers simultaneously, while for a 256-bit AXI bus, this number increases to eight.
When the command-generating core outputs commands to COM_REGx, the addressing registers will be updated, and the relevant status bits in the COM_STS register will also be updated. Additionally, the interrupt (MES_INT) will be acknowledged to notify the receiving core.
Original link:
https://www.ceva-dsp.com/ourblog/iot-dsp-and-rtos-a-perfect-match/


