First post, by Paul_V
- Rank
- Member
=====
UPD 19.07.26 - Added utilities and guide (see ISA-MIX.rar attachment below)
=====
Let me present my long-term project - "At Last: Silence".
The goal of the project was to understand whether the infamous noise on Avance Logic ALS120 audio chips could be fixed or improved.
And, although it did not end up hi-fi (around mid-tier, i would say), I dug out quite a lot of very promising things in the process and would like to share with you.
My main research is generally completed. But the process of creating a prototype and a finished card is very slow, for many reasons (including lack of time and finances).
I fear that my development at this pace may disappear in a dusty closet, so I would like to update and post all the information here, as I progress.
So, here we go.
In short:
1) I reverse-engineered the schematic, since original is missing in datasheet.
2) Recreated the card with bare minimum for output and completely cut out input stages (no one will ever use it for recording, anyway).
3) Determined main flaws of the IC, which are responsible for the main portion of the noise - VREF and FM DAC.
4) Made two prototype versions in the process. V1 is a PC104 format card with a solid ground plane. V2 has analog and digital planes separated.
5) Developed a circuit for supressing VREF noise
6) Dug out some performance boosting chip registers (including, surprisingly, even one fixing DOOM and other games messing up mixer volume).
Made some utilities and scripts along the way and discovered at least two revisions of the chip.
Here is what I got:
1) Idle noise on the uninitialized audio card has practically disappeared (VREF).
Noise from the PC is also gone.
2) The initialized card hisses, but much less. The main culprit here is FM.
Part of the noise was eliminated through filtering, while the SNR itself was boosted via registers.
By combining attenuation, gain, and registers, I managed to achieve a good balance where the sound is quite loud, but the hiss is virtually inaudible.
However, it didn't become hi-fi: at volumes above 80, that very same hiss creeps back in.
Fun fact - you can disable FM and get yourself a pretty low noise floor for games, that don't need FM (OMF2097)
Things left to do:
1) DONE - Noise spectrums of V1 vs V2 and find out which design works best (ground planes, filtering, 7805 vs TPS7A etc)
RESULT
If there's any difference between V1 and V2 grounding - it's negligible.
After fixing VREF noise the main culprit that remains is FM DAC.
As it seems, it does not care much whether I split A\D grounds or not.
It's hard to tell whether it's a DAC issue or internal chip crosstalk without decapsulation.
But, stock design is immune to VREF voltage injection, so changing ground layout definitely helped.
I finished testing the regulators. 7809+7805 with single power plane is solid, no need to buy expensive LDOs.
2) DONE Gameport (I have no means to test it ATM)
RESULT
Enjoying yet another massive pain in the neck.
While I did the circuitry right with 2.2K+4.7nF, the timing seems to be off, so I decided on 2.2K+10nF
Cobbled together "gamepad" works. Tested on Supaplex and Rollin.
Unfortunately, I don't have a 30-year-old squeaker with clapped-out pots on hand, which makes testing somehow blindfolded.
And I have no knowledge about compatibility issues or bugs with games.
So, I'm leaving it AS IS.
3) DONE (Determine best ratio of attenuation and gain or "gain staging" (those two ugly SpINNERS on top) and transfer values to final schematic.)
RESULT
No attenuatuon. HPF 0.1uf+100K before OpAmp will do. GAIN will be somewhere around 3. (3.2 with 1K+2.2K, as 2K is less common).
4) Rework dual-rail opamp power into single-rail (over-engineered dual-rail vs two big caps and compatibility).
My motherboard has two 34063 IC's responsible for -12v and -5v. They are HELL to filter out.
Will redesign the final version to take 5v from 7805 and wil add -5v inverter IC (something like SGM3204).
5)DONE Test out A0-A1 IOW-IOR signal buffering (I encountered some note-skipping and other FM bugs on fast PCs)
RESULT
IOW\IOR buffering helps, but does not eliminate the issue.
The culprit is probably my main test motherboard sending data too fast.
Other motherboards work flawlessly.
Most likely, I won't be adding any buffering to the final revision.
The results are mostly negligible and my circuit requires 74LVC2G17, which is not very common part.
I want the final design to be based on easily available and affordable components.
Just keep in mind, that ALS120 is slower to chew on data, compared to ES1868 or similar.
6) Finally decide on the type of crystal\oscillator
Oh boy. it seems I'll have to go deep into troubleshooting cave again.
It works fine with motherboard OSC. But all hell breaks loose as soon as I try crystal or active oscillator (audible whistling).
There's no guarantee the card will play nice with OSC on other motherboards.
So I'll need to at least make an OSC circuit onboard, which does not ring.
Part of the ringing problem is due to motherboard and card frequencies keep oscillating together.
I will need to shift the crystal frequency slightly above or below 14.31818 MHz to avoid resonating with the motherboard's OSC frequency and thus eliminate the ringing.
7) DONE Test the best LP filter configuration for DAC and FM
RESULT
1nf cap for crispy (matches stock) or 1nf+4.7nf (5.6nF) for warm and bubbly.
5.6nF is not a very common value. and keeping two sets of capacitors is not very elegant and not good practice in general for audio.
I'm still trying to strike a balance between simplicity and versatility.
Being able to switch on the spot between values is a nice option, but choosing just one value during soldering simplifies the design.
Internal resistance of the FMDAR\FMDAL pins seems to be around 10K, so the cutout freq is as follows:
10K+1nF = 15.92kHz
10K+(1nF+4.7nF)=2.79kHz. (AFAIK this is close to what early SB did)
FM DAC generates its noise around 1000-4000hz, so the second option supresses it a little.
8) Possibly, make a utility program instead of scripts.
9) Make that project finished already, dang it!
A lot of info on V1 of the project is mentioned here, including some sound tests.
Re: ALS120, ALS100 Plus audio fix ?
Over time, I'll pull and gather all the info here and organize it.
Since V2 is basically a continuation of V1, this topic will focus on V2.
This topic will have first 3 pages reserved for general info, schematics and sound tests.