Reti Logiche A. Introduzione al VHDL

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Reti Logiche A. Introduzione al VHDL"

Transcript

1 Reti Logiche Introduzione al VHDL Gianluca Palermo Politecnico di Milano Dipartimento di Elettronica e Informazione gpalermo@fusberta.elet.polimi.it 1 Sommario Introduzione Struttura di un modello VHDL: Interfaccia del modello Funzionalità del modello Concetti base del VHDL: Livelli di astrazione Concorrenza Sequenzialità Gerarchia Temporizzazioni Diverse descrizioni VHDL 2

2 Introduzione La tecnologia microelettronica, basata sull utilizzo dei semiconduttori, ha subito un enorme evoluzione negli ultimi decenni. Il continuo incremento del livello di integrazione dei dispositivi microelettronici ha permesso la realizzazione di sistemi di complessità crescente. L elevato livello di integrazione implica: Raggiungimento di prestazioni sempre più spinte Riduzione dei costi umento dell affidabilità La rapida evoluzione tecnologica del mercato microelettronico rende un circuito rapidamente obsoleto Riduzione del time-to-market di un circuito o sistema digitale Riduzione dei tempi di sviluppo. Importanza strategica delle metodologie e dei tool CD (Computer ided Design) per raggiungere gli obiettivi di progetto nel rispetto dei tempi di sviluppo. 3 Obiettivo Creazione di modelli di circuiti e sistemi digitali utilizzando un linguaggio di descrizione dell hardware integrato in un ambiente di progetto ED (Electronic Design utomation) per la sintesi e la simulazione. HDL (Hardware Description Language): VHDL Verilog VHDL VHSIC Hardware Description Language Linguaggio per creare modelli di progetti hardware VHSIC Very High Speed Integrated Circuit mbienti di progetto per creare, compilare, e simulare modelli descritti in VHDL: ModelSim di Mentor Graphics 4

3 VHDL Nato negli anni 80 come progetto del U.S. Department of Defense. Version 7.2: prima versione pubblica del linguaggio disponibile nel IEEE Std : primo standard completo del linguaggio. IEEE Std : versione aggiornata del linguaggio rilasciata nel IEEE Std 1164: definisce un package standard per il tipo di dato MVL9 (Multi Valued Logic, 9 valori). 5 Il processo di modellizzazione in VHDL Lo sviluppo di un modello VHDL a partire dalla specifica concettuale avviene attraverso un processo di raffinamento basato sulla ripetizione delle fasi di compilazione, analisi e simulazione. Compilazione nalisi nalisi Simulazione La specifica concettuale consiste in una descrizione: dell INTERFCCI del modello; della FUNZIONLIT del modello. 6

4 Struttura di un modello VHDL Design Entity Entity Declaration INTERFCCI rchitecture ody FUNZIONLIT 7 Design Entity L unità di base di un modello VHDL consiste nella Design Entity, che può rappresentare un intero sistema, una PC (Printed Circuit oard), un circuito integrato oppure una porta logica elementare. La Entity Declaration definisce l interfaccia del modello. L rchitecture ody definisce la funzionalità del modello. Un modello VHDL può essere creato a diversi livelli di astrazione (behavioral, dataflow, structural) secondo un processo di raffinamento del modello iniziale. ll interno di un modello VHDL, ad una stessa Entity Declaration possono corrispondere diverse rchitecture ody. Ogni diversa architettura rappresenta una diversa realizzazione della stessa funzionalità del modello per mettere in luce un diverso aspetto progettuale cioè fornisce una diversa implementazione di una stessa funzionalità. 8

5 Modello VHDL Supporta descrizione della funzionalità del modello a diversi livelli di astrazione: DESCRIZIONE COMPORTMENTLE o EHVIORL supporta descrizioni algoritmiche; DESCRIZIONE FLUSSO DTI o DTFLOW supporta descrizioni a livello di trasferimento del flusso dati tra registri. DESCRIZIONE STRUTTURLE o STRUCTURL supporta descrizioni di strutture composte dall interconnessione di componenti di livello gerarchico inferiore. DESCRIZIONE MIST 9 Struttura di un modello VHDL Design Entity Entity Declaration rch. rch. 10

6 Specifica concettuale La specifica ad alto livello consiste in generale in una descrizione della funzionalità desiderata. Esempio: Creare una entity che riceve in ingresso due segnali digitali e genera in uscita un singolo segnale. Se entrambi i segnali di ingresso sono bassi, il segnale di uscita deve essere alto. Per ogni altra combinazione degli ingressi, l uscita deve essere bassa. entity C 11 nalisi della specifica entity C Generazione della tabella della verità: Ingressi Uscita C

7 Entity Declaration Definisce una entity e la sua interfaccia con l ambiente esterno, non definisce la funzionalità del modello. Formato: entity ENTITY_NME is [generic (names: type [:= expression])] port (PORT_LIST); --lista dei segnali di interfaccia end ENTITY_NME; Esempio: Simbolo del modello nor_gate e definizione della entity nor_gate. NOR_GTE C entity NOR_GTE is generic (delay : time:= 5ns); port (, : in bit; C : out bit); end NOR_GTE; 13 Istruzione PORT Identifica l insieme dei segnali di interfaccia della entity per comunicare con l ambiente esterno. Formato: port (NME_LIST: mode type; NME_LIST: mode type); Mode identifica la direzione del segnale cioè la direzione del flusso dati attraverso una porta (esempio in, out, inout). Type identifica il tipo del segnale cioè un insieme di valori che il segnale può assumere (esempio 0 e 1) e un insieme di operazioni che possono essere eseguite sul segnale. 14

8 Esempio di Entity Declaration Design Entity Entity Declaration entity NOR_GTE is port (, : in bit; C : out bit); end NOR_GTE; rchitecture ody 15 rchitecture ody Descrive la funzionalità del modello attraverso la definizione delle relazioni funzionali tra gli ingressi e le uscite di un modello. Formato: architecture ODY_NME of ENTITY_NME is -- istruzioni dichiarative -- istruzioni per descrivere la funzionalità del modello end ODY_NME; Esempio: NOR_GTE C architecture DT_FLOW of NOR_GTE is C <= nor ; end DT_FLOW; 16

