Esercizio

18
Durante la produzione di pezzi meccanici di forma quadrata identici a quelli indicati in figura è prevista una fase di verniciatura. A tal fine, lungo il nastro trasportatore, sono presenti quattro sensori H1, H2, V1 e V2 che rilevano (segnale logico 1) se un oggetto è presente nella propria area di rilevamento (indicata con linee tratteggiate per H1 e H2, quadrate per V1 e V2). A causa di possibili variazioni nel posizionamento del pezzo meccanico durante l’intera fase di transito nella regione indicata in figura, si desidera attivare, mediante l’uscita A di una RSA, gli ugelli che immettono vernice nell’area indicata in grigio esclusivamente se il pezzo meccanico è completamente all’interno dell’area in grigio. Esercizio

description

Esercizio. - PowerPoint PPT Presentation

Transcript of Esercizio

Page 1: Esercizio

Durante la produzione di pezzi meccanici di forma quadrata identici a quelli indicati in figura è prevista una fase di verniciatura. A tal fine, lungo il nastro trasportatore, sono presenti quattro sensori H1, H2, V1 e V2 che rilevano (segnale logico 1) se un oggetto è presente nella propria area di rilevamento (indicata con linee tratteggiate per H1 e H2, quadrate per V1 e V2).

A causa di possibili variazioni nel posizionamento del pezzo meccanico durante l’intera fase di transito nella regione indicata in figura, si desidera attivare, mediante l’uscita A di una RSA, gli ugelli che immettono vernice nell’area indicata in grigio esclusivamente se il pezzo meccanico è completamente all’interno dell’area in grigio.

Esercizio

Page 2: Esercizio

Come si può notare l’esercizio presenta una simmetria, tra i sensori e l’andamentodella rete, che può essere sfruttata durante la fase di stesura del diagramma degli stati di Moore.Nello specifico è possibile raggruppare, a due a due, i sensori della rete in modo tale da semplificare in seguito la sintesi della tabella delle transizioni.

N.B. questa semplificazione potrebbe portare ad eventuali malfunzionamenti in caso non vengano rispettate determinate condizioni che verranno valutate nelle slide seguenti.

Page 3: Esercizio

Dal diagramma degli stati si ricava la tabella degli stati su cui verrà effettuata la ricerca degli stati compatibili mediante la tabella triangolare delle implicazioni.

00 01 11 10

A - - B

C - E B

C F - D

A - G D

- F E B

C F G -

A

B

C

D

E

F

- - G DG

x1x2

AC

BD

- -

EG

BD EGBD -

B

C

D

E

F

A B C D

G

EG

-

E F

0

0

1

0

0

0

0

Page 4: Esercizio

Dalla tabella triangolare delle implicazioni si ottengono i seguenti stati compatibili:( [AE] , [BE] , [C] , [DG] , [FG] )

tra cui se ne scelgono in modo da rispettare la condizione di copertura e la condizione di chiusura.

[A] -> α[BE] -> β[C] -> γ[D] -> δ[FG] -> ε

00 01 11 10

α - - β

γ ε β β

γ ε - δ

α - ε δ

γ ε ε δ

α

β

γ

δ

ε

x1x2

0

0

1

0

0

N.B. le classi sono state scelte in modo da garantire, almeno, il funzionamento della rete in caso di posizionamento giusto dell’oggetto sul nastro trasportatore.(un’alternativa perfettamente funzionante è mostrata in seguito)

Page 5: Esercizio

Sostituendo una codifica binaria univoca agli stati si ottiene la tabella degli stati.

00 01 11 10

000 - - 001

011 100 001 001

011 100 - 010

000 - 100 010

000

001

011

011

x1x2

0

0

1

0

00 01 11 10

011 100 100 010

- - - -

- - - -

- - - -

100

101

111

110

x1x2

0

-

-

-

Evidenziate in rosso si possono notare le corse critiche date da un cambiamento contemporaneo di due o più variabili di stato per una configurazione di ingresso.Riuscire ad eliminare tali corse risulta importante dal momento che la contemporaneità in una rete reale è impossibile a causa dei ritardi intrinseci alla rete stessa.

y3y2

y1y3

y2y1

Page 6: Esercizio

In questo caso è possibile eliminare le corse critiche sfruttando opportunamente le condizioni di indifferenza: in giallo i cambiamenti apportati alle tabelle.

00 01 11 10

000 100 - 001

011 000 001 001

011 010 - 010

000 100 110 010

000

001

011

011

x1x2

0

0

1

0

00 01 11 10

101 100 100 110

111 - - -

011 - - -

- - 100 010

100

101

111

110

x1x2

0

-

-

-

Ora che non è più presente alcuna corsa critica che possa compromettere il funzionamento e la stabilità della rete, è possibile procedere con la sintesi delle retroazioni e della funzione d’uscita.

y3y2

y1y3

y2y1

Page 7: Esercizio

Anche durante la fase di sintesi tornano utili le condizioni di indifferenza, al fine di semplificare e diminuire il numero di implicanti di ogni funzione.

00 01 11 10

000 100 - 001

011 000 001 001

011 010 - 010

000 100 110 010

000

001

011

011

x1x2

0

0

1

0

00 01 11 10

101 100 100 110

111 - - -

011 - - -

- - 100 010

100

101

111

110

x1x2

0

-

-

-

y3y2

y1y3

y2y1

Y3 = x2!y1 + y3!y2Y2 = y2y1 + !x1!x2y1 + x1!y3y2 + x1!x2y3Y1 = !x1!x2y1 + x1x2y1 + x1!x2!y3!y2 + !x1!x2y3Z = y2y1

Page 8: Esercizio

Schematico Xilinx

