Calcolatori Elettronici Parte IV

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Aritmetica Binaria
MULTIVIBRATORI BISTABILI
Fenomeni transitori: alee
Dalla macchina alla rete
Capitolo 4 Logica sequenziale
Esercizi e applicazioni di
Informatica Generale Marzia Buscemi IMT Lucca
Espressioni generali e MULTIPLEXER.
Cassaforte asincrona SR
CONTATORI CONTATORE = circuito sequenziale che conta il numero di impulsi di CK applicati al suo ingresso e fornisce un’ indicazione numerica binaria MODULO.
Circuiti Aritmetico-Logici
Rappresentazioni numeriche
(sommario delle lezioni in fondo alla pagina)
Circuiti Sequenziali Asincroni
Circuiti sequenziali Capitolo 5.
Circuiti sequenziali sincroni
Esempi di progetto di circuiti seq. asincroni
Introduzione ai circuiti sequenziali
Sintesi FSM – Prima parte
Circuiti di memorizzazione elementari: i Flip Flop
Sintesi dei circuiti sequenziali
Analisi e Sintesi di circuiti sequenziali
CONVERSIONE ANALOGICO-DIGITALE, A/D
ESEMPI DI ARCHITETTURE DI DAC
INTRODUZIONE AI CONVERTITORI ANALOGICO-DIGITALI (ADC)
Informatica 3 Codifica binaria.
ARCHITETTURA DEI SISTEMI ELETTRONICI
ARCHITETTURA DEI SISTEMI ELETTRONICI
ARCHITETTURA DEI SISTEMI ELETTRONICI
A.S.E.25.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 25 Reti sequenziali sincronizzate complesseReti sequenziali sincronizzate complesse –Macchina.
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Fenomeni transitoriFenomeni transitori Somma e differenza di due numeri in C2Somma e differenza.
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
ARCHITETTURA DEI SISTEMI ELETTRONICI
A.S.E.29.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 29 Riconoscitore di sequenza 1Riconoscitore di sequenza 1 Sintesi del Flip-Flop D latchSintesi.
ARCHITETTURA DEI SISTEMI ELETTRONICI
Argomenti complementari Capitolo 9. Clock Skew Se vi sono dei ritardi sulla linea del clock il funzionamento del circuito potrebbe risentirne pesantemente.
PSPICE – Circuiti sequenziali principali
Flip-flop e Registri.
Macchine sequenziali.
Reti combinatorie: moduli di base
Codici binari decimali
Dalla macchina alla rete: reti LLC
Macchine sequenziali.
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Cos’è una sequenza? Una sequenza è una successione finita di valori, dove ogni valore ha una durata prefissata e costante (T). I valori della sequenza.
Rappresentazione dell’informazione
Rete Asincrona Una rete sequenziale asincrona è dotata di due ingressi E, X e di una uscita Z. L'uscita Z deve diventare 1 solamente quando durante l'ultima.
Rete Sincrona Una rete sequenziale sincrona, è dotata di un ingresso E, di un segnale di Clock e uno di reset. Ad ogni fronte del Clock, deve essere campionato.
Esercizio 2 Progettare un registro a 8 bit con uscita tri-state utilizzando FFD positive edge triggered. La rete, ad ogni fronte di salita del clock,
Una macchina sequenziale asincrona ha due ingressi x1, x2 e un'uscita z. Gli ingressi non cambiano mai di valore contemporaneamente. L'uscita assume il.
Contatore: esempio di circuito sequenziale
CircuitiLogici. x1x1 x2x2 f x1x1 x2x2 f(x 1,x 2 ) f(x 1,x 2 ) = x 1 +x 2 = x 1 x 2 OR.
ARITMETICA BINARIA.
Reti combinatorie: moduli di base
Una rete sequenziale asincrona è dotata di due ingressi X1, X2 e di un’uscita Z. I segnali X2 e X1 non cambiano mai di valore contemporaneamente. Il segnale.
Una rete sequenziale asincrona è dotata di due ingressi X1, X2 e di un’uscita Z. I segnali X2 e X1 non cambiano mai di valore contemporaneamente. Il segnale.
Cassaforte asincrona II assegnamento. Descrizione Il progetto Cassaforte II assegnamento consiste in una codifica diversa delle variabili di stato. Codifica.
Una rete sequenziale asincrona ha due ingressi C,X e un’uscita Z. I segnali C,X non cambiano mai di valore contemporaneamente. Il segnale C è periodico;
Traformazioni fra Bistabili e Registri
Teoria dei sistemi Autore: LUCA ORRU'.
Corso di recupero di Fondamenti di Elettronica – Università di Palermo
V.1. Considerazioni generali V.2. Flip-Flop V.3 Esempi applicativi
Circuiti di memorizzazione elementari: i Flip Flop
Dalla macchina alla rete: reti LLC. Dalla macchina alla rete Per realizzare una macchina sequenziale è necessario –Codificare gli insiemi I,S,O con variabili.
A.S.E.18.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 18 Flip-flop S-R Master-slaveFlip-flop S-R Master-slave Flip-flop J-K Master-slaveFlip-flop.
Calcolatori Elettronici
Flip flop sincronizzati Spesso l’eventuale cambiamento di stato di un flip-flop non si fa coincidere con l’istante in cui si modificano i valori dei bit.
Transcript della presentazione:

