Uživatel:Hoskojar

Z HPM wiki
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Zdroje)
 
(Nejsou zobrazeny 4 mezilehlé verze od 1 uživatele.)
Řádka 1: Řádka 1:
== SEMESTRALKA - Vývoj zvukových karet Sound Blaster ==
+
== SEMESTRALKA - Čip Yamaha YM3812 ==
 +
 
  
 
== Úvod ==
 
== Úvod ==
  
V době, kdy vznikaly první osobní počítače, nikoho ani nenapadlo nějak je spojovat se zvukem nebo hudbou. Tyto počítače primárně sloužily k zrychlení a ulehčení práce člověka a ne k zábavě. Mnozí se na počítač dívali pouze jako na "počítací stroj".Zvuková karta je rozšiřující karta počítače pro vstup a výstup zvukového signálu, ovládaná softwarově.
 
O zvukové kartě se mluví od chvíle, kdy se obvody a čipy, které se starají o zvuk, začaly umisťovat na samostatný plošný spoj, tzv. kartu, která se zasouvá do základní desky (motherboardu) počítače.T ypická zvuková karta obsahuje zvukový čip, který provádí digitálně-analogový převod nahraného nebo vygenerovaného digitálního záznamu. Tento signál je přiveden na výstup zvukové karty (většinou 3,5mm jack-sluchátkový).
 
  
 +
V době, kdy vznikaly první osobní počítače, nikoho ani nenapadlo nějak je spojovat se zvukem nebo hudbou. Tyto počítače primárně sloužily k zrychlení a ulehčení práce člověka a ne k zábavě. Mnozí se na počítač dívali pouze jako na "počítací stroj". Zvuková karta je rozšiřující karta počítače pro vstup a výstup zvukového signálu, ovládaná softwarově.
 +
Yamaha  YM3812 (OPL2 – Operator type L2 ) je zvukový čip, který vytvořila v roce 1985 firma Yamaha Corporation. Byl navržen pro použití v multimediálních počítačích. Našel svoje uplatnění v IBM PC ve zvukových kartách Adlib a SoundBlaster. Pře tím byl zvuk v PC tvořen pouze pomocí speakeru.
  
==První zvukové karty ==
+
[[Soubor:yamaha.jpg|thumb|center|Čip Yamaha YM3812]]
  
Jeden z prvních výrobců zvukových karet pro IBM PC byl AdLib, který vyráběl zvukové karty založené na zvukovém čipu Yamaha YM3812, neboli OPL2. Toto byl v podstatě standard, až do doby než Creative Labs vyrobila zvukovou kartu Sound Blaster, která měla čip YM3812 a zvukový koprocesor (pravděpodobně Intel mikrokontrolér), který Creative nazýval „DSP“, což byl první procesor na digitální signál. Několik roků uplynulo, než Creative vytvořil kartu, která uměla zároveň nahrávat a také přehrávat zvuk. Díky Sound Blasteru, první levné CD-ROM mechanice a vývoji video technologie začala nová éra počítačových multimédií. Uživatel si mohl spustit hudební CD, nahrávat dialogy do počítačových her nebo přehrávat filmy (zatím pouze krátké klipy a ve velmi špatné kvalitě, nesrovnatelné s moderním digitálním videem).
 
