Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

Norma Intel Audio Codec AC'97 a jej praktické použitie

1.3.2001, , zpráva
Norma Intel Audio Codec AC'97 a jej praktické použitie
Počítače PC si počas svojej existencie získali popularitu aj vďaka ich modulárnosti. Niektoré komponenty však ostávajú počas celého života počítača rovnaké (komponenty so slabú dynamikú vývoja ako zvuková karta, modem či sieťová karta). Takéto zariadenia je vhodné - hlavne po finančnej stránke - integrovať priamo do základných častí počítača.
Takéto riešenia sa veľmi často uplatňujú v kancelárskych PC, kde nie je potrebná veľmi vysoká kvalita týchto zariadení: proste je potrebné aby to išlo - a samozrejme čo najstabilnejšie.

Počítače PC si počas svojej existencie získali popularitu aj vďaka ich modulárnosti. Niektoré komponenty však ostávajú počas celého života počítača rovnaké (komponenty so slabú dynamikú vývoja ako zvuková karta, modem či sieťová karta). Takéto zariadenia je vhodné - hlavne po finančnej stránke - integrovať priamo do základných častí počítača. Takéto riešenia sa veľmi často uplatňujú v kancelárskych PC, kde nie je potrebná veľmi vysoká kvalita týchto zariadení: proste je potrebné aby to išlo - a samozrejme čo najstabilnejšie.

Kvôli stabilite sa podpora týchto zariadení integruje priamo do North Bridgu čipsetu. Obmedzme sa v tomto článku na zariadenia typu Audio Codec (AC), konkrétne na ich intelovskú špecifikáciu Audio Codec AC'97, ktorá je asi najobľúbenejšia (ale to už zachádzam).

Tieto zariadenia sú v dnešnej dobe najčastejšie integrované priamo na matičnú dosku a koncipované ako špeciálne zariadenia, ktoré komunikujú so systémom cez špecializované sériové rozhranie AC-Link, ktoré je súčasťou zbernice CNR (Comunication and Networing Riser) alebo jej klon vytvorený firmami ako AMD, VIA a iné (AMR). Toto rozhranie má jednoduchú, ale účinnú inteligenciu a je plne PnP. AC je koncipovaný tak, aby sa väčšina práce potrebnej pri spracovaní signálu urobila softwarovo. To znamená, že AC k svojej činnosti potrebuje okrem potrebných AD/DA prevodníkov, zosilňovačov, hardwarových dekóderov a iných zariadení na spracovanie analógového a digitalného zvuku aj špeciálne softwarové vybavenie. To znamená, že kodek len tak sám od seba nebude fungovať pod MS-DOSom a je potrebné použiť emulátor. Podobný software je potrebné použiť aj pri iných zvukovo špecializovaných čipoch (EMU10k...).

AC je pod Windowsom v niektorých prípadoch výhodnejší ako klasické zvukovky do rozširujúcich portov, hlavne preto, že používa vlastnú zbernicu CNR(AMR), ktorá predpokladá, že okrem AC je možné pripojiť k počítaču aj iné zariadenie (sieťovú kartu ...). Vďaka inteligencii zbernice a dostatočnému predstihu jej možností voči skutočnému využitiu sa systém stáva stabilnejším s takmer bezkonfiktným fungováním s ostatnými zariadeniami. Z vlastnej skúsenosti viem, že všetky AC, ktoré som mal tú možnosť odskúšať, Windowsy okamžite identifikovaly ako neznáme zariadenia (ale okamžite poznaly, čo sú to za veci), po nainštalovaní potrebného driveru sa ich označenie zmenilo na správne a AC bol v plnej pohotovosti.

AC97


AC má dve základné časti : AC-Controler a AC-Audio Codec, ktoré sú spojené cez sériové rozhranie AC-Link. Toto rozhranie je veľmi jednoduché: na prenos dát sa používajú dve výstupné a jeden vstupný sériový kanál
  • AC'97_SDATA_IN0
  • AC'97_SDATA_IN1
  • AC'97_SDATA_OUT

Ku AC-Controleru je možné pripojiť až 15 kodekov. Rozhranie obsahuje ešte signálne kanály AC'97_BITCLK (dátový časovací signál, aby systém vedel kedy ma začať reagovať na prichádzajúci bit), AC'97_SYNC (synchronizácia), AC'97_RESET#, CDC_DN_ENAB# (v popise CNR je to veľmi zlato vysvetlené, ale v podstate signalizuje AC-ku na matičnej doske a v slote CNR, ktoré z nich je nadradené, a podradenému priradí voľný kanál).

