Sunteți pe pagina 1din 12

Microprocesorul

Scurta introducere
Computerul pe care il utilizati pentru a citi aceste pagini utilizeaza un microprocessor pentru ca sistemul sa functioneze. Acesta reprezinta inima oricarui calculator, indiferent ca este o statie de lucru pentru acasa, un server sau un laptop. Microprocesorul poate fi unul de marca Pentium, K6, Sparc sau oricare alta din multele brand-uri si tipuri existente pe piata la ora actuala. Cu toate acestea, ele functioneaza aproximativ la fel si indeplinesc aceleasi functii. Microprocesorul este unitatea central de prelucre a informaiei (U.C.P./CPU) a unui calculator sau sistem structurat funcional, care coordoneaz sistemul i care, fizic, se prezint sub forma unui cip electronic (IC). El controleaz activitile ntregului sistem i poate prelucra i datele utilizatorului. Este elementul principal al Centrul Microprocesorului (poza marita) sistemului de calcul; cipul, care este plasat pe placa de baz numit motherboard, este de obicei foarte complex, putnd ajunge la ordinul de milioane de transistoare. Microprocesorul asigur procesarea datelor, adic interpretarea, prelucrarea i controlul acestora, execut sau supervizeaz transferurile de informatii i controleaz activitatea general a celorlaltor componente care alctuiesc sistemul de calcul.

Componentele si functiile microprocesorului


Microprocesorul a luat nastere in urma progresului din domeniul electronicii. De la simple semiconductoare, precum diode si tranzistoare, tehnologia a progresat catre circuite integrate. Acesta este un ansamblu de componente discrete (diode, tranzistoare, rezistente, condensatoare i chiar bobine) montate pe un suport de siliciu miniatural numit cip. Acest ansamblu a fost standardizat i a cptat forme de capsule cu diferite dimensiuni i numr de terminale. Numrul componentelor a crescut de la cteva sute, la cteva mii sau chiar zeci de mii n cazul microprocesoarelor. Circuitele integrate logice, care au fost folosite cu zecile de mii n primele calculatoare, dar i n alte aplicaii industriale, de automatizare i robotizare, au netezit calea spre realizarea circuitelor integrate liniare. Acestea puneau probleme noi, generate de complexitatea structurii, de particularitile procesului tehnologic, de varietatea metodelor i a aparaturii de testare. Aprut n anii 1970, microprocesorul este o componenta electronica ce poate procesa date sau comenzi, primind prin impulsuri electrice informatii in limbaj binar. Un microprocesor incorporeaza toate functiile unui CPU intr-un singur circuit integrat. Acesta efectueza funciile aritmetice i de control ale unui calculator. Pe atunci un microprocesor era un circuit integrat pe scar larg (LSI), coninnd cteva mii de tranzistoare, pe o suprafa de aproximativ 5 mm2. Dezvoltarea microprocesoarelor a urmat dezvoltrii circuitelor integrate, 1

