dsPIC – rodzina 16-bitowych kontrolerów cyfrowych sygnałów (ang. Digital Signal Controller) produkowanych przez firmę Microchip Technology. Stanowią one połączenie architektury klasycznego mikrokontrolera ogólnego przeznaczenia z wyspecjalizowanymi instrukcjami i blokami obliczeniowymi typowymi dla procesorów sygnałowych (DSP).

Pierwsze układy z tej rodziny (seria dsPIC30F) zostały zaprezentowane przez Microchip Technology jako pierwsze w pełni 16-bitowe układy w ofercie tego producenta.

Architektura Rdzeń układów dsPIC bazuje na zmodyfikowanej architekturze harwardzkiej z 24-bitową szyną instrukcji i 16-bitową szyną danych. Układy oferują zaawansowany zestaw instrukcji mikrokontrolera wzbogacony o moduł obliczeniowy DSP, w skład którego wchodzą:

jednostka mnożąco-sumująca (MAC, ang. Multiply-Accumulate), wykonująca operacje mnożenia z akumulacją w jednym cyklu maszynowym; dwa 40-bitowe rejestry akumulatorów z mechanizmem nasycenia (ang. saturation); sprzętowe pętle bez narzutu czasowego (ang. zero-overhead looping); specjalizowane tryby adresowania pamięci: adresowanie z odwracaniem bitów (niezbędne przy obliczaniu szybkiej transformacji Fouriera, FFT) oraz adresowanie modulo (stosowane w cyfrowych filtrach o skończonej odpowiedzi impulsowej, FIR).

Główne generacje W ramach rodziny dsPIC producent opracował kilka generacji układów: dsPIC30F – pierwsza generacja zasilana napięciem 5 V, ze zintegrowaną pamięcią programu Flash oraz pamięcią danych EEPROM i wydajnością rzędu 30 MIPS; dsPIC33F – seria zasilana obniżonym napięciem 3,3 V, wykonana w gęstszym procesie technologicznym (wydajność do 40 MIPS); dsPIC33E – generacja o zwiększonej wydajności dochodzącej do 70 MIPS, z rozbudowanym kontrolerem DMA oraz obsługą pamięci zewnętrznej; dsPIC33C – generacja wprowadzona w 2018 roku, obejmująca warianty jedno- i dwurdzeniowe (ang. dual-core) o wydajności do 100 MIPS na rdzeńoraz sprzętowe mechanizmy wspomagające projektowanie systemów zgodnych z normami bezpieczeństwa funkcjonalnego, takimi jak ISO 26262 i IEC 61508.

Wspólnie z układami dsPIC rozwijana jest rodzina PIC24, która dzieli tę samą bazową architekturę rdzenia mikrokontrolera oraz zestaw peryferiów, lecz jest pozbawiona jednostki obliczeniowej DSP i 40-bitowych akumulatorów.

Narzędzia programistyczne Wsparcie programistyczne dla rodziny dsPIC obejmuje środowisko programistyczne MPLAB X IDE oraz wieloplatformowy kompilator języka C MPLAB XC16 (oparty na GCC). Dostępne są również biblioteki programistyczne zoptymalizowane pod kątem cyfrowego przetwarzania sygnałów, sterowania silnikami elektrycznymi (np. algorytmy zorientowane polowo, FOC) oraz cyfrowego sterowania przetwornicami napięcia (SMPS).

Zastosowania Dzięki połączeniu cech procesora sygnałowego ze sprzętowymi peryferiami mikrokontrolera (moduły PWM, szybkie przetworniki ADC, kontrolery magistrali CAN) układy dsPIC znajdują zastosowanie w: precyzyjnym sterowaniu napędami elektrycznymi (silniki bezszczotkowe BLDC, silniki synchroniczne z magnesami trwałymi PMSM); cyfrowych zasilaczach impulsowych (SMPS), falownikach solarnych i ładowarkach akumulatorów; elektronicznych systemach wspomagania i sterowania w motoryzacji; systemach zasilania bezprzerwowego (UPS); układach cyfrowej filtracji sygnałów pomiarowych i akustycznych.

Przypisy

Kategoria:Mikrokontrolery Kategoria:Cyfrowe przetwarzanie sygnałów