明牯工作室 - 嵌入式软件服务

TI Davinci

| Comments

目录


davinci 产品


davinci 平台开发组件(11)

XDCtools simplifies development and use of embedded software components that comply with the Real-Time Software Components (RTSC) initiative. The XDCtools suite includes configuration, build, documentation generation, and browsing tools.

SYS/BIOS 6.x is a real-time operating system that supports MSP430, C28x, C64x+, C674x and assorted Arm devices (Cortex-M3, Cortex-A8, Arm 9). SYS/BIOS 6.x services include ISR dispatching, tasks, software interrupts, semaphores, device I/O, memory management, and power management. Unlike DSP/BIOS 5.x, SYS/BIOS 6.x requires additional modules for messaging (IPC) and run-time instrumentation (XDC Tools run-time). Users should also download these products if they wish to use these features. See the SYS/BIOS 6.x documentation for a detailed list of enhancements provided compared to DSP/BIOS 5.x.

The BIOS IPC Product contains modules that support the communication between processors in a multi-processor environment and communication to peripherals. This communication includes message passing, streams, and linked lists. These modules work transparently in both uni-processor and multi-processor configurations.

Link is runtime software that simplifies the development of embedded applications in which either General-Purpose microprocessors (GPP) or DSPs communicate with each other. Typically, one processor is designated as the master for one or more slave processors, and may be responsible for controlling the slave processor's execution (including boot-loading the slave).

Codec Engine is a framework that automates the invocation and instantiation of XDAIS-compliant algorithms and XDM-compliant codecs. Codec Engine can execute in ARM-only, ARM-DSP, or DSP-only environments and supports concurrent execution of multiple channels and multiple instances of algorithms/codecs. In the ARM environment, it is currently ported to the Linux and WinCE operating systems.

The Framework Components product enables faster implementation of application frameworks that use algorithms and codecs that comply to the XDAIS standard. XDAIS defines standards that prevent algorithms from hard-coding ownership of system resources such as memory and DMA channels. An XDAIS-compliant algorithm enables the application framework to query it and provide information on specific memory DMA and other resources it needs. This makes integration of algorithms from multiple sources much easier.

Framework Components is often leveraged by higher level frameworks (e.g. Codec Engine).

The OSAL (Operating System Abstraction Library) provides ports of the XDC Runtime to High Level Operating Systems (HLOS) like Linux. It also redistributes the XDC Runtime sources and build scripts enabling end users to rebuild in their environments. Finally, it provides pre-configured sources appropriate for each supported OS, so the XDC tools are not required.

Currently, the OSAL is primarily an internal utility product used by Codec Engine, Framework Components and other TI products. The OSAL product is quite new, and therefore subject to significant changes from release to release. The intent is to make it a standalone product, and therefore users are welcome to build upon it, but please understand and anticipate that the first few releases may change signficantly and compatibility may not be preserved.

The XDAIS (eXpress DSP Algorithm Interoperability Standard) Developer's Kit provides the header files and specifications needed to implement XDAIS-compliant algorithms.

The XDAIS standard is designed to enable multiple algorithms to coexist in a system and share resources. This is acheived by preventing 'hard-coded' use of critical system resources, such as memory, DMA, and other accelerators. In contrast, the algorithm must implement interfaces (IALG to manage memory, and others for other resources) that are then queried and satisfied by the application framework. The framework can then ensure that the resources granted are not already in use by another algorithm. As a result, it is easier to reuse algorithms that are XDAIS-compliant, especially when utilizing algorithms from multiple sources.

XDAIS releases include XDM extensions that enable 'plug-and-play' capabilities for several common classes of algorithms (e.g. multimedia codecs).

The Linux Utils product has evolved over the years based on user needs. See each release's Release Notes for details. All releases have included CMEM:

CMEM: A memory manager that can grant physically contiguous memory for general use (e.g. as image or video data buffers)

Other releases have included some of the following drivers (note that not all are applicable accross devices):

SDMA: A programming module that provides Linux applications with access to SDMA functionality

EDMA: A programming module that provides Linux applications with access to EDMA functionality

VICP: A utility library that provides the ability for user-mode Linux applications to request VICP channels and operate on a channel using direct, memory-mapped access to the channel's registers.

The EDMA3 Low-level driver provides APIs for using and safely sharing EDMA3 resources in an application.

UIA provides the target side code and libraries for use with the System Analyzer.


davinci 编译


davinci wiki


davinci 第三方


Comments