Sinteza_circuitelor_secventiale
-
Upload
rulz-andrei -
Category
Documents
-
view
3 -
download
2
description
Transcript of Sinteza_circuitelor_secventiale
-
1
4 Sinteza circuitelor secventiale Presupune:
Gsirea unui circuit care satisface specificaiile de intrare-ieire impuse Exist dou metode de sintez:
Metoda matricial (folosit la sinteza circuitelor cu numr mic de intrri)
Metoda ordinogramei Etapele metodei ordinogramei sunt urmtoarele:
1. construirea pornind de la datele temei a diagramei de stri 2. codificarea strilor 3. proiectarea schemei logice
Pentru studierea sintezei, lum ca i exemplu sistemul de comand al unui crucior.
Construirea pornind de la datele temei a diagramei de stri Cruciorul parcurge un drum limitat de limitatoarele de curs Ld si Ls (Fig.11.1. 1). Motorul cruciorului este comandat cu semnalele Ms i Md. n regim automat, cruciorul pornete doar dac Ls=1. La apsarea comutatorului C1 cruciorul trebuie s execute un ciclu dus ntors, iar la acionarea comutatorului C2, dou cicluri dus ntors. Dac se acioneaz C2 n timp ce se execut un ciclu iniiat de C1, se vor executa n mod automat dou cicluri.
M
C1 C2
Ls Ld
Ms , Md
Fig.11.1. 1
n Fig.11.1. 2.este prezentat diagrama strilor.
-
2
M1 Iniializare
M2 Depl.dreapta
M3 Depl.stnga
M4 Depl.dreapta
M5 Depl.stnga
M6 Depl.dreapta
M7 Depl.stnga
LsC2
Ls
Ld
Ld
Ld
LsC1 C2
C2
Ls
Ls
Fig.11.1. 2
Codificarea strilor n exemplul propus, nu putem codifica cele 7 stri cu 3 variabile binare, deoarece orice codificare a strilor pentru diagrama din Fig.11.1. 2 duce la obinerea unor curse critice. Se impune astfel o codificare adiacent a strilor adiacente, ceea ce nseamn c toate strile ntre care au loc tranziii trebuie s aib coduri adiacente. Prin urmare, pentru a se respecta condiia de codificare adiacent a strilor adiacente, vor trebui introduse cteva stri suplimentare; ceea ce conduce la o codificare cu 4 variabile a strilor din Fig.11.1. 2. Fig.11.1. 3 prezint noua diagram a strilor.
M1 0000
M2 0010
M3 0110
M4 1000
M5 1100
M6 1101
M7 0101
LsC2
Ls
Ld
Ld
Ld
LsC1 C2
C2
Ls
M9 0100
M8 1010
M10 1110
M11 0001
Ls
Fig.11.1. 3
-
3
4.1 Sinteza automatelor secveniale asincrone Etapele sintezei sunt:
1. ntocmirea diagramei de stri 2. Codificarea strilor 3. ntocmirea matricilor de tranziie
La ntocmirea matricilor de tranziie se folosesc digramele VID acestea sunt de fapt nite diagrame Karnough n care se introduc variabilele de intrare n relaii. Pentru cazul exemplului nostru, variabilele de intrare sunt Ls, Ld, C1 i C2. Pe baza matricii strilor i tranziiilor se determin digramele VID ale strilor urmtoare: x1, x2, x3 i x4. Matricea strilor este n Fig.11.1. 4.
x1x2 \ x3x4 00 01 11 10 00 M1 M11 - M2 01 M9 M7 - M3 11 M5 M6 - M10 10 M4 - - M8
Fig.11.1. 4
4. Scrierea ecuaiilor de stare Pe baza matricii strilor i a diagramei de stri se ntocmesc matricile de tranziie ce sunt utilizate pentru scrierea ecuaiilor de stare. Astfel, ecuaiile de stare se scriu fcnd un SAU Intre termenii obinui grupnd celule care conin aceeai expresie logic cu celule care conin x (respectiv -), iar celule ce conin 1 cu celule care conin x (respectiv -).
X1: x1x2 \ x3x4 00 01 11 10
00 LsC2 0 - C2 01 0 0 - C2 11 1 Ld/ - 1 10 1 - - 1
LdxxxxCxxLs +++= 4141231C2x4x3x2x1X1 x2:
x1x2 \ x3x4 00 01 11 10 00 0 0 - Ld 01 0 Ls/ - 1 11 1 1 - 1 10 Ld - - 0
-
4
LdxxxxxLsxxxLdxxxx +++= 321214213212 x3:
x1x2 x3x4 00 01 11 10 00 LsC1 0 - 1 01 0 0 - Ls/ 11 0 0 - 0 10 0 - - 0
321321143213 xxxLsxxxCLsxxxxx ++= X4:
x1x2 x3x4 00 01 11 10 00 0 0 - 0 01 0 1 - 0 11 Ls 1 - 0 10 0 - - 0
Lsxxxxxxx += 4321424
5. Obinerea ecuaiilor de ieire. Ieirile automatului sunt semnalele Ms i Md (comand rotire dreapta i stnga a motorului cruciorului). Ecuaiile de ieire se scriu pe baza diagramelor VID ale semnalelor de ieire.
Md: x1x2 x3x4 00 01 11 10 00 0 0 - 1 01 0 0 - 0 11 0 1 - 0 10 1 - - 0
41321321 xxxxxxxxMd ++= Ms:
x1x2 x3x4 00 01 11 10 00 0 0 - 0 01 0 1 - 1 11 1 0 - 0 10 0 - - 0
4321321421 xxxxxxxxxxMs ++=
4.2 Sinteza circuitelor secveniale sincrone
-
5
La aceste circuite, tranziiile au loc la anumite momente de timp ce sunt marcate de impulsurile de sincronizare. Pe perioada dintre dou impulsuri de sincronizare toate strile sunt stabile i se menin constante. Nu mai apare problema curselor critice, iar hazardul static existent nu determin funcionare incorect.
4.2.1 Implementarea circuitelor secveniale sincrone cu bistabile i pori
Pentru codificarea strilor pot fi aplicate aceleai reguli ca n cazul circuitelor asincrone. Circuitele de memorie de tip sincron impun anumite restricii semnalelor aplicate la intrri: semnalele de intrare asincrone trebuie s condiioneze schimbarea valorii unei singure variabile de stare. Pentru exemplul nostru vom folosi codificarea prezentat n Fig.11.1. 3. Pentru realizarea circuitului de comand folosim 4 bistabile de tip J-K, iar variabilele de stare sunt x1, x2, x3 i x4. Tabelul de excitaie a intrrilor n funcie de valorile strii prezente i a celei urmtoare l avem n Fig.11.2. 1 (att pentru bistabile JK, ct i pentru bistabile D).
Fc. de excitaie Qn Qn+1 J K D
0 0 0 X 0 0 1 1 X 1 1 0 X 1 0 1 1 X 0 1
Fig.11.2. 1
Ecuaiile intrrilor J i K se obin pe baza urmtoarelor diagrame VID:
Jx1 i Kx1:
x1x2 x3x4 00 01 11 10 00 X X - X 01 X X - X 11 0 Ld - 0 10 0 - - 0
x1x2 x3x4 00 01 11 10 00 LsC2 0 - C2 01 0 0 - C2 11 X X - X 10 X - - X
243212311 CLsxxxxCxxJ X += ; LdxK X = 41
Jx2 i Kx2:
-
6
x1x2 x3x4 00 01 11 10 00 X X - X 01 1 Ls - 0 11 0 0 - 0 10 X - - X
x1x2 x3x4 00 01 11 10 00 0 0 - Ld 01 X X - X 11 X X - X 10 Ld - - 0
LdxxLdxxJ X += 31312 ; LsxxxxxxK X += 4214312
Jx3 i Kx3:
x1x2 x3x4 00 01 11 10 00 X X - 0 01 X X - Ls 11 X X - 1 10 X - - 1
x1x2 x3x4 00 01 11 10 00 LsC1 0 - X 01 0 0 - X 11 0 0 - X 10 0 - - X
14213 CLsxxxJ X = ; 13213 xLsxxxK X +=
Jx4 i Kx4:
x1x2 x3x4 00 01 11 10 00 X 1 - X 01 X 0 - X 11 X 0 - X 10 X - - X
x1x2 x3x4 00 01 11 10 00 0 X - 0 01 0 X - 0 11 Ls X - 0 10 0 - - 0
LsxxxJ X = 3214 ; 214 xxK X =
Semnalele de comand au ecuaiile sunt acelea de la sinteza anterioar:
41321321 xxxxxxxxMd ++=
4321321421 xxxxxxxxxxMs ++= Prin urmare, pe baza relaiilor mai sus determinate, se poate proiecta circuitul de comand al cruciorului folosind 4 bistabile J-K conectate prin logica ecuaiilor de mai sus.
4.2.2 Utilizarea decodificatoarelor la sinteza circuitelor secveniale sincrone
Utilizarea decodificatoarelor de stare simplific sinteza circuitelor secveniale sincrone. Avnd strile decodificate, ecuaiile de excitaie pentru intrrile bistabilelor se pot scrie direct din diagrama strilor.
-
7
Pentru exemplul considerat se va studia implementarea automatului folosind un decodificator zecimal ce prezint ieirile active pe 0L. Si-n acest caz rmn valabile problemele legate de codificarea adiacent a strilor adiacente i respectiv de sincronizarea intrrilor asincrone care provoac tranziii neadiacente. Considerm rezolvat problema sincronizrii intrrilor; prin urmare, prin punerea la mas a intrrii cu ponderea cea mai mare, vom transforma decodificatorul ntr-un decodificator 3 la 8.
Avem 3 variabile de stare avem 3 bistabile. Intrrile J ale acestora se activeaz la trecerea variabilei asociate din 0 n 1, iar intrrile K la trecerea variabilei din 1 n 0. Notm cu P0P7 produsele standard pe care le obinem la ieirea decodificatorului. In Fig.11.2. 2. avem diagrama de stri cu codificarea aleas pentru strile acesteia.
P0 Iniializare 000
P3 Depl.dr. 011
P4 Depl.stg. 100
P1 Depl.dr. 001
P5 Depl.stg. 101
P6 Depl.dr. 110
P7 Depl.stg. 111
LsC2
Ls
Ld
Ld
Ld
LsC1 C2
C2
Ls
Ls
Fig.11.2. 2
Obinem urmtoarele ecuaii:
LdPLdPJ X += 131 LsPLsPK X += 741
LsPCLsPJ X += 5102 LsPCPLdPK X ++= 72332
LdPCPCLsPJ X ++= 621103 LsPLsPLdPK X ++= 7533
613 PPPMd ++= 754 PPPMs ++=
La scrierea acestor ecuaii se observ c produsul logic dintre o stare i un semnal de intrare care determin trecerea automatului ntr-o alt stare se aplic la intrarea de tip J a unui bistabil dac aceasta este 0 n starea prezent i devine 1 n starea urmtoare; sau la intrarea de tip K dac ea este 1 n starea prezent i devine 0 n starea urmtoare. Se observ c prin codificarea adiacent a strilor ntre care au loc tranziii, o tranziie este nsoit de schimbarea strii unui singur bistabil.
-
8
Intruct strile sunt decodificate, expresiile variabilelor de ieire se exprim direct n funcie de stri. Schema electric a automatului este dat n Fig.11.2. 3.
20 0 21 1 22 2 23 3 4 5 6 7 8 9
D E C O D
LdPLdPJ X += 131LsPLsPK X += 741
613 PPPMd ++= 754 PPPMs ++=
.
.
.
J R Q T/ K
J R Q T/ K
J R Q T/ K
X1
X2
X3
P0/ P1/ P2/ P3/ P4/ P5/ P6/ P7/
&
&
Md
Ms
Tact
Init
C1
C2
& &
&
& &
&
JX1
KX1
Ld P3
P1
Ls
P4
P7
Fig.11.2. 3
4.2.3 Utilizarea multiplexoarelor i a numrtoarelor la sinteza circuitelor secveniale sincrone
Utilizarea numrtoarelor cu ncrcare paralel i a multiplexoarelor simplific i mai mult sinteza circuitelor secveniale. Multiplexoarele folosite n rezolvarea problemei vor fi de tipul SN74151, cu 8 intrri de date i 3 intrri de adrese. Numrtorul sincron cu ncrcare paralel SN74163 are:
4 ieiri de date: QA, QB, QC, QD o intrare de ncrcare paralel: LOAD o intrare de iniializare: CLR 4 intrri de date: DA, DB, DC, DD o intrare de tact: CLK o intrare de numrare: COUNT
El se simbolizeaz ca n Fig.11.2. 4:
QA QB QC QD
LOAD CLR 3 2 1 0 CLK
Fig.11.2. 4
-
9
Dac la terminalul de ncrcare se aplic nivel logic sczut (LOAD=0) pe frontul descresctor al impulsului de tact se va face ncrcarea paralel a datelor aplicate la intrrile de date DA, DB, DC, DD (sunt intrri ale bistabilelor) De notat faptul c intrrile de ncrcare paralel sunt separate, pe cnd intrrile de tergere sunt legate mpreun la intrarea comun de tergere CLR. Aducerea la zero a celor 4 bistabile se face prin aplicarea unui semnal 0 logic pe intrarea de tergere (CLR=0) Cnd se aplic semnal 1 logic la intrarea de numrare (COUNT=1) coninutul numrtorului se incrementeaz pe frontul descresctor al impulsului de tact Pentru ca numrtoarele binare cu ncrcare paralel s poat fi utilizate la memorarea strilor unui circuit secvenial se impune condiia ca diagrama strilor s nu conin dect cel mult ramificaii duble, condiie ce poate fi respectat prin introducerea unor stri suplimentare.
Si Si
Sj Sj Sk
Sk
Sl
S1
Skl
I1 I2 I3 I1
I2 I3
I2+I3
Fig.11.2. 5
Codificarea strilor se face astfel nct o stare urmtoare se obine prin incrementarea coninutului numrtorului, iar cealalt stare urmtoare se obine prin ncrcarea paralel a acestuia.
M0 Ini. 000
M1 Depl.dr. 001
M2 Depl.stg. 010
M6 Depl.dr. 110
M3 Depl.stg. 011
M4 Depl.dr. 100
M5 Depl.stg. 101
LsC2
Ls
Ld
Ld
Ld
LsC1 C2
C2
Ls
Ls
Fig.11.2. 6
La ntocmirea diagramei strilor nu sunt necesare stri suplimentare, deoarece diagrama nu conine ramificaii multiple (triple) sau de ordin mai mare (Fig.11.2. 6).
-
10
In schema ce se va realiza semnalele care se vor aplica la intrrile de numrare i de ncrcare paralel vor fi sincronizate; prin aceasta se sincronizeaz toate semnalele de intrare asincrone. Pe baza diagramei de stare cu strile codificate se vor scrie funciile logice ale semnalelor ce se aplic la intrrile numrtorului: condiia de numrare (COUNT), condiia de ncrcare paralel (LOAD), codul strilor la care se face saltul, condiia de iniializare (CLR). Din diagrama strilor se observ c secvena de numrare este: M0M1M2M3M4M5. Salturi exist ntre strile: M0M6, M1M6, M2M0, M6M3, M5M0. Scrierea funciilor logice se poate face direct din diagrama strilor. Astfel, numrtorul trebuie incrementat atunci cnd trebuie s se efectueze o tranziie din secvena principal de numrare. Acest tip de tranziie se efectueaz n starea M0 dac se aplic semnalul logic: LsC1; n starea M1, dac se aplic semnalul logic Ld; n starea M2 dac se aplic C2 1. Funcia de numrare:
LdPLsPCPLdPCLsPCOUNT ++++= 4322110
Numrtorul trebuie ncrcat paralel atunci cnd trebuie s efectueze tranziii care nu sunt codificate n secvena binar de numrare. Aceste tranziii se efectueaz din starea M0 dac produsul logic 12 = CLs , din starea M1 dac 12 =C , din starea M2 dac 1=Ls . 2. Condiia de ncrcare paralel este:
LdPLsPLsPCPCLsPLOAD ++++= 6522120 3. Intrrile de date trebuie s conin codul strii la care se face saltul; adic n starea P0,
intrrile DA, DB, DC trebuie s asigure tranziia n starea P6 (s aib aplicat combinaia 110). Similar, din starea P1, trebuie asigurat saltul n starea P6, s.a.m.d.
6610
10
PDCPPPDB
PPDA
=
++=
+=
Aceasta ntruct: DA DB DC 1 1 0 P0 1 1 0 P1 0 0 0 P2 0 0 1 P6 0 0 0 P5
4. STPCLR = (punere sub tensiune) In Fig.11.2. 7. este schema logic a circuitului implementat cu multiplexoare i numrtor.
4.2.4 Utilizarea memoriilor fixe programabile PROM la sinteza circuitelor secveniale sincrone
-
11
Utilizarea memoriilor fixe mpreun cu alte circuite cum ar fi registre, numrtoare, multiplexoare, permite realizarea circuitelor secveniale sincrone caracterizate printr-o flexibilitate sporit. Vom proiecta dou structuri de circuite secveniale realizate cu memorii fixe programabile PROM. De notat c indiferent de structura adoptat, memoriile PROM ndeplinesc n general urmtoarea funcie: aplicndu-se la intrrile de adresare ale memoriei codul strii prezente, la ieire apare codul strii urmtoare la care se poate face saltul i eventual funciile de ieire. In Fig.11.2. 8 este prezentat un circuit secvenial realizat cu multiplexoare, numrtoare i memorie PROM; acest circuit lucreaz dup diagrama strilor fcut anterior i se obine prin nlocuirea circuitului decodificator i a porilor logice folosite pentru obinerea semnalelor: DA, DB, DC, Ms i Md cu o memorie PROM. Semnalele care se aplic la intrrile de date ale multiplexoarelor sunt identice n cele dou cazuri.
P0/ P1/ P6/
CDB 442
23 22 21 20
QA QB QC
CLR LO AD 23 22 21 20 CLK COUNT
C B A 0 1 2 MUX 3 1 4 5 6 7
LsC2C2Ls
00
LsLd
0
D Q
T
A B C 01
MUX 22 3
4567
LsC2 Ld C2 Ls Ld 0 0 0
Q D
T &
&
P6
P0/ P1/
P0/ P1/ P2/ P3/ P4/ P5/ P6/
P1/ P4/ P6/
& M d
P2/ P3/ P5/
& M s
Fig.11.2. 7
De notat c ntruct diagrama strilor are numai 7 stri, codificate cu 3 variabile de stare, memoria cea mai mic de care ar fi nevoie ar trebui s aib 8 cuvinte de 3 bii. ntruct nu se produc memorii cu capacitate aa mic se va folosi memoria SN74188 organizat n 32 cuvinte a cte 8 cifre binare; o asemenea memorie poate fi folosit pentru generarea att a strii urmtoare ct i a funciilor de ieire: Ms i Md. In schem intrrile cu ponderea cea mai mare (23, 24) sunt legate la mas; prin urmare se pot adresa doar primele 8 cuvinte.
-
12
In exemplul dat memoria este incomplet folosit, ceea ce este de fapt un fenomen general datorat numrului limitat de tipuri de memorie produse n serie. Tabelul de programare al memoriei se completeaz pe baza datelor din diagrama strilor; pentru fiecare stare, la adresa selectat de codul acesteia, se memoreaz codul strii urmtoare, care se obine prin salt, deci nu prin incrementare.
SN74188 D A D B DC
24 23 22 21 20
QA QB QC
CLR LO AD 23 22 21 20 CLK COU NT
C B A 0 1 2 M UX 3 1 4 5 6 7
LsC2C2Ls
00
LsLd
0
D Q
T
A B C 01
M U X 22 3
4567
LsC 2 Ld C2 Ls Ld 0 0 0
Q D
T
M s M d
Fig.11.2. 8
In tabelul de mai jos se prezint programarea memoriei (cu * s-au notat biii neutilizai). Intrri Ieiri 24 23 22 21 20 7 6 5 4 3 2 1 0 0 0 0 0 0 * * * 0 0 1 1 0 0 0 0 0 1 * * * 1 0 1 1 0 0 0 0 1 0 * * * 0 1 0 0 0 0 0 0 1 1 * * * 0 1 * * * 0 0 1 0 0 * * * 1 0 * * * 0 0 1 0 1 * * * 0 1 0 0 0 0 0 1 1 0 * * * 1 0 0 1 1 0 0 1 1 1 * * * 0 0 0 0 0 A B C Nu se folosesc Md Ms QA QB QC In Fig.11.2. 9 este prezentat o alt structur de circuit secvenial sincron implementat cu memorie PROM. Pentru structura prezentat la codificarea strilor nu se mai impune restricia ca acestea s prezinte o secven de numrare. Deci exist o mai mare libertate la codificarea strilor. Dezavantajul acestei structuri este c necesit mai mult memorie. Pentru exemplificare s-a considerat aceeai diagram a strilor; intrrile la multiplexoare rmn neschimbate. De notat c n acest caz se vor utiliza 24 cuvinte de memorie (de 3 ori mai multe cuvinte dect n structura anterioar).
-
13
MUX 1
MUX 2
MEMORIE PROM
REGISTRU DE STARE
Intrri Ieiri
1 0
Fig.11.2. 9
Adrese Ms Md A B C 0 0 0 0 0 * * * 0 0 0 0 0 0 0 0 0 1 * * * 0 1 0 0 1 0 0 0 1 0 * * * 1 0 0 1 0 0 0 0 1 1 * * * 1 0 0 1 1 0 0 1 0 0 * * * 0 1 1 0 0 0 0 1 0 1 * * * 1 0 1 0 1 0 0 1 1 0 * * * 0 1 1 1 0 0 0 1 1 1 * * * 0 0 0 0 0 0 1 0 0 0 * * * 0 1 0 0 1 0 1 0 0 1 * * * 1 0 0 1 0 0 1 0 1 0 * * * 1 0 0 1 1 0 1 0 1 1 * * * 0 1 1 0 0 0 1 1 0 0 * * * 1 0 1 0 1 0 1 1 0 1 * * * * * * * * 0 1 1 1 0 * * * * * * * * 0 1 1 1 1 * * * * * * * * 1 0 0 0 0 * * * 0 1 1 1 0 1 0 0 0 1 * * * 0 1 1 1 0 1 0 0 1 0 * * * 0 0 0 0 0 1 0 0 1 1 * * * * * * * * 1 0 1 0 0 * * * * * * * * 1 0 1 0 1 * * * 0 0 0 0 0 1 0 1 1 0 * * * 1 0 0 1 1 1 0 1 1 1 * * * * * * * * LOAD COUNT
La completarea tabelului se ine cont de urmtoarele dou reguli: 1. Fiecare multiplexor trateaz o condiie de tranziie 2. Dac multiplexoarele dau 00 la ieire, atunci starea viitoare este identic cu starea
prezent 3. Situaia cu activarea ieirilor pentru ambele multiplexoare este nepermis