complexitatea acestora dublndu-se practic n fiecare an. n prezent s-a ajuns la cteva milioane de tranzistoare (6-9 milioane: Pentium II, AMD K6-2, Cyrix MII) pe o suprafa de civa milimetri ptrai. Z80 este un procesor care nu se mai folosete n nici un calculator actual, iar viteza lui este foarte mic (5 MHz), comparativ cu frecvenele procesoarelor actuale (trecute peste 3 GHz). Totui, mai este folosit i acum, n concuren cu microcontrolerele, la realizarea unor sisteme de automatizare simple i fr necesiti prea mari de Circuitul integrat al unui microprocesor Intel vitez. 8742, CPU ce ruleaza la 12 MHz Procesoarele au fost fabricate pentru o perioada lunga de timp din plachete de circuite integrate mici sau medii, continand cateva sute de tranzistori. Primele modele de microprocesoare au fost utilizate la calculatoare electronice, utilizate pentru operatiuni aritmetice pe cuvinte de maxim 4 biti. In curand microprocesoare pe 4 sau 8 biti au fost introduse in terminale de tipuri diverse, in imprimante cat si in diverse forme de automatizari. Ieftinirea microprocesoarelor pe 8 biti cu adresare pe 16 biti a dus la creearea primelor micro-computere la mijlocul anilor 1970. Integrarea intregului CPU pe un singur chip VLSI (Very Large Scale Integration) a redus si mai mult pretul pe capacitatea de procesare. Dezvoltarea microprocesoarelor din punct de vedere al cresterii complexitatii si a puterii de procesare, cat si scaderea preturilor a cunoscut un progres sustinut de la inceputurile sale. In 1990, caldura disipata TDP (Thermal Design Power), pierderile de curent cat si alti factori au dus la principalele constrangeri in dezvoltarea microprocesorului modern. De la introducerea primului microprocesor, Intel 4004, si pana la primul utilizat la scara larga, Intel 8080, in 1974 aceasta clasa de CPU-uri aproape a eliminat metodele alternative de implementare. In timp ce complexitatea, marimea, fabricatia cat si forma generala a procesoarelor s-au schimbat radical in ultimii 60 de ani, functiile sale de baza si design-ul au ramas in mare aceleasi. In prezent, miniaturizarea exterema a portilor electronice cauzeaza efecte neplacute, cum ar fi migrarea electronilor si pierderile de impuls electric dintre componentele tip MOSFET (Metal Oxide Semiconductor Field Effect Transitor) si tranzistoarele din procesor, ridicand din ce in ce mai multe intrebari privind limitarile tehnologiei tip circuite integrate. Pe plan mondial s-au impus mai multe firme productoare de microprocesoare printre care i Intel cu I8080, I8082, I8083, I8084, procesoare care echipau calculatoare personale cu frecvena ceasului de pn la 100 MHz, avnd circuite integrate de memorie ncepnd cu 4, 8, ori 16 Mb. Aceast dezvoltare rapid a microprocesoarelor a dus la apariia pe pia, anual a dou, chiar trei produse noi : Pentium I, Pentium II, Pentim III, Pentium IV, care este ultimul model al familiei de microprocesoare Intel pe 32 de bii, cu un singur nucleu de procesare i care lucreaz la frecvene mari, nregistrand performane superioare fa de Procesor Intel Pentium III, frecventa 600MHz modelele precedente.

Tabel 1: Evolutia procesoarelor Intel


Date - data aparitiei pe piata; Transistors numarul de tranzistori pe care il contine fiecare chip ; Microns dimensiunea celui mai mic fir conductor din cip (parul unui om este de aprox. 100 microni); Clock speed viteza de lucru a procesorului (mai multe detalii in paginile ce urmeaza); Data Width capacitatea de transfer a datelor in unitatea aritmetico-logica; MIPS milioane de instructiuni pe minut;

Din acest tabel se poate observa evolutia unei game destul de cunoscute de modele de microprocesoare. In 30 de ani, numarul tranzistorilor dintr-un cip a crescut exponential iar dimensiunea acestora a scazut sub un micron. Vitezele de lucru au crescut considerabil precum si capacitatea de executie a instructiunilor. Operatiile fundamentale principale ale majoritatii microprocesoarelor, indiferent de forma lor fizica, este de a executa o sectiune de instructiuni stocate denumite generic programe. Un program este reprezentat printr-o serie de numere stocate intr-un tip de memorie. Cei 4 pasi utilizati de toate tipurile de CPU sunt: CITIRE, DECODARE, EXECUTIE si RESCRIERE 1. CITIRE Este primul pas, ocupandu-se de cautarea unei instructiuni (reprezentata de un numar sau de o secventa de numere) din memoria programului. Adesea instructiunea ce trebuie localizata este stocata in memorii nu foarte rapide, cauzand un lag al procesorului datorat asteptarii ca memoria sa fie adresata. Aceasta problema este rezolvata in procesoarele moderne prin utilizarea tehnologiilor cache sau pipeline. 2. DECODARE Instructiunea care este citita din memorie este utilizata pentru a determina urmatorul pas al procesorului. In cel de-al doilea pas, decodarea, instructiunea este impartita in sectoare, semnificative pentru diverse portiuni ale procesorului. Modul in care valoarea numerica a instructiunii este interpretata este definita de ISA (Instruction Set Architecture). 3. EXECUTIE Dupa realizarea primilor pasi portiuni ale procesorului sunt conectate pentru a realiza operatiunea dorita. Acest proces se numeste executie. Daca, de exemplu, o operatie de adunare este accesata, un ALU (Arithmetic Logic Unit) va fi conectat la o serie de seturi de intrare si iesire. Intrarile ofera numerele care se doreste a fi adunate in timp ce iesirile contin suma finala. 4. RESCRIERE Ultimul pas, rescrierea, pur si simplu scrie intr-un anumit tip de memorie rezultatul operatiunii realizate de pasii anteriori. Dupa acesti pasi, intregul proces se repeta. In procesoare mai complexe decat cel descris, pasii de citire, decodare, executie si rescriere sunt realizate simultan. 3

