La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Progetto Asincrono Schematico. Specifiche Si vuole realizzare una rete sequenziale asincrona che gestisca lapertura/chiusura delle veneziane motorizzate.

Presentazioni simili


Presentazione sul tema: "Progetto Asincrono Schematico. Specifiche Si vuole realizzare una rete sequenziale asincrona che gestisca lapertura/chiusura delle veneziane motorizzate."— Transcript della presentazione:

1 Progetto Asincrono Schematico

2 Specifiche Si vuole realizzare una rete sequenziale asincrona che gestisca lapertura/chiusura delle veneziane motorizzate. La rete riceve in ingresso 4 segnali di input binari: U, D, P 1, P 2 che non cambiano mai contemporaneamente. I segnali di input U e D provengono da due tasti di un telecomando. La configurazione UD = 11 non si verifica mai. Per la configurazione UD = 10 le veneziane devono aprirsi per un terzo solo se non erano già completamente aperte, per UD = 01 devono chiudersi per un terzo solo se non erano già completamente chiuse e per UD = 00 la loro posizione deve rimanere invariata. La rete deve agire nel momento in cui uno dei due tasti viene rilasciato dopo essere stato premuto. I segnali P 1 e P 2 provengono da un sensore che monitorizza la posizione delle veneziane. La configurazione P 1 P 2 = 00 indica che le veneziane sono completamente aperte, P 1 P 2 = 01 indica che sono chiuse per un terzo, P 1 P 2 = 11 indica che sono chiuse per due terzi e P 1 P 2 = 10 indica che sono completamente chiuse. La rete ha due segnali di output binario Z 1 e Z 2 che controllano un motore elettrico che si fa carico del movimento delle veneziane. Per la configurazione Z 1 Z 2 = 00 il motore rimane fermo, per Z 1 Z 2 = 01 il motore chiude le veneziane, per Z 1 Z 2 = 10 le apre. La configurazione Z 1 Z 2 = 11 è inutilizzata. A seconda degli input, la rete dovrà fornire loutput adeguato.

3 Diagramma degli stati P 10 Q 00 N 10 F 01 C 01 D 00 R 10 B 00 A 00 G 00 E 00 H 00 M 00 O 00 L 00 I 01 -000 0100--00 0001 --110111 0101 --01 0011 1010--10 0-10 --11 1011 1001--01 0100 1011 --11 0101 0001 --01 0000 --10 0111 0011 0001 --11 1010 0010 1001 --00 --01 0011 UDP 1 P 2 (Z 1 Z 2 ) E stato adottato il modello di Moore CHIUSURA APERTURA

4 Tabella degli stati 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 AA---B---A-------00 BC---B----------- CCD--CD--CD--CD--01 D-D---E---Q------00 E-F---E---------- F-FG--FG--FG--FG-01 G--G---H---O-----00 H--I---H--------- I--IL--IL--IL--IL01 L---L---L---M----00 M---N-------M---- N--GN--GN--GN--GN10 O--P-------O-----00 P-DP--DP--DP--DP-10 Q-R-------Q------00 RAR--AR--AR--AR--10 UDP 1 P 2

5 Riduzione degli stati BAC C D-- E DF F G-- H GI I--GI L-- M LN N O-- GPIP-- PGP Q-- DRFR-- R DR ABCDEFGHILMNOPQ Dalla tabella degli stati è possibile ricercare gli stati fra loro compatibili. Due stati sono fra loro compatibili se, ove specificato, per gli stessi ingressi presentano le stesse uscite e portano agli stessi stati o a stati a loro volta compatibili fra loro. Analizzando le uscite, si trovano subito molte incompatibilità (croci vuote). Analizzando le altre condizioni di compatibilità, si trovano gli stati compatibili. Si trovano infine le seguenti classi di compatibilità (non tutte massime) [A,E,H,M] [B,Q,G,L] [F] [P] [C,I] [D,O] [N,R]

6 Assegnazione Per le classi di compatibilità trovate è chiaramente verificata la condizione di copertura (ogni stato di partenza deve essere presente in almeno uno stato finale). Per tali classi è verificata anche la chiusura (gli stati futuri di una classe devono essere appartenenti tutti alla stessa classe di compatibilità, se non indifferenti). Lultimo passo prima della tabella delle transizioni è lassegnazione delle classi. In questo caso, sono state effettuate le seguenti assegnazioni: [A,E,H,M] α 000 [B,Q,G,L] β 001 [D,O] γ 011 [C,I] δ 010 [F] ε 100 [N,R] λ 101 [P] φ 111

7 Assegnazione 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 ααεδλβαα-α--α----00 βδλβββ-αβ-βγα---- γ-γφ--α---βγ----- δδγδβδγδβδγδβδγδβ01 ε-εβ--εβ--εβ--εβ- λαλβλαλβλαλβλαλβλ10 φ-γφ--γφ--γφ--γφ- UDP 1 P 2

8 Tabella delle transizioni 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 000 100010101001000 ---000--- 000--- 00 001010101001 ---000001---001011000--- 00 011---011111--- 000--- 001011--- 00 010 011010001010011010001010011010001010011010001 01 100---100001--- 100001--- 100001--- 100001--- 01 101000101001101000101001101000101001101000101001101 10 111---011111--- 011111--- 011111--- 011111--- 10 110--- -- UDP 1 P 2 In giallo sono indicate le transizioni che comportano il cambiamento di più di una variabile di stato contemporaneamente, condizione per la quale la rete potrebbe trovarsi in uno stato stabile errato. Siamo quindi di fronte a delle corse critiche. Y0Y1Y2Y0Y1Y2

