Sunteți pe pagina 1din 36

Circuite Integrate Digitale

Registre de deplasare

Prof. dr. ing. Sorin Hintea


Departamentul Bazele Electronicii
Cuprins

 Registre de deplasare seriala cu bistabile D


 Memorii cu acces serial FIFO si LIFO
 Registrul de deplasare 7495
 Registre de deplasare bidirectionale
 Convertoare serie – paralel si paralel – serie
 Analiza circuitelor cu registre de deplasare
 Sinteza circuitelor cu registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 2


Registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 3


Registre de deplasare seriala cu bistabile D

 Registru de deplasare pe n biti


 implementat cu n bistabile D
 datele pot fi citite în paralel de la iesirile QA, QB, …, Qn
 pentru citirea seriala a datelor se foloseste cel mai putin semnificativ bit de
iesire Qn, iar bitul QA este deplasat in Qn in n impulsuri de tact suplimentare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 4


Registre de deplasare seriala cu bistabile D

 Numărător în inel
 n bistabile D legate in cascada
 iesirea Q a unui bistabil este legata la intrarea D al urmatorului bistabil
 iesirea Q a ultimului bistabil este legata la intrarea D a primului bistabil
 Exemplu: numarator in inel pe trei biţi

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 5


Registre de deplasare seriala cu bistabile D

 Numărătoare Johnson
 n bistabile D legate in cascada
 iesirea Q a unui bistabil este legata la intrarea D al urmatorului bistabil
 iesirea Q a ultimului bistabil este legata la intrarea D a primului bistabil
 Exemplu: numarator Johnson pe 3 biti

ck 1 2 3 4 5 6

QA

QB

QC

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 6


Registre de deplasare seriala cu bistabile D

 Numărătoare Johnson
 semnalele generate la iesirile bistabilelor au toate aceeasi frecventa si factor de
umplere, dar sunt decalate cu cate o perioada de tact
 trecerea dintr-o stare in alta se face cu modificarea unui singur bit
 pentru decodificarea oricarei stari este nevoie doar de doi biti, indiferent de
numarul total de biti al automatului
 un dezavantaj este ca sunt folosite foarte putine stari (2n) din totalul celor 2n
stari care se pot descrie cu n biti.

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 7


Registre de deplasare seriala cu bistabile D

 Linear-feedback shift register (LFSR)


 4 bistabile D conectate in cascada
 iesirea Q a bistabilelor este conectata la intrarea D a urmatorului circuit
 intrarea D a primului bistabil este functia XOR a ultimelor iesirilor Q a
ultimelor doua bistabile din lant
 starea “0000” lipseste

Systems with Digital Integrated Circuits – Shift Registers 8


Registre de deplasare seriala cu bistabile D

 Linear-feedback shift register (LFSR) - varianta


 4 bistabile D conectate in cascada
 iesirea Q a bistabilelor este conectata la intrarea D a urmatorului circuit
 intrarea D a primului bistabil este functia XNOR a ultimelor iesirilor Q a
ultimelor doua bistabile din lant
 starea “1111” lipseste

Systems with Digital Integrated Circuits – Shift Registers 9


Memorii cu acces serial FIFO si LIFO

 Memorii FIFO
 bitii incarcati pe intrarea seriala se deplaseaza →D5→D4→D3→D2→D1→D0
 dupa 6 impulsuri de tact, primul bit scris ajunge la ieşirea D0 de unde este citit
 prin deplasarea de la stânga la dreapta toti cei sase biti scrisi in registru vor
ajunge la iesirea D0 pentru a permite citirea tuturor datelor
 astfel primul bit înscris va fi primul citit

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 10


Memorii cu acces serial FIFO si LIFO

 Memorii LIFO
 bitii incarcati pe intrarea seriala se deplaseaza→D5→D4→D3→D2→D1→D0
 dupa 6 impulsuri de ceas, ultmul bit scris ajunge la ieşirea D5 de unde este citit
 prin deplasarea de la dreapta la stânga, toti cei sase biti scrisi in registru vor