AC'97Block.gif
Schéma AC-Audio Codec (cca 45 kB)

Teraz pár slov o kontroleri. AC-Controler AC'97 je integrovaný do drvivej väčšiny North Brige, takže uvediem stručný zoznam najpouživanejších - prípadne nie viac ako dva roky starých - čipsetov od Intelu, Via a AMD:
  • Intel BX440
  • Intel 810
  • Intel 815
  • Intel 820
  • Intel 850
  • Via MVPX
  • Via MVP3
  • Via MVP4
  • v North brigoch Via 686X (X=A,B,C) a AMD 756.

S tým ako je to vyriešené v north brigoch je dosť otázne, nedá sa o tom získať žiadna bližšia literatúra. No to čo je uvedené hovorí o tom, že AC-Controler je buď samostatným zariadením komunikujúcim s čipsetom priamo alebo zariadením PCI zbernice, čo sa mi zdá dosť otrasné riešenie, pokiaľ je integrovaný na doske. Trošku iné je to na strane AC, tam je už literatúra dostupnejšia. Z vyššie uvedeného bolo zrejmé, že množstvo AC je obmedzené na dva kusy, pretože pre viac AC nie je výstupný kanál. Vstupný kanál si obe AC môžu deliť na polovicu. Tento kanál je multiplexovaný a pri objeme dát, ktoré je potrebné z počítača do AC preniest v reálnych podmienkach aby netrpel nedostatkom dát je pri relatívnej rýchlost 12,576Mb/s zanedbateľne malé (asi 2-3Mbit/s).Takže je vidieť, že AC-Link má ešte poriadne rezervy. Ako kodek pripojený k druhému kanálu je štandarne definovaný Modem Codec, ale nič nebráni namiesto neho ešte jeden Audio Codec. Komunikácia cez AC-Link je síce pekná ale bolo potrebné by sa pozrieť už aj na zúbky samotnému Audio Codecu, pretože týchto kódekov je dosť, uvediem ten o ktorom celý čas hovorím a ktorý je najnovší. Je ním Audio Codec AC'97 revízia 2.2. Sú pre neho špecifikované tieto vlastnosti a bloky:
  • 16bit plne duplexné stereo (DA aj AD prevodník), voliteľné vzorkovanie až do 48kHz
  • až štyri/dve analógové stereo/mono vstupy
  • vysokokvalitný analogový vstup CD Audio
  • mikrofónový vstup so zosilnením 20db a s programovateľným ziskom
  • štandardný LINE_OUT výstup a prídavný AUX_OUT pre prídavne slúchadla alebo v kombinácii s LINE_OUT tvorí štvorkanálový výstup.
  • Volitelný je 18-20bit AD/DA prevodník, ovládanie tónov a balance, 3D stereo rozšírenie, tretí AD -prevodník pre hlasový vstup a S/PDIF (digitálny) výstup pre Digital 5.1
  • Power management
  • 48 alebo 64pinové zapúzdrenie do QFP púzdra

Zahŕňa aj modemové časti a normy:
  • 2 x 16bit AD/DA
  • voliteľnú druhú linku alebo pomocný AD/DA prevodník
  • GPIO a kompatibilnost s prerušeniami
  • Power management
  • a samozrejme ako to u Intelu často vidíme aj balík špecifikácií určený dodávateľom (sú to skôr zadné vrátka pre ďalšie úpravy Modem Codecu)

Toto bol stručný popis toho čo AC'97 rev.2.2 dokáže naviac proti rev.1.0.

Z rev.1.0 zdedil kodek tieto vlastnosti a bloky:
  • prehránie a tvorbu zvukov
  • podpora zvuku pre hri pod DOS a Windows
  • celú sadu podpory pre CD, videokonferencie, TV-tuneri, videostrižne a dalšie im podobné zariadenia
  • MIDI syntetizer (sample sa dajú stiahnut z netu)
  • Dolby digital AC-3 s podmieneným aspoň softvarovým MPEG-2 decoderom
  • AC'97 je plne kompatibilný s týmito zariadeniami: SoundBlaster (emuluje softvarovo registre), OPL3 (emuluje softarovo FM syntézu), MPU 401 MIDI UART (obsahuje )
  • podporuje analógový joystick (kvázi game port).
  • hardwarový riadený analógový mixér s možnosťou mixovat výstup (je značne obmedzený) a mixovat vstup (tu je situácia už o čosi lepšia), prakticky je možné zmixovať čokoľvek s čímkoľvek a akokoľvek vela kanálov, len treba nad tým chvýlku porozmýšľať.

