Sistemi Embedded ed FGPA. Stefano Rinaldi University of Brescia

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sistemi Embedded ed FGPA. Stefano Rinaldi University of Brescia"

Transcript

1 Sistemi Embedded ed FGPA Stefano Rinaldi University of Brescia

2 I sistemi di calcolo sono ormai ovunque Molti di noi pensano ai classici desktop PC notebook mainframe server Ma non sono gli unici Anzi i più diffusi forse sono altri...

3 Sistemi Embedded: Sistemi di calcolo integrati nei dispositivi elettronici Difficile da definire Praticamente comprende ogni sistema di calcolo che non sia un computer Miliardi di prodotti realizzati ogni anno, molti più dei milioni di PC Ce ne sono decine e decine in ogni nostra abitazione ed automobile

4 Eseguono una singola funzione Eseguono un singolo programma in modo ripetitivo Vincolati da diverse richieste: Low cost, low power, piccoli, veloci, ecc. Reattivi e real-time Devono essere in grado di reagire ai cambiamenti che avvengono attorno a lui Alcuni devono garantire il risultato in real-time senza ritardi variabili Hard vs soft real - time

5 Obiettivo principale del progetto: Sviluppare un dispositivo che supporti le funzionalità volute. Problemi in fase di progetto: Ottimizzare contemporaneamente più vincoli I vincoli di progetto dipendono dalla specifica applicazione

6 Costo Il costo di ogni copia del sistema Costi di progetto Costo dello sviluppo del sistema Dimensione Spazio fisico occupato dal sistema Prestazioni Tempo di esecuzione della logica Consumo Energia complessiva utilizzata dal sistema

7 Flessibilità La capacità del sistema di modificare le funzionalità senza incrementare i costi Time-to-prototype Tempo necessario per realizzare il prototipo funzionante Time-to-market Tempo richiesto per sviluppare un dispositivo che possa essere venduto Manutenibilità La capacità di modificare il sistema dopo il rilascio iniziale Correttezza, sicurezza, ed altro

8 L ottimizzazione delle richieste di solito richiede sia esperti in software che in hardware Non è sufficiente un esperto in uno solo dei campi Un progettista deve conoscere diverse tecnologie per scegliere la migliore per soddisfare le rischieste dell applicazione Hardware/software codesign

9 L architettura del sistema di calcolo utilizzato per implementare le funzionalità richieste dal sistema. Il processore non deve essere riprogammabile Processor non equivale sempre con processore general-purpose.

10 Dispositivo Programmabile utilizzato in diverse applicazioni. Noto anche come microprocessore Funzionalità Memoria Programma ALU generica Basso time-to-market e bassi costi di progetto Alta Flessibilità Il Pentium è il più noto, ma esistono diverse architetture

11 Circuiti digitali progettati per eseguire solo un programma Noti anche come coprocessori, acceleratori, o periferiche Contengono solo i componenti necessari per l esecuzione di un singolo programma Non prevedono memoria programma Veloci Bassi consumi Piccole dimensioni

12 Processori programmabili ottimizzati per una particolare classe di applicazioni Sono un compromesso tra le due categorie viste in precedenza Prevedono una memoria programma DataPath ottimizzato Hanno periferiche dedicate a specifiche funzioni Flessibili, buone prestazioni Ridotte dimensioni e consumi

13 Realizzazione di circuiti digitali dedicati a basso costo Tecnologia adottata per volumi di produzione ridotti (centinaia, migliaia di pezzi) Sostituiscono i circuiti integrati dedicati (ASICs) Diverse famiglie sviluppate negli anni: PLAs (Programmable Logic Arrays) Funzioni Logiche in forma di somma di prodotti; AND e OR programmabili. PALs (Programmable Array Logics) AND programmabili; OR fissi. GAL (Generic Array Logic) Come i PAL ma riprogramambili. CPLD (Complex Programmable Logic Device) Contengono circuiti equivalenti a centinaia di PAL connesse con link programmabili. FPGA (Field Programmable Gate Array)

