sistemecu circuiteintegrate digitale - utcluj.ro

36
Sisteme cu Circuite Integrate Digitale Registre de deplasare Prof. dr. ing. Sorin Hintea Departamentul Bazele Electronicii

Upload: others

Post on 03-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Sisteme cu Circuite Integrate Digitale

Registre de deplasare

Prof. dr. ing. Sorin Hintea

Departamentul Bazele Electronicii

Cuprins

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 2

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

Registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 3

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 4

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 5

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 6

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 a ultimului bistabil este legata la intrarea D a primului bistabil

Exemplu: numarator Johnson pe 3 biti

Q

1 2 3 4 5 6ck

QA

QB

QC

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 7

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.

Systems with Digital Integrated Circuits – Shift Registers 8

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 9

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

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 10

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 11

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 12

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 13

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 14

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 15

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 16

Registre de deplasare – registrul 7495

Registrul 7495 – functionare

MC = 0

activează poarta 1 a intrării de ceas

activează porţile ŞI 1 care transmit

şi deplasează intrarea serie IS în ordine

la celulele A, B, C şi D

rol de deplasare la dreapta

MC = 1

activează poarta 2 a intrării de ceas

activează porţile ŞI 2

corespunzătoare intrărilor paralele

registrul înscrie date paralel pe

frontul descrescător al ceasului T2

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 17

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 18

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 19

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 20

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 21

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 22

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 23

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

A

B

C

D

T1

QA

T2

MC

IS

QB

QC

QDCK

A

B

C

D

T1

QA

T2

MC

IS

QB

QC

QD

iesire

seriala

:6

intrare

paralela6 biti

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 24

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 25

Analiza circuitelor cu registre de deplasare

Analiza circuitelor cu registre de

deplasare are ca scop determinarea

functiei circuitului (diagrama de tranzitii)

Cunoscând conexiunile din circuit,

pentru fiecare stare prezentă se deduc

semnalele de comandă (IS, MC, ABCD)

şi stările viitoare

Exemplul 1

QA QB QC QD MC IS QA+ QB

+ QC+ QD

+

0 0 0 0 1 0 1 0 0 0

0 0 0 1 0 1 1 0 0 0

0 0 1 0 0 0 0 0 0 1

0 0 1 1 1 1 1 0 0 0

0 1 0 0 0 0 0 0 1 0

0 1 0 1 1 1 1 0 0 0

0 1 1 0 1 0 1 0 0 0

0 1 1 1 1 1 1 0 0 0

1 0 0 0 0 0 0 1 0 0

1 0 0 1 1 1 1 0 0 0

1 0 1 0 1 0 1 0 0 0

1 0 1 1 1 1 1 0 0 0

1 1 0 0 1 0 1 0 0 0

1 1 0 1 1 1 1 0 0 0

1 1 1 0 1 0 1 0 0 0

1 1 1 1 1 1 1 0 0 0

fct.

IP

DS1

DS0

DS0

DS0

IP

IP

IP

IP

IP

IP

IP

IP

IP

IP

IP

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 26

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 QA+ QB

+ QC+ QD

+

0 0 0 0 1 0 1 0 0 0

0 0 0 1 0 1 1 0 0 0

0 0 1 0 0 0 0 0 0 1

0 0 1 1 1 1 1 0 0 0

0 1 0 0 0 0 0 0 1 0

0 1 0 1 1 1 1 0 0 0

0 1 1 0 1 0 1 0 0 0

0 1 1 1 1 1 1 0 0 0

1 0 0 0 0 0 0 1 0 0

1 0 0 1 1 1 1 0 0 0

1 0 1 0 1 0 1 0 0 0

1 0 1 1 1 1 1 0 0 0

1 1 0 0 1 0 1 0 0 0

1 1 0 1 1 1 1 0 0 0

1 1 1 0 1 0 1 0 0 0

1 1 1 1 1 1 1 0 0 0

fct.

IP

DS1

DS0

