Digitální signálový procesor: Porovnání verzí

Smazaný obsah Přidaný obsah
SieBot (diskuse | příspěvky)
Tombam (diskuse | příspěvky)
doplněny odkazy, interpunkce
Řádek 2:
 
== Typická aplikace DSP ==
Jedním ze základních důvodů k vytvoření DSP byl fakt, že klasické analogové obvody sloužící pro zpracování signálu bývají náročné z hlediska návrhu, nastavení, provedení a reprodukovatelnosti, přičemž jakmile jsou vyrobeny, nelze jejich funkci téměř modifikovat. Ve srovnání s tím cena „digitálního“ křemíku stále klesá a výkon roste.
 
[[Image:DSP řetězec.png|thumb|Typický řetězec pro zpracování signálu v DSP]]
Řádek 10:
 
== Architektura DSP ==
Typický digitální signálový procesor je vystavěn na [[Harvardská architektura|harvardské architektuře]]. Tato architektura má oproti [[Von Neumannova architektura|von Neumannovu modelu]] počítače oddělenou paměť pro [[počítačový program|program]] od paměti pro data. V praxi to znamená, že data a kód programu využívají vlastní [[sběrnice]], což zvyšuje propustnost systému.
 
Dalšího zrychlení výpočtů se dosahuje pomocí specializovaných výpočetních jednotek procesoru, které dokážou pracovat paralelně. Typický DSP má kromě [[Aritmeticko-logická jednotka|aritmeticko-logické jednotky]] (ALU) navíc rychlou násobičku, která dokáže operaci násobení s přičítáním '''A ← A + B.k'''. Tato operace je základní operací většiny algoritmů digitálního zpracování signálu. DSP zpravidla obsahuje dvě nebo více nezávislých adresních jednotek, tzv. DAG ('''D'''ata '''A'''ddress '''G'''enerator), adresujících data v lineárních nebo kruhových bufferech. Typický DSP tak umožňuje během jednoho taktu provést jeden krok skalárního násobení dvou vektorů (vynásobení hodnot ze dvou bufferů, přičtení do akumulátoru, posun na další index v bufferech). Procesor s klasickou architekturou by na stejnou operaci potřeboval několik taktů (např. 1. načtení hodnoty z prvního bufferu, 2. vynásobení hodnotou z druhého bufferu, 3. přičtení výsledku do akumulátoru, 4. posun adresy prvního bufferu, 5. posun adresy druhého bufferu).
 
Oproti univerzálním procesorům mohou (ale nemusí) být v DSP zjednodušeny některé funkce, například nemusí být možné adresovat paměť po [[byte|bajtech]]. Taková zjednodušení mohou vést k problémům s přenositelností kódu psaného ve vyšších programovacích jazycích, nebo k větší spotřebě paměti a strojového času při jiných úlohách, než je zpracování signálu.
 
== Rozdělení DSP ==