Contacte

Procesor de procesare a semnalului digital. Procesoare și procesoare de semnal digital (DSP) Aplicație DSP

Semnalele procesorului de semnal digital (Procesorul de semnal digital - DSP) este un microprocesor programabil specializat conceput pentru a manipula fluxul de date digital în timp real. Procesoarele DSP sunt utilizate pe scară largă pentru a gestiona informațiile grafice, semnalele audio și video.

Orice computer modern Echipat cu un procesor central și doar câteva procesoare de procesare a semnalului digital (procesor DSP - semnal digital). Procesorul central, evident, este un sistem digital și procesează date digitale, deci la prima vedere nu este clar diferența dintre datele digitale și semnalele digitale, adică acele semnale care se ocupă de procesele procesorului DSP.

Semnale digitale, în general, atribuie în mod natural toate fluxurile de informații digitale care sunt formate în timpul telecomunicațiilor. Principalul lucru care distinge aceste informații nu este neapărat introdus în memorie (și, prin urmare, poate fi inaccesibil în viitor), prin urmare, este necesar să îl procesați în timp real.

Numărul de surse de informații digitale este aproape nelimitat. De exemplu, fișierele descărcate în format MP3 conțin semnale digitale, reprezentând de fapt înregistrarea sunetului. În unele camere video, semnalele video sunt digitizate și înregistrate în format digital. În modele scumpe de telefoanele wireless și celulare, vocea este, de asemenea, convertită la un semnal digital.

Variații pe subiect

Procesoarele DSP sunt fundamentale diferite de microprocesoare care formează desktopul desktopului. Prin natura activităților sale, procesorul central trebuie să efectueze funcții unificatoare. Acesta trebuie să gestioneze activitatea diferitelor componente hardware de calculator, cum ar fi unitățile, afișajele grafice și o interfață de rețea pentru a asigura munca lor consecventă.

Aceasta înseamnă că procesatorii centrali ai computerelor desktop au o arhitectură complexă, deoarece acestea trebuie să susțină astfel de funcții de bază ca protecția memoriei, aritmetică integer, funcționarea punctului plutitor și procesarea grafică vectorială.

Ca rezultat, un procesor central tipic modern susține câteva sute de echipe care asigură executarea tuturor acestor funcții. Prin urmare, avem nevoie de un modul pentru decodarea comenzilor, care ar permite implementarea unui dicționar complex de comenzi, precum și multe scheme integrate. Ei, de fapt, trebuie să efectueze acțiuni definite de echipe. Cu alte cuvinte, un procesor tipic de pe desktop conține zeci de milioane de tranzistori.

Procesorul DSP, dimpotrivă, ar trebui să fie un "specialist îngust". Singura sarcină este de a schimba fluxul semnalelor digitale și de a face rapid. Procesorul DSP constă în principal din circuite hardware de mare viteză care efectuează funcții aritmetice și manipularea biților optimizați pentru a schimba rapid cantități mari de date.

Din acest motiv, setul de comenzi de la DSP este mult mai mic decât atât procesor central calculator desktop; Numărul lor nu depășește 80. Aceasta înseamnă că DSP necesită un decodor de echipă ușor și un număr mult mai mic de dispozitive executive. În plus, toate dispozitivele executive trebuie, în cele din urmă, trebuie să susțină operațiunile aritmetice de înaltă performanță. Astfel, un procesor tipic DSP constă în nu mai mult de câteva sute de mii de tranzistori.

Ca o foarte specializată, procesorul DSP se confruntă perfect cu munca sa. A lui funcții matematice Permiteți să primiți continuu și să modificați semnalul digital (cum ar fi înregistrarea la MP3 sau înregistrarea unui apel pe un telefon mobil), fără a frânge transmiterea informațiilor și fără ao pierde. Pentru creștere lățime de bandă Procesorul DSP este echipat cu anvelope suplimentare de date interne care oferă un transfer de date mai rapid între modulele aritmetice și interfețele procesorului.

De ce aveți nevoie de procesoare DSP?

Caracteristicile specifice ale procesorului DSP în ceea ce privește procesarea informațiilor o fac un instrument ideal pentru multe aplicații. Folosind algoritmi bazați pe aparatul matematic corespunzător, procesorul DSP poate percepe semnalul digital și poate efectua operațiuni de convoluție pentru a câștiga sau suprima aceste sau alte proprietăți de semnal.

Datorită faptului că în procesoarele DSP, tranzistoare semnificativ mai mici decât în \u200b\u200bprocesoarele centrale, ele consumă mai puțină energie, ceea ce le permite să fie utilizați în produsele cu baterii. Producția lor este extrem de simplificată, astfel încât ei să se găsească în dispozitive cu costuri reduse. Combinația de consum redus de energie și costul scăzut determină utilizarea procesoarelor DSP în celulare Și în roboți-toys.

Cu toate acestea, spectrul cererii lor este departe de a fi limitat. În virtutea unui număr mare de module aritmetice, prezența datelor integrate pe anvelopele de cristal de memorie și de date suplimentare poate fi utilizată pentru a susține procesarea multiprocesare. Ei pot comprima / despacheta "Video Live" atunci când transmiteți pe Internet. Procesoarele DSP de înaltă performanță similare sunt adesea utilizate în echipamente pentru organizarea de conferințe video.

În interiorul DSP.

Diagrama de mai jos ilustrează structura miezului procesorului Motorola DSP 5680x. Anvelopele interne interne separate de comenzi, date și adrese contribuie la o creștere accentuată a lățimii de bandă a sistemului de calcul. Prezența magistralei de date secundare permite ca dispozitivul aritmetic să citească cele două valori, să le înmulțească și să efectueze funcționarea acumulării rezultatului pentru un ceas de procesor.

Inadecvat cuverd pe video de la "Chip și Dip" # 1 Prelucrarea sunetului digital ADAU1701 | Deschiderea proiectului | start
Și apoi "acoperit" cu tot felul de amintiri despre acest subiect. Am decis să verific ce se întâmplă în timpul nostru în acest front, a constatat că o mulțime de bun și interesant.

