Che cos'è un infradito?


25

Sembra che ci siano diverse definizioni di infradito e chiusure, alcune delle quali sono contraddittorie.

Il libro di testo di Informatica per il corso che insegno è probabilmente il più confuso (in effetti ho poca fiducia nel libro perché è semplicemente sbagliato in diversi punti).

Sono a mio agio con il funzionamento dei dispositivi di chiusura (SR, SR con gate, D con gate) e con la differenza tra dispositivi con trigger di livello e trigger di bordo, almeno in termini di gate logici e diagrammi di temporizzazione. Tuttavia, sto ancora cercando una definizione concisa di un infradito e di un fermo.

Questo è quello che credo finora:

"Un flip flop è un dispositivo bi-stabile innescato dal bordo che può memorizzare 1 bit".

"Un latch è un dispositivo bi-stabile attivato da livello che può memorizzare 1 bit."

Ho dato un'occhiata ai post precedenti su questo sito Web e, per quanto illuminante come sono, sto ancora cercando qualcosa di definitivo.

La mia attuale comprensione, che voglio verificare, è negli schemi seguenti ...

Fianco a fianco sono ciò che capisco sono due implementazioni di un latch D con gate a livello.

Al di sotto di questi è presente un rilevatore di fronte positivo, in quel breve momento in cui il gate NOT non ha ancora risposto al cambio di ingresso da basso ad alto, vale a dire il fronte di salita (il rosso è 1 il blu è 0).

Nell'ultimo diagramma, il rilevatore di bordi è stato montato su un fermo a D datato e questo è ciò che lo rende un infradito.

inserisci qui la descrizione dell'immagine

L'ultimo diagramma è davvero un infradito o è ancora solo un fermo?

E perché abbiamo bisogno della versione master slave indicata, che questo dispositivo è molto più semplice?


1
@DanielTork perché non farne una risposta?
Ghiacciato il

10
In Australia e Nuova Zelanda, sono una forma di scarpe a punta aperta spesso indossate sulla spiaggia o fuori con il bel tempo. ;)
KyranF,

3
Anche negli Stati Uniti. Ma li chiamavamo perizoma, ma questo si riferisce a qualcosa di diverso ora ;-)
In pausa fino a nuovo avviso.

1
Ora voglio vedere uno schema circuitale disegnato con i sandali noti come infradito ...
Keshlam,

1
@immibis esci di qui ya kiwi marcio!
KyranF,

Risposte:


11

Ho riflettuto molto su questa definizione oggi.

Come altri hanno sottolineato, i significati esatti varieranno. Inoltre, probabilmente vedrai più persone sbagliare, anche su questo sito, che a destra. Non mi importa cosa dice Wikipedia!

Ma in generale:

  • Un flip flop cambierà il suo stato di uscita al massimo una volta per ciclo di clock.
  • Un latch cambierà il suo stato tante volte quante saranno le transizioni dei dati durante la sua finestra di trasparenza.

Inoltre,

  • Un infradito è molto sicuro. Quasi infallibile. Per questo motivo gli strumenti di sintesi usano solitamente le infradito. Ma sono più lenti di un fermo (e usano più potenza).
  • I fermi sono più difficili da usare correttamente. Ma sono più veloci delle infradito (e più piccole). Pertanto, i progettisti di circuiti personalizzati spesso "diffondono il flip flop" attraverso il loro blocco digitale (un fermo su entrambe le estremità con fase opposta) per spremere alcuni picosecondi extra da un arco di temporizzazione errato. Questo è mostrato in fondo al post.