9 Risoluzione corse critiche 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 000 100010100001000 ---000--- 000--- 00 001011101001 000 001---001011000--- 00 011010011111001---001---001---001011001--- 001 00 010 011010011010011010011010011010011010011010011011 01 100000100101 000100101---000100101---000100101--- 01 101100101001101100101001101100101001101100101001101 10 111---011111--- 011111--- 011111--- 011111--- 10 110--- -- UDP 1 P 2 Y0Y1Y2Y0Y1Y2 Le corse critiche sono state risolte mediante transizioni multiple attraverso stati intermedi, sfruttando le indifferenze dove possibile. In giallo gli stati intermedi, in azzurro gli stati finali.

10 Sintesi Y 0 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 000 100010100001000 ---000--- 000--- 00 001011101001 000 001---001011000--- 00 011010011111001---001---001---001011001--- 001 00 010 011010011010011010011010011010011010011010011011 01 100000100101 000100101---000100101---000100101--- 01 101100101001101100101001101100101001101100101001101 10 111---011111--- 011111--- 011111--- 011111--- 10 110--- -- UDP 1 P 2 Y0Y1Y2Y0Y1Y2 Y 0 = !P 1 P 2 !Y 1 !U!D + P 1 !P 2 !Y 1 !Y 2 !U + P 1 P 2 Y 1 Y 2 !U + !P 1 !Y 1 Y 2 Y 0 + P 1 Y 1 Y 2 Y 0 + P 1 !P 2 Y 0 + P 2 !Y 2 Y 0

11 Sintesi Y 1 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 000 100010100001000 ---000--- 000--- 00 001011101001 000 001---001011000--- 00 011010011111001---001---001---001011001--- 001 00 010 011010011010011010011010011010011010011010011011 01 100000100101 000100101---000100101---000100101--- 01 101100101001101100101001101100101001101100101001101 10 111---011111--- 011111--- 011111--- 011111--- 10 110--- -- UDP 1 P 2 Y0Y1Y2Y0Y1Y2 Y 1 = P 1 P 2 !Y 2 !Y 0 !D + !P 1 !P 2 Y 2 !Y 0 !D + P 2 Y 1 !U!D + Y 1 !Y 2 + P 1 P 2 !Y 0 U + Y 1 Y 0

12 Sintesi Y 2 0000000100110010010001010111011010001001101110101100110111111110 Z1Z2Z1Z2 000 100010100001000 ---000--- 000--- 00 001011101001 000 001---001011000--- 00 011010011111001---001---001---001011001--- 001 00 010 011010011010011010011010011010011010011010011011 01 100000100101 000100101---000100101---000100101--- 01 101100101001101100101001101100101001101100101001101 10 111---011111--- 011111--- 011111--- 011111--- 10 110--- -- UDP 1 P 2 Y0Y1Y2Y0Y1Y2 Y 2 = Y 2 !DP 2 + !Y 0 !Y 1 Y 2 !U!P 2 + !P 1 P 2 Y 1 + P 1 !P 2 Y 1 + P 2 Y 2 Y 0 + P 1 !Y 1 Y 0 + !P 2 !Y 1 !Y 0 D

13 Sintesi Z 1 e Z 2 00011110 000 01 1 10 -- Y1Y2Y1Y2 Y0Y0 00011110 000 01 1 10 -- Y1Y2Y1Y2 Y0Y0 Z 1 = Y 0 Y 2 Z 2 = Y 1 !Y 2 + Y 0 !Y 2 = (Y 0 + Y 1 )!Y 2

14 Schematico (1)

15 Schematico (2) Pin di input Reset

16 Schematico (3) Le uscite delle espressioni sono messe in AND con il negato del reset

17 Schematico (4) Y0 Y1 Y2 Uscite

18 Testbench VHDL (1) Librerie ed entity Architecture: component, segnali e port map

19 Testbench VHDL (2) Chiusura veneziane

20 Testbench VHDL (3) Apertura veneziane

21 Simulazione behavioral Apertura venezianeChiusura veneziane Si può notare come la rete dia linput al motore solo nel momento in cui il pulsante viene rilasciato. I segnali P 1 e P 2 notificano alla rete che le veneziane sono arrivate in posizione. Il motore viene quindi fermato.

22 Simulazione post-route (1) Apertura veneziane Chiusura veneziane Comportamento analogo alla behavioral, con introduzione dei ritardi. Si possono notare dei piccoli glitch sulle uscite della rete dovuti alla risoluzione delle corse critiche, per la quale si è passati da stati intermedi con uscite diverse.

23 Simulazione post-route (2) La rete risponde agli stimoli esterni con 9,674 ns di ritardo. Le uscite hanno un ritardo di 546 ps dalla variazione degli stati (rete di Moore).


Scaricare ppt "Progetto Asincrono Schematico. Specifiche Si vuole realizzare una rete sequenziale asincrona che gestisca lapertura/chiusura delle veneziane motorizzate."

Presentazioni simili


Annunci Google