Pentru a intelege cum lucreaza un microprocesor, trebuie sa studiem logica pe care acesta o utilizeaza. Acesta foloseste un limbaj de asamblare prin care executa o colectie intreaga de instructiuni venite de la celelalte componente ale unui sistem de calcul. In functie de aceste instructiuni, microprocesorul realizeaza trei instructiuni de baza: Foloseste unitatea aritmetico-logica pentru a indeplini functii matematice precum adunarea, scaderea, inmultirea sau impartirea. Microprocesoarele moderne sunt capabile de operatii extrem de sofisticate intrucat sunt folosite numere cu foarte multe zecimale; Poate muta date de pe un loc de memorie pe altul; Poate lua decizii pe baza carora decide daca trece la un set nou de instructiuni. Sa privim urmatoarea figura si sa incercam sa intelegem cum au loc cele trei functii explicate mai sus.

address bus (poate sa fie de 8, 16 or 32 bits) se trimite o adresa la memorie data bus (poate sa fie de 8, 16 or 32 bits) poate sa trimita date la memorie sau sa primeasca date de la memorie o linie de citire (RD) si una de scriere (WR) prin care spune memoriei daca se doreste primirea sau set-area locatiei de memorie clock line se primeste o secventa de pulsuri de la ceasul procesorului reset line reseteaza counter-ul programului la 0 si reporneste executia

Componentele microprocesorului sunt urmatoarele: Registrii A, B and C sunt circuite bistabile ("circuite flip-flop") (mai multe detalii in anexa) Address latch este la fel ca registrii Program counter este un circuit bistabil (latch) cu abilitati de a se incrementa cu 1 si sa se reseteze la zero ALU (Arithmetic/Logic Unit) poate sa fie un simplu sumator pe 8 bits (mai multe detalii in anexa) sau poate sa fie capabil sa faca operatii de adunare, scadere, inmultiri sau impartiri pe 8-bits Test register este un bistabil special care retine rezultatul obtinut de la compararea executata de ALU. De asemenea poate sa memoreze bit-ul suplimentar de la sumator (ulterior putandu-se lua decizii de catre decodor pe baza acestei valori) 3-State (tri-state buffers) un buffer (memorie tampon) cu 3 stari 1, 0 sau deconectat Instruction register si instruction decoder sunt responsabile de controlul tuturor celorlalte componente

Desi lipsesc de pe figura, urmatoarele instructiuni ar fi date de decodorul instruction decoder: Spune registrului A sa ia valoarea curenta de pe data bus; Spune registrului B sa ia valoarea curenta de pe data bus; Spune registrului c sa ia valoarea curenta de pe rezultatul emis de ALU; Spune program counter-ului sa ia valoarea curenta de pe data bus; Spune instruction register-ului sa ia valoarea curenta de pe data bus; Spune program counter-ului sa incrementeze valoare detinuta; Spune program counter-ului sa se reseteze la 0; Activeaza oricare din cele sase 3-State; Comunica lui ALU operatia care trebuie exectuta; Spune test register-ului sa ia biti de test din ALU; Activeaza linia de citire; Activeaza linia de scriere.

Instructiunile microprocesorului
Chiar si cele mai simple microprocesoare vor avea un set impresionant de instructiuni. Fiecare set de instructiuni este implementat ca un pattern (sablon), fiecare dintre ele avand o

anumita functie cand sunt incarcate in instruction register. Intrucat oamenii nu sunt prea buni in a retine seturi mari de instructiuni, fiecare are un nume scurt le definesc. Aceste colectii de cuvinte au dat nastere limbajului de asamblare al procesorului. Un assembler (compilator) poate traduce aceste in bits foarte usor si astfel poate da instructiuni microprocesorului. Cateva exemple de astfel de instructiuni oferite de designer in limbajul de asamblare pot fi:

LOADA mem Incarca registrul A din adresa de memorie; LOADB mem - Incarca registrul B din adresa de memorie; SAVEB mem - Salveaza registrul B in adresa de memorie; SAVEC mem - Salveaza registrul C in adresa de memorie;

Acesta este un simplu program in limbajul C. Codul va calcula 5 factorial (5! = 5 * 4 * 3 * 2 * 1 = 120):
a=1; f=1; while (a <= 5) { f = f * a; a = a + 1; }

