AWE tech - a look under the cover

Written by Mathias C. Hjelt
V2.0 - 18 Sep 95


This page is like a second part of the "short introduction to the AWE hardware". It gives a more detailed description of various things on the AWE - the EMU, the Effects Engine, the CSP, the S/PDIF output, and more. Note that this still isn't a complete guide to the AWE, so far I've only written about things that I guess many still don't (but should) know.



The EMU 8000

Those who have examined their AWEs closely, have probably noticed that there is no chip labeled EMU 8000 to be found anywhere on the board. There is a small one called EMU-8011 (CT1972), which has made some people believe that this is the actual synth chip, but it isn't. The EMU 8000 is a much larger chip which Creative has called CT1971. The role of the 8011 is not completely known to me, but it seems likely that it contains the synth DAC or something like that, since the EMU 8000 itself only has got digital outputs.

The EMU 8000 is said to be based on a chip that E-mu Systems use in their real samplers/synths. However, since this chip very likely is nothing but one big DSP (just like any dumb synth chip), it could be that the microcode (i.e. the program that it runs) has been changed quite a bit to fit Creative's requirements. For example, the chip itself could probably output data wider than 16 bits (most modern synths and samplers have more than 16 bit wide outputs, since the internal data paths often run at 20 or more bits), but the EMU 8000 (at least the way it is set up on the AWE), does only let out 16 bits.

Here's a block diagram of the EMU 8000. The original came from Creative Technology, the guys who ought to know quite a lot, and it was published in Electrical Engineering Times in the spring of '95, under the title: "Custom audio DSP tailored for SoundBlaster cards - Creative Technology draws 150 Mips from EMU 8000 to generate 10 emitter sounds at once".


The most interesting bit of it are the two digital inputs, especially that about one of them being hooked up to an A/D, but it's not sure that this is how the EMU is implemented in the AWE.



The connection between the EMU and the OPL3

When Creative designed the AWE, they obviously figured that it'd be a waste of money and components to put in a separate DAC for the FM music, as there already were two other DACs on the board - one for the wave audio, and one for the EMU. To get around this, they connected the output of the OPL3 to the EMU, which not only saved them one DAC, but also introduced features like reverb & chorus on the FM music.

