P. 1
Analiza Si Sinteza Dispozitivelor Numerice

Analiza Si Sinteza Dispozitivelor Numerice

|Views: 1,141|Likes:
Published by Pantea Ion

More info:

Published by: Pantea Ion on Nov 09, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/15/2014

pdf

text

original

Capitolul 1 Capitolul 2 Capitolul 3 Capitolul 4 Capitolul 5 Capitolul 6 Capitolul 7 Capitolul 8 Capitolul 9 Capitolul 10 Capitolul 11

I. ELEMENTE DE ALGEBRA BOOLEANA In teoria circuitelor numerice si in electronica digitala in general, semnalele electrice pot lua numai valori discrete, in majoritatea cazurilor aceste valori fiind asociate conventional lui ‘0’ logic si ‘1’ logic. In limbaj tehnic ne vom referi la aceste doua valori cu notiunea de “bit” ( Binari Digit ). Definitia bitului: Bitul este o unitate de masura a informatiei, echivalenta cu informatia transmisa prin furnizarea unui mesaj din cele doua probabile. Pentru studiul circuitelor numerice (digitale) se foloseste ca suport matematic algebra booleana. 1.1 Axiome si teoreme: Algebra booleana opereaza pe o multime B = { x / x∈{0, 1}}. In aceasta multime binara se definesc trei legi de compozitie: complementarea, disjunctia ( suma logica, SAU, OR ) si conjunctia ( produs logic, sI, AND ), pentru care se dau in continuare tabelele de adevar, simbolurile grafice si implementerea prin contacte:

Toate relatiile definite pe B au un caracter dual, adica relatiile raman valabile daca se fac schimbarile: + cu * si respectiv 0 cu 1. In multimea B se poate alege o structura de 6 axiome duale: X+Y∈B; X,Y ∈ B XY∈B ; 1. Multimea B este o multime inchisa: X,Y ∈ B 2. Asociativitatea: X+(Y+Z) = (X+Y)+Z ; X(YZ) = (XY)Z ; 3. Comutativitatea: X+Y = Y+X ; XY = YX 4. Distributivitatea: X+YZ = (X+Y)(X+Z) ; X(Y+Z) = XY+XZ 5. Element neutru: X+0 = 0+X = X ; X1 = 1X = X 6. Complementul: X + X = 1; X X = 0 Teoreme ( proprietati ): 7. Idempotenta: X+X+…..+X = X ; XX…..X = X ; 8. Elemente neutre: X+1 = 1 ; X’0 = 0 ; 9. Involutia: X = X , X = X 10. Absortia: X+XY = X ; X(X+Y) = X ; 11. Relatiile lui De Morgan: X + Y = X Y , X Y = X + Y Pe multimea B sunt valabile teoremele enuntate. Demonstratia lor se poate face folosind axiomele, dar este mai comoda daca se folosesc tabelele de adevar. Tabela de adevar stabileste o corespondenta intre valorile de adevar ale variabilelor si valoarea de adevar a functiei. Ex: De Morgan:

Perechile de operatori NOT si AND, respectiv NOT si OR formeaza fiecare cate un sistem complet, adica orice relatie definita pe B poate fi exprimata folosind numai opeatorii unei singure perechi. Circuitul fizic care implementeaza un operator logic se numeste poarta logica. Sistemele complete prezentate au fost realizate cu cate o singura poarta: SI-NU (NAND) si SAU-NU ( NOR ). Un sistem complet de operatori poate exprima orice relatie logica ca in exemplul urmator, in care ne propunem sa exprimam operatorii NOT, OR si AND folosind operatori NAND si NOR.

1.2 Functii logice O functie f: Bn → B se numeste functie booleana. Altfel spus, o functie booleana de n variabile y = f(x1,x2,..xn), unde xi variabile de intrare, se caracterizeaza prin faptul ca atat functia cat si variabilele nu pot lua decat doua valorile distincte:0 si 1. Ex: Consideram trei robinete x,y si z. Ne propunem sa mentinem un rezervor plin cu ajutorul acestor trei robinete. Rezervorul poate fi mentinut plin daca cel putin doua robinete sunt deschise. Daca consideram ca un robinet are atribuita valoarea logica 1, atunci functia care descrie din punct de vedere logic aceasta situatie este urmatoarea:

1.3 Reprezentarea functiilor logice: Pentru reprezentarea functiior logice se folosesc in mod curent si in principal trei metode: 1. Reprezentare prin tabela de adevar: Aceasta reprezentare presupune marcarea: intr-un a corespondentei dintre valorile de adevar ale variabilelor de intrare si valoarea de adevar a functiei in fiecare punct al domeniului de definitie.