La sfarsitul executiei programului, variabila f va lua valoarea lui 5 factorial.

Complitorul C va traduce codul C in limbaj de asamblare. Daca setul de instructiuni porneste de la adresa 128, si ROM-ul porneste de la 0, codul tradus in limbaj de asamblare va arata astfel:
// Assume a is at address 128 // Assume F is at address 129 0 CONB 1 // a=1; 1 SAVEB 128 2 CONB 1 // f=1; 3 SAVEB 129 4 LOADA 128 // if a > 5 the jump to 17 5 CONB 5 6 COM 7 JG 17 8 LOADA 129 // f=f*a; 9 LOADB 128 10 MUL 11 SAVEC 129 12 LOADA 128 // a=a+1; 13 CONB 1 14 ADD 15 SAVEC 128 16 JUMP 4 // loop back to if 17 STOP

O alta intrebare este Cum arata aceste instructiuni in ROM? Toate aceste instructiuni sunt traduse in limbajul binar. Pentru a simplifica lucrurile vom nota instructiunile cu numere 6

in felul urmator:

LOADA - 1 LOADB - 2 CONB - 3 SAVEB - 4 SAVEC mem - 5 ADD - 6 SUB - 7 MUL - 8 DIV - 9 COM - 10 JUMP addr - 11 JEQ addr - 12 JNEQ addr - 13 JG addr - 14 JGE addr - 15 JL addr - 16 JLE addr - 17 STOP - 18 Aceste numere sunt cunoscute drept opcodes. In ROM, programul va arata astfel:
// Assume a is at address 128 // Assume F is at address 129 Addr opcode/value 0 3 // CONB 1 1 1 2 4 // SAVEB 128 3 128 4 3 // CONB 1 5 1 6 4 // SAVEB 129 7 129 8 1 // LOADA 128 9 128 10 3 // CONB 5 11 5 12 10 // COM 13 14 // JG 17 14 31 15 1 // LOADA 129 16 129 17 2 // LOADB 128 18 128 19 8 // MUL 20 5 // SAVEC 129 21 129 22 1 // LOADA 128 23 128 24 3 // CONB 1 25 1 26 6 // ADD 27 5 // SAVEC 128 28 128 29 11 // JUMP 4

30 31

8 18

// STOP

Se poate vedea ca cele sapte linii in limbajul C se transforma in 18 linii in limbajul de asamblare. Totodata vedem ca instructiunile s-au trasformat in 32 de biti din ROM. Instruction decoder-ul are sarcina de a transforma fiecare opcod intr-un set de semnale pe care componenetele microprocesorului sa le interpreteze. Sa luam ca exemplu instructiunea ADD (adunare) si sa urmarim pas cu pas: 1. In timpul primului ciclu de procesare, se incarca setul de instructiuni. De aceea decodorul are nevoie sa: a. Activeze 3-State pentru program counter; b. Activeze linia de citire; c. Activeze date-in din interiorul 3-State; d. Instruction register trebuie sa preia instructiunile. 2. In timpul celui de-al doilea ciclu de procesare, instructiunea ADD este decodata. Se realizeaza urmatoarele: a. Se adauga in ALU aceasta operatie; b. Registul C preia outputul din ALU; 3. In timpul celui de-al treilea ciclu de procesare, program counter-ul este incrementat (in teorie, acest pas se realizeaza concomitent cu pasul 2). Fiecare instructiune poate fi sparta intr-un astfel de set de operatii care manipuleaza componentele procesorului in ordinea corecta. Daca instructiunea de ADD are nevoie de 3 cicluri de procesare, altele pot avea nevoie de 5 sau chiar 6 astfel de cicluri.

Caracteristicile unui microprocesor


Frecventa de ceas (clock speed)
Frecventa de ceas masurata in cicluri pe secunda (unitatea de masura Hz) in care un procesor realizeaza ce mai de baza operatie, cum ar fi adunarea a doua numere sau transferul de valori intre doi registri. In mod general este frecventa de ceas in orice circuit sincron. In mod uzual frecventa de ceas este utilizata pentru a determina viteza unui CPU. Producatorii de procesoare au preturi premium pentru frecvente cat mai mari ale CPU. Pentru un procesor care iese de pe linia de productie, testul frecventei de ceas optime reprezinta finalul procesului de fabricatie. Un procesor care de exemplu este certificat la 1.5 GHz va fi vandut la pret mai mare decat acelasi procesor care atinge frecvente de ceas mai mici, 1.33 GHz de exemplu. Frecventa de ceas este de obicei semnificativa pentru compararea procesoarelor, si implicit a computerelor. Cu toate astea, o multime de alti factori determina performanta efectiva a unui procesor. De exemplu fecventa de ceas a FSB-ului (Front Side Bus), freventa de ceas a memoriei, latimea de banda in biti a magistralei CPU cat si cantitatea de cache Level 1, L2 sau L3. Frecventa de ceas nu trebuie folosita pentru compararea procesoarelor 8