9 Esempio di rchitecture ody Design Entity Entity Declaration rchitecture ody architecture DT_FLOW of NOR_GTE is C <= nor ; end DT_FLOW; 17 Modello VHDL NOR_GTE Design Entity Entity Declaration entity NOR_GTE is port (, : in bit; C : out bit); end NOR_GTE; rchitecture ody architecture DT_FLOW of NOR_GTE is C <= nor ; end DT_FLOW; 18

10 Creazione del Codice Sorgente Il codice sorgente VHDL può essere posizionato in qualunque directory e scritto usando un qualunque text editor. Il nome del codice sorgente VHDL può essere qualunque (anche se si consiglia di usare il nome stesso della entity) e il suffisso del file deve essere.vhd Esempio del codice nor_gate.vhd entity NOR_GTE is port (, : in bit; C: out bit); end NOR_GTE; architecture DT_FLOW of NOR_GTE is end DT_FLOW; C <= nor ; 19 Metodologia di Simulazione Il codice sorgente VHDL viene compilato, gli eventuali errori sintattici devono essere corretti e il codice deve essere ricompilato. Il codice compilato viene simulato per analizzare la correttezza della funzionalità descritta nel modello VHDL. Devono essere indicati al simulatore i segnali di ingresso, uscita ed eventualmente anche segnali interni le cui forme d onda devono essere tracciate nel Waveform Editor. Deve essere fornita al simulatore la sequenza degli stimoli relativi ai segnali di ingresso. nalisi delle forme d onda di uscita per verificare se rispecchiano il comportamento desiderato del circuito. C Esempio di simulazione per NOR_GTE

11 Concetti base del VHDL Supporta la descrizione della funzionalità del modello a diversi livelli di astrazione. Concorrenza: le strutture hardware sono intrinsecamente concorrenti e composte dall interconnessione di componenti elementari (le cui attività avvengono in parallelo). Il concetto di concorrenza supportato sia dai modelli strutturali sia dal concetto di processi multipli concorrenti tra loro. Supporta istruzioni sequenziali all interno di un processo. Gerarchia: data la complessità progettuale occorre organizzare il progetto su diversi livelli gerarchici, che possono essere descritti a diversi livelli di astrazione. Temporizzazioni: necessità di modellizzare l andamento temporale dei segnali attraverso la descrizione di forme d onda. 21 Livelli di astrazione di un modello VHDL Supporta la descrizione della funzionalità del modello a diversi livelli di astrazione: DESCRIZIONE COMPORTMENTLE (EHVIORL); DESCRIZIONE FLUSSO DTI (DTFLOW); DESCRIZIONE STRUTTURLE (STRUCTURL); DESCRIZIONE MIST. 22

12 Concorrenza Le strutture hardware sono intrinsecamente concorrenti e composte dall interconnessione di componenti elementari. Le attività sono svolte in parallelo dai diversi componenti. Una descrizione strutturale descrive l interconnessione tra componenti elementari. Z C D 23 Gerarchia Data la complessità progettuale occorre organizzare il progetto su diversi livelli gerarchici. Una descrizione di tipo strutturale descrive l interconnessione di componenti di livello gerarchico inferiore. I singoli componenti di livello gerarchico inferiore possono essere descritti a diversi livelli di astrazione. a half adder a sum temp sum b b cout half adder a sum sum cin b cout temp carry 2 full adder temp carry 1 or2 b a z cout 24

13 Dichiarazioni di costanti e segnali Una costante è un nome assegnato ad un valore fisso: costant name: type := expression; costant name: array_type(index_costraint) := expression; I segnali connettono le varie entity e comunicano i cambiamenti di valore tra i processi. signal name: type := expression; signal name: array_type(index_costraint) := expression; Esempi: costant vdd: Real:= 4.5; costant FIVE_to: std_logic_vector (0 to 3) := 0101 ; costant FIVE_downto: std_logic_vector (3 downto 0):= 1010 ; signal count: integer range 1 to 10; signal parity_bit: bit; signal system_bus: bit_vector (15 downto 0); 25 VHDL Strutturale Il VHDL strutturale è simile ai linguaggi presenti in altri strumenti CD per la descrizione dell elenco delle connessioni Per potere ottenere una descrizione VHDL di tipo strutturale è necessaria la dichiarazione dei componenti prima del loro uso Component component_name port( names : direction type ); end component; Esempio: nd a tre ingressi entity and3 is port (a3,b3,c3: in bit; o3: out bit); and3 end and3; architecture struct of and3 is and2 a3 and2 component and2 port(a2,b2: in bit; b3 o2: out bit); end component; c3 end struct; d3 26

14 VHDL strutturale -2 Una volta dichiarati i componenti vanno ora instanziati e connessi: label : component_name port map ( [named positional] ); Esempio: nd a tre ingressi entity and3 is port (a3,b3,c3: in bit; o3: out bit); end and3; architecture struct of and3 is component and2 port(a2,b2: in bit; o2: out bit); end component; signal int_sig: bit; u1: and2 port map ( a3, b3, int_sig); Positional u2: and2 port map ( a2=>int_sig, o2=>o3, b2=>c3); end struct; Named 27 Esempio: Modello di MUX2 Esempio: Scrivere il modello VHDL strutturale del componente MUX2 descritto dalla seguente specifica: MUX2 Z SEL SEL Z SEL NOT_SEL INV ND2 Z ND2 Z Z1 Z2 OR2 Z 28

15 Esempio: Modello di MUX4 Esempio: Scrivere il modello VHDL strutturale del componente MUX4 utilizzando come componenti i MUX2 precedentemente realizzati: MUX4 C Z D SEL1 SEL0 Ingressi Uscita SEL0 SEL1 C D Z Esempio: Modello di DMux Esempio: Scrivere il modello VHDL strutturale del componente DMUX4 utilizzando solo porte logiche: Z C D SEL0 SEL1 30