3. Pentru ca diagrama Karnaugh sa fie echivalenta cu reprezentarea prin cub.z ) = R0 ( 0.forma caninica conjunctiva ( FCC ) .presupune utilizarea unor functii elementare numite constituenti ai unitatii (termeni minimali sau mintermi).pentru cazul considerat: 2. iar latura de sus in continuarea celei de jos. 100 .Ex: . in acest fel. Reprezentarea prin echivalenti zecimali ai mintermilor: Consta in indicarea echivalentilor zecimali ai conjunctiilor pentru care valoarea functiei este 1 sau a echivalentilor zecimali corespunzatori valorii 0 ale functiei.7 ) U( x. Reprezentarea prin diagrame Karnaugh: Consta in a marca punctele domeniului de definitie in o diagrama plana si a preciza valoarea functiei in fiecare din aceste puncte Daca luam in considerare varful cubului caracterizat prin coordonatele 000.y. 010. ea trebuie sa pastreze acelasi vecinatati. punctul 000 devine vecin si cu punctul 010. . Ex: U( x.1.5. in acest scop se utilizeaza doua forme de dezvoltare: .forma canonica disjunctiva ( FCD ) .6.4 ) 1.4 Expresii analitice ale functiilor logice: in majoritatea aplicatiilor practice este necesara utilizarea formei analitice a functiilor booleene. in diagrama Karnaugh constatam ca 000 este vecin doar cu 001 si 100. lucru ce devine posibil doar daca ne imaginam latura din stanga a diagramei Karnaugh in continuarea celei din dreapta.presupune utilizarea unor functii elementare numite constituenti ai lui 0 (termeni maximali sau maxtermi).z ) = R1 ( 3.y. .2. constatam ca acest varf este vecin cu varfurile 001.

D 8( 4 ) = ( x 3 + x 2 + x 1 + x 0 )( x 3 + x 2 + x 1 + x 0 ) = ( D 4( 3) + x 0 )( D 4( 3) + x 0 ) = = D 4( 3) D 4( 3) + D 4( 3) ( x 0 + x 0 ) + x 0 x 0 = D 4( 3) + D 4( 3) + 0 = D 4( 3) = x 3 + x 2 + x 1 Pentru o functie de o variabila x. σ 0 ) σ j =0 n −1 j =0 n −1 Ternemii de suma pentru care f (σ n −1 . Ex: Pentru cazul unei functii de 4 variabile. variabilele care iau valoarea 0 in punctul respectiv al domeniului de definitie se vor lua nenegate. Constituentul unitatii va fi produsul logic al tuturor variabilelor negate sau nenegate.1) + x 0 f (1.deci: f (x n −1 . ceea ce presupune ca xi = σI.1} σ σ x 1 1 x 0 0 f (σ 1σ 0 ) Prin inductie rezulta: f (x n −1 . Rezulta urmatoarea regula de scriere a maxtermenului D : in disjunctia variabilelor.1) + x 0 f ( 0....σ 0 (2) Pentru ca D k( n ) sa fie 0 in un anumit punct al domeniului de definitie este necesar ca toti termenii sumei sa fie 0.….... lipsind variabila a carei complementaritate difera.0) + x 1 x 0 f ( 0. Constituentul lui 0 va fi suma logica a tuturor variabilelor negate sau nenegate: D k( n ) = n −1 i =0 x iσ i k (10) = σ n −1 . . variabilele care iau valoarea 0 in punctul respectiv al domeniului de definitie se vor lua negate.σ 0 ∈{0.. iar cele care iau valoarea 1 se vor lua nenegate. iar cele care iau valoarea 1 se vor lua negate. j = 0 ..1}. k(10) = σ n-1... Q k( n ) = ∏x i =0 n −1 i σi .0)] + x 1 [ x 0 f ( 0. x 0 ) + x 1 f ( 0.1) + ∴ x 1 x 0 f ( 0..... Prin sumarea a doua conjunctii vecine se obtine o conjunctie cu un numar de variabile mai mic cu 1.FCD σ . ceea ce este echivalent cu (n ) k x i = σ i . x 0 ) = x 1 f (1. Numim conjunctii vecine doua conjunctii care sunt constituite din aceleasi variabile si difera doar prin comlementarea uneia singure.0)] = = x 1 x 0 f (1. x0) avem relatia: f ( x 1 .Definitie: Se numeste constituent al unitatii functia elementara Q k( n ) caracterizata prin faptul ca ia valoarea 1 logic in un singur punct al domeniului de definitie. x 0 ) = x 1 [ x 0 f (1. σ 0 ) = 0 dispar.... D 9( 4 ) .. x 0 ) = f (σ n − 1 . fie suma a doua conjunctii vecine: Q 9( 4 ) + Q 8( 4 ) = x 3 x 2 x 1 x 0 + x 3 x 2 x 1 x 0 = x 3 x 2 x 1 ( x 0 + x 0 ) = x 3 x 2 x 1 = Q 4( 3) Definitie: Se numeste constituent al lui 0 functia elementara D k( n ) care ia valoarea o logic in un singur puinct al domeniului de definitie..σ 0 Pentru ca Q k( n ) sa fie1 in un anumit punct al domeniului de definitie este necesar ca toti termenii produsului sa fie 1 logic.. rezulta urmatoarea regula de scriere a mintermenilor Q k( n ) : in conjunctia variabilelor.0) = σ 1 .... f(x) se poate scrie sub forma: f ( x ) = xf (1) + x f ( 0) in mod similar. Prin inmultirea a doua disjunctii vecine se obtine o disjunctie cu o variabila mai putin ( cu acea variabila care isi modifica complementaritatea ).. pentru o functie de doua variabile f( x1.. n −1 (∏ x j j )f (σ n −1 . x 0 ) = σ j ∈{0..1) + x 1 x 0 f (1.σ 0 ) =1 (∏ x j j ) . Disjunctiile vecine se definesc in mod similar cu conjunctiile vecine.. .

..... z ) = (x 0 + y 0 + z 0 )(x 0 + y 0 + z 1 )(x 0 + y 1 + z 0 )(x 1 + y 0 + z 0 ) = = ( x + y + z )( x + y + z )( x + y + z )( x + y + z ) 1...... x 0 ) = f ( σ n − 1 ...σ 0 ) = 0 D k( n ) ..... Pentru implementarea unei func%ii cu circuite NAND se porneste de la FCD: f ( x n −1 ...σ 0 ) = 1 Q k( n ) = f ( σ n − 1 . k (10) = σ n −1 .. x 0 ) = (∏ x j j ) = σ j =0 n −1 f ( σ n − 1 . ∏σ ( 0 )=0 j =0 xjj) σ Expresia functiei logice poate fi scrisa deci ca produsul maxtermenilor pentru care functia ia valoarea 0. y ...... ..Expresia unei functii logice este deci suma mintermilor pentru care functia ia valoarea 1.σ 0 ) =1 n −1 (∏ x j j ) = σ j =0 n −1 f ( σ n − 1 ....5 Implementarea functiilor logice: Implementarea unei functii logice inseamna realizarea ei cu ajutorul circuitelor fundamentale.. y . σ 0 σ j =0 n −1 (1) Realizand Q k( n ) cu circuite NAND. D k( n ) = n −1 j =0 x jσ j .. σ 0 ( 2 ) Functia f se obtine prin cuplarea iesirilor circuitelor NOR ce implementeza D k( n ) la intrarile unui alt circuit NOR.σ 0 ) = 0 ∏ D k( n ) = f (σ n − 1 .. Ex: Costul acestei implementari este: C1( f ) = 3’4 + 4 = 16 Pentru implementare cu circuite NOR se porneste de la FCC: f ( x n − 1 ....σ 0 ) = 0 f (σ n − 1 .... x 0 ) = f (x n −1 ... func%ia f se obtine prin cuplarea iesirilor circuitelor NAND precedente la intrarile unui alt circuit NAND.σ 0 ) = 1 ∏ Q k( n ) ...... Ex: U (x .. Se defineste costul unei implementari ca fiind egal cu numarul de intrari in circuitele fundamentale care realizeaza functia data..Q k( n ) = ∏ x j j ... z ) = x 1 y 1 z 0 + x 1 y 0 z 1 + x 0 y 1 z 1 + x 1 y 1 z 1 = xy z + x y z + x yz + xyz Forma canonica conjunctiva ( FCC ) se obtine astfel: f (x n −1 . x 0 ) = f (σ n − 1 .. k 10 = σ n −1 ...σ 0 ) =1 (∏ x j j ) = σ j =0 n −1 f ( σ n − 1 .. Ex: U ( x .....

Ex: C2( f )= 3’4 + 4 = 16 Nivelul unei implementari logice se defineste ca fiind numarul maxim de circuite pe care le strabate un semnal de la intrare catre iesire. Astfel de functii se numesc functii incomplet definite si prezinta valori indiferente.z) = xy + yz + zx = xy yz xz C1 = 2’3 + 3 = 9. Ex: Fie f(x.6 Functii incomplet definite: in unele cazuri.y.y. pe care in tabelul de adevar le vom nota cu x: .z) = xy+ z(x+y) = xy z ( x + y + = xy z x y C2 = 2 + 2 + 2 + 2 = 8. N1 = 2 Fie f(x. ceea ce implica micsorarea vitezei. In cazurile precedente s-au considerat structuri logice cu doua nivele. pentru anumite combinatii de variabile de intrare nu este precizata valoarea functiei sau aceste combinatii nu apar niciodata in sistemul fizic ce materializeaza functie. N2 = 3 Scaderea costului in varianta a doua s-a facut pe seama cresterii nivelului. 1.

daca se au in vedere produsele logice ale coordonatelor. y .6. Rezulta o legatura fireasca intre gradul de complexitate al circuitului care se obtine si gradul de complexitate al functiei care il descrie.7 ) f ( x. prin mintermi: Fiecare celula din diagrama contine un minterm.z ) = R1 ( 1.z ) = xy z + x y z + x yz + xyz C1 = 3’4 + 4 = 16 Prelucrand forma data a functiei.1 Metoda analitica Metoda foloseste axiomele si teoremele algebrei booleene.metoda Quine .Mc Clusky 1.y.z ) = xy + xz + yz C2 = 3*2 + 3 = 9 1. pentru sinteza circuitelor numerice ( circuite in comutatie ).z ) = R1 ( 1.5.2. Minimizarea unei functii este procedeul prin care pentru un nivel dat se obtine o expresie care genereaza un cost minim pentru un numar dat de nivele logice.2 Metoda Veitch . dupa etapa de definire a functiei urmeaza obligatoriu etapa de minimizare a functiei in scopul obtinerii unei forme simplificate ( forma minima ).y.Un alt mod de reprezentare a acestor functii este prin echivalenti zecimali: f ( x.6. ceea ce conduce la configuratia optima de circuit.metoda analitica .y. Implementarea practica a circuitului se realizeaza pe baza formei minimizate. Din acest motiv.4 ) + R0 ( 0 ) 1.7.z ) = R0 ( 0 ) + Rx ( 3.y. Exista mai multe metode de minimizare: . Prin adunarea mintermilor din doua celule vecine se elimina variabila care isi schimba valoarea.5. Ex: f ( x.Karnaugh . ea se poate rescrie : f (x .metoda Veitch .7 ) f ( x.7 Minimizarea functiilor logice: Analiza si sinteza sistemelor numerice se bazeaza pe algebra booleana.y.Karnaugh Transpune axiomele si teoremele algebrei booleene pe reprezentarea functiei cu diagrame Karnaugh.7. z ) = xy z + x y z + x yz + xyz + xyz + xyz = xy (z + z ) + xz ( y + y ) + yz (x + x ) f ( x.4 ) + Rx ( 3. O diagrama Karnaugh poate fi privita ca o reprezentare a functiei booleene. Doua celule vecine contin mintermi care difera prin valoarea unei singure variabile. Ex: .2.

x2x0. x0 ) = x2x1 + x2x0 + x1x0. Pentru exemplul considerat se obtine FMD: f ( x2. x 2 . acestea se pot contopi intr-un singur grup de 4 celule vecine. Fiecare celula ocupata de 1 trebuie sa faca perte din cel putin o grupare. ceea ce va permite eliminarea a doua variabile. Metoda consta in cuplarea de disjunctii vecine din care va disparea termenul corespunzator bitului ce se modifica in echivalentii binari. x 0 ) = x 1 x 0 + x 2 x 0 Cel mai avansat grad de simplificare se obtine daca valorile 1 dintr-o diagrama Karnaugh sunt grupate intr-un numar minim de grupuri.FMD Pentru simplitate. dar poate fi inclusa in mai multe grupari. in general. x1x0 prin eliminarea variabilelor careisi schimba valoarea in cadrul aceleiasi grupari. Daca un grup de doua celule vecine este vecin la randul sau cu un alt grup de doua celule vecine.FCD se obtine prin sumarea mintermilor pentru care functia ia valoarea 1. Prin gruparea celulelor vecine pentru care valoarea functiei este 1 se obtin: x2x1. C1 = ( 2 + 3 + 4 + 4 + 3 + 3 ) + 6 = 25 Implementarea cu circuite NAND: Pentru minimizarea functiilor scrise sub forma conjunctiva. x 2 . in diagrama Karnaugh se vor considera disjunctiile corespunzatoare valorilor 0 ale functiei si se va forma o procedura asemanatoare cu cea folosita la forma disjunctiva. in diagrama nu s-au trecut decat valorile 1 ale functiei. un grup de 2m celule vecine ocupate de unitati permite eliminarea a m variabile. Ex: f (x 3 . Ex: f (x 4 . fiecare grup continand un numar maxim de unitati. x 1 . x1. x 0 ) = x 1 x 0 + x 4 x 2 x 0 + x 4 x 2 x 1 x 0 + x 3 x 2 x 1 x 0 + x 3 x 2 x 0 + x 4 x 2 x 1 . x 3 . x 1 . Ex: .

x 1 . x1. unde este suma algebrica. x 0 ) = x 3 x 1 + x 3 x 2 . 1. x 3 . in cazul formei disjunctive. x 2 . 1. valorile indiferente ale functiei se iau 1 pentru forma disjunctiva si 0 pentru forma conjunctiva daca aceste valori participa la minimizare. x 2 . 15 ) f (x 3 . x 0 ) = x 3 x 1 x 0 + x 3 x 2 x 2 + x 3 x 2 x 1 . C 4 = 2 + 2 = 4 Concluzia este ca prin participarea valorilor indiferente la minimizarea functiilor incomplet definite se obtine o reducere a costurilor. 2. 10. Ex: f (x3. x 1 . Definitie: Ponderea conjunctiei Q k( n ) = ∏ x j j este numarul P [Q k( n ) ] = σ j =0 n −1 n −1 j =0 σ j . .McCluskey Pentru functii ce depind de mai mult de 5 variabile.McCluskey.7. x 2 .f ( x 4 . minimizarea pentru aceasta metoda presupune parcurgerea urmatoarelor etape: 1) Ordonarea echivalentilor binari ai conjunctiilor corespunzatoare valorilor 1 ale functiei dupa pondere. 4 ) + Rx( 3. ponderea este P[Q]= P[Q1]+ P[Q2]. metoda Veitch-Karnaugh devine greoaie si se foloseste metoda Quine . x 1 . x0 ) = R1( 0. Ex: 0 1 1 0 P [x 3x 2 x 1 x 0 ) = P [x 3 x 2 x 1 x 0 ) = 0 + 1 + 1 + 0 = 2 Pentru o conjunctie Q = Q1Q2. x 0 ) = x 3 ( x 2 + x 1 ). C 1 = 3 • 3 + 3 = 12 f (x 3 . x2. Valorile indiferente care nu sunt cuplate devin 0 pentru forma disjunctiva si 1 pentru forma conjunctiva. 5.C 2 = 2 • 2 + 2 = 6 f ( x 3 . x 0 ) = ( x 4 + x 2 + x 0 )( x 4 + x 1 + x 0 )( x 4 + x 2 + x 1 + x 0 ) ( x 3 + x 2 + x 1 + x 0 )( x 3 + x 2 + x 1 + x 0 ) C2 = ( 3 + 3 + 4 + 4 + 4 ) + 5 = 23 Implementarea cu circuite NOR: In cazul functiilor incomplet definite.3 Metoda Quine . x 1 . x 2 .

Pentru determinarea implicantilor primi se cupleaza echivalentii binari care difera doar printr-o cifra din acelasi rang. x2. 12. 11. 15 ) 1) 2) 3) .se afla in acelasi rang si echivalentii binari difera doar printr-o cifra din acelasi rang.Lema: Pentru doua conjunctii vecine ponderile difera cu o unitate. Se obtine primul tabel de comparatii in care disparitia variabilei corespunzatoare cifrei care se modifica se noteaza cu -. 1. 7. se pot cupla doua conjunctii din grupe vecine daca simbolul . se exprima aceasta cerinta cu ajutorul variabilelor Fx. 8. 3) Determinarea tabelului de acoperire al functiei. Fiecarui implicant prim X se ataseaza o variabila logica Fx care ia valoarea 1 cand implicantul prim este realizat ( conform tabelului de acoperire ). Tabelul de acoperire este un tablou rectangular. 4. Definitie: Se numeste implicant prim al unei functii un termen al acesteia care nu se mai poate reduce. in continuare. la care liniile corespund implicantilor primi. 3. Ex: f ( x3. 4) Calculul formal de determinare a tuturor solutiilor functiei.Pentru determinarea tuturor solutiilor functiei. P [ xiQ] = P [ xi] + P [Q]=1 + P [Q] P [ x i Q ] = P [ x i ] + P [Q ] = 0 + P [Q ] = P [Q ] Reciproca nu este adevarata: P [ x 3 x 2 x 1 x 0 ) = P [ x 3 x 2 x 1 x 0 ] + 1 2) Determinarea implicantilor primi prin comparatii succesive ale echivalentilor binari. x0 ) = R1 ( 0. Conjunctia care nu se mai poate cupla cu nici o alta conjunctie din tabel este un implicant prim al functiei date. x1. Tabloul se completeaza cu 1 in pozitiile pentru care conjunctiile de pe coloane realizeaza implicantii primi de pe linii. Rezulta al doilea tabel de comparare si procedura se repeta. 13. iar coloanele corespund echivalentilor zecimali ai conjunctiilor pentru care functia ia valoarea 1. Pentru realizarea functiei este necesar ca in expresia ei sa existe toate conjunctiile corespunzatoare valirolor 1 ale functiei.

respectiv alfanumerice: . x 0 ) = x 3 x 2 x 1 + x 3 x 2 x 1 + x 1 x 0 + x 1 x 0 Implementarea cu circuite NAND: In cazul formei conjunctive a functiilor. Informatia primara poate fi compusa numai din simboluri numerice. sau atat din simboluri numerice. 2.…. rezulta doua tipuir de coduri:numerice. cat si literale si semne de ortografie. x 1 . f ( x 3 . procedura este similara.….. Codul se numeste uniform daca toate cuvintele si∈S au aceeasi lungime.. bn } prin codificare se asociaza fiecarui element xi ∈ X o secventa de simboluri bj ∈ B astfel incat modelul de codificare va fi reprezentat de corespondenta biunivoca : x 1 ↔ b 1b 2 b 3 = s 1 x 2 ↔ b 2 b 5b 6b 7 = s s . deci cuvintele multimii S sunt cuvinte binare de o anumita lungime. dar se vor considera valorile 0 ale functiei si disjunctiile corespunzatoare. Codificarea este o aplicatie de forma f : X → S. sp }. B = { 0.4) ( FA + FE )( FA + FB )( FB + FF) FE FF FE FF ( FC + FE )( FC + FD )( FD + FF ) = 1 ( FA + FB ) FE FF ( FC + FD ) = 1 FA FC FE FF + FA FD FE FF + FB FC FE FF + FB FD FE FF = 1 Functia f poate avea 4 cazuri: f = A + C + E + F f = A + D+ E + F f = B + C+ E + F f = B + D+ E + F In prima varianta. in general 8.…. 1 }. x p ↔ b1b 3b 1 = s p Cuvintele de cod formeaza o multime S = { s1 . x 2 .. in electronica digitala. xp } este multimea simbolurilor primare care urmeaza a fi codificate prin intermediul unor simboluri elementare dintr-o multime B = { b1 . Daca X = { x1 . CODURI Prin codificare se realizeaza o schimbarea aformei de exprimare a unei informatii. 16. 24 sau 32 de biti.

deci cuvantul de cod este chiar numarul respectiv. dar utilizatorul trebuie sa stie intre ce biti ai cuvantului este localizata. numerele din acest domeniu se scaleaza prin impartire la 2n. Prin scalare gama de reprezentare va fi: x∈[-(1-2 -(n-1)-m).x < 0 x = b n − 2 . 2 n ... + se reprezinta prin 0. Prin conventie. b −1 . 2) Reprezentarea numerelor cu semn.x ≥ 0 2 n + x − 2 −m . c) cod complementar fata de 2: xc = x . 2. b1b 0 . x < 0 x = b n − 2 ..x ≥ 0 2n + x ..b 1 b 0 .2.2-m].binare.binare.binare etc.(1-2-(n-1)-m)]. iar . virgula se va situa imediat dupa bitul de semn..b − m ..1 Coduri numerice: Prin intermediul cuvintelor binare se pot codifica numere din sistemele de numeratie binar..b − m .2n-1.2 -m ] in multe cazuri. zecimal.1 Coduri binare: 1) Reprezentarea numerelor fara semn. b1b 0 . iar gama reprezentabila va deveni: x ∈ [0 .2 )..prin 1.1-2-n-m ].b − m Regula de inversare a unui numar negativ este: se complementeaza toti bitii din reprezentarea in valoare absoluta si se ataseaza 1 in rangul semn: x i = 1b n − 2 . Corespondenta intre un numar binar si un cuvant de cod binar poate fi chiar identitate... Aceste reprezentari se numesc numere fractionare in virgula fixa.2-m). Gama numerelor reprezentate este: x = [ 0 .b − m Gama de reprezentare: x∈[-( 2n-1. b −1 .. b-1 … b-m Virgula nu se reprezinta fizic.2-m]. hexazecimal . hexazecimal etc.. Exista trei forme mai uzuale pentru reprezentarea numerelor cu semn: a) cod direct ( in modul si semn ): xd = x . rezultand coduri binare.2n-1.. b − 1 . b −1 .. zecimal ... b i = 1 − b i pentru x < 0 n-1 -m Gama de reprezentare: x∈[-( 2 .. octal . b) cod invers ( in complement fata de 1 ): xi = x . primul ( bitul bn-1 ) va fi folosit pentru reprezentarea semnului. Din cei n biti folositi pentru partea intreaga.1. x < 0 x = b n − 2 . Prin scalare (impartire la 2n-1 ). virgula binara va fi pozitionata in fata bitului cel mai semnificativ.. b1b 0 .(1-2-(n-1)-m)]. iar gama de reprezentare va fi: x∈[-(1-2 -(n-1)-m). x = bn-1 … b1b0 .x ≥ 0 2 n −1 − n . octal.

Multimea S trebuie sa contina 10 cuvinte distincte.1..1 Alta regula de complementare: codul comlementar al unui numar negativ se obtine prin inversarea bitilor din reprezentarea in valoare absoluta incepand cu primul bit1(exclusiv) intalnit prin parcurgerea numarului de la dreapta la stanga. se sumeaza 1 la rangul -m si se ataseaza 1 in rangul semn: x c = 1b n − 2 .4..binare: in cadrul acestei clase. n biti ) Daca m are numai parte fractionara. atasandu-se 1 in rangul semn.00. deci pentru codificare sunt necesari minim 4 biti (23<10<24). Gama de reprezentare: x∈[-2n-1. cu virgula binara situata imediat dupa bitul de semn se numesc reprezentari in virgula fixa.Regula de complementare a unui numar negativ este: se inverseaza cifrele binare ale numarului in valoare absoluta.1.6.2 Coduri zecimal .. astfel incat cifra binara de dupa virgula a modulului mantisei sa fie nenula .2 ( 2 −1) ) unde s-a presupus E reprezentat in complement fata de 2. b −1 .001011 210 = 0.1011 28 2. Ex: 0.. Prin scalare gama de reprezentare va fi: x∈[-1.mantisa ( numar fractionar cu semn.1100 xi = 10100. 3) Reprezentarea numerelor in virgula flotanta. m biti ) E . in practica se folosesc anumite variante: 1) Coduri ponderate: Un cod ponderat asociaza fiecarei cifre zecimale o tetroda binara . Cu acesti 4 biti se pot forma 16 10 cuvinte de cod distincte.2n-1.0100 Toate codificarile scalate.b − m + 0. Pentru marirea preciziei calculelor.2-m]. mantisa se normeaza dupa fiecare operatie aritmetica.7.9 }. deci exista A 16 posibilitati de codificare.3.2.0011 xc = 10100.1-2-(n-1)-m]. 8421 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 2421 0000 0001 0010 0011 0100 1011 1100 1101 1110 1111 4221 0000 0001 0010 0011 0110 1001 1100 1101 1110 1111 exces3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 Gray 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 2 din 5 00011 00101 00110 01001 01010 01100 10001 10010 10100 11000 8421 cu paritate 00000 10001 10010 00011 00100 00101 00110 10111 11000 01001 .. ponderea fiecarui bit din tetroda fiind egala cu valoarea cifrei din denumirea codului.1100 xd = 11011. Ex: x = -1011. Un numar rational x se reprezinta prin doua numere binare: X=M2E M .exponent ( numar intreg cu semn.8. gama de reprezentare este: n −1 n −1 x ∈ ( −2 ( 2 −1) .5. x = { 0..b 1 b 0 .

2. in codul 8421 cu bit de paritate. 2) Coduri neponderate: Codul exces 3 se obtine din codul 8421 la care se aduna 3 = 0011. Acest cod este util in cazul marimilor ce cresc succesiv.2 Coduri alfanumerice: in cazul acestor coduri. Codul 2 din 5 se caracterizeaza printr-un cuvant de cod de 5 biti. comenzi speciale. cuvintele de cod sunt numere succesive in sistemul binar natural. In acest fel se poate face distinctie intre 0 si lipsa informatiei. Prin folosirea cestui cod se pot detecta erorile multiple aparute la transmiterea informatiei. Codurile cu aceasta proprietate se numesc coduri autocomplementare. codul se mai numeste cod zecimal-binar natural (NBCD) Codurile 2421 si 4221 au pentru primele 4 cifre zecimale aceeasi exprimare ca si codul 8421. La receptie se numara bitii 1. Se realizeaza astfel o unicitate a reprezentarii deoarece numai 10 din cele 32 de configuratii posibile pe 5 biti satisfac aceasta conditie. multomea X a informatiilor primare este formata din cifre.binar realizeaza corespondenta biunivoca intre cifrele sistemului de numeratie in baza 16 si tetradele binare succesive: 0 ↔ 0000 1 ↔ 0001 … 9 ↔ 1001 A ↔ 1010 … F ↔ 1111 2. fiecare cuvant de cod are un numar par sau impar de biti 1. din acest motiv. din care numai doi biti sunt 1. litere. Cel mai raspandit cod alfanumeric este codul ASCII. 10 cifre. deci sunt necesari minim 7 biti. semne ortografice.binar: Codul octal .In codul 8421. Codul Gray prezinta proprietatea de adiacenta: trecerea de la o cifra zecimala la urmatoarea se face prin modificarea unui singur bit din cuvantul de cod. numarul acestora putand indica daca au aparut erori constand in modificarea unui numar impar de biti. La emisie se adauga un bit 1 sau un bit 0 astfel incat numarul de biti 1 sa fie par sau impar.binar si hexazecimal . verificare transmiterii corecte a informatiilor se face prin folosirea codurilor detectoare de erori. Codul pentru 5 se obtine inversind codul pentru 4. . la fel se obtine 6 din 3. 26 de caractere speciale ). denumite in general caractere. 8 din 1 si 9 din 0. In mediile puternic influentate de zgomot.1. Codificarea datelor alfanumerice este necesara pentru vehicularea diferitelor mesaje. care pe langa detectia erorilor asigura si corectarea lor. Exista coduri corectoare de erori.binar realizeaza corespondenta biunivoca intre cifrele sistemului de numeratie in baza 8 si triadele binare succesive: 0 ↔ 000 1 ↔ 001 … 7 ↔ 111 Codul hexazecimal . Trebuie codificate minim 88 caractere distincte ( 2x26 litere. 7 din 2.3 Codurile octal .

I2L ). MOS. Cele doua nivele ( 0.1 Reprezentarea fizica a variabilelor booleene: Elementelor 0. de tehnologie. exista o mare diversitate de solutii: ( ECL. 1 ale multimii B li se atribuie valori ale unei marimi fizice electrice ( tensiune sau curent ). Stabilirea unor valori precise pentru cele doua nivele logice nu este convenabila din cauza complexitatii ridicate a circuitului electronic care trebuie sa realizeze acest lucru. Din acest motiv. dintre care cea mai cunoscuta este familia logica TTL. 3. tensiunile din D1 se numesc nivele H ( high). 1) sunt puse in corespondeta cu domenii disjuncte ale marimii fizice alese. Intre nivelele logice 0. Stabilirea nivelelor de tensiune corespunzatoare domeniilor D1 si D2 depinde de modul de realizare al circuitului. Nivelele de tensiune din cele doua domenii de valori respecta relatia: ∀V 1 ∈ D 1 . MATERIALIZAREA VARIABILELOR SI FUNCTIILOR LOGICE 3. de alimentare. Reprezentarea nivelelor logice prin nivele de tensiune este mai raspandita. Simbolizarea operatorilor logici elementari este prezentata in continuare: Din punct de vedere al tehnologiei folosite la realizarea portilor logice. 0 → D2 0 → D1 1 → D1 1→ D 2 In practica se intalnesc ambele tipuri de corespondente.2 Realizarea functiilor logice: Circuitele fizice sub forma integrata care realizeaza operatorii elementari definiti pe multimea B se numesc porti logice. TTL. iar cele din D2 se numesdc nivele L ( low).3. ∀V 2 ∈ D 2 V 1 > V 2 . 1 si cele doua domenii de valori ale tensiunilor D1. Conditia disjunctiei ( D1∩D2 =∅) este absolut necesara deoarece valorile comune ar cea confuzii de interpretare.D2 se pot stabili 2 corespondente diferite: logica pozitiva si negativa . etc. Etajul de iesire .

Ca urmare. Starea HZ se obtine prin blocarea simultana a tranzistoarelor de iesire T3 si T4 prin intermediul unei intrari de validare. La circuitele cu colector in gol se poate obtine nivel logic H la iesire doar daca se introduce o rezistenta externa in colectorul lui T3. notata E ( sau E ). Cu aceste tipuri de circuite se pot realiza functii SI si SA U cablat prin interconectarea iesirilor unor circuite cu colector in gol: Circuitele cu iesirile 3-state au aparut din necesitatea utilizarii unor linii comune pentru mai multe subblocuri logice a caror informatie de iesire nu este necesar a fi cunoscuta simultan. iar T4 conduce. Doua iesiri de circuite logice care nu sunt de tipurile cu colector in gol sau 3-state nu se pot lega impreuna.T4)). T3 este blocat. in starea logica 0 la iesire. .iesiri 3-state ( este posibila blocarea etajului final (T3.iesiri cu colector in gol ( lipsesc T4 . in starea logica 1 la iesire. Circuitele logice TTL pot avea iesiri de trei feluri: . pentru ca ar putea apare situatii de conflict. R si D ). .HZ.mnale logice cu nivele H si L .iesiri ce furnizeaza se.L. iesirile acestor circuite pot avea trei stari: H. . T3 este saturat iar T4 este blocat. Circuitele ce nu sunt conectate la un moment dat la linia comuna trebuie sa prezinte la iesire o impedanta mare pentru a inlatura situatiile de conflict.pentru portile TTL standard este prezentat in figura urmatoare.

Capacitate de intrare ( pentru MOS ): capacitatea intre intrare si masa. 4. 3. Margine de zgomot: VNH = VOH . VOH .3.2 Caracteristici electrice dinamice : 1. 2 tHL . VIH. 3.3. tp = 1 (t + t pLH ) 2 pHL 2. VNL = VOL . Fan-in ( factor de incarcare la intrare ): numarul de intrari standard cu care este echivalenta intrarea unui circuit. Curentii de intrare: curentii ce se pot inchide prin intrarea circuitului pentru nivelele logice de intrare: VIL. Pentru o cuplare corecta este necesar ca fan-out ≥ fan-in. ttLH.1 Caracteristici electrice statice : 1. VOH.caracteristici electrice dinamice: descriu comportarea circuitelor la tranzitii rapide ale semnalelor. Fan-out ( factor de incarcare la iesire ): numarul de intrari standard ce pot fi comandate de o iesire. 3.caracteristici electrice statice: descriu comportarea circuitelor in curent continuu sau la variatii lente in timp ale semnalelor. 5. 6. tt = 1 (t + t tLH ) . tpLH. 7. IOH. 8. . Timpul de tranzitie: intervalul de tipm in care are loc tranzitia semnalului de la iesirea circuitului: ttHL. Limitele domeniilor de tensiune corespunzatoare iesirilor si intrarilor sunt astfel alese incat sa fie posibila intotdeauna cuplarea a doua circuite cu o rezerva de tensiune care este chiar marginea de zgomot. Nivele logice de iesire: intervalele de tensiune pentru care se atribuie 0 si 1 la iesirea unui circuit : VOL.3. Curentii de iesire: curentii ce se pot inchide prin iesirea circuitului pentru nivelele logice de iesire: VOL.3 Parametrii circuitelor logice: Parametrii circuitelor logice se pot imparti in 2 categorii: . VIH.VIH. IIH. < Pd > = mW. Timpul de propagare: intervalul de timp scurs intre aplicarea semnalului la intrare si obtinerea raspunsului la iesirea circuitului logic: tpHL. Nivele logice de intrare: intervalele de tensiune pentru care se atribuie nivelele logice 0 si 1 la intrarea unui circuit : VIL. Putere disipata pe poarta: Pd = Vcc Ic.VIL. 2. IIL. IOL.

tpZL. 4. . Timpul de comutare din regim de mare impedanta in regim activ si invers pentru circuitul 3-state: tpHZ. tpZH. Timpul de mentinere ( hold time ): intervalul de timp cat trebuie mentinut semnalul de pe o intrare neschimbat fata de o alta intrare considerata drept referinta de timp ( th ): 5. tpLZ. Timpul de pregatire ( setup time ): intervalul de timp cu care trebuie sa preceada semnalul de pe o intrare a unui circuit semnalul de pe o alta intrare luata drept referinta de timp ( tsu ).3.

NU ( AND..4.cu circuite SAU. SAU. .cu circuite sI .. in functie de expresia dupa care se implementeaza functia: . k = 1.cu circuite sI.minimizarea functiei: . x 0 ). NU ( OR. AND. expresie analitica ). y k = f k (x n −1 .determinarea schemei circuitului.NU ( NAND ).2 Sinteza circuitelor logice combinationale: in cazul sintezei se cunoaste functia pe care trebuie sa o realizeze circuitul si trebuie determinata structura acestuia.cu circuite SAU . CIRCUITE LOGICE COMBINATIONALE Curcuitele combinationale se caracterizeaza prin faptul ca variabilele de iesire depind numai de variabilele de intrare si exista doar in prezenta acestora. . NOT ).NU ( NOR ). Ex: circuit de anticoincidenta ( XOR ): . sI.1 Analiza circuitelor logice combinationale: in analiza CLC se cunoaste schema si se determina functionarea ( tabel de functionare.. m − 1 4.. Ex: 4. OR. . NOT ). Sinteza unui CLC presupune parcurgerea urmatoarelor etape: . Schema circuitului poate avea mai multe forme.definirea functiei: .

la multiplicarea datelor.exemple: 4. y ) = x y + x y = x y x y = xx y x yy c) f ( x .a) f ( x .1. y ) = ( x + y )( x + y ) d) f ( x .1 Decodificatoare: Decodificatoarele sunt circuite logice combinationalecare activeaza una sau mai multe iesiri in functie de cuvantul de cod aplicat la intrare. 4.3. y ) = x y + y x b) f ( x . Un decodificator de adresa cu n intrari are 2n iesiri.1 Decodificatoare de adresa: Sunt CLC care activeaza iesirea a carei adresa este aplicata pe intrari. Decodificarea este necesara la adresarea memoriei. la afisarea numerica. etc. .3.3 Structuri logice combinationale . la selectia porturilor. y ) = ( x + y )( x + y ) = x + y + x + y = x + y + x + x + y + y 4.