Un infradito è in genere caratterizzato da una topologia master-slave. Si tratta di due accoppiati (può esserci una logica tra), fermi di fase opposti back to back (a volte nell'industria chiamata L1 / L2).

Questo significa che un flip flop è intrinsecamente composto da due elementi di memoria: uno da tenere durante il ciclo basso e uno da mantenere durante il ciclo alto.

Un latch è solo un singolo elemento di memoria (SR latch, D latch, JK latch). Solo perché si introduce un clock per bloccare il flusso di dati nell'elemento di memoria non lo rende un flip flop, secondo me (anche se può farlo agire come uno: cioè più fronte di salita innescato). Lo rende trasparente per un determinato periodo di tempo.

Di seguito è mostrato un vero infradito creato da due chiavistelli SR (notate i clock di fase opposti).

vero d ff

E un altro vero infradito (questo è lo stile più comune in VLSI) da due D-latch (stile gate di trasmissione). Notate ancora i clock di fase opposti :

vero infradito stile tg

Se imposti l'orologio a un fermo abbastanza rapidamente, inizia a somigliare a un comportamento a fogli mobili (fermo impulsi). Questo è comune nella progettazione di datapath ad alta velocità a causa del minore ritardo di D-> Out e Clk-> Out, oltre al miglior tempo di configurazione concesso (anche il tempo di attesa deve aumentare, il piccolo prezzo da pagare) dalla trasparenza per tutta la durata di l'impulso. Questo lo rende un infradito? Non proprio, ma sembra che si comporti come uno!

Tuttavia, è molto più difficile garantire il funzionamento. È necessario verificare in tutti gli angoli del processo (fast nmos, slow pmos, cap filo alto, filo r basso; come esempio di uno) e tutte le tensioni (la bassa tensione causa problemi) che l'impulso dal rilevatore di bordi rimanga abbastanza ampio da aprirsi effettivamente il latch e consentire l'accesso ai dati.

Per la tua domanda specifica, sul motivo per cui è considerato un latch di impulsi anziché un flip flop, è perché hai davvero solo un elemento di memorizzazione dei bit sensibile a livello singolo. Anche se l'impulso è stretto, non forma un sistema di blocco e diga che crea un infradito.

Ecco un articolo che descrive una chiusura ad impulsi molto simile alla tua richiesta. Una citazione pertinente: "Se la forma d'onda dell'orologio a impulsi innesca un latch, il latch è sincronizzato con l'orologio in modo simile al flip-flop attivato dal bordo perché i bordi di salita e di discesa del clock di impulso sono quasi identici in termini di temporizzazione".

MODIFICA Per un po 'di chiarezza ho incluso un grafico del design basato su chiavistello. C'è un fermo L1 e un fermo L2 con la logica in mezzo. Questa è una tecnica che può ridurre i ritardi, poiché un latch ha un ritardo inferiore rispetto a un flip flop. Il Flip-flop è "diviso" e la logica è messa nel mezzo. Ora risparmi un paio di ritardi (rispetto a un infradito alle due estremità)!

progettazione basata su chiavistello


"Caratterizzato da una topologia master-slave" - ​​che suona più come un dettaglio di implementazione, piuttosto che una caratteristica comportamentale che definisce. Comportamentalmente, un flip-flop (secondo la tua definizione) è una memoria a bit singolo che sembra essere innescata dal bordo. In pratica, la magia di implementazione richiesta per approssimare il trigger dei bordi richiede un secondo elemento di memoria!
Oliver Charlesworth

1
@OliverCharlesworth: Beh, è ​​un dettaglio di implementazione. Oltre a un dettaglio fisico, comportamentale, strutturale e topologico. Non puoi semplicemente chiamare un latch un infradito perché sembra uno. Potresti riuscire a cavartela, ma per usarli al meglio devi conoscere la differenza. Se dividi un flip flop, hai due chiavistelli separati di fase opposta. Puoi riempire la logica nel mezzo. Questo è più veloce di avere un infradito su entrambe le estremità. Permette anche di "prendere in prestito tempo" attraverso un limite di ciclo che è un concetto molto importante per i progetti ad alta velocità.
jbord39,

Ecco alcune immagini più utili di DFF che potrebbero aiutare, vedi l'ultima. Il DFF postato sopra è confuso a causa del blocco su fasi opposte del clock (ovvero i blocchi master sul fronte di salita, i blocchi slave in caduta). electronics.stackexchange.com/a/84247/42957
mrbean

Sarebbe bello vedere un esempio di un vero flip-flop con trigger di fronte monofase ("TSPC" DFF) qui.
mrbean,


1

Molte persone si riferiranno ai dispositivi con clock come "infradito" e ai dispositivi senza clock come dispositivi di chiusura. Quando l'ho imparato, era "infradito con orologio" e "infradito". Entrambi possono essere innescati dal bordo.

C'è abbastanza ambiguità che, quando è importante, si affida a numeri di parte, schede tecniche e diagrammi di temporizzazione e non descrizioni di parole.


Quindi anche un GTO-SCR è un infradito?
Bradman175,

1

Grazie a tutti coloro che hanno risposto alla mia domanda. Come previsto, c'è un certo disaccordo. Sfortunatamente la semantica è spesso più importante della comprensione quando si tratta di esami. Se ho bisogno di discutere con una commissione d'esame per contrassegnare erroneamente un documento d'esame di uno studente di informatica di livello A (e l'ho fatto in passato), voglio essere in una posizione forte. Ho pensato di condividere con voi un paio di pagine del libro di testo ufficiale del corso A Level.

