Jack White’s manic bawl floats like frenetic frosting over a raucous clipped riff from the Parsons Triple Jet. The live recording is a mess, mixed by a near-deaf sound engineer whose thirty years at the same venue has seen his perception of sound gradually distort into a grotesque caricature of the once legendary acoustics of the house like an audio homage to Tammy Faye’s makeup artist.
Luckily, the engineers mastering the CD were on their game, and the right noises ended up in the right places – banishing the bad memory of the concert acoustics to the round of the roadies’ repeated post-concert tales. The mix was mashed into a stream of bits – encoded and enshrined – waiting for your SoC to reincarnate the Raconteurs that never were for the eager ears of your customers.
Your SoC can do audio, right?
It’s hard to imagine a self-respecting consumer-bound SoC that doesn’t do audio these days. Smartphones, Tablets, PCs, portable media players, TVs, cameras, video recorders, toys – just about everything that interacts with people does it at least partially with audio. And, sound is easy, right? You just need a good DAC and a little bit of… OK, maybe quite a bit of… Wow, really a lot of complicated software. As it turns out, adding audio to your device could grow into a career of its own. Anybody can throw down a dedicated processor to handle the audio stuff on the side, but then there’s stereo, 5.1, 7.1, 16-bit, 24-bit, Dolby, DTS, SRS. Just listing all the standards could double the length of your design project.
To make matters worse, the audio work you do is not what will differentiate your SoC. You either do an acceptable job on the audio or you don’t. What you need is for the audio gods to descend from Valhalla (where the acoustics are quite good, we hear) and fire an audio-system lightning bolt at your chip, causing it to magically support all of the required audio standards (both the hardware and software aspects) with no impact on your design team.
Synopsys was apparently hanging out in Valhalla (at a recent concert, no doubt), and they heard your cries. The company now sells and supports a complete audio subsystem as IP. You just drop it into your netlist, load the software, and press PLAY. OK, it doesn’t really work quite that way, but their new SoundWave audio subsystem includes both the hardware and software you need to get audio support in your SoC – without all the hassle.
Today’s complicated standards and demanding high-end specs make pulling audio off of your main application processor pretty much a requirement. Synopsys SoundWave lets you choose a single or dual-core 32-bit ARC audio processor “optimized for processing multiple high-definition, multi-channel audio streams in parallel.” The hardware portion also includes I2S and S/PDIF interfaces for getting the sound off your chip and on-chip connections to interfaces like HDMI and ARM AMBA 3 AXI/AHB to facilitate hooking the audio stuff up to the rest of your SoC. High-quality audio connections for line-in and -out, microphones, speakers, and headphones are provided by analog audio codecs.
Not everybody needs the whole enchilada, so there is a cool configuration tool that lets you choose how many channels you need (in case that smart phone you’re designing really doesn’t require 7.1 audio), and which audio interfaces your device will require. That way, you get just the hardware needed for your application without a bunch of baggage.
On the software side, SoundWave offers a whole bunch-o-code, including codecs for all your favorite multi-channel formats from Dolby, DTS, SRS Labs, and Microsoft, plus things like Ogg Vorbis and FLAC. In addition to encoders and decoders, you’ll find audio post-processing functions like volume control, equalization, and surround balance. GStreamer – an open-source pipeline-based multimedia framework – is used to facilitate easy integration with your host application software via audio plug-ins.
Now, as we have discussed often here, software is the long pole in the tent on most modern SoC products. With that in mind, Synopsys provides both a virtual prototype and a hardware prototyping capability with the goal of early software development and debug. You can use Synopsys Virtualizer with a pre-built virtual prototype of the SoundWave audio system to integrate the audio software stack into your host application and debug the tricky bits long before hardware is available. If you want to debug at hardware speeds, the audio subsystem can be dropped into the company’s HAPS FPGA-based prototyping boards – which you can then distribute to your software development team for integration and validation, and which they will probably also use as something like the world’s most expensive MP3 players.
Audio may seem like easy tech, but supporting all the latest standards in the rapidly-evolving consumer climate could be a job unto itself. By providing an essentially turnkey, drop-in IP solution for both hardware and software, Synopsys is taking a huge bite out of a major design headache. While the hardware portion of SoundWave is cool and capable, it’s the bundled software that really makes this IP offering shine. Combining a solid hardware platform with pre-verified, compatible software eliminates exactly the kind of tricky debugging that seems to constantly and unexpectedly drag projects past deadlines. Just the verification and early software development features supplied with this audio subsystem package are worth the price of admission.
With the complexity of today’s SoCs, there is no room left for the “not invented here” syndrome. If IP is available for something like your audio subsystem, you should use it. Your engineering team’s precious resources and talent should be reserved for the parts of your system that will truly differentiate it from the competition. Designing dedicated audio hardware and trying to get popular standards supported in software on your custom hardware will be more likely to give you headaches than competitive advantages. Do it the easy way.