Calitatea prelucrării a crescut semnificativ, prețul a căzut semnificativ și sunet DSP (procesarea semnalelor digitale) deja bate pe casa noastră! :)
În acest videoclip, chipul Sigmadsp Adau1701 este luat în considerare și am decis să văd ce puteți crea cu el și a fost foarte impresionat de posibilitățile.
În limba rusă, puteți citi despre ele (). Pentru mine, acest DSP vă permite să construiți un normal sistem acustic cu un crossover extern. Posibilitățile sistemului sunt inimaginabil mai mult decât transpirația mea. Vă permite să vă programați un nou nou venit în programare, dar să înțelegeți componentele sonore și modul în care funcționează: Filtre; crossovers; Egalizatoare etc. etc. Aceste cunoștințe sunt necesare pentru a configura toate acestea.
Acesta este exemplul unui exemplu de proiect în programul de servicii și programare DSP:

După cum puteți vedea aproape nu "valori digitale" și totul necesită "sunet".
Desigur, ADC și DAC "este departe de Hi-end, dar Hi-Fi medie, dar pentru casa acestei calități este suficientă, iar posibilitățile sunt foarte mari. Este foarte bun că DSP are un dublu calcul acuratețea (56 biți) și este setată implicită..
Ei bine ... Difuzabil mic / incomplet a cântat, acum realitatea.

Există comisioane în diferite versiuni:
Opțiunea 1
. Taxă de testare completă de la producător costă ~ 12-15 mii de ruble Și vă permite să evitați ceva. IMHO cel mai mare avantaj față de restul este un SPDIF complet, adică. și intrarea digitală și ieșire digitală Rezultate. De asemenea, vă permite să depanați algoritmi "în zbor". Comanda "pentru deal" de pe site-ul producătorului.
Opțiunea 2.. Acesta este un aspect ușor tocat din atelier - un set de BM2114DSP. Are toate intrările / ieșirile analogice, dar depanarea este încă "în zbor".
Costul 4900 de ruble.
Opțiunea 3.. Aceasta este versiunea maximă simplificată a utilizării DSP de la "chip și dip" a "forțelor electronice" la labotoria lor.
Kitul se numește procesoare de semnal digital RDC2-0027V1, un modul de procesare a sunetului digital pe Sigmadsp Adau1701, SigMastudio
Aceasta este o variantă cu lipsa de programare "în zbor". Creați un binar, convertiți și "turnați" cu "fluierul" în bordul ERROM. O ia puțin timp, dar ia departe și necesită o înțelegere a procesului. :)
Costul plății 950 de ruble.

Da, voi clarifica, taxa după programare funcționează ca un dispozitiv independent! Acestea. PC-ul nu este întotdeauna necesar! Și la bord puteți conecta "Twist" (encodere); butoane etc., adică metode externe Ajustările sunt suficiente, nu neapărat să intrați în codul DSP.
Alegerea este a ta ...

Acum se referea la lista mea de dorințe din trecut. Una dintre cele mari probleme ale filtrelor pasive este distorsiunile de fază și cu atât este mai mare abruptura recesiunii filtrului, cu atât este mai mare distorsiunea fazei. Din cauza lor, există multe mândri în care este extrem de dificil să scape și să fie dificil de a coordona diferite benzi de frecvență.
Filtrele digitale de date nu suferă de acest lucru și vă permit să faceți multe pentru a se potrivi cu benzile de tăiere. Dar devine necesar să se utilizeze în loc de un amplificator - trei, câte unul pentru fiecare interval de frecvență (odată ce coloana cu 3 căi, atunci benzile 3 și amplificatoarele sunt obținute 3). Desigur, ele pot fi optimizate prin putere (de exemplu, în cazul meu va fi un LC - 30W; SC - 20W; HF - 10W), dar aici, cu privire la posibilitățile și un amator, cred că unificarea va câștiga. :)

La sfârșitul set video

Exemplu cum să combinați "cifra"

Tipul colectează un monstru pe două DSP

Nu cu mult timp în urmă, datorită unor progrese importante în domeniul procesului de procesare a sunetului și al tehnologiilor informatice, un astfel de concept ca prelucrarea semnalului DSP - digitală (procesarea semnalelor digitale) a fost inclusă în conștiința noastră. Prelucrarea semnalului digital este un domeniu de tehnologie angajat în algoritmi de calcul în timp real. DSP ne spune despre posibilitatea acestui transceiver pentru a implementa acest serviciu prin capacitățile sale tehnice. Unele transceiveri moderne au procesarea digitală atât recepția, cât și transmisia. Este sigur să spunem că procesarea digitală oferă o calitate care să corespundă noilor tehnologii și în momentul în care trăim.

Prelucrarea digitală în raport cu radio amator este cel mai frecvent utilizată în procesarea semnalului de la eter, pentru a asigura o recepție mai bună, elimină interferențele care însoțesc transferul corespondentului. Acest lucru se face atunci când lucrați cu orice fel de comunicare, inclusiv digital. În acest scop, un computer cu o placă de sunet încorporată (ZK) și software-ul corespunzător poate fi de multe ori. Cu toate acestea, în timp real, semnalul este procesat cu o întârziere și dacă în modul de recepție este încă tolerant, atunci în timpul transmisiei - nr.

SSB de lucru și utilizarea capacităților de hardware și software de calculator în procesarea semnalului de la microfon, care este conectat la placa de sunet a computerului (urmată de semnalul de alimentare la modulatorul echilibrat transmițător), întârzierea este foarte semnificativă. Vorbim Nu este ușor să îmbunătățiți semnalul de la microfon la un anumit nivel cu ajutorul CC și la utilizarea programelor speciale de procesare a semnalului în timp real. Situația este și mai agravată atunci când lucrează cu o astfel de specie digitală ca amtor, Pactor, pachet, când computerul este folosit simultan, spun, ca un filtru de notch și, împreună cu controlerul TNC disponibil la stația TNC, acesta oferă tipuri enumerate de muncă. Întârzierea procesului de procesare în computer în astfel de cazuri este nevalidă. Pentru a scăpa de această problemă, utilizați cartea audio audigy-2 (de exemplu, audigy-2 24 biți 96 kHz).

