260 likes | 536 Views
Alvis Product Introduction - Digital Media Processor Platform. Odin TeleSystems is a Texas Instruments’ Third Party Member. DaVinci is a trademark of Texas Instruments. Certain portions of this presentation are provided by Texas Instruments. OTX – Odin Telecom FrameworkX
E N D
Alvis Product Introduction- Digital Media Processor Platform Odin TeleSystems is a Texas Instruments’ Third Party Member.DaVinci is a trademark of Texas Instruments. Certain portions of this presentation are provided by Texas Instruments.
OTX – Odin Telecom FrameworkX DSP – Digital Signal Processor DMP – Digital Media Processor (ARM + DSP) DMM – Digital Media Module Li – Line Interface (e.g. T1/E1) NIC – Network Interface Card (e.g. Thor-8-PCI-Plus) CE – Codec Engine Glossary -A bunch of letter combinations?
OTX Daughter board with up to 4 DaVinci (Texas Instruments) Digital Media Processors (DMP) Each processor has two cores: ARM9 and C64x+ 4752 DSP MIPS and 400 MHz ARM processing power Gb Ethernet port (internal Ethernet switch) MontaVista Linux Operating System (Windows CE option [future]) TDM interface to host NIC card (e.g. Thor-8-PCI-Plus-2.0) 3 versions available (1, 2 and 4 DMPs) Alvis -What is it?
OTX Daughter board with up to 4 DaVinci (Texas Instruments) Digital Media Processors (DMP) Each processor has two cores: ARM9 and C64x+ 4752 DSP MIPS and 400 MHz ARM processing power Gb Ethernet port (internal Ethernet switch) MontaVista Linux Operating System (Windows CE option [future]) TDM interface to host NIC card (e.g. Thor-8-PCI-Plus-2.0) 3 versions available (1, 2 and 4 DMPs) Alvis -What is it?
Suitable for virtually any processor-intensive voice or video application, for example: RTP to E1/T1streaming and transcoding VoIP Gateway (SIP and E1/T1 solutions) Soft-switch Data compression and decompression of a vast amount of timeslots 3G Codec transcoding applications Traditional TDM telephony algorithms like DTMF, MF, VAD, Echo Cancellation, etc. Alvis -What can it be used for?
MIPS - One of the most powerful processor platform per occupied space in the industry. Multi-thread - Dual core device provides for multi-threading applications in a very a small footprint. Linux - Open development platform using industry standard operating systems and tools (Linux and U-boot) provides for rapid project development, ease of use and expandability. Redundancy – Internal Ethernet switch can be configured for port mirroring between processors OTX – Standard OTX API functions can be used to interface to the Alvis-ASM board as well to develop internal embedded applications to be executed on the Alvis processors (DMPs). Alvis-ASM -Benefits?
MontaVista Linux Board Support Package from Texas Instruments (DVEVM) OTX HW SDK (host application SDK) Selected Codecs: G.711 Codec (a-law/u-law) G.723.1 decoder G.729AB decoder OTX Standard SPMs (tone generators and detectors, HDLC encoder/decoder). Alvis-ASM -What SW package are included?
Video/Imaging Decoders: MPEG-4 SP, H.263 p0, H.264 BP, H.264 MP, MPEG-2 MP, WMV9 MP/AP, VC1, JPEG Encoders: MPEG-4 SP, H.264 BP, JPEG Voice/Speech Wireline Voice Codecs: G.722, G.726 Wireless Voice Codecs: GSM-AMR, GSM-FR, GSM-EFR, EVRC, WB-AMR - G/722.2 Audio Decoders: MP3, WMA9, AAC LC, AAC HE, AC3 Encoders: WMA8, AAC LC, AAC HE Alvis-ASM -What SW package can be added?
Processor Subsystem -What resources does each processor have?
U-Boot (customized for Alvis) Flash environment variables IP and MAC address settings NFS or Flash boot Linux kernel JFFS2 USB Software Subsystem -What runs where?
ARM acts as a master processor: User Controls File System Peripheral drivers TCP/IP stack Can also run lower-MIPS algorithms ARM vs DSP partitioning DSP abstracted as “black box”: • Runs processing-intensive algorithms such as voice codecs with hard real-time deadlines • Defined ways of interfacing with the black box, optimized for multi-media algorithms
Boot selection from OTX Host Application (UART/Flash) ARM executes U-Boot (typically from Flash) – UBoot configures DMP peripherals – Displays prompt on UART – Allows user to change / save parameter settings U-Boot interprets settings and loads Linux into DDR2 Linux consists of 2 (fairly independent) components: • Kernel • File system Several options how these two components can be provided (see table below): U-Boot starts Linux Outputs can be observed on UART Can log-in to ARM Linux from host PC via • UART • Telnet Linux can be configured to auto-run programs after start-up (e.g. an OTX DMP application) Boot Process (U-boot)
ARM project files are edited and compiled on the host PC Cross-compiler/linker generate ARM executable Run either on native or virtual Linux PC (VMWare) ARM executable is placed into a host directory (e.g. ~/targetdir), which is NFS-mounted into ARM Linux (e.g. as /mnt/host) ARM Linux can execute the program even though it is located on the remote network drive For debugging, the target program is invoked on the ARM indirectly by a debug server, which IDEs like ddd or DevRocket can connect to via Ethernet /mnt/host> gdbserver <host IP address>:1000 hello.out IDEs can set breakpoints / watch variables / step / run the program via TCP/IP commands to the gdbserver program Alvis Target Development
User space programs can not access any peripheral directly Peripheral access is exclusively done in drivers (from kernel space) Serial – UART Storage – NAND Flash Network – Ethernet USB – Mass storage Host - OtxDaVinci driver Drivers can be accessed from user programs through logical “files” in the /dev directory, e.g. /dev/mtd2 is the gate to the JFFS2 driver /dev/mtd0 is the gate to the u-boot environment variables Software Subsystem -Accessing peripheral drivers
Low-MIPS (e.g. audio) multi-media algorithms can be configured to run on the ARM core itself. Similar to peripherals, they can’t be called directly, but only through the Codec Engine (CE) API Every CE algorithm provides four APIs: create control process delete There are eight algorithm classes: Video encode / decode Imaging encode / decode Speech encode / decode Audio encode / decode with corresponding API prefixes: e.g. SPHDEC_ or AUDENC_ Software Subsystem -Accessing multi-media codecs
Demonstrates how to receive RTP packets via Ethernet Demonstrates how to decode G.729 encoded voice data stream Demonstrates how to encode the data stream to G.711 (a-law/u-law) Demonstrates how to route the a-law/u-law data to a timeslot on one of the E1 spans of Thor-8-PCI-Plus RTP Demo
The End Alvis-ASM Product Overview