background image

Wprowadzenie do procesorów sygna owych 

Po co wymy lono procesory sygna owe?

 

Dlaczego s takie wa ne?

 

Czym ró ni si od innych procesorów?

 

Architektura

 

Reprezentacja danych

 

Model programowy i dedykowane operacje

 

Zestaw instrukcji

 

Specjalne tryby adresowania

 

Specjalne instrukcje

 

S ownik i komentarze

 

Po co wymy lono procesory sygna owe?

 

Nasze otoczenie jest pe ne sygna ów analogowych, takich jak d)wi ki i  wiat o. Mo emy 
u ywa+ elektronicznych czujników, aby zamieni+ sygna y analogowe na elektryczne. Mo emy 
nast pnie przekszta ci+ je na liczby przetwarzane przez komputer. Ten proces nazywany jest 
konwersj analogowo-cyfrow (ang. analog-to-digital conversion) lub A/C (ang. A/D). 

 

Do obróbki sygna ów cyfrowych mo e by+ u yty ka dy procesor, jak np. procesory rodzin 
Motorola 68000 czy Intel i86. Jednak uk ady powszechnego u ytku nie posiadaj
wbudowanych elementów, koniecznych do wydajnego przetwarzania. 

 

Dlaczego s takie wa ne?

 

W nowoczesnych systemach komputerowych do obróbki sygna ów cyfrowych zwykle u ywa si
mikrokomputerów jednouk adowych. Ten specjalizowany uk ad nazywany jest procesorem 
sygna owym (ang. digital signal processor) lub w skróci

DSP

. DSP w jednym uk adzie 

scalonym zawiera uk ad kontroli, matryce pami ci, jednostk arytmetyczno-logiczn (ALU) z 
uk adem mno cym (ang. 

multiplier

) i uk ady wspó pracy z otoczeniem. 

 

DSP znalaz y zastosowanie w: 

 

odtwarzaczach CD

 

telefonach komórkowych

 

kontrolerach nap dów dysków

 

faksach

 

modemach

 

Przyk ad zastosowania w telefonii komórkowej: 
Zaprojektowane do wykorzystania w uchwytach dla telefonów i zestawach g o nomówiacych 
DSP zawiera zintegrowane uk ady oraz zapisany w ROM'ie program, aby zapewni+
u ytkownikom mo liwo + komunikacji podczas bezpiecznego prowadzenia pojazdu. 

 

Czym ró ni si od innych procesorów?

 

Procesory sygna owe posiadaj kilka cech (niespotykanych w innych procesorach), 
zapewniaj cych wysok wydajno +:

równoleg e

mno enie

 z akumulacj , wykonywane w jednym cyklu

 

generatory adresu ze specjalizownanymi trybami

 

background image

wydajny zestaw instrukcji z jednocyklowymi równoleg ymi operacjami matematycznymi 
i przes a> w pami ci oraz sprawn realizacj p tli 

 

zintegrowany wewn trzny koprocesor DMA i RAM dla jednoczesnych operacji 
wykonywanych przez CPU i uk ady we/wy

 

Generalny podzia procesorów sygna owych dokonuje si na kategorie: 

 

procesory sta oprzecinkowe (ang. 

fixed-point

 DSP)

 

procesory zmiennoprzecinkowe (ang. 

floating-point

 DSP)

 

Architektura

 

Procesory DSP s wykonane w architekturze 

Harvard

. Ten typ architektury powsta , aby 

przyspieszy+ przep yw du ych ilo ci danych. 

 

Glówne elementy typowego DSP to: 

 

rdze procesora (CPU)

 

pami ci

 

koprocesor DMA

 

obwody wspó(pracy ze )rodowiskiem zewn trznym

 

Rdze> procesora sk ada si z: 

 

szyn adresowych

 

szyn danych

 

kontrolera programu

 

jednostki generacji adresu (AGU)

 

jednostki arytmetyczno-logicznej danych (ALU)

 

interfejsu do emulacji

 

Reprezentacja danych

 