Il primo diagramma è un latch SR attivo basso. Il libro lo chiama infradito.

Nel testo, il libro dice "Usando due flip-flop possiamo creare un circuito chiamato flip-flop di tipo D che usa un circuito controllato da clock per controllare l'uscita, ritardandolo di un impulso di clock. La D sta per delay ". Questo testo sembra riferirsi alla configurazione master / slave. Il secondo diagramma (figura 14.2) è etichettato come infradito di tipo D. In realtà si tratta di un dispositivo di chiusura a D ad alta gate attivo.

Non molto utile!

Mi accontenterò di "Un infradito è in genere caratterizzato da una topologia master-slave". come ha suggerito jbord39, con l'avvertenza che il termine flip-flop è spesso usato per indicare un latch innescato dal bordo, e talvolta solo qualsiasi tipo di latch. Penso che questo sia da dove proviene il libro, anche se non ci si arriva in modo convincente.

Grazie ancora a tutti

inserisci qui la descrizione dell'immagine inserisci qui la descrizione dell'immagine


2
Sì, quel libro è assolutamente fuorviante. Inoltre, D sta per Data, non per ritardare ... lol La parte importante è capire come funzionano e non farsi prendere troppo dalla semantica. Ho spiegato la semantica come mi sono stati spiegati nelle aziende in cui ho lavorato. Potrebbe variare in base all'area e al livello di esperienza (soprattutto in relazione agli interni delle porte logiche, che è ciò su cui lavoro).
jbord39,

Sono d'accordo con jbord39. Come ho dimostrato nella mia risposta, l'input E consente solo ai dati di influire sull'output. Eppure hai libri di testo che contengono informazioni errate. Abbastanza fastidioso in realtà.
Bradman175,

1

Un infradito è diverso da un fermo. Sono entrambi circuiti bi-stabili, ma in realtà sono due cose diverse.

Il fermo ha un pin di abilitazione e ascolta l'input / input dei dati solo quando questo pin è alto. Quando è basso, il fermo si blocca e memorizza il suo stato. Ora anche manipolando gli input, non reagirà.

Il flip flop contiene invece un perno orologio, che reagisce solo al variare degli impulsi (spostamenti di livello). Pensa a un'onda quadra. Il tempo transitorio tra off e on; off e on è il tempo in cui il circuito reagisce ai segnali di ingresso. Solo allora è disponibile per la modifica, non quando il pin è stabile e completamente acceso.

Tempo di reazione al Flip-flop

Nota che le linee verdi rappresentano il periodo in cui ascolta l'input e le linee rosse il periodo in cui non lo è. Il fermo consente l'inserimento solo durante i periodi indicati dalle linee rosse più in alto.

L'SR autonomo non è in pratica un circuito realizzabile.

Ringraziamenti a jbord39 per aver segnalato l'errore. Immagine presa da radio-elctronics.com e modificata.


Un flip flop non è un fermo, ma può essere costruito da due fermi di fase opposti schiena contro schiena.
jbord39,

Ho modificato la risposta @ jbord39
Daniel Tork il

Grazie, @ Peter Mortensen. Non li ho visti.
Daniel Tork,

0

I termini quando li usi nella tua domanda sono al 100% in linea con ciò che ho sentito usato nel contesto della progettazione di circuiti integrati analogici. I latch hanno un segnale di abilitazione sensibile al livello, mentre i flip flop hanno segnali di abilitazione sensibili al bordo chiamati "clock". Ho notato alcuni posti online o in alcuni libri che sembrano usare il termine infradito per entrambi i tipi, il che può avere senso se si pensa allo stato del circuito "infradito" tra due punti stabili, ma ogni volta che i designer parlano di circuiti in cui lavoro, i latch sono sensibili al livello e le infradito (o anche comunemente solo "flop") sono sensibili ai bordi.

Sull'altra tua domanda se progettare un infradito come dispositivo di chiusura con un rilevatore di bordi rispetto a una coppia di dispositivi di chiusura master-slave. Ad ogni modo può funzionare, supponendo che ci sia abbastanza ritardo nel rilevatore di bordi. I latch avranno un tempo minimo di abilitazione. Ho il sospetto che sia solo più difficile fare un flip flop ad alta velocità usando la tecnica del rilevatore di bordi, e il tempo di installazione / attesa potrebbe variare di più su processo / tensione / temperatura.


