Laboratorium2-ISPSynarioSystem.pdf
(
80 KB
)
Pobierz
ISP Synario System – laboratorium Synario.2
ISP Synario System – Laboratorium 2
Sterowanie 4 urz
dzeniami przy zadanej liczbie pracuj
cych urz
dze
i urz
dze
w stanie awarii
Układ ma za zadanie sterowa
4 urz
dzeniami (sygnały Go0..Go3) zgodnie z nast
puj
cymi regułami:
Ilo
zał
czonych urz
dze
jest podawana na dwóch bitach (Cnt1 - MSB, Cnt0 - LSB). Sygnały Off0..Off3
podaj
, czy oraz które urz
dzenie jest w stanie wył
czenia z u
ytku (na skutek awarii lub remontu). Zało
eniem
jest,
e co najwy
ej jedno urz
dzenie mo
e by
wył
czone z u
ytku. Zał
czenia lub wył
czenia urz
dze
mog
odbywa
si
po jednym urz
dzeniu (czyli np. maj
c zał
czonych 2 urz
dzenia mo
liwe jest
wył
czenie jednego
i przej
cie do stanu zał
czenia jednego urz
dzenia, lub
zał
czenie jednego
i przej
cie do stanu zał
czenia trzech
urz
dze
).
Funkcj
kontroli zał
czania lub wył
czania jednego urz
dzenia na raz zrealizowa
przy pomocy
diagramu stanów (maszyny stanów), natomiast zał
czanie/wył
czanie odpowiedniej ilo
ci urz
dze
przy danych
urz
dzeniach wył
czonych z u
ytku zrealizowa
na tablicy prawdy (truth_table).
Jako nadrz
dn
cz
projektu u
y
schematu w nast
puj
cej postaci:
- 1 -
ISP Synario System – laboratorium Synario.2
Definicja bloku diagramu stanów jest przedstawiona poni
ej. Zawiera ona definicje sygnałów
wej
ciowych (
In0
,
In1
,
Areset
,
CLK
) oraz definicje rejestru stanu, w którym przechowywany,
zapami
tywany jest aktualny stan diagramu stanów, jak równie
deklaracj
nazw stanów (
S0..S3
) oraz
makrodefinicje Inputs oraz Outputs, ułatwiaj
ce korzystanie z sygnałów
In0, In1, Out0, Out1
.
Poniewa
diagram stanu zaimplementowany jest przy pomocy elementów pami
taj
cych (przerzutniki),
w zwi
zku z tym niezb
dne s
dwa dodatkowe sygnały: zegarowy oraz resetuj
cy. Sygnał resetuj
cy mo
e
wyst
powa
w dwóch wersjach: synchronicznej i asynchronicznej.
Sekcja equations zawiera jedno równanie przypisuj
ce wej
ciu zegarowemu zintegrowanego rejestru SReg
wej
cie definiowanego bloku:
CLK
.
Nast
pna dyrektywa
@dcset
okre
la sposób optymalizacji u
yty w tym bloku (odnosi si
ona nie tylko
do diagramu stanów!!!), mianowicie optymalizacj
uwzgl
dniaj
c
zbiór warto
ci nieokre
lonych (
dcset
=
don’t care set). Optymalizator pakietu Synario napotykaj
c tak
dyrektyw
od miejsca jej wyst
pienia b
dzie za
warto
ci nieokre
lone podstawiał Prawd
lub Fałsz.
Ostatnia cz
diagramu stanów deklaruje sygnał
AReset
jako reset asynchroniczny, wprowadzaj
cy
diagram stanów w stan S0 (poniewa
po wł
czeniu układu, przerzutniki znajduj
si
w niezdefiniowanych
stanach, a wi
c i diagram stanów znajduje si
w niezdefiniowanym stanie, nale
y go wyresetowa
.
stated.abl:
MODULE StateD
In0,In1,AReset,CLK pin;
Out0,Out1 pin istype 'com';
SReg state_register;
S0..S3 state;
Inputs = [In1,In0];
Outputs = [Out1,Out0];
equations
SReg.clk = CLK;
@dcset
state_diagram SReg
state S0:
Outputs=[0,0];
if( Inputs==[0,1] ) then goto S1;
else S0;
state S1:
Outputs=[0,1];
if( Inputs==[0,0] ) then goto S0;
else if( Inputs==[1,0] ) then goto S2;
else S1;
state S2:
Outputs=[1,0];
if( Inputs==[0,1] ) then goto S1;
else if( Inputs==[1,1] ) then goto S3;
else S2;
state S3:
Outputs=[1,1];
if( Inputs==[1,0] ) then goto S2;
else S3;
async_reset S0: AReset;
END
- 2 -
ISP Synario System – laboratorium Synario.2
Zawarto
bloku TTable jest samowyja
niaj
ca. Po napotkaniu stanów po lewej stronie, wyj
cia nale
y ustawi
w stany zdefiniowane po prawej.
ttable.abl:
MODULE TTable
Cnt_b0..Cnt_b1, Off0..Off3 pin;
Go0..Go3 pin istype 'com';
truth_table( [Cnt_b1..Cnt_b0, Off0..Off3]->[Go0..Go3] )
[ 0,0, 0,0,0,0 ]->[ 0,0,0,0 ];
[ 0,0, 1,0,0,0 ]->[ 0,0,0,0 ];
[ 0,0, 0,1,0,0 ]->[ 0,0,0,0 ];
[ 0,0, 0,0,1,0 ]->[ 0,0,0,0 ];
[ 0,0, 0,0,0,1 ]->[ 0,0,0,0 ];
[ 0,1, 0,0,0,0 ]->[ 1,0,0,0 ];
...
[ 1,1, 0,0,0,1 ]->[ 1,1,1,0 ];
END
- 3 -
ISP Synario System – laboratorium Synario.2
Poni
ej przedstawiono
przykładowe
wektory testowe dowodz
ce poprawno
ci rozwi
zania.
mixed.abv:
module Mixed
Cnt0..Cnt1, AReset, CLK, Off0..Off3 pin;
Go0..Go3 pin istype 'com';
c=.c.;
x=.x.;
test_vectors( [AReset, CLK, Cnt1..Cnt0, Off0..Off3]->[Go0..Go3])
[ 1, 0, 0,0, 0,0,0,0 ] -> [ x, x, x, x ];
[ 0, c, 0,0, 0,0,0,0 ] -> [ x, x, x, x ];
[ 0, c, 0,0, 0,1,0,0 ] -> [ x, x, x, x ];
[ 0, c, 0,1, 0,1,0,0 ] -> [ x, x, x, x ];
[ 0, c, 1,1, 0,1,0,0 ] -> [ x, x, x, x ];
[ 0, c, 1,0, 0,1,0,0 ] -> [ x, x, x, x ];
[ 0, c, 1,1, 0,1,0,0 ] -> [ x, x, x, x ];
[ 0, c, 1,1, 0,0,1,0 ] -> [ x, x, x, x ];
[ 0, c, 1,1, 0,0,0,1 ] -> [ x, x, x, x ];
[ 0, c, 0,1, 0,0,0,1 ] -> [ x, x, x, x ];
[ 0, c, 1,0, 0,0,0,1 ] -> [ x, x, x, x ];
[ 0, c, 0,1, 0,0,1,0 ] -> [ x, x, x, x ];
[ 0, c, 0,0, 0,0,1,0 ] -> [ x, x, x, x ];
end
- 4 -
Plik z chomika:
GRZES777
Inne pliki z tego folderu:
AndrzejKos-PodstawyInformatykiWykłady.PDF
(3061 KB)
CebulskiK-PodpisyCyfrowe.pdf
(971 KB)
CzajaZ-WykorzystanieZintegrowanegoŚrodowiskaAVRStudioDoProgramowaniaIUruchamianiaMikrokontroleraATmega8515FirmyAtmel.pdf
(1022 KB)
DeMicheliG -SynthesisAndOptimizationOfDigitalCircuits.pdf
(23725 KB)
DigitalLogicPocketDataBook.pdf
(4835 KB)
Inne foldery tego chomika:
AUTOMATYKA
Elektronika
ElektronikaPraktyczna2009
Energetyka
KSIĄŻKI POSEGREGOWANE
Zgłoś jeśli
naruszono regulamin