care fac parte din familii diferite. Acestea pot fi foarte diferite datorita volumului de operatii pe care diverse tipuri de procesoare le pot reliza pe durata unui ciclu. Majoritatea procesoarelor, si in general majoritatea dispozitivelor logice secventiale, sunt sincron (lucreaza cu semnale sincronizate). Prin calcularea timpului maxim in care impulsul electric se poate propaga prin diversele ramuri ale multelor circuite ale unui CPU, fabricantii pot alege o frecventa perfecta pentru semnalulul de ceas. Aceasta perioada trebuie sa fie mai lunga decat timpul necesar unui semnal sa se deplaseze sau sa se propage.

Cache

Un cache al CPU este utilizat pentru a reduce timpul mediu de acces al memoriei procesorului. Cache-ul este o memorie mai mica si mai rapida care stocheaza copii ale datelor accesate cel mai frecvent de procesor. Astfel, in momentul in care un procesor primeste comanda de a adresa o operatie de scriere sau de citire dintr-o locatie de memorie, procesorul cauta in primul rand daca operatie se poate accesa din cache. O problema cu care se confrunta cache-ul este echilibrarea intre latenta si cantitatea maxima pe care o poate utiliza pentru stocare. Cu cat este mai mare cache-ul cu atat latenta este mai mare, deci viteza mai mica. Pentru a adresa aceasta problema, procesoarele moderne utilizeaza mai multe niveluri de cache, unele mai rapide dar mai mici sustinute de altele mai mari dar mai incete. Cache-ul multiplu opereaza in general prin verificarea in primul rand a celui mai mic L1, daca adresa este gasita procesorul realizeaza operatia la viteza foarte mare. Daca adresa respectiva nu este gasita in L1 se continua cautarea in L2, si asa mai departe, pana in final cand adresa este cautata in memoria externa. Procesoarele moderne au ajuns sa utilizeze chiar si 3 niveluri de cache, pentru o performanta cat mai buna.

FSB

FSB-ul (Front Side Bus) este magistrala de transfer utilizate pentru comunicatia intre procesor si northbridge-ul placii de baza. Latimea de banda sau maximul teoretic al vitezei de transfer al FSB este calculat prin latimea benzii de transfer, frecventa de ceas cat si numarul de date pe care il transfera pe ciclu. De exemplu un FSB pe 32 de biti operand la o frecventa de 100 MHz care realizeaza 4 transferuri pe ciclu are o latime de banda de 1600 MB/s. Producatorii specifica viteza FSB-ului in MT/s (Mega Transfers / second). De exemplu, daca o placa de baza are un FSB tactat la 266 MHz, si realizeaza 4 transferuri pe ciclu de ceas, FSB-ul certificat este de 1066 MT/s.

TDP

TDP-ul (Thermal Design Power) reprezinta puterea maxima a sistemului de racire necesar pentru disiparea caldurii generate de CPU. De exemplu un procesor de la Intel Q6600 poate fi racit utilizand un sistem certificat pentru 130 de w TDP, ceea ce inseamna ca poate disipa (de exemplu racirea activa care foloseste un radiator si un ventilator) 130 de w de transfer termic fara a atinge temperatura maxima de jonctiune a chip-ului.

Socketul CPU

Socketul CPU este un conector al placii de baza care accepta anumite modele si tipuri de procesoare formand o interfata electrica cu acesta. In prezent cele mai mult computere utilizeaza arhitecturi bazate pe procesoare socketate.

