CMP EMBEDDED.COM

Login | Register     Welcome Guest  
HOME DESIGN PRODUCTS COLUMNS E-LEARNING CONFERENCES CODE FORUMS/BLOGS NEWSLETTERS CONTACT FEATURES RSS RSS

The Atmel Smart Internet Appliance Processor"Optimized IP-based Architecture



TechOnline

All available research clearly shows that the market for Internet appliances—Web-enabled devices that perform a single function—is exploding. From almost zero in 1996, this market is expected to reach 100 million units in 2002. One of the fastest growing segments of this market is Internet telephony—long-distance calls carried at local rates over the Internet. Call revenue from this market is expected to exceed $60 billion in 2002.

Designing Internet appliances is a typical challenge for electronics engineers today. The end-user device must be small, light, instantly usable, low in power consumption, and cheap. Many are portable. Finally, the product must be available rapidly to take advantage of its narrow market window.

These end-user requirements mandate a single-chip solution. The architecture must use the optimal combination of hardware for power and software for flexibility, while exploiting to the maximum existing IP blocks (both hardware and software) for rapid time-to-market at minimal risk.

This article outlines how Atmel and its development partner, Aplio, responded to this challenge in the design of the AT75C310 Smart Internet Appliance Processor (SIAP) for Internet telephony functions.

System Architecture Partitioning: Hardware, Operating System, and Software

A Voice over Internet Protocol (VoIP) system is a line-side interface for TCP/IP packet reception and transmission over a phone line, and a caller-side interface for voice processing. The major data processing requirement is the VoIP protocol stack.

Two DSP cores and an embedded MCU core for protocol stack handling make up the basic hardware partitioning. One core handles the line-side interface and the other the caller side. A high-speed FIFO links each DSP core to the MCU bus, and separate memories are provided for code and workspace for each element. This gives a high level of module autonomy and parallelism in the operation of the device, which is more than adequate for the basic functionality required. Both the DSP and MCU cores are industry-standard, giving the benefits of immediate availability, qualification on existing products, extensive software libraries, and support.

In order to maximize the use of available software modules and provide an open, flexible system-on-chip for future upgrades, the Linux operating system was chosen for the MCU core. Linux offers worldwide support from the academic and industrial community, and it's free. VoIP stack manipulation and associated software modules running under Linux were developed for the MCU core.

In parallel, the required line-side and caller-side algorithms were implemented as independent software modules for the two DSP cores.

Hardware Architecture

Figure 1: The basic hardware architecture of the AT75C310 is built around the ASB and APB buses of the ARM7TDMI MCU core. Digital signal processing is handled by two OakDSPCores. Each processing element has its own dedicated memory blocks with high-speed FIFOs handling data transfers between the DSPs and the MCU core.

These elements are complemented by a high-speed external bus interface (EBI) and a standard set of peripherals for links to other system elements. The parallel I/O blocks reduce the external pin count by multiplexing other peripheral I/Os with the external data bus. The advanced interrupt controller and peripheral data controller (DMA function) significantly enhance the real-time performance of the ARM7TDMI core. In most applications the device boots by downloading software from nonvolatile memory blocks connected to the EBI.

Figure 2: The external links required for an Internet phone application based on the AT75C310. The DSP subsystems link directly to the data codec on the line side, and the voice codec on the caller side. External DRAM and Flash memory blocks are gluelessly linked to their respective on-chip controllers.

Using Atmel's advanced CMOS technology, the die layout fits into a 160-lead PQFP package, with a 3.3V power supply. A PQFP240 package option is available for additional bondouts during development. This option also provides a 32-bit external memory bus for faster instruction processing in 32-bit ARM mode.

Figure 3: The AT75C310 die layout using Atmel's advanced CMOS technology

Operating System

The publicly-available Linux port onto the ARM7TDMI core was customized for this application. It provides the kernel for process management, scheduling, memory management, and memory access protection, making use of of a counter-timer peripheral. The Linux port includes a C library, providing C system call interfaces (static implementation). Development time for applications is minimized by a set of device drivers for all system peripherals. In addition, a large number of device drivers for external components that can be connected to the EBI can be found on the Web.

By choosing Linux, the AT75C310 gained the benefits of a pre-qualified operating system widely known and supported with an expanding set of plug-compatible modules freely available on the Web. Consequently, the AT75C310 has a high degree of future-proofing, enabling its hardware architecture to be re-used for other Web-enabled applications.

Software Modules

A wide range of DSP functions is available for the two OakDSPCores. Depending on the application, Atmel can supply modules for a V.34 modem, G723.1 and G729A voice compression/decompression, MP3 decoding, silence compression, and echo cancellation.

For the ARM7TDMI core, Aplio provides software modules for the full-feature IP telephony stack, email on LCD, and for popular communication protocols such as H323 and POP/SMTP, connection processes, and audio software suites.

Application Development Tools

Linux includes a PC-based toolset (running under Linux), including an ARM Gnu C compiler (GCC), ARM G++ (for C++), link files, and a make file library. A set of debug modules are loaded onto the ARM processor during development that execute independently from the operational software and cause a minimum of performance degradation.

In addition, the industry-standard ARM7TDMI and the OakDSPCore are supported by a comprehensive range of state-of-the-art development tools including simulators and debuggers. An AT75C310 development board allows for real-time application testing and debugging.

IP-based Architecture for Performance, Flexibility, and Fast Time-to-Market

The IP-based architecture of the AT75C310 aims to provide the optimal mix of high-performance hardware blocks, open operating system, and flexibility in software modules to enable market-leading Internet appliance products to be developed as rapidly as possible, with minimal risk.

About the Author

Peter Bishop is Communications Manager at Atmel Rousset, France. Atmel is a supplier of single-chip solutions for digital communications, computer, consumer, and automotive products.

1

Rate this article: Low High
Current rating
  • .
Embedded.com Career Center
Looking for a new job?
SEARCH JOBS

Browse all jobs

SPONSOR
RECENT JOB POSTINGS



VIRTUALAB
WEBINAR
WEBINAR
WEBINAR




 :