16 VHDL dataflow La descrizione Dataflow di un modello VHDL si basa sulla trasformazione dei segnali all interno della Entity. ssegnamento dei segnali signal_name <= value; Esempio Halfdder: architecture d_flow of Halfdder is sum <= a xor b; carry <= a and b; end d_flow; ssegnamento per i vettori: bus_out(4) <= data(2); rotate_sig(7 downto 0) <= sig(0 to 7); 31 Istruzioni Concorrenti Eseguite in parallelo nello stesso istante di tempo. Il loro comportamento è indipendente dall ordine con il quale sono scritte nel codice VHDL. Esempio: ISTRUZIONI DI SSEGNMENTO DEI SEGNLI: X <= and ; Z <= C and X; oppure Z <= C and X; X <= and ; C X Z La struttura hardware corrispondente è intrinsecamente concorrente e composta dall interconnessione di componenti elementari. Le attività sono svolte in parallelo dai diversi componenti. 32

17 ssegnamento dei segnali ssegnamenti posizionali SIGNL z_bus : bit_vector (3 downto 0); SIGNL a, b, c, d: bit; z_bus <= (a,b,c,d); ssegnamenti nominali z_bus <= (1=>b,0=>a,3=>d,2=>c); z_bus <= (3 downto 2 => 1, OTHERS => 0 ); ssegnamenti condizionali signal_name <= espression_1 when condition_1 else espression_2 when condition_2 else espression_n; with expression select signal_name <= espression_1 when choice_1, espression_1 when choice_n; 33 ssegnamento dei segnali -2 Esempio di buffer tri_state_8: entity tri_state_8 is port(bus_in: in std_logic_vector(0 to 7); en: in std_logic; tri_bus: out std_logic_vector(0 to 7)); end tri_state_8; --prima implementazione architecture d_flow_1 of tri_state_8 is tri_bus <= bus_in WHEN en = 1 ELSE (OTHERS => Z ); end d_flow_1; --seconda implementazione architecture d_flow_2 of tri_state_8 is with en select tri_bus <= bus_in WHEN 1, Z when others; end d_flow_2; 34

18 Esempi VHDL dataflow Esempio_1: Scrivere il modello VHDL dataflow del componente MUX2 precedentemente descritto. Esempio_2: Scrivere il modello VHDL dataflow del componente MUX4 precedentemente descritto. Esempio_3: Scrivere il modello VHDL dataflow del componente DMUX4 precedentemente descritto. 35 VHDL Comportamentale Descrive un architettura con uno stile simile a quello dei comuni linguaggi di programmazione Le istruzioni VHDL poste all interno di un processo sono eseguite sequenzialmente Processo Un processo è considerato una unica operazione concorrente. Il concetto di concorrenza si basa su processi multipli interagenti tra loro I segnali presenti in un processo sono tutti aggiornati alla fine dell esecuzione del processo 36

19 Process [label:] process [(sensitivity_list_of_inputs)] [declaration] sequenial_statements end process [label]; La sensitivity list è la lista dei segnali il cui cambiamento causa l attivazione del processo Le variabilio possono essere dichiarate solo tra l istruzione PROCESS ed il suo EGIN (parte dichiarativa del processo) WIT: wait for time; - viene sospesa l esecuzione del processo per un determinato tempo (usato nei test bench) wait on signal_list; - viene sospesa l esecuzione del processo fino al cambiamento di uno dei segnali presenti nella signal_list wait until condition; - viene sospesa l esecuzione del processo fino al verificarsi della condizione 37 Process -2 Esempio: --process con sensitivity list ff_d: process (clk) if clk= 1 then d <= q; end if; end process ff_d; --process con wait ff_d: process wait until clk event and clk= 1 ; d <= q; end process ff_d; Un processo basato sulla sensitivity list si arresta solo dopo aver eseguito la sua ultima istruzione Un processo con wait si arresta al raggiungimento del successivo wait. La sensitivity list del process ed il wait non possono essere presenti entrambi. 38

20 Dichiarazioni di variabili variable names: type [:= expression]; variable names: array_type(index_constraint)[:= expression] Esempi: variable cont: integer := 8; varaible data: std_ulogic; variable bus_in: bit_vector (0 to 7) := ; varaible data_in: std_ulogic_vector (15 downto 0); Gli assegnamenti a variabili sono istruzioni sequenziali e possono esistere solo all interno di descrizioni VHDL sequenziali (process). Un assegnamento a variabile ha effetto immediato a differenza di quello a segnale che può dipendere da un delay. ex_1: process (clk) variable a,b: integer:=0; a := a+1; b := a+b; end process ex_1; signal a,b: integer:=0; ex_2: process (clk) a <= a+1; b <= a+b; end process ex_2; I due processi sono apparentemente uguali ma non producono lo stesso risultato. 39 Processi Multipli Concorrenti e Istruzioni Concorrenti ll interno di un architettura possono essere presenti processi multipli concorrenti e istruzioni concorrenti: ad esempio architecture EX_conc of ENTITY is -- concurrent statements P1: process (sensitivity list of signals) -- sequential statements; end process P1; -- concurrent statements P2: process (sensitivity list of signals) -- sequential statements end process P2; -- concurrent statements end EX_conc; P1 signals P2 signals signals 40

21 Costrutti di Controllo del Codice Sequenziale Controllo Condizionato: Istruzioni IF Istruzione CSE Controllo Iterativo: Istruzione LOOP - FOR - WHILE 41 Istruzione IF Consente il controllo condizionato di gruppi di istruzioni sequenziali basato sulla valutazione di valori booleani. L istruzione IF verifica una condizione ed esegue diverse istruzioni in base al risultato. In presenza di IF annidati viene eseguita la serie di istruzioni sequenziali corrispondenti alla prima condizione che risulti vera Importante l ordine di scrittura delle condizioni PRIORITÀ Più di una condizione può risultare vera viene eseguita la prima condizione che risulta vera. Formato: if condition then sequential statements; [elsif condition2 then sequential_statements;] [else sequential statements;] end if; 42

22 Esempio IF Esempio: counter: process (clk, reset) if reset= 1 then count<=0; elseif (clk event and clk= 1 ) then if count=9 then count<=0; else count<=count+1; end if; end if; end process counter; 43 Istruzione CSE Consente il controllo dell esecuzione di istruzioni sequenziali basato sulla valutazione del valore assunto da un oggetto. Formato: case expression is when choice_1 => seq_statements; when choice_n => seq_statements; end case; Non devono esistere sovrapposizioni tra i vari casi e tutti i possibili casi devono essere inclusi o esplicitamente oppure attraverso la clausola when others Esempio: case intval is when 0 => z <= a; when 1 to 3 => z <= b; when => z <= c; when others => z <= X ; end case; Errore! 44

23 Istruzione FOR\WHILE LOOP Consente l esecuzione ripetuta di una sequenza di istruzioni. Formato: [Label:] for index in range loop sequential statements end loop [Label]; [Label:] while [condition] loop sequential statements end loop [Label]; Esempi: for I in 1 to 10 loop ISQURED(I) := I * I; end loop;! Index è automaticamente dichiarato come un integer e non può essere modificato nel loop while (DY = WEEKDY) loop DY := GETNEXTDY(DY); end loop; 45 Esempi di Istruzione FOR-LOOP Esempio: entity EX is port ( : in std_ulogic_vector (0 to 15); SEL : in integer range 0 to 15; Z : out std_ulogic); end EX; architecture FOR_EX of EX is WHT: process (, SEL) for I in 0 to 15 loop if SEL = I then Z <= (I); end if; end loop; end process WHT; end FOR_EX; 46

24 Esempio di Istruzione FOR-LOOP Esempio: entity PR_GEN is port ( : in std_ulogic_vector (3 downto 0); PR: out std_ulogic); end PR_GEN; architecture RC of PR_GEN is P1: process () variable TMP: std_ulogic; TMP := 0 ; for I in low to high loop TMP := TMP xor (I); end loop; PR <= TMP; end process P1; end RC; 47 Esempi VHDL comportamentale Esempio_1: Scrivere il modello VHDL comportamentale del componente MUX2 precedentemente descritto. Esempio_2: Scrivere il modello VHDL comportamentale del componente MUX4 precedentemente descritto. Esempio_3: Scrivere il modello VHDL comportamentale del componente DMUX4 precedentemente descritto. 48

