Introduzione al VHDL Lezione 2
|
|
- Valentina Guerra
- 6 anni fa
- Visualizzazioni
Transcript
1 Introduzione al VHDL Lezione 2 Cristina Silvano Università degli Studi di Milano Dipartimento di Scienze dell Informazione Via Comelico 39/41, I Milano (Italy) Tel.: silvano@elet.polimi.it Assegnamento di Segnali Assegnamento di una forma d onda ad un segnale. Formato: TARGET_OBJECT <= WAVEFORM; Esempio: SIGNAL_A <= 0 ; 3/7/01 Cristina Silvano Università degli Studi di Milano 2
2 Assegnamento Condizionato di Segnali Assegnamento di una forma d onda ad un segnale basato sulla validità di una condizione. La condizione deve produrre un valore booleano. Formato: TARGET_OBJECT <= WAVEFORM_1 when CONDITION else WAVEFORM_2; Esempio: SIGNAL_A <= 0 when b = 1 else 1 when b = 0 else X ; 3/7/01 Cristina Silvano Università degli Studi di Milano 3 Oggetti Possibili tre classi per gli oggetti: Costanti Oggetti assegnati ad un valore iniziale che non può essere cambiato. Variabili Oggetti che ricevono un valore che può essere cambiato attraverso n istruzione i assegnamento tra variabili: OLD_VALUE := NEW_VALUE; Segnali Oggetti che ricevono dei valori associati ad un fattore temporale e che possono essere cambiati attraverso un istruzione di assegnamento tra segnali: OLD_VALUE <= 0; OLD_VALUE <= 10; 3/7/01 Cristina Silvano Università degli Studi di Milano 4
3 Istruzioni di assegnamento tra segnali I segnali sono caratteristici della descrizione hardware per modellare l informazione che transita nel tempo o su una singola net oppure su un bus. Segnali sono associati al concetto di FORMA D ONDA o WAVEFORM L istruzione di assegnamento tra segnali stabilisce un collegamento definitivo tra di essi. Esempio: signal A, Z : bit; Z <= A; A Z 3/7/01 Cristina Silvano Università degli Studi di Milano 5 Istruzioni di assegnamento tra segnali In presenza di istruzioni di assegnamento multiple è necessaria una funzione di risoluzione : NO signal A, B, Z: bit; Z <= A; Z <= B; A B? Z Il segnale Z deve essere un RESOLVED TYPE come std_logic: signal Z : std_logic; I tipi bit e std_ulogic sono UNRESOLVED TYPE e necessitano di un solo driver pilotante. 3/7/01 Cristina Silvano Università degli Studi di Milano 6
4 Istruzioni di assegnamento tra segnali Esempi: architecture CONCURRENT of MUL is A signal A, B, C, D: std_ulogic; signal Z: std_logic; begin Z <= A and B; Z <= C and D; end CONCURRENT; B C D? Z architecture SEQUENTIAL of MUL is signal A, B, C, D, Z: std_ulogic; begin process (A, B, C, D) begin Z <= A and B; Z <= C and D; end process; end CONCURRENT; C D Z 3/7/01 Cristina Silvano Università degli Studi di Milano 7 Dichiarazione di Oggetti Formato: object_class IDENTIFIER : type [:= INITIAL_VALUE]; Costanti: constant DELAY : time := 10 ns; constant MULTIPLIER : real := 5.25; Variabili: variable SUM : real; variable GROUND_VOLTAGE : integer := 0; Segnali: signal CLOCK : bit; signal RESET : std_ulogic := 0 ; Gli oggetti presenti nell istruzione port sono classificati di default come segnali. Se il valore iniziale non viene assegnato, si assume un valore corrispondente al valore minimo o left-most per quel tipo. 3/7/01 Cristina Silvano Università degli Studi di Milano 8
5 Tipi di Dati Ogni oggetto deve appartenere ad un tipo. Il tipo di dato identifica: un insieme di valori che un oggetto (costante, variabile o segnale) può assumere; un insieme di operazioni che possono essere eseguite sull oggetto stesso. Tipi di dati predefiniti - Esempi: bit, bit_vector, boolean, integer,.. Tipi di dati definiti dall utente - Esempio: type MY_STATE is (RESET, IDLE, READ, WRITE); signal STATE: MY_STATE; STATE <= RESET; STATE <= READ; 3/7/01 Cristina Silvano Università degli Studi di Milano 9 Tipi Predefiniti Certi tipi di dati scalari sono predefiniti e non richiedono un istruzione di dichiarazione di tipo. Esempi: boolean bit integer real character time severity_level 3/7/01 Cristina Silvano Università degli Studi di Milano 10
6 Tipi di Dati Scalar Numeric, Enumeration, Physical Composite Array, Record Access Insiemi di valori che puntano a variabili dinamiche. File Collezione di oggetti di dati esterni al modello. 3/7/01 Cristina Silvano Università degli Studi di Milano 11 Scalar Numeric type integer is range to ; type real is range E308 to E308; Enumeration type bit is ( 0, 1 ); type boolean is (false, true); Physical type time is range to UNITS fs; ps = 1000 fs ; ns = 1000 ps ; us = 1000 ns ; ms = 1000 us ; sec = 1000 ms ; min = 60 sec ; hr = 60 min ; end UNITS ; -- femtoseconds -- picoseconds -- nanoseconds -- microseconds -- milliseconds -- seconds -- minutes -- hours 3/7/01 Cristina Silvano Università degli Studi di Milano 12
7 Accesso a tipi comunemente usati La condivisione da parte di diverse entity di dichiarazioni di tipi e di operazioni tra tipi viene fatta attraverso dei costrutti noti come package. Tipi, procedure e funzioni comunemente usate sono poste in package standard come Std_Logic_1164 (IEEE standard). La dichiarazione library rende visibile ad un modello VHDL una libreria selezionata che contiene i package desiderati. La dichiarazione use rende un package visibile ad un modello. Esempio: library IEEE; use IEEE.Std_Logic_1164.all; 3/7/01 Cristina Silvano Università degli Studi di Milano 13 Std_Logic_1164 Il package Std_Logic_1164 è un package standard di IEEE che rappresenta un sistema basato su nove stati logici (MULTI VALUE LOGIC) e definisce i tipi std_logic (Resolved Type Uno o più driver pilotanti) e std_ulogic (Unresolved Type Solo un driver pilotante): type std_ulogic is ( U, X, 0, 1, Z, W, L, H, - ); -- Part of std_ulogic_ TYPE std_ulogic IS ( 'U', -- Uninitialized state - Used as default value 'X', -- Forcing Unknown - Bus Contention, error cond., etc. '0', -- Forcing 0 - Transistor driven to GND '1', -- Forcing 1 - Transistor driven to VCC 'Z', -- High Impedance - 3-state buffer outputs 'W', -- Weak Unknown - Bus terminators 'L', -- Weak 0 - Pull down resistors 'H', -- Weak 1 - Pull up resistors '-' -- Don't care ); 3/7/01 Cristina Silvano Università degli Studi di Milano 14
8 Std_Logic_1164 Il tipo std_logic è un tipo MULTI VALUE LOGIC che possiede RESOLUTION FUNCTION e può avere uno o più driver pilotanti. Possibile fare assegnamenti tra segnali di tipo std_logic e std_ulogic e viceversa. Esempi: signal A, B, Z : std_ulogic; signal RES_Z: std_logic; Z <= A; --OK RES_Z <= A; --OK A <= RES_Z; --OK RES_Z <= A; --OK RES_Z <=B; Z <= A; --NO Z <=B; 3/7/01 Cristina Silvano Università degli Studi di Milano 15 Std_Logic_1164 Esempio di utilizzo della libreria: library IEEE; use IEEE.Std_Logic_1164.all; entity MUX is port (A; B: in std_ulogic; Z: out std_ulogic); end MUX; 3/7/01 Cristina Silvano Università degli Studi di Milano 16
9 Concetto di vettore Bus Tipo bit e tipo bit_vector Esempio: signal Z_BUS: bit_vector(3 downto 0); signal A_BUS: bit_vector(1 to 4);... Z_BUS <= A_BUS; Equivale ad assegnamento bit per bit per posizione: Z_BUS(3) <= A_BUS(1); Z_BUS(2) <= A_BUS(2); Z_BUS(1) <= A_BUS(3); Z_BUS(0) <= A_BUS(4); Tipo std_logic e tipo std_logic_vector Tipo std_ulogic e tipo std_ulogic_vector 3/7/01 Cristina Silvano Università degli Studi di Milano 17 Concetto di vettore Bus Tipo bit e tipo bit_vector Esempio: signal Z_BUS: bit_vector(3 downto 0); signal A, B, C, D: bit;... CONCATENATION OPERATOR Z_BUS <= A & B & C & D; AGGREGATE OPERATOR Z_BUS <= (A, B, C, D); 3/7/01 Cristina Silvano Università degli Studi di Milano 18
10 Character e String Character: Singolo carattere Esempi: a 1 A Z 0 String: Stringa di caratteri Esempi: Hello /7/01 Cristina Silvano Università degli Studi di Milano 19 Operatori Un tipo di oggetto identifica anche un insieme di operazioni che possono essere eseguite sull oggetto. Operatori predefiniti: Operatori aritmetici: +, -, *, /, **, abs, mod, rem Segno: +, - Operatori di scorrimento: rol, ror, sla, sll, sra, srl Operatori misti: & Operatori relazionali: =, /=, <, <=, >, >= Operatori logici: and, or, nand, nor, not, xor, xnor 3/7/01 Cristina Silvano Università degli Studi di Milano 20
11 Operatori Logici Operatori logici predefiniti per i tipi bit e boolean: and or nand nor xor xnor not - Operatore a maggiore priorità Esempio: Z < = A and not (B or C) -- necessaria la parentesi per -- alterare la precedenza degli -- operatori 3/7/01 Cristina Silvano Università degli Studi di Milano 21 Operatori Relazionali Operatori relazionali predefiniti per i tipi bit e boolean: < -- less than <= -- less than or equal to > -- greater than >= -- greater than or equal to = -- equal to /= -- not equal to Esempio: if (A = B) then statement; La condizione (A = B) ritorna un valore boolean 3/7/01 Cristina Silvano Università degli Studi di Milano 22
12 Operatori Aritmetici Operatori aritmetici predefiniti: + -- addition - -- subtraction * -- multiplication / -- division ** -- exponential abs -- absolute mod -- modulus rem -- remainder 3/7/01 Cristina Silvano Università degli Studi di Milano 23 Operatori Gli operatori standard non sono definiti per i tipi di dati definiti dall utente come i tipi enumerativi. La definizione di come gli operatori standard sono applicati ai tipi di dati definiti dall utente fa parte del package nel quale il tipo di dato viene dichiarato. Esempio: La modalità con la quale gli operatori logici sono applicati agli oggetti di tipo std_ulogic è definita nel package std_logic_1164 3/7/01 Cristina Silvano Università degli Studi di Milano 24
13 Codice Sorgente xor_gate_logic.vhd Un architettura che realizza una semplice funzione logica può essere descritta utilizzando operatori logici xor gate library IEEE; use IEEE.Std_Logic_1164.all; entity XOR_GATE is port (A, B : in std_ulogic; C : out std_ulogic); end XOR_GATE; architecture LOGIC of XOR_GATE is begin C <= A xor B; end LOGIC; 3/7/01 Cristina Silvano Università degli Studi di Milano 25 Simulazione xor_gate_logic.vhd 3/7/01 Cristina Silvano Università degli Studi di Milano 26
14 Delay Il concetto di ritardo in un modello VHDL viene definito come il periodo di tempo che intercorre tra causa ed effetto. Delay: Inertial Transport Internal delay: Delta 3/7/01 Cristina Silvano Università degli Studi di Milano 27 Inertial Delay Modello senza ritardi: C <= A and B; Modelli con ritardo inerziale utilizzano l istruzione AFTER: Formato: NEW_SIGNAL <= SIGNAL_EXPR after TIME_PERIOD; Esempi: C <= A and B after 10 ns; D_OUT <= 1 after 10 ns, 0 after 20 ns, 1 after 30 ns, 0 after 40 ns; Q <= 1 after 10 ns when b = 1 else 0 after 5 ns; 3/7/01 Cristina Silvano Università degli Studi di Milano 28
15 Codice Sorgente xor_gate_logic_delayed.vhd xor gate library IEEE; use IEEE.Std_Logic_1164.all; entity XOR_GATE is port (A, B : in std_ulogic; C : out std_ulogic); end XOR_GATE; architecture LOGIC of XOR_GATE is begin C <= A xor B after 10 ns; end LOGIC; 3/7/01 Cristina Silvano Università degli Studi di Milano 29 Simulazione xor_gate_logic_delayed.vhd 3/7/01 Cristina Silvano Università degli Studi di Milano 30
16 Durata dei Segnali I segnali la cui durata è inferiore del ritardo specificato nell istruzione after sono ignorati Esempio: A <= B after 50 ns; Stimoli: force B 0 0 force B 1 50 force B force B force B run 250 Risultato: L impulso di durata 25 ns imposto al segnale b a 150 ns non viene trasmesso al segnale a. 3/7/01 Cristina Silvano Università degli Studi di Milano 31 Codice Sorgente ab_gate.vhd ab gate library IEEE; use IEEE.std_logic_1164.all; entity AB is port (B : in std_ulogic; A: out std_ulogic); end AB; architecture LOGIC of AB is begin A <= B after 50 ns; end LOGIC; 3/7/01 Cristina Silvano Università degli Studi di Milano 32
17 3/7/01 Cristina Silvano Università degli Studi di Milano 33 Opzione Transport L opzione transport permette di trasmettere la forma d onda presente su un segnale ad un altro segnale senza filtri. Esempio: A <= transport B after 50 ns; Stimoli: force B 0 0 force B 1 50 force B force B force B run 250 Risultato: L impulso di durata 25 ns imposto al segnale b a 150 ns viene trasmesso al segnale a. 3/7/01 Cristina Silvano Università degli Studi di Milano 34
18 Codice Sorgente ab_gate_transport.vhd ab gate_transport library IEEE; use IEEE.Std_Logic_1164.all; entity AB is port (B : in std_ulogic; A: out std_ulogic); end AB; architecture LOGIC of AB is begin A <= transport B after 50 ns; end LOGIC; 3/7/01 Cristina Silvano Università degli Studi di Milano 35 3/7/01 Cristina Silvano Università degli Studi di Milano 36
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
DettagliTipi di segnali (logici) predefiniti. Rappresentazione dei segnali in VHDL. Tipo bit (definito nel package standard)
Tipi di segnali (logici) predefiniti Tipo bit (definito nel package standard) Rappresentazione dei segnali in VHDL Approfondimento del corso di Linguaggi di descrizione dell hardware type Bit is ('0',
DettagliIntroduzione 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
DettagliSommario. 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
DettagliChristian 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
DettagliUn 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à
DettagliAddizione tra numeri binari
Addizione tra numeri binari A=a n-1 a n-2...a i...a 0 B=b n-1 b n-2...b i...b 0 s i =a i b i c in c out =a i b i + a i c in + b i c in a i b i FA c out c in S=s n s n-1 s n-2...s i...s 0 s i a n 1 b n
Dettagli14/11/2012. Il VHDL 3 parte. Tipi. Tipi scalari INTEGER; REAL; Tipo Fisici; BOOLEAN; CHARCTER; BIT ENUMERATO; Tipo composto ARRAY RECORD FILE ACCESS
Il VHDL 3 parte Tipi Tipi scalari INTEGER; REAL; Tipo Fisici; BOOLEAN; CHARCTER; BIT ENUMERATO; Tipo composto ARRAY RECORD FILE ACCESS 1 Definizione di un nuovo tipo TYPE Nome_tipo IS Definizione_tipo;
DettagliDIPARTIMENTO 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
DettagliIntroduzione 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
DettagliUn 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à
DettagliIntroduzione 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
DettagliEsercizi 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
DettagliQuarta 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
DettagliIntroduzione 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:
DettagliIntroduzione 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
DettagliUniversità degli Studi di Milano
Università degli Studi di Milano Laurea in Informatica e Sicurezza dei sistemi e delle reti informatiche Elementi di VHDL STEFANO FERRARI Architetture e reti logiche Elementi di VHDL Pagina 2 di 68 Indice
DettagliReti Logiche A. Introduzione al VHDL
Reti Logiche Introduzione al VHDL Gianluca Palermo Politecnico di Milano Dipartimento di Elettronica e Informazione e-mail: gpalermo@fusberta.elet.polimi.it 1 Sommario Introduzione Struttura di un modello
Dettagliinterfacciamento 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
DettagliFacoltà 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
Dettaglilibrary 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
DettagliCalcolatori 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
DettagliRegole 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
DettagliELETTRONICA dei SISTEMI DIGITALI Universita di Bologna, sede di Cesena
ELETTRONICA dei SISTEMI DIGITALI Universita di Bologna, sede di Cesena Fabio Campi Aa 2003-2004 Elettronica dei Sistemi Digitali Fabio Campi, fcampi@deis.unibo.it (con parsimonia ) 051/2093834 http://www.micro.deis.unibo.it/~campi/esd_2004
DettagliIntroduzione al linguaggio VHDL
DEIS Dipartimento di Elettronica Informatica e Sistemistica Universita di Bologna Introduzione al linguaggio VHDL PARTE I Stefano Mattoccia e-mail: smattoccia@deis.unibo.it Telefono: +39 051 2093860 Bologna,
DettagliDescrizioni 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,
DettagliRELAZIONE DEL PROGETTO DI UN CONTATORE BINARIO UP/DOWN MODULO 4 PER IL CORSO DI APPARATI ELETTRONICI 1. INTRODUZIONE
RELAZIONE DEL PROGETTO DI UN CONTATORE BINARIO UP/DOWN MODULO 4 PER IL CORSO DI APPARATI ELETTRONICI 1. INTRODUZIONE In generale un contatore è un dispositivo che memorizza (e a volte visualizza) il numero
DettagliCalcolatori Elettronici M Modulo Introduzione all ambiente Xilinx ISE 12.3 e ISIM
Calcolatori Elettronici M Modulo 2 06 Introduzione all ambiente Xilinx ISE 12.3 e ISIM 1 Questi lucidi forniscono una sintetica introduzione all ambiente di sviluppo Xilinx ISE 12.3 utilizzando come riferimento
DettagliLezione E15. Sistemi embedded e real-time
Lezione E15 Logiche Sistemi embedded e real-time 24 gennaio 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E15.1 Di cosa parliamo in
DettagliLaboratorio di Elettronica Introduzione al VHDL
Laboratorio di Elettronica 1 Introduzione al VHDL HDL nel flusso di progettazione digitale Elementi base del VHDL Meccanismo di simulazione Meccanismo di sintesi 2 1 Organizzazione del corso Lezione 1:
DettagliLa libreria STD La libreria MODELSIM_LIB Il package TEXTIO Struttura dei testbench. La libreria standard IEEE è composta 6 package
VHDL Testbenches La libreria IEEE La libreria STD La libreria MODELSIM_LIB Il package TEXTIO Struttura dei testbench La libreria IEEE La libreria standard IEEE è composta 6 package std_logic_1164 std_logic_arith
DettagliCorso di Calcolatori Elettronici 2 Università di Napoli, Federico II. Il VHDL come linguaggio (v1.0) Roadmap
Roadmap In questo capitolo vedremo gli elementi sintattici e semantici base del linguaggio VHDL. Outline: Elementi lessicali Identificatori Oggetti (costanti, segnali, variabili) Tipi (interi, physical,
DettagliIntroduzione al linguaggio VHDL
Introduzione al linguaggio VHDL Il VHDL è un linguaggio per la sintesi e la simulazione di circuiti digitali, uno standard per la descrizione dell hardware E stato introdotto negli anni 80 nell ambito
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Università di Camerino Corso di Laurea in Informatica (12 CFU) I periodo didattico Emanuela Merelli email:emanuela.merelli@unicam.it Argomenti della lezione Elementi di un linguaggio
DettagliModelli VHDL per simulazioni a basso livello
Modelli VHDL per simulazioni a basso livello Per simulare reti il cui comportamento non può essere descritto in termini puramente logici (0, 1) il VHDL mette a disposizione la possibilità descrivere insiemi
DettagliLinguaggi di descrizione dell hardware Progetti a.a. 2016/17
Linguaggi di descrizione dell hardware Progetti a.a. 2016/17 I progetti vengono assegnati dal docente sulla base delle preferenze degli studenti. Si raccomanda di inserire come soggetto in qualsiasi mail
DettagliPASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth.
PASCAL standard Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. Nb: primi linguaggi furono: Fortran, Algol, Ada, Cobol (cfr testo)
DettagliVHDL. Il linguaggio FOCUS
ON Il linguaggio VHDL di Antonio Di Stefano Il linguaggio VHDL consente di descrivere ed implementare circuiti complessi utilizzando tecnologie quali FPGA, CPLD, ASIC e structured ASIC. In questo articolo
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliReti 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
DettagliSistemi per la Progettazione Automatica. problema punti massimi i tuoi punti problema 1 14 problema 2 4 problema 3 6 problema 4 6 totale 30
Sistemi per la Progettazione Automatica Informatica - Tiziano Villa 17 Marzo 2008 Nome e Cognome: Matricola: Posta elettronica: problema punti massimi i tuoi punti problema 1 14 problema 2 4 problema 3
DettagliIL VHDL. Perché si usa un linguaggio di descrizione dell'hardware? Permette di formalizzare il progetto di sistemi digitali complessi
IL VHDL Cosa è il VHDL? NON è un linguaggio di programmazione! E' uno standard IEEE per la descrizione dell'hardware VHDL: VHSIC Hardware Description Language VHSIC: Very High Speed Integrated Circuit
DettagliRiepilogo su FSM. Descrizione di macchine a stati tramite VHDL. Esempio di FSM (Moore) Esempio di FSM (Moore)
Riepilogo su FSM Descrizione di macchine a stati tramite VHDL M. Favalli Engineering Department in Ferrara FSM: i) insieme finito di simboli di ingresso; ii) insieme finito di simboli di uscita; iii) un
DettagliIndice. Ordine di valutazione. Espressioni in C++ Le espressioni in C++ (CAP 4) Alberto Garfagnini e Marco Mazzocco A.A. 2014/ * 20 / 2
Le espressioni in C++ (CAP 4) Indice Le espressioni in C++ : precedenze e associatività degli operatori Alberto Garfagnini e Marco Mazzocco Università degli studi di Padova A.A. 2014/2015 gli operatori
DettagliLaboratorio di Calcolatori Elettronici
Laboratorio di Calcolatori Elettronici Introduzione al VHDL Progettare utilizzando VHDL: dall esempio al costrutto 1 di 72 Ringraziamenti Questo dispensa è stata sviluppata nell ambito del corso di Calcolatori
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra
Dettagli1. Introduzione. Il VHDL è un linguaggio per la descrizione dell hardware (un Hardware Description Language), che può essere utilizzato per la
1. Introduzione. Il VHDL è un linguaggio per la descrizione dell hardware (un Hardware Description Language), che può essere utilizzato per la documentazione, la simulazione e la sintesi di sistemi digitali.
DettagliCapitolo 2 Introduzione alla programmazione in C
Capitolo 2 Introduzione alla programmazione in C Introduzione Un semplice programma C: Stampa di una linea di testo Un altro semplice programma C: Sommare due interi Concetti sulla Memoria Aritmetica in
DettagliTUTORIAL 3. Realizzazione di un contatore su scheda XSA50. A cura di De Pin Alessandro
TUTORIAL 3 Realizzazione di un contatore su scheda XSA50 A cura di De Pin Alessandro 1 Problema proposto In questo tutorial ci si propone di realizzare un contatore che, associato ad un display a sette
DettagliLinguaggio C: Espressioni
Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università
DettagliArray in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica
Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo
DettagliFlusso di Progetto Mixed Signal in ambiente CADENCE. Approccio Analog Centric. Corso di Progettazione Mixed Signal 19/12/2013 Prof.
Flusso di Progetto Mixed Signal in ambiente CADENCE Approccio Analog Centric Ambiente per Progetto Analogico Full-Custom Ambiente CAD: CADENCE Virtuoso Schematic Virtuoso Schematic Editor Simulation ADE:
DettagliCostrutti per il controllo del flusso di esecuzione
Costrutti per il controllo del flusso di esecuzione Fondamenti di informatica L-B Laboratorio Alessandro Falchi afalchi@deis.unibo.it Operatori (1) PRECEDENZA ASSOCIATIVITÀ OPERATORE TIPO/I DEGLI OPERANDI
DettagliBreve guida al linguaggio FORTRAN 77
Breve guida al linguaggio FORTRAN 77 Variabili (valori di default) Iniziali con lettere da I a N Iniziali con lettere da A a H oppure da O a Z variabili intere, 4 byte in precisione singola variabili reali,
Dettagli28/02/2014 Copyright V. Moriggia
Informatica per la Finanza 3 Le variabili in VBA Altri I/O 28/02/2014 Copyright 2005-2007 V. Moriggia 1 28/02/2014 3.2 Le variabili in VBA V. Moriggia 1 28/02/2014 3.3 Dichiarazione di variabili in VBA
DettagliIntroduzione 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)
DettagliDescrizione 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
DettagliCostanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
DettagliSintesi Logica dal livello RTL. FPGA Xilinx Virtex II
Sintesi Logica dal livello RTL FPGA Xilinx Virtex II 1 Sintesi Logica dal livello RTL La Sintesi Logica si occupa di trasformare la descrizione di un circuito a livello RTL (Register Transfer Level) in
DettagliLe etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j
L insieme delle istruzioni (2) Architetture dei Calcolatori (lettere A-I) Istruzioni per operazioni logiche: shift Shift (traslazione) dei bit di una parola a destra o sinistra sll (shift left logical):
DettagliIntroduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
Dettaglisenza stato una ed una sola
Reti Combinatorie Un calcolatore è costituito da circuiti digitali (hardware) che provvedono a realizzare fisicamente il calcolo. Tali circuiti digitali possono essere classificati in due classi dette
DettagliReti Logiche Appello del 1 marzo 2011
Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi prof.ssa Cristiana Bolchini Esercizio n. 1 Si consideri la macchina sequenziale sincrona a
DettagliIl livello logico digitale
Il livello logico digitale prima parte Introduzione Circuiti combinatori (o reti combinatorie) Il valore dell uscita in un determinato istante dipende unicamente dal valore degli ingressi in quello stesso
DettagliMetodologie di Progettazione Hardware-Software
Metodologie di Progettazione Hardware-Software Il Very High Speed Integrated Circuit Hardware Description Language ( VHDL ) Metodologie di Progettazione Hardware/Software LS Ing. Informatica 1 Gli Hardware
DettagliIstruzioni condizionali di diramazione in Fortran 90
Istruzioni condizionali di diramazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Istruzioni di diramazione DIS - Dipartimento
DettagliStructured Query Language
IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un
DettagliElaborato di Architettura dei Sistemi Integrati
Elaborato di Architettura dei Sistemi Integrati Indice Indice... 1 Prima Esercitazione: Adder a 16bit... 3 Seconda Esercitazione: ALU del processore... 7 Modulo aritmetico... 7 Modulo logico...11 ALU Unità
DettagliIntroduzione a Matlab
INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi
DettagliMATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA
MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere
DettagliIntroduzione al C++ (continua)
Introduzione al C++ (continua) I puntatori Un puntatore è una variabile che contiene un indirizzo di memoria pi_greco 3.141592 pi_greco_ptr indirizzo di 3.141592 & DEREFERENZIAZIONE RIFERIMENTO * se x
DettagliFORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77. Introduzione. Introduzione. PROGRAM {nome} {dichiarazioni}
Introduzione Introduzione PROGRAM {nome} {istruzioni (statements)} Struttura Esempio 1 col. 01-05 : statement label (opzionale) col. 06 : continuazione linea col. 07-72 : FORTRAN statements col. 73-80
DettagliUtilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali:
1 Tipi di dati 1 Tipi di dati Utilizza i tipi di dati comuni a tutto il framework.net Accesso nativo ai tipi.net (C# è nato con.net) Concetti fondamentali: Tutto è un oggetto Tutto eredita implicitamente
DettagliIntroduzione al VHDL per logiche programmabili
1 Introduzione al VHDL per logiche programmabili Programma del corso 1) Introduzione al VHDL! Perché utilizzare il VHDL 2) PAL, CPLD e FPGA! Descrizione di una PAL! Descrizione di una CPLD! Descrizione
DettagliEspressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica!
Espressioni Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica! Valutazione automatica di expr aritmetiche = obiettivo primario dei primi LP
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliComplementi ed Esercizi di Reti Logiche in VHDL
Calcolatori Elettronici M Complementi ed Esercizi di Reti Logiche in VHDL in collaborazione con Francesco Maria Sprotetto 1 Premessa In questo progetto sono stati implementati gli esercizi descritti in
DettagliESERCITAZIONE 5!! 7 dicembre 2016!! Programmazione concorrente in ADA!!
ESERCITAZIONE 5!! 7 dicembre 2016!! Programmazione concorrente in ADA!! 1 Programmazione concorrente in ADA 2 Risorse utili Compilatore linux: gnat Comando per compilazione: gnat make programma.adb Per
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliFortran. Introduzione.
Fortran Introduzione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Esistono molti linguaggi di programmazione usati in vari
DettagliLa descrizione ai terminali dell unità di controllo è la seguente:
Elettronica dei Sistemi Digitali Linguaggi di Descrizione Hardware - Prova d esame 5 Luglio 2004 Come tutti ben sanno un tachimetro da bicicletta misura la velocità e la distanza percorsi dal velocipede
DettagliIndice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3
Introduzione...vii Organizzazione del libro... viii Struttura del libro e convenzioni... ix Codice sorgente e progetti... x Compilare ed eseguire direttamente i listati e gli snippet di codice... x Compilare
DettagliDESCRIZIONE DEL FUNZIONAMENTO
I FLIP FLOP 1.1. Flip Flop Set Reset In figura è rappresentato un f/f set reset con porte NAND. Si tratta del blocco fondamentale alla base di tutti i tipi di F/F. Tabella di verità del Flip Flop Set Reset
DettagliLaboratorio di Matlab
Laboratorio di Matlab Alessandro Formaglio Dipartimento di Ingegneria dell Informazione, Università di Siena alex@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html 21 Luglio 2009 DII
DettagliIndice. 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
DettagliLogica Digitale. Fondamenti di Informatica - Prof. Gregorio Cosentino
Logica Digitale 1 Ma in fondo quali sono i mattoncini che compongono un calcolatore elettronico? Porte Circuiti Aritmetica Memorie Bus I/O And, Or, Nand, Nor, Not Multiplexer, Codif, Shifter, ALU Sommatori
DettagliProgrammazione. 1 Introduzione. Tutto per la gloria di Dio.
Programmazione Tutto per la gloria di Dio. 1 Introduzione Un programma è un piano di azione che deve essere eseguito da un esecutore, di solito uno strumento automatico, la maggior parte delle volte un
DettagliReti Logiche A Esame del 19 febbraio 2007
Politecnico di Milano Dipartimento di Elettronica e Informazione prof.ssa Anna Antola prof. Fabrizio Ferrandi Reti Logiche A Esame del 9 febbraio 007 Matricola prof.ssa ristiana Bolchini Esercizio n. Data
DettagliLINGUAGGIO PDL2. Caratteristiche del linguaggio PDL2. Struttura del programma. Rappresentazione dei dati. Istruzioni. Gestori di condizione
LINGUAGGIO PDL2 Caratteristiche del linguaggio PDL2 Struttura del programma Rappresentazione dei dati Istruzioni Gestori di condizione Ambiente di programmazione CARATTERISTICHE DEL LINGUAGGIO PDL2 Orientato
DettagliProgrammazione con il linguaggio LibreOffice Basic
Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software
DettagliRiassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div
MIPS load/store word, con indirizzamento al byte aritmetica solo su registri Istruzioni Significato add $t1, $t2, $t3 $t1 = $t2 + $t3 sub $t1, $t2, $t3 $t1 = $t2 - $t3 mult $t1, $t2 Hi,Lo = $t1*$t2 div
DettagliTecnologie e Progettazione dei sistemi Informatici e di Telecomunicazioni Scheda Recupero Estivo Obiettivo
Tecnologie e Progettazione dei sistemi Informatici e di Telecomunicazioni Scheda Recupero Estivo Classe IIIG Il recupero estivo nella materia sarà valutato con un test scritto, durante i giorni dedicati
DettagliMETODOLOGIE PROGETTUALI CMOS
METODOLOGIE PROGETTUALI CMOS Un sistema elettronico/circuito integrato può essere descritto in tre diversi domini, comportamentale (behavior), strutturale e fisico. All interno di ciascun dominio la descrizione
DettagliLezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly
Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliIl livello logico digitale
Il livello logico digitale porte logiche e moduli combinatori Algebra di commutazione Algebra booleana per un insieme di due valori Insieme di elementi A={,} Operazioni NOT (operatore unario) => = e =
DettagliAnalizzatore lessicale o scanner. Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser.
Analizzatore lessicale o scanner Dispensa del corso di Linguaggi e Traduttori A.A. 2005-2006 Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser. Lo scanner,
DettagliProgrammazione web lato client con JavaScript. Marco Camurri 1
Programmazione web lato client con JavaScript Marco Camurri 1 JavaScript E' un LINGUAGGIO DI PROGRAMMAZIONE che consente di inserire codice in una pagina web Sintassi simile a Java (e al C), ma NON E'
DettagliLogica booleana, Costrutto IF
Logica booleana, Costrutto IF Informatica@SEFA 207/208 - Lezione 4 Massimo Lauria http://massimolauria.net/courses/infosefa207/ Mercoledì, 4 Ottobre 207 La logica booleana 2
DettagliESERCITAZIONE 6 12 dicembre Soluzione
ESERCITAZIONE 6 12 dicembre 2013 Soluzione 1 Politiche basate su priorità: necessità di selezionare la richieste da servire Vettore delle operazioni di servizio: Family of entries Es. 2 livelli di priorità
DettagliL utility Unix awk [Aho-Weinberger-Kernighan]
L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più
Dettagli