De asemenea, această placă de sunet are un procesor de efecte încorporate hardware, care permite utilizarea de capabilități de software și hardware, pentru a procesa semnalul în timp real la un nivel suficient de ridicat, adică. În modul de transmisie, de exemplu, în tipurile de telefon de lucru - SSB, AM, FM - au un bun egalizator, compresor, limitator și în modul de recepție - filtru Notch, expander sau altceva.

Toate acestea sunt posibile chiar și cu calculator personal din procesorul Pentium. 200 ... 500 MHz, deși utilizarea unor mașini mai puternice este binevenită, deoarece există caracteristici și mai mari ale procesării semnalului software. - Conectați-vă și programe adecvate, algoritmul de procesare care necesită performanțe mai mari ale calculatorului.

În acest caz, tehnologiile moderne permit utilizarea dispozitivelor digitale digitale scumpe externe, ci într-o oarecare măsură pentru a imita funcționarea lor folosind acest lucru computere de putere Procesor central al computerului și placa de sunet. Cu toate acestea, este posibilă cu resurse foarte mari de calculator. Folosind aceste tehnologii, rămâne doar pentru a instala nodul de andocare - interfața - între transmițător și computer și folosiți cu succes posibilitatea acestora din urmă.

Plata pentru prelucrarea corectă a semnalului digital în transmițător sau utilizând un computer, amatori de radio utilizează, de asemenea, unități de procesare DSP externe. Aceasta este o direcție relativ nouă în amatori.

Este vorba despre procesarea digitală a semnalului utilizând echipamente moderne de înaltă tehnologie, utilizate în studiourile de difuzare și muzicale, oferind o calitate absolută și naturalitatea sunetului. Acestea sunt console de mixere de înaltă calitate, precum și tot felul de egalizatoare cu mai multe benzi analogice (mai des parametrice), sisteme de anulare a zgomotului, compresoare, limitator, procesoare multi-efect, permițând diferiți algoritmi de procesare a sunetului.

Trebuie remarcat faptul că DSP este conceptul general.. Puteți avea un egalizator DSP, compresor, alte dispozitive și chiar un preampion de microfon. Având o funcție DSP în transmițător este una, au un studio de echipamente DSP întreg - acestea sunt caracteristici complet diferite. Acest lucru este valabil dacă în ambele cazuri prelucrarea menționată se efectuează la frecvență joasă.

Producători renumiți de echipamente DSP - Behringer www.behringer.com, Alesis www.alezis.com și alții - au o listă imensă a acesteia, iar o mare parte din ea poate fi aplicată cu succes de radio amatori.

Fiecare dintre aceste dispozitive își îndeplinește sarcina și, de regulă, conține ADC-uri de precizie de 24 de biți și DAC (convertoare analog-digital și analogic) în cele două canale (convertoare analog-digital și analogic), care funcționează Frecvența profesională a discreditului și având o gamă de frecvențe de funcționare de 20 Hz ... 20 kHz.

Certificat scurt.

Convertoare analogice-digitale și analogice. Primul convertește un semnal analogic în valoarea digitală Amplitudine, al doilea îndeplinește transformarea inversă.

Principiul funcționării ADC constă în măsurarea nivelului semnalului de intrare și emiterea rezultatului în formă digitală. Ca urmare a lucrării ADC, semnalul analogic continuu se transformă într-un impuls, în timp ce măsoară simultan amplitudinea fiecărui puls. DAC primește o valoare de amplitudine digitală la intrare și emite impulsurile de tensiune sau curentul de valoare dorit, pe care integratorul situat în spatele acestuia (filtru analogic) se transformă într-un semnal analogic continuu.

Ca orice investiție nouă (în special solicitantă de bani), are suporterii și adversarii săi. Pentru a atinge un nivel ridicat de calitate, utilizarea este necesară pentru a transmite un filtru mai larg în transmițătorul SSB-3 KHz și nu 2,4 kHz sau 2,5 kHz, dar acest lucru nu depășește reglementările comunicărilor radio amator în ceea ce privește echipamentul folosit.

Astăzi, respinge dreptul la existența direcției în procesarea sunetului cu ajutorul unor dispozitive suplimentare poate fi doar leneș, invidios sau care nu primește progrese și tehnologii noi.

Hi-Fi audio în SSB este calitatea înaltă a procesului de procesare a semnalului NF în SSB sau "extins SSB" - Extended SSB-fraze SSB, adesea audibile și parțial explicând activitatea de mai mult de 10 ani a amatorilor radio din întreaga lume la a Frecvența de 14178 kHz.

Aici este "masa rotundă" a iubitorilor de semnale de studio și modalități de a le primi. Aceasta este o masă rotundă, care nu are timp. Munca se efectuează aproape nori. În lume există un pic mai mult de 100 de amatori de radio activi care utilizează aceste tehnologii nu sunt foarte deranjate de QRM, au obținut deja un succes semnificativ în echiparea stațiilor lor și nu numai amplificatoarele de putere transceivere de înaltă calitate (adesea de înaltă clasă de putere), dar și cele mai importante antene direcționale eficiente

Mulți se aude la aproape orice pasaj și, uneori, în absența lui Bill, W2ONV, de la New Jersey - cel mai vechi radio amator și un specialist mare în domeniul procesării sonore utilizând dispozitive DSP externe având o putere de 1,5 kW (maximă admisă SUA) și două canale de undă de patru elemente Sfazate, a fost aproape întotdeauna auzit în Europa de mulți ani la o frecvență de 14178 kHz care lucrează la această "masă rotundă" - vârste diferite, mai mult de la 30 la 80 de ani și Tonul de lucru este mai specificat amatorii radio ai grupului de vârstă mai înaintată și acest lucru nu este un omagiu pentru generația mai în vârstă, aceasta este o declarație a faptului că au un mare succes în domeniul prelucrării digitale, deoarece dețin suficiente cunoștințe și Echipamente mai grave.

Radio amatori la "14178" - cei răi și calme, complet entuziaști, care sunt întotdeauna mulțumiți de propria lor afacere și le oferă toată asistența unei mari contribuții la dezvoltarea de procesare a sunetului, aceiași amatori radio, plasarea informațiilor utile Pe paginile lor web de pe Internet, mulți vor fi de acord că John, Nu9N, a creat un site web pe Internet, a făcut o contribuție imensă la dezvoltarea acestei zone (www.nu9n.com), unde a postat un manual practic pe utilizarea utilizării de dispozitive externe de procesare digitală, secvența conexiunii lor (întrebare foarte importantă) Setarea parametrilor pe site-ul NU9N pot fi, de asemenea, descărcați eșantioane de semnale DSP ale multor amatori radio pentru a le asculta destul de interesante.

Din păcate, în planul cantitativ al postului de la fosta Uniune, 14178 kHz este foarte slab - Vasily, ER4DX, Igor, EW1MM, Sergey, EW1DM, Serghei, RW3PS, Victor, Ra9fif și Oleg, RV3AAJ (fără alte date) afectează Lipsa finanțelor suplimentare Achiziționarea de echipamente audio, precum și mentalitatea oamenilor - când nu există timp și bani pentru a face acest lucru, înseamnă că este rău, înseamnă că nu este necesar să fie evident, ar trebui să fie necesar să se concentreze asupra faptului că toate direcțiile de amatori au dreptul la viață, fie competiții IT, QRP (sau Qro), DX'ing, și chiar absența unor cunoștințe despre Morse, o limbă străină și multe altele - aceasta este De asemenea, o "direcție" și noi, din păcate, până acum par să fie obișnuiți să se obișnuiască cu ea.

Dorim "tinerii" (10 ani pentru radio - un termen mic) în hobby-ul lor, iar toți cei care au obținut deja rezultate în alte zone, vă invit să vă alăturați comunității de semnale de studio, în cele din urmă, Nu este nimic mai interesant pentru debut.

Acest articol deschide o serie de publicații dedicate procesoarelor de semnalizare Digital TMS320C6678 multi-core. Articolul dă vedere generala despre arhitectura procesorului. Articolul reflectă materialele practice oferite de ascultători în cadrul cursurilor de formare avansată cu privire la "procesoarele multi-core ale procesului digital de procesare a semnalelor C66X de către Texas Instruments" efectuate în Ryazan de Stat Radio Engineering University.

Procesoarele de semnal digital TMS320C66XX sunt construite de arhitectura Keystone și sunt procesoare de semnal multi-core de înaltă performanță, care lucrează atât cu punct fix, cât și cu punct plutitor. Arhitectura Keystone este un principiu al fabricării sistemelor multi-core pe un cristal, care vă permite să organizați funcționarea efectivă a unui număr mare de nuclee, acceleratoare și periferice de tip RISC, cu o lățime de bandă suficientă a datelor interne și externe Canalele de transfer, baza componentelor hardware: Multicore Navigator (controler de date interfață internă), TERANET (Autobuz intern de transfer de date), controler multicore de memorie partajată (controler de acces) și hyperlink (interfață cu dispozitive externe pe viteza intracralică).

Arhitectura procesorului TMS320C6678, procesorul cel mai de înaltă performanță din familia TMS320C66xx, este prezentat în figura 1. Arhitectura poate fi împărțită în următoarele componente principale:

  • set de nuclee de funcționare (corepack);
  • subsistemul de lucru cu memorie internă și externă generală (subsistem de memorie);
  • periferice;
  • coprocesor de rețea (coprocesor de rețea);
  • controler de redirecționare internă (Navigator multicore);
  • module hardware de service și teranet intern de anvelope.

Imaginea 1. Total TMS320C6678 Arhitectura procesorului

Procesorul TMS320C6678 funcționează pe o frecvență de ceas de 1,25 GHz. Funcționarea procesorului se bazează pe un set de nuclee de funcționare C66X Corepack, numărul și compoziția care depind de modelul specific al procesorului. CSP TMS320C6678 include 8 nuclee de tip DSP. Kernel-ul este un element de calcul de bază și include blocuri de calcul, seturi de înregistrare, software, software și memorie de date. Memoria inclusă în kernel se numește local.

În plus față de memoria locală, există o memorie generală pentru toate miezurile - memoria generală a procesorului multi-core (memoria partajată multicore MSM). Accesul la memoria partajată este realizat prin subsistemul de gestionare a memoriei (subsistemul de memorie), care include, de asemenea, o interfață de memorie externă EMIF pentru schimbul de date între procesor și chips-uri de memorie externă.

Coprocesorul de rețea crește eficiența procesorului în compoziția diferitelor tipuri de dispozitive de telecomunicații, implementarea tipului hardware pentru această sferă de sarcină de prelucrare a datelor. Funcționarea coprocesorului se bazează pe acceptarea pachetelor de date de pachete (accelerator de pachete) și acceleratorul de securitate. Specificația procesorului enumeră setul de protocoale și standarde susținute de aceste acceleratoare.

Dispozitivele periferice includ:

  • Serial RapidIo (SRIO) Versiunea 2.1 - Oferă rata de transfer de date la 5 Gbaud pe linie cu numărul de linii (canale) - la 4;
  • PCI Express (PCIE) Versiunile GEN2 - Oferă rata de transfer de date la 5 Gbaud pe linie cu numărul de linii (canale) - la 2;
  • Hyperlink. - interfața anvelopei interioare care permite procesoarele de comutare construite de arhitectura Keystone direct unul cu celălalt și schimbul de intraralitate; Rata de transfer de date - până la 50 de Gbaud;
  • Gigabit Ethernet (GBE) Oferă rate de transfer: 10/100/1000 Mbps și este susținută de un accelerator hardware comunicații de rețea (coprocesor de rețea);
  • EMIF DDR3. - interfața de tip memorie externă DDR3; Are un autobuz de 64 de biți, oferind spațiu de memorie adresabil de până la 8 GB;
  • EMIF. - interfața memoriei externe a scopului general; Are un biți de 16 biți și poate fi utilizat pentru a conecta blițul NAND de 256 MB sau 16MB și nici un bliț;
  • TSIP (porturile seriale de telecomunicații) - port serial de telecomunicații; Oferă rate de transfer la 8 Mbps pe linie cu numărul de linii - la 8;
  • UART. - port serial asincron universal;
  • I2C. - anvelopă de comunicare internă;
  • GPIO. - Intrare generală - 16 concluzii;
  • Spi. - interfață serială universală;
  • Cronometre (cronometre) - Folosit pentru a genera evenimente periodice.
