A developer of VoIP systems (voice over IP).
Development of an analog telephone adapter (ATA) used voice signal transmission through IP networks.
Development of a device for VoIP telephony, based on the Blackfin BF527 processor. It should have two FXS ports, one FXO port, two Ethernet ports, three USB host ports. The software should be Linux-based.
General diagram of the infrastructure:
Major development tasks:
- Selection and cost optimization of the modules and passives
- Development of a circuit diagram
- PCB design layout and routing
- Prototyping and debugging
- Software development and testing
1. Hardware Platform
Before the start of the project, the element base was selected and optimized for the device. Creating and optimizing a bill of materials (BOM) helped minimize the mass production costs.
The ADSP-BF527 Blackfin by Analog Devices was selected as the CPU for the project. Its characteristics are an operational frequency of 500 MHz, rich periphery and DSP-like instructions for audio/video processing and integrated Ethernet controller.
The device features the following interfaces:
- 1x 100/10Mbit Ethernet
- 1x 100/10Mbit Ethernet + PoE IEEE 802.3e
- 3х USB 2.0 Host
- 1x RS-232
- 1x FXO
- 2x FXS
A brief description of the FXS and FXO interfaces:
- FXS is a voice interface for connecting a fixed-line telephone (FXS is an abbreviation that can be applied to any equipment which is recognized by the telephone as an exchange station)
- FXO is a connector for an analog phone line
The audio signal transmission was accomplished through the TDM interface (audio stream multiplexing based on time division of channels). The ports and the audio stream are controlled through the MPI interface, which is physically identical to the SPI interface. The MPI interface was developed to execute processes remotely.
The Ethernet chip is connected to the RMII interface and configured through the SMI interface. It includes two 100/10 Mbps PHYs and a single MAC. A major feature of the chip is that it generates a frequency of 50 MHz for the processor, thus eliminating the need for an external generator.
Since the BF 527 does not support an SMI hardware interface, it has been implemented as software, both at the boot level and the Linux kernel level.
An important focus at the product’s design stage was routing of differential pairs and a system bus, followed by modeling.
Analog Devices provides technical support for two major design options in the development of software for Blackfin processors. The first option involves the use of the Analog Devices VisualDSP development environment. This method is applied in the development of deeply embedded systems, with stringent real-time mode requirements. The second option involves the use of the uCLinux operating system and offers all the benefits of a fully functional operating system thanks to increased memory and performance requirements. The uCLinux-based solution was selected for the project because it offers good support of network subsystems, including IEE802.11b/g and a USB host stack for USB mass storage devices.
Analog Devices develops the uCLinux distribution (blackfin.uclinux.org). The 2010R1-RC1В version was used for the project.
The project also involved the use of the following software:
- Linux kernel v. 2.6.34
- U-boot primary bootloader
- A large number of ports available
- Low cost of the end product