Calcolatori Elettronici Parte IV Registri Progetto di Macchine Sincrone Contatori Registri a scorrimento

Registri T Un registro atto a memorizzare un dato tipo T a cardinalità k è una MS avente: k stati di uscita (u1,u2,…,uk) ciascuno associato ad un valore da memorizzare t stati di ingresso (t>k) , T suddiviso in due sottoinsiemi: XN, con X=(x1,x2,…,xk) gli ingressi attivi per la memorizzazione; N=(n1,n2,…,nm) ingressi neutri per “mantenere l’uscita del registro, m1 R U T1 u1 T1 u1 T1 u1 ….. nj conserva lo stato uj=f(xj) nel caso più generale

Ipotesi Sequenza di ingresso di natura impulsiva Basi corrispondenti agli ingressi neutri b1x1b1 ….. b2x2b2 … b3x3b3 Registro a Sincronizzazione esterna Registro autosincronizzato

Registro a S. E. uk qk .. q2 q1 … u3 q3 u2 u1 u xk x2 x1 nk n2 n1 I s I=(l1,l2,…,lk) s=(0,1) R uk qk .. q2 q1 … u3 q3 u2 u1 u xk x2 x1 nk n2 n1 s=0 s=1

Registro autosincronizzato Caso concreto: unica base e k ingressi Puramente impulsivi Gli istanti di caricamento sono determinati da uno degli impulsi X=(x1,x2,…,xk) N=(n) uk qk .. q2 q1 … u3 q3 u2 u1 u xk x2 x1 n

Tempificazione dei Registri Registri “latch” Catturano l’ingresso per tutti il tempo in cui è presente una variabile impulsiva attiva È valido finchè effettivamente gli ingressi sono impulsivi Registri a “derivazione del fronte” Es. Accoppiamento capacitivo .. Per ottenere impulsi sufficientemente brevi

Tempificazione dei Registri (2) Registri “edge triggered” La variazione dell’uscita avviene in corrispondenza di una variazione di livello di una variabile impulsiva reale Registri “Master Slave”

Modelli reali di Macchine Sincrone (1) R è usato per memorizzare gli stati della macchina I impulsivi P uscite di posizionamento dello stato, impulsive e p=p(q,i) U a livelli o imp. D ritardo di posizionamento del registro D R M C P Q u I

Modelli reali di Macchine Sincrone (2) Q0 Q1 Q2 … Qn Neutri Attivi Qx Qy Qz Stabili | p. sincrona M C P Q I u

Tempificazione (1) Occorre garantire che il ritardo D nel posizionamento dei registri sia maggiore della durata degli impulsi, di modo che lo stato non cambi durante la fase di posizionamento, d < D q i p D

Tempificazione (1) Occorre garantire che il ritardo D nel posizionamento dei registri sia maggiore della durata degli impulsi, di modo che lo stato non cambi durante la fase di posizionamento, d < D q i d p D

