INF3430. Kretsteknologier Programmeringsteknologier VHDL-Access datatyper

Like dokumenter
INF3430/4431. Kretsteknologier Max. kap. 3

Kretsteknologier (Max. kap. 3) Kretsteknologier. Kretsteknologier. Følgende gjelder for alle figurer hentet fra læreboka. Max. kap.

SRAM basert FPGA INF H10 1

Programmerbar logikk. CPLD og FPGA. Fys3270(4270)

Design med ASIC og FPGA (Max kap.7 og 18)

Design med ASIC og FPGA (Max kap.7 og 18)

I dag. Minne typar Minne mot bussar (fysisk grensesnitt generelt) Meir buss

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

FYS 3270(4270) Data-assistert konstruksjon av kretselektronikk (tidligere Fys 329) Fys3270(4270)

Teoretisk minnemodell Flyktig minne - SRAM -DRAM Ikke-flyktig minne -ROM -EPROM - EEPROM Flash

Datamaskiner og operativsystemer =>Datamaskinorganisering og arkitektur

Digital logic level: Oppsummering

INF1400 Kap 0 Digitalteknikk

INF3430/4431. Introduksjon til VHDL Spartan starterkit Spartan-3 FPGA

INF3430/4431. VHDL byggeblokker og testbenker

Forelesning 9. Registre, tellere og minne

INF3430. VHDL byggeblokker og testbenker

VLSI (Very-Large-Scale-Integrated- Circuits) it Mer enn porter på samme. LSI (Large-Scale-Integrated-Circuits)

Høgskolen i Gjøviks rapportserie, 2007 nr 8

DM6814/DM5814 User s Manual

INF3430/4430. Grunnleggende VHDL. 11-Sep-06

Avanserte byggeblokker (Maxfield kap.13 og 17)

Høgskolen i Gjøviks rapportserie, 2005 nr 4

INF1400 Kap 1. Digital representasjon og digitale porter

INF3430/4430. Grunnleggende VHDL

INF 3430/4430. Viktige momenter i syntese og for valg av teknologi

MAX MIN RESET. 7 Data Inn Data Ut. Load

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

Dagens temaer. Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) RAM ROM. Hukommelsesbusser

INF2270. Datamaskin Arkitektur

Internminnet. Håkon Tolsby Håkon Tolsby

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

UNIVERSITETET I OSLO

Oppsummering av digitalteknikkdelen

Dagens temaer. Dagens temaer er hentet fra P&P kapittel 3. Motivet for å bruke binær representasjon. Boolsk algebra: Definisjoner og regler

Dataveier og optimalisering. Kapittel 9

INF2270. Datamaskin Arkitektur

INF3340. Tilstandsmaskiner

SIE 4005, 8/10 (3. Forelesn.)

INF 3430/4430. UNISIM, SIMPRIM og Vital-bibliotekene Xilinx Corelib Test og design for testbarhet

INF3340/4340. Synkrone design Tilstandsmaskiner

Dagens temaer. Cache (repetisjon) Cache (repetisjon) Cache (repetisjon)

En teknisk historiefortelling

INF1510: Bruksorientert design

Kapittel 7, Minne RAM DIMM, SIMM ROM, PROM, EPROM, EEPROM FLASH DIM SUM. Cache Virtuelt minne

Organisering og ledelse av hardware-utvikling

bruksområder og oppbygging om cache-hukommelse (kapittel 6.5 i Computer Organisation Dagens temaer and Architecture ) ROM RAM

SUPER DISCLAIMER. Vi endrer opplegget litt fra år til år, og vi hører på dere!

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Simulering, syntese og verifikasjon (Max kap. 19)

UNIVERSITETET I OSLO

INF 3430/4431. Simuleringsmetodikk

HONSEL process monitoring

Universitetet i Oslo Institutt for informatikk. Adresse-generator for dataflybaserte beregninger. Cand. Scient. Rapport. Kjetil E.

INF 3430/4430. UNISIM, SIMPRIM og Vital-bibliotekene Xilinx Corelib Test og design for testbarhet

Digital Teknologi. Forelesning nr 1

Hovedpunkter. Digital Teknologi. Digitale Teknologi? Digitale Teknologi? Forelesning nr 1. Tall som kun er representert ved symbolene 0 og 1