Modulele hardware ale serviciilor includ:
  • modul de depanare și urmărire (Debug și Trace) - vă permite să primiți instrumente de depanare acces la resursele interne ale procesorului de lucru;
  • boot rom (boot rom) - stochează programul inițial de încărcare;
  • hardware Semaphore. - servește pentru suportul hardware pentru organizarea de partajare a proceselor paralele la resurse comune procesor;
  • modulul de gestionare a alimentării - implementează controlul dinamic al modurilor de putere ale componentelor procesorului pentru a minimiza consumul de energie la momentele în care procesorul nu funcționează în totalitate;
  • schema FAPC. - Formulare interne frecvențe de ceas procesor dintr-un semnal de tact de referință extern;
  • controler de acces direct de memorie directă (EDMA) - gestionează procesul de transfer de date, descărcarea miezurilor de funcționare a CSP și a fi o alternativă la multicore navigator.
Controlerul intern de redirecționare (Multicore Navigator) este un modul hardware puternic și eficient responsabil pentru arbitrajul de date între diferitele componente ale procesorului. Sistemele multi-core din cristalul TMS320C66XX sunt dispozitive foarte complexe și pentru a organiza schimbul de informații între toate componentele unui astfel de dispozitiv, este necesar un bloc hardware special. Multicore Navigator permite nuclei, dispozitive periferice, dispozitivele gazdă nu își asumă funcțiile de control al schimbului de date. Când o componentă a procesorului trebuie să trimită o serie de date într-o altă componentă, aceasta indică pur și simplu controlerul, care și unde să se transfere. Toate funcțiile pentru expedierea în sine și sincronizarea expeditorului și a destinatarului ia navigatorul multicore.

Baza funcționării procesorului multi-core TMS320C66XX din poziția de schimb de date de mare viteză între toate componentele de procesoare numeroase, precum și modulele externe, este anvelopa internă a TERANET.

În articolul următor, arhitectura nucleului de operare C66x va fi discutată în detaliu.

1. Ghid de programare multicore / sprab27b - august 2012;
2. TMS320C6678 Multicor Fixed and plower-Point-Point Procensor Prossor Date Manual / SPRS691C - Februarie 2012.

Procesor digital DSP de semnal (procesor de semnal digital)

CaracteristiciDSP.

DSP sunt procesoare specializate pentru aplicații care necesită calcul intensiv.
Dacă vă apropiați, de exemplu, procesul de înmulțire a două numere, menținând rezultatul în microprocesoarele tradiționale, puteți vedea modul în care este consumat timpul mașinii: mai întâi eșantionarea de comandă (adresa de comandă este setată la magistrala de adrese), Apoi, primul operand (adresa operandului este setat la autobuzul de adrese), apoi operandul este transferat la baterie, apoi există o probă a celui de-al doilea operand etc. Accelerarea acestui proces în procesorul de uz general este imposibilă din cauza prezenței busului de adrese și a singurei magistrale de date, precum și o singură bancă de date. Având în vedere acest lucru, toate operațiunile de extragere a operanilor din memorie, eșantioane de comandă și salvați operandul sunt efectuate secvențial utilizând același autobuz de date și autobuz de adrese. În plus, dacă luați în considerare funcționarea summării ciclice a seriei aritmetice, puteți vedea că nu există timp în care nu există timp pentru memoria comenzii primei cicluri, cu verificarea condițiilor ciclului (contor) și reveniți la Prima echipă. De asemenea, există costuri mari neproductive atunci când tranziția către o subrutină și returnare (înregistrare și restaurare a valorilor de înregistrare din stivă) și cu multe alte operațiuni. Dacă luați în considerare o cantitate mare Operații matematice Atunci când efectuează procesarea semnalului digital, devine clar că pierderile foarte sensibile sunt inevitabile în acuratețea calculării atunci când rotunjind, care nu pot aduce decât să afecteze rezultatul total. Acest lucru se întâmplă din cauza aceluiași bit a tuturor registrelor de procesoare de uz general.
Cu procesarea digitală a semnalelor, toate aceste costuri nu sunt permise. Pentru a depăși acest deficit de procesoare de uz general și s-au dezvoltat semnale digitale (procesor DSP - semnal digital).

Treizeci de arhitectură Harvard

Caracteristica sa constă în primul rând în faptul că, spre deosebire de cele două anvelope familiare pentru noi: anvelopele de adresă și autobuz de date, precum și o bancă de memorie, DSP are cel puțin 6-7 anvelope diferite și 2-3 bancă de memorie. Această caracteristică este destinată maximizării executării operațiunii de multiplicare cu conservarea rezultatului, care este, fără îndoială, cea mai consumată și cea mai intensă a resurselor în procesarea digitală a semnalelor. Arhitectura DSP permite pentru un ciclu de mașină legume și fructe:

  • selectarea comenzii prin intermediul adresei de autobuz și anvelopele de autobuz;
  • selectarea a două operandii pentru operația de multiplicare prin două autobuze de adrese de date;
  • Îmbunătățirea operanilor în baterii prin două anvelope de date;
  • operațiunea de multiplicare;
  • salvați rezultatul în baterie.

Astfel, procesul Harvard Architecture vă permite să efectuați aproape orice operație pentru un ciclu de mașină.
Ca exemplu de eficiență a utilizării DSP la implementarea algoritmilor de procesare a semnalului digital, puteți aduce următorul fapt: Timpul de finalizare al transformării complexului de 1024 puncte Fourier este de 20 ms pentru 486Dx2 66 MHz (32-biți) și 3,23 mc pentru 24 de biți 33 MHz DSP56001 Motorola sau Motorola 3.1 MS pentru 32 de biți 33 MHz DSP TMS320C30 cu instrumente aritmetice plutitoare Texas.
Cu toate acestea, după cum sa menționat deja, procesoarele de semnal digital au onoruri nu numai performanțe ridicate măsurate în timpul operațiilor de multiplicare / acumulare (MIPS - milioane de echipe pe secundă), dar și caracteristici cum ar fi o secvență de execuție a programului, operațiuni aritmetice și adresarea memoriei , Permițând reducerea cheltuielilor de timp neproductive la un nivel minim. În general, DSP diferă de alte tipuri de microprocesoare și microcontrolere în următoarele cinci caracteristici principale:

  • Aritmetică rapidă.

