Una rete sequenziale sincrona deve gestire il funzionamento di un allarme antifurto. Esso è dotato di due sensori di rilevazione (S1 e S2) e un telecomando con due bottoni: uno per l’accensione e lo spegnimento dell’antifurto (B) e uno per lanciare l’allarme "panico", cioè l’attivazione manuale della sirena d’allarme (P). Inoltre, due uscite segnalano rispettivamente l'accensione dell'antifurto (Accensione) e l'attivazione dell'allarme (Allarme): solo quando l'antifurto è acceso l'allarme può attivarsi, restando in funzione fino a quando l'antifurto non viene spento. L’allarme deve scattare solamente se i sensori rilevano una presenza umana. Per questo motivo, quando il sensore 1 avverte un movimento, invia un impulso all'antifurto, che rimane all'erta per 3 periodi di clock: se entro questi 3 clock anche il sensore 2 si accende, è stata rilevata un'intrusione e viene dato l'allarme. Dunque il sensore 1 è prioritario rispetto al 2 ed è anche "retriggerabile": un nuovo impulso proveniente dal sensore 1 resetta il conteggio dei 3 clock. Per lanciare l'allarme "panico" è necessario tenere premuto l'apposito pulsante del telecomando per almeno 3 periodi di clock: indipendentemente dallo stato dei sensori, dunque, l'uscita d'allarme viene portata a 1. Per la natura del progetto, tutti i segnali d'ingresso sono supposti asincroni: devono, quindi, essere sincronizzati con il clock attraverso opportuni monoimpulsori, scelti a seconda della loro funzione all'interno dell'antifurto. Inoltre la rete deve essere in grado di catturare anche il minimo impulso del bottone d'accensione, mentre l’impulso proveniente dal sensore 1, per essere significativo ai fini del rilevamento, deve essere sufficientemente lungo da essere catturato da un monoimpulsore standard. Essendo la rete di tipo sincrono, essa verrà sintetizzata in modo diretto. Per descrivere al meglio la rete, lo Schematico verrà diviso nelle 4 parti principali che lo compongono: • Gestione del pulsante d’accensione B con un monoimpulsore di tipo A modificato • Gestione degli impulsi dei sensori S1 e S2 con un monostabile "retriggerabile" • Gestione del pulsante di "panico" P con un monoimpulsore di tipo C • Gestione dell’uscita d’allarme Schematico completo Gestione Accensione Per catturare anche gli impulsi di B più brevi di un periodo di clock, un monoimpulsore di tipo A è stato opportunamente modificato con l’aggiunta di un ulteriore FFD che riceve il segnale B nell’ingresso del clock e che rimane a 1 fino a quando l’input non è stato trasferito al monoimpulsore, cioè al fronte positivo del clock. L’uscita del monoimpulsore viene poi mandata all’ingresso del clock di un altro FFD, che si occupa di tenere memoria dello stato di accensione dell’antifurto: l’uscita vera corrisponde all’uscita Accensione; l’uscita negata, denominata "NotAccensione", viene inviata all’ingresso del FFD per cambiare il suo stato e, per il resto della rete, corrisponde a un segnale di reset. Gestione Sensori Per riprodurre i 3 periodi di clock d’allerta dell’antifurto, si è fatto uso di un monostabile "retriggerabile" che riceve come ingresso il segnale S1 e che, tramite un contatore per 4, mantiene la sua uscita a 1 per almeno 3 periodi di clock completi. Poiché S1 deve passare attraverso un monoimpulsore di tipo A, i "trigger" che produce hanno effetto solo dopo un clock dalla rilevazione dell’impulso. Il segnale S2 non necessita di essere sincronizzato con il clock e attiva immediatamente l’allarme quando l’antifurto è all’erta. Le uscite Z e Sall servono a monitorare il comportamento del monostabile e di S2, mentre il segnale NotAccensione a 1 resetta tutta la rete. Gestione Panico Un monoimpulsore di tipo C riceve in ingresso il segnale P. La sua uscita negata entra nell’ingresso di reset asincrono di un contatore per 4 che ha il compito di contare 3 periodi di clock completi. Il contatore viene quindi attivato solo quando l’uscita del monoimpulsore è a 1. Il FFD del monoimpulsore viene resettato immediatamente quando NotAccensione è a 1 o quando il pulsante di P non è più premuto: per attivare l’allarme Panico, infatti, il pulsante deve rimanere premuto durante i 3 periodi di clock e un solo momento di stacco porta al reset del contatore. Uscita Allarme La sirena d’allarme si attiva in modo asincrono non appena va a 1 o il segnale Panico o il segnale Sall. L’uscita Allarme viene poi mantenuta a 1 fino a quando non viene spento l’antifurto. Test Bench (1) Test Bench (2) Simulazione Behavioral Simulazione Post Route La rete reagisce agli stimoli, con i dovuti ritardi fisici, secondo il comportamento atteso e senza causare ‘glitches’ delle uscite.