An excerpt of d.stream’s references
Realization of a software framework for a multi-core processor from Texas Instruments with the real-time operation system SYS/BIOS. Development included components for IPC communication, peripheral drivers, video input and bootloader. The framework enables the costumer to integrate his own algorithms to the desired cores.
An already existing C++ algorithm on the DSP TI C6424 was optimized. The run time could be reduced to approx. 20% which prevented a new hardware development from the customer. Development also included the implementation of a USB transmission system using the FT232H-Converter on the DSP to transmit reference data and results faster, as well as a DSP/PC software for evaluating the algorithm with reference data.
The final device is used in production of blank CD/DVD discs for recognition of material or production errors with the help of different cameras and sensors. For fast image processing up to five TI C6414 DSPs are used which have to communicate with the host (PC). For this we created a communication driver for serial and parallel transmission of priority-based and packet-based command and video data between the DSPs and the PC. For a follow-up order we also implemented a bootloader for a software update and software for downloading applications from PC to the single DSPs.
During this projects the hardware setup was accomplished and system and application software for a 16 bit DSP, as well as a 8 bit Microcontroller were realized. The following functions were implemented for the DSP: Network I/O, audio output, infrared code receiption and audio sound settings (bass, middle, treble). The following functions were implemented for the Microcontroller: Transmission and learning of infrared codes over GPIO, display control over RS232, button query and various control tasks.
For a follow-up order a serial, bi-directional and bus-capable communications interface between DSP and Microcontroller was implemented. This interface transmits data over two GPIO wires and supports collision handling.
Creation of a scope statement for the optimization of an existing TETRA-Vocoder software, that is used in a trunked radio system device. This consits of Assembler source code that was ported from a TI-C54xx to a TI-C5510. This porting was originally not done completely and still contained errors. Following this, the order was given to d.stream and the source code optimization was done according to the scope statement. Reference of the project lead of Funkwerk Köpenick GmbH, from 30.11.04 (translated from German):
“ […] Mr. Bajza has fulfilled his tasks independently, in time and with great professionality to our complete satisfaction. Because of his commitment the Vocoder’s run time could be reduced by 50% and the general stability of our application could be improved.”
In this project a C6713 from TI was used. The DSP software was optimized for a firmware update which also included the integration of the TCP/IP stack of d.SignT. This created the possibility to control and update the firmware of the smart camera via TCP/IP or UDP. Additionally d.stream provided support for the customer and his clients.
For this project a webserver and a web front end for controlling and visualizing the camera was also implemented.
Software development for a Multi-DSP system with three C6727 from TI including extension and optimization of Inter-DSP communication, as well as the creation, optimization and simulation of the ANC algorithms.
Realisation of a video recording system with a Blackfin BF533 DSP from Analog Devices. The video data was coded in MPEG format and saved on a MMC memory card. Inside the project the system and driver programming was implemented which consisted of: state machine, user interface, bettery surveillance with self shut-down, synchronization of the video data, an emulated I2C driver, ADC driver and the initialization of the video decoder through SPI.
This project consisted of porting the WMA9 decoder with DRM10 encryption onto a processor with ARM architecture. The following tasks have been done: conversion of the WMA9 decoder from the initial C++ project to a Code Warrior project. Adjustment of Assembler source code and optimization on memory size. Integration of the ported WMA9 decoder into the customer’s framework, as well as testing directly on the final hardware. Splitting the WMA9 decoder and DRM10 software into time slots to reload the code during runtime for the purpose of memory optimization.
For this industrial camera system the DSP DM642 from Texas Instruments was used. The hardware which was developed by the customer was installed and set up. The actual software development contained the following components: software architecture n DSP/BIOS, video driver for input/output while using the video ports and the EDMAs for different resolutions, driver for sensor configuration over the I2C interfrace, initialization of a FPGA, integration of a TCP/IP stack and FAT driver, driver for an external UART, simultaneous operation of a MMC driver and a GPIO device with only one SPI interface, Flash driver and PLL driver, secure software update via UART or MMC, testing software and final test with connection to PC software.
Reading device for the Data Matric code (two-dimensional barcode) with 26 evaluations per second. Driver programming on the TI C6211 for video input/output, RS232 communication, flash driver, bootloader and functionality for updating software over RS232.
TETRA (Terrestrial Trunked Radio) is a European digital radio standard for professional mobile communication. We implemented a software expansion of Tetra’s channel allocation inside the I/O driver on a TI C6701.
Realization of hall effect, equalizer and flanger. Programming of a GUI for controlling algorithms on the DSP via PC with Microsoft Visual Studio C++.