DSP - procesorul trebuie să efectueze execuția operațiunilor de multiplicare, multiplicarea cu acumularea, schimbarea ciclică, precum și operațiile aritmetice și logice standard.

  • Volum dinamic avansat pentru operarea de multiplicare / acumulare.

Funcționarea de calcul a unei anumite secvențe de valori este fundamentală pentru algoritmii implementați pe DSP. Protecția excesivă este necesară pentru a evita pierderea datelor.

  • Selectarea a două operande pentru un singur ciclu.

Evident, pentru majoritatea operațiunilor efectuate de DSP, sunt necesare două operanzi. Astfel, pentru a obține performanțe maxime, procesorul trebuie să poată produce o probă simultană de două operanzi, care necesită, de asemenea, prezența unui sistem de adresare flexibil.

  • Prezența tampoanelor ciclice hardware (încorporate și externe).

Clasa largă de algoritmi implementați pe DSP necesită utilizarea tampoanelor ciclice. Suportul hardware pentru întoarcerea ciclică a indicatorului de adrese sau a adreselor modulare reduce costurile de non-producție ale timpului procesor și simplifică punerea în aplicare a algoritmilor.

  • Organizarea de cicluri și sucursale fără pierderi în performanță.

Algoritmii DSP includ o mulțime de operații repetitive care pot fi implementate sub formă de cicluri. Posibilitatea de a organiza secvența de execuție a programului de cod în ciclu fără pierderi de performanță se distinge prin DSP de la alte procesoare. În mod similar, pierderea de timp atunci când efectuați o operațiune de ramură este, de asemenea, inacceptabilă atunci când prelucrarea digitală a semnalelor.
Cu toate acestea, nu ar trebui, totuși, să credem că DSP poate înlocui complet procesoarele de scop general. De regulă, procesoarele de semnale digitale au un sistem simplificat de comenzi care nu permit operațiuni efectuate care nu sunt legate de calculele matematice cu aceeași eficiență ca procesoarele cu scop general. Încercarea de a combina într-o singură putere de procesoare în calculele matematice și flexibilitatea în operațiunile unui alt tip duce la o creștere nejustificată a costurilor. Prin urmare, DSP sunt folosite mai des sub formă de coprocesoare (matematică, grafică, acceleratoare etc.) cu procesorul principal sau ca procesor independent, dacă acest lucru este suficient.

DSP.firmeMotorola.

Motorola produce în prezent trei familii de procesoare de semnal digital. Acesta este seria DSP56100, DSP56000 și DSP96000. Toate microcircurile seriei se bazează pe arhitectura DSP56000 și diferă în biți (16, 24, 32 de biți) și unele dispozitive încorporate. Astfel, se ajunge la compatibilitatea microcircuitelor din toate cele trei familii. Toate firmele DSP Motorola sunt construite în conformitate cu studiul identic Harvard Architecture descris mai devreme cu un număr mare părți componente, porturi, controlere, bănci de memorie și anvelope care lucrează în paralel pentru a obține o viteză maximă.
Transfer de date Se întâmplă pe anvelopele de date bidirecționale (una pentru DSP56100 (XDB) și două pentru DSP56000 și DSP96000 (XDB și YDB)), magistrala de date de program (PDB) și un autobuz comun de date (GDB). În plus, DSP96000 are un autobuz separat de acces direct (DDB). Transmiterea datelor între anvelope are loc prin intermediul internei Dispozitiv de gestionare a anvelopei.
Adresați-vă Se efectuează pe două anvelope unidirecționale: autobuzul de adrese de date și de programe.
Unitatea de manipulare a Bita. Vă permite să gestionați în mod flexibil starea oricărui bit în registrele și celulele de memorie. Prezența unei astfel de oportunități este un avantaj în raport cu alți utilizatori DSP.
Aritmetic și dispozitiv logic (allu) Efectuează toate aritmetice și operații logice și are în compoziția sa registrele de intrare, bateriile, registrele de expansiune a bateriilor (8 biți, permițând peste 256 de suprasolicitare fără pierderi de precizie), bloc de multiplicare paralel cu conservare (MA), precum și registrele de schimbare. Sistemul de comandă flexibil vă permite Pentru a efectua ALU pe un ciclu de comandă de multiplicare, multiplicarea cu conservarea rezultatelor, sumarea, scăderea, schimbarea și operațiunile logice. Caracteristica caracteristică a DSP a companiei Motorola este capacitatea de a dubla registrele de intrare ale Allu și o creștere în acest mod de descărcare a numărului prelucrat. O altă caracteristică importantă este prezența unei operațiuni de divizare, adesea absentă de la alți producători și o operație de multiplicare înlocuibilă pentru un număr invers, ceea ce duce la pierderea acurateței.
Unitatea de formare a adresei Efectuează toate calculele legate de definiția adreselor în memorie. Această unitate funcționează independent de celelalte blocuri de procesoare. Pentru un ciclu, două operații de citire pot fi efectuate din memorie sau din o operație de înregistrare. DSP-urile Motorola are un sistem extrem de puternic de adresare, care vă permite să produceți aproape orice manipulare cu date pentru o comandă. Această caracteristică importantă este benefică pentru DSP, fabricată de companie, de la analogi. Adresarea modulului este convenabilă pentru organizarea tampoanelor de apel fără a verifica granița, ceea ce face posibilă evitarea timpului neproductiv. Posibilitatea de a aborda inversiunea biților semnificativi facilitează punerea în aplicare a BPF.
bloc Birou Execuţie program Conține 6 registre, printre care Ciclul de adrese pointer. și Counter CicluriPermițându-vă să organizați suport hardware pentru organizarea de cicluri în compania DSP Motorola, la care ciclurile de mașini suplimentare nu sunt cheltuite pentru a verifica condițiile de ieșire din ciclu și a schimba contorul ciclului. Un număr de repetiții sunt indicate în mod clar în comanda de organizare a ciclului.
Stack-ul sistemului este o parte separată a celor 15 cuvinte de memorie RAM și poate stoca informații despre 15 întreruperi, 7 cicluri sau 15 ieșiri în subrutină. Datele din stivă sunt citite într-un singur ciclu, reducând astfel costurile de non-producție ale timpului procesorului.
Principala caracteristică distinctivă a DSP este prezența tuturor microcircuitelor Emulator intrachrystalpermițându-vă să depanați programe fără utilizarea hardware suplimentar. Prin urmare, nu este nevoie să cumpărați agenți scumpi de depanare. Emulatorul vă permite să înregistrați / citiți registrele și celulele de memorie, setarea punctelor de oprire, execuția programului pas cu pas și alte acțiuni prin trimiterea comenzilor la un autobuz cu 4 cabluri.
Pentru a reduce consumul de energie la momentele în care calculele nu sunt efectuate, sunt furnizate două moduri cu consum redus de energie: Stop.și Aștepta.
Pentru a lucra, împreună cu alte procesoare și canale de memorie directe, este furnizată o memorie încorporată. Interfață gazdă.
Afișarea tuturor proprietăților de mai sus necesare pentru prelucrarea semnalului digital, DSP-ul Motorola are un sistem de comandă extrem de puternic și flexibil, care permite utilizatorului să funcționeze convenabil și eficient cu procesoarele.