It is very likely that the OPL3 is connected to one of the digital audio input interfaces of the EMU. As soon as FM sound is required, the EMU 8000 is set to a special state, which makes two EMU operators read data from the input interface instead of the sample memory interface (it looks like they're looping a 32-word are at the end of the address space, but this is probably just how the input interface is accessed). Since these operators are very regular EMU operators, their data is mixed with the rest of the EMU stuff, and is thus available both at S/PDIF digital output and the synth DAC, along with the EMU music.

Under DOS, it's possible to set up reverb and chorus effect for the FM music - the effect levels of the passthrough operators are simply determined by the parameters that the user passes to AWEUTIL. In theory, it should be very possible to have effects on the FM music under Windows too - I just can't think of any explanation for why it shouldn't be - and I really don't know why there (currently) is no support for that. Creative moves in mysterious ways, you know.

Effects or not, the FM passthrough costs you two operators. Only 30 are left for EMU music. As long as these two operators are reserved, the AWE makes double use out of them by letting them refresh DRAM at the same time. Making the operators do DRAM-refreshing dummy sample memory accesses while fetching data from the digital audio input interface is obviously possible thanks to the flexibility of the EMU.



The Effects Engine

The Effects Engine is a DSP that is a part of the EMU 8000 synthesizer, and in fact, it is probably the same DSP that the EMU consists of. It's perhaps just another part of the code. In any case, as an effects processor, it is capable of processing a stereo signal, obviously at a sampling frequency of 44.1kHz.

Creative Labs only provide algroithms (i.e. codes that the Effects Engine runs) for reverb, chorus (both integrated into the same code, along with an equalizer) and QSound. Although it in theory is possible to download custom algorithms to the Effects Engine, we're stuck with the current ones until Creative or EMU releases some programming info - without any ideas of how the Engine works or what kind of DSP code it uses, it's impossible to write new algorithms for it.

However, it's not impossible to control its operation. The Reverb & Chorus algorithm has got parameters that can be controlled by software, and by modifying these it's possible to change the characteristics of the reverb and chorus. When you pick one of the eight available reverb or chorus variations in the AWE Control Panel, the driver supplies the card with parameters that produce the requested type of effect. Currently (18 Sep 95) there are still no public programs that would allow you to change these parameters individually and manually, but if things turn out well, it should soon be possible to create custom effects even under Windows.

The chorus part of the algorithm is a typical delay/time-based effect. Bascially it's just a delay which can be modulated to produce chorus/flanging/vibrato/phasing. The delay time, feedback level and modulation depth can be controlled individually. Moreover, in addition to this basic stuff, the chorus part can also do a number of simple reverb-like effects, let be short and metallic, but these extra features are never used with the eight currently available chorus variations. For the real reverb, you can change stuff like decay time, and in addition to that it can be set up to do traditional delay effects.

In QSound mode, i.e when you've selected QSound effect type in the AWE Control Panel, there are no (known) parameters that can be controlled directly by the user. The pan position of each sample is either directly or indirectly used for producing the QSound effect.

The ASL - Audio Spatialization Library, available in the latest DOS API in the new ADIP - does not use the Effects Engine to produce the simulated 3D effects. It's all done by tricking with regular EMU operators.



The ASP / AdSP / CSP

First off, the CSP is just a new name for the chip that used to be called ASP. The reason for this change of name is that there is another company called ASP, and Creative wanted to avoid confusion. Some people call it AdSP. In any case, this is Creative's Advanced (Digital) Signal Processor that is available on SB16 ASP and the AWE 32 (not VE). Plain SB16 and AWE32 VE cards have empty sockets for it, and the chip itself costs something like $50.

The CSP is a 16-bit fixed-point DSP (digital signal processor) that processes the information on the wave audio channel (both input and output). Typical applications include real-time compression and decompression of digital audio, speech synthesis, and other relatively simple functions. Creative also provide algorithms for QSound on outgoing stuff.

A developer kit for making new CSP algorithms is available for those who can afford it. However, applications using custom algorithms - or even worse, applications using the CSP at all - are rare. Since no other companies have compatible signal processors on their cards, no software designers care to take advantage of this chip because so few users can enjoy the stuff anyway (the CSP is said to be an industry standard DSP, but what model is unknown, as well as its programming interface, so other soundcard developers have so far avoided it totally). So before you decide to upgrade your AWE32 VE or SB16 or whatever with a CSP, think twice. Speech synthesis is funny for the first couple of days, but is it really worth the price?



The DSP

The thing that some people insist on calling "DSP" is actually nothing but the CODEC (wave audio DAC and ADC chip - COder & DECoder), so you may say that even the original Sound Blaster 1.0 had a "DSP". The acrynom DSP usually means Digital Signal Processor, but the only "processing" that CL's "DSP" does is simple real-time ADPCM compression. They call it "DSP" anyway, other companies call it CODEC. Don't mix this with the ASP / CSP or Effects Engine.



The SIMM slots

The AWE musician's greatest joy are the two SIMM slots that are available on the card (not VE), since these can provide the EMU 8000 with additional sample memory, and thus, longer and better sounding instruments.

The SIMMs must be 30-pin ones, but there are no restrictions regarding their chip configuration, so both 2, 3, 8 and 9-chip ones should work fine (parity bit obviously not needed). An access time of 80ns or less is recommended (the on-board 512kB DRAM, TC 514256AJ-70, is 70ns), and someone reported that a pair of 100ns ones worked for 15 minutes or something like that. The SIMM slots must be populated with two modules of the same type and size, and both slots must always be filled.

Since SIMMs usually are 1MB, 4MB or 16MB, you can extend your AWE's RAM to 2MB, 8MB or 28MB (someone reported that he had seen ads for 2MB SIMMs, but those are very rare). One of the most frequently asked questions regarding these SIMMs is "why only 28MB when 2 x 16 is 32?". The answer is that the EMU 8000 only can address 32MB of memory altogether, and a 4MB chunk of this address space is reserved for the on-board sample ROM, so only 28MB are left for RAM. The ROM itself is, however, only 1MB. Technically speaking, the ROM space starts at address 0, and the SIMMs (or the on-board RAM in case no SIMMs are installed) start at $400000 (or $200000 if counting 16-bit words instead of bytes).

The SIMM memory is enabled using J7. When this jumper is moved, the on-board 512kB RAM is disabled. So when you purchased the card, you paid for 512kB of memory which won't be used if you put in a pair of SIMMs. (To avoid this waste of memory, Creative removed the on-board RAM from the new SB32.) Some people love to scream about this - a total of 4.5MB is wasted when you use two 16 MB SIMMs, oh how terrible..! You think that's reason enough for purchasing a card with a maximum RAM limit of 1MB or 12MB instead, right? Then go ahead and do it, and stop foaming.



S/PDIF - the digital output and the standard

The coolest thing on the AWE (next to the SIMM slots) is the digital audio output, found on the jumper-like connector J8. On earlier AWE's (that is, the ones without IDE interface), the connector is located between U14, a small surface-mounted chip, and X3, the 40Mhz X-tal for the EMU stuff.

This digital signal comes right from the EMU's output interface, which means that it contains the sound produced by the synth, the OPL and the Effects Engine - no more and no less than that. No wave audio channel, no CSP, no noise.

We should be very happy about the fact that this output is S/PDIF compatible. I mean, Creative could just as well have came up with a brand new standard of their own which no other devices but their own support. But as it now is, finding stuff that reads the AWE's digital output isn't that hard. S/PDIF stands for Sony/Phillips Digital InterFace, a standard that is supposed to be a "consumer" version of the professional AES/EBU (Audio Engineering Society / European Broadcast Union) standard. Both use biphase mark encoding which produces a signal with a bandwidth of 5..10MHz (depending on the sampling frequency). According to the standard specifications, AES/EBU uses a 5V differential signal while S/PIF is supposed to run as a 0.5V unbalanced signal, but the AWE's S/PDIF output is as a matter of fact a 5V signal, which can be shoved through TTL gates and similar stuff without problem.

A S/PDIF signal contains stereo data which usually is 16 bits wide, running at any sampling frequency, usually 32..48kHz, along with various control codes and flags. The AWE does of course (unfortunately) output 16-bit 44.1kHz data, which is not copy protected (yep, a digital signal can be copy protected - if a certain flag is enabled, you will only be able to copy an original, not a copy - in case your receiving device follows the rules).

One curious and important thing about AWE's S/PDIF output, is that the J8 pin is labeled "1" (i.e. the one closer upper edge of the card, at least on non-IDE versions) is actually a ground pin, while the one that is marked as "0" (ie the one that is closer to the huge CT1971 chip) in fact is the one that carries the S/PDIF signal. Make sure you don't shortcut the signal to ground when putting in a S/PDIF connector in the rear of your machine. It could be rather unhealthy.



The on-board memory

The built-in General MIDI patch set is stored in a 1MB ROM on the card. This chip, TMS 45160DZ, is located close to the SIMMs, and seems to be far from easy to replace without appropriate tools. It may sound stupid to even think about replacing the ROM of a card that can be expanded to 28MB, but the catch is that it could be possible to insert a 4MB EPROM instead of the old 1MB one since 4 megs of the EMU's address space are reserved for the ROM anyway, and this way you could get all 32MB in use. However, this would not be an easy operation since 2 more bits of the address bus would have to be captured from some other chip, in order to be able to access the memory in the 3 new megs of the ROM.

The on-board RAM is a TC 514256AJ-70, which obviously is a 512kB 70ns DRAM chip. It looks just like the ones on regular SIMMs, and could in fact be used as one.

The patch data that resides in these two chips (and in the SIMMs, of course) is not compressed. The SBK-files on your harddisk could be compressed if the drivers supported it, but as soon as they are to be sent to the AWE, decompression would be necessary. As far as I know, there is no hardware capable of decompressing sample data in the EMU 8000 subsystem. This is both good and bad. Good: your samples don't run through lousy & lossy compression algorithms that reduce sound quality. Bad: the 1MB GM ROM samples really are only 1MB.



The MIDI (joystick) connector

In the early days, there was a lot of discussion regarding the AWE's MIDI connector. Some claimed that the MIDI interfaces of previous Sound Blasters wouldn't work with the AWE since the AWE uses CMOS levels instead of TTL, while some claimed that it worked allright. However, it seems like most MIDI interfaces work just fine with the AWE, so there should be no need to worry about that. Making your own interface is also possible.

Note to those who it may concern: the 5V power supply pin of the 15-pin combined joystick & MIDI connector is not power-limited. The tiny surface-mounted resistor that is supposed to limit the power breaks (literally) when loaded to heavily.



The board

The AWE's board is multi-layered, so it is rather difficult to trace things on it. Do-it-yourself folks, note: doing modifications that involves cutting stuff on the top or bottom layer is risky since the middle-layer traces can accidentally be damaged. So be really careful when doing such stuff.