Ve standardních počítačových sestavách firmy IBM i většiny tehdejších výrobců „klonů“ těchto počítačů byl zvuk a hudba zpočátku vytvářen pouze pomocí PC Speakeru, což byl (přesněji řečeno v mnohých počítačích doposud je) reproduktor připojený přes jednoduchý zesilovač na binární (dvoustavový) výstup časovače tvořeného obvodem 8253, popř. v pozdějších sestavách modernější verzí tohoto obvodu označenou kódem 8254. Zvuk generovaný PC Speakerem (který byl též s nadsázkou označován jako IBM Sound Technology) má mnoho nedostatků: pouze jednobitový převodník, nutnost řídit generování zvuků bez využití DMA atd. Zvukový signál dokonce není ani vyvedený na externí konektor, což bylo minimálně neobvyklé, a i přes veškerou snahu programátorů při tvorbě přehrávacích rutin se jednalo spíše o technologii, nad kterou se například majitelé Atari ST či Amig maximálně pošklebovali.
 
  
Není tedy divu, že první reálně použitelná zvuková karta pro osobní počítače – AdLib – vzbudila velký zájem, i přes její poměrně vysokou cenu.Ovšem zvuk byl na kartě Adlib generován pouze pomocí předminule a minule popsaného čipu Yamaha YM 3812 (OPL2), který je určen převážně pro relativně snadnou tvorbu vícehlasé hudby, nikoli vzorkovaných (samplovaných) zvuků, například řeči či (neharmonických) šumů a zvuků ve hrách. Tento nedostatek FM syntézy si uvědomil i Sim Wong Hoo ze Singapuru, který založil firmu Creative Technology. Mezi první produkty této firmy patřily zvukové karty Game Blaster a především Sound Blaster použitelné v prakticky všech typech osobních počítačů kompatibilních s IBM PC.
+
== Princip ==
[[Soubor:Adlib.png|thumb|center|Zvuková karta AdLib určená pro osmibitovou variantu sběrnice ISA]]
+
  
== První Sound Blastery ==
 
  
 +
Čip tvoří zvuky kombinováním dvou periodických signálů s využitím zpětnovazební smyčky, ADSR obálky a frekvenční modulace.
  
Seznam modelů zvukových karet Sound Blaster pro sběrnici ISA
+
[[Soubor:fmmodulace.jpg|thumb|center|Frekvenční modulace]]
[[Soubor:seznam.png|thumb|center| Seznam modelů zvukových karet Sound Blaster pro sběrnici ISA]]
+
  
Game Blaster nebyl v podstatě nic jiného, než 12 PC Speakerů s 16 stupni hlasitosti v kombinaci s generátorem šumu schopným reprodukce tří různých bicích nástrojů a stereo výstupem. AdLib stále zůstával v podstatě nepokořen, ale společnost Creative Labs si svou prvotinou vytvořila základ pod nohama tím, že se dostala do podvědomí výrobců počítačových her, i když většina z nich tuto kartu využívalo jen jako lepší PC Speaker a nevyužívalo všech jejích možností.
+
Čip Yamaha YM 3812 generuje zvuk pomocí devíti samostatně nastavitelných hudebních kanálů, přičemž každý kanál obsahuje dvojici operátorů, které mohou být navzájem propojeny buď tak, že se oba signály vytvářené v obou operátorech jednoduše sčítají nebo první operátor ovlivňuje pomocí fázové modulace tvar signálu vytvářeného druhým operátorem
  
Pak přišel rok 1989 a s ním i legenda, jejíž jméno se nás drží až do teď – Sound Blaster. C/MS se podpory nedočkalo, a tak si lidé z Creative udělali menší průzkum trhu, tedy šli se zeptat vývojářů herních titulů, jejichž jednoznačný požadavek byl ten, že zvuková karta by kromě hudby měla umět přehrávat také samply. Výsledkem bylo vyvinutí první karty s názvem Sound Blaster.
+
[[Soubor:zapojeni_operatoru.jpg|thumb|center|Zapojení operátorů]]
[[Soubor:GB.jpg|thumb|center| Game Blaster]]
+
  
Sound Blaster 1.0 obsahoval, čip Yamaha YM 3812, který zajišťoval devítihlasou (melodické kanály) popř. jedenáctihlasou (melodické a perkusní kanály) zvukovou syntézu. Dále byl na kartě přítomný čip označovaný akronymem DSP, což však neznamená Digital Signal Processor, ale Digital Sound Processor. Ve skutečnosti se jednalo o osmibitový mikrořadič z rodiny populárních mikrořadičů Intel MCS-51 (Intel 8051) s pevně naprogramovanými funkcemi (je docela škoda, že nebylo možné tento řadič přeprogramovat, nebyl by například větší problém přidat podporu pro vícehlasé samply apod.). Na tento čip byl napojený osmibitový digitálně–analogový převodník (DAC) a taktéž osmibitový analogově–digitální převodník (ADC); přičemž první převodník sloužil pro přehrávání samplovaných zvuků (čtených z operační paměti počítače, většinou pomocí DMA) a druhý převodník naopak sloužil pro sampling externího zvukového signálu s jeho ukládáním do operační paměti. Mezní samplovací frekvence DAC i ADC jsou uvedeny v sedmé kapitole. Čip DSP taktéž umožňoval kompresi a dekompresi samplovaného zvuku pomocí ADPCM, i když algoritmus komprese neodpovídal zcela přesně standardu CCITT.
+
Každý operátor je složen ze tří bloků – oscilátoru, generátoru obálky  a obvodu pro řízení výstupní úrovně. Každý oscilátor může generovat periodický signál odvozený od klasické sinusovky, jejíž podoba je uložena (v logaritmické škále) v 256 bajtech paměti ROM přímo na hudebním čipu.  
  
Další verze Sound Blasteru, která byla veřejnosti představena v roce 1990, nesla číslo 1.5. V mnoha ohledech se jednalo kartu totožnou se Sound Blasterem 1.0, ovšem čip C/MS již nebyl přítomen přímo na kartě, ale bylo ho v případě zájmu možné dokoupit a vložit do připravené patice. Vlastnosti D/A převodníku i A/D převodníku byly shodné se Sound Blasterem 1.0, stejně jako čip OPL2, takže naprostou většinu aplikací nebylo nutné pro tuto verzi upravovat (na druhou stranu ani posluchači se nedočkali vyšší kvality zvuků).
+
[[Soubor:sinusovky.jpg|thumb|center|Čtyři typy signálů]]
  
První „slyšitelné“ vylepšení bylo patrné až u Sound Blasteru 2.0, ve kterém se zvýšila maximální samplovací frekvence na dvojnásobek oproti verzi 1.0 a 1.5. Taktéž se v této verzi objevila podpora pro automaticky inicializované DMA (přímý přístup do paměti), což značně ulehčilo práci všem programátorům přehrávacích rutin. Při použití DMA se pouze do řídicích registrů nastavila samplovací frekvence, délka navzorkovaného zvuku a umístění vzorků v operační paměti (počáteční adresa). O vlastní načítání samplů z operační paměti se postarala samotná karta (pomocí DMA) a po dokončení přehrávání se vygenerovalo přerušení, v jehož obsluze se mohl buffer naplnit novými daty. Aby se zabránilo slyšitelnému lupání v době tohoto přerušení (kdy bylo zapotřebí připravit nová data), rozděloval se celý buffer se samplovanými zvuky na dvě části, přičemž se pro přehrávání nastavila pouze poloviční délka bufferu (jeho první či druhá část) a přerušovací rutina pouze přenastavila počáteční adresu přehrávání – to znamená, že programátor měl více času na přípravu dalších zvukových dat (toto chování odpovídá double bufferingu používanému například na grafických kartách). Starší verze Sound Blasterů bylo možné rozšířit o automaticky inicializované DMA výměnou DSP čipu V1.0 na V2.0 (DSP čip byl umístěn v patici, takže výměna čipů byla jednoduchá).
+
Signál vytvářený v každém operátoru je ovlivněn obálkou (envelope), pomocí níž lze měnit jeho amplitudu. Jedná se o obálku typu ADSR (attack, decay, sustain, release). Základní tvar obálky je určen čtveřicí parametrů – attack rate (doba či strmost náběhu první hrany), decay rate (doba či strmost druhé – klesající/sestupné – hrany), sustain level (stabilní úroveň signálu obálky po prvotním vzrůstu a poklesu, jenž je v programech většinou vyjadřovaná v procentech amplitudy, ovšem v řídicích registrech uložená jako zlomek maximální úrovně) a release rate (doba či strmost poslední – klesající – hrany).
[[Soubor:SB20.jpg|thumb|center| Sound Blaster 2.0]]
+
Pro každý z těchto parametrů je v řídicích registrech zvukového čipu YM 3526 vyhrazena čtveřice bitů, což prakticky znamená, že hodnoty attack a decay jsou společně uloženy v jednom osmibitovém registru a hodnoty sustain a release v registru druhém. Tyto registry jsou alokovány pro každý operátor zvlášť.
  
 +