DSP96000 familie

Familia DSP96000 are o arhitectură pe 32 de biți și suportă operațiuni de puncte plutitoare. Microcircuitele de familie sunt proiectate pentru sisteme informatice Multimedia. DSP din această serie poate funcționa, de asemenea, ca jetoane independente, iar prin două porturi independente pe 32 de biți pot schimba în mod consecvent date cu alte procesoare.
Microcircuitele de familie sunt în compoziția lor 6 bănci de memorie, 8 anvelope și 4 unități autonome de calcul: Allu, o unitate de comandă a programului, o unitate de generare dublă de adrese și un controler de acces direct cu dual-canal încorporat.
Caracteristicile microcircuitului DSP96000:

  • 49,5 MIPS la 40 MHz
  • 60 mflops la 40 MHz, ciclu 50 ns
  • Organizația pe 32 de biți
  • 2 banca de memorie bancară 512x32 biți
  • 2 Banca de memorie de date 512x32 biți
  • Programe RAM 1024x32 biți
  • booting ROM volumul 56 octeți
  • memorie externă adresabilă 2x232 Cuvinte 32 de memorie și programe de date
  • emulator încorporat
  • 2 canale de acces la memorie directă
  • 2 schimb de canale cu procesoare externe
  • caz cu 223 de concluzii în carcasa PGA sau QFP

DSP.firmeTexas.Instrumente

DSP-ul acestei companii este reprezentat de următoarele microprocesoare: TMS 32010, TMS 320C20, TMS 320C25, TMS 320C30, TMS 320C40, TMS 320C50.

Caracteristicile arhitecturii TMS320C25

Arhitectura TMS320C2X se bazează pe arhitectura TMS32010 - primul membru al familiei microprocesoare DSP. În plus, setul de comenzi sale se suprapune în setul de comenzi de microprocesor TMS32010, care economisește compatibilitate software jos sus.
Microprocesorul TMS320C2X are o baterie și utilizează arhitectura Harvard în care memoria de date și programele de memorie sunt separate în diferite spații de adrese. Acest lucru vă permite să suprapuneți complet apelul și execuția comenzii. Sistemul de comenzi include comenzi de schimb de date între două regiuni de memorie. În afara microprocesorului spațiului de memorie a datelor și programele sunt combinate în același autobuz pentru a maximiza gama de adrese în ambele zone de memorie și, în același timp, maximizați cantitatea de contacte de ieșire. În interiorul microprocesorului, spațiul și spațiul de date este afișat pe diferite anvelope pentru a crește puterea procesorului și viteza executării programului.
Creșterea flexibilității proiectării sistemului este asigurată de cristal de două blocuri de memorie RAM mari, dintre care unul poate fi utilizat atât ca memorie de memorie, cât și ca memorie de date. Majoritatea comenzilor procesoarelor sunt efectuate într-un singur ciclu al mașinii utilizând atât memoria externă a programelor de probă rapidă, cât și utilizarea. memorie interna BERBEC. Flexibilitatea microprocesorului TMS320C2X asigură, de asemenea, conectarea memoriei externe lente sau a dispozitivelor periferice utilizând semnalul Ready; Dar, în acest caz, comenzile sunt efectuate pentru mai multe cicluri.

Organizația de memorie

În cristalul TMS32020 există 544 de cuvinte pe 16 biți ale memoriei RAM, dintre care 288 de cuvinte (blocuri B1 și B2) sunt întotdeauna atribuite datelor și 256 de cuvinte (bloc B0) în diferite configurații ale procesorului pot fi utilizate fie ca memorie de date sau ca memorie de program. TMS320C25 În plus, este prevăzut cu un ROM deghizat (ROM), un volum de cuvinte 4k, iar TMS320E25 - memoria cuvintelor de 4k cu EPROM-ul ultraviolete EPROM.
TMS320C2X este furnizat de trei spații de adrese separate - pentru memoria programelor, pentru memoria de date și pentru dispozitivele I / O, așa cum se arată în fig. 6.5. Aceste spații din afara cristalului diferă utilizând semnale -PS, -DS, - sunt semnale (pentru spații de program, date, intrare / ieșire, respectiv). Blocurile de memorie B0, B1, B2 situate pe cristal sunt acoperite cu cantitatea de cuvinte de memorie 544 cu acces arbitrar (RAM). RAM B0 (256 de cuvinte) este situată pe 4 și 5 pagini de memorie de date, dacă este atribuită datelor sau prin adrese\u003e FF00 -\u003e FFFF, dacă face parte din memoria programului. Blocul B1 (numai date) este situat pe 6 și 7 pagini, iar blocul B2 ocupă cele 32 de cuvinte mai vechi 0 pagini. Rețineți că partea rămasă a paginii este ocupată de 6 registre adresabile și de zona de backup; 1 - 3 pagini sunt, de asemenea, o zonă de rezervă. Zonele de rezervă nu pot fi utilizate pentru stocarea informațiilor, când citirea conținutului acestora nu sunt definite.
Memoria internă a programului (ROM), situată pe un cristal de procesor poate fi utilizată ca un cuvânt de memorie de 4K de 4k. Pentru a face acest lucru, contactul MP \u200b\u200b/ * MC trebuie să fie servit un semnal de nivel scăzut. Pentru a interzice utilizarea câmpului intern ROM pe MP / * MC, trebuie să trimiteți un nivel ridicat.