25 Processo Combinatorio process (sensitivity_list_of_inputs) -- default assignments; -- combinatorial logic assignments; end process; INPUTS OUTPUTS Esempio MUX: process (,, SEL) if (SEL = '1 ) then Z <= ; else Z <= ; end if; end process MUX; SEL Z 49 Codice Sorgente di un Registro con Reset sincrono entity FLOP is port (D, CLK, RST : in std_ulogic; Q : out std_ulogic); end FLOP; architecture of FLOP is process (CLK, RST) if (RST = '1 ) then Q <= 0; elsif (CLK'event and CLK='1') then Q <= D; end if; end process; end ; D RST CLK Q 50

26 Latch Trasparente (Level Sensitive) entity LTCH is Port ( EN, D : in std_ulogic; Q: out std_ulogic); end LTCH; architecture of LTCH is process (EN, D) if (EN = 1 ) then Q <= D; end if; end process; end ; D EN Q 51 Descrizione RTL: Processo con Clock (2) process -- clocked process with no reset wait until (CLK event and CLK = 1 ); Q <= and ; -- all combinatorial logic assignments here; end process; process (CLK) --clocked process with no reset if (CLK event and CLK = 1 ) then Q <= and ; -- all combinatorial logic assignments here; end if; end process; D Q CLK 52

27 Descrizione RTL: Processo con Clock e Reset sincrono process (CLK, RST) clocked process with asynch. reset if (RST = 1 ) then Q <= 0; elsif (CLK event and CLK = 1 ) then Q <= and ; -- all combinatorial logic assignments here; end if; -- no else clause end process; RST D Q CLK 53 Descrizione RTL: Esempio di Processo con Clock (1) process wait until (CLK event and CLK = 1 ); X <= + ; Y <= C + D; Z <= X + Y; end process; C D CLK X Y CLK Z 54

Introduzione al VHDL Lezione 1

Introduzione al VHDL Lezione 1 Introduzione al VHDL Lezione 1 Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Via Comelico 39/41, I-20135 Milano (Italy) Tel.: +39-2-5835-6306 e-mail: silvano@elet.polimi.it

Dettagli

Calcolatori Elettronici Anno Accademico 2001/2002. Introduzione al VHDL. Sommario. Introduzione Struttura di un modello VHDL: Concetti base del VHDL:

Calcolatori Elettronici Anno Accademico 2001/2002. Introduzione al VHDL. Sommario. Introduzione Struttura di un modello VHDL: Concetti base del VHDL: Sommario alcolatori Elettronici nno ccademico 2001/2002 Introduzione al VHL Gianluca Palermo Politecnico di Milano ipartimento di Elettronica e Informazione e-mail: gpalermo@fusberta.elet.polimi.it Introduzione

Dettagli

Introduzione al VHDL Lezione 3

Introduzione al VHDL Lezione 3 Introduzione al VHDL Lezione 3 Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Via Comelico 39/41, I-20135 Milano (Italy) Tel.: +39-2-5835-6306 e-mail: silvano@elet.polimi.it

Dettagli

Introduzione al VHDL. Alcuni concetti introduttivi

Introduzione al VHDL. Alcuni concetti introduttivi Introduzione al VHDL Alcuni concetti introduttivi Riferimenti The VHDL Cookbook, Peter J. Ashenden, Reperibile nel sito: http://vlsilab.polito.it/documents.html The VHDL Made Easy, David Pellerin, Douglas

Dettagli

Descrizione VHDL di componenti combinatori

Descrizione VHDL di componenti combinatori Descrizione VHDL di componenti combinatori 5 giugno 2003 1 Decoder Il decoder è un componente dotato di N ingressi e 2 N uscite. Le uscite sono poste tutte a 0 tranne quella corrispondente al numero binario

Dettagli

Descrizioni VHDL Behavioral

Descrizioni VHDL Behavioral 1 Descrizioni VHDL Behavioral In questo capitolo vedremo come la struttura di un sistema digitale è descritto in VHDL utilizzando descrizioni di tipo comportamentale. Outline: process wait statements,

Dettagli

Note su VHDL. 22 gennaio 2004

Note su VHDL. 22 gennaio 2004 Note su VHDL 22 gennaio 2004 Design Entity L unità di base di un modello VHDL consiste nella Design Entity, che può rappresentare un intero sistema, un circuito stampato, un circuito integrato oppure una

Dettagli

architecture tipo_architettura of nome_del_modulo is begin architecture tipo_architettura of nome_del_modulo is

architecture tipo_architettura of nome_del_modulo is begin architecture tipo_architettura of nome_del_modulo is Struttura file.vhd. library IEEE; use IEEE.std_logic_64.all; use IEEE.std_logic_arith.all; link a librerie e package entity nome_del_modulo is port ( term,term2 : in std_logic; term3,term4 : out std_logic)

Dettagli

Sequential Processing

Sequential Processing Sequential Processing Istruzioni sequenziali: comandi eseguiti in maniera seriale, uno dopo l'altro (comune ai linguaggi di programmazione) TUTTE le istruzioni in una architecturesono concorrenti (vengono

Dettagli

Sommario. Modellizzazione Sintassi Classi di Oggetti Tipi di Dati e Operatori Package e Librerie Processi Esempi di codice VHDL VHDL Testbenches

Sommario. Modellizzazione Sintassi Classi di Oggetti Tipi di Dati e Operatori Package e Librerie Processi Esempi di codice VHDL VHDL Testbenches Fondamenti di VHDL Sommario VHDL: premessa e introduzione Modellizzazione Sintassi Classi di Oggetti Tipi di Dati e Operatori Package e Librerie Processi Esempi di codice VHDL VHDL Testbenches Premessa

Dettagli

Introduzione al VHDL. Alcuni concetti introduttivi

Introduzione al VHDL. Alcuni concetti introduttivi Introduzione al VHDL Alcuni concetti introduttivi Riferimenti The VHDL Cookbook, Peter J. Ashenden, Reperibile nel sito: http://vlsilab.polito.it/documents.html The VHDL Made Easy, David Pellerin, Douglas

Dettagli

Modello sequenziale. Modello sequenziale: i Process 13/11/2014. ENTITY ffsr IS Port ( s,r: IN std_logic; q, qn: OUT std_logic); END ffsr;

Modello sequenziale. Modello sequenziale: i Process 13/11/2014. ENTITY ffsr IS Port ( s,r: IN std_logic; q, qn: OUT std_logic); END ffsr; Modello sequenziale: i Process Modello sequenziale ENTITY ffsr IS Port ( s,r: IN std_logic; q, qn: OUT std_logic); END ffsr; ARCHITECTURE seq OF ffsr IS ( r PROCESS(s, IF s = 1 AND r = 0 THEN q

Dettagli

library ieee; use ieee.std_logic_1164.all; library IEEE; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; library STD; use STD.textio.

library ieee; use ieee.std_logic_1164.all; library IEEE; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; library STD; use STD.textio. VHDL Linguaggio di descrizione dell'hardware VHSIC Hardware Description Language VHSIC: Very High Speed Integrated Circuits VHDL Processi Attivati da qualche segnale Assegnazioni concorrenti A

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Seconda esercitazione

Seconda esercitazione Seconda esercitazione progetto e simulazione di registri e contatori Obiettivi analisi del costrutto «process» analisi di reti sequenziali a.a. 2-2 VHDL : Processi 2 un processo rappresenta uno statement

Dettagli

Architetture e Reti logiche. Esercitazioni VHDL. a.a. 2003/04 VHDL. Stefano Ferrari

Architetture e Reti logiche. Esercitazioni VHDL. a.a. 2003/04 VHDL. Stefano Ferrari Architetture e Reti logiche Esercitazioni VHDL a.a. 2003/04 VHDL Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università degli Studi di

Dettagli

Prima esercitazione. a.a

Prima esercitazione. a.a Prima esercitazione Progetto e simulazione di una semplice rete combinatoria Obiettivi Eseguire tutti i passi del flusso di progettazione Analizzare la struttura di un file.vhd Analizzare i costrutti principali

Dettagli

VHDL - Introduzione. //

VHDL - Introduzione. // VHDL - Introduzione VHDL = VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuits Scopo presentazione: introdurre un sottoinsieme del sottoinsieme del linguaggio VHDL utilizzabile

Dettagli

Architetture e reti logiche Esercitazioni VHDL a.a. 2006/07. UsodelVHDL. Stefano Ferrari

Architetture e reti logiche Esercitazioni VHDL a.a. 2006/07. UsodelVHDL. Stefano Ferrari Architetture e reti logiche Esercitazioni VHDL a.a. 2006/07 UsodelVHDL Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Architettureeretilogiche VHDL UsodelVHDL

Dettagli

Architetture e reti logiche. Esercitazioni VHDL. a.a. 2005/06. Uso del VHDL. Stefano Ferrari

Architetture e reti logiche. Esercitazioni VHDL. a.a. 2005/06. Uso del VHDL. Stefano Ferrari Architetture e reti logiche Esercitazioni VHDL a.a. 2005/06 Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università degli Studi di Milano

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

Reti Logiche A Appello del 24 febbraio 2010

Reti Logiche A Appello del 24 febbraio 2010 Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A Appello del 24 febbraio 2010 Matricola prof.ssa Cristiana Bolchini Cognome Nome

Dettagli

Introduzione ai tipi di dato astratti: applicazione alle liste

Introduzione ai tipi di dato astratti: applicazione alle liste Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione

Dettagli

Christian Pilato

Christian Pilato Politecnico di Milano Introduzione al VHDL Christian Pilato pilato@elet.polimi.it Sommario Introduzione Struttura di un modello Interfaccia Funzionalità Concetti base Livelli di astrazione Concorrenza

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. VHDL - Esempi. Martedì 13 Gennaio 2009

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. VHDL - Esempi. Martedì 13 Gennaio 2009 VHDL - Esempi Martedì 13 Gennaio 2009 Processi Un process è un'istruzione concorrente che contiene un'area sequenziale. Un processo viene eseguito parallelamente alle altre istruzioni concorrenti. L'esecuzione

Dettagli

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati Il Livello LogicoDigitale i Blocchi funzionali combinatori Circuiti integrati Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati

Dettagli

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

Dettagli

Reti sequenziali sincrone

Reti sequenziali sincrone Reti sequenziali sincrone Un approccio strutturato (7.1-7.3, 7.5-7.6) Modelli di reti sincrone Analisi di reti sincrone Descrizioni e sintesi di reti sequenziali sincrone Sintesi con flip-flop D, DE, T

Dettagli

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE hardware Firmware, software memorizzato su chip di silicio Sistema Operativo venduto con l, comprende vari programmi di gestione del sistema Applicativo,

Dettagli

Introduzione alla sintesi comportamentale

Introduzione alla sintesi comportamentale Introduzione alla sintesi comportamentale Valentino Liberali Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Via Bramante 65, 26013 Crema, Italy Tel.: +39-0373.898.247; Fax:

Dettagli

INFORMATICA 1 L. Mezzalira

INFORMATICA 1 L. Mezzalira INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello

Dettagli

Un linguaggio per la descrizione dello hardware: il VHDL

Un linguaggio per la descrizione dello hardware: il VHDL Un linguaggio per la descrizione dello hardware: il VHDL Gli Hardware Description Languages Gli HDL consentono lo sviluppo di un modello del comportamento dei sistema digitali. Gli HDL permettono l eseguibilità

Dettagli

Un linguaggio per la descrizione dello hardware: il VHDL

Un linguaggio per la descrizione dello hardware: il VHDL Un linguaggio per la descrizione dello hardware: il VHDL Gli Hardware Description Languages Gli HDL consentono lo sviluppo di un modello del comportamento dei sistema digitali. Gli HDL permettono l eseguibilità

Dettagli

Descrizione di un algoritmo

Descrizione di un algoritmo Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica

Dettagli

interfacciamento statico e dinamico analisi di interconnessioni, driver e receiver

interfacciamento statico e dinamico analisi di interconnessioni, driver e receiver Elettronica per telecomunicazioni 1 Contenuto dell unità D Interconnessioni interfacciamento statico e dinamico Integrità di segnale analisi di interconnessioni, driver e receiver Diafonia accoppiamenti

Dettagli

Esercizi VHDL nelle prove d esame di Architettura degli elaboratori (a.a. 2002/03)

Esercizi VHDL nelle prove d esame di Architettura degli elaboratori (a.a. 2002/03) Esercizi VHDL nelle prove d esame di Architettura degli elaboratori (a.a. 2002/03) 18 settembre 2003 Prova del 9 giugno 2003 Descrizione VHDL (a scelta, dataflow o comportamentale) di un decoder per il

Dettagli

Flusso di progetto circuiti digitali. Circuiti Integrati Digitali. Il Design Productivity Gap. Tecnologia Standard Cells

Flusso di progetto circuiti digitali. Circuiti Integrati Digitali. Il Design Productivity Gap. Tecnologia Standard Cells VHDL come strumento di progetto di circuiti digitali Antonio Deledda Corso di Progetto di sistemi elettronici L-A AA 2005-2006 adeledda@deis.unibo.it Tel. Interno 0512093829 Centro ARCES, Viale Pepoli

Dettagli

Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali

Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Introduzione al Flusso di Progetto di Circuiti e Sistemi Digitali Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Via Comelico 39/41, I-20135 Milano (Italy)

Dettagli

VHDL come strumento di progetto di circuiti digitali

VHDL come strumento di progetto di circuiti digitali VHDL come strumento di progetto di circuiti digitali Antonio Deledda Corso di Progetto di sistemi elettronici L-A AA 2005-2006 1 adeledda@deis.unibo.it Tel. Interno 0512093829 Centro ARCES, Viale Pepoli

Dettagli

Reti Logiche A. FSM in VHDL

Reti Logiche A. FSM in VHDL Reti Logiche A FSM in VHDL Gianluca Palermo Politecnico di Milano Dipartimento di Elettronica e Informazione e-mail: gpalermo@fusberta.elet.polimi.it Macchina a Stati Finiti (FSM) Tipo Moore IN NEXT STATE

Dettagli

Introduzione al VHDL Lezione 2

Introduzione al VHDL Lezione 2 Introduzione al VHDL Lezione 2 Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Via Comelico 39/41, I-20135 Milano (Italy) Tel.: +39-2-5835-6306 e-mail: silvano@elet.polimi.it

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

La Macchina Virtuale

La Macchina Virtuale Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore

Dettagli

Semicustom Design Flow VHDL HDL. VHDL: Applicazioni. Stili di Descrizione Hardware. Elettronica dei Sistemi Digitali L-A

Semicustom Design Flow VHDL HDL. VHDL: Applicazioni. Stili di Descrizione Hardware. Elettronica dei Sistemi Digitali L-A Technology Dependance Elettronica dei Sistemi Digitali L-A Università di Bologna, sede di Cesena Introduzione al linguaggio VHDL F.Campi A.a. 2004-2005 Design Iteration Semicustom Design Flow Pre-Layout

Dettagli

Algebra Di Boole. Definiamo ora che esiste un segnale avente valore opposto di quello assunto dalla variabile X.

Algebra Di Boole. Definiamo ora che esiste un segnale avente valore opposto di quello assunto dalla variabile X. Algebra Di Boole L algebra di Boole è un ramo della matematica basato sul calcolo logico a due valori di verità (vero, falso). Con alcune leggi particolari consente di operare su proposizioni allo stesso

Dettagli

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base: LA STRUTTURA DI RIPETIZIONE La ripetizione POST-condizionale La ripetizione PRE-condizionale INTRODUZIONE (1/3) Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto

Dettagli

$ % 16 dicembre Giovanni Beltrame 2

$ % 16 dicembre Giovanni Beltrame 2 ! "# $ % Giovanni Beltrame 2 & VHDL è un linguaggio di descrizione dell hardware (Hardware Description Language) Per hardware si intendono diverse cose a seconda del contesto L hw si può descrivere a vari

Dettagli

Xilinx ISE Tutorial File -> New Project...

Xilinx ISE Tutorial File -> New Project... Xilinx ISE Tutorial L obiettivo di questo tutorial è il mappaggio di una semplice porta logica AND su una particolare FPGA, la Xilinx Spartan 3E, integrata nella board Digilent Nexys 2 500K, che utilizzeremo

Dettagli

Elettronica per le telecomunicazioni 21/05/2004

Elettronica per le telecomunicazioni 21/05/2004 Contenuto dell unità D Elettronica per telecomunicazioni Interconnessioni interfacciamento statico e dinamico Integrità di segnale analisi di interconnessioni, driver e receiver Diafonia accoppiamenti

Dettagli

Macchine combinatorie

Macchine combinatorie Corso di Calcolatori Elettronici I A.A. 2010-2011 Macchine combinatorie Lezione 10 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Analisi e Sintesi di un sistema 1/2 Per analisi di

Dettagli

Flusso di progetto circuiti digitali

Flusso di progetto circuiti digitali Flusso di progetto circuiti digitali (anni 80/90) 1) Definizione Algoritmica : y=-x; 2) Schematic Entry 3) Custom Layout (place & route) 4) Parasitic extraction & Backannotation Il Design Productivity

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Tecniche di Simulazione: Introduzione. N. Del Buono:

