FPGA

Post on 25-Feb-2016

74 views 2 download

description

FPGA. Sistemi Elettronici Programmabili. FPGA: Architettura. FPGA: Logic Element (Block). FPGA: LUT – Look Up Table (2 Ingressi). NOTA - PowerPoint PPT Presentation

Transcript of FPGA

Sistemi Elettronici Programmabili

3-1

FPGA

Sistemi Elettronici Programmabili

Sistemi Elettronici Programmabili

3-2

FPGA: Architettura

LE LE LE LE

LE LE LE LE

LE LE LE LE

LE LE LE LE

VRC

VRC

VRC

HRC

HRC

HRC

IO

IO

IO IO

IM IM IM

IM IM IM

IM IM IM

Sistemi Elettronici Programmabili

3-3

FPGA: Logic Element (Block)

CLR

IN[3:0]

Q

QSET

CLR

D

CLK

S

LUTOUT

Sistemi Elettronici Programmabili

3-4

FPGA: LUT – Look Up Table (2 Ingressi)IN[0] IN[1]

OUT

0 0

0 1

1 0

1 1

0

0

0

1

ADD[0] ADD[1] OUT

0

1

1

1

0

1

1

0

OUT

AND OR XOR

Memory Words1 Bit

Q

QSET

CLR

DCDI CDO

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

IN[1:0]

CLK

OUT

Sistemi Elettronici Programmabili

3-5

FPGA LUT 2 INGRESSI

NOTAL’esempio è una LUT a due ingressi e quattro bit

di memoria. In ogni cella di memoria si può inserire il valore di una funzione di 2 bit – OR, AND, NOR, NAND, XOR, …- in funzione degli ingressi. Al momento del funzionamento IN [0,1] sceglie la cella di memoria – i quattro FF D – corrispondenti alla funzione desiderata

Sistemi Elettronici Programmabili

3-6

FPGA: Programmazione

Q

QSET

CLR

DCDI CDO

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

IN[1:0]

CLK

OUT

CLK

CDI(AND)

CDI(OR)

CDI(XOR)

Sistemi Elettronici Programmabili

3-7

FPGA: Programmazione (2)

CLK

CDI

LUT LUT LUT

Sistemi Elettronici Programmabili

3-8

FPGA: LUT

CDI

IN[3:0]

Q

QSET

CLR

D

CLK

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

QSET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

D

Q

Q SET

CLR

DCDO

OUT

Sistemi Elettronici Programmabili

3-9

FPGA: Routing (VRC)

LE LE

IN0

IN1

IN2

IN3

OUT

Sistemi Elettronici Programmabili

3-10

FPGA: Routing (IM)

Sistemi Elettronici Programmabili

3-11

FPGA: Programmazione (2)

CDI LUT LUT LUT LUT CDO

Q

QSET

CLR

DCDI

CLK

CDO

Sistemi Elettronici Programmabili

3-12

FPGA: Market

SRAM Based

Fuse Based

Sistemi Elettronici Programmabili

3-13

FPGA: Logic Element (Block) - ALTERA

Sistemi Elettronici Programmabili

3-14

ALTERA – Stratix: Architecture

Sistemi Elettronici Programmabili

3-15

Stratix: Logic Array Blocks

• 10 LEs per Logic Array Block (LAB)• Local Interconnect Drives LE Inputs• LAB-Wide Control Signals

LE14

4

4

4

4

4

4

4

4

4

Control Signals

LocalInterconnect

LE2

LE3

LE4

LE5

LE6

LE7

LE8

LE9

LE10

LogicElement

Logic ArrayBlock

Sistemi Elettronici Programmabili

3-16

FPGA: Progettazione

DescrizioneHDL Simulazione

IP

Library

SM

BlockDiagram

Sintesi

Place & Route

Simulazione

Simulazione

HardwareModel

HardwareModel

Configuration

Sistemi Elettronici Programmabili

3-17

FPGA: Programmazione (3)

FPGA

FPGA Configuration Device

AdapterJTAG

DataCTRL

FPGA

μC RAMDecoder

DataADD