[[Soubor:adsr_obalka.jpg|thumb|center|ADSR obálka]]
  
== Sound Blaster Pro a Sound Blaster 16 ==
 
  
Sound Blaster Pro, který byl uveden na trh v roce 1991, nabídl programátorům i uživatelům oproti předchozím modelům několik dalších rozšíření. Zejména se jednalo o zvýšení (zdvojnásobení) maximální samplovací frekvence a podporu stereo zvuku, tj. dvou na sobě nezávislých zvukových kanálů (nebylo však umožněno provádět panning, tj. plynulý přesun zvuku z jednoho kanálu mezi pravým a levým reproduktorem). Navíc bylo možné pomocí jednoduchého mixéru měnit hlasitost jednotlivých zdrojů zvuku a povolit či zakázat zabudované filtry – horní a dolní propust. Jak D/A převodník, tak i A/D převodník však zůstaly osmibitové, tj. dynamický rozsah zvuku dosahoval 48 dB.
+
== OPL3 ==
 
+
První verze Sound Blasteru Pro (1.0) používala pro FM syntézu dvojici čipů Yamaha YM 3812, přičemž každý čip byl zapojen do jednoho zvukového kanálu. Pokud byl požadovaný monofonní výstup (například z důvodu zpětné kompatibility), musely se buď oba čipy programovat se stejnými hodnotami řídicích registrů, nebo bylo možné použít adresu společnou pro oba čipy (adresní logika na kartě sama zařídila, že se hodnoty registrů zapsaly na oba čipy současně). V novější verzi Sound Blasteru Pro (2.0) se místo dvojice čipů YM 3812 používal minule popsaný čip Yamaha YMF 262 (OPL 3), který již podporoval stereo výstup a opět bylo možné oba zvukové kanály ovládat buď samostatně nebo využít adresu pro zpětnou kompatibilitu s AdLibem (jedná se o I/O adresu 0×388 namísto 0×220 či 0×240).
+
 
+
Taktéž byl rozšířen port pro připojení MIDI zařízení, který umožňoval oboustrannou plněduplexní komunikaci. Na zvukové kartě Sound Blaster Pro byl většinou umístěn i konektor pro připojení mechanik CD-ROM. Podle varianty karty se buď jednalo o konektor využívající proprietární protokol (Mitsumi, Panasonic, Sony atd.), později pak i o karty s plnohodnotným rozhraním IDE (ovšem bez DMA) – tím bylo umožněno připojení CD-ROM i do počítačů vybavených pouze jedním IDE kanálem, který byl plně obsazený dalšími zařízeními, například dvojicí pevných disků či pevným diskem a jednotkou ZIP.
+
 
+
[[Soubor:SB16.jpg|thumb|center| Sound Blaster 16]]
+
 
+
 
+
== Sound Blaster 32, AWE 32 a AWE 64 ==
+
 
+
Významné rozšíření funkčnosti Sound Blasterů přinesla verze Sound Blaster AWE32 (Advanced Wave Effects), která byla předvedena v roce 1994. Tuto dnes již klasickou zvukovou kartu „zlaté éry DOSu“ bylo velmi snadné poznat, protože se jednalo o ISA kartu plné délky, která mnohdy přesahovala i délku základní desky a její konec byl držen až v zásuvných lyžinách na přední straně počítačové skříně (někdy byl problém kartu vůbec do základní desky zasunout kvůli dalším součástkám na desce, které překážely; ovšem rekord drží jedná karta pro digitalizaci videa s hardwarovou implementaci MPEG-1, která zabrala dva sloty ISA plné délky). Důležitým rozšířením byla podpora pro wavetable syntézu založená na čipu EMU8000, efektovém procesoru EMU8011 (s vlastní ROM o kapacitě 1MB) a paměti typu DRAM, do které se ukládaly nasamplované zvuky hudebních nástrojů.
+
 