DS0

DS0

IP

IP

IP

IP

IP

IP

IP

IP

IP

IP

IP

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 27

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 28

Analiza circuitelor cu registre de deplasare

QA QB QC QD MC IS QA+ QB

+ QC+ QD

+

0 0 0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 0 0 0

0 0 1 0 0 0 0 0 0 1

0 0 1 1 0 1 1 0 0 1

0 1 0 0 0 0 0 0 1 0

0 1 0 1 0 1 1 0 1 0

0 1 1 0 0 0 0 0 1 1

0 1 1 1 0 1 1 0 1 1

1 0 0 0 0 0 0 1 0 0

1 0 0 1 0 1 1 1 0 0

1 0 1 0 0 0 0 1 0 1

1 0 1 1 0 1 1 1 0 1

1 1 0 0 0 0 0 1 1 0

1 1 0 1 0 1 1 1 1 0

1 1 1 0 0 0 0 1 1 1

1 1 1 1 0 1 1 1 1 1

fct.

DS0

DS0

DS1

DS1

DS0

DS0

DS1

DS1

DS0

DS0

DS1

DS1

DS0

DS0

DS1

DS1

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 29

Analiza circuitelor cu registre de deplasare

Exemplul 3

A

B

C

D

T1

QA

T2

MC

IS

QB

QC

QDCK

1

QAQC

QD

QA

QB

QC

QA QB QC QD MC IS A B C D

0 0 0 0 0 1 0 1 1 1

0 0 0 1 0 0 0 1 1 1

0 0 1 0 0 1 0 1 1 1

0 0 1 1 0 0 0 1 1 0

0 1 0 0 0 1 0 1 1 1

0 1 0 1 0 0 0 1 1 1

0 1 1 0 0 1 0 1 1 1

0 1 1 1 0 0 0 1 1 0

1 0 0 0 0 1 0 1 0 1

1 0 0 1 0 0 0 1 0 1

1 0 1 0 0 1 0 1 0 1

1 0 1 1 0 0 0 1 0 0

1 1 0 0 0 1 0 1 0 1

1 1 0 1 0 0 0 1 0 1

1 1 1 0 1 1 0 1 0 1

1 1 1 1 1 0 0 1 0 0

fct.

DS1

DS0

DS1

DS0

IP

IP

DS1

DS0

DS1

DS0

DS1

DS0

DS1

DS0

DS1

DS0

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 30

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

1 0 0 1 X X

1 0 1 0 0 0

1 0 1 1 X X

1 1 0 0 0 1

1 1 0 1 X X

1 1 1 0 0 1

1 1 1 1 0 0

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 31

Sinteza circuitelor cu registre de deplasare

X

X 1 X X

X 1 X

X X

00 01 11 10

10

11

01

00

QAQB

QCQD

MC

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 32

Sinteza circuitelor cu registre de deplasare

Exemplul 2 – Automat de stare cu parametru

MC IS actiune

0 0

0 1

1 X

DS0

DS1

IP

0 prDS1 DS0+DS1

prIP 0 IP+DS0

prIP 1 IP+DS1

1 X IP+IP

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

0 1 1 0 X X X X X X

0 1 1 1 X X X X X X

1 0 0 0 0 0

1 0 0 1 0 a

1 0 1 0 0 a

1 0 1 1 X X

1 1 0 0 1 X

1 1 0 1 1 X

1 1 1 0 X X

1 1 1 1 X X

X X X X

X X X X

X X X X

X X X X

a 0 0 0

1 0 0 1

X X X X

X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 33

Sinteza circuitelor cu registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 34

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

1 0 0 1 0 0

1 0 1 0 0 0

1 0 1 1 0 1

1 1 0 0 X X

1 1 0 1 0 1

1 1 1 0 0 0

1 1 1 1 X X

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

X X X X

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 35

Sinteza circuitelor cu registre de deplasare

Sisteme cu Circuite Integrate Digitale – Registre de deplasare 36

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