INF Test og design for testbarhet

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

Repetisjon. Sentrale temaer i kurset som er relevante for eksamen (Eksamen kan inneholde stoff som ikke er nevnt her)

Trådløse Systemer. Arild Trobe Engineering Manager. Trådløse Systemer for å løse.. dette?

Forelesning 8. CMOS teknologi

INF3340/4431. Tilstandsmaskiner

Internminnet. Håkon Tolsby Håkon Tolsby

Cache (repetisjon) Cache (repetisjon) Cache (repetisjon) Dagens temaer. CPU Cache RAM. om cache-hukommelse (kapittel 6.5 i Computer Organisation

UNIVERSITETET I OSLO

Dagens tema. Dagens tema hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er. Tellere og registre

Elektroniksystem. Professor Per Larsson-Edefors. Elektroniksystem, Per Larsson-Edefors, 7 maj 2012 Sida 1

Høgskoleni østfold EKSAMEN. Emnekode: Emne: ITD13012 Datateknikk (deleksamen 1, høstsemesteret) Dato: Eksamenstid: kl til kl.

1 Innledning. 2 Virkemåte for kortet. Bli kjent med USB I/O kort K8055. NB! Ta med multimeter og lite skrujern!

INF 3430/4430. Simuleringsmetodikk

TFE4101 Krets- og Digitalteknikk Høst 2016


F5 IN Digitale byggeblokker. Yngve Hafting,

INF 3430/4430. Simuleringsmetodikk

ytelsen til hukommelseshierarkier

CTGA Meeting February 2, 2012

Litt mer om Arduino. Roger Antonsen Sten Solli INF januar 2011

Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

Høgskolen i Gjøviks rapportserie, 2001 nr 3

INF3430/4431. VHDL byggeblokker og testbenker forts.

UNIVERSITETET I OSLO

INF1400. Sekvensiell logikk del 1

INF3430/4431. Viktige momenter i syntese og for valg av teknologi Chipscope

Exercise 1: Phase Splitter DC Operation

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

Eksamen INF2270 våren 2018

Produkt datablad L 58 W/865

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

Del1: Setup: BIOS. 2. Hvor mye Internminne har den? 3GB DDR2

dynamiske data dynamiske data statiske data program dynamiske data statiske data reservert program dynamiske data statiske data reservert program

INF3430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer

Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

INF1400. Sekvensiell logikk del 1

IN1020. Logiske porter om forenkling til ALU

Anatomien til en kompilator - I

Transkript:

INF3430 Kretsteknologier Programmeringsteknologier VHDL-Access datatyper

l l l Programmable Read Only Memory a b c Predefined link Programmable link a b c Predefined link Programmable link Address 0 Address 1 Address 2 Address 3 Address 4 Address 5 Address 6 Address 7 a!a b!b c!c!a!b!c!a!b c!a b!c!a b c a!b!c a!b c a b!c a b c Programmable OR array Address 0 Address 1 Address 2 Address 3 Address 4 Address 5 Address 6 Address 7 a!a b!b c!c!a!b!c!a!b c!a b!c!a b c a!b!c a!b c a b!c a b c l l l Programmable OR array Predefined AND array w x y Predefined AND array w x y w = (a b) x =!(a b) y = (a b) ^ c INF3430-Kretsteknologier 2

Programmable Logic Array (PLA) Gir ikke full dekoding (har færre enn 2 n mintermer). Antall produktledd må minimaliseres, men ikke antall input variable. INF3430-Kretsteknologier 3

PLA eksempel l l l Programmable OR array Programmable a b c Predefined link Programmable link a b c a c!b!c a!a b!b c!c Predefined AND array w x y w = (a c) (!b!c) Programmablex = (a b c) (!b!c) y = (a b c) INF3430-Kretsteknologier 4

Programmable Array Logic (PAL) Som PLA, men med fast OR array Kan ikke dele produktledd mellom flere OR Mindre programmering (kun AND-array) Mindre fleksibilitet Re-programmerbare utgaver finnes (GAL) l l l Predefined OR array INF3430-Kretsteknologier 5

Programmerbar logikk arkitekturer Utvikling/Størrelse Krets med inn/ut-linjer, logikk, vipper og programmerbare forbindelseslinjer. Familier: SPLD - Simple Programmable Logic Device CPLD - Complex Programmable Logic Device FPGA - Field Programmable Gate Array CSoC - Configurable System-on-Chip INF3430-Kretsteknologier 6

SPLD - Simple Programmable Logic Device Kjennetegn: Minste og billigste typen av programmerbar logikk. Kort pin-to-pin delay Andre betegnelser: PROM (Programmable Read Only Memory) PLA (Programmable Logic Array) PAL (Programmable Array Logic, Vantis) GAL (Generic Array Logic, Lattice, Lattice) Programmering: Fuses eller ikke-flyktig minne som EPROM, EEPROM eller FLASH. INF3430-Kretsteknologier 7

PLD programmerer INF3430-Kretsteknologier 8

Eksempel: GAL22V10 (Lattice) INF3430-Kretsteknologier 9

Eksempel: GAL22V10 (Lattice) INF3430-Kretsteknologier 10

CPLD - Complex Programmable Logic Device Kjennetegn: En typisk CPLD har 2 til 64 ganger så mye logikk som en SPLD. Kort pin-to-pin delay Andre betegnelser: EPLD (Erasable Programmable Logic Device) PEEL EEPLD (Electrically-Erasable Programmable Logic Device) MAX (Multiple Array matrix, Altera) Programmering: Ikke-flyktig minne som EPROM, EEPROM eller FLASH (også SRAM er nå tilgjengelig). Vanlig nå med ISR (In-System Re-programable) gjennom JTAG interface. INF3430-Kretsteknologier 11

CPLD INF3430-Kretsteknologier 12

Eksempel-Max7000S (Altera) INF3430-Kretsteknologier 13

Eksempel-Max7000 (Altera) INF3430-Kretsteknologier 14

FPGA -Field Programmable Gate Array Kjennetegn: Tilbyr typisk en større mengde logikk på en krets enn det CPLD gjør. Andre betegnelser: LCA (Logic Cell Array) pasic (programmable ASIC), Cypress FLEX, APEX (Altera) ACT (Actel) ORCA (Lucent) Virtex (Xilinx) pasic (QuickLogic) Programmering: Statisk minne (SRAM) eller anti-fuse teknologi (også noen med EEPROM eller FLASH finnes). INF3430-Kretsteknologier 15

FPGA INF3430-Kretsteknologier 16

Eksempel på logikk blokk/celle (FPGA) Kombinatorisk logikk Sekvensiell logikk INF3430-Kretsteknologier 17

Look-Up Table (LUT) 0 0 INF3430-Kretsteknologier 18

Utvikling programmerbare kretser INF3430-Kretsteknologier 19

ASIC: Application Specific Integrated Circuit ASIC: Brukerutviklet IC INF3430-Kretsteknologier 20

Når bør en bruke FPGA (CPLD)? Status: Førstevalg for digital logikk design med unntak av: Enkle eller tidskritiske design (ASIC/PAL/diskret logikk bedre) Produkt skal produseres i stort antall (ASIC bedre) Veldig komplekse design (ASIC) Design der minimalisering av effektforbruk er kritisk (mobile applikasjoner) ASIC vs FPGA (2003) 1500 4000 nye ASIC prosjekter hvert år 450 000 nye FPGA prosjekter hvert år INF3430-Kretsteknologier 21

Fordeler med FPGA vs. ASIC Kortere utviklingstid på grunn av enkel reprogrammering. Kan re-programmeres i system ute i felt. Mindre økonomisk risiko (produksjon av en ASIC-krets er dyrt og den kan ikke reprogrammeres). INF3430-Kretsteknologier 22

Programmeringsteknologier for programmerbar logikk (Kap 2 og 4) Technology Symbol Predominantly associated with... Fusible-link SPLDs Antifuse FPGAs EPROM SPLDs and CPLDs E 2 PROM/ FLASH SPLDs and CPLDs (some FPGAs) SRAM SRAM FPGAs (some CPLDs) Alle teknikker trenger ekstra utstyr Varierer i overhead og kompleksitet INF3430-Programmeringsteknologier 23

Fusable link (sikringer) Fuses Logic 1 a F at Pull-up resistors F af b NOT F bt AND y = 0 (N/A) F bf NOT INF3430-Programmeringsteknologier 24

Antifuse Prinsipp: Konfigurasjon lagres i FPGA ved at det lages kortslutninger ved bruk av høy spenning. Fordeler Lav impedans når sikring er on (liten forsinkelse) Lavt strømforbruk Kompakt teknologi (tar lite plass) Ekstra pålitelig teknologi (relativt strålingsimmune) Ulemper Må programmeres i en egen programmeringsenhet Høy programmeringsspenning og -strøm Permanent programmering (kan kun programmeres en gang) INF3430-Programmeringsteknologier 25

Antifuse Unprogrammed antifuses Logic 1 a Pull-up resistors b NOT AND y = 1 (N/A) NOT Programmed antifuses Logic 1 a Pull-up resistors b NOT AND y =!a b NOT INF3430-Programmeringsteknologier 26

Antifuse Programmed antifuses Logic 1 a Pull-up resistors b NOT AND y =!a b NOT INF3430-Programmeringsteknologier 27

Floating-gate ((E)EPROM/FLASH) Prinsipp: Konfigurasjon lagres i krets i form av offset på gateinngangene til pass-transistorer. 3 typer programmering/sletting: UV-lys (EPROM) Høy spenning (EEPROM) Logisk spenning (FLASH) Fordeler Kan reprogrammeres Permanent, men re-programerbar Mer kompakt teknologi enn SRAM Ulemper Tidkrevende programmering INF3430-Programmeringsteknologier 28

EPROM INF3430-Programmeringsteknologier 29

Prinsipp: SRAM SRAM-minne inne i FPGA lagrer kretsens konfigurasjon Fordeler Kan programmeres uendeling mange ganger Kan lett deles mellom flere design Trenger ikke spesiell prosess Ulemper Plassoverhead (SRAM-celle med 5 transistorer) Flyktig minne (må lagre konfigurasjonen i eksternt permanent minne) INF3430-Programmeringsteknologier 30

Programmeringsteknologier for programmerbar logikk Technology Symbol Predominantly associated with... Fusible-link SPLDs Antifuse FPGAs EPROM E 2 PROM/ FLASH SRAM SRAM SPLDs and CPLDs SPLDs and CPLDs (some FPGAs) FPGAs (some CPLDs) Hvilke prog. logikk familier anvender typisk teknologiene? INF3430-Programmeringsteknologier 31

Programmeringsteknologier Feature SRAM Antifuse E2PROM / FLASH Technology node State-of-the-art One or more generations behind One or more generations behind Reprogrammable Yes (in system) No Yes (in-system or offline) Reprogramming speed (inc. erasing) Fast ---- 3x slower than SRAM Volatile (must be programmed on power-up) Yes No No (but can be if required) Requires external configuration file Yes No No Good for prototyping Yes (very good) No Yes (reasonable) Instant-on No Yes Yes Acceptable IP Security Very Good Very Good Size of configuration cell Power consumption (especially when using bitstream encryption) Large (six transistors) Medium Very small Low Medium-small (two transistors) Medium Rad Hard No Yes Not really INF3430-Programmeringsteknologier 32

Access datatyper Benyttes der størrelsen av data ikke er kjent på forhånd Dynamisk allokering av data Definerer pekere til data Benyttes for å lage en kompleks sammenheng mellom datatyper Scalare og composite datatyper ikke tilstrekkelig F.eks. lenka lister Benyttes i modellering/testbenker INF3430-Access datatyper 33

Deklarering og allokering count 0 count 10 INF3430-Access datatyper 34

Bruk av record datatyper INF3430-Access datatyper 35

Bruk array datatyper INF3430-Access datatyper 36

Lenka lister INF3430-Access datatyper 37

Lenka lister INF3430-Access datatyper 38

Lenka lister INF3430-Access datatyper 39

Lage stimuli ved lenka lister INF3430-Access datatyper 40

Søking i lenka lister INF3430-Access datatyper 41

Søking i lenka lister INF3430-Access datatyper 42

De-allokering Når vi definerer en accesstype får vi automatisk dannet en procedyre deallocate INF3430-Access datatyper 43

De-allokering INF3430-Access datatyper 44