ajunge la iesirea D5 pentru a permite citirea tuturor datelor
 astfel ultimul bit înscris va fi primul citit

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 11


Memorii cu acces serial FIFO si LIFO

 Registru universal FIFO / LIFO


 scrierea pe intrarea seriala se face prin deplasare de la stanga la dreapta;
 dupa 6 impulsuri de tact, toate cele 4 cuvinte de 6 biti sunt inscrise in registru;
 la citire, pentru aplicatia de registru FIFO, se face deplasare de la stânga la
dreapta;
 la citire, pentru aplicatia de registru LIFO, se face deplasare de la dreapta la
stânga;

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 12


Registre de deplasare – registru universal

 Registru universal pe 4 biţi implementat cu bistabile SR


 cascada de 4 bistabile SR
 Preset si Clear asincron
 intrarea seariala ‘0’ produce comanda S=‘0’ R=‘1’ → reset → se transmite ‘0’
 intrarea seariala ‘1’ produce comanda S=‘1’ R=‘0’ → set → se transmite ‘1’

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 13


Registre de deplasare – registrul 7495

 Registrul 7495 – simbol


 T1, T2 – sincronism pe front descendent
 MC – selecţie mod de operare
 ABCD – port paralel de intrare
 IS – intrare serială
 QABCD – port paralel de ieşire

MC T1 T2 Q+A Q+B Q+C Q+D Operaţie


0 ↓ X IS QA QB QC Deplasare serială
(dreapta)
1 X ↓ A B C D Incarcare paralel /
deplasare stanga*
* - necesită conexiuni externe

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 14


Registre de deplasare – registrul 7495

 Registrul 7495 – implementare


 cascada de 4 bistabile SR
 semnalul de tact T1 validat de modul de lucru deplasare seriala (MC=0)
 semnalul de tact T2 validat de modul de lucru incarcare paralel (MC=1)
 functie de MC, intrarea unui bistabil provine fie de la portul paralel de intrare
(ABCD), fie de la iesirea bistabilului anterior

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 15


Registre de deplasare – registrul 7495

 Registrul 7495 – functionare

 MC = 0 MC = 1
 activează poarta 1 a intrării de ceas  activează poarta 2 a intrării de ceas
 activează porţile ŞI 1 care transmit  activează porţile ŞI 2
şi deplasează intrarea serie IS în ordine corespunzătoare intrărilor paralele
la celulele A, B, C şi D  registrul înscrie date paralel pe
 rol de deplasare la dreapta frontul descrescător al ceasului T2

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 16


Registre de deplasare – registrul MMC 40104

 Registrul MMC 40104 – registru de deplasare bidirectionala


 etaj de ieşire TS, starea de impedanţă ridicată comandată OE=0
 comenzi sincrone, active pe front crescător
 modul de operare comandat de intrările S1S2
 aplicatie: memorie LIFO

 comanda S1S2 = 01 determină încărcarea


secvenţială serie SR→Q0→Q1→Q2→Q3
 semnalul de iesire este Q0
 comanda S1S2 = 10 determină deplasarea la
stânga Q3→Q2→Q1→Q0 pentru a permite
citirea tuturor datelor (ultimul bit înscris va fi
primul citit)
 se pot utiliza “n” registre bidirecţionale în
paralel pentru a realiza memorii pentru cuvinte
pe “n” biţi
Sisteme cu Circuite Integrate Digitale – Registre de deplasare 17
Registrul 7495 - aplicatii

 Convertor paralel-serie pe 4 biti


 accepta simultan la intrare 4 biti → port paralel de intrare
 cei patru biti sunt furnizati secvential la iesire → iesirea QD
 dupa incarcarea paralela, timp de 4 perioade de tact registrul trebuie sa
deplaseze serial
 abia dupa 4 perioade de tact poate avea loc o noua incarcare paralel → divizor
cu 4

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 18