+
Kapacitu této paměti bylo možné rozšířit z původních 0,5 MB až na 28 MB pomocí běžných „krátkých“ třicetipinových paměťových modulů SIMM. Pro ilustraci: v době uvedení AWE32 na trh v  našich zemích platil vztah: 1MB = 1000 Kč. Čipy EMU8000 a EMU8011 dokázaly emulovat MIDI zařízení bez výraznějšího zatížení vlastního počítače – o dekódování MIDI, převzorkování a mixování se postarala přímo zvuková karta.
+
 
+
[[Soubor:SB32.jpg|thumb|center| Sound Blaster AWE 32]]
+
 
+
Sound Blaster 32 je levnější variantou Sound Blasteru AWE 32. Aby bylo možné cenu této karty snížit, nebyla přímo na kartě nainstalována žádná paměť pro samply – wavetable syntéza tedy byla možná až po dokoupení paměťových modulů SIMM. Taktéž vlastní zvukový čip (zde Vibra) byl jednodušší, než v případě AWE 32 – například nebylo možné nastavovat zesílení či úrovně výšek a hloubek. V ostatních ohledech nebyl mezi Sound Blasterem 32 a AWE 32 žádný významnější rozdíl.
+
 
+
Posledním modelem pro ISA sběrnici, je zvuková karta Sound Blaster AWE 64, jenž celou sérii zvukových karet firmy Creative Technology uzavírá. Tato karta, která začala být prodávána na konci roku 1996, již měla pouze dvoutřetinovou délku oproti svému předchůdci AWE 32. Oproti AWE 32 se změnil typ podporovaných pamětí – místo relativně levných modulů SIMM se používaly paměti dodávané přímo firmou Creative, které byly (ostatně jako prakticky všechny proprietární paměťové moduly) dražší než SIMM. Zlepšila se však kompatibilita se staršími modely Sound Blasterů a také se zvýšil odstup signálu od šumu. Tato zvuková karta byla dostupná ve třech variantách: AWE 64 Value Edition s 512 kB DRAM (samplované zvuky některých nástrojů se však do této kapacity nevešly), AWE 64 Standard Edition s 1 MB DRAM a konečně AWE 64 Gold s celými čtyřmi megabajty DRAM a separátními výstupy S/PDIF (právě kvůli této variantě karty AWE 64 mnozí lidé ještě poměrně nedávno kupovali základní desky s ISA sběrnicí).
+
 
+
 
+
----
+
  
  
 +
Oproti výše popsanému čipu YM 3812 došlo k několika podstatným úpravám. Především se zvýšil celkový počet operátorů z osmnácti na 36, do jednoho kanálu je možné zapojit až čtyři operátory (viz další kapitola), místo čtyř typů signálů na vstupech operátorů je k dispozici osm typů (včetně obdélníkového signálu a logaritmicky zkresleného signálu pilového) a na výstup čipu je možné zapojit dvojici D/A převodníků (viz jedenáctý obrázek) a vytvářet tak stereo hudbu – ve skutečnosti však není možné plynule nastavovat přechod mezi levým a pravým reproduktorem (panning), lze pouze zvolit, zda je výstup z nějakého hudebního kanálu přehráván na levém, pravém či obou reproduktorech. Vzhledem ke zvýšenému počtu operátorů se zvýšil i počet interních registrů.
  
 
== Zdroje ==
 
== Zdroje ==
Řádka 70: Řádka 45:
  
 
http://www.fi.muni.cz/usr/pelikan/ARCHIT/TEXTY/ZVUK.HTML
 
http://www.fi.muni.cz/usr/pelikan/ARCHIT/TEXTY/ZVUK.HTML
 +
 +
http://en.wikipedia.org/wiki/Yamaha_YM3812
 +
 +
http://www.zesilovace.cz/view.php?cisloclanku=2003050201
 +
 +
http://pdf1.alldatasheet.com/datasheet-pdf/view/84281/YAMAHA/YM3812.html

Aktuální verze z 21. 12. 2011, 15:42

Obsah

SEMESTRALKA - Čip Yamaha YM3812

Úvod