Modello Sincronizzato dall’esterno Non esistono problemi tipici delle Macchine a livelli (alee multiple, statiche) In quanto l’uscita P’ risulta inattiva (in assenza di impulso s) per il caricamento del registro  occorre garantire che la variazione dei livelli non sia Sincrona con il fronte attivo di s es.. Apparecchiatura di clock a due fasi M C P Q I u

Modello Sincronizzato dall’esterno: uscite imp. M C P Q I u

Esercizio Si costruisca una rete nella quale entrano serialmente i bit di un codice decimale 8-4-2-1 a partire dal bit meno significativo e dalla quale esca un segnale che individui se i quattro bit costituiscono o meno una delle 10 parole-codice previste. ? Parola vera Parola falsa 0110

Specifiche Si assegna ad un segnale a livelli x la rappresentazione del bit del codice, e ad un clock la tempificazione. In sincronia con il 4 bit, z = 1 indica la correttezza del codice. Macchina Sincrona a sincronizzazione esterna

Descrizione del Problema 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 z = 0 1010 1011 1100 1101 1110 1111

Tabella Stato/trans e minim. stati

Paul&Unger S0= 0 S1= 1,2 S2= 3,5 S3= 4,6 S4= 7,8,9,11,12,13 S5= 10,14 4 6 1 2 3 5 7 10

Macchina a S.R. 1 0,1 2 3 5 0/1 1/1 4 1/0

Codifica degli Stati Tabella in codice Codificando gli stati con (nell’ordine: y3y2y1) S0 = 101 S1 = 010 S2 = 111 S3 = 011 S4 = 110 S5 = 000 Tabella in codice   000 101/1 001 - 010 011 110 100 101 111 1

Progetto combinatorio per il posizionamento dei FF SR JK D S R J K 00 - 01 1 10 11

Infatti, per RS e T … S0 - S1 10 11 01 00 RS S T 1 Fp

Infatti, per D e JK … S0 S1 10 11 01 00 S0 S1 10 11 01 00 aD S A=1 kj

Tornando al progetto … Scegliendo Flip Flop di tipo JK, bisognerà progettare 6 segnali di posizionamento:   J1= J1( y3y2y1x), K1= K1(y3y2y1x) J2= J2(y3y2y1x), K2= K2(y3y2y1x) J3= J3(y3y2y1x), K3= K3(y3y2y1x)

… ovvero per JK Posso costruire mappe di Karnaugh per i segnali di posizionamento del JK e per le uscite! JK J K 00 - 01 1 10 11

Per il primo FF JK ho: 11 1 - y1x y3y2 00 01 10 -1 J1 = 1 K1 = 1

Per il secondo FF JK ho: - 1 00 01 11 10 J2 ha diverse f.m. eq., y1x y3y2 00 01 11 10 J2 ha diverse f.m. eq., Scelgo J2=y3

Per il terzo FF JK ho: 11 1 - y1x y3y2 00 01 10 -1

Per le uscite …. Per quanto attiene le uscite, se si desidera un’uscita impulsiva, si ha che z’ = c  z (y3y2y1x) z si ottiene dalla seguente mappa 1 - y1x y3y2 00 01 11 10

Circuito

Contatori Macchine fondamentali Diversi tipi di contatori Aritmetica Funzioni di controllo Diversi tipi di contatori Tempificazione Segnali di ingresso uscita

Contatore Astratto Generalizzato U Macchina sincrona .. Anche se la tempificazione interna può essere asincrona u/d div Counter-mod-M EN rp cp r l I

Esempio (1)

Esempio (2) cp 3 2 1 stato div rp

Contatore Astratto Generalizzato Counter-mod-M u/d EN cp div rp I U r l Cp Conteggio u/d: up o down EN: enable generale al conteggio div Divisore Ho tutti 0 tranne un 1 tra i conteggi rp Ripple Asserito se ho “carry” oppure “borrow”

Contatore Astratto Generalizzato (2) Counter-mod-M EN cp div rp I U r l U Uscita I Ingresso omogeneo con U L Load: se attivo inizializza ad I l’uscita U r Reset, se attivo produce l’azzeramento di U P: preset, pone il valoe M-1 ad U u/d

