Digitální signálový procesor

Digitální signálový procesor nebo také digitální signální procesor (zkratka DSP) je mikroprocesor, jehož návrh je optimalizován pro algoritmy používané při zpracování digitálně reprezentovaných signálů. Hlavním nárokem na systém bývá průběžné zpracování velkého množství dat „protékajících“ procesorem.

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.

Typický řetězec pro zpracování signálu v DSP

Na obrázku je typické blokové schéma zařízení využívajícího DSP. Analogový signál je nejprve převeden A/D převodníkem na digitální a v této podobě je průběžně zpracováván digitálním signálovým procesorem. Zpracovaný digitální signál je D/A převodníkem zpět převeden na analogový. V mnoha zařízeních prochází signál tímto řetězcem v reálném čase, ale na některých signálech je potřeba provést tak složité a výpočetně náročné algoritmy, že to ani velmi rychlý DSP procesor v reálném čase nestihne a digitalizovaná data musí být nejprve zaznamenána do paměti a odtamtud teprve postupně zpracovávána.

V některých zařízeních je ovšem použita jen polovina tohoto typického řetězce nebo jsou sice použity obě poloviny, ale v samostatných oddělených řetězcích zpracovávaných samostatnými procesory. Užití části řetězce nastává například v CD přehrávači, kdy je signál z kompaktního disku čten v digitální podobě, zpracován digitálním signálovým procesorem a nakonec převeden na analogový. Příkladem odděleného zpracování je mobilní telefon, ve kterém se obvykle zpracovává vysílaný a přijímaný signál odděleně v samostatných procesorech.

Architektura DSP

Typický digitální signálový procesor je vystavěn na harvardské architektuře. Tato architektura má oproti von Neumannovu modelu počítače oddělenou paměť pro 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é 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 (Data Address Generator), 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 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

Základním dělením digitálních signálových procesorů je dělení podle použité aritmetiky. Existují DSP pracující:

  • v celočíselné aritmetice
  • v aritmetice s pevnou řádovou čárkou
  • v aritmetice s plovoucí řádovou čárkou

Procesory s celočíselnou aritmetikou jsou sice levné, ale algoritmy výpočtů stále narážejí na nutnost převádět reálná čísla na celá a mezivýsledky výpočtů se musí neustále upravovat tzv. normalizacemi. Proto je vývoj algoritmů v těchto typech procesorů výrazně náročnější. Hodí se proto zejména pro masovou produkci výrobků, kde nevadí poněkud vyšší cena vývoje, ale důležitá je zejména cena samotné součástky.

Procesory s plovoucí řádovou čárkou jsou sice složitější a dražší, ale vývoj softwaru je pro ně výrazně jednodušší. Nevýhodou zde může být rovněž vyšší spotřeba energie.

Procesory s pevnou řádovou čárkou mohou sice být určitým kompromisem, ale prakticky je nelze jasně odlišit od procesorů pracujících v celočíselné aritmetice.

Dalším kritériem pro dělení digitálních signálových procesorů je šířka jejich datové sběrnice. Ta bývá od 16 bitů výše.

Další dělení může být na jednojádrové nebo vícejádrové DSP.

Vývoj a výroba DSP

Algoritmy zpracování digitálních signálů jsou často velmi složité a často se celé nebo alespoň jejich podstatné části v různých aplikacích opakují. Proto je často výhodné vyvíjet specializované procesory obsahující již potřebné algoritmy. Firmy zabývající se vývojem DSP se proto dělí na firmy vyvíjející hardware procesorů a firmy vyvíjející algoritmy. Hardwarový návrh DSP je pak často prodáván jako tzv. DSP core (jádro). Toto jádro je použito k výrobě specializovaných integrovaných obvodů, které ho doplňují o další potřebné součástky – například A/D a D/A převodníky a paměť ROM obsahující patřičné algoritmy. Například typický DSP pro mobilní telefony obsahuje 2–4 samostatná DSP jádra a veškeré algoritmy potřebné pro zpracování hovorového signálu na GSM a naopak.

Často se můžeme setkat také s tím, že některá větší hradlová pole obsahují funkční bloky určené k vytváření DSP (rychlé násobičky, blokové paměti, atp.), nebo také celá DSP jádra. Vývoj DSP tak může v dnešní době sestávat např. pouze z jeho „napsání“ ve VHDL nebo v jiném jazyce pro definici hardware a implementaci v hradlovém poli.

Nejčastěji používané algoritmy DSP

Nejčastějšími algoritmy zpracování digitálních signálů jsou algoritmy filtrů. Rozdělujeme je do dvou kategorií na filtry:

Dalším velmi častým algoritmem jsou transformace signálu (například Fourierova transformace nebo z-transformace používaná v kompresních algoritmech).

Externí odkazy


Zdroj datcs.wikipedia.org
Originálcs.wikipedia.org/wiki/Digitální_signálový_procesor
Zobrazit sloupec 

Kalkulačka - Výpočet

Výpočet čisté mzdy

Důchodová kalkulačka

Přídavky na dítě

Příspěvek na bydlení

Rodičovský příspěvek

Životní minimum

Hypoteční kalkulačka

Povinné ručení

Banky a Bankomaty

Úrokové sazby, Hypotéky

Směnárny - Euro, Dolar

Práce - Volná místa

Úřad práce, Mzda, Platy

Dávky a příspěvky

Nemocenská, Porodné

Podpora v nezaměstnanosti

Důchody

Investice

Burza - ČEZ

Dluhopisy, Podílové fondy

Ekonomika - HDP, Mzdy

Kryptoměny - Bitcoin, Ethereum

Drahé kovy

Zlato, Investiční zlato, Stříbro

Ropa - PHM, Benzín, Nafta, Nafta v Evropě

Podnikání

Města a obce, PSČ

Katastr nemovitostí

Katastrální úřady

Ochranné známky

Občanský zákoník

Zákoník práce

Stavební zákon

Daně, formuláře

Další odkazy

Auto - Cena, Spolehlivost

Registr vozidel - Technický průkaz, eTechničák

Finanční katalog

Volby, Mapa webu

English version

Czech currency

Prague stock exchange


Ochrana dat, Cookies

 

Copyright © 2000 - 2024

Kurzy.cz, spol. s r.o., AliaWeb, spol. s r.o.