Registrul 7495 - aplicatii

 Convertor serie-paralel pe 4 biti


 accepta bitii succesiv la intrare → intrarea seriala IS
 MC este 0 pentru a determina deplasarea seriala continua
 dupa 4 perioade de tact, 4 biti aplicati secvential la intrarea seriala sunt
disponibili pe portul paralel de iesire
 din 4 in 4 perioade de tact sunt preluati bitii de la portul paralel de iesire prin
intermediul unui latch → divizor cu 4

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 19


Implementarea divizorului de frecventa

 Automat sincron cu bistabile JK


 J=‘1’ si K=‘1’ → bistabilul schimba starea

 Automat asincron cu bistabile JK


 Bistabilele legate in cascada

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 20


Registrul 7495 - aplicatii

 Registru pe 8 biti – extinderea capacitatii


 doua registre 7495 inseriate
 iesirea QD a primului registru este conectata la intrarea seriala IS a urmatorului
 semnalele ck si MC se aplica in comun celor doua registre

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 21


Registrul 7495 - aplicatii

 Convertor serie-paralel pe 6 biti


 necesita extinderea registrului de
deplasare
 datele sunt aplicate la intrarea serie
 datele de iesire sunt preluate prin
intermediul unui registru latch
 registrul latch este comandat de
semnalul En, sincron cu T1, dar cu
frecvenţa de 6 ori mai mică
 la fiecare sase impulsuri de tact se
incarca in Latch cuvantul de iesire al
registrului

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 22


Registrul 7495 - aplicatii

 Convertor paralel – serie pe 6 biti


 necesita extinderea registrului de deplasare
 datele se aplică la portul de intrare paralel, 4 biti la un registru si 2 biti la
celalalt
 datele sunt ridicate de la ieşirea QB al celui de-al doilea registru
 semnalul MC trebuie sincronizat cu ceasul, dar are frecventa de 6 ori mai mica

intrare
paralela
6 biti A A
B B iesire
QA QA
C C seriala
QB QB
D D
QC QC
CK T1 T1
T2 QD T2 QD
:6 MC MC
IS IS

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 23


Registrul 7495 - aplicatii

 Registru de deplasare spre stanga


 intrarea seriala este LSB al portului paralel de intrare → terminalul D
 deplasarea stanga se realizeaza prin incarcari paralel succesive → MC=‘1’, Ck2
 QD se conecteaza la C, QC se conecteaza la B, QB se conecteaza la A
 iesirea seriala este MSB al portului de iesire → terminalul QA

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 24


Analiza circuitelor cu registre de deplasare

 Analiza circuitelor cu registre de QA QB QC QD MC IS fct. Q A+ Q B+ Q C+ Q D+


deplasare are ca scop determinarea 0 0 0 0 1 0 IP 1 0 0 0
functiei circuitului (diagrama de tranzitii) 0 0 0 1 0 1 DS1 1 0 0 0
0 0 1 0 0 0 DS0 0 0 0 1
 Cunoscând conexiunile din circuit,
0 0 1 1 1 1 IP 1 0 0 0
pentru fiecare stare prezentă se deduc
0 1 0 0 0 0 DS0 0 0 1 0
semnalele de comandă (IS, MC, ABCD) 0 1 0 1 1 1 IP 1 0 0 0
şi stările viitoare 0 1 1 0 1 0 IP 1 0 0 0
 Exemplul 1 0 1 1 1 1 1 IP 1 0 0 0
1 0 0 0 0 0 DS0 0 1 0 0
1 0 0 1 1 1 IP 1 0 0 0
1 0 1 0 1 0 IP 1 0 0 0
1 0 1 1 1 1 IP 1 0 0 0
1 1 0 0 1 0 IP 1 0 0 0
1 1 0 1 1 1 IP 1 0 0 0
1 1 1 0 1 0 IP 1 0 0 0
1 1 1 1 1 1 IP 1 0 0 0

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 25


Analiza circuitelor cu registre de deplasare

 Circuitul generează patru faze decalate cu perioada semnalului de ceas şi are


înscriere automată în ciclu