Tecniche di Simulazione: Introduzione. N. Del Buono: Tecniche di Simulazione: Introduzione N. Del Buono: 2 Che cosa è la simulazione La SIMULAZIONE dovrebbe essere considerata una forma di COGNIZIONE (COGNIZIONE qualunque azione o processo per acquisire

Dettagli

Reti sequenziali. Esempio di rete sequenziale: distributore automatico.

Reti sequenziali. Esempio di rete sequenziale: distributore automatico. Reti sequenziali 1 Reti sequenziali Nelle RETI COMBINATORIE il valore logico delle variabili di uscita, in un dato istante, è funzione solo dei valori delle variabili di ingresso in quello stesso istante.

Dettagli

Calcolatori Elettronici M Modulo 2. 02 - Linguaggio VHDL Parte 1/2

Calcolatori Elettronici M Modulo 2. 02 - Linguaggio VHDL Parte 1/2 Calcolatori Elettronici M Modulo 2 02 - Linguaggio VHDL Parte 1/2 1 Caratteristiche dei linguaggi HDL Gli HDL, essendo linguaggio di programmazione finalizzati a modellare l HARDWARE, presentano delle

Dettagli

Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica. Metodologie e strumenti per il reengineering del workflow management

Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica. Metodologie e strumenti per il reengineering del workflow management Descrizione di Macchine a Stati finiti in VHDL Descrizioni di Macchine a Stati finiti in VHDL In questa lezione vedremo come un sistema digitale sequenziale può essere descritto in VHDL. Outline: Macchine

Dettagli

ISTITUTO ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA ANNO SCOLASTICO 2015/2016

ISTITUTO ISTRUZIONE SUPERIORE L. EINAUDI ALBA ANNO SCOLASTICO 2015/2016 ISTITUTO ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA ANNO SCOLASTICO 2015/2016 CLASSE 3 I Discip lina: Elettrotecnica ed Elettronica PROGETTAZIONE DIDATTICA ANNUALE Elaborata e sottoscritta dai docenti: cognome

Dettagli

Introduzione al VHDL VHDL. La storia. Corso introduttivo al VHDL. l acronimo di VHSIC Hardware Description Language

Introduzione al VHDL VHDL. La storia. Corso introduttivo al VHDL. l acronimo di VHSIC Hardware Description Language Introduzione al VHDL Corso introduttivo al VHDL Giovanni De Luca VHDL VHDL è l acronimo di VHSIC Hardware Description Language VHSIC è l acronimo di Very High Speed Integrated Circuit La storia Il VHDL

Dettagli

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE INDUSTRIA E ARTIGIANATO TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE DELLA FIGURA

Dettagli

ELETTRONICA DELLE TELECOMUNICAZIONI II ESERCITAZIONE DI LABORATORIO N.2 CODICE VHDL. Torino, 16/05/2005

ELETTRONICA DELLE TELECOMUNICAZIONI II ESERCITAZIONE DI LABORATORIO N.2 CODICE VHDL. Torino, 16/05/2005 Mauro Caule mat. 118381 Fabrizio Castellano mat. 122390 Luigi Fasano mat. 120730 ELETTRONICA DELLE TELECOMUNICAZIONI II ESERCITAZIONE DI LABORATORIO N.2 CODICE VHDL Torino, 16/05/2005 ENTITY sipo IS data_in:

Dettagli

Terza esercitazione. Progetto di una rete di controllo. Obiettivi Progetto e analisi di macchine a stati finiti. a.a

Terza esercitazione. Progetto di una rete di controllo. Obiettivi Progetto e analisi di macchine a stati finiti. a.a 1 Terza esercitazione Progetto di una rete di controllo Obiettivi Progetto e analisi di macchine a stati finiti 2 Macchina a Stati Finiti (FSM) Z(n)=f(x(n)) => Sistema Combinatorio Z(n)=f(x(n),x(n-1),x(n-2),..)

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

Dettagli

UNIVERSITA DEGLI STUDI DI FIRENZE. Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica !" #$ & +

UNIVERSITA DEGLI STUDI DI FIRENZE. Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica ! #$ & + UNIVERSITA DEGLI STUDI DI FIRENZE Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica!" #$ %&&'()* & + + Sommario INTRODUZIONE... 2 1.1 UN ESEMPIO... 3 PRINCIPALI CARATTERISTICHE DEL LINGUAGGIO...

Dettagli

Introduzione ai Metodi Formali

Introduzione ai Metodi Formali Intruzione ai Meti Formali Sistemi software anche molto complessi regolano la vita quotidiana, anche in situazioni life-critical (e.g. avionica) e business-critical (e.g. operazioni bancarie). Esempi di

Dettagli

Corso di Reti Logiche A

Corso di Reti Logiche A Politecnico di Milano Reti Logiche A Corso di Reti Logiche A Introduzione al VHDL - Una prima presentazione - VHSIC-HDL HDL Very High Speed Integrated Circuit - Hardware Description Language Marco D. Santambrogio:

Dettagli

Corso di Amministrazione di Reti A.A. 2002/2003

Corso di Amministrazione di Reti A.A. 2002/2003 Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

Calcolatori: Algebra Booleana e Reti Logiche

Calcolatori: Algebra Booleana e Reti Logiche Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato

Dettagli

MPHS AA FSM in VHDL

MPHS AA FSM in VHDL MPHS AA 28-29 FSM in VHDL Cristina Silvano Politecnico di Milano Dipartimento di Elettronica e Informazione e-mail: silvano@elet.polimi.it Macchina a Stati Finiti (FSM) Tipo Moore IN NEXT STATE LOGIC RST

Dettagli

Laurea Specialistica in Informatica

Laurea Specialistica in Informatica Corso di Laurea in FISICA Laurea Specialistica in Informatica Fisica dell informazione 1 Elementi di Architettura degli elaboratori Prof. Luca Gammaitoni Informazioni sul corso: www.fisica.unipg unipg.it/gammaitoni/fisinfoit/gammaitoni/fisinfo

Dettagli

Hazard sul controllo. Sommario

Hazard sul controllo. Sommario Hazard sul controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento al Patterson: 4.7, 4.8 1/28 Sommario Riorganizzazione

Dettagli

Quarta esercitazione

Quarta esercitazione 1 Quarta esercitazione Soluzione di una prova d esame Obiettivo Fornire una metodologia di progetto scomposizione in blocchi e definzione dei segnali interni diagramma degli stati della FSM scrittura del

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

Ciclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6

Ciclo di Istruzione. Ciclo di Istruzione. Controllo. Ciclo di Istruzione (diagramma di flusso) Lezione 5 e 6 Ciclo di Istruzione Può essere suddiviso in 4 tipi di sequenze di microoperazioni (cioè attività di calcolo aritmetico/logico, trasferimento e memorizzazione dei dati), non tutte necessariamente da realizzare

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Procedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM

Procedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM Procedure memorizzate SQL-2003/PSM Procedure memorizzate nel database Programmazione general-purpose Leggere sezione 8.2 di Garcia-Molina et al. Lucidi derivati da quelli di Jeffrey D. Ullman 1 Una estensione

Dettagli

Gestione del workflow

Gestione del workflow Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Sintassi. Le varie espressioni sintattiche scritte in VHDL si possono ricondurre ai seguenti oggetti: Scalari e Vettori Nomi Oggetti: Espressioni

Sintassi. Le varie espressioni sintattiche scritte in VHDL si possono ricondurre ai seguenti oggetti: Scalari e Vettori Nomi Oggetti: Espressioni Introduzione Il VHDL e costituito da vari formati (types)ed operatori (operators) per consentire simulazione e sintesi a vari livelli Nel package STANDARD si trovano descritti quegli oggetti destinati

Dettagli

Macchine combinatorie: encoder/decoder e multiplexer/demultiplexer

Macchine combinatorie: encoder/decoder e multiplexer/demultiplexer Corso di Calcolatori Elettronici I A.A. 20-202 Macchine combinatorie: encoder/decoder e multiplexer/demultiplexer Lezione 5 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di

Dettagli

Aritmetica dei Calcolatori 2

Aritmetica dei Calcolatori 2 Laboratorio di Architettura 13 aprile 2012 1 Operazioni bit a bit 2 Rappresentazione binaria con segno 3 Esercitazione Operazioni logiche bit a bit AND OR XOR NOT IN OUT A B A AND B 0 0 0 0 1 0 1 0 0 1

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

CPU. Maurizio Palesi

CPU. Maurizio Palesi CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore

Dettagli

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro

Dettagli

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

Testi di Esercizi e Quesiti 1

Testi di Esercizi e Quesiti 1 Architettura degli Elaboratori, 2009-2010 Testi di Esercizi e Quesiti 1 1. Una rete logica ha quattro variabili booleane di ingresso a 0, a 1, b 0, b 1 e due variabili booleane di uscita z 0, z 1. La specifica

Dettagli

Regole per la scrittura di VHDL Sintetizzabile. Fabio Campi. Corso di Elettronica dei Sistemi Digitali LS AA

Regole per la scrittura di VHDL Sintetizzabile. Fabio Campi. Corso di Elettronica dei Sistemi Digitali LS AA Regole per la scrittura di VHDL Sintetizzabile Fabio Campi Corso di Elettronica dei Sistemi Digitali LS AA 2003-2004 2004 VHDL Sintetizzabile Obiettivo: Mappare su celle Hardware di libreria, riferite

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

Corso di Linguaggi di Programmazione

Corso di Linguaggi di Programmazione Corso di Linguaggi di Programmazione Lezione 19 Alberto Ceselli alberto.ceselli@unimi.it Dipartimento di Tecnologie dell Informazione Università degli Studi di Milano 18 Maggio 2010 idea: sfruttare i

Dettagli

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO Linguaggi di programmazione classificati in base alle loro caratteristiche fondamentali. Linguaggio macchina, binario e fortemente legato all architettura. Linguaggi

Dettagli

DAL DIAGRAMMA AL CODICE

DAL DIAGRAMMA AL CODICE DAL DIAGRAMMA AL CODICE Un diagramma di flusso Appare, come un insieme di blocchi di forme diverse che contengono le istruzioni da eseguire, collegati fra loro da linee orientate che specificano la sequenza

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Capitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2.

Capitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2. Capitolo Quarto...2 Le direttive di assemblaggio di ASM 68000...2 Premessa...2 1. Program Location Counter e direttiva ORG...2 2. Dichiarazione di dati: le direttive DS e DC...3 2.1 Direttiva DS...3 2.2

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

FSM: Macchine a Stati Finiti

FSM: Macchine a Stati Finiti FSM: Macchine a Stati Finiti Sommario Introduzione Automi di Mealy Automi di Moore Esempi Introduzione Metodo per descrivere macchine di tipo sequenziale Molto utile per la descrizione di Unità di controllo

Dettagli

Il software e la programmazione

Il software e la programmazione Il software e la programmazione Concetti base sul software Elementi di programmazione Cenni sul linguaggio Pascal Che cosa è il software Determina ciò che un computer può fare Include istruzioni memorizzate

Dettagli

Appunti di Sistemi Elettronici

Appunti di Sistemi Elettronici Prof.ssa Maria Rosa Malizia 1 LA PROGRAMMAZIONE La programmazione costituisce una parte fondamentale dell informatica. Infatti solo attraverso di essa si apprende la logica che ci permette di comunicare

Dettagli