Obsahuje 64 vstupno výstupných 16bitových registrov pre komunikáciu s AC-Controlerom. V AC sú použité AD/DA prevodníky, ktoré dokážu pracovať so vzorkovaním až 48kHz pre vstup a výstup zvuku a 16kHz nezávislý vstup pre voice s možnosťou priamo nastaviť potrebnú vzorkovaciu frekvenciu.

Mimo toho je tu pridaná dalšia novinka - Double Data Audio, podpora pre prenos a spracovanie signálu s rozlíšením 20bit a vzokovaním 88,2 až 96kHz. Nevýhodou je, že DDA sa dá použiť len pre hlavné kanály a S/PDIF.

AC'97 je možné naprogramovať tak aby všetky dostupné DA prevodníky nastavil na nezávisle reprodukovanie zvuku a tým môžeme dostať až 6 kanálov normy Dolby Digital 5.1, takže to isté ako na rozhraní S/PDIF ale bez dekódera. Jeho kvalita je na slušnej úrovni, ale ak použijete S/PDIF tak predsa len je to 100%. Okrem týchto šiestich kanálov sú definované ešte dalšie dva, ale okrem toho, že zaberajú dva registre a časť operačnej pamäte nič nerobia, pretože k nim niesu pripojené žiadne prevodníky.

Teraz pár slov o wavetable syntéze. WTS sa u AC robí softwarovo a funguje len pod natívnym Windows a v MS-DOS okne. Vďaka rastúcemu výkonu CPU boli zo zvukových kariet odstránené drahé komponenty a do driverov boli pridané nástroje, ktoré s novými a rýchlymi algoritmy dokážu urobiť za zlomok ceny to isté ako drahé signálne procesory, aj keď so značným zaťažením procesora (až 50%, no to už musí byť moc slabý stroj a poriadný macher, čo to tak vysoko vyžhaví). Predpokladám že nikdo nebude hrať na nejakej tej K6-2 400 QIII Arena a pritom hrať na midoch nejakú šalenú muziku pre nahravacie štúdio :o).

Tak a dostali sme sa ku predposlednej téme a ňou je zaťaženie procesora. V priemere je počas normálnej prevádzky zaťaženie procesora minimálne (prehrávanie WAV súborov). Pri prehrávaní MP3 je to už o čosi horšie - to si svoj kus výkonu odobere tak maximálne 20% a pri MIDI som to už spomínal.

Posledná téma týkajúca sa priamo AC'97 je jeho podpora zo strany BIOSu. Vskutku - BIOS s ním nemá žiadne problémy a štandardný beep by sa vám mal z reprákov ozvať pri ukončení POST (pokiaľ to BIOS podporuje).

Teraz by som načal trošku kritickú tému vzhľadom na onboard zariadenia. Matičná doska je sama o sebe zdrojom frekvencií takmer od 0 do XXXMHz. To znamená, že akekoľvek nízke úrovne signálu su značne prehlušované indukovanými prúdmi vo vodiči, v ktorom sú prenášané. Niektoré fakt mizerné vyhotovenia sa prejavia dokonca značným rušením aj LINE-OUT čo je už poriadná pálka. Výrobcovia sa snažia vytvárať čo najlepšie šírenie signálu, a preto sa snažia čipy kodeku umiestňovať čo najbližšie k portom, tým sa signál dokáže "o čosi skôr" zakódovať do digitálnej formy a takéto dáta už priamo neohrozuje rušenie.

Takže zhrniem všetko, čo som tu napísal. Ak chcete mať lacný počítač, ktorý je dostatočne stabilný a nevadí vám aj jeho nižší výkon (spôsobený softwarom pre codec) a "nekvalitou" (kvalita je takmer vždy 100% ale vyhotovenie nie) a tak isto požadujete zvukovku, modem alebo sieťovku a neradi by ste zaplatili strašné peniaze za tieto komponenty tak matičná doska s AC'97 je pre vás to pravé. Ale ak chcete počúvať "101%" zvuk v Dolby Digital 5.1 a nechcete aby vám nejaký modem či sieťovka odoberala drahocenný výkon alebo zbytočne zaťažovala motherboard (napríklad sa to uplatňuje pri pretaktovaní, kde jedno z pravidiel znie: decentralizovať, teda vyňať spod priamej správy CPU :o), mali by ste pouvažovať, koľko mieniťe vraziť do železa a koľko nie.

Použité dokumenty najdete na stránkach:
www.intel.com
www.harmony-central.com/Synth/Articles/Wavetable_101/

R@ndom