14 < 1960 singolo transistor : SSI, MSI, LSI (10000 transistor) 1980: Programmable Logic Devices (PLA, PAL) Processori 16-bit, 32-bit (> transistor) 1990: Full custom chip Gate array (semi-custom chips) Field-Programmable Gate Arrays > transistor Primo transistor in silicio, (1954) 2009: > transistor Intel Quad-core Itanium (2 miliardi) Altera Stratix IV (2.5 miliardi)

15 transistor transistor Leading edge chip in 1981 Leading edge chip in 2009

16 Intel i486 (1988) 2300 transistor 1.2 milioni transistor P4 (2000) Core2 Duo (2006) 55 milioni transistor 291 milioni transistor 16

17 2.5 miliardi transistor

18 Dove sono utilizzate le FPGA? Consumer Automotive Test, Measurement & Medical Communications Broadcast Military & Industrial Computer & Storage 18

19

20

21 Set-Top Boxes Touch Panels DVD Players LCD, Plasma Displays/TVs Consumer Music Camcorders Printers Handheld Media Players 21

22 Altera Products: Cyclone III, Stratix II GX, Stratix III 22

23 Field Programmable Gate Arrays (FPGAs) Le FPGA sono basate su Look-up tables (LUT) Sono utilizzate per realizzare logica digitale molto complessa (es. microprocessori) Tipica architettura: Configurable Logic Block (CLB) Switch Matrix Input/Output Block Evoluzione recente: Blocchi di memoria Moltiplicatori/Moduli DSP, ecc.. Realizzazione di System On Chip (SoC)

24 Una Lookup table (LUT) implementa qualsiasi funzione logica a 4 ingressi LE delle nuove FPGA sono molto più complesse!!

25 IO cells Logic array block (LAB) Logic element LAB Programmable switch

26

27

28

29

30 Problema: Creare una applicazione in grado di processare molti dati velocemente Come? Alternative: Processore? Facile scrivere il codice, scarse prestazioni, elevato consumo Gate Array (ASIC)? Alte prestazioni, basso consumo, difficile da progettare, costoso da realizzare Field-Programmable Gate Array? nessun sviluppo hw, facile da sviluppare il codice, alte prestazioni, bassi consumi

31 Ethernet MAC Audio Codec CLK CLK Power Supply CLK GP I/O Address Decode Unit Memory Controller CPU (up / DSP) Interrupt Controller Co- Proc. UART custom IF-logic Timer L C SRAM SRAM SRAM SDRAM SDRAM Display Controller

32 Ethernet MAC FPGA Audio Codec CLK CLK Power Supply CLK GP I/O Address Decode Unit Memory Controller CPU (up / DSP) Interrupt Controller Co- Proc. UART custom IF-logic Timer L C SRAM SRAM SRAM SDRAM SDRAM Display Controller

33 Audio Codec EPROM Power Supply L C SRAM SRAM SRAM SDRAM SDRAM

34 Le prestazioni delle attuali FPGA sono tali da permettere l integrazione di processori al loro interno E possibile ottimizzare l hardware al fine di soddisfare i vincoli progettuali della specifica applicazione Diverse strategie: Processore descritto in codice VHDL Microprocessori integrati nell FPGA Soft-processor (NiosII, Microblaze, etc..)

35 In VHDL è possibile descrivere un microprocessore che va integrato con il resto del progetto Sono disponibili i sorgenti VHDL/Verilog per diverse architetture famose : 68hc5, 68hc8, 8051, 8080, z80, etc Li trovate anche: Richiedono l utilizzo dell ambiente di programmazione del microprocessore Compilatore Programmatore Etc..

36 Cyclone 5 SE, SX, TX, Altera Fino a elementi logici Massima Frequenza operativa 550 MHz Blocchi RAM con clock fino a 550 MHz IO speciale fino a 5 Gbps Ethernet MAC integrati (SPI, USB, ecc..) DSP (Digital Signal Processor) floating point Moduli DSP fino a 500 MHz Dual-core ARM Cortex-A9 MPCore processor fino a 800 MHz

37

38

39

40