Page 9: Esercizio

Nelle slide successive verranno eseguite alcune simulazioni, al fine di testare in funzionamento della rete con diverse sequenze di combinazioni.

Simulazioni

Sequenza: 00 – 10 – 11 – 01 – 00 – 10 – 00 A - B - E - F - C - D - A

Come si può notare, la simulazione ha esito positivo: l’uscita assume valore ‘1’ solamente quando la rete si trova nello stato C.

Page 10: Esercizio

Sequenza: 00 – 10 – 00 – 01 – 11 – 10 – 00 – 10 – 11 – 01 – 11 – 10 – 00 A - B - C - F - G - D - A - B - E - F - G - D - A

Questa seconda simulazione evidenzia il problema pronosticato in precedenza. Benché la prima parte della sequenza d’ingresso si comporti come previsto, si hanno poi due malfunzionamenti: l’uscita presenta valore ‘1’ in corrispondenza degli stati A, dopo che si sono verificate determinate sequenze.All’atto pratico ciò si rifletterebbe in anomale emissioni di vernice da parte degli ugelli anche quando nessun pezzo si trova all’interno dell’area designata.

Page 11: Esercizio

Problema

La rete è stata progettata rispettando tutte le regole previste per la sintesi di una RSA, eppure il funzionamento non rispecchia la consegna, perché?Il motivo non risiede in una procedura sbagliata , bensì nel grafico tracciato inizialmente: per «semplificare» la sintesi è stato eseguito un raggruppamento degli ingressi che non permette ulteriori collassi; di conseguenza le classi di compatibilità trovate, anche rispettando le condizioni di chiusura e copertura, alterano il corretto andamento della rete che non è più in grado di distinguere alcuni stati.

Soluzione

La soluzione al problema che verrà proposta risiede in una sintesi in cui il raggruppamento viene omesso: come sarà verificato, la complessità della rete ne risentirà minimamente rispetto alla soluzione precedente, mentre il funzionamento richiesto dalla consegna sarà completamente rispettato.

Page 12: Esercizio

Riprendendo il diagramma degli stati trovato precedentemente e applicando direttamente una codifica binaria agli stati, si ottiene una nuova tabella degli stati.

00 01 11 10

A - - B

C - E B

C F - D

A - G D

- F E B

C F G -

A

B

C

D

E

F

- - G DG

x1x2

0

0

1

0

0

0

0

00 01 11 10

000 - - 001

011 - 100 001

011 101 - 010

000 - 111 010

000

001

011

011

x1x2

0

0

1

0

y3y2

y1

00 01 11 10

- 101 100 001

011 101 111 -

- - 111 010

- - - -

100

101

111

110

x1x2

0

-

-

-

y3y2

y1

Page 13: Esercizio

Anche in questo caso risultano esserci corse critiche che vanno eliminate.

00 01 11 10

000 - - 001

011 - 100 001

011 101 - 010

000 - 111 010

000

001

011

011

x1x2

0

0

1

0

y3y2

y1

00 01 11 10

- 101 100 001

011 101 111 -

- - 111 010

- - - -

100

101

111

110

x1x2

0

0

0

-

y3y2

y1

00 01 11 10

000 - 100 001

011 - 000 001

011 111 - 010

000 - 110 010

000

001

011

011

x1x2

0

0

1

0

y3y2

y1

00 01 11 10

- 101 100 000

001 101 111 -

- 101 111 011

- - 111 -

100

101

111

110

x1x2

0

0

0

-

y3y2

y1

Page 14: Esercizio

Infine sintetizziamo uscite e retroazioni sempre avvalendoci delle condizioni di indifferenza (dove possibile).

00 01 11 10

000 - 100 001

011 - 000 001

011 111 - 010

000 - 110 010

000

001

011

011

x1x2

0

0

1

0

y3y2

y100 01 11 10

- 101 100 000

001 101 111 -

- 101 111 011

- - 111 -

100

101

111

110

x1x2

0

0

0

-

y3y2

y1

Y3 = !x1x2 + x1x2!y1 + x2y3Y2 = !x1!y3y1 + x1y2 + x1y3y1Y1 = !x1y1 + x1!x2!y3!y2 + !x1y3 + y3y2 + y3!y2!y1Z = !y3y2y1

Page 15: Esercizio

Schematico Xilinx

Page 16: Esercizio

Simulazioni Behavioral

Sequenza: 00 – 10 – 11 – 01 – 00 – 10 – 00 A - B - E - F - C - D - A

Sequenza: 00 – 10 – 00 – 01 – 11 – 10 – 00 – 10 – 11 – 01 – 11 – 10 – 00 A - B - C - F - G - D - A - B - E - F - G - D - A

Page 17: Esercizio

Simulazioni Post-Route

Sequenza: 00 – 10 – 11 – 01 – 00 – 10 – 00 A - B - E - F - C - D - A

Sequenza: 00 – 10 – 00 – 01 – 11 – 10 – 00 – 10 – 11 – 01 – 11 – 10 – 00 A - B - C - F - G - D - A - B - E - F - G - D - A

Page 18: Esercizio

Osservazioni

Con quest’ultima sintesi si sono risolti i problemi riscontrati nel primo caso:l’uscita ora assume valore ‘1’ solamente quando si trova nello stato C, qualsiasisiano state le configurazioni d’ingresso che si sono susseguite in precedenza.Come in tutte le reti, di qualsiasi natura, si può notare un piccolo ritardo, in questo caso di 10 ns, dell’uscita rispetto alle entrate nella simulazione post-route: ciò è causato dall’implementazione, simulata, dello schematico in un circuito reale afflitto da ritardi caratteristici della tecnologia impiegata.