Progetto di Circuiti Aritmetici
|
|
|
- Dante Paolini
- 8 anni fa
- Visualizzazioni
Transcript
1 Progetto di Circuiti Aritmetici Maurizio Palesi Maurizio Palesi 1 Introduzione Caratteristiche principali di valutazione Velocità Valutata per il caso peggiore Costo Precisione Es., operazioni in virgola mobile Affidabilità Codici di rilevazione e correzione di errore Consumo di potenza Maurizio Palesi 2 1
2 Realizzazione Due diversi aprocci Approccio hardware Approccio firmware Maurizio Palesi 3 Presentazione dei Dati Parallelo Seriale pura Seriale a byte Mista Maurizio Palesi 4 2
3 Presentazione dei Dati Parallelo Tutti i bit degli operandi sono presentati agli ingressi simultaneamente A ADD S B Maurizio Palesi 5 Presentazione dei Dati Seriale pura Alle linee di entrata vengono presentati, sequenzialmente nel tempo (in serie) i bit di pari posizione dei due addendi Presentazione normale (dal meno significativo al più sigificativo) Little endian Sommatori, moltiplicatori Presentazione seriale on-line (dal più significativo al meno significativo) Big endian A Divisori B ADD S Maurizio Palesi 6 3
4 Presentazione dei Dati Seriale a byte Per byte qui si intende un gruppo di pochi bit (non necessariamente 8) Es., Se i due addendi hanno ognuno 32 bit, questi vengono divisi in otto gruppi di 4 bit Le due coppia di 4 bit di pari posizione vengono applicate contemporaneamente Maurizio Palesi 7 Presentazione dei Dati Mista Uno dei due operandi viene presentato con modalità in parallelo, l altro con modalità seriale Maurizio Palesi 8 4
5 Presentazione dei Dati Parallelo (combinatorio) La più usata per operandi di lunghezza normale (16, 32, o 64 bit) Seriale e mista (sequenziale) Utilizzata per operandi molto lunghi Es., operazioni crittografiche Maurizio Palesi 9 Half/Full Adder a b HA s c out a b s cout a b c in FA s c out a b cin s cout Maurizio Palesi 10 5
6 Sommatore a Propagazione di Riporto b 5 a 5 b 4 a 4 c 6 c 5 c 4 c 3 c 2 c 1 FA FA FA FA FA HA s 5 s 4 s 3 s 2 s 1 s 0 b 5 a 5 b 4 a 4 c 6 c 5 c 4 c 3 c 2 c 1 c FA FA FA FA FA FA 0 s 5 s 4 s 3 s 2 s 1 s 0 Maurizio Palesi 11 Overflow L overflow nella somma di due interi a n bit si ha se il risultato super n -1 Tale situazione viene segnalata dal valore 1 del riporto in uscita del FA in posizione più significativa Maurizio Palesi 12 6
7 Differenza A - B = A + (-B) = A + C2(B) C2(B) = NOT(B) + 1 A B A B ADD S Cout Cin Add /Sub Maurizio Palesi 13 Overflow nelle Somme Algebriche Dati due numeri a n bit di segno diverso Il risultato è sempre corretto e quindi occorre ignorare il riporto in uscita dello stadio più significativo Se i due numeri hanno lo stesso segno è possibile avere overflow Come capire se c è stato overflow? La somma di due numeri negativi è positiva oppure La somma di due numeri positivi è negativa Overflow = (a n-1 b n-1 )s n-1 + (a n-1 b n-1 )s n-1 Maurizio Palesi 14 7
8 Velocità del Sommatore a Propagazione del Riporto b 5 a 5 b 4 a 4 c 6 c 5 c 4 c 3 c 2 c 1 c FA FA FA FA FA FA 0 s 5 s 4 s 3 s 2 s 1 s 0 Esiste un percorso dei segnali dalla posizione meno significativa a quella più significativa tramite i segnali di riporto Se τ è il ritardo di propagazione dagli ingressi alle due uscite del FA, il ritardo di propagazione massimo è nτ Maurizio Palesi 15 Sommatori Carry-Lookahead Nella generica cella i-esima di un sommatore a propagazione di riporto, il riporto in uscita c i+1 deriva da Una componente generata localmente Vale 1 se i bit i-esimi degli addendi valgono 1 E una propagata dovuta al riporto di ingresso Vale 1 se c i =1 e se almeno uno dei bit i-esimi degli addendi è 1 c i+1 = G i + P i c i c i+1 b i FA a i s i c i a i b i a i b i Maurizio Palesi 16 8
9 Sommatori Carry-Lookahead c i+1 = G i + P i c i = a i b i + a i b i c i Il procedimento può essere iterato su c i c i = G i-1 + P i-1 c i-1 = a i-1 b i-1 + a i-1 b i-1 c i-1 e, riportando questa espressione in quella che fornisce c i+1 si ricava c i+1 = a i b i + a i b i (a i-1 b i-1 + a i-1 b i-1 c i-1 ) e così via fino ad esprimere il riporto c i+1 in funzione dei bit da i dei due addendi Maurizio Palesi 17 Sommatori Carry-Lookahead b 5 a 5 b 4 a 4 c out c FA FA FA FA FA FA 0 s 5 s 4 s 3 s 2 s 1 s 0 Maurizio Palesi 18 9
10 Sommatori Carry-Lookahead b 5 a 5 b 4 a 4 c out c FA FA FA FA FA FA 0 s 5 s 4 s 3 s 2 s 1 s 0 Maurizio Palesi 19 Prodotto Due fasi Calcolo dei prodotti parziali Uguale per tutti i moltiplicatori Somma dei prodotti parziali Somma per righe Somma per diagonali Somma per colonne Moltiplicatore di Wallace Moltiplicatore di Dadda Maurizio Palesi 20 10
11 Matrice dei Prodotti Parziali Maurizio Palesi 21 Calcolo dei Prodotti Parziali Delay Delay = 1 Maurizio Palesi 22 11
12 Somma per Righe + Maurizio Palesi 23 Somma per Righe HA FA FA HA Maurizio Palesi 24 p 0 12
13 Somma per Righe HA FA FA HA FA FA FA HA p 1 p 0 Maurizio Palesi 25 Somma per Righe HA FA FA HA FA FA FA HA FA FA FA HA p 7 p 6 p 5 p 4 p 3 p 2 p 1 p 0 Delay Delay = 8 Maurizio Palesi 26 13
14 Somma per Righe I tempi richiesti per la somma dei prodotti parziali dipendono linearmente dal numero dei bit dei fattori Delay SpR = 3n - 4 Maurizio Palesi 27 Somma per Diagonali HA HA HA FA FA FA b a 3 1 b FA 3 FA 3 FA 3 6 FA 5 FA 4 HA Delay Delay = 6 Maurizio Palesi 28 14
15 Somma per Diagonali I tempi richiesti per la somma dei prodotti parziali dipendono linearmente dal numero dei bit dei fattori Delay SpD = 2n - 2 Maurizio Palesi 29 Somma per Colonne Sommare tutti i bit presenti in una colonna più gli eventuali riporti equivale a contare quanti di questi bit valgono 1 Maurizio Palesi 30 15
16 Contatore Parallelo Se le sei entrate appartengono alla colonna i-esima (peso 2 i ), dei tre bit in uscita Il LSB avrà lo stesso peso 2 i Quello centrale avrà peso 2 i+1 Il MSB avrà peso 2 i+2 Note Un contatore bit è un HA Un contatore bit è un FA Maurizio Palesi 31 Somma per Colonne a 5 a 4 b 5 b 4 p 12 p 11 p 10 p 9 p 8 p 7 p 6 p 5 p 4 p 3 p 2 p 1 p 0 Maurizio Palesi 32 16
17 Somma per Colonne La struttura h3 uscite Un moltiplicatore a 6 bit h2 uscite L3esima uscita è sempre nulla Perdita di regolarità dei circuiti e delle connessioni Velocità Se Delay HA = Delay FA = Delay Counter = 1 Delay SpC = 2n - 1 Maurizio Palesi 33 Somma per Colonne (schema alternativo) M 0 La somma dei vari bit di M 0 (6 righe) rappresenta il prodotto M 1 La somma dei vari bit di M 1 (3 righe) rappresenta il prodotto Sommatore veloce M 2 La somma dei vari bit di M 2 (2 righe) rappresenta il prodotto p 12 p 11 p 10 p 9 p 8 p 7 p 6 p 5 p 4 p 3 p 2 p 1 p 0 Maurizio Palesi 34 17
18 Somma per Colonne (schema alternativo) Moltiplicando Generazione M 0 0 Moltiplicatore Riduzione righe righe Sommatore Prodotto Maurizio Palesi 35 Somma per Colonne (schema alternativo) Osservazioni Il sommatore finale somma due righe I contatori del livello precedente hanno 2 uscite al massimo 3 ingressi al massimo 3 righe I contatori del livello precedente hanno 3 uscite al massimo 7 ingressi al massimo 7 righe I contatori del livello precedente hanno 7 uscite al massimo 127 ingressi al massimo 127 righe Moltiplicatori con fattori fino 27 bit riducono il numero di righe della matrice iniziale a una matrice con due righe in non più di tre passi! Maurizio Palesi 36 18
19 Somma per Colonne (schema alternativo) Vantaggi Velocità (ritardo dominato dal sommatore finale) Un solo addizionatore veloce (e costoso) La struttura con somma per righe ne richiederebbe n-1 Svantaggi Non regolarità Potrebbe richiedere contatori con numeri diversi (e potenzialmente alti) di ingressi Soluzioni Moltiplicatore di Wallace Moltiplicatore di Dadda Maurizio Palesi 37 Moltiplicatore di Wallace Usa soltanto contatori paralleli A 3 ingressi e 2 uscite (Full Adder) A 2 ingressi e 2 uscite (Half Adder) Fig. 7.14, Progettazione Digitale/II edizione, Fummi, Sami, Silvano, Mc Graw Hill Maurizio Palesi 38 19
20 Moltiplicatore di Wallace Massimo numero di righe per matrice Ultima Penultima Terzultima Quartultima Quintultima Sestultima Settultima Maurizio Palesi 39 Moltiplicatore di Wallace Maggiore lentezza nella riduzione delle righe Maggior numero di stadi in cascata Contatori semplici (2 e 3 ingressi) Veloci L ipotesi che il ritardo di propagazione di un contatore parallelo sia indipendente dal numero degli ingressi non è realistica Maurizio Palesi 40 20
21 Moltiplicatore di Dadda Wallace cerca di contare il più possibile Dadda cerca di contare il meno possibile Dadda e Wallace stessa velocità Dadda è più economico Il risparmio aumenta all aumentare della dimensione dei fattori Fig. 7.15, Progettazione Digitale/II edizione, Fummi, Sami, Silvano, Mc Graw Hill Maurizio Palesi 41 21
Lezione 7 Sommatori e Moltiplicatori
Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 /36 Sommario
Lezione 7 ALU: Moltiplicazione e divisione
Architettura degli Elaboratori e delle Reti Lezione 7 ALU: Moltiplicazione e divisione F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 1/34 Sommario! Sommatori
Sommatori e Moltiplicatori
Sommatori e Moltiplicatori Prof. Alberto Borghese Dipartimento di Scienze dell Informazione [email protected] Università degli Studi di Milano Riferimenti: B.5 sul Patterson, per i moltiplicatori HW,
Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754
Addizionatori: metodo Carry-Lookahead Costruzione di circuiti combinatori Standard IEEE754 Addizionatori Il circuito combinatorio che implementa l addizionatore a n bit si basa su 1-bit adder collegati
Aritmetica dei calcolatori. La rappresentazione dei numeri
Aritmetica dei calcolatori Rappresentazione dei numeri naturali e relativi Addizione a propagazione di riporto Addizione veloce Addizione con segno Moltiplicazione con segno e algoritmo di Booth Rappresentazione
Decodificatore (decoder) 1 su m
Decodificatore (decoder) 1 su m Un decodificatore è una macchina che riceve in ingresso una parola codice (C) su n bit e presenta in uscita la sua rappresentazione decodificata (linee U 0, U N-1 ) su m=2
una rete combinatoria è un circuito logico avente n ingressi (x 1
Reti combinatorie una rete combinatoria è un circuito logico avente n ingressi (x,,,x n ) ed m uscite (y,y 2,,y m ), ciascuno dei quali assume valori binari (/), e tale che a ciascuna combinazione degli
Codifica e aritmetica binaria
Codifica e aritmetica binaria Corso ACSO prof. Cristina Silvano, Politecnico di Milano Codifica binaria dell informazione Il calcolatore utilizza un alfabeto binario: usiamo dispositivi elettronici digitali
Introduzione. Progetto di Contatori sincroni. Contatori definizioni caratteristiche. Contatori
Progetto di Contatori sincroni Definizioni caratteristiche Contatori Binari Naturali Contatori a codice e modulo liberi ad anello e ad anello incrociato iato Contatori modulo diverso da 2 n 12/12/03 Introduzione
Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno
Progetto di Contatori sincroni Mariagiovanna Sami Corso di reti Logiche 8 Anno 08 Introduzione Per le reti sequenziali esistono metodologie di progettazione generali, che partendo da una specifica a parole
Aritmetica binaria e circuiti aritmetici
Aritmetica binaria e circuiti aritmetici Architetture dei Calcolatori (lettere A-I) Addizioni binarie Le addizioni fra numerali si effettuano cifra a cifra (come in decimale) portando il riporto alla cifra
PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore
PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore Laboratorio di Architettura degli Elaboratori - A.A. 24/25 Il flip flop di tipo Master/Slave
Moduli Combinatori. Moduli Combinatori. Corso di Architetture degli Elaboratori
Moduli Combinatori Moduli Combinatori Corso di Architetture degli Elaboratori Coder Circuito codificatore x x z z k n=2 k x n La linea su cui si ha valore viene codificata in uscita mediante log 2 n bit
Firmware Division & Floating pointer adder
Firmware Division & Floating pointer adder Prof. Alberto Borghese Dipartimento di Scienze dell Informazione [email protected] Università degli Studi di Milano Riferimenti sul Patterson: 3.4, 3.5 1/47
Architettura degli Elaboratori
circuiti combinatori: ALU slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello 1 ALU ALU (Arithmetic Logic Unit) circuito combinatorio all interno del processore per l esecuzione di istruzioni
Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto
Rappresentazione di numeri relativi (interi con segno) E possibile estendere in modo naturale la rappresentazione dei numeri naturali ai numeri relativi. I numeri relativi sono numeri naturali preceduti
Le operazioni. di somma. e sottrazione
Le operazioni di somma e sottrazione S. Salvatori marzo 2016 (36 di 171) L'unità aritmetico-logica La ALU rappresenta l'elemento principale di una CPU quale dispositivo di elaborazione. ALU AI BUS ESTERNI
Unità Aritmetico-Logica
Unità Aritmetico-Logica A ritmethic L ogic U nit E l unità che esegue le operazioni aritmetiche e le operazioni logiche AND e OR 1-bit ALU : è una componente dell ALU che produce un singolo bit sui 32
Moltiplicazione e ALU
Moltiplicazione e ALU Docente teoria: prof. Federico Pedersini (https://homes.di.unimi.it/pedersini/ae-inf.html) Docente laboratorio: Matteo Re (https://homes.di.unimi.it/re/arch1-lab-2017-2018.html) 1
Floating pointer adder & Firmware Division. Sommario
Floating pointer adder & Firmware Division Prof. Alberto Borghese Dipartimento di Scienze dell Informazione [email protected] Università degli Studi di Milano Riferimenti sul Patterson: 3.4, 3.5 1/43
Indice. Prefazione. sommario.pdf 1 05/12/
Prefazione xi 1 Introduzione 1 1.1 Evoluzione della progettazione dei sistemi digitali 1 1.2 Flusso di progettazione dei sistemi digitali 2 1.3 Obiettivi del libro 6 1.4 Struttura ragionata del libro 7
Lezione 7 Sommatori e Moltiplicatori
Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 1/36 Sommario!
Reti Logiche Combinatorie
Reti Logiche Combinatorie Modulo 4 Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Microelettronica e Bioingegneria (EOLAB) Logica combinatoria Un blocco di logica
1.2f: Operazioni Binarie
1.2f: Operazioni Binarie 2 18 ott 2011 Bibliografia Questi lucidi 3 18 ott 2011 Operazioni binarie Per effettuare operazioni è necessario conoscere la definizione del comportamento per ogni coppia di simboli
Es. 05. Addizionatori (Half Adder, Full Adder); sommatori a n bit (con e. complemento a due e sottrazione; overflow.
Es. 05 Addizionatori (Half Adder, Full Adder); sommatori a n bit (con e senza riporto); conversione in complemento a due e sottrazione; overflow. Es. 1 Si scriva la tabella di verità per un addizionatore
Dalla tabella alla funzione canonica
Dalla tabella alla funzione canonica La funzione canonica è la funzione logica associata alla tabella di verità del circuito che si vuole progettare. Essa è costituita da una somma di MinTerm con variabili
I.4 Rappresentazione dell informazione - Numeri con segno
I.4 Rappresentazione dell informazione - Numeri con segno Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 20, 2015 Argomenti Introduzione 1 Introduzione
Circuiti di Indirizzamento della Memoria
Circuiti di Indirizzamento della Memoria Maurizio Palesi Maurizio Palesi 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di
