Documente Academic
Documente Profesional
Documente Cultură
Curs AD 2
Curs AD 2
a)
2 3 4 5 6 20 7 7 GND 2 3
b)
2 3 2 3
c)
TXD RXD
TXD RXD
TXD RXD
CTS DSR
5 6 20 DTR GND
GND
d)
e)
Fig. 3.1 Tipuri de conexiuni utilizate n interfaarea serial: a) varianta U minimal; b) varianta handshake; c) handshake cu confirmare DTR i DSR; +25 V d) transmisie cu punte pe semnalele de LOW handshake; e) conectarea unui plotter.
+3 V 0V -3 V -25 V nedefinit HIGH
Viteza de transmisie este dat n BAUD 1 . O alt unitate uzual n cazul transmisiilor este BPS (Bits Per Second). In cazul comunicaiei seriale ntre dou echipamente, exprimarea vitezei de transmisie n BAUD i BPS este identic. n cazul conectrii lor prin intermediul modemurilor, ns, acest lucru nu mai este valabil.
1
BAUD este unitatea de msurare a numrului de schimbri pe secund ale strii unei linii, denumit dup Jean Maurice Emile Baudot, un fost ofier al Serviciului Francez de Telegrafie. El a proiectat, la sfritul secolului al XIX-lea, primul cod pe 5 bii pentru reprezentarea unitar a caracterelor alfabetului.
Valorile uzuale pentru viteza de transmisie (Baudrate) sunt date mai jos: 50 110 300 600 1200 2400 4800 9600 19200 38400 Formatul de transmisie al datelor este descris prin urmtorii parametri: Baudrate (viteza de transmisie); Startbit (bitul 2 de start); Numrul de bii de date; Paritatea; Numrul de bii de stop. Prin intermediul biilor de start i stop se determin nceputul, respectiv sfritul secvenei de date transmis. Numrul de bii de date este, de obicei, 7 sau 8. Prin intermediul testului de paritate se pot evidenia eventualele erori de transmisie. n acest sens, exist trei posibiliti de detecie: No Parity: Nu se face nici un test de paritate; Even parity (paritate par): Emitorul numr toi biii de date care au valoarea 1 i seteaz bitul de paritate cu 1, dac suma a fost impar, i cu 0, dac suma a fost par. Receptorul adun biii de date cu valoarea bitului de paritate. Suma este totdeauna (n cazul unei transmisii corecte) par; n caz contrar, a survenit o eroare la transmisia datelor; Odd Parity (paritate impar): Metoda corespunde testului de paritate par, cu deosebirea c suma biilor de date i a celui de paritate este totdeauna (la emitor) impar. n fig. 2.22 se descrie procesul de transmitere a caraterului 2 (n reprezentarea binar corespunztoare codului ASCII) cu protocolul 1 bit de start, 7 bii de date, 2 bii de stop, paritate impar.
Termenul bit a aparut pentru prima data scris cu sensul utilizat astzi n informatic n anul 1949, ales de John Tuckey care s-a decis (n timp ce lua prnzul) pentru o variant mai comod dect denumirile de bigit sau binit.
i alinierea utilizatorilor, prin utilizarea unor conexiuni externe, la un sistem de calcul; disponibilitatea circuitelor integrate I2C sub amprente de tip SO (Small Outline), VSO (Very Small Outline) i DIL (Dual In Line) reduce necesitile de spaiu.
Fig. 3.4 Exemplu de sistem organizat n jurul magistralei I2C. Pentru a satisface aceste criterii, este necesar utilizarea unei magistrale seriale, care dei nu permite rate de transfer a informaiilor att de mari ca o magistral de interconectare de tip paralel, asigur minimizarea numrului firelor i pinilor de interconectare ntre diversele circuite utilizate n proiect. Dispozitivele care intercomunic prin intermediul unei magistrale seriale necesit utilizarea unor protocoale care au rolul de a elimina erorile, pierderile de informaii i conflictele pe magistral i de asemenea, posibilitatea ca unele dispozitive rapide s poat comunica cu dispozitive lente. Este necesar ca sistemul s poat funciona independent de numrul de dispozitive nglobate n structura sa, sau cu alte cuvinte, adugarea de dipozitive n structura sistemului
Fig. 3.5 Interconectarea a dou dispozitive pe magistrala I2C. Magistrala I2C este o magistral de tip multi-master. Aceasta nseamn c mai multe dispozitive care pot controla magistrala pot fi cuplate la aceasta. Posibilitatea de a cupla mai mult de un dispozitiv master la magistral nseamn c mai mult de un singur dispozitiv poate ncerca s iniieze un transfer pe magistral, la acelai moment de timp. Pentru a se evita aceast situaie de incertitudine, a fost elaborat o procedur de arbitrare a prioritilor, bazat pe conectarea de tip I-cablat a tuturor dispozitivelor la magistral. Semnalele de ceas pe durata arbitrrii de prioriti reprezint rezultatul sincronizrii semnalelor de ceas generate de cele dou dispozitive master prin utilizarea funciei de tip I-cablat a liniilor SCL. Generarea semnalelor de ceas pe magistral revine ntotdeauna n sarcina dispozitivelor master; fiecare dispozitiv
master genereaz propriul su semnal de ceas pe durata transferului de date pe magistrala sistemului. Semnalele de ceas de pe magistral pot fi doar alterate numai dac un dispozitiv slave lent foreaz linia de ceas la nivel logic LOW sau de un alt dispozitiv master, pe durata arbitrrii prioritiilor. Ambele linii, SDA i SCL, sunt bidirecionale i conectate printr-o rezisten de pull-up la tensiunea de alimentare. Atunci cnd magistrala este liber, ambele linii sunt n starea HIGH. Etajul de ieire al dispozitivului conectat la magistal trebuie s fie de tip open-drain sau open-collector pentru a se realiza funcia I-cablat. Pe magistrala I2C, transferurile de date pot fi efectuate cu rate de maxim 100 kbii/s n modul standard sau maxim 400 kbii/s n modul rapid. Numrul de dispozitive cuplabile la magistrala I2C este limitat doar de ncrcarea capacitiv (maxim 400 pF) a liniilor magistralei.
b) Arbitrarea prioritilor Un dispozitiv master poate iniia un transfer de date doar dac magistrala este liber. Dou sau mai multe dispozitive master de magistral pot genera o condiie de START pe durata timpului de HOLD din condiia de START. Arbitrarea are loc prin intermediul liniei de date, SDA, pe durata ct linia de ceas, SCL, este pe nivel HIGH. Astfel, unul dintre dispozitivele master transmite un nivel HIGH pe magistral, n timp ce cellalt, care transmite un nivel LOW, i va dezactiva etajul de ieire deoarece nivelul logic de pe magistral nu corespunde cu nivelul logic transmis de ctre acesta. Arbitrarea poate continua pentru mai muli bii. Prima etap const n compararea biilor de adres. Dac dou dispozitive master ncearc s adreseze acelai dispozitiv slave, arbitrarea continu cu compararea datelor. Deoarece adresele i datele sunt utilizate pentru arbitrarea magistralei, se constat c nu exist pierderi de informaie pe liniile magistralei pe durata acestui proces. Un dispozitiv master care pierde arbitrarea poate genera impulsuri de ceas pn la ncheierea procesului de transmitere a octetului n cursul cruia a pierdut arbitrarea.
topologia tiered-star i poate fi structurat n nivele, deci poate avea pn la 5 distribuitoare (hub tiers). n mod uzual, controller-ul gazd (host controller) i hub-ul principal (de root) sunt implementate pe un acelai chip pe placa de baz a PC-ului. Controller-ul gazd controleaz transmisiile prin sistemul USB. Exist dou tipuri de host controllers: OHCI (Open-Host Controller Interface) i UHCI (Universal Controller Host Interface). Din punct de vedere al aplicaiilor, OHCI poate gestiona multiple tranzacii pentru un anumit periferic End Point (EP) ntr-un interval de 1 ms. Pe de alt parte, UHCI permite cte o tranzacie pentru fiecare EP n fiecare cadru de aplicaie (frame). Pachetele software ale echipamentelor USB trebuie s fie capabile s gestioneze comunicaia cu fiecare dintre aceste tipuri de controller-e. Un distribuitor principal acioneaz ca un port care se ataeaz echipamentului USB (fig. 2.25), permind multiple conexiuni la sistemul USB i detecteaz momentele cnd echipamentele sunt conectate sau deconectate de la sistem. De asemenea, el transmite mai departe traficul pe bus ntre portul trece-sus (upstream) i porturile trece-jos adiacente (downstream). Fiecare echipament dotat cu USB are alocate numere EP. Numrul EP0 este rezervat pentru configurarea echipamentelor de ctre gazd. El asigur un punct de comunicaie catre gazd prin intermediul descriptorilor EP. Descriptorii EP comunic atributele echipamentelor i caracteristicile acestora gazdei. n conformitate cu aceste informaii, gazda configureaz echipamentul i-i aloc driver-ul software corespunztor (USB client software). Celelalte EP pot fi considerate ca o funcie a echipamentelor i pot fi configurate separat pentru unul dintre tipurile de transfer pentru a comunica cu gazda. De exemplu, o aplicaie de tastatur, care se clasific n standardul USB Human Interface Device, HID, folosete EP0 pentru configurarea echipamentului (tastaturii) i poate folosi EP1 ca un transfer pe ntreruperi pentru trimiterea datelor (key-scanned data) ctre gazd. USB suport 4 tipuri de transfer de date: Control transfer - comenzi de cereri de transfer de la gazd ctre echipament; Interrupt transfer - transfer de date de la un interrupt driver device ctre gazd; Bulk trasfer - transferul unei cantiti mari de date; Isochronous transfer - pentru aplicaii care necesit rate de transfer constante.
PC PCI bus controller gazd root port (upstream port) distribuitor principal (root hub) Primul nivel de distribuire
distribuitor
DIO5 DIO6 DIO7 DIO8 REN GND GND GND GND GND GND GND LOGIC
Fig. 3.7 Conectorul HPIB. Legtura n stea asigur o configuraie mai avantajoas asigurnd distane minime ntre aparate i o vitez de comunicaie mai mare, de aceea este mai
recomandat. Legtura n serie permite o dispersare mai mare a aparatelor, dar o conectare imperfect la una dintre cuple poate crea probleme de reflexii pe cabluri sau chiar ntreruperea comunicaiei ntre aparate. De asemenea, viteza de comunicaie este mai mic, datorit traseelor mai lungi.
Fig. 3.8 Conectarea aparatelor la calculator prin bus-ul HPIB. Liniile de transfer de date (DIO1DIO8) sunt rezervate intrrilor i ieirilor. Ele sunt utilizate pentru msurri, instruciuni de programare cuvinte de stare, adrese, instruciuni de interfaare. Un octet de date este format din 8 bii transmii n paralel. Un mesaj poate s cuprind mai muli octei; aceti octei sunt transmii atunci n serie. Viteza de transfer poate atinge 1 Moctet/secund pentru o comunicaie bidirecional asincron. Liniile de gestiune a transferului sunt destinate s gireze transferul fiecrui octet de la un aparat emitor spre unul sau mai multe aparate receptoare i asigur protocolul de tip handshake ori de cte ori informaiile sunt transmise pe cele 8 linii ale bus-ului de date. Aceste linii sunt: DAV (DAta Valid); aceast linie informeaz c datele prezentate pe bus de la un emitor sunt valide; ele sunt comandate de emitor; NRFD (Not Ready For Data); aceast linie este acionat de controler n modul comand (ATN=1) i de receptor n modul date (ATN=0); NDAC (Not Data ACcepted); atunci cnd NDAC=1, datele nu sunt acceptate de receptor, sau n modul comand, comanda nu este acceptat de aparatul conectat la bus. Liniile de gestiune general, fiecare din cele cinci linii ale acestei grupe avnd o funcie de comand specific ntre controler i alte aparate ale sistemului:
ATN (ATteNtion); permite controlerului s indice instrumentelor c instruciuni i adrese sau date sunt prezente pe bus. Atunci cnd ATN=1 numai emitorul i receptorul adresai sunt vizai. n acest caz, pe bus-ul de date este trimis codul adresei emitorului. Dac ATN=0, codul reprezint date. Toate aparatele trebuie s priveasc n orice moment la aceast linie i atunci cnd pe ea se produce o schimbare, ele trebuie s rspund ntr-un interval de max. 200 ns. IFC (InterFace Clear); aceast linie poate fi pus pe 1 (sau adevrat) numai de ctre controler nainte de a pune interfeele conectate la bus ntr-o stare inactiv. Toate operaiunile n curs sunt atunci oprite pentru a permite repornirea de la o situaie neutr i uniform naintea tuturor operaiilor. SRQ (Service ReQuest); aceast linie este activat de toate aparatele care au de cerut un serviciu controller-ului. Aceast cerere poate ntrerupe o operaiune n curs. Atunci cnd mai multe aparate cer SRQ n acelai moment, controller-ul trebuie s efectueze o cutare pentru a depista aparatele respective i natura serviciului cerut. Aceast cutare se poate efectua fie n serie, fie n paralel. EOI (End Or Identify); dac ATN=0 (liniile DIO sunt pe modul date), aceast linie este activat (adic EOI=1 sau adevrat) de un emitor semnificnd faptul c octetul n curs este ultimul transmis pentru operaie. Dac ATN=1 (liniile DIO sunt n modul comand interfa), controller-ul activeaz linia EOI ntr-o cutare paralel. REN (Remote ENable); aceast linie este activat numai de controler pentru a comuta un aparat de la poziia comand de pe panoul frontal (sau comand local) pe poziia comand de la distan. Atunci cnd REN=0, aparatul revine la modul de comand local. Se disting, astfel, dou tipuri de mesaje : comenzi generale, date de controler i destinate interfeelor ncorporate aparatelor, acestea fiind mesaje de interfa. datele destinate aparatelor de msurare nainte de a le plasa ntr-o stare particular sau de primire a rezultatului obinut de la o msurare. Datele sunt furnizate de un emitor care poate fi controller-ul; acestea sunt mesaje pentru aparate. n acest fel se delimiteaz zonele de intervenie ale normei IEEE-488 care acioneaz prin comenzi asupra interfeei i prin mesaje asupra aparatelor. Mesajele pentru aparate Un mesaj pe cele 8 linii DIO este un mesaj de aparat (sau de date) dac linia ATN =0. Aceste date sunt emise de aparatul adresat ca vorbitor i primite de aparatele adresate ca asculttori sub controlul procedeului de tip handshake. Ele pot fi:
a) date de intrare: - date de comand, de exemplu instruciuni ale programului pentru un aparat particular; - date pentru afiare sau stocare. b) date de ieire: - datele unui rezultat al msurrii; - informaii de stare a aparatului. ntre aparatele conectate la sistemul de comunicare, este necesar s existe convenii asupra codificrii datelor. Se poate remarca faptul c norma definete numai modul transferului de date, dar nu i coninutul lor; acesta depinde de aparatul utilizat; la ora actual, convenia cea mai rspndit este codul ASCII. Mesaje de interfa Se disting, ca i n cazul mesajelor de aparat, mesaje de interfa multifilar i unifilar. Mesajele unifilare ATN, IFC i REN care comand anumite funcii ale aparatelor conectate la bus-ul HPIB au fost deja definite anterior. Aa cum s-a artat, este vorba de comenzi emise de controler interfeelor aparatelor. Un mesaj multifilar pe linia DIO este considerat ca o comand dac linia ATN = 1. El este codificat prin 7 bii trimii pe liniile DIO1DIO7.
Fig. 3.9 Dispunerea pinilor portului Centronics: a) conector cu 36 de pini (Amphenol-seria 57); b) conector cu 25 de pini (Subminiatur-D) Data 1 Data 8: linii de date Acknowledge (activ LOW): atunci cnd echipamentul exterior (imprimanta) a preluat datele transmise, transmite un semnal de ntiinare cu durata de 30 s; Busy: apariia unei erori n timp ce imprimanta preia datele, este n procesul de imprimare sau n starea off-line, determin activarea acestui semnal. Paper Empty: acest semnal este activ pn cnd senzorul va detecta, din nou, prezena colilor de hrtie. Select: cu ajutorul acestui semnal imprimanta anun faptul c este accesat i activ. Urmtoarele semnale nu aparin, de fapt, standardului (n sensul de variant iniial a interfeei): Autofeed (activ LOW): o dat cu activarea acestei linii, imprimanta insereaz la sfritul fiecrei linii cte un salt la linie nou; Reset (activ LOW): cu semnalul trimis pe aceast linie, imprimanta se va seta ntr-o stare predefinit; Error (activ LOW): acest semnal se activeaz o dat cu apariia unei erori sau atunci cnd imprimanta este n starea off-line; Select Input (activ LOW): transmiterea unui semnal pe aceast linie determin selectarea imprimantei.
Fig. 3.10 Diagrama semnalelor pentru protocolul de comunicaie pentru interfaa Centronics. n cazul n care se utilizeaz imprimanta conectat la portul serial al calculatorului, sau atunci cnd exist mai multe porturi paralele (extrem de rar) sau dac pur i simplu nu se conecteaz nici o imprimant, atunci portul paralel disponibil poate fi utilizat pentru comanda circuitelor de msurare, reglare i comand. n cazul PC-urilor, interfaa paralel este accesat prin intermediul urmtoarelor adrese de port: LPT1: 3BC H 3BE H LPT2: 378 H 37A H
Intrare 1
Ieiri paralele
Registru tampon
Semnale analogice
Intrare n
Sfrit de conversie
Comand conversie
Date
Fig. 3.1 Sistem de achiziii de date cu multiplexare temporal. Timpul de achiziie, pentru un canal i, TiACH poate fi determinat astfel: i (3.1) TACH = t E / M + t MUX + t C + t MEM ; i = 1 n n care semnificaia mrimilor ce intervin este urmtoarea: t E / M - timpul de eantionare-memorare, compus din timpul de comand i timpul de achiziie; t MUX - timpul de multiplexare, compus din timpul de comand i din timpul de stabilire al multiplexorului; t C - timpul conversie, compus din timpul de comand i din timpul de conversie analog-digital; t MEM - timpul memorare a rezultatelor, rezultat ca suma timpilor de execuie a unei instruciuni de citire a rezultatelor de la convertorul analog-digital i a unei instruciuni de scriere a rezultatelor n memorie. Pentru n canale de intrare, timpul de eantionare, Te , se calculeaz astfel:
i Te = TACH = n (t E / M + t MUX + t C + t MEM ) i =1 n
(3.2)
Sistemul cu multiplexor analogic, care permite accesul secvenial al semnalelor, are dezavantajul unei viteze reduse de msurare, soluia fiind, n schimb, cea mai ieftin. Frecvena maxim de eantionare, f e , a acestui sistem de achiziii de date rezult: 1 (3.3) fe = Te de valoare relativ mic, ceea ce conduce la observaia, conform teoremei eantionrii a lui Shannon: (3.4) f e 2 f max c aceast arhitectur de sistem de achiziii de date nu poate fi folosit n mod eficient pentru monitorizarea unor semnale de frecven mare, sau rapid
variabile n timp. Trebuie, ns, precizat faptul c, de obicei, unitatea central nu este proprie sistemului de achiziii de date, ci este mult mai corect s vorbim de o interfa de achiziii de date compatibil cu un sistem de calcul compatibil IBM - PC XT/AT, acest sistem constituind unitatea central de prelucrare. Un exemplu reprezentativ de sistem de achiziii de date cu multiplexare temporal este constituit de sistemul DAS 1600, produs de firma Keithley. Acest sistem de achiziii de date se compune din: interfa de achiziii de date; microsistem de calcul, compatibil IBM PC/AT, organizat n jurul unei magistrale de tip ISA 3 . Schema bloc a interfeei de achiziii de date DAS 1600 este prezentat n fig. 3.2. Interfaa DAS 1600 permite achiziia a 16 semnale de intrare analogice nedifereniale, sau a 8 semnale analogice de intrare complet difereniale, n gama 5V, frecvena maxim de eantionare pentru un canal fiind de 100 kHz. Selecia modului de lucru (nediferenial sau diferenial) se face printr-o configurare hardware. Semnalele de selecie a canalului curent eantionat sunt asigurate de o logic de comand i incrementare, constituit dintr-un numrtor i circuite auxiliare. Aceast logic permite att baleierea secvenial, ct i aleatoare, a canalelor de intrare. Ieirea multiplexorului analogic este aplicat unui amplificator de instrumentaie, a crui amplificare este selectabil software, funcie de nivelul semnalului de intrare. Amplificarea este comandat prin intermediul unui cuvnt de doi bii, astfel nct la ieirea amplificatorului de instrumentaie, nivelul semnalului s fie adus n gama 5 V. Nivelul optim al amplificrii este stabilit prin utilizarea unui registru de stare, registru care conine i informaii despre canalul de intrare selectat, starea procesului de conversie, etc. De asemenea, un circuit auxiliar permite selectarea polaritii semnalului de intrare. Conversia analog-digital este realizat pe 12 bii, rezoluia asigurat fiind de 2,44 mV. Interfaa DAS 1600 dispune de dou convertoare digital-analogice cu multiplicare, pe 12 bii, a cror tensiune de referin i polaritate a ieirii pot fi selectate hardware. Tensiunea de referin poate fi furnizat fie de o surs de referin de -10 V sau -5 V, fie de o tensiune extern. Transferul datelor, sub form numeric n complement fa de doi, ctre sistemul de calcul se face prin intermediul unei interfee DMA 4 , al crei nivel de prioritate poate fi configurat hardware. Subsistemul numeric al interfeei de achiziii de date DAS 1600 este divizat n trei pri importante:
3 4
ISA DMA
- Industrial Standard Architecture - arhitectur industrial standard. - Direct Memory Access - logic de acces direct la memorie.
logica de control, care include: - registrul de date al convertorului analog-digital i al multiplexorului analogic de intrare; - logica de comand i incrementare a multiplexorului analogic; - registrul de stare; - registrul de control (comand); - logica de selecie a modului de trigger-are a procesului de achiziie; - logica de ceas cu frecvena de 10 MHz; - logica de selecie i decodificare; - logica de gestionare a ntreruperilor; - logica de comand a canalului DMA, are rolul de a gestiona desfurarea procesului de achiziie; interfeele programabile de intrare-ieire, constituite din: - trei contoare programabile de 16 bii, organizate ntr-un circuit 8254 i folosite pentru selectarea frecvenei de eantionare, efectuarea unui numr prestabilit de eantioane; - trei porturi paralele, bidirecionale, dispunnd de 8 bii, organizate ntr-un circuit 8255 i folosite ca linii digitale de intrare-ieire; - un registru de intrare de 4 bii, folosit pentru sincronizarea extern a comenzilor de achiziie; - un registru de ieire de 4 bii; logica de interfa cu magistrala sistemului de calcul, ce nglobeaz circuite de tip tampon pentru liniile de date. Pentru alimentare, interfaa DAS 1600 necesit o singur tensiune de +5V. Celelalte tensiuni, 15 V, necesare funcionrii sunt asigurate de un convertor curent continuu - curent continuu, cu care este echipat interfaa. Tensiunea de referin, cu valoarea de -5V, este asigurat de sursa intern, implementat n convertorul analog-digital.
acestora sunt multiplexate la intrarea convertorului CA/D. Multiplexarea canalelor analogice de intrare se poate face fie secvenial, fie aleator. Deoarece timpul de ateptare, n vederea conectrii la intrarea convertorului CA/D, poate fi destul de lung, circuitele de E/M trebuie s prezinte o rat redus de alterare a tensiunii memorate.
Intrare 1 Bloc de adaptare semnal Circuit de eantionarememorare Ieiri paralele
Registru tampon
Ieire serial
Comand eantionarememorare
Adres canal
Date
Fig. 3.3 - Sistem de achiziie sincron de date. Timpul de eantionare, Te , pentru n canale analogice de intrare rezult:
i Te = TACH = t E / M + n (t MUX + t C + t MEM ) i =1 n
(3.15)
Se constat scderea timpului de eantionare n raport cu acela corespunztor arhitecturii cu multiplexare temporal, ns, cu toate acestea Te, timpul de eantionare, depinde nc, n mod dramatic, de numrul de canale de intrare, cu care este prevzut sistemul de achiziii de date. Ca exemplu, n continuare este prezentat arhitectura interfeei de achiziii de date EISA-2000, produs de firma National Instruments. Acest sistem rapid de achiziii de date, produs de firma National Instruments, este realizat sub forma unei plci echipate cu un conector compatibil cu magistrala EISA 5 a sistemelor de calcul compatibile PC. Interfaa dispune de patru canale analogice de intrare, fiecare echipat cu propriul circuit de eantionare-memorare. Viteza maxim de eantionare este: 1 MHz, n cazul eantionrii pe un singur canal; 500 kHz, n cazul eantionrii simultane a dou canale; 250 kHz, n cazul eantionrii simultane a celor patru canale analogice de intrare. Procesul de achiziie a datelor, pentru fiecare canal analogic de intrare,
EISA
poate fi declanat cu ajutorul unor circuite de tip trigger 6 de tip software, analogic (nivelul analogic de trigger-are este programabil pe 10 bii, n intervalul (-5,12+5,12)V, cu posibilitatea de alegere a polaritii) sau digital. Deoarece ntregul proces de configurare i de calibrare este controlat prin program, nu este necesar intervenia asupra sistemului de calcul n care a fost instalat interfaa de achiziii. Interfaa rapid de achiziii de date EISA-A2000 utilizeaz sistemul de integrare n timp real RTSI 7 , elaborat de firma National Instruments, pentru a sincroniza funcionarea mai multor plci de achiziii de date, de tip EISA sau AT, instalate ntr-un sistem de calcul. Prin utilizarea unui controller DMA, interfaa EISA-A2000 poate transfera datele direct n memoria sistemului de calcul n modul burst (rafal) cu rate de maxim 16,5 Moctei/secund. Ca domenii generale de aplicaii, interfaa EISA-A2000 poate fi utilizat n aplicaii de laborator sau industriale. Cele patru intrri analogice rapide, cu rezoluie de 12 bii, permit utilizarea interfeei pentru analiza, de nalt precizie, de semnal, pentru analiza regimurilor tranzitorii, etc. Eantionarea sincron multicanal este deosebit de util n cazul analizei fazei a mai multor semnale.
STRUCTURA HARDWARE A INTERFEEI DE ACHIZIII DE DATE EISA-A2000
n fig. 3.4 este prezentat schema bloc a interfeei de achiziii de date EISA-A2000. Circuitele analogice de intrare: Circuitele de eantionare-memorare i convertorul analog-digital, cu rezoluie de 12 bii, permit digitizarea unui eantion o dat la o microsecund. Banda maxim de frecven a semnalelor de intrare este pentru semnal mic de 4 Mhz, iar de semnal mare de 1,1 MHz. Gama tensiunilor de intrare acceptate de sistem este de 5V. Selecia tipului de semnal de intrare (AC 8 /DC 9 ) se face prin program. n cazul opiunii AC, intrrile analogice asigur o rejecie a semnalelor continue de 30V. Toate canalele analogice de intrare sunt echipate cu circuite de protecie la supratensiuni de intrare de pn la 30V, att n condiii de funcionare a interfeei, ct i dac interfaa nu este alimentat. Interfaa de achiziii EISA-A2000 asigur o rezoluie de 12 bii, ceea ce este echivalent cu o rezoluie analogic de 2,44mV. Este posibil creterea rezoluiei efective peste 12 bii, folosind generatorul Gauss Dither, implementat pe plac, i medierea eantioanelor achiziionate. Rezoluia este automat crescut la 16 bii, rezultatul fiind reprezentat n complement fa de doi. Circuitele de autocalibrare: Interfaa EISA-A2000 conine un nucleu software de autocalibrare a circuitelor de intrare analogice. Sursa de referin
6 7
Trigger RTSI 8 AC 9 DC
- circuit de declanare. - Real-Time System Integration - interfa de integrare sistem, n timp real. - Alternative Current - semnal variabil n timp dup o lege sinusoidal. - Direct Current - semnal continuu, invariabil in timp.
intern asigur o nalt precizie i stabilitate n timp i cu temperatura. Sunt, de asemenea, disponibile circuite pentru reglajul de offset pentru fiecare canal, asigurnd scderea erorii de offset la mai puin de 0,25 LSB. Procesul de calibrare nu necesit conexiuni exterioare. Datele necesare pentru efectuarea autocalibrrii sunt memorate ntr-un circuit de memorie E2PROM, amplasat pe plac. Circuitele analogice i digitale de trigger-are: EISA-A2000 dispune att de circuite analogice, ct i digitale de trigger-are pentru declanarea procesului de achiziii de date. Exist trei moduri pentru declanarea convertorului analogdigital, CA/D: n modul analogic de trigger-are, procesul de achiziie este demarat de un semnal analogic de intrare, atunci cnd att nivelul semnalului, ct i polaritatea acestuia, corespund valorilor programate. Un convertor digital-analog genereaz tensiunea de prag, cu o rezoluie de 10 mV. Se compar nivelul tensiunii de intrare cu aceast tensiune de prag programat; conversia este declanat la egalitatea celor dou tensiuni i este, de asemenea, ndeplinit condiia de polaritate. Semnalul de trigger analogic poate fi selectat de la oricare dintre cele patru canale analogice de intrare sau de la o intrare extern; n modul digital de trigger-are, exist opiunea de a selecta prin program care dintre fronturile semnalului, cresctor sau cztor, va declana procesul de achiziie; n modul software de trigger-are, procesul de achiziii de date este declanat prin program. Circuitele de secvenializare i de comand a conversiei prezint trei moduri de trigger-are pentru procesul de achiziii de date: modul de lucru cu pretrigger-are, modul de lucru cu ntrziere fa de semnalul de trigger-are i modul de lucru cu posttrigger-are. n modul de lucru cu pretrigger-are, procesul de achiziie este declanat prin software; acesta continu, depunnd rezultatele ntr-un buffer circular, pn cnd se primete un semnal de trigger analogic sau digital. n cel de-al doilea mod de lucru, se poate selecta, prin program, un timp de ntrziere, pe durata cruia procesul de achiziie este inhibat, de la primirea unui semnal trigger analogic sau digital. n modul de lucru posttrigger, achiziia ncepe dup ce interfaa EISAA2000 primete un semnal trigger analogic, digital sau software. Prin combinarea modurilor de lucru, se poate achiziiona un numr preprogramat de eantioane, nainte sau dup ndeplinirea unei condiii de triggerare. Logica de comand i timing a achiziiei: Aceste circuite genereaz semnalele de secvenializare (timing) i de comand a procesului de achiziie. Timing-ul de conversie multipl analog-digital este comandat fie de un circuit de tip numrtor, implementat pe interfaa EISA-A2000, fie de un ceas extern de eantionare.
Circuitul de numrare, pe 16 bii, cu care este echipat placa, genereaz timing-ul necesar pentru conversia analog-digital. Acest circuit dispune de baze de timp, selectabile software, de 200ns, 1s, 10s, 100s, 1ms i 10ms. Intervalul minim de eantionare, n cazul operrii monocanal, este de 1s. Dac este necesar n cadrul aplicaiei, numrtorul intern poate fi nlocuit cu un semnal de ceas de eantionare extern. Numrul de eantioane prelevate n cadrul aplicaiei, pe fiecare canal, este monitorizat de un numrtor pe 32 de bii, care oprete procesul de achiziie la atingerea numrului preprogramat de eantioane. Interfaa de magistral RTSI: EISA-A2000 este interfaat cu magistrala RTSI National Instruments printr-un comutator, de fapt o reea bidirecional de pori de comutare de tip crossbar. Liniile magistralei RTSI includ semnalele externe de trigger, semnalul de ceas extern de eantionare i semnale de intrareieire de numrare. Folosind aceste linii de semnal, mai multe interfee EISAA2000 pot fi sincronizate s achiziioneze sincron semnalele analogice de intrare. Interfaa de magistral EISA: Interfaa de achiziii de date este complet compatibil cu magistrala EISA, putnd manipula liniile de cerere DMA de pe acest magistral. Un circuit buffer, cu capacitate de 512 cuvinte, previne pierderea de informaii n condiiile n care datele nu pot fi transferate imediat n memorie. Astfel, mai multe interfee EISA-A2000, cuplate n sistemul de calcul, pot funciona la ntrega capacitate. Interfaa cu magistrala EISA dispune, de asemenea, de linii de ntrerupere, logic DMA, registre de comand i de stare. Acest interfa este astfel proiectat nct permite ca mai multe sisteme EISA-A2000 s poat partaja magistrala sistemului de calcul, prin transferarea datelor n rafal cu rate extrem de ridicate, lsnd suficiente posibiliti de servire a celorlalte resurse ale sistemului.
(3.6)
Trebuie s menionm c, pentru aceast arhitectur de sistem de achiziii de date, timpul elementar de multiplexare, tMUX, este corespunztor unui multiplexor numeric i este considerabil mai redus n comparaie cu situaiile anterioare, deoarece timpul de stabilire al multiplexorului numeric este cu circa trei ordine de mrime mai mic dect cel al unui multiplexor analogic. Avantajele acestei structuri de sistem de achiziii sunt urmtoarele: pot fi utilizate convertoare CA/D mai lente, i deci mai ieftine, chiar dac se dorete o vitez mare de achiziie; prin conversia local sub form numeric, se asigur o bun imunitate la perturbaii; posibilitatea separrii galvanice a unei surse de semnal, mpreun cu convertorul CA/D aferent, fa de restul sistemului.
Intrare 1
Circuit de eantionarememorare
Comand eantionarememorare
Registru tampon
Sfrit de conversie
Circuit de eantionarememorare
Comand eantionarememorare
Sfrit de conversie Comenzi de eantionarememorare Comenzi de START conversie Semnale sfrit de conversie
Date
fizic, aa-numitul hardware, care constituie suportul material al operaiilor de comand i prelucrare i, pe de alt parte, programele, partea informaional, numit curent software; software-ul impune hardware-ului operaiile ce urmeaz s le desfoare conform algoritmului proiectat de programator. Elementul central al hardware-ului este microprocesorul. n practic, nu se utilizeaz niciodat, n exclusivitate, logica cablat, ci, fie o metod combinat, fie doar logica programat.
dispozitiv master ctre celelalte elemente ale sistemului; seciunea de control (magistrala de control), unidirecional, care permite vehicularea semnalelor de sincronizare i control, ntre microprocesor sau un alt dispozitiv master i celelalte resurse ale sistemului. Marea diversitate de componente electronice, cu funciuni, performane i costuri foarte diferite, impun proiectantului o definire precis a caracteristicilor i utilitilor sistemului pe care l concepe. Alegerea microprocesorului i a circuitelor periferice asociate este dictat de analiza structurii hardware (constituite din componente de microinformatic, procesor, memorii, componente electronice clasice) i a structurii software (implementate n memorie), n vederea asigurrii cerinelor de vitez de msur i de versatilitate ale sistemului. Gama actual de microprocesoare cuprinde tipuri de 8, 16, 32 i 64 de bii; pe plan mondial ponderea o dein, n continuare, microprocesoarele pe 16 bii, care ofer, la pre sczut, performane bune. Dintre microprocesoarele pe 8 bii, cele mai utilizate, cu performane satisfctoare, sunt tipurile: INTEL 8080, INTEL 8085, ZILOG Z80, MOTOROLA 6800. Dintre acestea, o larg utilizare o are, n aplicaiile curente, microprocesorul ZILOG Z80, care nglobeaz caracteristicile microprocesorului INTEL 8080, cu pstrarea compatibilitii software, dar cu extinderea performanelor acestuia. n prezent, au nceput s fie utilizate pe scar larg microcontroller-ele pe 8 i 16 bii, care compenseaz o parte din dezavantajele microprocesoarelor tradiionale. Arhitectura unui microcontroller a fost astfel proiectat nct s ofere o versatilitate mult superioar celei a microprocesoarelor tradiionale, prin: organizarea intern sub forma unui numr de trei, patru sau cinci porturi bidirecionale, a cror funcionalitate poate fi stabilit de utilizator; extinderea spaiului de adresare prin separarea, din punct de vedere al accesului, a memoriei de date fa de memoria de program; nglobarea n structura microcontroller-ului a unei memorii de program de tip PROM (Programmable Read-Only Memory - memorie programabil, ce prezint doar faciliti de citire), cu capacitate relativ mic (n cele mai multe cazuri 4Koctei), ce poate fi parial sau integral accesibil operatorului pentru programul de aplicaii. n cazul accesibilitii pariale a utilizatorului la aceast resurs, trebuie menionat faptul c ntr-o zon a memoriei interne de program este rezident un interpretor BASIC, ceea ce permite programatorului s-i scrie aplicaia n limbajul BASIC i nu n limbaj de asamblare; nglobarea n structura intern a unor circuite de interfaare, cum ar fi interfee seriale programabile de comunicaie, interfee paralele programabile bidirecionale, circuite de numrare programabile, convertoare analog-digitale, convertoare digital-analogice, etc;
un astfel de microcontroller lucreaz la o frecven a ceasului de cteva ori mai mare dect un microprocesor tradional, ceea ce permite creterea vitezei de prelucrare aproximativ n aceeai msur; setul de instruciuni al unui microcontroller este substanial mbogit, pstrnd compatibilitatea cu cele ale microprocesoarelor tradiionale; tehnologia de realizare CMOS, folosit pentru implementarea majoritii microcontroller-elor actuale, permite scderea substanial a puterii consumate de la sursa de alimentare, creterea fiabilitii i siguranei n exploatare. Ca exemplificare la cele menionate anterior, se constat utilizarea extensiv a dou familii de microcontrollere: familia 8051, conceput i realizat de firma INTEL i familiile Z87, Z87 Super ale firmei ZILOG. Arhitectura general a familiei 8051, repectiv a familiei Z8, este prezentat n fig. 3.6, respectiv 3.7. Ambele familii de microcontroller-e au elemente arhitecturale comune, cum ar fi: pentru minimizarea liniilor de interconexiune cu exteriorul, seciunea de date i seciunea inferioar de adrese ale magistralei sistemului sunt multiplexate temporal; att 8051, ct i Z8 pot funciona fie ca microsisteme specializate de intrare-ieire, fie ca microsisteme specializate de lucru cu memoria; n ambele tipuri de aplicaii, spaiul de adresare este partajat n trei seciuni: - memoria de program (intern i extern), cu capacitate maxim de 64Koctei; - memoria de date (extren), cu capacitate variind ntre 60 i 64 Koctei. Este nevoie s se fac precizarea c dispozitivele de intrare-ieire externe sunt adresate de microcontroller ca seturi de celule de memorie de date; - setul de registre interne, coninnd registre de uz general, registrele unitii centrale de prelucrare i registrele asociate celor patru porturi de intrare-ieire ale microcontroller-ului; ambele familii de microcontroller-e permit operarea la nivel de bit, la nivel de octet sau octet codificat zecimal, sau la nivel de cuvnt cu lungime de 2 octei; operarea n regim de intrare-ieire poate fi coordonat prin ntreruperi sau n modul polling (interogare periodic). Sunt disponibile cinci/ase nivele de ntreruperi, care pot fi mascate sau a cror prioritate poate fi modificat.
Driver-e Port 0
Driver-e Port 2
Registru Port 0
Registru Port 2
ROM 4k x 8
Registru general B
Registru acumulator
Stiv
Registru temporar 2
Registru temporar 1
Registru adrese program Buffer date Incrementare Contor Program Contor Program Registru adresare memorie
Registre comand, interfa serial, timer-e, ntreruperi ntreruperi porturi seriale, timer-e
Registru cuvnt de stare a programului Registru de instruciuni Unitate de control Semnale de comand
OSC
Registru Port 1
Registru Port 3
Semnale de ceas
Driver-e Port 1
Driver-e Port 3
Linii Port 1
Linii Port 3
n afar de microprocesor, componenta cea mai complex, ale crei caracteristici determin, n esen, structura i performanele unitii centrale, se disting (fig. 3.14): memoriile nevolatile; memoriile volatile; circuitele de interfaare; decodificatoarele. Memoriile nevolatile - cu coninut permanent: ROM (Read-Only Memory - memorie, cu coninut permanent, ce poate fi doar citit), PROM, EPROM (Erasable Programmable Read-Only Memory - memorie cu coninut permanent ce poate fi doar citit i care dispune de faciliti de tergere a coninutului cu radiaii ultraviolete), EEPROM (Electrical Erasable Programmable Read-Only Memory - memorie cu coninut permanent ce poate fi doar citit i care dispune de faciliti de tergere electric a coninutului) - sunt destinate s stocheze programul pe care trebuie s-l efectueze unitatea central de prelucrare.
Interfa serial
Port 3
Port 2
Port 0
Port 1
Fig. 3.7 Arhitectura de baz a familiei de microcontrollere Zilog Z8 Super. Memoriile volatile - cu coninut nepermanent: RAM (Random Access Memory - memorie cu acces aleator), SRAM (Static Random Access Memory memorie cu acces aleator, avnd drept element de memorare un circuit basculant bistabil), DRAM (Dynamic Random Access Memory - memorie cu acces aleator, avnd drept element de memorare un condensator) - sunt destinate s stocheze temporar eantioanele, rezultatele pariale i finale ale prelucrrii, n timpul procesului secvenial de funcionare a sistemului de calcul. Circuitele de interfaare sunt destinate s asigure comunicaia microprocesorului cu echipamentele de intrare-ieire. Prin intermediul porturilor de intrare, se citesc datele rezultate n urma conversiei analog-digitale, sau starea unui echipament periferic. Porturile de ieire mijlocesc transferul de date de la unitatea de comand la afiaj sau la alt calculator, respectiv sunt utilizate pentru iniializarea i programarea echipamentelor periferice. Decodificatoarele sunt utilizate pentru decodificarea adreselor i generarea unor semnale de selecie care se exclud reciproc (un singur semnal de ieire al decodificatorului poate fi activ la un moment de timp dat). Ieirile decodificatoarelor sunt active pe nivel cobort, pentru a se realiza cu mai mult uurin interfaarea cu echipamemtele externe. Decodificatoarele permit microprocesorului s selecteze resursele unitii centrale, tiind c
microprocesorul nu poate executa dect o singur operaie (citirea din memoria program, citirea sau scrierea datelor, citirea sau scrierea registrelor de comand sau de stare ale interfeelor). n sistemele de calcul mai complexe, pentru generarea semnalelor de selecie, decodificatoarele sunt nlocuite cu circuite PAL (Programmable Logic Array - reele logice programabile), circuite care implementeaz decodificatoare cu mai multe ieiri (decodificatoarele integrate se realizeaz n urmtoarele configuraii: 1:2, 2:4, 3:8 i 4:16) i o logic complex de condiionare a decodificrii. Configuraia prezentat este absolut minimal, ntruct n majoritatea sistemelor exist i alte circuite, ca de exemplu: amplificatoare de magistral unidirecionale i bidirecionale, circuite de tip registru cu trei stri, divizoare de frecven, etc. Dac volumul de date ce trebuie achiziionate i prelucrate este considerabil, se recomand folosirea memoriei RAM dinamice, care permite o mare densitate de integrare, cu preul unei viteze ceva mai reduse (timpul de acces este redus, de ordinul 5070 ns, ns sunt necesare cicluri de remprosptare la nivel de pagini de memorie, la intervale de maximum 2 ms, pentru ca informaia memorat s nu fie afectat ca integritate). Dac este esenial viteza iar volumul de date este mic, se prefer utilizarea memoriilor RAM statice. Datorit progreselor tehnologice nregistrate n ultimii ani, numeroase firme productoare de componente, cum ar fi INTEL, AMD, Micron, Hibrid Semiconductor, realizeaz memorii SRAM de capacitate mare n tehnologie CMOS (de la 2Kx8 bii pn la 128Kx8 bii, 256Kx16 bii), cu timp de acces cuprins ntre 20 i 35 ns i peformane deosebite de fiabilitate i cost. De asemenea, se realizeaz module de memorie SRAM, cu capaciti cuprinse ntre 128Kx8 bii i 256Kx32 bii. Aceste circuite de memorie SRAM, respectiv modulele de memorie SRAM, sunt ideale pentru a echipa unitile centrale de prelucrare, din punct de vedere al vitezei de acces, siguranei n exploatare, consumului deosebit de redus i gradului mare de integrare. Funcionarea sistemului de achiziii de date cu microprocesor este urmtoarea: microprocesorul iniializeaz toate circuitele din sistem; prin intermediul unui port de ieire, se ncarc n registrul de selecie al canalului analogic, numrul canalului a crui achiziie se dorete; dac achiziia poate ncepe n orice moment, microprocesorul d semnalul de eantionare i de iniiere a conversiei pentru primul eantion. Dac trebuie ateptat trecerea prin zero sau valoarea maxim a semnalului de intrare, circuitul sesizor de zero, respectiv de vrf, va da primul impuls de eantionare i conversie, urmnd ca, dup aceea, microprocesorul s preia controlul; convertorul va emite semnalului READY la sfritul conversiei, care poate fi folosit ca semnal de ntrerupere pentru microprocesor, ca s citeas codul rezultat n urma conversiei. Dac viteza nu e factor
limitativ, microprocesorul poate citi periodic portul de intrare (modul polling), fiecare citire constituind totodat un nou semnal de eantionare i de START CONVERSIE; eantioanele sunt depuse, dup fiecare citire, n memoria RAM; se urmrete numrul eantioanelor efectuate, cu ajutorul unui numrtor extern; procesul se oprete, atunci cnd s-a obinut numrul de eantioane dorit; la sfrit, eantioanele sunt prelucrate i afiate rezultatele, conform programului elaborat i stocat n memoria EPROM. Microprocesoarele i microcontroller-ele constituie resurse de comand i prelucrare, care sunt deosebit de utile n procesul de gestiune a achiziiei, de preluare i memorare a eantioanelor rezultate n urma conversiei analog-digitale. Eficacitatea lor, n ceea privete procesul de prelucrare evoluat a eantioanelor prelevate din proces, este mult mai redus. Pentru o supraveghere precis a unui proces, este, de regul, necesar achiziionarea unor eantioane, care convertite n form numeric, au lungimi de 12 sau 16 bii. Folosirea unor algoritmi de prelucrare evoluat (filtrare numeric, analiz armonic, etc) comport execuia unor instruciuni de nmulire, adesea n virgul mobil, a dou cuvinte de 2 octei, rezultatul fiind disponibil pe un cuvnt de lungime dubl. Asemenea algoritmi pot fi cu greu implementai pe un microcontroller de 8 bii, cu consum nejustificat de timp i de resurse. De aceea, o soluie modern de a realiza prelucrri complexe asupra datelor o const utilizarea circuitelor DSP (Digital Signal Processor - procesor digital de semnal), specializate n execuia unor astfel de instruciuni.
RAM i ROM); utilizarea direct a memoriei externe; modificarea arhitecturii de baz n vederea crerii unei memorii tampon; utilizarea optimal a magistralei interne, n vederea accelerrii transferurilor de date; creterea lungimii cuvintelor pentru executarea unor instruciuni n virgul flotant; creterea frecvenei de operare prin utilizarea tehnologiei CMOS, ce permite creterea gradului de integrare.
1631) i partea mai puin semnificativ (biii 015). Coninutul acumulatorului poate fi salvat n memorie prin dou instruciuni succesive; - dou circuite de deplasare (SHIFTER), dintre care unul este destinat deplasrii aritmetice programabile cu 015 a datelor din memoria RAM de date, iar al doilea circuit efectueaz o deplasare la stnga cu zero, cu una sau patru poziii, a prii superioare a acumulatorului; - o memorie RAM de date (DATA RAM), cu capacitatea de 144 de cuvinte de 16 bii. Aceast memorie este organizat sub forma a dou pagini, dintre care prima pagin conine 16, iar cea de-a doua 128 cuvinte. Indicatorii de adrese pot fi autoincrementai sau autodecrementai, incrementul fiind egal cu unitatea; seciunea de comand, organizat n jurul unei magistrale de program, coninnd: - un registru denumit contorul programului (PROGRAM COUNTER) cu lungimea de 12 bii i o stiv (STACK) folosit pentru salvarea contextului programului. Registrul contor al programului conine adresa urmtoarei instruciuni din memoria de program; - memoria de program (PROM), cu o capacitate de 1536 de cuvinte cu lungimea de 16 bii. Acest memorie de program poate fi substituit cu o memorie extern de program, cu o capacitate de 4096 de cuvinte. Aceast arhitectur a unui DSP permite funcionarea n modul pipeline, adic pe durata executrii instruciunii curente, contorul programului se ncarc cu adresa urmtoarei instruciuni, instruciunea urmtoare fiind citit n paralel cu execuia instruciunii curente. Modul de lucru pipeline contribuie n mod decisiv la creterea vitezei de lucru a procesorului. n raport cu procesorul TMS 32010, cele ale urmtoarei generaii - TMS 32020 i TMS 320C25 - sunt caracterizate prin urmtoarele modificri: eliminarea memoriei interne de program i nlocuirea ei cu o memorie intern RAM, ce poate fi ncrcat cu un program de aplicaie de la o surs extern; procesorul dispune de 544 de cuvinte de memorie, dintre care 256 cuvinte sunt utilizabile ca memorie de program; este disponibil o memorie extern adresabil de 64 Kcuvinte de program; realizarea operaiei de nmulire cu nlnuire ntr-un singur ciclu (170 ns); exist cinci indicatori ai memoriei RAM interne; unitatea aritmeticologic pentru calculul adresei asociat acestor indicatori permite o indexare cu pas variabil; circuit divizor de frecven, integrat n structura procesorului; existena unor instruciuni specializate, destinate aritmeticii n virgul flotant; faciliti de mascare a trei rezultate, n loc de unul singur.
Realizat n tehnologie CMOS, procesorul TMS 320C25 este caracterizat de: durata unui ciclu instruciune de 100 ns; consum energetic foarte redus; memorie de program (ROM) intern, cu capacitatea de 4Kcuvinte cu lungimea de 16 bii; un numr de 8 registre auxiliare, asociate unei uniti aritmetice; stiv pentru salvarea contextului programului, organizat pe 8 nivele; dou circuite de memorie RAM intern. Unul dintre aceste circuite poate fi configurat fie ca memorie de program, fie ca memorie de date. Creterea vitezei i eficienei de prelucrare numeric poate fi asigurat prin utilizarea unor procesoare de semnal cu arhitectur paralel. Procesorul de semnal SPROC-1400 face parte din seria SPROC-1000, coninnd memoria de program, memoria de date, logica de secvenializare i logica de interfaare cu alte procesoare. Aceste resurse sunt necesare pentru proiectarea eficient, implementarea i testarea sistemului. Procesoarele SPROC-1000 pot fi configurate s lucreze att n modul MASTER, ct i n modul SLAVE, pentru interconectarea cu alte procesoare SPROC sau cu un microprocesor tradiional. Principalele caracteristici ale procesoarelor SPROC-1400 sunt: integrarea tuturor subsistemelor de procesare de semnale pe un singur chip; arhitectur de tip multiprocesor optimizat; banda maxim de frecven a semnalelor de intrare de maxim 250 kHz; lungimea cuvintelor procesate de 24 de bii, cu posibilitatea de memorare pe 56 de bii; generator intern de ceas, cu frecvena de 50 MHz; memorie RAM local, reprogramabil n mod dinamic; 4 porturi seriale, configurabile pentru manipularea a 8, 12, 16 sau 24 de bii de date; 1 port paralel, dispunnd de 24 de linii, configurabil pentru manipularea unor cuvinte de date de 8, 12, 16 sau 24 de bii; tehnologia de realizare CMOS static; iniializarea poate fi fcut att intern, printr-un fiier de 16 Koctei, ct i extern, prin folosirea unei memorii ROM; compatibilitate cu majoritatea microprocesoarelor aparinnd familiilor INTEL i Motorola. Seria de procesoare SPROC-1000 utilizeaz o arhitectur cu memorie central optimizat (fig. 3.8) pentru procesarea concurent a fluxurilor complexe, relaionale de date.
Memorie de program
Procesoare GSP
DFM Intrare
DFM Ieire
Fig. 3.8 Arhitectura procesorului de semnal SPROC 1000, cu unitate de memorie cental.
Nucleul central al acestei arhitecturi este reprezentat de memoria de date partajat, de tip multiport, denumit CMU (Central Memory Unit - unitate de memorie central). Un numr de patru procesoare generale de semnal, GSP (General Signal Processor - procesor general de semnal), implementate pe chip, realizeaz calculele i asigur procesarea paralel. Controloarele de fluxuri de date de intrare-ieire, DFM (Data Flow Manager - controlor al fluxului de date), coordoneaz fluxurile concurente de date, semnalele de interfa pentru canalele seriale i activeaz interfaarea cu un procesor extern. Arhitectura CMU reprezint o extensie de la abordarea monoprocesor la procesarea concurent (multiprocesor). n locul multiplexrii temporale, prin ntreruperi, a unitii de procesare, arhitectura CMU folosete mai multe procesoare i multiplexarea temporal a accesului acestora la memorie. Accesarea multipl a memoriei nu mai este gestionat prin ntreruperi: CMU este un spaiu de memorie de date de tip multiport, ce utilizeaz o secven compus de perioade de acces la memorie, alocate fiecrui GSP sau ciclu de intrare-ieire. Secvena de baz reprezint un ciclu main al procesorului SPROC, respectiv cinci perioade de ceas. Perioadele 14 sunt destinate procesoarelor generale de semnal, GSP, n vederea accesului la memorie, ntr-un mod secvenial bine determinat, iar cel de-al cincilea interval de timp este utilizat, prin subdivizare n 8 subintervale, pentru operaii de intrare-ieire paralele sau alte operaii de intrare-ieire. Procesoarele GSP lucreaz pe 24 de bii, n virgul fix i pot fi folosite fie
GSP1
GSP2
GSP3
GSP4
Port paralel
Port de acces
Port test
Adrese/Date
Semnale selecie
Fig. 3.9 Structura detaliat a procesorului de semnal SPROC-1400. Controloarele de fluxuri de date gestioneaz introducerea/extragerea datelor n/din unitatea central de memorie, fr s afecteze performanele procesoarelor GSP. Controloarele DFM comunic cu celelalte resurse interne pe o magistral de 24 de bii, iar cu resursele externe prin intermediul porturilor seriale programabile. Schema bloc a procesorului de semnal SPROC-1400 este prezentat n fig. 3.9.
sistemelor multiprocesor. Att seciunea de transmisie, ct i cea de recepie, a portului serial dispun de un buffer sau memorie FIFO organizate pe 4 nivele de adncime, permind unitii centrale de prelucrare s accepte ntreruperi de la oricare din aceste nivele. Aceast facilitate nseamn intervenia mai redus a unitii centrale de prelucrare, ca i creterea flexibilitii i eficienei transmisiilor de date. Portul serial sincron al familiei TMS320C2xx are urmtoarele caracteristici: port serial sincron full-duplex, cu faciliti de transmisie de cadre de date; buffer cu capacitatea de 4 cuvinte x 16 bii, pentru reducerea overheadului rutinelor de tratare a ntreruperilor; port serial flexibil, eficient i de nalt performan; asigur rate de transfer de 20 Mbps, pentru durata unui ciclu instruciune de 25 ns; asigur rate de transfer de 14,28 Mbps, pentru durata unui ciclu instruciune de 35 ns; asigur rate de transfer de 10 Mbps, pentru durata unui ciclu instruciune de 50 ns; rata de transfer este jumtate din frecvena ceasului unitii centrale de prelucrare. Toate dispozitivele din familia TMS320C2xx, cu excepia circuitului TMS329C209, dispun de acest tip de port serial sincron. Fig. 3.10 ilustreaz organizarea portului serial sincron al procesoarelor DSP TMS320C2xx.