Procesory sta oprzecinkowe (ang. 

fixed-point

u ywaja u amkowej (ang. 

fractional

reprezanacji 

danych dla wszystkich operacji. Istniej trzy typy operandów: s owowy (word), s owowy d ugi 
(long word) i akumulatorowy (accumulator). Przecinek dziesi tny jest wyrównany do lewej 
strony. Do procesorów sta opozycyjnych nale np. rodziny Texas Instruments TMS320C2xx, 
C5x, C54x (16-bitowe), rodzina Motorola 5600x (24-bitowe). 

 

Typ

 

Reprezentacja 
danej

 

Reprezentacja 
szesnastkowa

 

Reprezentacja 
dziesi tna

 

WORD 16-bit

 

S.U amek

 

od FFFF do 7FFF

 

od -1 do 1-2

-15

 

LONG WORD 
32-bit

 

S.U amek

 

od FFFF FFFF do 
7FFF FFFF

 

od -1 do 1-2

-31

 

accumulator

 

GB S.U amek

 

od FF FFFF FFFF do 
00 7FFF FFFF

 

od -1 do 1-2

-31

 

S - Sign Bit (bit znaku) 
GB - Guard Bits (nie dopuszczaj do przpe nienia)

 

background image

Procesory zmiennoprzecinkowe (ang. floating-point) u ywaj zarówno reprezentacji 
sta oprzecinkowej, jak i zmiennoprzecinkowej. Do procesorów zmiennopozycyjnych nale  np. 
rodziny Texas Instruments TMS320C3x, C4x, rodzina Motorola 96000 oraz rodzina AT&T 
DSP32. 

 

Model programowy i dedykowane operacje

 

Z punktu widzenia programisty jednostka arytmetyczno-logiczna mo e by+ przedstawiona jako 
kilka pracuj cych równolegle elementów. 

 

Procesory sygna owe zawieraj arytmetyk z nasyceniem (ang. 

saturation

oraz z 

zaokr gleniem (ang. 

rounding

). 

 

Podstawy sta oprzecinkowego dodawania i odejmowania s takie same, jak liczb ca kowitych. 

 

Dedykowane operacje na przykladzie Motorola 56000:  

Mnemonik

 

Dzia anie

 

Opis

 

ADD Y, A

 

A:=A+Y

 

Dodawanie

 

MPY X0, Y0 A:=XO*Y0

 

Mno enie

 

MAC X0, Y0 A:=A+(X0*Y0) Mno enie z akumulacj

Zestaw instrukcji

 

Zestaw instrukcji procesorów sygna owych zawiera wiele instrukcji zaimplementowanych 
procesorach ogólnego przeznaczenia. Dlatego programowanie obu typów procesorów jest 
bardzo podobne. Dotyczy to podstawowych instrukcji arytmetycznych, logicznych, manipulacji 
bitami i steruj cych. 

 

Wa n cech procesorów DSP jest wysoki stopie> zrównoleglenia, który pozwala na 
wykonywanie kilku operacji w jednym cyklu instrukcyjnym. Jest to bardzo pomocne w 
przetwarzniu liczb i sygna ów, gdzie wykonuje si wiele oblicze>. Procesor oferuje równoleg e
operacje w ALU, AGU i w jednostce steruj cej, np: 

 

pobranie instrukcji

 

dekodowanie instrukcji

 

operacje arytmetyczne na danych

 

przes nia danych

 

Specyficzne dla DSP s sprz towe p tle, jednocyklowe mno enie z akumulacj , równoleg e
przesy anie danych i bardzo elastyczne tryby adresowania. 

 

Specjalne tryby adresowania

 

Zestaw instukcji zawiera du y zestaw trybów adresowania. Wiele instrukcji ALU jest 
wykonywanych na rejestrach, co poci ga za sob mo liwo + równoleg ych przes a> pomi dzy 
rejestrami z pami cia. Najwa niejszymi odwo aniami do pami ci s tryby adresownia 
rejestrowego po redniego. 
Wszystkie po rednie odwo ania do pami ci wymagaj rejestru adresowego. Niektóre tryby 

background image

adresowania po redniego rejestrowego wymagaj rejestru modyfikatora do wyliczenia adresu. 

 

Typowe tryby adresowania rejestrowego po redniego to: 

 

liniowe, np.:

 

bez modyfikacji adresu

 

postinkrementacji o 1

 

postdekrementacji o 1

 

predekrementacji o 1

 

indeksowanie przez offset

 

modulo (pozwala na implementacj bufora ko owego)

 

bit-reversed (u yteczne przy szybkej transformacie Fouriera (FFT))

 

Specjalne instrukcje

 

Procesory sygna owe dostarczaj wielu specjalizowanych instrukcji. Najwa niejsze z nich to 
instrukcje sprz towych p tli. 

 

Typowe instrukcje p tli, to: 

 

do lool (wykonywana bez dodatkowych cykli)

 

repeat next (powtarze nast pn instrukcj bez ponownego pobierania jej z pami ci)

 

A

Address Busses 

 

szyny adresowe, osobne dla programu i danych. 

 

Address Generation Unit (AGU) 

 

jednostka generacji adresu, wykonuje wszystkie obliczenia potrzebne do wyznaczenia 
bezpo redniego adresu w pami ci. Pracuje równolegle z innymi podzespo ami DSP, 
aby zminimalizowa+ czas wykonania cyklu. Posiada adresow jednostk
arytmetyczno-logiczn (AALU) i zestaw rejestrów. 

 

Arithmetic Logic Unit (ALU) 

 

jednostka arytmetyczno-logiczna, zaprojektowana tak, aby zapewni+ du e mo liwo ci 
obliczeniowe. Zawiera rejestry, akumulatory i niepotokow jednostk mno co-
dodaj c . Zastosowano specjalne uk ady do obs ugi b dów przepe nienia i 
zaokr glenia. 

 

C

CPU 

 

DSP jest zorganizowane wokó rdzenia procesora, który jest zbudowany z 
niezale nych jednostek. Magistrale przesy aj dane i instrukcje podczas wykonywania 
instrukcji wewn trz tych jednostek. Struktura magistral umo liwia przes ania: rejestr-
rejestr, rejestr-pami +, pami +-rejestr. 

 

D

background image

Data Buses 

 

szyny danych, osobne dla danych u ytkowych i programu 

 

DMA coprocessor 

 

koprocesor bezpo redniego dost pu do pami ci (ang. direct memory access 
coprocessor), wykonuje wszystkie obliczenia potrzebne do zaadresowania )ródla i celu 
dla operacji DMA. Umo liwia prac kilku kana ów. Koprocesor DMA pracuje równolegle 
z innymi zasobami DSP, by zminimalizowa+ nadmiar transferu danych i programu. 
Szybko + transmisji koprocesora DMA jest taka sama, jak CPU. 

 

DSP 

 

(ang. digital signal procesor) procesor sygna owy. Posiada j zyk asemblerowy, j zyki 
wysokiego poziomu (jak C i Ada) oraz programy narz dziowe. Dzi ki temu jest 
podobny do innych procesorów. 

 

E

Emulation Interface 

 

interfejs do emulacji, s u y do emulacji i testowania. Zawiera uk ady, umo liwiaj ce 
zapis i odczyt wewn trznych uk adów. 

 

F

Fixed-Point DSP 

 

procesory sta oprzecinkowe. S zarówno 16- jak i 24-bitowe. Przechowuj liczby w 
postaci u amkowej. 

 

Floating-Point DSP 

 

procesory zmiennoprzecinkowe. S zwykle 32-bitowe. U ywaj specjalnej 
reprezentacji liczby lub standardu IEEE-754. 

 

Fractional Representation 

 

reprezentacja u amkowa, stosowana, aby mno enie (np. 0.99*0.99) nigdy nie 
przekroczy o jedynki. W ten sposób unika si przepe nienia. 

 

H

Harvard, architektura 

 

posiada rozdzielone pami ci programu i danych. Pozwala to na zaadresowanie i 
dost p do instrukcji programu i danych w pami ci w tym samym czasie. Modyfikacja tej 
architektury pozwala na transfer pomi dzy programem a obszarem danych. 

 

M

Miltiplier 

 

uk ad mno cy. Mno enie jest wa nym elementem w wi kszo ci algorytmów 
przetwarzaj cych dane. Procesory powszechnego u ytku nie maj sprz towego 
uk adu mno cego. Uk ady tego typu maj wprawdzie instrukcje mno enia, ale 
wykonuj tylko serie instrukcji mikrokodu zawartego w zintegrowanej pami ci ROM. 
Operacja mno enia mo e zaj + wiele cykli zegarowych. 

 

Mno3enie 

 

w typowym zmiennoprzecinkowym DSP operacja mno enia trwa ok. 50ns (jeden cykl). 
Dla porównania: mo e zaj + do 44 cykli po 35ns w procesorze 68030. 

 

P

Pami 4 

pami ci w DSP mog by+ podzielone na wiele sposobów, aby umo liwic szybkie 
równoleg e operacje. Zarówno ROM, jak i RAM, s zintegrowane w uk adzie. Niektóre 
bloki danych RAM sa dwuwej ciowe. Ten rodzaj pami ci mo e by+ dost pny z dwóch 
magistrali jednocze nie. Pami c RAM mo e by+ podzielona na dwie przestrzenie X i Y. 

Peripheral Interfacing Circuits 

 

obwody wspó pracy ze  rodowiskiem zewn trznym. Umo liwiaj wspó prac w róznych 

background image

konfiguracjach systemu: timery, konfiguracja szeregowa, systemy wieloprocesorowe z 
(lub bez) procesorem g ównym. 

 

Program Controler 

 

kontroler programu, wykonuje pobranie instrukcji, dekodowanie instrukcji. Obs uguje 
wyj tki, sprz towe p tle i instrukcje powtórze>.

R

Rounding Arithmetic 

 

arytmetyka z zaokr gleniem. Istnieje mo liwo + zaokr glenia warto ci akumulatora do 
liczby pojedynczej precyzji. 

 

S

Saturation Arithmetic 

 

arytmtyka z nasyceniem. Je li zdarzy si przepe nienie, akumulator mo e zosta+
"nasycony", tzn. przyjmuje najwi ksz (albo minimaln ) warto +.