15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Gaming applications often require a very sophisticated audio system. Many games place sound sources<br />

in a virtual 3-D space. The user expects the system to render this 3-D space on any number of speaker<br />

systems, ranging from headphones to stereo speakers to 5.1-channel home theater systems. The virtual<br />

3-D space includes not only positional cues, but environmental cues as well. A game player must be able<br />

to move a character from an open outdoor space into a small wooden room and seamlessly hear the<br />

environmental cues such as the short reverberation of a small room. Objects in motion produce the wellknown<br />

Doppler effect increasing the apparent frequencies of the sounds emitted by objects moving<br />

toward the listener and decreasing those of objects moving away [3]. The most sophisticated audio systems<br />

can reproduce the Doppler effect on both the objects in motion and their reflections.<br />

Voice applications, although not new, have yet to gain the widespread availability of operating system,<br />

music, and gaming applications. Because of the large memory requirements, voice recognition algorithms<br />

are better suited to the main processor and use limited, if any, preprocessing by the soundcard in the<br />

record path. Moreover, automatic voice recognition is still unreliable, except when restricted to isolated<br />

words from a limited vocabulary. Another class of voice applications is voice communication. The emergence<br />

of the Internet has brought with it the promise of low-cost worldwide telephony. The implementation<br />

of Internet telephony requires sophisticated noise-cancellation and echo-cancellation algorithms that are<br />

often best suited to run on the sound card.<br />

Hardware Architecture<br />

The hardware of the PC audio system satisfies these system requirements with a simple model. Much like<br />

the entire computer system, it consists of three major subsystems: storage, processing, and input/output (I/O).<br />

The storage subsystem can include local memory, system memory, and disk storage such as hard drives<br />

and compact discs, but the audio processor does not usually interface directly with a disk storage device.<br />

The processing subsystem includes both the main processor and a processor located on the soundcard<br />

to provide hardware acceleration. The I/O subsystem usually consists of an analog interface such as the<br />

Audio CODEC ’97 (AC97) standardized DAC and ADC. In addition, digital interfaces such as the<br />

Sony/Philips digital interface (S/PDIF) are often included. By dividing the audio system into three logical<br />

blocks, the system designer faces the simplified task of creating each block while optimizing the interfaces<br />

between them. The audio processor designer is concerned with the processing capabilities of the chip as<br />

well as the I/O system interface and the memory bus interface.<br />

Memory<br />

Local memory connects directly to the audio processor. This includes both ROM and RAM of various<br />

types located on the soundcard, generally used to store wavetables for wavetable synthesis and digital delay<br />

lines for environmental simulation algorithms. Local memory provides the highest system performance<br />

for wavetable synthesis and environmental simulation since it need not share bandwidth with the main<br />

processor and other hardware such as disk, video, and networking interfaces; however, local memory costs<br />

money, and cost is often a major consideration in market driven engineering. The emergence of the RAMless<br />

soundcard, which stores audio in system memory rather than local memory, is primarily due to the<br />

need to decrease costs.<br />

Creation of a RAM-less soundcard requires that system memory store most audio data. A relatively<br />

small amount of RAM is still required on the audio processor chip for algorithms that require highbandwidth<br />

access to memory. System memory connects to the main processor of the PC through bus<br />

bridging logic, and stores the programs and data that make up the operating system and application<br />

programs. When the audio processor requires access to system memory, it generates a memory access<br />

request on the add-in card bus. If the main processor or any other device is currently accessing system<br />

memory, the audio processor must wait.<br />

The early PCs used a relatively low-performance add-in card bus known as ISA, or Industry Standard<br />

Architecture. The soundcards that plugged into the ISA bus accessed system memory through the Intel<br />

8237 DMA controller. The 8237 DMA controller contains auto-incrementing address registers and uses<br />

© 2002 by CRC Press LLC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!