QA QB QC QD MC IS fct. QA+ QB+ QC+ QD+

0 0 0 0 1 0 IP 1 0 0 0
0 0 0 1 0 1 DS1 1 0 0 0
0 0 1 0 0 0 DS0 0 0 0 1
0 0 1 1 1 1 IP 1 0 0 0
0 1 0 0 0 0 DS0 0 0 1 0
0 1 0 1 1 1 IP 1 0 0 0
0 1 1 0 1 0 IP 1 0 0 0
0 1 1 1 1 1 IP 1 0 0 0
1 0 0 0 0 0 DS0 0 1 0 0
1 0 0 1 1 1 IP 1 0 0 0
1 0 1 0 1 0 IP 1 0 0 0
1 0 1 1 1 1 IP 1 0 0 0
1 1 0 0 1 0 IP 1 0 0 0
1 1 0 1 1 1 IP 1 0 0 0
1 1 1 0 1 0 IP 1 0 0 0
1 1 1 1 1 1 IP 1 0 0 0

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 26


Analiza circuitelor cu registre de deplasare

 Exemplul 2: Generator de faze cu iniţializare → variantă simplificata a generatorului


de faze
 MC = 1 numai la cuplarea tensiunii de alimentare
 starea iniţială: 1000
 după ce MC = 0 registrul va realiza numai deplasare seriala
 circuitul este mai sensibil la perturbaţii externe, care ar putrea determina
generarea eronată a unor semnale

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 27


Analiza circuitelor cu registre de deplasare

QA QB QC QD MC IS fct. QA+ QB+ QC+ QD+

0 0 0 0 0 0 DS0 0 0 0 0
0 0 0 1 0 1 DS1 1 0 0 0
0 0 1 0 0 0 DS0 0 0 0 1
0 0 1 1 0 1 DS1 1 0 0 1
0 1 0 0 0 0 DS0 0 0 1 0
0 1 0 1 0 1 DS1 1 0 1 0
0 1 1 0 0 0 DS0 0 0 1 1
0 1 1 1 0 1 DS1 1 0 1 1
1 0 0 0 0 0 DS0 0 1 0 0
1 0 0 1 0 1 DS1 1 1 0 0
1 0 1 0 0 0 DS0 0 1 0 1
1 0 1 1 0 1 DS1 1 1 0 1
1 1 0 0 0 0 DS0 0 1 1 0
1 1 0 1 0 1 DS1 1 1 1 0
1 1 1 0 0 0 DS0 0 1 1 1
1 1 1 1 0 1 DS1 1 1 1 1

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 28


Analiza circuitelor cu registre de deplasare

 Exemplul 3
QA QB QC QD MC IS fct. A B C D
A
0 0 0 0 0 1 DS1 0 1 1 1
1 B
QA 0 0 0 1 0 0 DS0 0 1 1 1
QC QA C
QB 0 0 1 0 0 1 DS1 0 1 1 1
D
QD QC
CK T1 0 0 1 1 0 0 DS0 0 1 1 0
T2 QD
QA 0 1 0 0 0 1 DS1 0 1 1 1
QB MC
QC 0 1 0 1 0 0 DS0 0 1 1 1
IS
0 1 1 0 0 1 DS1 0 1 1 1
0 1 1 1 0 0 DS0 0 1 1 0
1 0 0 0 0 1 DS1 0 1 0 1
1 0 0 1 0 0 DS0 0 1 0 1
1 0 1 0 0 1 DS1 0 1 0 1
1 0 1 1 0 0 DS0 0 1 0 0
1 1 0 0 0 1 DS1 0 1 0 1
1 1 0 1 0 0 DS0 0 1 0 1
1 1 1 0 1 1 IP 0 1 0 1
1 1 1 1 1 0 IP 0 1 0 0

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 29


Sinteza circuitelor cu registre de deplasare

 Exemplul 1 – Automat de stare implementat cu registru 7495 și porți logice

QA QB QC QD MC IS A B C D

