2 INTRODUCERE ÎN DOMENIUL CIRCUITELOR LOGICE …ece.ubm.ro/clp/index_files/Curs_2.pdf · Logica...

download 2 INTRODUCERE ÎN DOMENIUL CIRCUITELOR LOGICE …ece.ubm.ro/clp/index_files/Curs_2.pdf · Logica programată a devenit mai populară la mijlocul anilor ... programabile de mare capacitate

If you can't read please download the document

Transcript of 2 INTRODUCERE ÎN DOMENIUL CIRCUITELOR LOGICE …ece.ubm.ro/clp/index_files/Curs_2.pdf · Logica...

  • Capitolul 2 2 INTRODUCERE N DOMENIUL CIRCUITELOR LOGICE

    PROGRAMABILE

    2.1 Generaliti

    Termenul de circuit logic programabil sau PLD (Programmable Logic Devices) este un termen general care se refer la orice tip de circuit integrat care poate fi configurat de ctre utilizator pentru implementarea unui proiect. Dispozitivele logice programabile au un rol important n proiectarea digital, ele punnd la dispoziia proiectantului o structur foarte flexibil deschis unui larg domeniu de aplicaii. Unul dintre cele mai folosite circuite logice programabile a fost memoria de tip ROM programabil o singur dat (PROM). n figura 2.2. a este prezentat diagrama bloc a unei arhitecturi de tip PROM. Plecnd de la aceast arhitectur s-au dezvoltat ariile logice programabile de tip PLA (Programmable Logic Array) dedicate implementrii funciilor logice. Combinarea structurii PLA-urilor cu tehnologia PROM a avut ca rezultat dezvoltarea dispozitivelor logice programabile de tip FPLA (Field Programmable Logic Array), care au aprut pe pia la mijlocul anilor 70. FPLA-urile au un numr fix de intrri, de ieiri i un numr fix de termeni de tipul produs. Avantajul oferit de circuitele din aceast familie este c att aria logic de pori I ct i cea de pori SAU sunt programabile (vezi figura 2.2.b). Totui acest tip de circuite logice programabile au avut un succes limitat deoarece aveau vitez sczut de lucru i erau dificil de programat. Modul de programare consta n alctuirea unei hrii de conexiuni care nu prezenta nici o asemnare cu modurile de reprezentare schematic sau prin ecuaii de tip Boolean folosite n proiectarea cu circuite logice. Logica programat a devenit mai popular la mijlocul anilor 1970 odat cu apariia ariilor logice programabile de tip PAL-uri (Programmable Array Logic). Acest tip de arhitectur combin o arie programabil de pori I cu o arie de pori SAU fix (spre deosebire de circuitele PLA la care att aria de pori I ct i cea de pori SAU sunt programabile). Acest tip de arie a fost mbuntit n mod continuu de diveri productori. 2.2 Dispozitive logice programabile simple Dei n ultimi ani arhitecturile dispozitivelor logice programabile (PLD = Programmable Logic Devices) au fost mbuntite, circuitele simple de tip PAL sau PLA aflate n capsule cu 24 pini (ex. 16V8/20V8, 22V10) au devenit un standard industrial. n general circuitele PLD cu densitate redus de pori logice (PLA i PAL), sunt prezente pe pia n capsule de 20 sau 44 de pini i au o densitate cuprins

  • Capitolul 2

    14

    ntre 100 i 999 pori logice. Aceste circuite sunt cunoscute pe pia ca i dispozitive logice programabile simple sau SPLD-uri (Simple PLD). Structura de tip arie logic SI-SAU recomand folosirea circuitele SPLD pentru implementarea ecuaiilor logice sub forma sumelor de produse. Unele dintre mbuntirile recente ale circuitelor SPLD sunt: porturi de intrare/ieire programabile, porturi de intrare/ieire bidirecionale, registre de configurare mai flexibile i o schem de clock mai flexibil. Circuitele PLD sunt folosite pentru a nlocui circuitele de tip SSI (Small Scale Integrated) i MSI (Medium Scale Integrated), un singur circuit PLD poate fi echivalentul a zeci de circuite SSI. Alte avantaje oferite de circuitele PLD sunt: consumul redus de putere, performane mai bune datorit lungimi mult reduse a interconexiunilor i o fiabilitate mai ridicat. Circuitele PLD le regsim att n tehnologie bipolar ct i n tehnologie CMOS. Cu toate ca au o arhitectur simpl i o densitate mult mai mic dect CPLD-urile (Complex Programmable Logic Devices) circuitele PLD ofer nc suficiente performane pentru a rezista pe pia, astfel pentru o tehnologie CMOS de 0.5 m pentru o frecven de 200MHz ntrzierile sunt de numai 3.5ns. Circuitele SPLD sunt mai uor de utilizat, de proiectat i programat. Produsele care beneficiaz de avantajele oferite de circuitele SPLD sunt componentele de reea care cer performane ridicate per ansamblu: hub-uri de reea bridge-uri, routere. Alte produse vizate de SPLD-uri sunt: sunt cele din zona telefoniei mobile, video game-urilor i a hand-held web browserelor. Productorii cu o prezen puternic pe piaa SPLD-urilor sunt: Vantis care este o firm subsidiar a recunoscutei firme AMD (Advanced Micro Devices), Philips Semiconductors care ofer familia de PLD-uri cu consum redus de putere CoolRunner disponibil pentru aplicaii 3,3/5V i firma Lattice Semiconductor care a introdus circuitele GAL20LV8D i GAL20LV10D de mare vitez i pentru aplicaii la 3,3V.

    Figura 2.2.a Arhitectur PROM

  • Introducere n domeniul circuitelor logice programabile

    15

    Figura 2.2.b Arhitectur FPLA

    2.3 Dispozitive logice programabile de capacitate mare

    Pentru a depii limitrile datorate arhitecturi simple a circuitelor SPLD s-a dezvoltat o nou ramur de circuite logice programabile de mare capacitate, numite CPLD-uri (Complex Programmable Logic Devices) si FPGA (Field Programmable Gate Arrays) care au o arhitectur mai complex i mai flexibil permind astfel o alocare mai eficient a macrocelulelor. n aceast lucrare prin folosirea termenului PLD se va face referire att la circuitele SPLD ct i la circuitele CPLD i FPGA. ncepnd cu anul 1985 firma Xilinx Corporation a dezvoltat un nou tip de arhitectur cu denumirea generic LCA (Logic Cell Array), care va servi ca i prototip pentru urmtoarele generaii de arhitecturi FPGA. Noul tip de arhitectur const dintr-o arie de celule logice independente nconjurat de celule de intrare/ieire, aria cuprinde de asemenea i resurse de interconectare a celulelor. n primele tipuri de circuite LCA fiecare celul logic era alctuit dintr-o logic combinaional i un bistabil. Fiecare celul de intrare/ieire poate fi programat ca i intrare combinaional sau secvenial, ca i ieire sau ca i port bidirecional. n cazul circuitelor CPLD i FPGA elementele logice mai sunt numite i macrocelule, blocuri configurabile sau CLB-uri (Configurable Logic Blocks). Aa cum s-a mai

  • Capitolul 2

    16

    amintit i ntr-un paragraf anterior termenii folosii pentru a descrie circuitele logice programabile de mare capacitate sun CPLD i FPGA. Distincia ntre cei doi termeni devine din ce n ce mai neclar cu toate c exist cteva caracteristici care despart circuitele definite de acetia. Circuitele din familia CPLD au resurse de interconectare fixe realizate prin intermediul unei matrici de conexiuni. Circuitele CPLD pot fi asimilate ca i o arie de circuite PLD simple cum ar fi circuitul 22V10. Complexitatea circuitelor CPLD este dat de numrul sporit de pini i de numrul relativ mare de macrocelule.

    Figura 2.2 Evoluia circuitelor SPLD i CPLD

    Caracteristica principal a circuitelor PLD, definit de productori este timpul de ntrziere la propagarea unui semnal (Tpd ) de la o intrare a unui circuit aflat pe pastila de siliciu, la ieirea acestuia. Valoarea lui Tpd n cazul unui circuit CPLD cu 44 pini i 32 de macrocelule la o frecven de 180 MHz este de 5 ns, n timp ce pentru un CPLD cu 100 de pini i 128 de macrocelule timpul de ntrziere la propagare este de 7,5 ns. n figura 2.2 este prezentat o diagram care compar performanele circuitelor SPLD i CPLD n funcie de valoarea lui Tpd [1] . Pn de curnd segmentul de pia ocupat de circuitele CPLD era unul distinct fa de cel ocupat de circuitele FPGA. Preul ridicat al circuitelor CPLD, posibilitatea de a prevedea specificaiile de timp, precum i performane mai bune de ct a circuitelor FPGA, le recomand n cazul proiectelor de dimensiuni reduse, dar cu frecven de lucru ridicat. n comparaie, circuitele FPGA beneficiind de un pre mai sczut i de o densitate mai mare de macrocelule erau optime pentru proiecte de dimensiuni medii i frecven de lucru nu foarte ridicat. Totui, n ultima perioad, datorit cderi preurilor la circuitele CPLD, a creterii capacitii acestor, precum i datorit apariiei unei noi caracteristici cum este posibilitatea de programare n sistem (ISP), a fcut ca cererea CPLD-urilor pe pia s fie n continu cretere. Iat de ce domeniile de aplicaii ale circuitelor CPLD i FPGA se ntreptrund. Caracteristica ISP (In-System Programmability) este prezent la multe familii de circuite CPLD i ofer posibilitatea ca circuitele CPLD s fie reprogramate chiar i dup montare pe placa de lucru (vezi figura 2.3.a,b). Standardul de programare n

  • Introducere n domeniul circuitelor logice programabile

    17

    sistem folosit n cazul circuitelor XILINX din seria XC9500 este IEEE1149.2. n cadrul acestui standard reprogramarea n sistem are loc prin plasarea dispozitivelor CPLD n lan pentru ca datele s poat fi transmise tuturor dispozitivelor din lan conform unui algoritm. Prin programarea circuitelor cu ajutorul algoritmului de testare, circuitul se poate reconfigura n sistem cu o securitate ridicat, protejndu-l astfel mpotriva decriptrii neautorizate. Acest standard face apel la busul JTAG (Joint Tasck Action Group) i implic urmtoarele linii: TMS Test Mode Select = selectare mod test; TDI Test Data Input = semnal intrare test; TDO Test Data Output = semnal ieire test; TCK Test Clock = semnal de clock test.

    Figura 2.3 Programarea n sistem a circuitelor CPLD

    Att circuitele CPLD ct i cele FPGA pot fi programate prin intermediul unei memorii flash SRAM, dar numai circuitele CPLD pot fi programate ca EPROM sau EEPRO. Aceasta presupune c circuitele CPLD sunt prevzute cu elemente de stocare nevolatile, care permit aplicaiilor implementate n CPLD s ruleze imediat ce sunt puse sub tensiune. n contrast cu circuitele CPLD, FPGA-urile care au ca celule de baz memorii de tip SRAM au nevoie de un dispozitiv extern, cum ar fi un EEPROM din care s-i ncarce programul de configurare. De-a lungul evoluiei circuitelor PLD de capacitate mare s-au distins dou arhitecturi: segmented-block-based [SBB] i channel-arry-based [CAB], pe tot parcursul acestei lucrri se vor folosii abrevierile SBB i CAB pentru a le definii. Diferenele majore dintre cele dou tehnologii sunt legate de arhitectura macrocelulelor i de structura reelei de conexiuni dintre macrocelule. Fiecare dintre cele dou arhitecturi prezint avantaje i dezavantaje. Un circuit PLD cu arhitectur de tipul SBB (vezi figura 2.4a) este alctuit n principal din cteva blocuri mari care conin pori logice de tipul I/SAU i o arie de elemente logice conectate la celulele I/O (input/output = intrare/ieire) prin intermediul unei matrici de interconexiuni programabil. De aceast arhitectur beneficiaz circuitele CPLD implementate ca i EPROM-uri sau EEPROM-uri n tehnologie CMOS.

  • Capitolul 2

    18

    Figura 2.4 Diagram bloc, prezint arhitectura segmentat (a) i ne-segmentat (b) specific

    circuitelor CPLD

    O arhitectur CAB (vezi figura 2.4.b) const dintr-o arie de blocuri logice programabile de dimensiuni relativ reduse nconjurat la periferie de blocuri I/O. Blocurile logice programabile sunt conectate ntre ele prin structuri de interconectare distribuite. Circuitele FPGA fabricate de firma XILINX beneficiaz de arhitectura mai sus menionat. Avantajele majore ale arhitecturii CAB constau n faptul c: este o arhitectur bazat pe elemente de tip registru, conine multe blocuri I/O, blocurile logice sunt complet decuplate de blocurile I/O i exist posibilitatea reprogramri conexiunilor dintre acestea. n comparaie circuitele CPLD bazate pe tehnologia SBB sunt mai rapide i mai predictibile n ceea ce privete determinarea ntrzierilor datorit structurii continue de interconectare. Datorit caracteristicilor enumerate mai sus acest tip de circuite este recomandat n cazul implementrii aplicaiilor de control descrise cu FSM-uri (Finite State Machine). Vom continua dezbaterea asupra avantajelor oferite de circuitele CPLD n comparaie cu circuitele FPGA, lund n discuie gradul de flexibilitate al fiecruia dintre ele n cadrul aceluiai mediu de proiectare. Datorit faptului c structura CPLD-urilor se bazeaz pe arhitectura PAL apare posibilitatea de a prevedea ntrzierile din circuit, fiind astfel mai puin afectate de modalitatea de conectare a macrocelulelor dect circuitele FPGA. n cazul acestora din urm este destul de greu s se prevad ntrzierile din circuit datorit faptului c structura de interconectare este mai flexibil oferind mai multe posibiliti de conectare pentru aceeai situaie, stabilirea traseelor dintre diferite blocuri logice fiind foarte dependent de mediul de proiectare folosit. Pe msur ce s-a mbuntit arhitectura i capacitatea circuitelor CPLD i FPGA, aceastea au devenit o alternativ din ce n ce mai evident la ariile de pori logice. Ultimele tehnologii de fabricare a circuitelor CPLD i FPGA se ncadreaz n

  • Introducere n domeniul circuitelor logice programabile

    19

    domeniul a 0,5-0,25m. n figura 2.5 este prezentat o diagram care ilustreaz evoluia circuitelor PLD de mare capacitate n ceea ce privete tehnologia de realizare i densitatea de pori logice/chip. Din eforturile de a mbuntii i a extinde arhitectura circuitelor FPGA a rezultat o nou clas de circuite numite sistem de matrici de pori logice programabile SPGA (System Programmable Gate Array). Aceste circuite noi combin arhitectura de baz a circuitelor FPGA cu ce a circuitelor ASIC (Application Specific Integrated Circuit), rezultnd astfel o capacitate mult sporit.

    Figura 2.5 Evoluia circuitelor PLD de mare capacitate n ceea ce privete tehnologia de realizare i

    densitatea de pori logice/chip.

    2.4 Tipuri de capsule i modaliti de alegere

    Datorit creteri densitii i performanelor circuitelor PLD, este o adevrat provocare pentru productori s furnizeze capsule cu caracteristici optime din punct de vedere termic, electric i mecanic. n plus capsulele destinate circuitelor PLD trebuie s aib dimensiuni minime i s se preteze la procesul de montare automat pe plci. Ultimele inovaii n industria circuitelor PLD au avut ca rezultat dezvoltarea capsulelor de tip PQFP (Plastic Quad Flat Packs = capsul de plastic plat), TQFP (Thin Plastic Quad Flat Pack = capsul de plastic plat subire) i a capsulelor de tip BGA (Ball Grid Array). Aceste tipuri de capsule de diferite grosimi folosesc diverse metode de rcire. n funcie de tipurile de capsule disponibile exist dou modaliti de montare a circuitelor PLD: montare prin guri i montare pe suprafa. Capsulele cele mai folosite pentru primul tip de montare sunt: capsulele de tip DIP (Dual In-line Packages = capsule cu dou rnduri de pini) i capsulele de tip PGA (Pin Grid Array = matrice de pini), vezi figura 2.6. Capsulele folosite n cazul montrii pe suprafa sunt de tipul LCC (Leadless Chip Carriers = capsul fr pini, contacte direct pe capsul ) i de tipul QFP (Quad Flat Packs = capsul plat de form ptratic), vezi

  • Capitolul 2

    20

    figura 2.6. Tehnologia de montare prin guri necesit inserarea capsulei pe plac i lipirea acesteia prin metalizare. Capsulele ceramice folosite pentru acest tip de tehnologie ocup mai mult spaiu pe plac dect capsulele folosite n tehnologia de montare pe suprafa. Avantajul acestui tip de capsule const n faptul c sunt mai solide din punct de vedere mecanic, deci sunt recomandate n aplicaiile militare i spaiale.

    DIP PGA QFP BGA

    Figura 2.6 Tipuri de capsule

    Tehnologia de montare pe suprafa (SMT) permite montarea dispozitivelor electronice pe ambele pri ale circuitului imprimat, aceast tehnologie a devenit foarte popular n cadrul aplicaiilor ce vizeaz sectorul comercial i industrial. Pe lng faptul c ofer o densitate sporit de dispozitive electronice pe placa, tehnologia SMT este mult mai potrivit n procesul de automatizare. Circuitele SMD (Surface Mounted Devices) i ajut pe proiectani s micoreze dimensiunile plcii de circuit imprimat i s minimizeze valorile capacitilor i inductivitilor parazite. Un dezavantaj al utilizrii circuitelor QFP este acela c pini corespunztori acestui tip de capsul sunt foarte fragili, ei fiind foarte uor de deteriorat pe durata procesului de testare/montare.

    Figura 2.7. Tipuri de capsule disponibile pentru circuitele PLD n funcie de numrul de pori logice

  • Introducere n domeniul circuitelor logice programabile

    21

    Alegerea circuitului PLD avnd capsula corespunztoare depinde de aplicaie i de mediul de proiectare folosit. Capsula aleas trebuie s aib rezisten termic sczut i de asemenea capaciti i inductiviti parazite minime. Caracteristicile termice ale capsulelor sunt foarte importante avnd o influen major asupra performanelor i fiabilitii dispozitivelor. Cu ct crete mai mult densitatea de pori logice i cu ct crete puterea disipat, cu att trebuie ca rezistena termic (JA) s fie mai sczut. Pentru a diminua rata defectelor mecanice provocate de manipulare (montare/testare) majoritatea circuitelor PLD sunt prevzute cu opiunea de scanare periferic pentru testare prin intermediul busului JTAG (standard IEEE 1149.1) i de asemenea exist i posibilitatea de reprogramare n sistem. n figura 2.7 sunt prezentate cteva tipuri de capsule disponibile pentru circuitele PLD, tipul de capsul pentru un anumit circuit depinde att de numrul de pori logice ct i de numrul de pini. 2.5 Modaliti de proiectare cu circuite PLD

    Metoda de baz n proiectarea cu circuite logice programabile cuprinde trei faze: - descrierea proiectului; - implementarea proiectului; - verificarea proiectului. n general programele soft folosite pentru descrierea i simularea proiectelor sunt de uz general i nu sunt dependente de tehnologie spre deosebire de programele folosite pentru sintez. Iniial descrierea proiectelor se fcea prin intermediul simbolurilor schematice, dar aceast modalitate se preteaz numai n cazul proiectelor cu un numr relativ redus de pori logice. Pentru proiectele mai complexe descrierile la nivel de poart logic pot devenii foarte complicate, astfel c s-au dezvoltat limbajele de descriere hardware (HDL = Hardware Description Language). Prin intermediul limbajelor HDL se face o descriere comportamental a proiectului, din aceast situaie deriv urmtoarele avantaje: - Alegerea tehnologiei (circuitul FPGA sau CPLD) n care se va face

    implementarea proiectului poate fi amnat ctre o faz de proiectare mai trzie, moment n care cerinele sunt mai bine conturate.

    - Este facilitat trecerea de la o tehnologie la alta (ex. din FPGA n pori logice), costurile fiind minime.

    - Pri dintr-un proiect realizat pot fi reintegrate foarte rapid n proiecte viitoare, indiferent de tehnologie.

    Limbajele HDL se ncadreaz n dou categorii: - Limbaje HDL folosite pentru descrierea circuitelor programabile logice simple,

    dezvoltate n anii 1970. Dintre acestea reamintim: asamblorul PAL (PALASM), limbajul de descriere avansat a expresiilor booleene (ABEL) i compilatorul universal pentru dispozitive logice programabile (CUPL).

  • Capitolul 2

    22

    - Limbaje HDL folosite pentru descrierea circuitelor programabile logice complexe avnd un nivel mai mare de abstractizare, dezvoltate la sfritul anilor 1980. Cele mai cunoscute sunt VHDL-ul (Very High Speed Integrated Circuits (VHSIC) HDL) i Verilog HDL-ul.

    Sinteza logic este procesul de conversie optimizat a unui proiect de la nivel de descriere structural / comportamental abstract la nivel de poart logic. Cu toate c, teoretic descrierea VHDL este transparent (independent) din punct de vedere al tehnologiei, rolul programelor de sintez este foarte important n metodologia de proiectare. Astfel c pentru diferite arhitecturi FPGA se impun stiluri diferite de codare VHDL a unui proiect. Majoritatea proiectelor dezvoltate pentru tehnologia FPGA sunt compatibile cu tehnicile de proiectare ierarhice (top-down). Astfel c se va face o descriere a blocurilor de baz la nivelul cel mai superior (top level), dup care se intr n fiecare bloc i se face descrierea funcional a acestuia sau se ncepe o alt descriere ierarhic. Acest tip de proiectare ierarhic are cteva avantaje, cum ar fi: posibilitatea de depistare rapid a erorilor, partiionarea proiectelor complexe, stocarea anumitor funcii mai frecvent folosite n biblioteci.

    Figura 2.8 Metodologia de proiectare

    Cele mai importante firme productoare de soft de proiectare Cadence Design System, Mentor Graphics i Viewlogic ofer programe de proiectare automat universale independente de metoda de proiectare, programe care conin biblioteci pentru o gam larg de circuite PLD. Exist de asemenea programe de proiectare mai puin performante dect cele produse de ctre firmele enumerate mai sus, dar

    SIMULARE FUNCIONAL

    NETLIST N FORMAT EDIF

    DESCRIERE HDL

    SIMULARE

    OPTIMIZARE/PLASARE I INTERCONECTARE

    CIRCUIT FPGA/CPLD

    BIBLIOTECI TEHNOLOGICE

    FPGA/CPLD

    CONSTRNGERI SIMULARE DE TIMP COMPILARE I

    SNTEZ

  • Introducere n domeniul circuitelor logice programabile

    23

    care pot veni n ntmpinarea cereri utilizatorilor mai puini pretenioi i cu resurse financiare mai reduse. n figura 2.8 este prezentat metodologia de proiectare specific mediilor EDA (Electronic Design Automation = proiectare electronic automatizat). Pentru proiecte care depesc 10.000 de pori logice este recomandat ca descrierea de baz a proiectului s fie n VHDL sau n Verilog, la acestea se pot aduga i metodele clasice (schematic i main de stri). Productorii de circuite PLD furnizeaz biblioteci care conin descrieri sub forma de netlisturi ale circuitelor pe care le produc. Aceste biblioteci permit firmelor productoare de soft de proiectare s-i orienteze programele ctre o anumit familie de circuite PLD i ctre un anumit tip de arhitectur a macrocelulelor. n general productorii de programe EDA integreaz partea de descriere, simulare, sintez i analiz de timp a proiectelor. n completare productorii de circuite PLD integreaz programe de plasare a macrocelulelor i de interconectare a acestora, specifice fiecrui tip de arhitectur n parte. Majoritatea proiectanilor care folosesc circuite FPGA au adoptat metoda de proiectare ierarhic, mprumutat de la proiectanii de circuite ASIC, datorit creterii complexitii circuitelor PLD. Diferena care apare ntre proiectarea FPGA i cea ASIC este n procesul de verificare. Proiectantul de circuite ASIC folosete modaliti de simulare extinse pentru a se asigura de succesul plasrii circuitului pe siliciu, n timp ce proiectantul de circuite FPGA poate face verificarea final n circuit cu un impact minim asupra duratei procesului de proiectare. Avantajele oferite de programele care folosesc sinteza logic devin evidente pentru proiecte care complexe (ex. 10.000-100.000 pori logice). Totui pentru anumite proiecte aceste programe de sintez logic pot s produc circuite care sunt mai mari i mai lente dect dac ar fi fost descrise direct cu pori logice. Eficiena acestor programe este foarte dependent de experiena proiectantului care le folosete. Dup optimizarea proiectului la nivele superior acesta va fi convertit din descrierea de tip Boolean ntr-un netlist (list de conexiuni) bazat pe module FPGA. Logica boolean va fi astfel structurat nct s respecte constrngerile de timp. Elementele secveniale vor fi implementate n bistabili. Odat verificat corectitudinea proiectului acesta va fi transferat programului de implementare fizic. Aceste programe de plasare i interconectare a macrocelulelor folosesc informaiile rezultate n urma sintezei vizavi de constrngerile de timp pentru a calcula traseele cu ntrzierile cele mai mari i ale optimiza. Odat plasate i interconectate (placed & routed) componentele se extrag informaii cu privire la ntrzierile post-plasare sau post-layout. Aceste informaii mpreun cu fiierul netlist rezultat n urma implementrii se folosesc pentru simulare de timp complet. n urma acestei simulri se obin informaii cu privire la frecvena de lucru maxim a proiectului.

  • Capitolul 2

    24

    2.6 Criteriile de alegere a circuitelor PLD

    n alegerea unui circuit PLD pentru o aplicaie dat se ine cont de densitatea i performanele acestuia. Cu ct este mai redus capacitatea unui circuit PLD, cu att performanele acestuia vor fi mai ridicate. Totui folosirea circuitelor de capacitate redus nu este o soluie n cazul proiectelor mai complexe existnd posibilitatea ca acesta s nu poat fi implementat ntr-un singur circuit. n cazul circuitelor PLD 22V10 frecvena maxim de lucru este de 175 MHz, iar n cazul circuitelor CPLD aceasta poate fi de aproximativ 150 MHz. n multe cazuri aceast informaie furnizat de productorii de circuite PLD este valabil numai pentru cele mai simple pri ale proiectului per ansamblu frecvena de lucru fiind mai mic. Dup cum se poate observa este dificil de fcut o estimare a performanelor proiectului pe baza specificaiilor date de productori. Performanele circuitelor CPLD sunt i mai greu de prevzut n comparaie cu circuitele PLD simple. Unele circuite CPLD avnd specificaii de timp n funcie de numrul de produse ale funciilor implementate i n funcie de fanout. n cele din urm programul de compilare va fi cel care va decide viteza maxim de lucru a proiectului. Dup cum am amintit i ntr-un paragraf anterior n cazul circuitelor FPAG este i mai greu de estimat ntrzierea maxim de propagare i frecvena maxim de lucru, aceasta datorit resurselor de interconectare foarte flexibile de care dispun acest tip de circuite. n general frecvena de lucru a unui proiect implementat ntr-un circuit FPGA este mai mic dect dac implementarea se face ntr-un circuit CPLD. Atuul principal al circuitelor FPGA rmne capacitatea de implementare. Selectarea unui circuit PLD pentru un proiect dat se face n funcie de densitatea circuitului, inndu-se cont de numrul de pori folosite raportat la numrul total de pori disponibile. Modalitatea de specificare a numrului de pori logice pentru circuitele FPGA i CPLD este diferit de la un productor la altul, prin urmare capacitatea circuitelor PLD poate fi comparat numai n cazul n care provin de la acelai productor. Un alt factor important n alegerea unui circuit PLD este consumul de putere, circuitele logice programabile bazate pe tehnologie EEPROM consum mai mult dect circuitele bazate pe tehnologie SRAM. Cele mai frecvente aplicaii orientate ctre circuite de tip PLD sunt cele care conin automate de strii. Pentru acest tip de aplicaii circuitele CPLD sunt preferate circuitelor FPGA datorit faptului c n arhitectura lor sunt prezeni bistabili de tip T, acesta avnd ca rezultat reducerea logici de implementare i o mai bun compactare a proiectului. Implementarea optim a automatelor de stare n circuitele FPGA depinde de tehnica de codificare a strilor pentru a reduce logica combinaional dintre stri. Tehnica one-hot care folosete cte un registru per stare este recomandat n cazul circuitelor FPGA. n general arhitectura FPGA este mult mai recomandat n cazul aplicaiilor care descriu operaii aritmetice care implic registre logice. n concluzie cele mai importante criterii luate n considerare la alegerea unui circuit PLD sunt: - costul circuitului FPGA sau CPLD;

  • Introducere n domeniul circuitelor logice programabile

    25

    - timpul necesar pentru ca produsul s ajung pe pia; - numrul de regitri (bistabile) disponibili; - numrul de porturi de intrare/ieire; - accesul la bibliotecile cu macrocelule ale productorului; - costul i calitatea programelor de proiectare disponibile; - consumul de putere; - tipurile de capsule disponibile; - alte caracteristici suplimentare disponibile.