CDRn = (n+1)2n +(n+1) = (n+1)(2n+1) . in general.Tabela de adevar pentru un decodificator cu 4 intrari este: Pentru cele 16 iesiri trebuie construite 16 diagrame Karnaugh. decodificatoarele sunt prevazute cu o intrare de validare E ( activa H ) sau E ( activa L ). Ecuatiile decodorului de adresa cu 4 intrari se pot scrie si sub forma: y 15 = ( x 3 x 2 )( x 1 x 0 ) y 14 = ( x 3 x 2 )( x 1 x 0 ) : y 1 = ( x 3 x 2 )( x 1 x 0 ) y 0 = ( x 3 x 2 )( x 1 x 0 ) . Iesirile corespunzatoare adresei de pe intrari sunt activate numai daca semnalul de validare este activ. avand in vedere ca cele 16 diagrame Karnaugh contin fiecare cate o valoare 1 in celula care indica numarul iesirii. Acestea pot fi sintetizate intr-o singura diagrama. Ecuatiile decodorului vor fi: y 15 = x 3 x 2 x 1 x 0 y 14 = x 3 x 2 x 1 x 0 : y 1 = x 3 x 2 x 1x 0 y 0 = x 3x 2 x1x 0 Implementarea acestor ecuatii conduce la obtinerea decodorului rectangular de adresa: Ex: 74154 in general. numita diagrama de referinta. Costul pentru cecodorul rectangular este: CDR4 = (4+1)16+(4+1)=85.

3. n ≥ 3 4.Se observa ca fiecare termen din paranteze apare pentru cate 4 iesiri.zecimal este: . ( n − par ) C DDRn < C DRn . Exista si cazuri in care trebuie realizata o decodificare din alt cod decat cel binar natural.2 Decodificatoare BCD .1. Tabelul de adevar pentru un decodificator BCD8421. pt . Daca se implementeaza aceste relatii se obtine decodorul dual piramidal de adresa: C DDP 4 = ( 4 ⋅ 2 + 4 ⋅ 3) + (16 ⋅ 2) + ( 4 + 1) = 57 C DDPn = ( 2 n 2 ⋅ n 2 + 2 n 2 ⋅ ( n 2 + 1) + ( 2 n ⋅ 2) + ( n + 1) = ( n + 1)( 2 n 2 + 1) + 2 n +1 .zecimal: Decodificatoarele de adresa realizeaza practic o decodificare din binar natural in zecimal. de exemplu BCD8421.

1111 nu fac parte din codul BCD8421.3. Daca pe intrarile acestui decodificator nu se pot stabili dat false. nu este necesara rejectia datelor false. 4.C = 4’ 10 + 4 = 44 Ex: 7442 Starile 1010 . eventualele date false de pe intrari determina stabilirea tuturor iesirilor in H ( inactive ). Din acest motiv decodificatorul se numeste cu rejectia datelor false.1 Codificatoare de adresa: Aceste codificatoare furnizeaza la iesiri adresa intrarii activate. Toate starile sunt decodificate explicit. . Ca urmare. 4.3. ele au fost considerate false. Renuntarea la aceasta protectie conduce la micsorarea costului: C = 4’2 + 3’6 + 2’2 + 4 = 34 Aparitia accidentala a unei date false pe intrare conduce la erori: 1010 pe intrari determina activarea iesirilor 2 si 8 simultan.2 Codificatoare: Codificatoarele sunt circuite logice combinationale la care activarea unei intrari conduce la aparitia unui cuvant de cod pe ietire.2.

ecuatiile iesirilor sunt urmatoarele: Schema circuitului va fi: Dezavantajul acestei scheme este ca la activarea simultana a mai multor intrari. I1 si I4 active simultan determina la iesire C2C1C0 = 101. Circuitul va fi prevazut si cu o intrare de validare E 1 .I0 active pe nivel L. ceea ce inseamna I5 activa. Iesirile circuitului sunt active tot pe L.Pentru un circuit cu 7 intrari si 3 iesiri cu tabela de adevar din figura. . o iesire GS activa ( pe L ) cand cel putin o intrare este activata si o iesire E 0 . activa cand toate intrarile sunt inactive. Consideram intrarea I7 cu prioritate maxima si I7 . Daca nu se poate evita activarea simultana a mai multor iesiri se folosesc codificatoare de adresa prioritare. care prezinta la iesire adresa intrarii active cu prioritatea cea mai mare. adresa furnizata la iesire este eronata.

3.3. tabela de adevar este: .E0 = E1I 7 I 6 I 5 I 4 I 3 I 2 I 1I 0 Gs = E 0 + E 1 = E 1 E 0 C 2 = E1 I 7 + E1 I 7 I 6 + E1 I 7 I 6 I 5 + E1 I 7 I 6 I 5 I 4 C1 = E1 I 7 + E1 I 7 I 6 + E1I 7 I 6 I 5 I 4 I 3 + E1 I 7 I 6 I 5 I 4 I 3 I 2 C 0 = E1 I 7 + E1 I 7 I 6 I 5 + E1 I 7 I 6 I 5 I 4 I 3 + E1 I 7 I 6 I 5 I 4 I 3 I 2 I 1 Ex: 74148 4.3.Gray: Pentru cazul cuvintelor de 4 biti.1 Convertor de cod binar natural .3 Convertoare de cod: Convertoarele de cod sunt circuite logice combinationale ce permit transformarea dintr-un cod binar in altul. 4.

3.3. 7 segmente “ este folosit pentru sisteme de afisare numerice. tabela de adevar este prezentata in continuare: .3 Convertor de cod BCD . unde un digit este de forma din figura.4.2 Convertor de cod Gray .3.binar natural: S-ar putea aceeasi procedura..3. segmentele fiind becuri. Convertorul de cod va avea 4 intrari ( cod BCD8421 ) si 7 iesiri. cristale lichide. dar este mai simpla metoda analitica aplicata relatiilor deja determinate: g 3 = b3 g 3 = b3 b3 = g 3 g 2 = b3 ⊕ b2 g 2 ⊕ g 3 = b3 ⊕ b3 ⊕ b2 g 3 = b3 g 2 = b3 ⊕ b2 g 1 = b 2 ⊕ b1 g 1 ⊕ g 2 ⊕ g 3 = b 3 ⊕ b 3 ⊕ b 2 ⊕ b 2 ⊕ b1 b1 = g 1 ⊕ g 2 ⊕ g 3 b2 = g 2 ⊕ g 3 4.7 segmente: Codul . LED-uri.

7447 .Ex: 7446.

3. catre iesirea unica. Tabela de adevar pentru un multiplexor cu 8 intrari este: Y = E (A 2 A 1 A 0I 0 + A 2 A 1A 0 I 1 + A 2 A 1 A 0 I 2 + A 2 A 1A 0I 3 + A 2 A 1 A 0 I 4 + A 2 A 1A 0I 5 + +A 2 A1 A 0I 6 + A 2 A1A 0I 7 ) Ex: 74151 (8:1).4. circuitele de multiplexare sunt prevazute si cu o intrare de validare. Uneori. selectata de cuvantul de pe intrarea de adresa.4 Multiplexoare: Circuitele de multiplexare sunt CLC care permit trecerea datelor de la una din intrari. 74157 (4x2:1) 4. 74153 (2x4:1). Tabela de adevar pentru un demultiplexor cu 8 iesiri este: .3.5 Demultiplexoare: Aceste circuite sunt CLC care permit trecerea datelor de pe o intrare comuna catre una din iesiri. selectata prin cuvantul de pe intrarile de adresa.

Bn-2…B0 ). respectiv A<B indiferent de valoarea bitilor mai putin semnificativi ( An-2…A0 ...Tabela de functionare pentru un comparator pe 4 biti cu intrari de expandare este: .m.. s..+ A 1 2 1 + A 0 2 0 . Daca An-1 = Bn-1. <.d. Bn-2 . A 1 A 0 ( 2)) B = B n −1 2 n −1 + . Y 7 = E A 2 A 1A 0D 4. Tabela de adevar este: Prin interconactarea a n comparatoare de un bit se pot realiza comparatoare de n biti. Daca An-1 > Bn-1 sau An-1 < Bn-1 rezulta A>B. Comparatoarele de un bit permit compararea a doua numere de cate un bit. =.3.( B = B n −1 . Fie doua numere de n biti: A = A n −1 2 n −1 + . Daca se doreste compararea a doua numere ale caror lungimi depasesc posibilitatile comparatorului disponibil.6 Comparatoare numerice: Comparatoarele sunt CLC care permit compararea a doua numere.. se recurge la expandare folosind intrari prevazute in acest scop.+ B 1 2 1 + B 0 2 0 .( A = A n −1 . B 1 B 0 ( 2)) Procesul de comparare incepe cu compararea bitilor cei mai semnificativi ( An-1 : Bn-1 )... pentru determinarea relatiei A:B este necesara compararea bitilor An-2.. indicand la iesire situatiile: >..Y 0 = E A 2 A 1 A 0D Y 1 = E A 2 A 1A 0D ..a..

.

conform tabelei de adevar: Pentru a aduna doua numere pe n biti sunt necesare n sumatoare elementare conectate astfel: Prin conectarea a 4 sumatoare elementare se obtine sumatorul pe 4 ranguri: Pentru realizarea unui sumator pe n ranguri folosind sumatoare pe 4 ranguri sunt necesare [n/4]=k circuite sumatoare pe 4 ranguri. generand suma si un bit de transport spre rangul urmator.7 Sumatoare: Sumatoarele elementare sunt CLC care aduna doua numere de cate un bit si un bit de transport din rangul inferior.4. Timpul de rezolutie al schemei este calculat in situatia cea mai dezavantajoasa: 011…111+000…001: .3.

Pentru reducerea timpului de rezolutie se foloseste sumatorul cu transport anticipat : c i = x i y i + c i −1 ( x i + y i ) G i = x i y i − transport generat : x i y i = 1 c i = G i + c i −1Pi c 0 = G 0 + c −1P0 c1 = G1 + c 0 P1 = G1 + (G 0 + c −1P0 )P1 = G1 + G 0 P1 + c −1P0 P1 c 2 = G 2 + c1P2 = G 2 + (G1 + G 0 P1 + c −1P0 P1 )P2 = G 2 + G1P2 + G 0 P1P2 + c −1P0 P1P2 c 3 = G 3 + c 2 P3 = G 3 + (G 2 + G1P2 + G 0 P1P2 + c −1P0 P1P2 )P3 = G 3 + G 2 P3 + G1P2 P3 + G 0 P1P2 P3 + c −1P0 P1P2 P3 c i −1 \ x i y i 00 01 11 10 c i = 1 indiferent de c i −1 c i traversează i Pi = x i + y i − transport propagat : x i + y i = 1 0 1 0 1 1 0 0 1 1 0 s i = c i −1 ( x i y i + x i y i ) + c i −1 ( x i y i + x i y i ) = c i −1 ( x i ⊕ y i ) + c i −1 ( x i ⊕ y i ) = c i −1 ⊕ x i ⊕ y i G i Pi = x i y i ( x i + y i ) = ( x i + y i )( x i + y i ) = x i ⊕ y i s1 = G 0 P0 ⊕ c −1 s 2 = G1P1 ⊕ c 0 s 3 = G 2 P2 ⊕ c1 s 4 = G 3 P3 ⊕ c 2 Ex. Unitati aritmetico-logice (ALU) ALU sunt CLC complexe care executa pe baza unor comenzi functii de tip aritmetic si logic.intrare de transport : c −1 .y 0 →c 3 ) + ( k − 2)t p (c − 1 →c 3 ) + t p (c − 1 → s 3 ) trcreste liniar cu n.3.t r = t p ( x 0 . ALU de 4 biti are urmatoarele intrari si iesiri tipice: .intrari pentru operanzi: A3:0.intrare de mod: M = 0 → functii aritmetice = 1 → functii logice .7. ALU se utilizeaza in sisteme digitale complexe sau ca parti componente in unitatile de prelucrare ale sistemelor de calcul. cresterea se datoreaza transportului succesiv intre ranguri. B3:0 .: 74LS83A 4.

intrari pentru selectarea functiei : S3:0 . C + z . prevazute cu 4 intrari de transport propagat (P0:3). Ex.iesiri pentru transport anticipat: P. C + y .iesiri pentru functie : F3:0 . GTA genereaza transporturile C + x .iesire pentru indicarea egalitatii operanzilor: (A=B) .:74181 Pentru realizarea unor ALU pe mai multi biti in conditiile in care nu se mai urmareste realizarea unor viteze mari de prelucrare se foloseste transportul succesiv prin conectarea c 3 de la un circuit la c −1 de la circuitul urmator: Pentru operatii de mare viteza . C − x = G 0 + C −1P0 C − y = G 1 + G 0 P1 + C −1 P0 P1 C − z = G 2 + G 1P2 + G 0 P1P2 + C −1 P0 P1P2 G = G 3 + G 2 P3 + G 1P2 P3 + G 0 P1P2 P3 P = P0 P1P2 P3 Ex. ALU sunt combinate cu circuite de generare anticipata a transportului (GTA). GTA sunt prevazute si cu 2 iesiri de transport generat (G) si de transport propagat (P)..iesire pentru transport: c 3 . o intrare pentru transportul din rangul inferior ( C −1 ).G. 4 intrari de transport generat (G3:0). pentru dezvoltarea sistemului de transport.: 74182 .

La emisie. se poate stabili si felul paritatii (para sau impara). respectiv detectoare de paritate. . Aceste operatii sunt realizate de CLC numite generatoare.3. Daca se mai foloseste inca o poarta XOR.Expandarea ALU cu generarea anticipata a transportului se poate face pe doua sau mai multe nivele: 4. se obtine o transmisie in cod cu bit de paritate para. Detectorul elementar de paritate este circuitul de anticoincidenta (XOR): b1 0 0 1 1 b0 0 1 0 1 y 0 1 1 0 p=0 → paritate para p=1 → paritate impara Daca pe langa cuvantul de transmis b0b1 se mai transmite si y.8. la cuvintele de transmis se mai adauga un bit “0” sau “1” astfel incat toate cuvintele transmise sa aiba un numar par (impar) de biti “1”. Generatoare si detectoare de paritate Pentru detectarea eventualelor erori in transmisia datelor se poate folosi un cod cu bit de paritate. La receptie se verifica paritatea (imparitatea) numarului de biti “1” din cuvantul receptionat.

circuitul are si doua iesiri YP si YI.4 Timpi de propagare la o structura logica combinationala Modificarea unor variabile la intrarile unui CLC poate produce modificarea unor variabile la iesirea lui. Aceste intrari si iesiri permit expandarea circuitului: Pentru utilizarea circuitului la transmisii de date se poate folosi schema: 4.In cazul unor cuvinte de 8 biti se poate folosi circuitul din figura: Circuitul este prevazut cu intrarile P(par) si I(impar) care permit functionarea ca generator / detector de paritate sau imparitate. iesirea yj se modifica dupa cum urmeaza: . Presupunem ca la modificarea variabilei xi. Corespunzator.

Se definesc urmatorii timpi de propagare: t pLH ( x i → y j ) = t pLHij . circuitul se poate redesena ca in figura. putem scrie: ì y n +1 = x 0 n y n x1n í îz n = x 2 n y n Vom numi in continuare y variabila secundara interna sau variabila de stare.) y′( t ) = y( t + δ) ˆ Daca impartim timpul in intervale δ si notam a n ≡ a (nδ) . In expresia ei va interveni si timpul. Tinand cont de acest aspect. avand in vedere ca un circuit NAND real poate fi reprezentat ca in figura de mai sus.timp de propagarea a xi la yj H→L ˆ t p ( xi → y j ) = 1 t pLH ( x i → y j ) + t pHL ( x i → y j ) = t pij . avand in vedere ca ea descrie starea atinsa de circuit la un moment dat.timp de propagarea a xi la yj ˆ 2 [ ] 5. x2 nu se mai modifica. CIRCUITE LOGICE SECVENTIALE 5. unde ∆ este un circuit de intarziere (cu tp). y( t ) = y′( t − 2t p ) 2t p ≅ δ (Am considerat ca x0.timp de propagarea a xi la yj L→H ˆ t pHL ( x i → y j ) = t pHLij . Sa consideram in continuare un circuit cu mai multe bucle: .1. x1. Notiunea de circuit secvential (automat finit) Consideram circuitul din figura urmatoare: Iesirea acestui circuit nu poate fi descrisa numai cu ajutorul variabilelor de intrare. Circuitul de mai sus prezinta o singura bucla.

y1n .. identificam buclele circuitului.. l = 1. Daca xin. xkn . j = 1... In cazul general.. daca se considera un sistem cu bucle de reactie cu k intrari si m iesiri.Procedand ca mai sus... Se poate scrie: ì y 0 n +1 = x 1n y 0 n x 2 n ⋅ x 0 n y1n y1n +1 = y 0 n + y 2 n + x 1n y 0 n x 2 n í y 2n +1 = y1n + x 1n y 0 n x 2 n z 0 n = y1n + y 2n z = y1n î 1n Corespunzator acestor ecuatii. se poate scrie : ì y jn+1 = f j (x1n . y pn ). m .. sunt reprezentate circuitele de iesire si circuitele ce definesc variabilele de stare.. se introduc p intarzieri fictive δ in schema.. respectiv iesirilor la momentul de timp nδ.. introducand inaintea fiecarei variabile de stare propusa cate un circuit de intarziere. Astfel. xkn .... yjn si zln sunt valorile intrarilor. y1n . Trebuie studiata evolutia sistemului dupa fiecare esantion de timp δ. variabilelor de stare.. y pn ).. trebuie introduse p variabile de stare pentru a putea defini toate iesirile intr-un mod combinational. p í î zln = gl (x1n .

5. se folosesc circuite combinationale pentru implementarea functiilor f si g si elemente de memorare pentru implementarea circuitelor de intarziere. Pentru realizarea fizica a acestor structuri. la care liniile corespund buclelor fundamentale. y n ) f : x×∅ → ∅ → nu este definibila notiunea de stare g : x×∅ → z → y:x → z Acest caz particular defineste circuitele combinationale (se mai numesc automate triviale sau automate combinative). in timp ce la automatele Moore. Circuitul initial se va descompune in final in circuite de definire a evolutiei variabilelor de stare si in circuite de iesire. iar f.g). iar ramurile orizontale sunt conexiunile dintre circuite. Se vor scrie si ecuatiile sistemului. iesirile sun definite in timpul tranzitiilor dintre stari.y. descris de ecuatiile: ì yn +1 = f ( xn . Un automat finit este deci un cvintuplu A=(x.g sunt functii definite pe aceste multimi. Aceastase face notand iesirile circuitelor ce fac parte din cel putin o bucla si suprimand ramurile din graf corespunzatoare acestor iesiri pana cand graful nu mai prezinta bucle. Un alt caz particular este g :y → z (automat de tip Moore) La automatele de tip Mealey. Se rzolva apoi problema de acoperire si se descompune sistemul in circuite de iesire si circuite de descriere a Observatii: y = ∅ .f. Intr-o prima etapa trebuie determinate variabilele de stare in numar suficient.multimea semnalelor de iesire (alfabet de iesire) f : x×y→y – functie de tranzitie g : x×y→z –functie de iesire In figura urmatoare este prezentata figura unui automat astfel definit: Acesta este un automat de tip Mealey. Analiza circuitelor secventiale Introducerea variabilelor de stare permite trnsformarea circuitelor de iesire in circuite combinationale. Tabelul se completeaza cu 1 in pozitiile pentru care circuitul de pe coloana intervine in bucla de pe linie. yn ) í z n = y ( xn .multimea starilor multimi finite z. Pentru determinarea acestor variabile se ataseaza sistemului secventional un graf in care fiecare nod reprezinta un circuit al sistemului. In etapa a doua se va face o minimizare a numarului variabilelor de stare car permit scrierea ecuatiilor de functionare.y. x. iesirile acestora sunt complet determinate la orice moment de timp numai de intrari.multimea semnalelor de intrare (alfabet de intrare) y. Pentru aceasta se construieste un tabel de acoperire.z sunt multimi nevide.2. iesirile sunt definite la iesirea starilor. iar coloanele – circuitelor ce constituie buclele.Un sistem a carui functionare este descrisa de astfel de ecuatii se numeste sistem secvential sau automat finit.z. O bucla fundamentala este o bucla pentru care orice subansamblu al circuitelor ce o alcatuiescnu poate constitui o bucla. unde x.

coloanele corespund intrarilor (starilor). obtinandu-se matricile de excitatie. Tabela de fluenta se construieste dupa urmatoarele reguli: liniile corespund starilor (intrarilor). graful se marcheaza in functie de tipul de automat definit: xe / ze Mealey: Moore: xh yi yj yi / zi yj / zj Exemplu: . In continuare. Graful de fluenta se construieste dupa urmatoarele reguli: nodurile corespund starilor. caz in care g se defineste pe o coloana (linie) separata. la intersectia liniilor cu coloanele se definesc f si g in cadrul automatelor Mealey sau numai f in cadrul automatelor Moore. respectiv de iesire.evolutiei de stare. de asemenea. se construiesc diagramele Karnaugh pentru variabilele de stare si pentru variabilele de iesire. corespunzator celei mai economice solutii obtinuta. se determina tabela de fluenta si graficul de fluenta. arcele corespund tranzitiilor intre stari. se scriu ecuatiile corespunzatore. Pornind dela acestea.

.. variabilele interne sunt deci y2 si y7. = 1 Oricare dintre solutiile evidentiate mai sus este mai economica decat solutia adoptata initial. Alegem de exemplu solutia oferita de F2F7=1. + F2 F7 + .. ..3 − 4 − 2 : y3 7 − 8 − 6 : y6 ì y1n+1 = xn y3n ⋅ xn + y6 n í ( y3n+1 = y1n + y3n ⋅ xn + y6 n ⋅ y3n ( ) ) 1 − 3 − 4 − 5 − 7 : y1 y6 n+1 = xn ⋅ y3n y3n ⋅ xn + y6 n î zn = y3n + y3n ⋅ xn + y6 n ( ( ) ) 1 3-4-2 7-8-6 1-3-4-5-7 1 2 1 3 1 1 4 1 1 5 1 6 1 7 1 1 8 1 (F2 + F3 + F4 )(F6 + F7 + F8 )(F1 + F3 + F4 + F5 + F7 ) = 1 (F2 (F1 + F3 + F4 + F5 + F7 ) + F3 + F4 )(F6 + F7 + F8 ) = 1 (F3 + F4 + F1F2 + F2 F3 + F2 F4 + F2 F5 + F2 F7 )(F6 + F7 + F8 ) = 1 F3 F6 + F3 F7 + F3 F8 + F4 F6 + F4 F7 + F4 F8 + .

y2y7/Tx 00 01 11 10 00 00 01 11 10 01 00 01 11 10 11 00 10 00 01 10 01 00 00 00 taT>tp∆ Pentru un sistem sincron. Sisteme secventiale asincrone. Sisteme secventiale sincrone Sistemele secventionale studiate anterior sunt sisteme asincrone deoarece la o modificare a marimii de intrare nu se poate controla intotdeauna evolutia sistemului. Cand x devine 1. In exemplul anterior. y pn ).. Numai pentru T=1 sistemul va evolua spre o noua stare. y1n ... i = 1.ì y2 n+1 = y7 n xn y7 n + y2 n í y7 n+1 = y7 n xn + y2 n xn + ( y7 n xn + y2 n )xn y7 n z = y7 n + ( xn y7 n + y2 n ) î n ( ( ) ) Fiecarei stari ii este atasata o cifra zecimala: 5. clock) si se impune ca pentru T=0 sistemul sa evolueze. p .. xkn .. ecuatiile variabilelor de stare sunt: yin+1 = f i (x1n .... sistemul trece in starea 01.3. apoi 00. ramanand intr-o stare stabila. din nou 01 etc. Se introduce o variabila suplimentara T(tact. pentru y2y7=00 si x=0 sistemul se afla in starea stabila 00. Sistemul intra deci intr-un ciclu necontrolabil.

. xkn . iesirile.) ' T1 = 1 → yn = yn+1 T2 = 1 → yn → yn+1 taT1 si taT2 sunt dictati de timpuri de si ∆1 si ∆2 t1 > tp∆1 t2 > tp∆2+tpf ∆1 si ∆2 formeaza o structura MASTER-SLAVE (∆1-MASTER. Sinteza circuitelor secventiale. In caz contrar. y1n . y pn ). Determinarea grupului si matricii de fluenta.. Sinteza abstracta presupune parcurgerea urmatorilor pasi: 1.durata activa a ceasului T Pentru o functionare corecta este necesar ca taT < tp∆+tpf... 2.timp de bascularea circuitului de intarziere ∆ yin +1 = Tn yin + Tn f i (x1n . i = 1. Ecuatiile de control trebuie sa rezulte cat mai simple..4.. se stabilesc elementele automatului finit atasat(intrarile. p tpf . Se incearca eventuale simplificari pe multimea starilor. . starile. Metodologie Rezolvarea unei probleme de sinteza presupune stabilirea structurii fizice a automatului. Sinteza are doua mari etape: A. cunoscand corespondentele intrare-iesire si evolutia sistemului. Fiecare stare se ataseaza unor conditii distincte in care se poate gasi sistemul. ecuatiile de excitatie ale circuitelor de memorare.Ecuatiile de stare a unui sistem sincron vor fi: tp∆ ..timp de propagare prin structura combinationala ce realizeaza f taT . Utilizarea de circuite integrate de tip MASTER-SLAVE 5. Definirea primara a starilor: se stabilesc multimile de intrare.solutie neeconomica. sistemul poate evolua spre o alta stare decat cea impusa in matricea de excitatie. Folosirea a doua circuite de intarziere comandate de doua ceasuri sincronizate dar defazate: ( Se folosesc cate doua circuite de intarziere pentru fiecare variabila interna. 2. ecuatiile de iesire). Sinteza abstracta: pornind de la datele problemei. Introducerea unor intarzieri suplimentare pe buclele sistemului. Pentru a elimina aceasta constrangere se poate adopta una din urmatoarele solutii: 1. de iesire si de stari pentru automat. ∆2-SLAVE) 3..

R=0: Qn+1=1 S=0. circuitul ar trebui sa functioneze astfel: S=R=0: starea circuitului nu se schimba S=1. deoarece in functie de tipul circuitelor integrate folosite se poate simplifica sau complica etapa de sinteza abstracta. R=reset) si doua iesiri (Q.1. avand in vedere ca principala caracteristica a CBB este posibilitatea de memorare. Folosind variabilele de stare introduse se construiesc matricile de excitatie si de iesire. In principiu. B. CBB se pot folosi pentru realizarea circuitelor de intarziere din structuracircuitelor secentiale.CIRCUITE BASCULANTE BISTABILE Circuitele basculante bistabile (CBB)sunt circuite cu doua stari stabile. R=1: Qn+1=0 S=R=1: nu intereseaza (nu are sens inscrierea simultana a unui 1 si a unui 0). Circuite basculante bistabile de tip R-S CBB de tip R-S asincrone au doua intrari (S=set. 6. doua stari sI si sj sunt echivalente daca si numai daca pentru aceeasi secventa de intrare automatul elaboreaza aceeasi secventa de iesire indiferent de starea din care porneste experimentul (sI sau sj). evitandu-se astfel hazardul in functionare. ele se pot contopi. Sinteza structurala: Pornind de la rezultatele obtinute in etapa precedenta se realizeaza implementarea fizica a automatuluiin functie de circuitele integrate pe care le are la dispozitie proiectantul. rezolvarea acestei probleme se face folosind matricea de fluente: daca liniile (coloanele) corespunzstoare celor doua stari sunt identice. 4. Pentru a pezenta posibilitatea de memorare. ceea ce permite o verificare a corectitudinii sintezei. Alocarea variabilelor de stare: Se realizeaza o exprimare a starilor prin cuvinte dintr-un anumit cod. ). 6. ca urmare se impune SR=0 . La sfarsitul sintezei se poate face o analiza a functionarii structurii obtinute.3. Practic. treeecerea dintr-o stare in alta facandu-se numai a modificarea uneivariabile de intrare. numarul acestora trebuind sa satisfaca relatia: 2p-1<k<=2p p = numarul variabilelor de stare k = numarul starilor distincte Este indicata folosirea unui codcare pastreaza adiacentelepentru starile vecine. Acest ultim aspect este esential. Pentru codificarea starilor se folosesc variabile de stare. Reducerea starilor: se urmareste eliminarea eventualelor stari redundante introduse la etapa1 prin evidetierea starilor echivalente.

Fie schema: Qn=0. la acestei comenzi (R=S=0) apare o ambiguitate asupra starii in care va ramane circuitul deoarece practic este imposibila comutarea simultana a celor doua comenzi. S = 0 (Q ) = 1. (Q ) = 1 inscriere − R = 1. An+1=0 Bn=0. comanda R=S=1 este interzisa. S=1 (→Q=1) sau prin R=1.Matricea de excitatie pentru un astfel de circuit este: SR\Q 00 01 11 10 0 1 0 1 0 0 x x 1 1 Qn+1 = Sn + Rn ⋅ Qn = Sn ⋅ Rn ⋅ Qn Qn+1 = Rn + Sn ⋅ Qn = Rn ⋅ Sn ⋅ Qn −R=S =0 Qn+1 = Rn (S n + Qn ) = Rn + S n + Qn Qn+1 = S n Rn + Qn = S n + Rn + Qn ( ) (Q ) = (Q ) : (Q ) = 0 → (Q ) = 1. Rn+1=0 . Qn+1=? An=1. in plus. (Q ) = 0 stergere − R = S = 1 (Q ) = (Q ) = 0 Circuitul functioneaza dupa cum urmeaza: 2 stari posibile circuitul pierde caracteristica de circuit in doua stari. Bn+1=1 Rn=0. din aceste motive. se va trece deci sau prin R=0. S = 1 (Q ) = 0. S=0 (→Q=0). (Q ) = 1 → (Q ) − R = 0.

deci dupa inchiderea portilor de intrare. deci pot fi considerate prioritare fata de celelalte intrari. care comanda evolutia circuitului independent de prezenta semnalului de tact. Pentru aceasta ar fi de dorit o functionare de felul urmator: informatia se inscrie pentru T=1.Realizarea practica a comutarii simultane a semnalelor A si B este imposibila.S) R T Rd Q Q S Sd Matricea de excitatie a acestui circuit este: RS/TQ 00 01 11 10 00 0 0 0 0 01 1 1 1 1 11 1 1 X 0 10 0 1 X 0 Qn+1 = T n ⋅ Qn + Tn ( Sn + Qn ⋅ R n ) îSn ⋅ Rn ⋅ Tn = 0 CBB sincron poate fi prevazut si cu intrari sincrone (Rd. In unele aplicatii este necesar controlul asupra momentului aparitiei informatiei la iesirea CBB. Sd). Se mentine interdictia RdSd=0. ceea ce determina aparitia unei ambiguitatii a starii bistabilului dupa comutare. S in cazul T=1. O astfel de functionare este realizata de CBB de tip R–S MASTER–SLAVE: . CBB sincron de tip R–S este transparent pentru intrarile R. dar apare la iesire pentru T=0. Din acest motiv se introduce notiunea de sincronizare. folosind pentru aceasta o intrare de ceas (T): T=0: portile de intrare sunt blocate T=0→1:functionare sincrona T=1:functionare asincrona (bistabilul este transparent pentru intrarile R. Dupa cum am vazut.

portile de transfer inca nu sunt deschise – 4-5: portile de transfer se deschid permitand trecere informatiei din MASTER in SLAVE. – 2-3: portile de intrare se deschid permitand inscrierea informatiei in MASTER – 3-4: portile de intrare se inchid. R Sd Q Q S T Rd . portile de transfer se inchid izoland MASTRE de SLAVE. Daca sunt necesare intrari asincrone ele pot fi prevazute numai la SLAVE sau atat la MASTER cat si la SLAVE.T 2 1 3 4 S t R Q Q S T Functionarea circuitului este urmatoarea: – 1-2: portile de intrare inca nu sunt deschise.

2. Circuite basculante bistabile de tip J–K Pentru a evita nedeterminarile ce pot apare in urma aplicarii pe intrarile R. Sale unui CBB R–S asincron a combinatiei R=S=1 se poate modifica schema circuitului astfel incat el sa aiba o evolutie cunoscuta si dupa o astfel de comanda si anume: R=S=1→ Qn =1 = Qn . Matricea de excitatie devine: CBB de tip J–K sincron se obtine prin introducerea unei intrari de tact: JK\Q 00 01 11 10 00 0 0 1 1 01 1 0 0 1 ì ïQn +1 = J n ⋅ Q n + K n ⋅ Qn = K n ⋅ Qn + J n ⋅ Q n + Qn í ïQ n +1 = J n ⋅ Q n + K n ⋅ Qn = J n ⋅ Q n + K n ⋅ Qn + Q n î æR → Kö ç çS → J è K Q J Q Qn +1 = T ⋅ Qn + Tn J n ⋅ Q n + K n ⋅ Qn ( ) 11 1 0 0 1 10 0 0 1 1 JK\TQ 00 00 0 01 0 11 0 10 0 01 1 1 1 1 T=0 → portile de intrare sunt blocate T=1 → functionare asincrona K Q J T Q .6.

6. y1n. .….1 Sinteza absoluta Structura unui automat este urmatoarea: T X Y H z f(x. ci sub alte forme: -descrierea functionala. xhn. Parametri dinamici ai CBB Cele mai utilizate CBB in Romania sunt: J T S 7472 Q Q J T S 1/2x 7473 R Q Q J T S 1/2x 7476 R Q Q D K R K K S Q 1/2x 7474 Q T R Pentru CBB. ypn) i= 1.….5. y1n.tPHL timpi de propagare .tPLH .….th-timp de mentinere 7. -diagrama de semnale. xhn.tSN-timp de prestabilire . AUTOMATE SIMPLE 7.z) m Ecuatiile ce descriu functionarea unui astfel de automat sunt de forma: yin+1= T n⋅yin+Tn⋅fi(x1n.z) ∆ p g(x. p zjn=yj(x1n. prezentarea automatului ce trebuie sintetizat nu se face prin ecuatiile de stare si de iesire. parametri dinamici sunt: . -diagrama (graf) sau matricea de fluenta.….n In general. ypn) j= 1.

Se prefera sincronizarea lui X cu ceasul T.-matrici de excitatie si de iesire.-automatul genereaza Z=1 3. Pentru sinteza automatului trebuie realizata mai intai sinteza abstracta folosind pentru aceasta metodologia expusa intr-un capitol anterior Ex: Sa se sintetizeze un generator de monoimpuls a carui functionare este descrisa prin urmatoarele diagrame de semnal: T X Z Semnalul X este asincron in raport cu semnalul de ceas T. definirea primara a starilor: variabile de intrare: XS variabile de iesire: Z stari: 1. ceea ce poate conduce la functionarii defectuoase.-asteptare 2. acest T X T D S Q T R Q XS XS X XS lucru se realizeaza cel mai bine cu ajutorul unui bistabil D sincron pe front pozitiv: 1 2 3 1 1. XS=1 Z=0 2. construirea grafului si matrici de fluenta .

2. y1.….…. sinteza structurala se face in CBB. ypn) i= 1.…. In cadrul sintezei se poate considera Tn=1.…. y1n.0X/0 11/0 01/1 marcarea ramurilor: Q\TXs 1 2 3 00 1/0 X/X 3/0 T ⋅ XS Z 01 1/0 2/1 3/0 11 2/0 3/1 3/0 10 1/0 X/X 1/0 1 10/0 10/0 2 11/1 obs: T=1 → frontul negativ al lui T 3 00/0 X1/0 3. xhn. Q 1 2 3 y1 y0 0 0 0 0 1 1 7. p Ecuatia unui CBB tip D este: Qn+1= T n⋅Qn+Tn⋅Dn Comparand cele doua relatii se observa ca variabilele de stare se pot obtine folosind CBB tip D sincrone daca: Di=fi(x1. ypn)=yin+1 . acestea vor implementa circuitele de intarziere D din structura automatelor finite. p Rezulta: Din= fi(x1n. Sinteza in CBB tip D Ecuatiile de stare ale automatului sincron sunt de forma: yin+1= T n⋅yin+Tn⋅fi(x1n. y1n. Pentru Tn=0 automatului nu evolueaza.….….….…. caz in care ecuatiile de stare devin: yin+1=fi(x1n. y1n. alocarea variabilelor de stare y1y0\T XS 00 01 11 10 y1y0\T XS 00 01 11 10 00 00 00 01 00 00 0 0 0 0 01 xx 01 11 xx 01 x 1 1 x 11 11 11 11 00 11 0 0 0 0 10 xx xx xx xx 10 x x x x In cazul automatelor simple. xhn. ypn) i= 1. xh. xhn. care au maxim 5-6 variabile de intrare si de stare. yp) Pentru sinteza automatului sunt necesare p CBB tip D sincrone (p variabile de stare). reducerea starilor: nu este cazul 4.

tip J-K Pentru Tn=1 rezultă: y in +1 = y in ⋅ y in +1 + Kin ⋅ y in y in = 0 Þ y in = y in +1 . K in = x y in = 1 Þ K in = y in +1 . y in = x Ex: y1y0\X S 00 01 11 10 0 0 x x x 1 1 x x x y1y0\X S 00 01 11 10 XS XS 0 x x 1 x 1 x 0 0 x y1y0\X S 00 01 11 10 Jin=y0n J T Q 0 1 0 0 x 1 x x x x y1y0\X S 00 01 11 10 0 x x 1 x 1 x x 0 x JX =X⋅Sn 0n Z n = y in ⋅ y in D T Q Q K0n= X ⋅ Sn 0 Q Kin= X ⋅ Sn K T J T Q 1 Q Z K .3 Sinteza cu CBB.Ex: y1y0\X S 00 01 11 10 0 0 x 0 x 1 1 1 1 x y1y0\X S 00 01 11 10 0 0 x 0 x 1 0 1 1 x y1y0\X S 00 01 11 10 0 1 0 0 x 1 0 0 x x D0n=X⋅Sn Din=X⋅Sn⋅y0n Zn= y 1n⋅y0n X D S Q Xs Xs D T Q 1 Q Z T R Q D T T Q 0 Q 7.

se consideră nouă stare iniţială.5.d.7. apoi se trece la starea următoare (cea spre care evoluează sistemul). R in ⋅ Sin = 0 7.m. Analiza funcţionării Valorile indiferente din diagramă conduc la obţinerea unor structuri mai ieftine.4. se porneşte de la o stare iniţială şi se calculează valorile semnalelor de comandă care se obţin.a. Se completează apoi matricea de excitaţie şi se construieşte graful de fluenţă corespunzător. Pentru aceasta. s. Dacă această stare este stabilă. În acelaşi timp însă este necesară verificarea corectitudini modului de fixare al valorilor indiferente din matricea de excitaţie. Sinteza cu CBB tip R-S Pentru Tn=1 rezultă: ìy in +1 = Sin + R in ⋅ y in ï í ïSin ⋅ R in = 0 Þ Sin + R in = 1 î y in = 0 Þ Sin = y in +1 .. procedura repetându-se până se epuizează toate posibilităţile. Ex: Y1Y0 D1 D0 Y1Y0\XS 0 1 Q XS=0 00 0 0 00 00 01 1 01 0 0 01 00 11 2 00 0 0 11 00 11 3 10 0 0 10 00 01 4 . R in ⋅ Sin = 0 X D T Q Xs S Q Q Xs T 1 Q R Z S T T Q R 0 Q y in = 1 Þ Sin + R in = Sin + R in ( )(S in + R in )=S in ⋅ R in + R in Sin + R in ( ) =R in = y in +1 .

t su + t b + t r ] . În unele situaţii nu este permisă ieşirea din ciclul de funcţionare. tPHL(Q)]-timpul de basculare al unui CBB tr-timpul de răspuns al unei structuri combinate (timp de propagare) Ţinând seama de trt. Regimuri tranzitorii în sisteme logice secvenţiale realizate în CBB Durata regimului tranzitoriu la un astfel de sistem este: trt=tb+tr. sistemul este prevăzut cu un circuit de iniţializare automată la cuplarea tensiunii de alimentare. 7.6.XS=1 00 11 00 00 01 11 10 01 11 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 1 0 1 1 0 0 0 1 1 2 4 3 1 Indiferent de starea în care va fi plasat sistemul la punerea sub tensiune. pentru funcţionarea corectă a sistemului secvenţial este necesară respectarea anumitor condiţii. În acest caz. din graf se observă că el va evolua spre o stare admisă. unde: trt-durata regimului tranzitoriu tb=max [tPLH(Q). Sistemul se numeşte în reintrare automată în ciclul de funcţionare. specifice tipului de CBB folosite: a) CBB tip D active pe front pozitiv (7474): T TL tb th tr TH ≥ TH min TL TL ≥ TL min tb + tr ≥ th T − ( t b + t r ) ≥ t su tsu T ≥ max[TH min + TL min .

numărător: TT>n·tb+TSH (depinde de numărul CBB conectate). Dacă la intrarea de ceas T a fiecărei celule se conectează ieşirea Q a celulei precedente se obţine un numărător liniar sincron invers. 7473. .în 8 (Y2) sau în 16 (Y3) al frecvenţei ceasului T. în 4 (Y1). Prin combinarea schemelor de numărător direct şi invers invers cu ajutorul unor multiplexoare comandate în semnalul de mod (CM) se obţine un numărător reversibil. Frecvenţa minimă de lucru este data de de relaţiile: . t B + t R ] tb tr Schema prezentată poate fi privită ca numărator (Y3 Y2 Y1Y0 ) sau ca divizor : în 2 (Y0).b) CBB tip I-K MASTER-SLAVE (7472. 7476): T TL TL TH ≥ TH min TL ≥ TL min t b + t r ≤ TL T ≥ TH min + max[TL min .divizor: TT>tb (nu interesează decodificarea stărilor numărătorului). .

8. Tabela de adevăr pentru un astfel de circuit cu 4 CBB este: T=1 (frontul negativ al T pentru CBB tip J-K MASTERSLAVE ). Y3 Y2 \Y1 Y2 00 01 11 10 ìI = Q ï n +1 Qn = 0 Þ í n ïK n = x î 00 0001 0101 1101 1001 01 0010 0110 1110 1010 11 0100 1000 0000 1100 10 0011 0111 1111 1011 ì In = x ï Qn = 1 Þ í ïK n = Qn +1 î Y3 Y2 Y1 Y0 T (Y3 Y2 Y1 Y0)n+1 x x x x 0 Y3 Y2 Y1 Y0 0 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 1 1 0 1 0 0 0 1 0 0 1 0 1 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 1 1 1 1 0 0 1( 1 0= 0 1 + 1 1 0 1 Qn +1 In Qn K n Qn ) 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 I0=1 K0=1 I1=Y0 K1=Y0 .Numărătoarele pot fi prevăzute şI cu o intrare de ştergere dacă se folosesc intrările prioritare de resetare ( R ) ale CBB ce alcătuiesc numărătorul (semnalul RES). NUMARATOARE Aceste numărătoare au în alcătuire CBB ce comută simultan sub acţiunea unui semnal de ceas.

Numărătorul astfel obţinut este un numărător binar sincron direct de tip serie.ceia ce conduce la mărirea tb şi dacă la scăderea frecvenţei de lucru. unde Ci-λ se numeşte transport din rangul I-λ: i ì = ∏ Yn = Ci−1 Yi ïCi n =0 í ï îCi−1 = i Frecvenţa maximă este dată de relaţia : TT > t b + (n − 2) t p + TSH se obţine dintr-o frecvenţă maximă mai mică decît în cazul anterior. Acest dezavantaj se poate elimina dacă pentru implementare se folosesc relaţiile Yi=Ki=Ci-λ. Un alt dezavantaj este creşterea numărului de intrări penru porţile folosite pentru rangurile superioare. i = 0. O altă variantă de numărător binar sincron binar sincron direct de tip paralel se obţine dacă se impune Ii=Ki=1.Prin implementarea acestor relaţii se obţine un numărător binar sincron direct de tip paralel în schema: Yi = K i = ∏ Yn n =0 i−1 ' Frecvenţa maximă de lucru a unui astfel de numărător este dată de relaţia: TT > t b + t p + TSH . Dezavantajul schemei constă în faptul că fiecare poartă nou introdusă (pentru un rang superior) măreşte cu o unitate factorul de încărcare al CBB . n − 1 : Qn + 1 = T n Qn + T n Qn Qn = 0 Þ T n = Qn + 1 Qn = 1 Þ T n = Qn + 1 T0=T . care conduce la o frecvenţă mai mare decît numărătorul sincron.

se poate realiza foarte uşor un numărător binar sincron reversibil dacă se folosesc două semnale de ceas (CU pentru numărătorul direct şi CD pentru numărătorul invers): Pentru a conferi schemei flexibilitate maximă se pot folosi CBB tip J-K MASTER-SLAVE cu intrări sincrone ( R .pornind de la această schemă.T1=Y0T T2=Y1Y0T T3=Y2Y1Y2T Numărătoarele pot fi prevăzute cu ieşire de transport pentru expandare (CY). S ): .

Dacă stăstările sunt cele din figură. Alegerea stărilor omise poate fi făcută arbitrar.3.MR 1 0 0 0 PL D i x x 0 0 0 1 1 x Qi 0 0 1 0 Si 0 0 1 1 Ri 1 1 0 1 R i = MR D i + MR PL Si = MR + PL + D i MR . stările omise se aleg astfel încît decodificarea stărilor rămase să se poată face cît mai simplu.Folosim procedeul descris mai sus pentru sinteza unui numărător modulo 5. rezultănd mai multe variante de numărător modulo k.ştergere paralelă PL - încarcare 8. Numărătoare modulo k ≠ 2 p Numărătoarele prezentate pînă acum sunt numărătoare binare realizate prin interconectarea a p celule.1. se determină numărul minim de celule necesare n=[log2k]. matricea de excitaţii pentru numărătorul modulo 5 este: n T=1 .În practică.Aceste numărătoare evoluează prin toate cele 2p stări posibile: Pentru a realiza un numărător modulo P2≠2p.Din cele 2 stări posibile se elimină 2n-k stări.

apoi la stingerea stării k se resetează toate celulele numărătorului.O altă metodă de realizare a numărătoarelor modulo k≠2p este metoda reducerii la 0 . care presupune următoarele: se lasă un numărător modulo 2n să evolueze normal de la starea 0 la starea k-1. Pentru un numărător modulo 5 se obţine R = Y2 Y0 .K0=1 I1=Y0 Qn + 1 = In Qn + K n Qn ìI n = Q n + 1 Qn = 0 → í îK n = x ìK = Q n + 1 Qn = 1 → í n îI n = x K1=Y0 I2=Y1Y0 K2=1 Pentru a verifica corectitudinea schemei se face analiza ei: Y2 Y1 Y0 I0R0 I1R1 I2R2 0 0 0 11 00 01 0 0 1 11 11 01 0 1 0 11 00 01 0 1 1 11 11 11 1 0 0 01 00 01 0 0 0 1 0 1 01 11 01 0 1 0 1 1 0 01 00 01 0 1 0 1 1 1 01 11 11 0 0 0 Y2Y1\Y0 0 0 0 1 1 1 1 0 0 001 011 010 000 1 010 100 000 010 Numărătorul sintetizat este deci cu reintrare automată în ciclul de funcţionare.

R = Y2 + Y0 = Y2 Y0 Dezavantajul acestei scheme este durata manifestată a semnalului R : t RL = t PHL ( Q ) + t PHL( L ) ≥ t RL min Pentru eliminarea acestui dezavantaj. Aceste evenimente durează deci 2TT. apoi după încă TT/2 trece din starea 0 în starea 1. după care R devine activ. numărătorul devine resetat un timp TT. se sincronizează R cu frontul pozitiv al ceasului T. Numărătorul rămîne în ultima stare a ciclului de numărare un timp TT/2. D=Y2 . durata activă a lui R este T RL =TT. Din acest motiv pentru resetare trebuie determinată starea 4 (100) pentru realizarea unui numărător modulo 5. În acest caz.

Numărătoare integrate uzuale Cele mai frecvent utilizate numărătoare integrate sunt: 7492 .De remarcat că starea 4 (100) divizează TT/2.Acest numărător realizează o divizare în 5 a frecvenţei ceasului T.2. apare un impuls pe ieşirea de împrumut (BW) care se foloseşte pentru încărcarea numărătorului în starea k... O altă metodă de divizare a unui numărător modulo k≠2p este utilizarea unui numărător prim stabil invers .2 intrări de ştergere: MR0⋅MR1=1 .1..cînd numărătorul ajunge în starea 0. apoi ciclul se reia. numărătorul trece succesiv prin stările k-1.semnalului BW (care există doar atît timp cît conţinutul numărătorului este 0) datorită încărcării numărătorului ( PL = BW ) ar putea compromite operaţia de încărcare. De remarcat că starea 0 nu face parte din ciclul de numărare. 8.k-2.4. Dezavantajul schemei este că nu se poate asigura o durată suficientă pentru semnalul PL = BW . Acest neajuns se poate elimina prin sincronizarea recţiei în cazul T (similar metodei anterioare). iar starea 0 (000) divizează 3 TT/2.4 secţiuni: divizor în 2 (C0) divizor în 6 (C1) ..1.după cum urmează: se încearcă numărătorul în starea iniţială k şi se aplică impulsului pe intrarea de numărare inversă (CD).

7493 - 2 secţiuni:

divizor în 2 (C0) divizor în 8 (C1) - 2 intrări de ştergere: MR0⋅MR1=1

7490 - 2 secţiuni :

divizor în 2 (C0) divizor în 5 (C1) - 2 intrări de ştergere: MR0⋅MR1=1 - 2 intrări de iniţializare în 9 (1001) MS0⋅MS1=1

74193 - numărător binar sincron reversibil prestabil 74192 - numărător zecimal sincron ireversibil prestabil

8.2. Registre Registrele circuite ce permit stocarea şi sau deplasarea unor cuvinte binare. În funcţie de modul de funcţionare, registrele pot fi: de memorie, de deplasare,combinate,inversabile. 8.2.1. Registre de memorie Sunt utilizate pentru stocarea cuvintelor binare.Funcţionarea unui astfel de registru de memorie este descrisă în următoarea tabelă de adevăr:

Yin+1=

Tn 0 1

Yin+1 Yin Xin

T nYin+TnXin

Având în vedere că ecuaţia ce descrie funcţionarea unui CBB tip D sincron este Qin+1= T nQin+TnDin , rezultă că se poate realiza un registru de memorie pe k biţi dacă se folosesc k CBB tip D sincrone cu Din=Xin.

Dacă se folosesc CBB tip D active pe front pozitiv,informaţia se înscrie în registru pe frontul pozitiv al ceasului.Dacă se folosesc CBB tip D latech ,pentru T=1 registrul este transparent pentru informaţia de pe intrări,iar pentru T=0 registrul se zăvoreşte,memorînd informaţia care se află pe intrări în momentul frontului negativ al T. Dacă se folosesc CBB tip D MASTER-SLAVE în registru se memorează informaţia care se află pe intrări în momentul frontului negativ al ceasului.registrele de memorie se pot implementa şI în CBB tip I-K sau R-S dacă se realizează conexiunile respectiv.Registrele de memorie multiport sunt constituite din CBB adresabile care au o intrare comună de date,CBB folosite sunt de tip D-latch

În cazul registrelor de memorie intrerea de ceas a bistabilelor poartă numele de WE sau WR dacă se folosesc CBB tip D active pe front pozitiv, **** pentru CBB tip D-latch,respectiv *** sau **** pentru CBB tip D MASTER-SLAVE. 8.2.1. Registre de deplasare Sunt registre care la fiecare impuls de tact deplasează conţinutul spre dreapta sau spre stânga cu cîte o celulă. Funcţionarea unui registru cu deplasare stînga-dreapta este ilustra tă
de următoarea tabelă de adevăr:

Tn 0 1

Y0 Y1 ⋅⋅⋅ Yp SO Y0 Y1 ⋅⋅⋅ Yp Yp SI Y0 ⋅⋅⋅ Yp-1 Yp1

Y0n+1= T nY0n+TnSIin Yin+1= T nYin+TnYi-1n SOin=Ypn

D0n=SIn Din=Yi-1n

i=1, p

Pentru un registru de deplasare dreapta-stînga, funcţionarea este următoarea: Tn 0 1 SO Y0 Y1 ⋅⋅⋅ Yp Y0 Y0 Y1 ⋅⋅⋅ Yp Y1 Y1 Y2 SI Ypn+1= T nYpn+TnSIn Dpn=SIn Yin+1= T nYin+TnYi+1n Din=Yi+1n i= 0, p − 1 SOn=Yon

Prin combinarea celor două scheme se obţine un registru de deplasare comandat stînga-dreapta sau dreaptastînga:

CM=0 : MUX realizează legătura 0-0 → deplasare stînga-dreapta CM=1 : MUX realizează legătura 0-0 → deplasare dreapta-stînga
8.2.3. Registre combinate
Acest tip de registre cumulează funcţiile registrelor de memorare cu cele ale registrelor de deplasare

CM=0 → încărcare serială pe Ts → registru de deplasare stînga-dreapta CM=1 → încărcare paralelă pe TP → registru de memorie
8.2.4. Regiştri universali Acest tip de regiştri cumulează funcţiile tuturor tipurilor de registre examinate anterior:

este necesar cunoaşterea grafului de fluenţă corespunzător registrului.. Pentru a putea proiecta numărătoare sau generatoare de secvenţă cu ajutorul registrelor de deplasare. Registre de deplasare cu reacţie Registrele de deplasare se pot folosi pentru realizarea numărătoarelor şi a generatoarelor de secvenţe. iar CLC2 realizează funcţia de ieşire(generează secvenţa necesară ) . Schema generală utilizată pentru acest scop este următoarea: Registrului de deplasare i se asociază două circuite logice combinaţionale: CLC1 realizează funcţia de reacţie... Circuitul de ieşire se foloseşte numai în cazul generatoarelor de secvenţă şi numai atunci cînd circuitul de reacţie nu poate determina singur generarea secvenşei dorite. În unui registru de deplasare de 4 biţi.5.2. . . .care ilustrează evoluţia posibilă a stărilor. . Ypn) Circuitul de reacţie produce o valoare ce se aplică pe intrarea serială a registrului şi care dfetermină deci starea următoare a acestuia.intrare sincronă pentru ştergerea registrului 8. Ypn) Yin+1=Y0n : : Ypn+1=YP-in Sn=g(Y0n .M1 M0 0 0 0 1 1 0 1 1 MUX 0-C 1-C 2-C 3-C mod de lucru nefolosit deplasare stînga-reapta deplasare dreapta-stînga memorare *ES ..Secvenţele ce caracterizează această schemă sunt următoarele: Y0n+1=SIn=f(Y0n .graful de fluenţă edte următorul: .

Rezultă: Q Y3 Y2 Y1 Y0 1 0 0 0 1 2 0 0 1 0 4 0 1 0 0 8 1 0 0 0 SI 0 0 0 1 Y3Y2\Y1Y0 00 01 11 10 00 x 0 x 1 01 0 x x x 11 x x x x 10 0 x x x SI=Y3 De remarcat ca pentru orice numarator realizat prin aceasta tehnica diagrama Karnaugh corespunzatoare reactiei trebuie sa contina 1 in celula 0000 si 0 in celula 1111.Pe acest graf sunt puse în evidenţă toate stările şi tranziţiile posibile între stări.se poate alege de exemplu secvenţa de stări 1-2-4-8. iar apoi trebuie realizat circuitul de reacţie astfel încît registrul de deplasare să oscileze în secvenţa de stări aleasă. Pentru a proiecta un numărător cu n stări trebuie aleasă o secvenţă de n stări din diagramă. in caz contrar producandu-se blocarea numaratorului la atingerea starilor respective. . Pentru realizarea unui numărător cu 4 stări.

Prin completarea matricei de iesire in pozitiile indiferente se elimina acest neajuns si se obtine urmatoarea structura pentru numara torul Johnson: y3y2\ y1y0 00 01 11 10 00 10 1 1 0 0 0 0 0 0 01 1 1 0 0 11 1 1 0 0 SI = y 3 y 2 + y 3y 0 = y 3 y 2 + y 0 = y 3 + y 2 + y 0 = y 3 + y 2 y 0 ( ) Generatoarele de secventa sunt ? care genereaza o succesiune de 1 si 0 in o structura data. secventa utilizata apare ca fiind aleatoare. putem atinge secventa de stari 0-1-3-7-15-14-128. Un registru de deplasare de n biti are 2n -1 stari nenule. Secventele aleatoare au dezavantajul ca nu sunt repetabile. Pentru un registru de 4 biti. Secventele binare pot fi secvente aleatoare (de lungime infinita) sau secvente determinate (de lungime finita). o secventa de lungime maxima este: 1-2-4-5-3-6-13-10-5-11-7 . Daca se utilizeaza o portiune dintr-o secventa pseudoaleatoare mult mai mica decat lungimea acesteia. Nici acest numarator nu asigura reintrarea in ciclul de functionare la parasirea accidentala. pentru care se obtine: Q 0 1 3 7 15 14 12 8 y3y2y1y0 SI 0000 1 0001 1 0011 1 0111 1 1111 0 1110 0 1100 0 1000 0 y3y2\ y1y0 00 00 01 10 1 1 x 01 x x x 11 0 x SI = y 3 0 10 0 x x 11 1 1 0 x Numaratorul astfel obtinut se numeste numarator Johnson. Pentru eliminarea acestui neajuns se folosesc secvente psindoaleatoare. Secventa obtinuta astfel este o secventa de lungime maxima.Daca dorim realizarea unui numarator in 8 stari. care sunt secvente determinate de lungime ? .

Rezulta: Q 1 2 4 9 3 6 13 10 5 11 7 15 14 12 8 y3 y0 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 y2 y1 S I 0 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 0 1 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 y3y2\ y1y0 00 01 11 10 Y3y2\ y1y0 00 01 11 10 00 01 11 10 x 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 00 01 10 1 0 0 1 1 1 0 0 0 1 1 1 11 0 1 0 1 SI = y 3 ⊕ y 2 + y 3 + y1 + y 0 SI = y 3y 2 + y 3 y 2 = y 3 ⊕ y 2 Dezavantajul schemei este imposibilitatea revenirii in ciclul normal la atingerea accidentala a starii 0 (x=0) si se poate elimina impunand x=1 In tabelul urmator sunt prezentate reactii ce permit obtinerea secventelor de lungime maxima pentru n≤10: .15-14-12-8.

6. Secventa are 10 biti. Pentru rezolvarea acestei probleme.n 1 2 3 4 5 6 7 8 9 10 SI y0 y1 ⊕ y0 y2 ⊕ y1 y3 ⊕ y2 y4 ⊕ y3 y5 ⊕ y4 y6 ⊕ y5 y7 ⊕ y5 ⊕ y4 ⊕ y3 y8 ⊕ y5 y9 ⊕ y6 Exista secvente ce nu pot fi obtinute doar prin folosirea unui circuit de reactie. 10. iar din 5 trebuie sa se treaca sau in 10 sau in 11. Un astfel de exemplu este prezentat in continuare: trebuie proiectat un circuit care sa genereze secventa: 1011011010. care va trebui y3 y2 y1 y0 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 0 1 Q 11 6 13 11 6 13 10 5 10 5 Se observa ca starile 11. Este deci necesar ca ciclul sa aiba 10 stari. 5 apar mai mult daca o data in ciclul de functionare. Cele 10 combinatii nu pot fi obtinute prin metoda circuitului de reactie. deci trebuie folosit un registru de deplasare de 4 biti. se foloseste un circuit de reactie pentru obtinerea celor 10 stari si un circuit de iesire pentru obtinerea secventei dorite. Numarul de stari ale acestui ciclu nu poate fi micsorat deoarece din starea 1 trebuie sa se treaca fie in 11 fie in 10. sa treaca prin urmatoarele stari: y3 y2\ y1 00 y0 10 00 1 01 x 11 0 10 0 01 0 1 x x x 1 0 1 11 1 x 0 x y3y2 \ y1 00 y0 10 00 1 1 01 x x 11 1 0 10 0 x 01 0 1 x x 11 x 1 1 0 . 13.

Intrarea de mod determina functionarea in unul din cele doua moduri de intrare. 7495 este prevazut cu doua ? de ceas. iesire paralela si seriala.6 Registre integrate uzuale Cel mai cunoscut registru TTL este 7495.Secventa de 10 stari poate fi de exemplu 0-1-2-5-11-7-15-14-12-8: Q 0 1 2 5 11 7 15 14 12 8 y3 y2 y0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 1 0 1 0 0 y1 SI 0 0 1 0 1 1 1 1 0 0 1 0 1 1 1 1 0 0 0 0 S 1 0 1 1 0 1 1 0 1 0 SI = y 3 y 0 + y 3y 2 + y 3 y 2 y 0 S = y 3 y 0 + y 2 y 0 + y 2 y1 Circuitul nu asigura reintoarcerea in ciclul de functionare la parasirea accidentala a acestuia. 8. Corespunzator celor doua moduri de intrare.intrare paralela pe C2 .starea seriala pe C0 1 .2. care este un registru combinat avand posibilitati de intrare paralela sau seriala. MC = 0 . Problema se rezolva prin completarea corespunzatoare a diagonalei Karnaugh a lui SI.

In realitate.0) . ( ) ( ) ( ) ( ) 2. x = (0.0) sau x. 9. . 7495 se poate transforma in registru de deplasare considerat stanga-dreapta sau dreapta-stanga. x = (0. x = (11) . 9. HAZARDUL STRUCTURILOR LOGICE Circuitele logice folosesc elemente de comutatie pe care le-am considerat pana acum ca fiind elemente ideale in sensul ca x. Influenta acestor regimuri tranzitorii asupra functionarii circuitelor logice este cunoscuta sub numele de hazard in functionare.1 Hazardul in circuitele logice combinationale .Prin realizarea unor conexiuni adecvate. pe durata regimurilor tranzitorii apar situatii in care x. Exemple: 1.1) sau x. x = (1.

7). Iesirea z a unui circuit se poate scrie in raport cu variabila x sub una din urmatoarele doua forme: 1. ( x. in expresia functiei trebuie adaugati implicantii primi care sunt egali cu 1 pentru aceste comutari. C = 0 z = x + x = 1 Pentru eliminarea acestui tip de hazard trebuie respectata conditia C ≥ AB. hazardul in functionare este clasificat dupa regimul tranzitoriu al variabilelor de iesire in: hazard static. B R(6. a)metoda Veitch-Karnaugh: z = x 2 x 0 + x 2 x1 x2 \ x1 00 01 11 hazard static in 1 x0 10 x 0 = 1. x1 = 1 z = x 2 + x 0 → 0 1 1 1 1 1 Hazardul static de 1 apare in diagrama Karnaugh exista celule adiacente ce contim 1 care acoperite de acelasi implicit prim. x) = (11) R = S = 0. Circuitul poate prezenta deci hazard static in 1 comutatiile x2 in situatiile: 011 ↔ 111 ⇔ 3 ↔ 7 Pentru a elimina acest tip de hazard.3 ) B -11 R(3. 9. dar exista un regim tranzitoriu pe durata caruia iesirea isi schimba valoarea.1 Hazardul static Un CLC prezinta hazard static daca pentru doua valori adiacente ale intrarilor iesirea trebuie sa ramana constanta.0) z = 0 → hazard static in 1 0 1 2 3 001 011 110 111 1 3 6 7 A 0-11 R(1. x1=1. eliminarea acestui tip de hazard poate fi realizata daca elimina situatiile descrise prin introducerea unor termeni ? in expresia functiei: z = x 2 x 0 + x 2 x1 + x1x 0 x 0 = 1.6.In cazul CLC. x 1 = 1 z = x 2 + x 2 + 1 b)metoda Quine-McCluskey: ( x. z = ( R + x) S + x T FA ( FA+ FB ) FC ( FB + FC ) = 1 FA FC =1 1 3 6 7 A 1 1 B 1 1 C 1 1 z=A+C ( ) .70 11A = x1 x ) C=x x 2 1 z = x 2 x 0 + x 2 x1 Exista hazard static in 1 daca x0=1.7 ) C = x 2 x 0 . T = 1 z = xx z = 1 → hazard static in 0 . z = Ax + Bx + C A = B = 1. hazard dinamic si hazard de curse.3.1. x) = (0. Fie functia logica z=R1(1. deci B z = x 2 x 0 + x 2 x1 + x1x 0 2.

1. Hazardul dinamic poate sa apara in circuitele in care exista 3 sau mai multe cai de semnal in timpi de propagare diferiti pentru aceeasi variabila. Z=1 C=0 C=1 CC :1-2 6-5-2 3-4-5-2 ( ) In cazul CLC pe doua nivele sintetizate corect nu poate sa apara hazard dinamic (considerand ca timpii de propagare sunt aceeasi pentru porti similare).Pentru eliminarea acestui tip de hazard trebuie respectata conditia T ≤ R+S. . rezulta: z = x 2 + x 2 x 1 + x 1 . 9. variabila care nu se modifica este x 0 = 1 . Z=0 A=B=1. Conditia necesara si suficienta pentru ca intre doua puncte de functionare sa nu existe hazard de surse este ca functia de iesire a circuitului sa contina implicantul prim ce inchide cele doua puncte. Exemplu: z = x 2 + x 2 x 1 + x 1 x 0 .2 Hazardul dinamic Un CLC prezinta hazard dinamic daca pentru doua intrari adiacente iesirea trebuie sa comute 0→1 (1 → 0) . dar ea isi schimba valoarea pe durata regimului tranzitoriu.nu prezinta hazard static in 1. Exemplu: A=B=1.3 Hazardul de surse Un CLC prezinta hazard de surse daca atunci cand cel putin doua intrari se modifica iesirea trebuie sa ramana constanta. X2 \ x1 x0 0 1 00 01 11 10 1 1 1 1 La comutarea 001 → 111 . insa pe durata regimului tranzitoriu iesirea evolueaza in secventa 0 → 1 → 0 → 1 (respectiv 1 → 0 → 1 → 0 ). marimile luate sunt similare celor de la forma disjunctiva. 9.1.

9. hazardul nu modifica decat regimul tranzitoriu al circuitului . Daca x devine 1. Tehnologic este imposibil ca ambele variabile (y1. In cazul CLC.2 Hazardul in sisteme secventiale asincrone 9. Exista 3 posibilitati de modificare a variabilelor de stare y1 y0 din 00 in 11: O succesiune de comutatii care inlocuieste o comutatie mica se numeste cursa.1 Hazardul de curse Fie un sistem secvential asincron cu graful de fluenta din figura: Q\ x 0 1 2 3 0 2 2 3 3 1 1 2 3 0 Q 0 1 2 3 y1 y0 0 0 0 1 1 1 1 0 y1 y0 \ x 00 01 11 10 Daca automatul se afla intr-o anumita stare. automatul nu evolueaza spre o stare stabila si trece periodic prin aceeasi succesiune de stari.2. atunci el trece in starea 2. Pentru x=1. . apoi in 1. x 2 si x1 comuta dupa cum urmeaza. atunci starea respectiva se numeste stabila si se incercuieste (starea 3 pentru x=0). pe care nu o mai paraseste 0 1 11 01 11 11 10 10 10 00 . tranzitia 0 → 2 se codifica 00 → 11 . nu are loc nici o tranzitie.Daca x 2 . descriind un ciclu. apoi in starea stabila 3. fara a schimba regimul permanent. 2. desi hazardul de surse nu poate fi eliminat prin metoda mentionata. Corespunzator acestor 3 variante. Daca x devine din nou 0 atunci cand automatul se afla in starea 0. O solutie ar fi validarea iesirilor numai dupa terminarea regimului tranzitoriu. automatul trece in starea 0. 3 si din nou in 0 etc. iar starea urmatoare este aceeasi pentru o anumita intrare. In toate cele 3 cazuri. exista 3 variante de evolutie a automatului. Daca asigurarea de stare se face conform tabelei de mai sus. ilustrate pe matricea de excitatie. apare hazard de surse: Cele doua puncte (intre care apare hazard de surse) nu pot fi incluse in acelasi implicant prim. automatul ajunge in starea stabila 3 (10).y0) sa se modifice simultan. Daca automatul se afla in starea 3 si x=0.

pentru asigurarea propusa. In continuare sunt ilustrate asigurarile de stare fara hazard de surse pentru automate in 3 si 4 stari: Se observa ca este imposibila o asigurare de 0 0 1 stare fara hazard de surse 1 f 2 daca au loc tranzitii intre fiecare doua stari. deoarece rezultatul comutarilor succesive este identic cu cel prevazut in matricea de excitatie (atingerea starii stabile 3). 2. Pentru a ilustra astfel de surse. automatul ajunge in starea 10 (3) din care nu mai poate fi scos. tranzitiile intre stari sa se faca prin schimbarea unei singure variabile de stare: starile intre care au loc tranzitii trebuie sa fie codificate prin valori adiacente ale variabilelor de stare. Hazardul de surse se elimina daca sunt respectate urmatoarele conditii: 1. tranzitia 2 . Exista si surse pentru care starea finala depinde de ordinea in care are loc comutarea variabilelor de stare. astfel de surse se numesc surse critice. consideram sistemul cu graful de fluenta din figura urmatoare. pentru aceasta. trece direct in 11 daca y1y0 comuta simultan.pana la o noua modificare a intrarii x. In acelasi mod pot fi ? variabilelor de intrare atunci cand automatul are mai multe intrari ce se modifica simultan. 1 . se spune ca aceasta sursa nu este critica. y1 y0 0 1 1 2 3 \ 1 0 0 Q 0 1 2 3 y1 y0 0 0 0 1 1 1 1 0 y1 y0 \ 0 1 . rezolvandu-se astfel problema adiacentilor intre starile intre care au loc tranzitii.0 devine in acest caz 2 . de asemenea starile 1 si 2. daca y1 comuta primul. modificarea intrarii sa se faca prin schimbarea unei singure variabile de intrare: sunt necesare circuite suplimentare care sa asigure aceasta conditie.f 0. Rezolvarea acestei probleme presupune ca starile intre care au loc tranzitii sa fie codificate prin valori adiacente ale variabilelor de stare. starile 0 si 1 sunt adiacente. Adiacenta este simplu pusa in evidenta pe diagramele Karnaugh. este necesar ca si starile 1 si 2 sa fie adiacente. daca se trece si prin 01. Daca y0 comuta primul. Q\ x 0 1 2 3 0 0 2 0 3 1 1 1 1 3 Q 0 1 2 3 y1 y0 0 0 1 1 0 1 1 0 y1 y0 \ x 0 00 00 11 01 00 11 11 01 11 10 10 10 1 Daca automatul se afla in starea 00 cu x=0 si apoi devine . se introduce starea fictiva f si se impune conditia ca automatul sa treaca neconditionat din f in 0. indiferent de valoarea lui x. 2. In schimb. starea finala este tot 11.

vor rezulta tranzitii care se realizeaza prin modificarea a doua variabile de stare. urmatoarele perechi de stari sunt adiacente: 0-1. 1-3). Graful de fluenta modificat contine 6 stari. 4. 1-2. y2 \ y1 00 y0 10 0 f1 1 0 01 3 1 f2 2 11 f3 Daca graful de fluenta are 2 diagonale. pentru a rezolva si adiacenta intre starile 2-3 si 3-0. oricum s-ar alege aceste variabile.Asigurarea de stare fara hazard de surse se poate realiza numai cu doua variabile de stare. dintre care 2 fictive. care sa rezolve adiacenta intre starile 0-2: 0-f3-2. problema hazardului de surse poate fi rezolvata prin introducerea unei a treia stari fictive. se introduc doua stari fictive f1 si f2. in care toate tranzitiile au loc intre stari vecine. 1-3. Se obtine un graf de fluenta modificat cu 7 stari. 3. 3-f1-0. deci a fost rezolvata problema hazardului de surse. eliminarea hazardului de surse nu se poate rezolva doar cu doua variabile de stare. 0-1. Problema se poate rezolva daca se vor aloca 3 variabile de stare. 1-2. . dintre care 3 fictive. Fiecare tranzitie din acest graf are loc intre stari adiacente (2-f2-3. y2 \ y0 0 1 y1 00 01 11 10 f 1 3 f2 0 1 2 In cazul automatelor cu 4 stari al caror graf de fluenta are o diagonala.

2. 9.…. Hazardul de continuitate pentru structura g poate fi asimilat hazardului static al CLC. ceea ce poate conduce la nerespectarea timpilor de prestabilire si de mentinere sau la obtinerea unor impulsuri de durata prea scurta.. 9. x ) = (0. fj. timpii de mentinere. pot apare decalaje de timp la un bloc relativ la celalalt. Solutia de eliminare a acestui tip de hazard este introducerea unor intarzieri suplimentare pentru unele blocuri. Problema se poate rezolva prin urmatoarele masuri: 1. Hazardul sistemelor secventiale sincrone In cazul sistemelor secventiale sincrone. 2. prezenta hazardului de continuitate in structura f poate determina modificarea variabilelor de stare pe durata regimului tranzitoriu. x ) = (1. In schimb. Hazardul Un sistem secvential sincron este comandat pe de o parte de ceasurile interne. eliminarea hazardului static in structurile combinationale f si g . care nu modifica decat regimul tranzitoriu al structurii. timpii de prestabilire. 1).3. asigurandu-i astfel o durata satisfacatoare.3. fenomene ce pot produce hazard in functionare. daca aceasta este mai mare decat timpul de reactie al sistemului.9.. fara a schimba regimul permanent.1. reducerea duratelor regimurilor tranzitorii ale variabilelor sub timpii de reactie ai sistemului( timpii de trecere dintr-o stare in alta ). sistemul prezinta hazard de propagare. astfel incat sa dispara decalajele relative de timp. 0) sau (x. Daca sub influenta acestor decalaje automatul evolueaza spre o stare stabila diferita de cea din matricea de excitatie. Daca un semnal decomanda se aplica unor blocuri diferite fi. ` . timpii de propagare. iar pe de altã parte de semnalele externe si ceasurile interne sunt oarecare. 9.fp. Exemple: 1. Hazardul de continuitate Hazardul de continuitate se refera la regimul tranzitoriu al unei variabile logice: (x.2. Problemele care apar se datoreazã nerespectãrii conditiilor impuse de parametrii dinamici ai circuitelor utilizate (duratele impulsurilor. Solutia consta in sincronizarea reactiei prin utilizarea unui bistabil care sa memoreze semnalul de reactie.2. se poate ajunge la o evolutie nedorita. tipurile de hazard mentionate pentru sistemele asincrone pot fi eliminate prin introducerea semnalului de ceas. frecventa maximã de lucru ).3 Hazardul de propagare Consideram un sistem secvential la care structura combinationala f este constituita din mai multe blocuri f1. Realizarea numaratoarelor modulo p ≠ 2k prin metoda aducerii la zero sau prin metoda resetarii controlate daca se foloseste o reactie asincrona.

care sa sincronizeze semnalul exterior N. Pentru eliminarea acestui tip de hazard se poate folosi una din urmatoarele solutii: 1. Semnalul CU care determinã incrementarea continutului numãrãtorului poate avea in unele cazuri o duratã activã prea micã.3. Datorita neidentitatii circuitelor 2. semnalele parazite pe intrarile J sau K pe durata palierului H al ceasului pot determina bascularea circuitului MASTER.2.2. 9. pentru respectarea …………… este necesara multiplicarea ceasului.3Hazardul datorat decalajului de ceas In unele situatii trebuie comandate mai multe intrari de ceas. Solutia consta in utilizarea unui al doilea ceas decalat fata de primul.In consecinta trebuie asigurate fronturi pozitive cat mai bune. incat.3 pot apare decalaje intre T' si T'' ( shew time). este necesar ca palierul H al ceasului sa dureze cat mai putin posibil. deoarece nu sunt luate in considerare modificarile intrarii D inainte sau dupa frontul pozitiv al ceasului T. Aceasta anomalie nu poate sa apara la bistabilele D active pe front daca se respecta tsu si th. sau un registru de memorie. in durata de minim 50 ns. . a carui stare este copiata pe frontul negativ al ceasului in bistabilul SLAVE.comanda tuturor intrarilor de ceas de la o singura sursa obtinuta prin conectarea in paralel a mai multor parti in colector in gol. memorandu-l intr-un bistabil: Pentru sincronizarea mai multor semnale. ceea ce poate conduce la hazard in functionare. Pentru a evita acest hazard. datorita zgomotelor suprapuse peste semnalul de ceas (efectul de ceas multiplu).Hazardul datorat semnalelor parazite pe intrari In cazul bistabilelor J-K MASTER-SLAVE. Pot apare insa probleme daca durata frontului pozitiv este prea mare. se poate folosi un numar corespunzator de bistabile. 9.3.

Semnalul OE controleaza numai starea circuitelor de iesire.comanda intrarilor de ceas pentru bistabilele legate in cascada astfel incat ultimul bistabil din cascada sa basculeze primul. stergerea informatiei este posibila doar in cazul EPROM si nu este selectiva -RAM. EPROM.memorii ce permit atat citirea cat si inscrierea informatiei.memorii ce pot fi doar citite in sistemul care le utilizeaza.1. PROM. Coloanele matricei sunt conectate la liniile de date prin intermediul unor amplificatoare 3S.1. Daca in . Structura lor interna este conceputa matricial in fiecare nod al matricei fiind memorat bit de informatie. Din punct de vedere al modului de utilizare memoriile se clasifica in : -ROM. cuvantul aplicat pe intrarile de adresa determina activarea unei linii a matricei de memorare. CIRCUITE DE MEMORIE. adica informatia nu se distruge la disparitia tensiunii.ARII LOGICE PROGRAMABILE(PLA) SECVENTIATOARE LOGICE PROGRAMABILE(PLS) 10. Daca CS =1.Memorii ROM Memoriile ROM sunt folosite doar pentru citirea informatiei inscrisa la fabricare.2. Semnalul CS realizeaza selectia circuitului (el poate controla si starea iesirilor).1. 10. sunt nevolatile.Circuite de memorie Circuite de memorie sunt circuite care asigura posibilitatea de regasire a unor informatii reprezentate sub forma binara care au fost stocate anterior. 10. Liniile matricei (0÷2n-1) sunt activate de iesirile unui decodificator ale unei intrari sunt conectate la liniile de adresare. EEPROM .

aceasta nu poate fi stearsã. Un ciclu de memorie consta in selectarea unei linii (CS.1. in fiecare nod al matricei existand o celula de memorare. A1 ÷ An ) si apoi. Bitii ce constituie linia adresata de decodificator sunt aplicati unui multiplexor/ demultiplexor comandat de semnalul WR.durata ciclului de citire (intervalul de timp intre doua schimbari de adresa) tA . iar iesirea printr-un amplificator 3S comandat (CS = 0. dupa o intarziere dictata de propagarea prin decodificator si matricea de memorie. scoaterea circuitului din soclu pentru stergere. conectand-o la linia externa de date D. Decodificatorul este validat de semnalul CS. . Pentru functionarea corecta este necesara satisfacerea anumitor conditii de timp: tRC . memoria este de tip static (SRAM).1".. O denumire mai corecta ar fi fost EWM. Informatia de pe cele m coloane de date este prezentata la iesire daca OE=1. selectarea unei coloane (An+1 ÷ Am. deci . memoria este de tip dinamic (DRAM). la care trebuie parcurse toate cuvintele. prin intermediul decodificatorului.timpul scurs de la OE=1 la aparitia datelor la iesire tOH . Liniile de adresa An+1 ÷ Am selecteaza una dintre coloanele de date. Stergerea informatiei din celule de memorare se realizeaza prin aplicarea unei tensiuni pozitive pe linia de selectie a cuvantului.2 Memorii RAM Denumirea (Random Access Memory) se datoreaza faptului ca accesul la orice cuvant al memoriei se realizeaza in acelasi interval de timp.. timp de stergere ridicat. Structura interna poate fi regandita dupa cum urmeaza: Cu ajutorul liniilor de adresa A1÷An se poate selecta. Memoriile EPROM au posibilitatea de inscriere repetata a continutului. Memoriile PROM sunt circuite de memorie a cãror continut poate fi programat o singura datã. WR=1). de utilizator dupã inscrierea informatiei. 10. stergerea acestuia facandu-se prin expunere la radiatie ultravioleta sau X. O " dacã nu sunt realizate conexiuni in noduri.timpul de mentinere a datelor la iesire dupa ce OE=0.nodurile de pe aceasta linie exista conexiuni pe colonele respective potentialul va fi determinat de iesirile decodificatorului. spre deosebire de memoriile cu acces serial. Structura unei memorii SRAM este prezentata in continuare: Caile de inscriere (D1) si de citire (D0) pot fi separate sau comune. Structura unei memorii RAM este tot matriciala. daca celula de memorare are la baza inmagazinarea pentru o durata finita a unei sarcini electrice pe un condensator. una din liniile matricei de memorare. de la adresa prezenta la adresa dorita. Memoriile E2PROM elimina dezavantajele circuitelor EPROM: stergerea intregului continut. determinat prin rezistentele legate la Vcc.timp de acces la memorie (timpul scurs de la stabilirea adreselor la obtinerea datelor de iesire) tCS . caz in care intrarea se face printr-o poarta cu validare (CS+WR=0). potentialul coloanelor respective este .timpul scurs de la CS=1 la iesirea datelor la iesire tOE . Daca celula de memorare are la baza o structura de bistabil.

Pentru modificarea numarului de cuvinte. se poate imagina o schema in care liniile pentru A1 ÷ An sa fie comune cu cele pentru An+1 ÷ Am. Semnalele de control si adresele sunt comune. care este memorata in RL pe frontul negativ al RAS. Sensul datelor si functia structurii MUX/DMUX sunt determinate de polaritatea semnalului WR. caz in care din schema trebuie sa faca parte si circuite pentru memorarea starii. 10. . Liniile de date sunt comune. apoi pe aceleasi linii de adresa se aplica adresa de coloana care este strobata in CL cu frontul negativ al CAS. variabilele de intrare se aplica pe liniile de adresa. Pentru a realiza un circuit combinational. Avand in vedere ca celulele memoriei DRAM functioneaza pe baza stocarii unei sarcini electrice pe o capacitate si ca aceasta capacitate se descarca in timp este necesara o operatie de reimprospatare a memoriei care sa reincarce capacitatea cel putin o data la 2ms. Adresa de rang imediat superior se foloseste pentru aplicarea selectiva a semnalelor de control (CS).1. Operarea se face prin aplicarea pe liniile de adresa a adresei de linie. Modificarea geometriei memoriilor Prin modificarea geometriei se realizeaza circuite de memorie si *******de cuvinte sau numar de biti pe cuvant diferit de cel al circuitelor disponibile.1. In fiecare locatie a memoriei se inscriu valorile functiilor corespunzatoare vectorului de intrare ce reprezinta adresa locatiei respective. Adresele liniilor si coloanelor nu sunt deci necesare simultan. Aplicatii ale memoriilor in sinteza dispozitivelor numerice Circuitele de memorie pot fi folosite pentru a sintetiza circuite logice combinationale sau circuite logice secventiale. daca n=m/2.WR). 10. Pentru modificarea numarului de biti pe cuvant se conecteaza in paralel circuitele de memorie disponibile. se aplica memoriilor folosite un numar de linii de adresa corespunzator capacitatii memoriilor.3. Utilizand latchuri. functionarea circuitelor fiind simultana. Acesta este principiul folosit la realizarea memoriilor DRAM.4. Reimprospatarea se poate face simultan pentru toate celulele de pe o linie.

deci pentru aducerea sistemului in starea initiala. 10. y n ) Semnalul R este folosit pentru resetarea registrului de memorie. In punctele de conexiune interna sunt plasate sigurante fuzibile care pot fi sau nu arse de catre utilizator. Evolutia sistemului este determinata de ceasul T. Forma canonica disjunctiva a unei functii booleene este: Z= f =1 (∏ x j j ) = σ j =0 n −1 ( Qhn ) f =1 . Circuitul contine o matrice SI.2. o matrice SAU si un circuit de iesire. memorarea acestuia si realizarea vectorului de iesire. Sistemul secvential va fi constituit dintr-o memorie care contine in fiecare locatie a sa vectorii yn+1 si zn. obtinandu-se astfel schema dorita. y n ) í z n = g ( xn . adresa locatiei fiind fixata de yn si xn. in functie de vectorul de stare si de vectorul intrare.urile sunt circuite ce contin numeroase porti logice interconectabile ce permit realizarea unei game foarte variate de CLC. Matrici logice programabile (PLA) PLA.Pentru sinteza unui sistem secvential este necesara obtinerea vectorului de stare. ì y n +1 = f ( x n .

validare iesiri T . M' .Matricea SI este constituita din circuite SI ce realizeaza termenii Qh(n) . sigurantele fuzibile vor fi arse in totalitatea lor.matricea complementara (permite realizarea unei reactii asincrone intre SAU si matricea SI in scopul minimizarii de termeni SI) SAU. Pentru intarzierea vectorului de stare se foloseste un circuit de memorare (bistabilele sau registru de memorie) ca si in cazul folosirii memoriilor pentru sinteza CLS. 10.buffere de intrare SI. Xi. y n ) í z n = g ( xn .urile permit realizarea circuitelor logice secventiale prin materializarea relatiilor cunoscute: ì y n +1 = f ( x n . y n ) Schema bloc a unui astfel de circuit este prezentata in continuare: B. SAU' .matrici SI CPL . PLA. Secventiatoare logice programabile (PLS) PLS. Matricea SAU contine circuite conectabile la toate iesirile circuitelor SI si permite realizarea FCD a functiei booleene (Z).ceas Structura matricei complementare CPL este prezentata in continuare: Daca nu se utilizeaza matricea CPL.3.elemente de memorare (bistabile R-S) A .urile pot fi folosite si la sinteza sistemelor secventiale. utilizandu-se pentru obtinerea vectorilor de stare yn+1 si de iesire zn. Circuitul de iesire contine circuite XOR care permit obtinerea functiei logice Z sau inversei acesteia (Z) si buffere 3S controlate de un semnal OE. Daca de exemplu doua matrici SI furnizeaza mintermii Q1 si Q2 si este necesara si realizarea unui termen Qi = Q1+Q2. se folosesc posibilitatile oferite de matricea CPL: .amplificatoare 3S de iesire OE . SI' .matrici SAU M. care au pe intrari variabilele de intrare Xi. B' .

Astfel. Exemplu: problema muzeului C – sistemul de comanda (secvential) E – circuitul de evidenta Dupa construirea organigramei se pun in evidenta secventele distincte (s0÷s4) . care constituie schemele cu rol de executie si sistemul de comanda (SC) sau secventiatorul. care furnizeaza functiile de excitatie pentru EFA conform organigramei: 11.11. proiectarea prin metodele descrise anterior devine dificila. AUTOMATE COMPLEXE In cazul in care un automat prezinta mai mult de 5÷6 variabile de stare si de intrare. minimizarea functiilor de transfer si de iesire utilizand diagrame Karnaugh devine practic inoperanta datorita dificultatilor ce apar in determinarea vecinatatilor. o secventa fiind intervalul de timp in care se executa o operatie si/sau se ia o decizie.1 Descrierea automatelor prin organigrame Un automat poate fi descris printr-o organigrama logica in care sunt evidentiate operatiile prevazute de algoritmul de lucru si deciziile ce se iau la un moment dat. In astfel de cazuri. proiectarea se face pe baza organismelor ce descriu algoritmii de lucru ale automatelor. Structura generala a unui automat secvential descris prin organigrama contine doua blocuri distincte: elementele functionale ale aplicatiei (EFA). Actiunile automatului se executa in mod secvential.

11.2 Elementele functionale de aplicatie (EFA) Organigrama asociata automatului scoate in evidenta pe langa algoritmul de lucru si elementele ce vor constitui schemele de executie. Aceste elementele formeaza asa numitele elemente functionale de aplicatie (EFA). Pentru exemplul considerat, schemele EFA sunt redate in continuare: Schemele EFA contin un numarator zecimal reversibil (74192), ale carui iesiri sunt conectate la intrarile unui decodificator BCD-7 segmente (7446), care piloteaza in afisor "7 segmente" cu LED-uri. Pentru stergerea numaratorului la punerea la tensiuni sau la o comanda exterioara (SW), schema este prevazuta cu un circuit de initializare realizat cu o poarta trigger-schmit 7413, care furnizeaza si semnalul de initializare pentru secventiator, in scopul aducerii acestuia in secvente s0.

11.3. Sistemul de comanda (SC) Blocul din componenta automatului care genereaza secventele de lucru si semnalele de comanda pentru EFA se numeste sistem de comanda (SC) sau secventiator. In fiecare secventa de lucru se poate executa o anumita operatie (numita micro-operatie) si se trece la secventa urmatoare; aceasta trecere poate fi conditionata. 11.3.1. Secventiator cablat Aceasta solutie presupune utilizarea unui element de memorare a starii (registru de memorie, numarator presetabil, bistabile etc.) cuplat ca un decodificator, fiecare vector decodificat producand o actiune specifica asupra EFA. In vederea proiectarii, fiecare secventa i se ataseaza un vector binar distinct. Organigrama logica se transpune intr-o tabela de adevar care contine vectorii binari (codurile) corespunzatori secventei urmatoare. Pentru exemplul considerat: Secventa urmatoare Secventa curenta C B C B A A s0 0 0 0 0 X1 X0 s0∪s1∪s3 ⊕X1 s1 0 0 1 0 X1 X0X1 s0∪s1∪s2 s2 0 1 0 0 X1 X0 s1∪s2∪s3 ⊕X1 s3 0 1 1 X0 X0X1 X0X1 s0∪s3∪s4 s4 1 0 0 X0X1 X0 X0 s1∪s3∪s4 ⊕X1

ì A = ( s 0 + s 2 + s 4 )( X 0 ⊕ X 1 ) + s1 X 0 X 1 + s 3 X 0 X 1 í B = ( s 0 + s1 + s 2 ) X 1 + s3 X 0 X 1 + s 4 X 0 C = s3 X 0 + s 4 X 0 X 1 î Tot pe baza organigramei se determina si expresiile semnalelor de comanda pentru EFA, tinand cont si de particularitatile acestora:
ì U = s1 X 1 + s 0 X 0 í D = s 2 X 1 + s3 X 0

Daca se folosesc circuite basculante bistabile de tip D (7474) pentru realizarea elementului de memorare a starii, schema secventiatorului rezulta de forma din figura urmatoare: (Pentru implementarea functiilor logice C, B, A se folosesc porti.)

Fig.2 In anumite situatii, trecerea de la o secventa la alta se face prin incrementarea sau prin decrementarea secventa. Existenta acestei situatii sugereaza posibilitatea implementarii elementului de memorare cu ajutorul unui numarator zecimal reversibil prestabil, pentru a putea asigura si incarcarea paralela a secventelor neconsecutive. Din tabela de adevar a secventelor se stabilesc ecuatiile functiilor de incrementari, decrementari si incarcare paralela:

ìCU = s 0 X 0 X 1 + s1 X 1 + s 2 X 0 X 1 + s 3 X 0 íCD = s1 X 0 X 1 + s 2 X 0 X 1 + s 4 X 0 X 1 î PL = s 0 X 0 + s1 X 0 X 1 + s 2 X 0 X 1 + s3 X 3 + s 4 X 0
In cazul in care PL este activ, trebuie determinate si secventele urmatoare:

Secventa curenta C A s0 0 s1 0 s2 0 s3 0 1 4 Secventa urmatoare B 0 0 1 1 0 0 1 0 1 0 s0∪s3 s1 s2 s0∪s3 s1∪s4 C 0 0 0 0 X1 B X1 0 1 X1 0 A X1 1 0 X1 X1 ì A = ( s0 + s3 ) X 1 + s 2 + s 4 X 1 í B = ( s0 + s3 ) X 1 + s 2 îC = s 4 X 1 Schema secventiatorului daca pentru elementul de memorare se foloseste 74193 este urmatoarea: Fig. 3 .

11.adresa da salt .Poarta de schema care implementeaza semnalele de comanda (U.tipul instructiunii (T=0 instructiune de comanda) E . se executa un salt la o adresa specificata. programul continue cu instructiunea urmatoare. Adresarea micro-instructiunilor se poate face in doua moduri: explicit (adresa urmatoare este specificata in campul instructiunii curente) sau implicit (adresa urmatoare este adresa imediat superioara celei a micro-instructiunii curente).instructiuni de salt conditionat: daca este indeplinita o anumita conditie. secventele organigramei sunt furnizate de continutul locatiilor unei memorii adresata de un element de secventiere ************* Una din caracteristicile secventiatorului micro-programat este lungimea cuvantului din memoria program.2 Secventiator microprogramat In cazul adaptarii acestei solutii.Instructiuni de comanda: se da o anumita comanda catre EFA. in caz contrar. Totalitatea microinstructiunilor utilizate de un sistem micro-programat constituie setul de micro-instructiuni. daca E codifica incarcarea unui registru de memorie. O este cuvantul ce va fi memorat) .instructiune de comanda: T E O T .3. Campul instructiunii trebuie deci sa contina 3 zone: . Pentru sinteza automatelor micro-programate sunt necesare cel putin doua tipuri de instructiuni.experimentul comenzii (de exemplu. D) ramane aceeasi ca la schema precedenta.Instructiuni de salt conditionat: T C A T .tipul instructiunii (T=1 instructiune de salt conditionat) C . se continua se continue cu instructiunea urmatoare.codul comenzii de executat O .codul conditiei ce provoaca saltul A . corespunzatoare celor doua tipuri de adresare: . cuvant care se numeste micro-instructiune. .

selector de conditii DECE .Avand in vedere cele expuse. Pentru exemplul considerat programul este urmatorul: Exista doua tipuri de instructiuni (IP.registru de adrese program RMA .decodificator de comenzi RM . deci tipul instructiunii poate fi codificat pe un bit Simb S0 adresa 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 binar 10000000 10101001 10000000 10010010 00000000 10110101 10101001 00010000 11000010 10000000 10101001 00010000 10111100 10010010 00000000 11001001 Hexa 80 A9 80 92 00 B5 A9 10 C2 80 A9 10 BC 92 00 C9 S1 S2 S3 S4 .registru de memorie pentru adresa de salt MEM . 4 Programul de functionare al automatului este descris de secventa de micro-instructiuni inscrisa in memoria programului. EX).registrul de memorie pentru operandul comenzii Fig.decodificator de instructiuni MUX . schema bloc a unui secventiator micro-programat este urmatoarea: RAP .memorie program DEC1 .

dar lungimea zonei 2 a campului instructiunii este dictata de lungimea codului de salt (3 biti) U (INC) 000 D(DEC) 001 Comenzile nu necesita operanzi. schema secventiatorului este cea prezentata in continuare: Se observa ca acest secventiator poate fi utilizat si pentru comanda altor EFA-uri. D) pot fi codificate pe un singur bit.: IP : 1 EX: 0 Conditiile de salt se pot codifica pe 3 biti: X1X0 = 1 100 X1X0 = 1 001 X1X0 = 1 010 X1X0 = 1 011 NC 100 Comenzile furnizate de secventiator (U. daca se schimba programul (alt PROM). folosindu-se codificarile enumerate. Cu aceste specificatii. Programul scris in binar si in hexa este prezentat in tabelul de mai sus. Se poate folosi un circuit 74188 (PROM 32×8 ti iesiri cu selector in gol). Fig. Numarul iesirilor de comanda poate fi marit (max. Adresele de salt au lungimea de 4 biti (programul cuprinde 16 instructiuni plasate intre adresele 000 si 1111). Pentru implementarea memoriei program este necesara un circuit de memorie cu dimensiunile 16×8. 8) daca se foloseste un decodificator (7442) pentru obtinerea semnalelor de comanda. cu conditia sa nu existe mai mult de 7 conditii de salt si mai mult de 2 iesiri de comanda. 44-2 .

Pentru a implementa o functie logica solicitata de o anumita aplicatie. interfata trebuie sa asigure indeplinirea urmatoarelor cerinte: . Interfata trebuie sa asigure citirea marimilor de intrare si a conditiilor furnizate de proces. logica programata este mai lenta. Interfata consta intr-o serie de porturi de intrare fisiere prin care se realizeaza comunicatia proces-microcalculator.citirea marimilor de intrare X1. este necesar un port de iesire de 2 biti. conferind insa o flexibilitate maxima datorita posibilitatii implementarii oricarei functii logice. functiile X si Y sunt generate la momente diferite de timp. D catre EFA. X0. Pe structurile prezentate. Avand in vedere aceste cerinte. este deci necesar un port de intrare de 2 biti. magistrala de date si magistrala de comanda. . folosind acelasi suport hardware (procesorul).validarea / selectarea celor doua porturi.3 Secventiator programat Intre functiile logice si structura unei organigrame exista o echivalenta directa: Aceasta echivalenta conduce la ideea inlocuirii portilor logice si a conexiunilor dintre ele cu secvente de program corespunzatoare. trebuie proiectata o interfata intre proces si microcalculator si trebuie proiectat programul care sa realizeze functia respectiva.transmiterea comenzilor U. este necesar o logica de decodificare. Din acest motiv. precum si transmiterea de comenzi catre proces. Pentru exemplul considerat (problema muzeului).3. avand in vedere si faptul ca structurile logice de baza pot fi combinate pentru a produce orice functie. schema interfetei este urmatoarea: port P1 P2 Adresa 00xxxxxx 00xxxxxx 00xxxxxx Continut x x x x x x X1 X0 xxxxxx1 0 WR 1 0 0 Actiune Citire U (INC) D (DEC) xxxxxx 0 1 . Interfata comunica cu microcalculatorul prin registrele de adrese.11. cu iesiri pe 3 biti pentru a putea fi conectat la magistrala de date a microcalculatorului. cu ajutorul unui microcalculator. .

viteza de lucru est mai mica decat la secventiatorul cablat datorita micro-instructiunilor de salt.Organigrama programului este prezentata in continuare: Fig 45-2 Programul in limbaj de asamblare Z80 este urmatorul: S0: A. A. solicita modificari. aceasta solutie Z. cost minim de proiectare. A.(00) AND CP IR S0 IR S1 S3: IN (00) AND CP IR S0 IR S3 LD 01 OUT (00). A S3 RES 0. A 11. A. A 01 (00). dar care solicita calcule aritmetice si/sau memorarea/prelucrarea unui volum mare de date. lucru si la care nu este necesara vehicularea unui numar mare de date. 20÷40 C1) care nu 02 C. logica microprogramata: aceasta tehnica de realizare confera secventiatorului posibilitatea de a fi modificat fara modificarea totala a structurii (uneori trebuie modificat doar PROM-ul). logica programata cu microcalculator: se foloseste in aplicatiile ce nu necesita viteze mari de lucru. Z. A RES A OUT (00). (00). A 01 IR S1 C. 3. 03 02 C. dar nu este deloc flexibila. confera viteza maxima de lucru. IR S2 C2: LD A. OUT (00). A. 1. Realizarea unui secventiator se poate face in A. A. . necesita viteze mari de C. logica cablata: se foloseste pentru 03 02 automate mici (max. A S2: IN (00) AND CP IR C2 S4 IR Z. IR C1: ID OUT A RES OUT A IR S1: IN (00) AND CP IR S0 IR S1 LD 02 OUT A RES OUT (00). Z. 02 S3 (00).4 Criterii de alegere a tehnicii de realizare a secventiatorului 0.3. A. A OUT 03 (00). una din urmatoarele variante: 03 1. Z. A S4: IN (00) AND CP IR S1 IR C1 IN 03 01 C. 1. 2.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->