0 0 0 0 0 1 X X X X
0 0 0 1 X X X X X X
0 0 1 0 X X X X X X
0 0 1 1 X X X X X X
0 1 0 0 X X X X X X
0 1 0 1 1 X 0 0 0 0
0 1 1 0 X X X X X X
0 1 1 1 1 X 1 0 1 0
1 0 0 0 0 1 X X X X
1 0 0 1 X X X X X X
1 0 1 0 0 0 X X X X
1 0 1 1 X X X X X X
1 1 0 0 0 1 X X X X
1 1 0 1 X X X X X X
1 1 1 0 0 1 X X X X
1 1 1 1 0 0 X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 30


Sinteza circuitelor cu registre de deplasare
MC
QAQB
QCQD 00 01 11 10
00 X

01 X 1 X X

11 X 1 X

10 X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 31


Sinteza circuitelor cu registre de deplasare

 Exemplul 2 – Automat de stare cu parametru

QA QB QC QD MC IS A B C D

0 0 0 0 0 1 X X X X
0 0 0 1 X X X X X X
0 0 1 0 X X X X X X
0 0 1 1 X X X X X X
0 1 0 0 a 1 0 1 0 0
0 1 0 1 1 X a 1 0 1
MC IS actiune 0 1 1 0 X X X X X X
0 0 DS0 0 1 1 1 X X X X X X
0 1 DS1 1 0 0 0 0 0 X X X X
1 X IP 1 0 0 1 0 a X X X X
0 prDS1 DS0+DS1 1 0 1 0 0 a X X X X
prIP 0 IP+DS0 1 0 1 1 X X X X X X
prIP 1 IP+DS1 1 1 0 0 1 X a 0 0 0
1 X IP+IP 1 1 0 1 1 X 1 0 0 1
1 1 1 0 X X X X X X
1 1 1 1 X X X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 32


Sinteza circuitelor cu registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 33


Sinteza circuitelor cu registre de deplasare

 Exemplul 3 – Generatoare de semnale: 0110111001


 Se aplica metoda ferestrei glisante QA QB QC QD MC IS A B C D

0 0 0 0 X X X X X X
0 0 0 1 X X X X X X
0 0 1 0 X X X X X X
0 0 1 1 0 1 X X X X
0 1 0 0 0 1 X X X X
0 1 0 1 1 X 0 1 1 0
0 1 1 0 0 1 X X X X
0 1 1 1 0 0 X X X X
1 0 0 0 X X X X X X
1 0 0 1 0 0 X X X X
1 0 1 0 0 0 X X X X
1 0 1 1 0 1 X X X X
1 1 0 0 X X X X X X
1 1 0 1 0 1 X X X X
1 1 1 0 0 0 X X X X
1 1 1 1 X X X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 34


Sinteza circuitelor cu registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 35


References

 J. Wakerly – Digital Design, Principle & Practices, Prentice Hall, 1999


 Rabaey J.M., Chandrakasan A., Nikolic B. Digital Integrated Circuits. A design perspective.
Prentice Hall, 2003.
 Weste N.H.E, Harris D. CMOS VLSI Design. A Circuits and Systems Perspective. Pearson
Addison Wesley, 2005. http://www3.hmc.edu/~harris/cmosvlsi/4e/
 H. Kaeslin, “Digital Integrated Circuit Design From VLSI Architecture to CMOS Fabrication”,
Cambridge University Press, 2008.
 C. H. Roth, L.K. John, “Digital System Design using VHDL”, Cengage Learning, 2008.
 Ercegovac, M., Lang T., Moreno J. Introduction to Digital Systems. John Wiley &Sons Inc,
New-York, 1999
 Sorin Hintea, Mihaela Cirlugea, Lelia Festila. Circuite Integrate Digitale. Editura UT Press,
Cluj-Napoca, 2005
 Sorin Hintea. Tehnici de proiectare a circuitelor digitale VLSI. Casa Cartii de Stiinta. Cluj-
Napoca, 1998

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 36

S-ar putea să vă placă și