Mi chiedo perché raramente vedo i flop implementati con coppia master / slave con soglie logiche non sovrapposte (quindi una tensione di ingresso inferiore a VDD / 4 abiliterebbe il master e una tensione sopra VDD / 2 abiliterebbe lo slave. Se più flop in cascata sono alimentato da un segnale di ingresso lento o rumoroso, il comportamento sarebbe affidabile a condizione che, su un fronte di salita, nessuno di loro vedesse una tensione inferiore a VDD / 4 dopo che qualcuno avesse visto una tensione superiore a VDD / 2.
supercat

@supercat Stai parlando di isteresi?
Cort Ammon - Ripristina Monica il

@CortAmmon: No - qualcosa di meglio. Se due flip flop con trigger Schmidt indipendenti vengono messi in cascata, potrebbe verificarsi un funzionamento errato se il primo flop riconosce il fronte del clock e propaga l'ingresso attraverso l'uscita prima che il secondo flop riconosca il suo fronte del clock. Se i flip flop usano soglie di input divise, il secondo flop catturerebbe il suo input quando l'orologio sale sopra la soglia inferiore, ma l'uscita del primo flop non cambierebbe fino a quando l'orologio non raggiunge la soglia superiore.
supercat

0

(Passa alla fine se vuoi sapere se l'ultimo circuito dell'OP è flip-flop o latch.)

In termini di base, un Flip-Flop è una disposizione di porte logiche (o componenti) che consente il blocco di 2 stati insieme a un pin di orologio che consente questi cambiamenti di stati.

Ora ecco la differenza tra un flip-flop e un fermo. I latch sono asincroni mentre i Flip-flop sono sincroni.

  • I latch asincroni non richiedono un pin di aggiornamento, che sarebbe comunemente chiamato CLKpin (abbreviazione di clock) in un flip-flop. A loro importa solo se gli input sono in uno stato specifico, o HIGHo LOW. Quando una certa combinazione di HIGHs ed LOWs sono istigato nell'input, cioè quando il circuito decide di eseguire un'azione, e il risultato desiderato viene restituita "immediatamente". Ci sono 4 possibili azioni in un fermo.

    1. Fare niente
    2. Imposta QsuHIGH
    3. Imposta QsuLOW
    4. Lo stato non valido (presumibilmente invertire il valore di Q)

    Si noti che Q'dipende Q.

Un esempio è il latch SR che dimostra tutte e 4 le possibili azioni che un latch può eseguire: Latch RS

  1. Quando Sè LOWed Rè LOW, non cambia nulla.
  2. Quando Sè HIGHed Rè LOW, Qè impostato su HIGH.
  3. Quando Sè LOWed Rè HIGH, Qè impostato su LOW.
  4. Quando Sè HIGHed Rè HIGH, Qè invertito, a un ritmo "imprevedibilmente" veloce. Questo stato non è valido.
  • Le infradito sincrone consentono di impostare un valore per i pin di dati. Ciò significa che si preoccupa solo dello stato di questi pin. Tuttavia, il circuito non decide ancora di eseguire alcuna azione sull'uscita. Hai il CLKpin come menzionato sopra. Quando il CLKperno cambia stato (o da LOWa HIGH, viceversa o anche entrambi), il pin dati vengono "catturati" e sulle prestazioni del flip-flop un'azione basata sulla combinazione di HIGHs e LOWs dei dati acquisiti dai perni di dati. Esistono due azioni per il CLKpin.
  1. Fare niente
  2. "Cattura" i dati dai pin di dati ed esegue un'azione sull'output in base ai valori dei pin di dati in quel momento specifico.

Ancora una volta ci sono 4 possibili azioni che il circuito può fare sull'uscita.

  1. Fare niente
  2. Imposta QsuHIGH
  3. Imposta QsuLOW
  4. Invertire il valore di Q(ora è valido perché lo fa solo una volta)

QUESTO NON È UN FLIP-FLOP:

inserisci qui la descrizione dell'immagine

Ma perché potresti chiedere? Quel Epin non è un pin orologio. I pin di clock consentono al circuito di analizzare le informazioni dai pin di dati UNA VOLTA in cui tali informazioni vengono inviate come istruzioni per eseguire azioni specifiche sull'uscita. Tuttavia, abilitare i pin come questo consente al circuito di analizzare le informazioni dai pin dei dati purché siano mantenuti alti e imposti costantemente i valori dell'uscita. Quindi è un fermo. (Grazie a jbord39 per aver sottolineato il mio errore).

Quindi il Flip-flop è come un chiavistello, tranne per il fatto che è necessario un ulteriore passaggio di "conferma", che è il CLKperno.

Quindi l'ultimo circuito della domanda del PO è un infradito? Prova a tenere la C in alto e vedi se l'output cambia quando cambi il valore di D. Se l'output cambia, dovresti invece chiamarlo abilitare ed è un latch. Ma se l'output non cambia (nel qual caso è il caso), allora è un flip-flop.

Le immagini provengono da Wikipedia.


No, molti dispositivi di chiusura hanno i perni dell'orologio. nxp.com/documents/data_sheet/74HC_HCT373.pdf infatti il ​​circuito che hai mostrato è un latch non un flip flop ...
jbord39

@ jbord39? Quale pin orologio? E abilitare il pin è diverso dal pin di un orologio.
Bradman175,

@ jbord39 e whoops hai ragione. I due circuiti inferiori sono chiavistelli. Per favore, riconsidera la mia risposta.
Bradman175,

Fammi vedere se ho capito.Flip flop controlla ogni input e attiva un'uscita e un latch controlla l'orologio e agisce se è 1, mostrando il valore di D. Quindi il latch SR È un flip-flop in quanto non è clock, ma il fermo D è un vero fermo.
Daniel Tork,

@DanielTork Il fatto è che hai più "orologi" e un orologio non può alternarsi tra i pin e fungere anche da pin di dati.
Bradman175,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.