|
|
Product InformationDescriptionComplete DSP OS SolutionDSP/BIOS kernel is a scalable real-time multi-tasking kernel, designed specifically for the TMS320C6000™, TMS320C5000™, and TMS320C28x™ DSP platforms. Together with its associated networking, microprocessor-DSP communications, and driver modules, DSP/BIOS provides a solid foundation for even the most sophisticated DSP applications. DSP/BIOS has been proven in thousands of customer designs and is one of the world’s mostly widely used real-time operating systems. DSP/BIOS requires no runtime license fees and is backed by Texas Instruments worldwide training and support organizations.
Download and Related Information See: DSP/BIOS Download Page – Current and previous versions More than a KernelIn addition to the core DSP/BIOS multitasking kernel services and development tools, TI provides other DSP/BIOS-compatible modules that simplify application development:
FeaturesDSP/BIOS Kernel OverviewDSP/BIOS provides a rich set of C-callable deterministic kernel services that enable developers to create sophisticated applications without compromising real-time deadlines. DSP/BIOS is highly scalable with multithreading configurations requiring as few as 1K words. DSP/BIOS is configurable to minimize memory footprint. Configuration can be done either statically through graphical or scripting tools or dynamically using operating system calls. In addition to excluding unused modules, static configuration further reduces target memory footprint by eliminating the code required to dynamically create and delete operating system objects such as threads and semaphores.
DSP/BIOS MultithreadingTo provide the fast response required by DSP applications, DSP/BIOS augments the traditional tasking model with additional threading mechanisms. Software Interrupts are lightweight pre-emptible threads that share a common stack. This results in lower memory overhead and faster context switch times, as there is no need to save and restore a task stack. Periodic Functions are time-triggered high-priority threads that can be easily set up to process samples of data arriving at fixed time intervals, simplifying the design of multirate systems.DSP/BIOS IPC MechanismsDSP/BIOS offers several IPC mechanisms for interthread communication. Semaphores and Locks provide basic synchronization and resource locking. Mailboxes enable synchronous transfer of fixed sized messages between tasks. Message queues enable zero copy, variable-length message passing between any DSP/BIOS thread type. The exact memory for each message is allocated when the message needs to be sent. Message passing is transparent at the application level and can be within a single DSP or between multiple DSPs. For inter-DSP communication, a Message Queue Transport is required. Some of these (for example, Serial Rapid IO) are available pre-tested from TI.DSP/BIOS Multicore SupportDSP/BIOS fully supports TI’s multicore DSP solutions. For devices designed to execute the same image on multiple cores, DSP/BIOS provides shared image support, maximizing the amount of local core memory available for data. In addition, a shared memory transport is provided to enable core-to-core communication using the DSP/BIOS MSGQ module. This transport utilizes the underlying hardware features such as atomic access monitors or hardware semaphores to provide the most efficient implementation.DSP/BIOS Interrupt ManagementDSP/BIOS includes a comprehensive set of services for interrupt management. The interrupt dispatcher enables developers to write ISRs in C by performing low-level operations such as context save/restore and temporary disabling of the scheduler. This approach reduces code size by eliminating the need to specifically add such code to each ISR. To reduce data memory requirements, all ISRs use a common stack rather than the stack of the task they interrupt, with the exception of the first interrupt context, which is stored on the task stack for performance reasons. The HWI and Event Combiner modules provide additional APIs for enabling/disabling interrupts and multiplexing multiple interrupt sources on to a single pin.DSP/BIOS Power ManagementFor TI DSPs used in portable applications where power consumption is a key consideration, such as the TMS320C5509, DSP/BIOS offers a range of power management features. These may include automatically idling the CPU when in the IDL task, voltage and frequency scaling APIs, sleep or hibernate APIs, automated idling of peripherals when the peripheral domain is not in use, and a register/notify mechanism for coordinating complex system-wide power management.DSP/BIOS OS-aware Analysis & DebugIn conjunction with Code Composer Studio, DSP/BIOS provides several tools to aid debugging and optimization of multithreaded applications. The Kernel Object Viewer enables a developer to check the status of OS objects such as tasks, mailboxes, and semaphores, including whether a task is ready, running, or blocked, and which tasks are blocked on an IPC. The Real-Time Analysis tools display the thread execution and switching sequence, average and maximum execution times for a thread, and system CPU load, as well as providing a very low overhead printf capability.
DSP/BIOS LinkMany DSP-based applications, ranging from digital cameras to communications switches, use a microprocessor (GPP) to control one or more DSPs. To meet this need, TI is increasingly delivering devices that offer an ARM and DSP core in the same package. DSP/BIOS Link is software designed to facilitate communication between the ARM and the DSP in SoC devices. To develop applications that reside on GPP+DSP solutions, developers must implement communications software that enables data and control information to be exchanged between the GPP and the DSP. In addition, the GPP must also boot the DSP and often control which algorithms the DSP executes for a specific task. DSP/BIOS Link eliminates the need to create these functions from scratch by providing a robust set of MCU-DSP communications services including:
DSP/BIOS Link is available for both SoC devices, such as DaVinci, where the ARM and DSP communicate using shared memory, and discrete DSPs offering a PCI interface. DSP/BIOS Link is provided as a source code porting kit and includes pre-tested ports for some versions of embedded Linux.
What's Included
Available UpdatesSee DSP/BIOS Download Page (link in "Description" above) for current and previous versions. | |||||||||||||||||||||||||||||||||||||||||||||||||||
| Related Software | |||
| Name | Part# | Company | Software Type |
| Drivers/Platform Support Package (PSP) | SUPPORTPKG | Texas Instruments | Drivers / IO / Control Software |
| Network Developers Kit (NDK) with TCP/IP Stack | NDKTCPIP | Texas Instruments | Drivers / IO / Control Software |
| Multimedia Framework Products (MFP) - Codec Engine and xDAIS Framework Components | TMDMFP | Texas Instruments | Framework Software |
| Related Tools | |||
| Name | Part# | Company | Tool Type |
| Code Composer Studio IDE | CCSTUDIO | Texas Instruments | Code Composer Studio(TM) IDE |
| Related Devices | |||
| Part# | Name | Product Family | |
| TMS320C541 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320C542 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320C54CST | Digital Signal Processor (DSP Only) for Client-Side Telephony | C5000 Low Power DSPs | |
| TMS320C54V90 | DSP (DSP Only) for Embedded V90 Modem Solution [Not Recommended For New Designs (NRND)] | C5000 Low Power DSPs | |
| TMS320C6201 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6202 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6202B | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6203B | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6204 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6205 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6211B | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6411 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6412 | Fixed-Point Digital Signal Processor | C6000 Performance Value DSPs | |
| TMS320C6414 | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6414T | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6415 | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6415T | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6416 | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6416T | Fixed-Point Digital Signal Processor | C6000 High Performance DSPs | |
| TMS320C6701 | Floating-Point Digital Signal Processor | C6000 Floating-point DSPs | |
| TMS320C6712 | Floating-Point Digital Signal Processor | C6000 Floating-point DSPs | |
| TMS320C6713 | Floating-Point Digital Signal Processor | C6000 Floating-point DSPs | |
| TMS320DM640 | Video/Imaging Fixed-Point Digital Signal Processor | DaVinci Digital Media Processors | |
| TMS320DM641 | Video/Imaging Fixed-Point Digital Signal Processor | DaVinci Digital Media Processors | |
| TMS320DM642 | Video/Imaging Fixed-Point Digital Signal Processor | DaVinci Digital Media Processors | |
| TMS320F240 | 16-bit, 5V fixed point DSP w/ Flash | C2000 32-bit Real-time MCUs | |
| TMS320F241 | 16-bit , 5V fixed point DSP w/ Flash | C2000 32-bit Real-time MCUs | |
| TMS320F243 | 16-bit, 5V fixed point DSP w/ Flash | C2000 32-bit Real-time MCUs | |
| TMS320F2810 | 32-Bit Digital Signal Controller with Flash | C2000 32-bit Real-time MCUs | |
| TMS320F2811 | 32-Bit Digital Signal Controller with Flash | C2000 32-bit Real-time MCUs | |
| TMS320F2812 | 32-Bit Digital Signal Controller with Flash | C2000 32-bit Real-time MCUs | |
| TMS320LC541 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC541B | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC542 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC543 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC545A | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC546A | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320LC549 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320UC5402 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320UC5405 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320UC5409 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5401 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5402 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5402A | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5404 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5407 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5409 | Fixed-Point Digital Signal Processor (DSP) | C5000 Low Power DSPs | |
| TMS320VC5409A | Fixed-Point DSP | C5000 Low Power DSPs | |
| TMS320VC5410 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5410A | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5416 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5420 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5421 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5441 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5470 | System-Level Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5471 | System-Level Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC549 | Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5501 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5502 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5509 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5509A | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5510 | Fixed-Point Digital Signal Processor | C5000 Low Power DSPs | |
| TMS320VC5510A | Fixed-Point Digital Signal Processors | C5000 Low Power DSPs | |
Most Popular Tags for DSPBIOS: