Beruflich Dokumente
Kultur Dokumente
Bibliografie
V.Tiponut, Sisteme Dedicate, Editura POLITEHNICA 2007 (in pregatire) * * * Microcontrolerul 8051, (note de curs) Ted Van Sickle, Programming Microcontrollers in C, Second Edition, by LLH Technology Publishing, 2001
Any electronic system that uses a CPU chip, but that is not a generalpurpose workstation, desktop or laptop computer.
Definitie
Sistemele dedicate sunt combinatii de structuri de calcul hard si soft, circuite electronice si respectiv componente electromecanice, concepute pentru a realiza o functie specifica (dedicate unei aplicatii).
Real World
Embedded System
Real World
ADC
S/H
An
Signal Conditioning
Data Exchange
AntiAliasing
Conditionarea semnalului
Figure 1. Using a configurable building block for a programmable analog IC, you can change circuit parameters or functionality by changing switch settings with data stored in the memory.
I = fcCV R = 1/(fcC)
With this switched-capacitor integrator, the integration time constant is set by the capacitor ratio, which can be defined with better than 1% accuracy. Changes in the power supply voltage, temperature, or aging have no effect on the time constant.
Componente standard (microprocesoare (uP), microcontrolere (uC), procesoare de semnal (DSP)) Application-Specific Integrated Circuits (ASIC) Application-Specific Standard Products (ASSPd) Field Programmable Gate Array (FPGA) Solutia System on Chip (SOC)
Arhitectura specializata in scopul cresterea vitezei de executie a operatiilor aritmetice, Se recomanda a fi utilizat in aplicatii de calcul in timp real, care necesita viteza de lucru ridicata precum si in aplicatiile ce impun precizie de calcul ridicata (32 de biti), Din ce in ce mai mult DSP sunt prevazute cu dispozitive periferice si de intrare/iesire tipice microcontroleror, pentru a concura cu succes cu acestea din urma, Pretul de cost relativ ridicat (comparativ cu uC), fara a fi prohibitiv.
CONCLUZIE: Implementarea procesorului de date utilizind DSP se justifica in cazul aplicatiilor de prelucrari de semnale, in care precizia si mai ales viteza de executie sunt importante (telecomunicatii, prelucrari multimedia, comanda actionarilor electrice).
Costul implementarii cu ASIC este acceptabil numai in cazul aplicatiilor de serie mare, care fac posibila amortizarea costului relativ ridicat al proiectarii, Conditia mentionata este mai relaxanta in cazul circuitelor ASSPd, care se adreseaza unei clase mai largi de utilizatori, Procesorul de date implementat cu ASIC/ASSPd este performant deoarece proiectarea acestuia a fost facuta pornind de la specificatiile impuse de aplicatie.
CONCLUZIE: Implementarea procesorului de date utilizind circuite ASIC/ASSPd este de dorit ori de cite ori pretul de proiectare/fabricare nu este prohibitiv.
Comparativ cu ASIC, solutia utilizind FPGA este mai lenta, nu suporta aplicatii la fel de complexe iar consumul de la sursa de alimentare este mai ridicat, Prezinta flexibilitate ridicata, Costuri de implementare competitive la serii mici.
CONCLUZIE: Implementarea procesorului de date utilizind circuite FPGA se justifica pentru serii mici si in aplicatii unde se necesita un calcul masiv paralel (viteza mare de procesare).
Consum mai redus de la sursa de alimentare si fiabilitate sporita comparativ cu sistemele multichip, Costurile de implementare sunt acceptabile numai in cazul unor aplicatii de serie mare, datorita valorii ridicate a costului NRE (Non-recurring engineering adica costul platit o singura data pentru cercetare, proiectare si testarea unui nou produs), Reprezinta o solutie mai eficienta decit ASIC, deoarece poate include pe acelasi chip si alte componente decit circuitele electronice (spre exemplu cristale de cuart, microcomponente electromecanice, etc.).
CONCLUZIE: Implementarea procesorului de date utilizind tehnologia SOC este de dorit ori de cite ori pretul de proiectare/fabricare este competitiv.
Competitii actuale
Componentele Software Sistemul de operare (Operating System) Softul de aplicatie (Application Softvare) Obs.: In cazul sistemelor dedicate mici Sistemul de Operare poate lipsi
Sistemul de operare
Definitie: Sistemul de operare (SO) este un set de programe de calcul care controleaza resursele hardware si software ale unui calculator. In cazul sistemelor dedicate, SO trebuie sa fie: De timp real (Real-time Operating System RTOS) Dedicat (Embedded)
Planificarea proceselor (task-urilor) Deservirea intreruperilor Comunicarea si sincronizarea intre procese Managementul memoriei Administreaza sistemul de fisiere Asigura conectarea in reteaua de calculatoare (TCP/IP) Comanda Interfata Grafica-Utilizator
Ce este un RTOS ?
Un sistem de operare in timp real este capabil sa execute toate sarcinile sale respectind anumite constringeri de timp, bine precizate. Citeva caracteristici: Raspuns rapid si predictibil la evenimente externe urgente, Comportament stabil la supraincarcari tranzitorii (cind
sistemul este supraincarcat de evenimente incit nu pot fi respectate toate constringerile de timp impuse pentru anumite procese, critice, timpii de executie inca trebuie respectati) Un inalt grad de programabilitate (constringerile de timp ale sistemului trebuie sa fie satisfacute la un nivel ridicat de utilizare a tuturor resurselor)
Ce este un SO dedicat ?
Microprocesorul este o componenta digitala programabila care incorporeaza pe un singur circuit integrat toate functiile unei unitati centrale de procesare (CPU).
Conceptul de magistrala
Microprocesor (PGA)
Microcontrolerul (uC) este un microcalculator pe un singur chip utilizat pentru comanda altor dispozitive si circuite electronice. Un microcontroler include pe chip: Unitatea centrala de procesare (CPU), Memorii, Interfete de intrare/iesire, Dispozitive periferice integrate (interne), Convertoare A/D si D/A.
Avantaje arhitecturii HARWARD: Viteza de executie mai ridicata, Siguranta sporita in functionare Observatie: de regula, cele doua memorii sunt conectate la CPU printr-o singura magistrala.
Registri inclusi in Register File: The Stack Pointer (SP) Program Status Word (PSW)
Executia instructiunilor
;_________________________________________ ; MAIN PROGRAM CSEG ORG 0000h DEC 50H NOP END ;_________________________________________ Rezultatul executiei: este decrementat (DEC 50H ) continutul locatiei din memoria RAM interna a microcontrolerului, avind adresa 50H (adresare directa); instructiunea NOP nu are nici un efect.
Instructiunea DEC
Instructiunea NOP
Setul de instructiuni
Generalitati:
Diferitele tipuri de uC include un numar variabil de instructiuni: CISC (Complex Instruction Set Computer ) includ citeva zeci de instructuni puternice, ortogonale (fiecare instructiune dispune de toate modurile posibile de adresare ale operandului), RISC (Reduced Instruction Set Computer) include un set de sute de instructiuni de complexitate mai scazuta. Majoritatea instructiunilor sunt reprezentate in memoria program pe 1-4 octeti (un octet ce specifica operatia si de la 0 la 3 operanzi, separati prin virgule), Pentru programator, instructiunile sunt specificate prin mnemonice, acronime provenite din limba engleza si care sugereaza natura operatiei efectuate, Cu citeva exceeptii, instructiunile prelucreaza informatia din memoria RAM interna a microcontrolerului.
Adresarea indirecta:
Instructiuni logice
Instructiuni de transfer
Precizari
PSEN Program Store Enable P0 Adrese low (A7-A0) multiplexate in timp cu date (D7-D0) ALE Address Latch Enable P2 Adrese high (A15-A8) Memorii program externe sunt rar utilizate
Observatii: Memoria de pe chip de 64Ko Programare ISP (In System Programming) si IAP (In Application Proramming)
Observatii: Sunt prezente 2 tipuri de memorii de date:RAM (intern si extern) si memorie Flash, Accesul la memoria RAM se face dependent de tipul instructiunii utilizate: cele mai multe instructiuni acceseaza RAM intern; RAM extern poate fi accesat prin numai 2 instructiuni:
FLASH DATE
Sistemul de intreruperi
Intreruperile sunt semnale asincrone ale sistemului hardware (intreruperi hardware) care solicita atentia unitati centrale de procesare (CPU) sau evenimente sincrone software (intreruperi software), care indica schimbari in executia programului. Aparitia unei intreruperi determina salvarea starii de executie a programului si executia unei subrutine de tratare a intreruperii, dupa care se revine in programul principal, in punctul in care a fost parasit. Intreruperile hardware, sunt generate de regula de evenimente externe microcontrolerului, de interfetele de intrare/iesire sau de dispozitivele periferice interne ale acestuia. Intreruperile software sunt implementate cu instructiuni speciale de intrerupere, incluse in setul de instructiuni ale microcontrolerului. Uneori, intreruperile software sunt utilizate pentru a implementa apeluri de sistem (System Call), prin care programele de aplicatie solicita servicii sistemului de operare.
PCA Programmable Counter Array nINT0/1 External Interrupt IP Interrupt Priority EA Enable All Intreruperi mascabile/nemascabile!
Depasirea capacitatii N/T T0 (Timer0 Overflow) Depasirea capacitatii N/T T1 (Timer1 Overflow) Depasirea capacitatii N/T T2 (Timer2 Overflow) Receptia/transmisia seriala a unui caracter Eveniment extern la intrarea nINTO Eveniment extern la intrarea nINT1 Evenimente legate de PCA
Secventa de Pooling
Intreruperea externa nINTO prioritate maxima Intreruperea N/T T0 Intreruperea externa nINT1 Intreruperea N/T T1 Intreruperi generate de PCA Intreruperile portului serial Intreruperea N/T T2 prioritate minima
1. Executia unei intreruperi nu poate fi sistata de aparitia unei intreruperi avind aceeasi prioritate, 2. O intrerupere cu prioritate ridicate poate intrerupe executia unei intreruperi cu prioritate scazuta, 3. O intrerupere cu prioritate scazuta poate fi executata numai daca nici o alta intrerupere nu este in curs de executie, 4. Daca doua intreruperi apar in acelasi timp, va fi executata mai intii intreruperea cu prioritate ridicata. Daca ambele intreruperi au aceeasi prioritate, va fi executata mai intii prima intreruperea deservita de secventa de pooling.
1. Este savat in stiva continutul numaratorului program (Program Counter PC), 2. Sunt blocate intreruperile avind aceasi prioritate rspectiv prioritate mai scazuta, 3. In cazul unor intreruperi (externe, temporizatoare) sunt sterse fanioanele aferente, 4. Se transfera executia programului la subrutina de tratare a intreruperii, 5. Se executa subrutina de tratare a intreruperii, dupa care se revine in programul principal.
Portul este un circuit de interfata paralela, care permite conectarea unui dispozitiv (periferic) extern la microcontroler. Paralel datele sunt transferate (I/O) in format paralel (mai multi biti simultan). Observatii: Un microcontroler are, tipic, patru porturi; numarul acestora poate fi mai mare (opt sau chiar mai mult) sau pot lipsi cu desavirsire. Unele porturi pot fi utilizate numai ca intrari/iesiri de uz general, altele asigura si asa-numitele functii alternative. In cazul unui microcontroler tipic, cu patru porturi, porturile P0 si P2 pot fi utilizate atit ca intrari/iesiri de uz general I/O cit si pentru conectarea la microcontroler a unor memorii externe (acestea realizeaza in exterior magistrala de date (P0) si de adrese (P0, octetul inferior A7-A0 si P2 octetul superior A15-A8).
Linia de port in mod iesire: in contratimp (push-pull) si drena in gol (open drain)
latch
multiplexor buffer
o driver T1(n)
Structura include un bistabil D (latch), un etaj de iesire (driver) si un etaj separator la intrare (buffer).
ANL (logical AND, e.g., ANL P1, A) ORL (logical OR, e.g., ORL P2, A) XRL (logical EX-OR, e.g., XRL P3, A) JBC (jump if bit = 1 and clear bit, e.g., JBC P1.1, LABEL) CPL (complement bit, e.g., CPL P3.0) INC (increment, e.g., INC P2) DEC (decrement, e.g., DEC P2) DJNZ (decrement and jump if not zero, e.g., DJNZ P3, LABEL) MOV PX.Y, C (move carry bit to bit Y of port X) CLR PX.Y (clear bit Y of port X) SETB PX.Y (set bit Y of port x)
Example: The carry tlag is originally set.The data present at input Port 3 is 11OOO1O1B. The data previously written to output Port 1 is 35H (00110101B). MOV P1.3,C MOV C,P3.3 MOV P1.2,C will leave the carry cleared and change Port 1 to 39H (OO111OO1B).
Diferente fata de P0: T2 este inlocuit cu un circuit electronic cu rol de rezistenta pull-up, La accesarea memoriei externe curentul de iesire asigurat este mult mai mare decit in regimul intrari/iesiri de uz general.
Diferente fata de P2: Pentru functie functie alternativa trebuie inscris 1 in latch Rezistenta de pull-up asigura un curent mare numai in cazul functiei alternative, pe durata tranzitiei 01, Ca intrare de uz general, curentul de iesire furnizat de circuitul de pull-up este drastic diminuat => Cuasi-bidirectional
De la circitul SI-NU
Circuite temporizator/numarator
Functii: Temporizator=> Marcarea cu precizie, prin intreruperi, a unor intervale de timp cu durate programabile Numarator => Numararea unor evenimente externe (tranzitii aplicate la un pin extern) Functionarea este programabila prin intermediul unor registri SFR (TMOD si TCON) Sunt disponibile trei circuite temporizator/numarator: T0, T1, T2
C/Tx => stabileste functia de numarator/temporizator TRx > pornit/oprit functionarea (R=RUN)
Temporizatorul T2
Moduri de lucru: Modul captare (capture) Modul cu autoincarcare (reload) Numarator sus/jos (up-down) Generator unda dreptunghiulara (clock out) Generator pentru frecventa de transmsie seriala (baud rate)
Interfata RS-232
Ultima varianta a standardului EIA/TIA 232 E
TIA = Telecommunications Industry Association EIA = Electronic Industries Alliance
Viteza maxima: 20 Kbps (116 Kbps) Lungimea maxima a cablului: 15 m (2000 pF) Nivelurile logice pentru date (logica negativa): +5 .. +25 V pentru 0 logic -5 .. -25 V pentru 1 logic Pentru liniile de control logica este pozitiva Frecvente de transmisie: 300, 1200, 2400, 4800, 9600, si 19200 bps Transmisie asincrona( bit de start, date, paritate si stop)
1 Data carier detect DCD 2 Received data RXD 3 Transmit data TXD 4 Data terminal ready DTR 5 Signal ground 6 Data set ready DSR 7 Request to send RTS 8 Clear to send CTS 9 Ring indicator RI Observ.: DTR, DSR, RTS, CTS sunt semnale pentru protocolul de comunicatie
2 3 DTE 7
2
3 7
2
3 DTE 7
Calculator PC
Modem
Modem
Calculator PC
2 DTE 3 3 7
2 DTE
TX
TX RX DTR DSR
RX DTR DSR
RTS
CTS DCE Modem GND
RTS
CTS DTE Calculator PC
RX
DTR
DSR
RTS CTS DTE Calculator PC
DTE
Calculator PC
TX
TX
RX
DTR DSR RTS CTS DTE GND
RX
DTR DSR RTS CTS DTE
Calculator PC
Calculator PC
Mode Mode 1: Single Variable Resolution PWM Mode 2: Twin 8-bit PWM Mode 3: Twin 16-bit PWM Mode 4: Dual 8-bit PWM
Introduction
I2C and SPI Serial communication protocols Meant for short distances inside the box Low complexity Low cost Low speed (a few Mbps at the fastest )
What is SPI?
Shorthand for Serial Peripheral Interface Defined by Motorola on the MC68HCxx line of microcontrollers Generally faster than I2C, capable of several Mbps
Applications: Like I2C, used in EEPROM, Flash, and real
time clocks
Better suited for data streams, i.e. ADC converters Full duplex capability, i.e. communication between a codec and digital signal processor
SPI Protocol
What is I2C?
Shorthand for an Inter-integrated circuits bus Developed by Philips Semiconductor for TV sets in the 1980s I2C devices include EEPROMs, thermal sensors, and real-time clocks Used as a control interface to signal processing devices that have separate data interfaces, e.g. RF tuners, video decoders and encoders, and audio processors.
Some features
I2C bus has three speeds: Slow (under 100 Kbps) Fast (400 Kbps) High-speed (3.4 Mbps) I2C v.2.0 Limited to about 10 feet for moderate speeds
2-wire serial bus Serial data (SDA) and Serial clock (SCL) Half-duplex, synchronous, multi-master bus No chip select or arbitration logic required Lines pulled high via resistors, pulled down via open-drain drivers (wired-AND)
I2C Protocol
1. Master sends start condition (S) and controls the clock signal 2. Master sends a unique 7-bit slave device address 3. Master sends read/write bit (R/W) 0 - slave receive, 1 - slave transmit 4. Receiver sends acknowledge bit (ACK) 5. Transmitter (slave or master) transmits 1 byte of data
6. Receiver issues an ACK bit for the byte received 7. Repeat 5 and 6 if more bytes need to be transmitted. 8.a) For write transaction (master transmitting), master issues stop condition (P) after last byte of data. 8.b) For read transaction (master receiving), master does not acknowledge final byte, just issues stop condition (P) to tell the slave the transmission is done
I2C Signals
Start high-to-low transition of the SDA line while SCL line is high Stop low-to-high transition of the SDA line while SCL line is high Ack receiver pulls SDA low while transmitter allows it to float high Data transition takes place while SCL is low, valid while SCL is high
I2C Features
Clock stretching when the slave (receiver) needs more time to process a bit, it can pull SCL low. The master waits until the slave has released SCL before sending the next bit. General call broadcast addresses every device on the bus 10-bit extended addressing for new designs. 7-bit addresses all exhausted
I2C Tradeoffs
Advantages: Good for communication with on-board devices that are accessed occasionally. Easy to link multiple devices because of addressing scheme Cost and complexity do not scale up with the number of devices Disadvantages: The complexity of supporting software components can be higher than that of competing schemes ( for example, SPI ).
Trecerea in regimurile cu consum redus se face setind corespunzator anumiti biti dintr-un registru de comanda (PCON) Exixta, in general, doua regimuri cu consum redus: IDLE (inactiv) POWER DOWN
Regimul IDLE
Functionarea CPU este sistata, dispozitivele perifericile functioneaza, registrii interni si iesirile porturilor isi pastreaza starea, Iesirea din starea IDLE: prin resetare sau aparitia unei intreruperi validata
Regimul POWER-DOWN
CPU si perifericile sunt inactive Oscilatorul respectiv TIC (Timer interval Counter) pot fi active/inactive Porturile isi pastreaza nivelul logic la iesire Consum de ordinul uA
Activarea pinului de RESET Ciclu deconectare-conectare a alimentarii Intrerupere de la TIC Intrerupere de la SPI Intrerupere de la nINT0
Comenzi disponibile
From 0 to n bytes of executable code, or memory loadable data. n is normally 20 hex (32 decimal) or less.
The least significant byte of the two's complement sum of the values represented by all the pairs of characters in the record except the start code and checksum.
Checksum
01
02
Lock Mode
This mode locks the code memory, disabling parallel programming of the program memory Reading the memory in parallel mode and reading the memory via a MOVC command from external memory is still allowed. This mode is deactivated by initiating a code-erase command in serial download or parallel programming modes.
Secure Mode
This mode locks code in memory, disabling parallel programming (program and verify/read commands) as well as disabling the execution of a MOVC instruction from external memory Read/write of internal data Flash from external memory is also disabled This mode is deactivated by initiating a code-erase command in serial download or parallel programming modes.
Interfeta JTAG
Scurt istoric: Standardul IEEE 1149 - "Standard Test Access Port and Boundary-Scan Architecture a fost elaborat pentru testarea placilor PCB echipate conform metodei de testare pe frontiera. A fost elaborat de Joint Test Action Group (JTAG) si arhitectura definta de catre acestia este cunoscuta ca "JTAG boundary scan" sau interfata JTAG. Standardul defineste un protocol serial de comunicatie cu 5 pini pentru accesul si comanda nivelurilor logice la pinii unui circuit integrat ; extensii ulterioare ale standardului privesc circuite specifice integrate pe chip si care permit accesul la insasi resursele hardware prezente pe acesta, cu scopul depanarii aplicatiilor.
Avantaje:
Testarea se face independent de celelalte circuite logice de pe placa echipata. Este redus considerabil numarul necesar al punctelor de testare (JTAG in sine nu necesita puncte de testare) => scade pretul de fabricare si creste densitatea de circuite plantate.
Unele companii include pe chip extensii (EMULATOARE) care utilizeaza capabilitatile JTAG pentru a implementa functii de depanare a aplicatiilor software. Cu un suport hardware potrivit aceasta interfata permite incarcarea codului obiect, lansarea lui in executie, examinarea continutului diferitilor registri, a continutului memoriei, etc.. Procedura de depanare este condusa de o aplicatie software care ruleaza pe un calculator personal.
Subiectul 01 Comentati arhitectura microcontrolerelor INTEL MCS251 si a microconvertoarelor Analog Devices (AD). Caracterizati pe scurt fiecare dispozitiv inclus in schema bloc, explicati denumirile prescurtate, apreciati valorile cantitative ale diferitilor parametri.
Subiectul 01
Subiectul 01
Subiectul 01
Subiectul 01
Subiectul 01
Subiectul 01
Subiectul 02 Comentati arhitectura microcontrolerelor TI MSP430 si Freescale HCS12(X). Caracterizati pe scurt fiecare dispozitiv inclus in schema bloc, explicati denumirile precurtate, apreciati valorile cantitative ale diferitilor parametri.
Subiectul 02
Subiectul 02
Subiectul 02
CPU pe 16 biti, 40 MHz Memorie pina la 1 Mbytes Flash, 32 Kbytes RAM, 4 Kbytes EEPROM, Interfete intrare/iesire: 6 interfete seriale SCI (asynchronous serial communications interfaces 3 interfete SPI (serial peripheral interfaces) Registru de captare cu 8 canale 2 convertoare A/N cu 16 respectiv 8 canale si o rezolutie de 10 biti Circuit PWM (pulse-width modulator) cu 8 canale 5 interfete CAN (controlled area network) 2 interfete I2C
Subiectul 02
Subiectul 02
Procesoare numerice de semnal Implementarea in circuite FPGA Implementarea cu circuite ASIC si ASSP
Subiectul 03
Subiectul 03
Subiectul 03
Subiectul 03
Subiectul 03
Subiectul 03
Accesarea coeficientilor
Trebuie sa fie manipulate eficient matrice de coeficienti se utilizeaza un generator de adresa. Urmatoarea adresa este generata pe durata ciclului de fetch sau de memorare a rezultatului.
Subiectul 03
Trasaturi arhitecturale.
Executia programului (1)
Utilizeaza, de regula, o unitate aritmetica in virgula mobila integrata in fluxul de date pe 32 biti (simpla precizie) respectiv 64 biti (dubla precizie).
10-308 to 10308
Subiectul 03
Trasaturi arhitecturale.
Executia programului (2)
Utilizeaza o arhitectura Pipeline (in figura pe 5 niveluri)
IF = Instruction Fetch, ID = Instruction Decode, EX = Execute, MEM = Memory access, WB = Register write back)
Subiectul 03
Trasaturi arhitecturale.
Accesarea memoriei
Adunarile si inmultirile in paralel necesita: Extractia simultana (fetch) a doi operanzi Efectuarea adunarii sau a inmultirii (de regula ambele) Memorat rezultatul sau pastrat pentru a repeta operatiile Solutia:
DSP utilizeaza frecvent arhitecturi ale memoriei care permit accesul simultan la date multiple: date si/sau instructiuni. Procedee utilizate: Arhitectura Harward Arhitectura von Neumann modificata Utilizeaza accesul direct la memorie (DMA) Dispun de o unitate de calculi a sdresei de memorie.
Subiectul 03
Arhitectura Harward
Frecvent aceasta arhitectura include o memorie cache pentru instructiuni, lasind magistralele disponibile pentru operanzi (Super Harvard ARChitecture - SHARC).
Subiectul 03
Implementarea unui procesor de date intr-un FPGA se realizeaza dupa regulile cunoscute: Se descriere comportamentul procesorului cu unul dintre limbajele de descriere a circuitelor: VHDL, Verilog; aceste descrieri constituie proprietate intelectuala (IP), Se verifica prin simulare comportamentul procesorului, Se genereaza si incarca fisierul de configurare a circuitului FPGA.
Pot fi implementate in acelasi FPGA mai multe procesoare de date, care sa functioneze in paralel!
Subiectul 03
Subiectul 03
Circuitele ASIC performante pot include adesea un procesor pe 32 de biti, blocuri de memorie (ROM, RAM, EEPROM, flash) precum si alte structuri logice SoC (System-on-chip). Proiectarea unui ASIC presupune descrierea functionala utilizind un limbaj HDL (Verilog, VHDL), simulare, proiectarea circuitului.
ASSP (Application-specific standard products) este un circuit integrat care implementeaza o functie specifica si care deserveste un segment larg de piata. ASSP-urile sunt disponibile ca si componentele standard, off-the-shelf.
Subiectul 03
K$
$3.000 $2.500 $2.000 $1.500 $1.000 $500 $0 180 130 90 65 Tehnologia [nm]
Subiectul 03
K$
FPGA
Subiectul 03
Medii integrate de simulare si depanare a aplicatiilor software, Sisteme de dezvoltare, programe monitor, Emulatoare
Subiectul 04
Editorul de cod sursa are capabilitati de highlighting si autocompletare. Este un editor de text non document Compilatorul este o aplicatie software care translateaza textul scris intr-un limbaj de programare (codul sursa) intr-un alt limbaj de programare (cod obiect).
Subiectul 04
Subiectul 04
Componente: C51 ANSI C compilator optimizat (C Cross Compiler) care creiaza din codul C sursa module obiect relocabile, A51 Macro Assembler creiaza module relocabile din codul sursa in limbaj de asamblare, BL51 Linker/Locator combina modulele obiect relocabile creiate de C51 si A51 intr-un modul obiect absolut, LIB51 bibliotecarul (Library Manager) combina modulele obiect intr-o biblioteca ce poate fi utilizata de linker (editorul de legaturi) OH51 convertor cod obiect-HEX, creiaza fisiere Intel HEX din module cod absolut.
Subiectul 04
Componente: C51 ANSI C compilator optimizat (C Cross Compiler) care creiaza din codul C sursa module obiect relocabile, A51 Macro Assembler creiaza module relocabile din codul sursa in limbaj de asamblare, BL51 Linker/Locator combina modulele obiect relocabile creiate de C51 si A51 intr-un modul obiect absolut, LIB51 bibliotecarul (Library Manager) combina modulele obiect intr-o biblioteca ce poate fi utilizata de linker (editorul de legaturi) OH51 convertor cod obiect-HEX, creiaza fisiere Intel HEX din module cod absolut. RTX-51 sistem de operare in timp real (Real-time Operating System RTOS) care simplifica elaborarea aplicatiilor software complexe.
Subiectul 04
D J2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 CON26 P1 .0 P1 .1 P1 .2 P1 .3
EA
J3 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 CON26
CREF AVDD DAC0 DAC1 P1 .4 P1 .5 P1 .6 P1 .7 RESET RXD TXD P3 .2 P3 .3 DVDD P3 .4 P3 .5 P3 .6 P3 .7 SCLK AVDD P1 .0 P1 .1 P1 .2 P1 .3 1 2 3 4 5 6 CREF 7 8 DAC0 9 DAC1 10 P1 .4 11 P1 .5 12 P1 .6 13 U2 P1 .0/ADC0 /T2 P1 .1/ADC1 /T2 EX P1 .2/ADC2 P1 .3/ADC3 AVDD AGND CREF VREF DAC0 DAC1 P1 .4/ADC4 P1 .5/ADC5 /SS P1 .6/ADC6
PALE SEN
EA
52 51 50 49 48 47 46 45 44 43 42 41 40
P 1.7/ADC7
P2 .7/A1 5/A23 P2 .6/A1 4/A22 P2 .5/A1 3/A21 P2 .4/A1 2/A20 DGND DVDD XTAL2 XTAL1 P2 .3/A1 1/A19 P2 .2/A1 0/A18 P2 .1/A9 /A1 7 P2 .0/A8 /A1 6 SDATA/MOSI
P 3.5/T1/CONVST
P 3.3/INT1/MIS O
ADuC84 1BS6 2 P1 .7
P0 .3 P0 .2 P0 .1 P0 .0 ALE PSEN EA P2 .7 P2 .6 P2 .5 P2 .4
C15
XTAL2 P2 .3 P2 .2 P2 .1 P2 .0 MOSI
RES ET
P3 .[2 ..7 ] S1 DVDD SW-PB B C7 C6 0. 1uF U1 J1 5 9 4 8 3 7 2 6 1 DB9 A 2 1 4 6 7 13 8 14 V+ C1+ C2+ VT2 OUT R1IN R2IN T1 OUT MAX23 2A C8 0. 1uF 0. 1uF VCC C1C2T2 IN T1 IN R2OUT R1OUT GND 16 3 5 10 11 9 12 15 C4 0. 1uF DVDD C5 0. 1uF TXD 47 0 DVDD 3 D1 LED DVDD R4 LD11 17 DT50TR D2 +Vou t U4 0. 1uf DVDD C16
J5 1 2 3 3PIN
GND
GND VCC
CTS Rx RTS Tx
Vin
1 SM40 04 C12 + 22 uF
5
1 U3 4 NC 7 S0 8MS
R1 DVDD 10 K RXD
R3 1. 6
+ C11 10 uF
13 -Nov-20 06 Sh eet of D:\PROJ ECTS\3Projects UD\d L 8 41 -23 2\Hard ware\d LBy: -23 2.Ddb Drawn 8 41 4
Subiectul 04
Emulatoare
Emularea hardware este procesul de imitare a comportamentuluia unueia sau mai multor componente hardware , incluse in sisteul proiectat cu o alta componenta hardware numita sistem de emulare sau emulator. Se implementeaza prin interfete specifice incluse in chip BDM (Background Debug Mode) si accesate prin interfata JTAG => ICE De cele mai multe ori este emulata UCP
Subiectul 04