V době, kdy vznikaly první osobní počítače, nikoho ani nenapadlo nějak je spojovat se zvukem nebo hudbou. Tyto počítače primárně sloužily k zrychlení a ulehčení práce člověka a ne k zábavě. Mnozí se na počítač dívali pouze jako na "počítací stroj". Zvuková karta je rozšiřující karta počítače pro vstup a výstup zvukového signálu, ovládaná softwarově. Yamaha YM3812 (OPL2 – Operator type L2 ) je zvukový čip, který vytvořila v roce 1985 firma Yamaha Corporation. Byl navržen pro použití v multimediálních počítačích. Našel svoje uplatnění v IBM PC ve zvukových kartách Adlib a SoundBlaster. Pře tím byl zvuk v PC tvořen pouze pomocí speakeru.

Čip Yamaha YM3812


Princip

Čip tvoří zvuky kombinováním dvou periodických signálů s využitím zpětnovazební smyčky, ADSR obálky a frekvenční modulace.

Frekvenční modulace

Čip Yamaha YM 3812 generuje zvuk pomocí devíti samostatně nastavitelných hudebních kanálů, přičemž každý kanál obsahuje dvojici operátorů, které mohou být navzájem propojeny buď tak, že se oba signály vytvářené v obou operátorech jednoduše sčítají nebo první operátor ovlivňuje pomocí fázové modulace tvar signálu vytvářeného druhým operátorem

Zapojení operátorů

Každý operátor je složen ze tří bloků – oscilátoru, generátoru obálky a obvodu pro řízení výstupní úrovně. Každý oscilátor může generovat periodický signál odvozený od klasické sinusovky, jejíž podoba je uložena (v logaritmické škále) v 256 bajtech paměti ROM přímo na hudebním čipu.

Čtyři typy signálů

Signál vytvářený v každém operátoru je ovlivněn obálkou (envelope), pomocí níž lze měnit jeho amplitudu. Jedná se o obálku typu ADSR (attack, decay, sustain, release). Základní tvar obálky je určen čtveřicí parametrů – attack rate (doba či strmost náběhu první hrany), decay rate (doba či strmost druhé – klesající/sestupné – hrany), sustain level (stabilní úroveň signálu obálky po prvotním vzrůstu a poklesu, jenž je v programech většinou vyjadřovaná v procentech amplitudy, ovšem v řídicích registrech uložená jako zlomek maximální úrovně) a release rate (doba či strmost poslední – klesající – hrany). Pro každý z těchto parametrů je v řídicích registrech zvukového čipu YM 3526 vyhrazena čtveřice bitů, což prakticky znamená, že hodnoty attack a decay jsou společně uloženy v jednom osmibitovém registru a hodnoty sustain a release v registru druhém. Tyto registry jsou alokovány pro každý operátor zvlášť.

ADSR obálka


OPL3

Oproti výše popsanému čipu YM 3812 došlo k několika podstatným úpravám. Především se zvýšil celkový počet operátorů z osmnácti na 36, do jednoho kanálu je možné zapojit až čtyři operátory (viz další kapitola), místo čtyř typů signálů na vstupech operátorů je k dispozici osm typů (včetně obdélníkového signálu a logaritmicky zkresleného signálu pilového) a na výstup čipu je možné zapojit dvojici D/A převodníků (viz jedenáctý obrázek) a vytvářet tak stereo hudbu – ve skutečnosti však není možné plynule nastavovat přechod mezi levým a pravým reproduktorem (panning), lze pouze zvolit, zda je výstup z nějakého hudebního kanálu přehráván na levém, pravém či obou reproduktorech. Vzhledem ke zvýšenému počtu operátorů se zvýšil i počet interních registrů.

Zdroje

http://www.svethardware.cz/art_doc-BC77A7A4115424A5C125725D005327DE.html

http://cs.wikipedia.org/wiki/Zvuková_karta

http://www.fi.muni.cz/usr/pelikan/ARCHIT/TEXTY/ZVUK.HTML

http://en.wikipedia.org/wiki/Yamaha_YM3812

http://www.zesilovace.cz/view.php?cisloclanku=2003050201

http://pdf1.alldatasheet.com/datasheet-pdf/view/84281/YAMAHA/YM3812.html

Osobní nástroje
Jmenné prostory
Varianty
Akce
Navigace
Nástroje