Sincroni e Asincroni Asincrono Sincrono Macchina sequenziale avente come ingresso una variabile di conteggio, della quale conta solo i fronti di salita, di discesa oppure entrambi Almeno uno dei bistabili non riceve in ingresso il segnale di conteggio ed il suo eventuale cambiamento dis tato è determinato solo dalla sua funzione stato prossimo, che dipende dallo stato degli altri bistabili Sincrono Macchina di Moore Tutti i bistabili che costituiscono la memoria del contatore ricevono simultaneamente in ingresso il segnale di conteggio e tutti quelli che devono commutare commutano simultaneamente

Contatori Asincroni ( opp ) Un contatore asincrono mod-n che conti i soli fronti di salita o di discesa può essere realizzato con 2.n stati 0 1 2 3 4 5 6 7 0 1 u 2 3 4 5 6 7

Contatori Asincroni ( ) Un contatore asincrono mod-n che conti i fronti di salita e di discesa può essere realizzato con n stati, se n è pari 0 1 2 3 0 1 u 2 3

Contatori Asincroni ( opp ) Un contatore asincrono mod-n che conti i fronti di salita e di discesa può essere realizzato con 2.n stati, se n è dispari 0 1 2 3 4 5 0 1 2 1 u 2 3 4 5 Il ritorno allo stato iniziale È possibile solo se L’ultimo stato è dispari

9 1 Ripple Counter rp cp mod10 3 cont. mod. 10  Mod 103 mod10 cp rp 3 cont. mod. 10  Mod 103 … il contatore del gas …. … non tutte le variazioni di stato dei flip flop sono sincrone con cp Contatore asincrono mod bk

Ripple counter mod 2k Contatore Mod-23 Ripple counter JK con J=K=1 funziona come T, contatore mod-2 Il ripple viene generato quando raggiungo 1. Collegamento in cascata di macchine asincrone

Contatori sincroni Possono essere progettati con la teoria classica delle macchine sincrone pilotate da un impulso di sincronismo. 000 001 010 011 100 101 110 111 LSB: 0101 2 c.: 0011, passa Da 0 a 1 quando la 1.c. È 1. MSB 000 0 11110 Passa Da 0 a 1 quando la 2.c. è 1.

Contatori sincroni Usando ff T sincroni come v. di stato, ho le funzioni di posizionamento: T0=1; T1= Q0; T2= Q0 Q1 Generalizzando… Tk=Q0 Q1 ….. Qk-1 000 001 010 011 100 101 110 111

Registri a Scorrimento in a b Parallel in out Parallel out In/out Ingresso e uscita seriale a abilitazione allo shift Parallel In/Out Abilitato da b

Shift logico e aritmetico 1 1 logico 1 aritmetico

Proprietà dei registri a scorrimento 1 9 Right Shift Register 1 9 DIV 2 = 4 Left Shift Register 1 9*2 = 18

Serializzazione e Rotate b 1 1 Rotate Left Rotate Right

Shift Circolari usati come contatori 10000000 01000000 00100000 00010000 00001000 00000100 00000010 00000001 Shift register con 8 bit contatore modulo 8

Contatori Johnson 1 Cont. Mod-16 00000000 10000000 11000000 11100000 11110000 11111000 11111100 11111110 11111111 01111111 00111111 00011111 00001111 00000111 00000011 00000001 1 Cont. Mod-16

Progetto di Sistemi go A B done

Parallelo, Serie, Retroazione M1 M2 serie M1 M2 w parallelo M1 M2 w feedback

Esempio riconoscitore 8421 1 0,1 2 3 5 0/1 1/1 4 1/0 Contatore mod-4 (abcd) Un dispositivo che mi dice se sto a destra o sinistra del grafo a seconda degli ingressi a b c d

Ovvero a b c d x clock M z0 counter Mod-4 z1 Counter mod-4

Ovvero … a b c a=00 d B=01 c=10 d=11 Codifica: A=0 B=1 1 0,1 2 3 5 0/1 1/1 4 1/0 a b c d A=(0,1,2,4); B=(3,5) 1a 0a 1b 0b 1c 0c 1d 0d A A/0 B/0 A/1 B - a=00 B=01 c=10 d=11 A=0 B=1 Codifica: