Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 14

Univerzite u Novom Sadu

Fakultet Tehničkih Nauka


Katedra za računarsku tehniku i međuračunarske
komunikacije

Projektovanje namenskih računarskih


struktura u obradi signala
 OPERATIVNI SISTEMI DIGITALNIH
SIGNAL PROCESORA
OPERATIVNI SISTEMU REALNOM
VREMENU
Operativni sistem je program koji
kontroliše pristup resursima sistema i
rukuje redosledom izvršenja posebnih
programa (procesa) na procesoru
OS u realnom vremenu:
Obezbeđuju garancije izvršenja obrade u
zadatim vremenskim okvirima
Svakom procesu je zagarantovan procenat
vremena CPU
OS POGLED UNAZAD - STANJE!
Široko rasprostranjene kod procesora
opšte namene (Motorola 68xxx itd)
Danas postoji niz OS za rad u realnom
vremenu i za DSP-ove
U prvo vreme većina ih je bila za DSP-ove
u pokretnom zarezu TMS320C3x,
TMS320C4x
Manje OS za rad u realnom vremenu
postoji za DSP-ove u nepokretnom zarezu
TRADICIONALNO STRUKTUIRANO
PROGRAMIRANJE
Dobre za programiranje koje nema
“tvrde” vremenske zahteve
Velika iskoristivost pojedinih funkcija
Kod DSP aplikacija OS i App su jedno
Sinhronizacija i rukovanje resursima
RADNA OKRUŽENJA ZA REALNO
VREME
Smeštanje operativnog koda unutar
rutina za posluživanje prekida (ISR)
Problemi:
Teško praćenje događaja redosledom kojim
su se dogodili.
Kritične sekcije
Teško profilisanje
Main

Inicijalizacija ( )

Teško “debagovanje” while (1)


{ Prekid

Teško raspoređivanje ..čekaj beskonačno


}
ISR_1( ) ISR_2( )

(scheduling) zadataka Povratak


OPERATIVNI SISTEMI ZA
RAD U REALNOM VREMENU
Engleski nazivi:
Real-time operating Operativno jezgro za rad u realnom vremenu
programski raspoređivač prekida

systems Main

Real-time kernels Inicijalizacija ( )


ISR_1( ) ISR_2( )

Interrupt shedulers
Povratak ( )

Osnovna ideja:
Raspoređivač obezbeđuje sloj između
stvarnih fizičkih prekida i korisničke
app. pp
PRIMER RADNOG OKRUŽENJA ZA RAD
U REALNOM VREMENU DSP/BIOSII
Konfigurisanje jezgra OS
Alati za generisanje koda
Izvorni kod

DSP/BIOS
config tool
Kompajler
Povezivač
Asembler Monitoring rada sistema u
DSP/BIOS
moduli realnom vremenu
Izvršni kod

Code Composer DSP aplikacija


Studio
DSP okruženje za DSP/BIOS
kontrolisano JTAG DSP/BIOS jezgro
analiza
izvršenje programa link

Odredišni DSP
Emulaciona podrška upravljačkog računara uređaj

Komponente fizičke
Okruženje upravljačkog računara za
arhitekture za emulaciju
kontrolisano izvršenje programa
DSP-a
KORACI U STARTOVANJU
DSP/BIOSII
Korak 1
C_int00, vektor za reset se postavlja na c_int00
nakon reseta
Korak 2
Poziv BIOS_init, radi inicijalizacije
Korak 3
Poziv main()
Korak 4
Poziv BIOS_start
Korak 5
Ulaz u besposlenu petlju (IDL_loop)
NITI (THREAD) U DSP/BIOSII
 Pozadinska ili besposlena nit, IDL
 Programski prekid, SWI
 Hardverski prekid, HWI
 Istiskivanje i predavanje niti (preemption and yielding)
Pozadinska nit zahteva

Događaji

Završio se SWI A
Završio se HWI 2

Završio se HWI 1

Završio se SWI B
HWI 2 zahteva
Desio se HWI 2

Desio se HWI 1
Prioritet
niti
SWI A
SWI B

Fizički prekid 1
(HWI 1)
Fizički prekid 2
(HWI 2)
Programski prekid A
(SWI A)
Programski prekid B
(SWI B)

Pozadina

Vreme
DSP/BIOSII JEZGRO
200-2K reči
Više niti izvršavanja programa
Rukovanje U/I aktivnostima
Operativna statistika
Širok niz alata za analizu zasnovan na
upravljačkom računaru
VIZUALIZACIJA I RAZVOJ
ALGORITAMA
Do sada obrađeno projektovanje DSP
aplikacije sa stanovišta ARHITEKTURE
Važna polovina projektovanja DSP
aplikacije je ALGORITMIKA
Postoje alati koji obezbeđuju simulaciju
algoritma na nivou blok-dijagrama
MATLAB
MATHEMATICA
Simulacija nepokretnog zareza,
projektovanje filtara, generisanje koda
PREDNOST KORIŠĆENJA ALATA ZA
VIZUELIZACIJU I RAZVOJ ALGORITAMA
Lakši i brži razvoj algoritama na nivou
blok dijagrama
Mogućnost simulacije efekata
kvantizacije, propagacije greške
Automatsko generisanje C koda za DSP
aplikacije
Interakcija u realnom vremenu sa DSPom
MATLAB
MATLAB je računarski jezik koji integriše
proračune, vizualizaciju i programiranje u
okruženje jednostavno za upotrebu, u
kom se problemi i rešenja izražavaju
matematičkim zapisima
MATLAB jezik
Radno okruženje MATLAB-a
Rukovalac grafikom
MATLAB API (C/C++, FORTRAN)
MATLAB-SIMULINK
Interaktivni sistem za simuliranje
nelinearnih dinamičkih sistema
Postojeća infrastruktura za razvoj DSP
aplikacija
DSP blockset
“Fixed-Point” Blockset
“Real-Time Workshop”

You might also like