Procesory sygnaÅ‚owe i ukÅ‚ady peryferyjne systemów CPS ·ð Powstanie i rozwój technologii procesorów DSP ·ð Współczesne dziedziny zastosowaÅ„ ·ð Obecny rynek DSP 2W0 POCZTKI DSP PrzeksztaÅ‚cenie Fouriera PrzeksztaÅ‚cenie Laplace a ßð ßð Dyskretne PrzeksztaÅ‚cenie Fouriera PrzeksztaÅ‚cenie Z (Discrete Fourier Transform DFT) ßð ßð PrzeksztaÅ‚cenie sygnałów Aparat matematyczny opisu cyfrowych z dziedziny czasu sygnałów i ukÅ‚adów cyfrowych na dziedzinÄ™ czÄ™stotliwoÅ›ci ßð Algorytm Cooley a i Tukey a ßð Szybkie PrzeksztaÅ‚cenie Fouriera (Fast Fourier Transform FFT) Rozwój algorytmów Rozwój technologii szybkich cyfrowego przetwarzania ukÅ‚adów scalonych wielkiej sygnałów skali integracji Pierwsze ukÅ‚ady procesorów sygnaÅ‚owych 1971 Lincoln FDP Lincoln Laboratory Lincoln LSP/2 Lincoln Laboratory ~ð1973 1980 S2811 American Microsystem 2920 Intel ~ð1980 Nippon Electric Company (NEC) ~ð1980 mðPD7720 1982 TMS32010 Texas Instruments 2W1 Obroty rynku DSP w dolarach US ·ð 1995 rok ok. 2 miliardy USD ·ð 1997 rok ok. 4 miliardy USD ·ð 1999 rok ok. 7 miliardów USD ·ð 2001 rok ok. 10 miliardów USD & ·ð 2010 rok ok. 18 miliardów USD Tradycyjny podziaÅ‚ procesorów DSP ·ð Zmiennoprzecinkowe ·ð wiÄ™ksza precyzja ·ð wiÄ™kszy zakres dynamiki ·ð krótszy czas wdrożenia ·ð StaÅ‚oprzecinkowe ·ð niższy koszt ·ð mniejszy pobór mocy Tendencje rozwojowe w dziedzinie mðProcesorów ·ð migracja w kierunku DSP ·ð migracja do arytmetyki zmiennoprzecinkowej ·ð wzrost możliwoÅ›ci obliczeniowych ·ð redukcja poboru mocy 2W2 Typowe przykÅ‚ady zastosowaÅ„ ·ð urzÄ…dzenia audio, hi-fi ·ð urzÄ…dzenia video ·ð telefonia bezprzewodowa ·ð modemy ·ð wideofony ·ð zabawki ·ð przetwarzanie obrazów ·ð grafika 3D Kodowanie przebiegów ·ð Kompresja objÄ™toÅ›ci ·ð danych ·ð mowy ·ð obrazów ·ð Kodowanie sygnałów mowy ·ð wykorzystanie charakterystycznych cech mowy - okresowość - różnice pomiÄ™dzy gÅ‚oskami dzwiÄ™cznymi i bezdzwiÄ™cznymi ·ð Kodowanie obrazów ·ð wykorzystanie transformat sygnaÅ‚u ·ð informacja o różnicy pomiÄ™dzy ramkami obrazu ·ð kombinacje kodowania mowy i obrazu w aplikacjach video 2W3 Kodowanie mowy (Voice coder vocoder) 2W4 Kodowanie obrazów Øð NajwiÄ™cej informacji zawarte jest w skÅ‚adowych nisko-czÄ™stotliwoÅ›ciowych sygnaÅ‚u; Øð Koder przeksztaÅ‚cajÄ…cy chroni informacjÄ™ zawartÄ… w zakresie dolnych czÄ™stotliwoÅ›ci; Øð Pomijany sÄ… maÅ‚e współczynniki transformaty, bez znaczÄ…cej utraty jakoÅ›ci sygnaÅ‚u; Øð Powszechnie stosuje siÄ™ dyskretne przeksztaÅ‚cenie kosinusowe (DCT Discrete Cosine Transform); Øð Kodowanie daje redukcjÄ™ objÄ™toÅ›ci danych i zmniejsza wymagania na przepustowość kanaÅ‚u transmisyjnego; Øð W dziedzinie kodowania obrazów stosuje siÄ™ 3 podstawowe standardy: żð H - kompresja sygnałów wideo o ograniczonej jakoÅ›ci; żð JPEG - kompresja obrazów nieruchomych; żð MPEG - kompresja obrazów ruchomych peÅ‚nej jakoÅ›ci. 2W5 2W6 2W7 Ocena szybkoÅ›ci DSP Najpopularniejsze parametry oceny szybkoÅ›ci procesorów: MIPS - Million Instructions per Second ilość milionów rozkazów na sekundÄ™ wykonywanych przez procesor, ilość wewnÄ™trznych cykli rozkazowych. Pytanie: Co realizujÄ… poszczególne rozkazy? MOPS - Million Operations per Second ilość milionów operacji na sekundÄ™ CaÅ‚kowita liczb operacji wliczajÄ…c dostÄ™p do pamiÄ™ci, operacje przesyÅ‚u danych, operacje wejÅ›cia/wyjÅ›cia. MFLOPS - Million Floating Point Operations per Second ilość milionów operacji zmiennoprzecinkowych na sekundÄ™. MMAC - Million Multiply and Accumulate ilość milionów operacji MAC na sekundÄ™. Benchmarks - czasy realizacji podstawowych algorytmów DSP. 2W8 Åšwiatowi potentaci rynku DSP 1. Texas Instruments 2. Freescale Semiconductor (Motorola) 3. Agere/LSI 4. Analog Devices üð Procesory firmy Analog Devices ADSP-21xx 16-bitowy format staÅ‚oprzecinkowy ADSP-21xxx 32-bitowy format zmiennoprzecinkowy (SHARC) 32-bitowy format staÅ‚oprzecinkowy TigerSHARC 32-, 40-bitowy format zmiennoprzecinkowy 8-, 16-, 32-bitowy format staÅ‚oprzecinkowy Blackfin 16-bitowy format staÅ‚oprzecinkowy DSP + RISC üð Procesory firmy Agere DSP-16xxx 16-bitowy format staÅ‚oprzecinkowy DSP-32xx 32-bitowy format zmiennoprzecinkowy üð Procesory firmy Freescale: DSP568xx/568xxE 16-bitowy format staÅ‚oprzecinkowy DSP563xx i 566xx 24-bitowy format staÅ‚oprzecinkowy DSP96xxx 32-bitowy format zmiennoprzecinkowy MSC81xx 16-bitowy format staÅ‚oprzecinkowy (ALU) 32-bitowa jednostka komunikacyjna RISC 2W9 Platformy sprzÄ™towo-programowe firmy Texas Instruments TMS320C2000 Digital Signal Controllers ·ð PoÅ‚Ä…czenie MCU o dużej mocy i sprawnoÅ›ci obliczeniowej z możliwoÅ›ciami ukÅ‚adów cyfrowego sterowania ·ð Wbudowane aplikacje przemysÅ‚owe, np.: -ð automatyka przemysÅ‚owa -ð sterowanie silników cyfrowych (krokowych) -ð cyfrowe zródÅ‚a zasilania -ð czujniki inteligentne TMS320C5000 Power Efficient DSPs ·ð PrzemysÅ‚owy standard niskiego poboru mocy ·ð Zaawansowane, automatyczne zarzÄ…dzanie mocÄ… ·ð UrzÄ…dzenia osobiste i przenoÅ›ne, np.: -ð cyfrowe odtwarzacze muzyczne -ð telefonia VoIP/DECT -ð odbiorniki GPS -ð przenoÅ›ne urzÄ…dzenia medyczne -ð czytniki linii papilarnych 2W10 TMS320C6000 High Performance DSPs ·ð TMS320C67x / C672x - Floating Point DSPs ·ð Optymalizacja wydajnoÅ›ci i sprawnoÅ›ci dziaÅ‚ania ·ð PrzemysÅ‚owy standard najbardziej zaawansowanego Optimizera dla kompilatora C i asemblera ·ð Wysokiej jakoÅ›ci komercyjne i profesjonale aplikacje audio ·ð Zobrazowanie cyfrowe ·ð Grafika 3D ·ð TMS320C64xx, TMS320C62x - Fixed Point DSPs ·ð PoÅ‚Ä…czenie wysokiej jakoÅ›ci i efektywnoÅ›ci cenowej ·ð PrzemysÅ‚owy standard szybkoÅ›ci procesorów staÅ‚oprzecinkowych ·ð Infrastruktury bezprzewodowe i telekomunikacyjne ·ð Przetwarzanie obrazów i systemy zobrazowania ·ð Transkodowanie audio i video ·ð Servery video konferencji ·ð HDTV, HD Radio ·ð Zobrazowanie medyczne DaVinci Digital Media Processors ·ð Technologia DaVinci - zintegrowany pakiet procesorów, oprogramowania i narzÄ™dzi dla producentów sprzÄ™tu video ·ð Optymalizowane dla aplikacji cyfrowego video 2W11 ·ð zmodyfikowana architektura harwardzka ·ð jednostka przetwarzajÄ…ca (core): - 16-bitowy ukÅ‚ad mnożący - 16-bitowy rejestr przesuwny - 32-bitowa ALU - 32-bitowy akumulator - zbiór rejestrów pomocniczych ·ð obszar pamiÄ™ci wewnÄ™trznej: - 32K-słów pamiÄ™ci programu, typu FLASH - 256 słów pamiÄ™ci ROM z bootloaderem - 2,5K słów pamiÄ™ci danych RAM ·ð interfejsy: - synchroniczny interfejs szeregowy (SPI) - asynchroniczny interfejs szeregowy (SCI) - magistrala CAN ·ð 10-bitowy, 16-kanaÅ‚owy przetwornik a/c ·ð dwie jednostki zarzÄ…dzania zdarzeniami ·ð do 4 timerów 16-bitowych, 1 Watch-Dog timer, do 16 kanałów PWM ·ð emulator standardu JTAG ·ð do 40 MIPS 2W12 ·ð zmodyfikowana architektura harwardzka ·ð od 1 do 4 jednostek przetwarzajÄ…cych ·ð każda jednostka przetwarzajÄ…ca (core) posiada: - 17-bitowy ukÅ‚ad mnożący - 40-bitowy ukÅ‚ad sumujÄ…cy - 40-bitowÄ… ALU - dwa 40-bitowe akumulatory - 8 rejestrów pomocniczych; - dwa generatory adresu - 40-bitowy rejestr przesuwny ·ð 4 magistrale wewnÄ™trzne - 1 magistrala programu, 3 magistrale danych ·ð rozbudowane interfejsy: - standardowy port szeregowy (SSP) - buforowany port szeregowy (Buffered Serial Port - BSP) - wielokanaÅ‚owy, buforowany port szeregowy (Multichannel BSP) - multipleksowany port szeregowy z podziaÅ‚em czasowym (TDM - Time-Division Multiplexed) - port równolegÅ‚y komputera nadrzÄ™dnego (HPI - Host Port Interface) ·ð wspomaganie operacji na liczbach zmiennoprzecinkowych ·ð zaawansowane funkcje zarzÄ…dzania energiÄ… ·ð do 160 MIPS (1 core) 2W13 Droga rozwoju platformy C5000 2W14 Zastosowane modyfikacje w generacji C55x: żð technologia zmiennej dÅ‚ugość sÅ‚owa instrukcji (Variable Instruction Length Architecture) umożliwia operowanie na instrukcjach 8-, 16-, 32-, 48-bitowych żð podwójny ukÅ‚ad mnożący żð podwójna jednostka arytmetyczno-logiczna ALU żð 4 akumulatory żð możliwość wykonania 2 instrukcji w jednym cyklu maszynowym żð 3 magistrale odczytu danych żð 2 magistrale zapisu danych żð zaawansowane technologie redukcji poboru mocy Zestawienie porównawcze generacji C54x i C55x 2W15 Platforma C6000 opiera siÄ™ na 3 typach ukÅ‚adów: żð TMS320C62x staÅ‚oprzecinkowe procesory o architekturze 16/32-bitowej (32-bitowe sÅ‚owo instrukcji, 16-bitowe mnożenie); żð TMS320C64x staÅ‚oprzecinkowe procesory stanowiÄ…ce rozwiniÄ™cie ukÅ‚adu C62x; żð TMS320C67x 32-bitowe procesory zmiennoprzecinkowe. Charakterystyka procesorów platformy C6000: żð zaawansowana technologia bardzo dÅ‚ugiego sÅ‚owa instrukcji advanced Very Large Instruction Word - VelociTI.1, VelociTI.2; żð architektura typu Å‚aduj/zapisz (load/store) - wszystkie operacje wykonywane na rejestrach; żð zaawansowane kontrolery zarzÄ…dzania danymi i wykonaniem programu; Zestawienie porównawcze generacji C62x i C64x 2W16