Anexa
Componenetele unui microprocesor
Un CPU (unitate central de procesare, central processing unit) are de obicei doua module importante: unitatea aritmetic-logic (ALU, arithmetic logic unit sau ALU) si unitatea de control (Program Counter). Acestea snt interconectate cu un mnunchi de fire numit magistral (bus ) i snt conduse n tactul unui ceas (clock). ALU este din multe puncte de vedere "inima" sau "miezul" calculatorului. Aceasta este capabil s efectueze mai multe tipuri de operaii, de exemplu operaii aritmetice (adunare, nmulire etc.), operaii de comparaie, operaii de manevrare a datelor (duplicare, mutare, trunchiere etc.). Unitatea de control (Program Counter) este un modul central care comand i leag toate celelalte module ntre ele. Rolul ei este s culeag ("citeasc") instruciunile i datele din memorie sau de la dispozitivele I/E, s decodeze instruciunile, s ofere ALU date de intrare corecte conform cu instruciunea, s "instruiasc" ALU ce anume operaie s efectueze asupra intrrilor, precum i s trimit rezultatele napoi (s "scrie") n memorie sau ctre dispozitivele I/E. O component cheie a unitii de control este un contor (contorul de instruciuni). El conine la orice moment adresa instruciunii curente, n permanent schimbare. Fizic, ncepnd din anii 1980, ALU i unitatea de control se plaseaz pe acelai circuit integrat si astfel primeste numele de CPU, sau microprocesor. Pentru arhitectura calculatoarelor s-au adoptat /standarde. Un prim standard de acest fel, care mai este utilizat i n prezent, este ISA (Industry Standard Architecture) care a fost elaborat de IBM odat cu primul IBM PC, aprut la nceputul anilor '80. Sistemele de calcul mari pot avea inglobate mai multe procesoare.

Modul de lucru al memoriilor


Conceptual, memoria unui calculator poate fi vzut ca o mulime de "celule" numerotate. Fiecare celul primete drept "adres" un numr unic propriu; ele pot nmagazina o cantitate mic, prestabilit de informaie. Informaia poate fi ori o instruciune, ori date propriu-zise. Instruciunile "instruiesc" calculatorul ce s fac, iar datele snt acele informaii care trebuie prelucrate conform cu instruciunile. n principiu orice celul poate stoca att 10

instruciuni ct i date, desigur c la momente diferite. Interesant este i cazul cnd una sau mai multe instruciuni, deja stocate n memorie, snt privite de ctre alte instruciuni drept date de prelucrat/modificat i snt deci ele nsele modificate dinamic ("n mers"), dup necesitate.

Memoria ROM
Memoriile ROM (Read Only Memories = memorie numai pentru citire ) sunt utilizate pentru pastrarea programelor. Sunt circuite LSI in care elementele componente se interconecteaza in procesul de fabricatie, astfel incat sa asigure memorarea informatiei binare cu o structura fixa. Dupa ce memoria a fost programata astfel de catre producator, nu mai poate fi schimbata de utilizator (memorie moarta) si nu se pierde dupa decuplarea de la sursa de alimentare cu energie electrica. Sunt memorii de tip special, in care informatia se inscrie chiar la fabricarea circuitului integrat. Odata realizata, intr-o memorie din aceasta categorie nu se mai poate inscrie nici o alta informatie, dar continutul sau se poate citi ori de cate ori se doreste. Mai poate fi intalnita si sub denumirile : memorie fixa, memorie moarta, nealterabila sau permanenta. Organizarea sub forma de matrice permite reducerea numarului intrarilor de adresare la un numar mai mic decat numarul informatiilor stocate. Numarul terminalelor de adresare poate fi micsorat prin adresarea in cod binar si utilizand decodificatoare. Acest mod de adresare in cod binar este utilizat si in cazul memoriilor RAM. Memoriile ROM pot fi realizate si in tehnologia bipolara, si in tehnologia MOS.

Circuite Flip-Flop
In circuitele digitale, flip-flop este termenul care se refera la un circuit electronic bistabil (are doua pozitii) si este capabil sa retina informatii in valoare de 1 bit. Astazi termenul mai poate fi intalnit si sub alte denumiri (circuite clocked sau edge-triggered). Un flip-flop este controlat de obicei de unul sau de doua semnale de control si / sau un semnal de ceas. Uneori outputul contine atat valoarea normala cat si cea complementara. Intrucat aceste circutie au fost implementate electronic, necesita alimentare la curent electric si la impamantare. Microprocesorul utilizeaza de obicei circuite JK flip-flop (posibilitatea de a retine valoari binare 1 si 0).

11

Bibliografie:
Manual de informatica clasa a IX-a, editura All, 2004; www.mediadot.ro; www. computer.howstuffworks.com; http://en.wikipedia.org; Microsoft Encarta 2009;

Proiect realizat de catre:


Albu Vladimir Tutu Mihai - Alexandru

12