Memorie externa și interfața I / O

Microprocesorul TMS32020 suportă gama largă Sisteme de interfață. Spațiul de adrese al datelor, programelor și I / O oferă conjugării de memorie și dispozitive externe, ceea ce mărește capacitățile sistemului. Interfața de memorie locală constă în:

  • Anvelopă de date pe 16 biți (D0-D15);
  • Anvelopă de adresă pe 16 biți (A0-A15);
  • spații de adrese, programe și intrare / ieșire selectate prin semnale (* DS, * PS și * IS);
  • diferite semnale de gestionare a sistemului.

Semnalul R / * W Controlează direcția transmisiei, iar semnalul * strb controlează transmisia.
Spațiul I / O conține 16 porturi pentru intrări și 16 porturi pentru ieșire. Aceste porturi oferă o interfață completă pe 16 biți cu dispozitivele de autobuz de date externe. Intrare / ieșire de unică folosință utilizând comenzi în și OUT este efectuată pentru două cicluri de comandă; Cu toate acestea, utilizarea contorului de repetare reduce timpul de acces la port la primul ciclu.
Utilizarea I / O este simplificată de faptul că intrarea / ieșirea este de asemenea efectuată, precum și recursul de memorie. Dispozitivele I / O sunt afișate în spațiul de adresare / ieșire, utilizând adresa externă a procesorului și magistrala de date, în același mod ca memoria. Când se adresează memoriei interne, magistrala de date se află în starea a treia și semnalele de control în starea pasivă (înaltă).
Interacțiunea cu dispozitivele de memorie și I / O la diferite viteze este însoțită de un semnal gata. Atunci când comunicați cu dispozitivele lente, TMS320C2X așteaptă dispozitivul până când dispozitivul își completează munca și semnează procesorul prin intermediul liniei gata, după care procesorul va continua să funcționeze.

Dispozitiv logic aritmetic central

Dispozitivul logic al armei centrale (Calu) conține un registru de schimbare pe 16 biți, un multiplicator paralel 16 x 16, un dispozitiv aritmetic de 32 biți (ALU), baterie pe 32 de biți și mai multe registre suplimentare de schimbare situate la ieșirea din multiplicator Și la ieșirea bateriei.
Orice operație ALU este efectuată în următoarea secvență:

  1. datele sunt capturate de la RAM la magistrala de date,
  2. datele trece printr-un registru de schimbare de scalare și prin Alu, în care se efectuează operații aritmetice,
  3. rezultatul este transmis la baterie.

O intrare la ALU este întotdeauna conectată la ieșirea acumulatorului, iar cea de-a doua poate primi informații din modul multiplicatorului produsului (PR), fie încărcarea din memorie printr-un registru de schimbare a scalării.

Operațiuni transportoare

Transportorul de comandă constă dintr-o secvență de operații de acces la magistrala exterioară care apare în timpul executării comenzilor. Transportorul "Predest-decodare-executie" este, de obicei, unonentient pentru utilizator, cu excepția unor cazuri atunci când transportorul trebuie întrerupt (de exemplu, atunci când ramificarea). În timpul funcționării transportorului, preelectorul, decodarea și execuția comenzilor sunt independente unul de celălalt. Acest lucru permite comenzilor să se suprapună. Deci, pentru un singur ciclu, două sau trei echipe pot fi active, fiecare în diferite etape ale muncii. Prin urmare, se dovedește un transportor cu două niveluri pentru TMS32020 și trei niveluri pentru TMS320C25.
Numărul de niveluri ale transportorului nu afectează întotdeauna viteza executării comenzii. Cele mai multe comenzi sunt efectuate în același număr de cicluri, indiferent de comenzile selectate din memorie: RAM externă, internă sau rom intern.
Hardware-ul suplimentar care există pe procesorul TMS320C25 vă permite să extindeți numărul de niveluri transportoare la trei, ceea ce mărește performanța procesorului. Aceste fonduri includ contorul de pre-gravant (PFC), stiva cu microunde pe 16 biți (MCS), registrul de comandă (IR) și registrul de coadă de comandă (QIR).
Cu un transportor PFC cu trei niveluri conține adresa următoarei comenzi care trebuie pregătită. De îndată ce se efectuează prefracția, echipa este încărcată în IR. Dacă IR stochează o comandă care nu este încă îndeplinită, comanda premedată este plasată în QIR. După aceasta, PFC crește la 1. Odată ce comanda curentă este executată, comanda QIR va fi supraîncărcată în IR, pentru o mai bună execuție.
Contorul de comandă (PC) conține adresa comenzii care urmează să fie finalizată după cum urmează și nu este utilizată pentru operațiile de captare.
Dar, de obicei, PC-ul este utilizat ca pointer la poziția curentă din program. Conținutul PC-ului crește după fiecare comandă executată. Atunci când apare o întrerupere sau un apel subrotină, conținutul PC-ului este plasat pe stivă, astfel încât în \u200b\u200bviitor să vă puteți întoarce la locul dorit al programului.
Ciclurile de pre-grad, decodare și execuție a transportorului sunt independenți unul de celălalt, vă permite să suprapuneți comenzile executabile în timp. În timpul oricărui ciclu, trei comenzi pot fi active simultan, fiecare la diferite etape de finalizare.



Ți-a plăcut articolul? Împărtășește-l