41 Intellectual Proprierties (IP) Core Architettura RISC pipelined Istruzioni e dati a 32-bit Fino a 32 Interrupt con Priorità Cache Istruzioni e Dati opzionale Custom Instruction (es. big endian <-> little endian) Predizione dei Salti MMU e MPU opzionali Supporto di architetture Multi-Processor Può supportare OS (Operating System) dedicati (µc/osii) general purpose OS (µlinux/linux) hard real-time OS (Xenomai)

42 Cyclone II 20 Stratix IV ,752 LEs 820,000 LEs 42

43

44

45 Il processore Nios II è disponibile in tre versioni tra di loro compatibili Software FAST: ottimizzato per la prestazioni STANDARD: garantisce un bilanciamento tra le prestazioni e le risorse ECONOMY: ottimizzato per l occupazione delle risorse Il codice binario è compatibile Non servono modifiche al codice se si cambia la versione del processore

46

47

48 Sviluppo di codice embedded (NIOSII IDE) Assembler C/C++ Utilizzo di sistemi operativi Embedded Linux embedded: µclinux Linux Real-Time OS: RTAI Xenomai µc/os-ii

49

50

51 Istruzioni per il trasferimento dei dati Istruzioni Aritmetico-Logiche Istruzioni di Move Istruzioni di Confronto Istruzioni di Shift e rotate Istruzioni per il controllo del Programma Altre istruzioni di controllo Custom instruction Istruzioni No-operation

52 Istruzioni Tipo I Istruzioni Tipo R Istruzioni Tipo J

53

54

55

56

57

58

59

60 Progetto open source Versione stabile basata su Linux kernel 2.6 Caratteristiche del kernel Linux disponibili: process control filesystem networking device driver Struttura della memoria dedicata Separazione spazio kernel/applicazione Dimensione minima 1MB di RAM

61 Architecture supportate: Motorola 68k (68X302, 68306, 68X328, 68332, 68360) Motorola ColdFire (5206x, 5249, 5272, 5307, 5407) ARM (Atmel, NetSilicon, Aplio, TI, Samsung,...) Intel i960 (Jx, Kx, Cx, Hx, MC, VH) Sparc (LEON) MIPS (Brecis,...) Xilinx Microblaze (FPGA) Altera NIOS (FPGA) NEC v850 Hitachi H8/300 SuperH SH2 Motorola MCORE Opencores OpenRISC 1000 Analog Devices Blackfin

62 No memoria virtuale No protezione della memoria Tra kernel, processi e hardware! No fork(), solo vfork() Stack gestiti staticamente No sbrk() Frammentazione della memoria

63 PROCESS: full multi-tasking, XIP supportato API: system call standard di Linux IPC: software signals, shared memory! FILESYS: ROMfs, ext2, NFS, SMB, JFFS, proc, ISO9660 NETWORK: TCP/IP, PPP (PAP, CHAP), masquerading, routing, filtering, forwarding DRIVER: seriale, Ethernet, timer, IDE, MTD, audio, LCD, watchdog, PCI bus, PCMCIA MODULI: moduli supportati

64 La mancanza di MMU non crea problemi malloc() utilizza mmap() fork() va valutato caso per caso Limiti nell uso di malloc() Il kernel deve allocare lo spazio adatto Frammentazione della memoria Attenzione alle dimensioni dello stack!!

65 Librerie dinamiche supportate in alcune architetture uclibc è preferito a libc Piccole e poco pesanti Non un implementazione completa di libc Alcune piattaforme supportano glibc Thread supportati Altre librerie supportate: openssl, libpcap, libm, libdes, zlib, ecc..

66 TOOLS: sash, nwsh, sh, busybox, agetty, tinylogin, python, vi (clone) NETWORK: ifconfig, route, ping, ipfwadm, ftp, dhcpcd, telnet, traceroute, tcpdump, ssh SERVERS: init, inetd, pppd, diald, web server, telnetd, tfptd, samba, squid, snmpd, pppd, pptpd, Freeswan (IPsec), zebra FLASH: blkmem, netflash, flashw, MTD untils FILESYS: mount, nfsmount, smbmount, e2fsprogs, JFFS tools AUDIO: mp3 player, wav player.. E molte altre!

Sistemi Embedded ed FGPA

Sistemi Embedded ed FGPA Sistemi Embedded ed FGPA NOTA. Le slide con (*) sono solo un remind di cose già viste Stefano Rinaldi University of Brescia I sistemi di calcolo sono ormai ovunque Molti di noi pensano ai classici desktop

Dettagli

Elettronica dei Sistemi Programmabili

Elettronica dei Sistemi Programmabili Elettronica dei Sistemi Programmabili Introduzione Stefano Salvatori Università degli Studi Roma Tre (stefano.salvatori@uniroma3.it) Università degli Studi Roma Tre Elettronica dei Sistemi Programmabili

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Linux Embedded un pinguino piccolo così

Linux Embedded un pinguino piccolo così Linux Embedded un pinguino piccolo così Fabrizio Vacca fabrizio.vacca@microc.it Agenda Introduzione Sistemi embedded: hardware Sistemi embedded: software Piccola panoramica di progetti Open Source DEMO

Dettagli

introduzione I MICROCONTROLLORI

introduzione I MICROCONTROLLORI introduzione I MICROCONTROLLORI Definizione Un microcontrollore è un dispositivo elettronico programmabile Può svolgere autonomamente diverse funzioni in base al programma in esso implementato Non è la

Dettagli

Arduino UNO. Single board microcontroller

Arduino UNO. Single board microcontroller Arduino UNO Single board microcontroller Che cos è Arduino? Arduino è una piattaforma hardware basata su un microcontrollore, per lo sviluppo di applicazioni che possono interagire con il mondo esterno.

Dettagli

L Unità Centrale di Elaborazione

L Unità Centrale di Elaborazione L Unità Centrale di Elaborazione ed il Microprocessore Prof. Vincenzo Auletta 1 L Unità Centrale di Elaborazione L Unità Centrale di Elaborazione (Central Processing Unit) è il cuore di computer e notebook

Dettagli

Hardware di un Computer

Hardware di un Computer Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza

Dettagli

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione Sistemi embedded esistono molte definizioni nessuna universalmente riconosciuta. In generale con sistema embedded si intende un dispositivo incapsulato all'interno del sistema da controllare progettato

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore (CPU) la memoria principale (RAM) la memoria secondaria i dispositivi di input/output Il processore

Dettagli

Livello logico digitale. bus e memorie

Livello logico digitale. bus e memorie Livello logico digitale bus e memorie Principali tipi di memoria Memoria RAM Memorie ROM RAM (Random Access Memory) SRAM (Static RAM) Basata su FF (4 o 6 transistor MOS) Veloce, costosa, bassa densità

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

ARCHITETTURA DELL ELABORATORE

ARCHITETTURA DELL ELABORATORE 1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY ARCHITETTURA DELL ELABORATORE Prof. G. Ciaschetti 1. Tipi di computer Nella vita di tutti giorni, abbiamo a che fare con tanti tipi di computer, da piccoli o piccolissimi

Dettagli

Lezione E5. Sistemi embedded e real-time

Lezione E5. Sistemi embedded e real-time Lezione E5 sistema bare-metal Sistemi embedded e real-time 25 ottobre 2012 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E5.1 Di cosa parliamo

Dettagli

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata Lezione E4 sistema bare-metal Sistemi operativi open-source, embedded e real-time 22 ottobre 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SOSERT

Dettagli

I componenti di un Sistema di elaborazione. CPU (central process unit)

I componenti di un Sistema di elaborazione. CPU (central process unit) I componenti di un Sistema di elaborazione. CPU (central process unit) I componenti di un Sistema di elaborazione. CPU (central process unit) La C.P.U. è il dispositivo che esegue materialmente gli ALGORITMI.

Dettagli

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai Informatica di base Hardware: CPU SCHEDA MADRE HARDWARE DI UN PC 2 Hardware (parti fisiche) Sono le parti fisiche di un Personal Computer (processore, scheda madre, tastiera, mouse, monitor, memorie,..).

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

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. I Sistemi Operativi Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è il gestore di tutte le risorse

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

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010

Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010 Soft Control facile con RTX e Windows Embedded Standard 7 RTX 2009: funzionalità ed uso pratico Gianluigi Magnasco easitec S.r.l. Parma, 16 Settembre 2010 Definizione di Sistema Tempo Reale: Definizione

Dettagli

Software Open Source per sistemi embedded

Software Open Source per sistemi embedded Software Open Source per sistemi embedded Alberto Ferrante OSLab ALaRI, Facoltà di Informatica Università della Svizzera italiana ferrante@alari.ch Outline Introduzione Perché usare il software OS in ambito

Dettagli

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad Principi di architetture dei calcolatori: l architettura ARM. Mariagiovanna Sami Che cosa è ARM In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline

Dettagli

Vari tipi di computer

Vari tipi di computer Hardware Cos è un computer? Un computer è un elaboratore di informazione. Un computer: riceve informazione in ingresso (input) elabora questa informazione Può memorizzare (in modo temporaneo o permanente)

Dettagli

1.4a: Hardware (Processore)

1.4a: Hardware (Processore) 1.4a: Hardware (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.8, 3.9 IV ediz.: cap. 2.6, 2.7 Questi lucidi 23 nov 2011

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Il microprocessore 8086

Il microprocessore 8086 1 Il microprocessore 8086 LA CPU 8086 Il microprocessore 8086 fa parte della famiglia 80xxx della INTEL. Il capostipite di questa famiglia è stato l 8080, un microprocessore ad 8 bit che ha riscosso un

Dettagli

INTRODUZIONE AI SISTEMI EMBEDDED

INTRODUZIONE AI SISTEMI EMBEDDED 1 INTRODUZIONE AI SISTEMI EMBEDDED DEFINIZIONE DI SISTEMA EMBEDDED SVILUPPO HW/SW DI SISTEMI EMBEDDED \ DEFINIZIONE DI SISTEMA EMBEDDED UN SISTEMA EMBEDDED È UN SISTEMA DI ELABORAZIONE (COMPUTER) SPECIALIZZATO

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

DIMENSIONI E PRESTAZIONI

DIMENSIONI E PRESTAZIONI DIMENSIONI E PRESTAZIONI Prof. Enrico Terrone A. S: 2008/09 Le unità di misura Le due unità di misura fondamentali dell hardware sono: i Byte per le dimensioni della memoria gli Hertz (Hz) per le prestazioni

Dettagli

Linux lo installo a 32 o 64 bit? (teoria e pratica)

Linux lo installo a 32 o 64 bit? (teoria e pratica) Linux lo installo a 32 o 64 bit? (teoria e pratica) Roberto Metere 26 ottobre 2013 Accenni teorici E ad un certo punto... più bit Compatibilità e innovazione Sfida teorica Test pratici Sistema di riferimento

Dettagli

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore

Dettagli

Elettronica dei Sistemi Digitali Dispositivi logici programmabili

Elettronica dei Sistemi Digitali Dispositivi logici programmabili Elettronica dei Sistemi Digitali Dispositivi logici programmabili Valentino Liberali Dipartimento di Tecnologie dell Informazione Università di Milano, 6013 Crema e-mail: liberali@dti.unimi.it http://www.dti.unimi.it/

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del

Dettagli

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A.

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A. Sistemi Elettronici Definizioni e concetti generali Concetti generali Il microcontrollore è un dispositivo che raggruppa su un unico chip un processore ed un insieme di dispositivi CPU Memoria RAM Memoria

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù

CALCOLATORI ELETTRONICI A cura di Luca Orrù Lezione 1 Obiettivi del corso Il corso si propone di descrivere i principi generali delle architetture di calcolo (collegamento tra l hardware e il software). Sommario 1. Tecniche di descrizione (necessarie

Dettagli

Il Sistema Operativo (1)

Il Sistema Operativo (1) E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale

Dettagli

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo Il Sistema Operativo Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo ... ma Cos'è un S.O.? un PROGRAMMA!... ma Cos'è un programma? PROGRAMMA: 1. algoritmo sequenza

Dettagli

Lezione 3: Architettura del calcolatore

Lezione 3: Architettura del calcolatore Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile

Dettagli

Struttura del calcolatore

Struttura del calcolatore Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione

Dettagli

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia

Dettagli

Corso di Sistemi di Elaborazione A.A. 2008/2009

Corso di Sistemi di Elaborazione A.A. 2008/2009 Università di Ferrara Facoltà di Ingegneria Docente: Ing. Massimiliano Ruggeri Mail: m.ruggeri@imamoter.cnr.it mruggeri@ing.unife.it Tel. 0532/735631 Corso di Sistemi di Elaborazione A.A. 2008/2009 Durata:

Dettagli

Kartè VISION Il Digital signage cambia volto

Kartè VISION Il Digital signage cambia volto Kartè VISION Il Digital signage cambia volto VISION Facile. Pratico. Rivoluzionario. Digital Signage Il Digital Signage è una forma di comunicazione audiovisiva basata sulla distribuzione di contenuti

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli

IL DSP - Digital Signal Processor

IL DSP - Digital Signal Processor IL DSP - Digital Signal Processor Processore dei segnali digitali 1. Generalità Il Digital Signal Processor (DSP, processore di segnali digitali) è un particolare tipo di microprocessore, ottimizzato per

Dettagli

Il Processore: i registri

Il Processore: i registri Il Processore: i registri Il processore contiene al suo interno un certo numero di registri (unità di memoria estremamente veloci) Le dimensioni di un registro sono di pochi byte (4, 8) I registri contengono

Dettagli

L HARDWARE parte 1 ICTECFOP@GMAIL.COM

L HARDWARE parte 1 ICTECFOP@GMAIL.COM L HARDWARE parte 1 COMPUTER E CORPO UMANO INPUT E OUTPUT, PERIFERICHE UNITA DI SISTEMA: ELENCO COMPONENTI COMPONENTI NEL DETTAGLIO: SCHEDA MADRE (SOCKET, SLOT) CPU MEMORIA RAM MEMORIE DI MASSA USB E FIREWIRE

Dettagli

Calcolo numerico e programmazione Architettura dei calcolatori

Calcolo numerico e programmazione Architettura dei calcolatori Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:

Dettagli

SISTEMI E DISPOSITIVI EMBEDDED

SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED Fasar Elettronica propone un innovativa e performante famiglia di prodotti per l'ambiente embedded, che comprende sistemi completi e singoli

Dettagli

La memoria centrale (RAM)

La memoria centrale (RAM) La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M.

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

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Il calcolatore elettronico Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Introduzione Un calcolatore elettronico è un sistema elettronico digitale programmabile Sistema: composto da

Dettagli

FPGA: Introduzione. Dispositivi Programmabili. FPGA - Flessibilità e prestazioni. FPGA - Caratteristiche

FPGA: Introduzione. Dispositivi Programmabili. FPGA - Flessibilità e prestazioni. FPGA - Caratteristiche FPGA: Introduzione Dispositivi Programmabili FPGA (Field( Programmable Gate Arrays) Introduzione Famiglie di FPGA: architetture e tipi di blocchi I blocchi logici di base Flusso di progetto e technology

Dettagli

Introduzione ecos. Agenda. Giovanni Perbellini

Introduzione ecos. Agenda. Giovanni Perbellini Introduzione ecos Giovanni Perbellini Agenda Introduzione ecos Toolchain Download codice sorgente Binutils GCC/G++ Newlib GDB/Insight Compilazione toolchain Selezione Target Compilazione ecos Configtool

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

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Architettura dei calcolatori I parte Introduzione, CPU

Architettura dei calcolatori I parte Introduzione, CPU Università degli Studi di Palermo Dipartimento di Ingegneria Informatica C.I. 1 Informatica ed Elementi di Statistica 2 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore Sorce Architettura dei calcolatori

Dettagli

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario Lezione 2 Principi Fondamentali di SO Interrupt e Caching Sommario Operazioni di un SO: principi fondamentali Una visione schematica di un calcolatore Interazione tra SO, Computer e Programmi Utente 1

Dettagli

Modello dei processi. Riedizione delle slide della Prof. Di Stefano

Modello dei processi. Riedizione delle slide della Prof. Di Stefano Modello dei processi Riedizione delle slide della Prof. Di Stefano 1 Processi Modello di Processi asincroni comunicanti Process Scheduling Operazioni sui Processi Cooperazione tra Processi Interprocess

Dettagli

Sito personale e forum

Sito personale e forum www.delucagiovanni.com Corsi, Forum, Docs Robotics and A.I. Progetto di una CPU SAP1 Simple as Computer step-by by-step Giovanni De Luca Sito personale e forum .iniziamo con le installazioni Installazione

Dettagli

Gerarchia delle memorie

Gerarchia delle memorie Memorie Gerarchia delle memorie Cache CPU Centrale Massa Distanza Capacità Tempi di accesso Costo 2 1 Le memorie centrali Nella macchina di Von Neumann, le istruzioni e i dati sono contenute in una memoria

Dettagli

Implementazione di sistemi real time

Implementazione di sistemi real time Implementazione di sistemi real time Automazione 28/10/2015 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO HARDWARE ABSTRACTION LAYER IMPLEMENTAZIONE EVENT-DRIVEN IMPLEMENTAZIONE TIME-DRIVEN SISTEMI DI

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Sistemi di Automazione Industriale

Sistemi di Automazione Industriale Introduzione ai PLC Sistemi di Automazione Industriale Ridurre e/o eliminare il ruolo dell operatore umano Ogni sistema di automazione prevede: Sistema Controllato; è un generatore di eventi non prevedibili

Dettagli

Laboratorio di Informatica. Il computer

Laboratorio di Informatica. Il computer per chimica industriale e chimica applicata e ambientale LEZIONE 1 Il computer 1 INTRODUZIONE 2 1 L informatica È la disciplina scientifica che studia I calcolatori, nati in risposta all esigenza di eseguire

Dettagli

Microelettronica Corso di progettazione su SoC ARM:

Microelettronica Corso di progettazione su SoC ARM: Microelettronica Corso di progettazione su SoC ARM: Introduzione Stefano Salvatori Università degli Studi Roma Tre (stefano.salvatori@uniroma3.it) Università degli Studi Roma Tre Microelettronica 2013

Dettagli

3 Capitolo primo Informatica e calcolatori

3 Capitolo primo Informatica e calcolatori I n d i c e 3 Capitolo primo Informatica e calcolatori 7 Capitolo secondo La rappresentazione delle informazioni 11 2.1 La codifica dei caratteri 2.1.1 Il codice ASCII, p. 11-2.1.2 Codifiche universali,

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti:

Dettagli

8 Microcontrollori PIC

8 Microcontrollori PIC 8 Microcontrollori PIC 8.1 Descrizione generale Un microcontrollore è un dispositivo elettronico che opportunamente programmato è in grado di svolgere diverse funzioni in modo autonomo. Essenzialmente

Dettagli

Collegamento al sistema

Collegamento al sistema Collegamento al sistema Chi comanda il movimento della testina? Chi comanda la generazione del raggio laser? Chi si occupa di trasferire i dati letti in memoria centrale? Chi comanda la rotazione dei dischi?

Dettagli

Memoria Secondaria o di Massa

Memoria Secondaria o di Massa .. Pacman ha una velocità che dipende dal processore...quindi cambiando computer va più velocemente..sarà poi vero? Memoria Secondaria o di Massa dischi fissi (hard disk), floppy disk, nastri magnetici,

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

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich Università degli studi di Trieste Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica Sviluppo di un Driver per il Controllo di un Robot Mobile in Ambiente Multipiattaforma

Dettagli

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux UNIVERSITÀ POLITECNICA DELLE MARCHE FACOLTÀ DI INGEGNERIA Corso di Laurea Specialistica in Ingegneria Elettronica Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time

Dettagli

Hardware delle reti LAN

Hardware delle reti LAN Hardware delle reti LAN Le reti LAN utilizzano una struttura basata su cavi e concentratori che permette il trasferimento di informazioni. In un ottica di questo tipo, i computer che prendono parte allo

Dettagli

Il memory manager. Gestione della memoria centrale

Il memory manager. Gestione della memoria centrale Il memory manager Gestione della memoria centrale La memoria La memoria RAM è un vettore molto grande di WORD cioè celle elementari a 16bit, 32bit, 64bit (2Byte, 4Byte, 8Byte) o altre misure a seconda

Dettagli

Componenti di base di un computer

Componenti di base di un computer Componenti di base di un computer Architettura Von Neumann, 1952 Unità di INPUT UNITA CENTRALE DI ELABORAZIONE (CPU) MEMORIA CENTRALE Unità di OUTPUT MEMORIE DI MASSA PERIFERICHE DI INPUT/OUTPUT (I/O)

Dettagli

Architetture dei Dispositivi Programmabili Avanzati Altera

Architetture dei Dispositivi Programmabili Avanzati Altera Architetture dei Dispositivi Programmabili Avanzati Altera Elettronica dei Sistemi Digitali LS Bologna, 21 Novembre 2003 Aldo Romani aromani@deis.unibo.it tel. 051 209 3811 Lab. Star-Arces, V.le Pepoli,

Dettagli

Tecnologia dell Informazione

Tecnologia dell Informazione Tecnologia dell Informazione Concetti di base della tecnologia dell informazione Materiale Didattico a cura di Marco Musolesi Università degli Studi di Bologna Sede di Ravenna Facoltà di Giurisprudenza

Dettagli

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Materiali per il modulo 1 ECDL. Autore: M. Lanino Materiali per il modulo 1 ECDL Autore: M. Lanino RAM, l'acronimo per "random access memory", ovvero "memoria ad acceso casuale", è la memoria in cui vengono caricati i dati che devono essere utilizzati

Dettagli

Il sistema di elaborazione Hardware e software

Il sistema di elaborazione Hardware e software Il sistema di elaborazione Hardware e software A. Lorenzi M. Govoni TECNOLOGIE INFORMATICHE. Release 2.0 Atlas Hardware e software Un sistema di elaborazione è formato da: parti hardware: componenti fisiche

Dettagli

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX Parte 2 Struttura interna del sistema LINUX 76 4. ASPETTI GENERALI DEL SISTEMA OPERATIVO LINUX La funzione generale svolta da un Sistema Operativo può essere definita come la gestione dell Hardware orientata

Dettagli

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO PROGRAMMA Descrizione funzionale di un calcolatore elementare, COS'E' UN ELETTRONICO HARDWARE SOFTWARE HARDWARE

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di von Neumann rchitettura dei calcolatori: definizioni Evoluzione dell architettura rchitettura della

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Introduzione ai Microcontrollori Workshop 08/06/2011 Dott.Ing.Marco Frosini Qprel srl Dott.Ing.Lorenzo Giardina Qprel srl Slide 1 di 27 L'elettronica digitale PRIMA dei microcontrollori Elemento base:

Dettagli

Introduzione all'architettura dei Calcolatori

Introduzione all'architettura dei Calcolatori Introduzione all'architettura dei Calcolatori Introduzione Che cos è un calcolatore? Come funziona un calcolatore? è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso

Dettagli

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

INFORMATICA. Il Sistema Operativo. di Roberta Molinari INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:

Dettagli

COME È FATTO IL COMPUTER

COME È FATTO IL COMPUTER 1 di 8 15/07/2013 17:07 COME È FATTO IL COMPUTER Le componenti fondamentali Un computer, o elaboratore di dati, è composto da una scheda madre alla quale sono collegate periferiche di input e output, RAM

Dettagli

Hardware interno. Docenti: Dott. Stefano Bordoni Dott. Francesco Guerra. Facoltà di Economia, Università di Modena e Reggio Emilia

Hardware interno. Docenti: Dott. Stefano Bordoni Dott. Francesco Guerra. Facoltà di Economia, Università di Modena e Reggio Emilia Hardware interno Docenti: Dott. Stefano Bordoni Dott. Francesco Guerra Facoltà di Economia, Università di Modena e Reggio Emilia Hardware A prima vista... Alimentazione PC e Monitor Lettore DVD Porte Ps/2

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli