Presentation Transcript
Low-Power, Low-Overhead, High-Fidelity Digital Sound for SOCs: Low-Power, Low-Overhead, High-Fidelity Digital Sound for SOCs Steve Leibson
Technology Evangelist
Tensilica, Inc.
sleibson@tensilica.com
Why Listen to This Presentation?: Why Listen to This Presentation? Learn about digital audio subsystem alternatives for SOC design
Advantages and disadvantages for each alternative
Tradeoffs
Learn about key decision factors for choosing one alternative over another
Learn about energy consequences of digital audio implementation choices
Agenda: Agenda Introduction to digital audio concepts
Implementation choices for on-chip audio
Implementation examples
Concluding thoughts
A Brief History of Audio: A Brief History of Audio
The Era of Digital Audio: The Era of Digital Audio Vinyl is Dead
Digital Audio Applications: Digital Audio Applications
Digital Audio Applications: Digital Audio Applications Cell Phones
Digital Audio Applications: Digital Audio Applications Cell Phones
Personal Media Players
PMPs
MP3 players
Digital Audio Applications: Digital Audio Applications Cell Phones
Personal Media Players
PMPs
MP3 players
High-definition Audio for Video Players and Televisions
Blu-ray
HD DVD
HDTV
Digital Audio Applications: Digital Audio Applications Cell Phones
Personal Media Players
PMPs
MP3 players
High-definition Audio for Video Players and Televisions
Blu-ray
HD DVD
HDTV
Automotive Audio
HD Radio
Satellite Radio
Digital Audio Applications: Digital Audio Applications Cell Phones
Personal Media Players
PMPs
MP3 players
High-definition Audio for Video Players and Televisions
Blu-ray
HD DVD
HDTV
Automotive Audio
HD Radio
Satellite Radio
GPS Navigation Units
Introduction to Digital Audio: Introduction to Digital Audio
Introduction to Digital Audio: Introduction to Digital Audio The digital audio codec (coder/decoder) is the foundation of digital audio
Introduction to Digital Audio: Introduction to Digital Audio The digital audio codec (coder/decoder) is the foundation of digital audio
MP3 was the first widely used audio codec
Introduction to Digital Audio: Introduction to Digital Audio The digital audio codec (coder/decoder) is the foundation of digital audio
MP3 was the first widely used audio codec
More advanced multi-channel audio codecs use increasingly sophisticated algorithms to improve fidelity
They require more processing power too
Codec vendors introduce new codecs regularly
Introduction to Digital Audio: Introduction to Digital Audio The digital audio codec (coder/decoder) is the foundation of digital audio
MP3 was the first widely used audio codec
More advanced multi-channel audio codecs use increasingly sophisticated algorithms to improve fidelity
They require more processing power too
Codec vendors introduce new codecs regularly
Large number of digital audio codecs now in use
Many Digital Audio Codecs, Here are a Few: Many Digital Audio Codecs, Here are a Few Notes:
Encode/Decode
Different Data Rates
Different Numbers of Channels
Digital Audio Implementation Choices: Digital Audio Implementation Choices General-purpose processor
Hardware codecs
DSP
Audio-specific processor
General-Purpose Processor Core: General-Purpose Processor Core
General-Purpose Processor Core – Advantages and Disadvantages: General-Purpose Processor Core – Advantages and Disadvantages Advantages
Probably one on the chip anyway
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
General-Purpose Processor Core – Advantages and Disadvantages: General-Purpose Processor Core – Advantages and Disadvantages Advantages
Probably one on the chip anyway
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
Disadvantages
No audio glitches allowed and audio quality is sensitive to latency, so sharing one processor is problematic
Not optimized for audio, so clock rate and energy consumption will be higher
Hardware Codec: Hardware Codec
Hardware Codec – Advantages and Disadvantages: Hardware Codec – Advantages and Disadvantages Advantages
Small on-die area
Low power
Hardware Codec – Advantages and Disadvantages: Hardware Codec – Advantages and Disadvantages Advantages
Small on-die area
Low power
Disadvantages
Die size grows with each new codec
Hard to change if…
There’s a change in the codec spec
There’s a bug
Impossible to change to accommodate a new codec
Must add additional hardware codecs
Multiple Hardware Codecs: Multiple Hardware Codecs
DSP Core for Audio: DSP Core for Audio
DSP Core –Advantages and Disadvantages: DSP Core – Advantages and Disadvantages Advantages
Integral multiplier helps lower the clock rate, vs. general-purpose processor
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
DSP Core –Advantages and Disadvantages: DSP Core – Advantages and Disadvantages Advantages
Integral multiplier helps lower the clock rate, vs. general-purpose processor
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
Disadvantages
DSPs not good for general-purpose control
Need control processor and DSP
Task splitting and inter-processor communications are problematic
16-bit DSPs not enough for good audio
32-bit DSPs overkill (really need 24 bits)
Audio-Specific Processor Core: Audio-Specific Processor Core
Audio-Specific Core –Advantages and Disadvantages: Audio-Specific Core – Advantages and Disadvantages Advantages
Instructions matched to the task of implementing digital audio codecs
Lowers the clock rate and energy consumption
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
Retains all the abilities of a general-purpose processor core
Audio-Specific Core –Advantages and Disadvantages: Audio-Specific Core – Advantages and Disadvantages Advantages
Instructions matched to the task of implementing digital audio codecs
Lowers the clock rate and energy consumption
Can implement multiple codecs for multi-purpose products using additional instruction memory
Accommodates new codecs (if the bandwidth is available)
Retains all the abilities of a general-purpose processor core
Disadvantages
Not as familiar as the other alternatives
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine Exploits configurability and extensibility of Tensilica’s Xtensa LX2 processor core
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine Exploits configurability and extensibility of Tensilica’s Xtensa LX2 processor core
Second generation set of audio extensions
Two hardware multipliers
Executes one or two operations per instruction
16-, 24-, and 64-bit instructions
Lower clock rate when executing audio codec code
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine Exploits configurability and extensibility of Tensilica’s Xtensa LX2 processor core
Second generation set of audio extensions
Two hardware multipliers
Executes one or two operations per instruction
16-, 24-, and 64-bit instructions
Lower clock rate when executing audio codec code
Wide audio-specific registers
Handles stereo 24-bit/channel data samples as a native data type
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine Exploits configurability and extensibility of Tensilica’s Xtensa LX2 processor core
Second generation set of audio extensions
Two hardware multipliers
Executes one or two operations per instruction
16-, 24-, and 64-bit instructions
Lower clock rate when executing audio codec code
Wide audio-specific registers
Handles stereo 24-bit/channel data samples as a native data type
300 audio-specific instructions
Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine: Anatomy of an Audio-Specific Processor: Tensilica’s HiFi 2 Audio Engine Exploits configurability and extensibility of Tensilica’s Xtensa LX2 processor core
Second generation set of audio extensions
Two hardware multipliers
Executes one or two operations per instruction
16-, 24-, and 64-bit instructions
Lower clock rate when executing audio codec code
Wide audio-specific registers
Handles stereo 24-bit/channel data samples as a native data type
300 audio-specific instructions
Comprehensive and growing set of digital audio codecs
Tensilica’s Diamond 330HiFi Audio Engine: Tensilica’s Diamond 330HiFi Audio Engine Ready-made audio processor core
Leverages HiFi 2 audio engine and HiFi codecs
Adds 32-bit input and output queue interfaces to get ADC and DAC traffic off of the bus
Higher efficiency, lower power way to talk to peripherals
Diamond 330 HiFi Audio Engine Block Diagram: Diamond 330 HiFi Audio Engine Block Diagram
Diamond 330 HiFi Audio Engine Block Diagram: Diamond 330 HiFi Audio Engine Block Diagram Audio-specific registers
Diamond 330 HiFi Audio Engine Block Diagram: Diamond 330 HiFi Audio Engine Block Diagram Audio-specific registers Audio-specific instruction-execution units
Tensilica HiFi 2 Audio Engine Instruction Groups: Tensilica HiFi 2 Audio Engine Instruction Groups ~ 300 Audio-Specific Instructions
The HiFi 2 Audio Engine (recap): The HiFi 2 Audio Engine (recap) Tensilica’s configured Diamond 330HiFi processor core incorporates the HiFi 2 Audio Engine
The HiFi 2 Audio Engine (recap): The HiFi 2 Audio Engine (recap) Tensilica’s configured Diamond 330HiFi processor core incorporates the HiFi 2 Audio Engine
The HiFi 2 Audio Engine is available as an option for Tensilica’s configurable Xtensa LX2 processor core
The HiFi 2 Audio Engine (recap): The HiFi 2 Audio Engine (recap) Tensilica’s configured Diamond 330HiFi processor core incorporates the HiFi 2 Audio Engine
The HiFi 2 Audio Engine is available as an option for Tensilica’s configurable Xtensa LX2 processor core
All Tensilica digital-audio codecs run on both the Diamond 330HiFi processor core and the Xtensa LX2 processor core with the HiFi 2 Audio Engine option
Tensilica HiFi 2 and Diamond 330HiFiCellular Handset and Audio Entertainment Codec Set: Tensilica HiFi 2 and Diamond 330HiFi Cellular Handset and Audio Entertainment Codec Set * As of 7/18/07
Wide Adoption of Tensilica HiFi Digital AudioThe new standard in mobile audio, video, & DTV: Wide Adoption of Tensilica HiFi Digital Audio The new standard in mobile audio, video, & DTV Siemens
SL75 Samsung
SPH-V7800 Samsung
SGH-910 Motorola
KRZR Motorola
RIZR Cingular 2125
( HTC ) LG-LB1500 LT1000 Korean T-DMB Standard LG-SB120 LD1200 DVB-H LG-KD1200 LG-LB1200 LG-KB1300 Cingular 8125
(HTC) Most top mobile handset makers ship Tensilica-based multimedia LG Prada Panasonic 705
Design for Portable Audio Applications: Design for Portable Audio Applications Audio playback alone versus audio with enhancements and effects
Equalization, Bass Enhancement, 3D Audio, MIDI synthesis, etc.
Design for Portable Audio Applications: Design for Portable Audio Applications Audio playback alone versus audio with enhancements and effects
Equalization, Bass Enhancement, 3D Audio, MIDI synthesis, etc.
Enhancements and effects may require an extra 100-200 MHz
May require synthesizing the audio processor for higher frequency operation
Makes the audio processor bigger and makes it dissipate more energy
Design for Portable Audio Applications: Design for Portable Audio Applications Audio playback alone versus audio with enhancements and effects
Equalization, Bass Enhancement, 3D Audio, MIDI synthesis, etc.
Enhancements and effects may require an extra 100-200 MHz
May require synthesizing the audio processor for higher frequency operation
Makes the audio processor bigger and makes it dissipate more energy
For low-power applications, consider a second processor for audio effects
Allows very low-power operation for simple playback
Long battery life during playback
Diamond 330Hifi on the Bus: Diamond 330Hifi on the Bus
Diamond 330Hifi on the Bus: Diamond 330Hifi on the Bus Potential Bottleneck, especially for 5.1- to 10.1-channel systems
Audio quality is sensitive to latency
Diamond 330Hifi using Output Queue: Keep Audio Traffic Off the Bus: Diamond 330Hifi using Output Queue: Keep Audio Traffic Off the Bus
Many Systems Only Need One Processor (Get Rid of the Host): Many Systems Only Need One Processor (Get Rid of the Host)
Slide55: One processor handles audio, housekeeping, and simple user interface at low MHz Many Systems Only Need One Processor (Get Rid of the Host)
Move Audio Processor Memory to Local Interconnect: Move Audio Processor Memory to Local Interconnect
Final Conclusions: Key Points: Final Conclusions: Key Points Paths to low-power, on-chip digital audio
Low clock rate
Low Bus Traffic
Optimize use of local memory and cache
Keep audio sample traffic off of the bus!!!
Things to look for:
24-bit audio processing ability
Comprehensive and growing codec set Find out more at www.tensilica.com