82
Programabilna digitalna kola

Programabilna digitalna kolaes.elfak.ni.ac.rs/ams/Materijal/Lab/PLD.pdf · 2013-12-06 · Arhitektura mikrosistema Standard-cell ASIC o IC se konstruiše od pred-projektovanih modula

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Programabilna digitalna kola

Arhitektura mikrosistema

Klasifikacija IC

IC projektovana za datu primenu

Arhitektura mikrosistema

Full-Custom ASICo Projektovanje do nivoa layout-a

n Vremenski zahtveno n Mogućnost postizanja visokih

performansio Projekat IC-a se dostavlja fabrici

poluprovodnika gde se IC fabrikuje

o Skupa tehnologija (visoki fiksni, početni troškovi)

o Tipičan projekat traje više meseci

Arhitektura mikrosistema

Standard-cell ASICo IC se konstruiše od pred-

projektovanih modula (standardnih ćelija)

o Standardne ćelije se projektuju u full-custom tehn. (neko drugi ih projektuje)

o Manji rizik i ušteda u vremenuo Postoji i veće ćelije

(mikroprocesori i sl. - tzv. hard-cores)

Arhitektura mikrosistema

Standard-cell ASICo Ćelija (različitih dužina) se kao cigle u zidu

raspoređuju u redoveo Većina veza prolazi kroz kanale između redova,

mada neke ćelije mogu služiti kao prolazi između redova

Arhitektura mikrosistema

Gate-Array ASICo IC je delimično fabrikovano (ćelije, napajanje ćelija i sl.)o Kada se projekat IC-a dostavi fabrici, IC se dorađuje

nanošenjem slojevi metala (radi povezivanja tranzistora) o Smanjeno vreme fabrikacijeo Niži troškovi

Arhitektura mikrosistema

PLDo Standardna IC, dostupna u standardnim

pakovanjima i proizvedena u velikim serijamao Mogućnost konfigurisanja/programiranja radi

realizacije specijalizovanog kola

Arhitektura mikrosistema

PLDo Klasifikacija:n SPLD (Simple PLD): PLA + PAL + ROMn CPLD (Complex PLD)n FPGA (Field-Programmable Gate Array)

Arhitektura mikrosistema

PLAo Bolova algebra: Svaka logička

funkcija se može predstaviti u vidu zbira logičkih proizvoda.Npr.f1 = x1’x2x3’ + x2x4’ + x1x4

o PLA: dve programabilne mreže: n AND – realizuje logičke proizvoden OR – sumira logičke proizvode

Arhitektura mikrosistema

PLA (unutrašnja struktura)

o f1= x1x2 + x1x3` + x1`x2`x3. o f2 = x1x2 + x1`x2`x3 + x1x3

Simbolički prikaz

Arhitektura mikrosistema

PALo AND mreža programabilna, OR mreža fiksna

f1 = x1x2x3` + x1`x2x3 f2 = x1`x2` + x1x2x3

Arhitektura mikrosistema

ROMo AND mreža fiksna, OR mreža

programabilnao AND matrica ima funkciju

binaranog dekodera n/2n

(generator minterma)o Mogućnost realizacije proizvoljen

funkcije n promenljvih

Arhitektura mikrosistema

PAL 16L8 (kombinacioni izlazi)

Arhitektura mikrosistema

Programiranje SPLD kola

Arhitektura mikrosistema

CPLDo Sadrži više logičkih

blokova (PAL ili PLA strukture) međusobno povezanih programabilnom prekidačkom matricom.

o U/I blokovi za spregu sa pinovima kola.

U/I

blok ...

U/I

blok ...

U/I

blok...

U/I

blok...

Arhitektura mikrosistema

FPGAo PLD kola najvećeg logičkog

kapaciteta (od 10K do 1M ekvivalentnih gejtva)

o Zasnovani na logičkim blokovima (a ne na prekidačkim mrežama)

o Dodatno sadrže ugrađenu RAM memoriju i specijalizovane module, kao što su množači, komunikacioni kontroleri i sl.

o Omogućavaju realizaciju sistema na čipu (zasnovanih na mikroprocesoru)

U/I

blok

U/I

blok

Arhitektura mikrosistema

FPGA (logički blok)o Logički blok:n LUT - univerzalni logički

blok sa malim brojem ulaza (n = 4-6) i jednim izlazom.

n Realizuje se kao RAM 2nx1. Sadržaj RAM-a definiše logičku funkciju.

0/1

0/1

0/1

0/1

x1

x2

f

Dvoulazni LUT – može da realizuje proizvoljnu

funkciju dve promenljive

Arhitektura mikrosistema

FPGA (LUT – realizacija funkcije)

111001010100f1x2x1

1

0

0

1

x1

x2

f

Arhitektura mikrosistema

FPGA (realizacija složenijih funkcija)

f = f1 + f2 = x1x2 + x2’x3.

Arhitektura mikrosistema

ASIC vs. FPGAVisoki troškovi pripreme proizvodnje za ASIC dizajn

Arhitektura mikrosistema

ASIC v.s. FPGA

Arhitektura mikrosistema

ASIC vs. FPGAFPGA: Skraćeno vreme projektovanja i realizacije

Arhitektura mikrosistema

Time-to-Market !Novi proizvodi brže dostižu masovnu proizvodnju i kraće vreme ostaju na tržištu

Arhitektura mikrosistema

Novi projekti

Arhitektura mikrosistema

ASIC v.s. PLD

Arhitektura mikrosistema

Proizvođači

Arhitektura mikrosistema

Logički kapacitet FPGA kola

Arhitektura mikrosistema

Evolucija FPGA kola

Arhitektura mikrosistema

Savrmene FPGA arhitekture

Arhitektura mikrosistema

Programabilni prekidač - ključni element PLD kola

Arhitektura mikrosistema

Tehnologije programiranjaVolatile =

Nepostojanost

Arhitektura mikrosistema

˝Floating_Gate˝ tehnologijao Postojanost, reprogramabilnosto Primena kod SPLD, CPLD

Arhitektura mikrosistema

SRAM tehnologijao Nepostojanost, reprogramabilnost

Read or Write

Data

Configuration Memory Cell

Routing Connections

Arhitektura mikrosistema

SRAM tehnologijao Pass tranzistor +

SRAM ćelijao Multiplekser +

SRAM ćelija(e)

Arhitektura mikrosistema

Antifuzeo Sturktura: provodnik-dijalektrik-provodniko Programiranjem postaje permanentni spoj

Arhitektura mikrosistema

Programiranje ˝izvan sistema˝ - SPLD

Arhitektura mikrosistema

Programiranje ˝u sistemu˝ -CPLD/FPGA

Arhitektura mikrosistema

Programiranje FPGA kola zasnovanih na SRAM tehnologiji

Arhitektura mikrosistema

CPLDo CPLD = Complex PLDo CPLD = više SPLD blokova na jednom čipu

Arhitektura mikrosistema

Tipična savremena CPLD komponeta(Altera MAX7128)o Ekvivalent 13 PAL

komponenti na jednom čipu

o Reprogramabilnosto 128 flip-flopova ili

funkcionalnih blokova

o Cena 10$

Arhitektura mikrosistema

CPLD Arhitektura

U/I blokFunkcionalni

blok

Mreža za povezivanje

Arhitektura mikrosistema

Altera MAX 7000

Arhitektura mikrosistema

Altera MAX 7000 - Makroćelija

D Q ENA

MUX 2

MUX 2

MUX 1

LOGICKI ALOKATOR

LOGIČKO POLJE

PRN

CLRN

VCC

PROGRAMABILNIFLIPFLOP

GLOBALNIRESET

GLOBALNITAKT

ka PIA-i

ka U/IBloku

PIA Deljiviekspanderi

Paralelniekspanderi(iz drugih makroćelija)

Arhitektura mikrosistema

Primena CPLD kolao Pogodni za sisteme koje karakteriše složene logičke

funkcije sa malim brojem flip-flopovan Konačni automati,n Kontroleri

o Zamena većeg broja SPLD kola jednim CPLD kolom

o Sprežna logika (glue logic)o Prototipovi jednostavinh ASIC kolao Predvidljiv tajming

Arhitektura mikrosistema

Proizvođači

www.xilinx.comXC9500CoolRunner

Xilinx

www.atmel.comATFATV

Atmel

www.latticesemic.comispLSIMACH

Lattice

www.altera.comMAX 7000MAX 9000

Altera

URLFamilija(e)Proizvođač

Arhitektura mikrosistema

FPGAo FPGA = Field Programmable

Gate Arrays (gejtovska polja koja se programiraju ˝na terenu˝, tj. od strane krajnjeg korisnika)

o Po strukturi sličnija ASIC gejtovskim poljima nego PAL-u i dugim SPLD ili CPLD kolima, zasnovanim na programabilnim AND/OR matricama.

Arhitektura mikrosistema

SPLD - FPGA - ASIC

FPGAXilinx ‘84

Visok stepen konfigurabilnosti, kratko vreme projektovanja i implementacije, ali samo za

jednostavan dizajn

Veliki i složen dizajn, ali nepromenljiva nakon fabrikacije,

skupo i dugotrajno projektovanje i fabrikacija

Arhitektura mikrosistema

Prva FPGA kolao CMOS i SRAM tehnologijao 3-ulazni LUT + FF + MUX

o Savremena FPGA kola su mnogo složenija

Arhitektura mikrosistema

FPGA arhitekturao Konfigurabilni

logički blokovi, raspoređeni u dvodimenziono polje

o U/I blokovi, raspoređeni po obodu kola

o Programabilna sprežna mreža smeštena u kanalima između logičkih blokova

Arhitektura mikrosistema

Granularnost FPGA arhitektureo Odnosi se na složenost logičkog bloka

n Fina - samo jednostavne funkcije (npr. 3-ulazni NAND)n Srednja - složenija struktura i funkcionalnost (npr. 4-

ulazni LUT, 4 MUX, 4 D FF u jednom bloku)n Gruba - pored logičkih blokova arhitektura sadrži i

namenske specijalizovane module, npr. FFT, mikroprocesor.

o Sredinom 90-tih, ahitekture srednje granularnosti su potisnule arhitekture fine granularnosti

Arhitektura mikrosistema

Nizovi tranzistorskih parovaFPGA CP20K firme Crosspoint Solutionso Fina granularnost

Arhitektura mikrosistema

Logički blokovi zasnovani na multiple-kserima - srednji nivo granularnosti

Svaki ulaz se može porogramiranjem postaviti na konstantu 0 ili 1, ili se na

ulaz može dovesti prava ili invertovana vrednost promenljive

Arhitektura mikrosistema

Logički blok Actel FPGA iz serije ACT 2o 766 različitih logičkih funkcijao Veća funkcionanost po cenu povećanja broja ulaza ->

složenija sprežna mreža

Arhitektura mikrosistema

Logički blokovi zasnovani na LUT -srednji nivo granularnostio Većina savremenih FPGA koristi LUT-ove

Arhitektura mikrosistema

Logički blokovi zasnovani na LUTo LUT sa 3, 4, 5 i 6 ulaza

n Jedan ulaz više, broj ćelija duplo većin 4-LUT se smatra optimalnim

o LUT može imati više namenan Relizacija logičke funkcije (osnovna

namena)n 16x1 RAM (za 4-LUT)n Pomerački registar

Arhitektura mikrosistema

Logički blokovi zasnovani na LUT

Bilo koja od nekoliko funkcija

Arhitektura mikrosistema

Logički blok FPGA Xilinx XC4000

Arhitektura mikrosistema

Hijerarhijao Osnovni blok:

n Xilinx - Logička ćelija (LC)n Altera - Logički blok (LB)

o Slice - 2 LCn Svaki LC ima svoje ulaze i izlaze,

dok su clock, clock enable, set/reset - zajednički za oba LC.

o CLB (Configurable Logic Block) - Xilinx ili LAB (Logic Block Array) - Alteran 2 ili 4 slices

Arhitektura mikrosistema

Sprežna mreža

Sprežna mreža:

• Žičani segmenti +

• Programabilni prekidači

Arhitektura mikrosistema

Sprežna mreža - struktura

o Connection block - sprega logičkog bloka na srežnu mrežuo Switching block - nadovezivanje žičanih segmenata

Arhitektura mikrosistema

Sprežna mrežao Žičani segment -

neprekinuta veza završena prekidačima

o Traka - niz od jednog ili više žičanih segmenata

o Kanal za rutiranje -grupa paralelnih traka

o Blok za povezivanje -omogućava vezu jednog ulaza/izlaza logičkog bloka i žičanog segmenta u kanalu

Arhitektura mikrosistema

Sprežna mrežao Prekidački blok -

omogućava spajanje horizontalnih i vertikalnih veza

Arhitektura mikrosistema

Sprežna mreže - žičani segmenti

Arhitektura mikrosistema

Ugrađeni RAM (Embedded RAM, ili e-RAM)o RAM je nephodan u mnogim aplikacijama. o Dve mogućnosti za realizaciju RAM-a:n Distribuirani RAM - koristi se LUT-ovi

konfigurisani kao RAMn Blok RAM - namenski RAM moduli ugrađeni u

FPGA arhitekturu (tzv. embedded RAM)

Arhitektura mikrosistema

Ugrađeni RAM

o Blokovi se mogu koristiti nezavisno ili se mogu kombinovati u veće single/dual port RAM blokove, FIFO, FSM i td.

o Kod nekih FPGA raspoređeni po obodu čipa, kod drugih grupisani u blokove, a oni u kolone

o Blok kapaciteta do 10Kb, a ukupna memorije do nekoliko MB

Arhitektura mikrosistema

Ugrađeni množačio Neke funkcije, poput množača, su spore ako se realizuju

pomoću LUT-ova.o Pojedine FPGA arhitekture sadrže ugrađene hardverske

množačeo Obično su locirani u blizini e-RAM blokova

Arhitektura mikrosistema

Ugrađeni MACo MAC - Multiply-and-Accumulate

n S = S + A x B o Korisno za DSP

Arhitektura mikrosistema

Ugrađeni procesori o Elektronski sistemi se mogu realizovati u:

n Hardveru (logička kola/registri)n Softveru (instrukcije koje se izvršavaju na mikroprocesoru)

o Izbor zavisi od zahtevane brzine rada sistema:n ps i ns: isključivo u hardverun us: hardver ili softver, ili njihova kombinacijan ms: uglavnom u softeru

o Činjenica je da se neka forma mikroprocesora koristi u većini savremenih dizajna

o Sve do nedavno, mikroprocesor se ugrađivao u sistem u vidu komponente na štampanoj ploči. Danas se sve više koriste mikroprocesorska jezgra ugrađena u FPGA.

Arhitektura mikrosistema

Dve vrste ugrađenih (embedded) procesorao Hard - mikroprocesorsko jezgro (core) je

implementirano kao namenski, predefinisani blok

o Soft - mikroprocesorsko jezgro postoji na nivou VHDL opisa, netliste i sl. a realizuje se, kao i svaka logika, pomoću logičkih blokova

Arhitektura mikrosistema

Hard mikroprocesorska jezgrao Dve opcije za implementaciju:

n In a stripe (u traci): sa jedne strane FPGA polja. Obično u vidu MCM (Multi Chip Modul - dva čipa upakovana na istu silicijumsku podlogu)

n Ugrađeni u samo FPGA polje

o In a stripe (prednosti):n Glavno FPGA polje je

identično kao kod čipova bez mikroprocesora

n U strip se mogu ugraditi i drugi moduli (memorija, perferije)

Arhitektura mikrosistema

Hard mikroprocesorska jezgrao Ugrađeni direktno u FPGA polje

Arhitektura mikrosistema

Soft mikroprocesorska jezgrao Soft jezgra su sporija (niža maksimalna taktna

frekvencija) od hard (30-50%)o Prednost je što se mogu pridodati dizajnu po

potrebi i to u broju koji je potreban (sve dok ima raspoloživih resursa).

Arhitektura mikrosistema

Konfigurisanje FPGA kolao Konfiguracioni fajl (ili bit-fajl ili implementacioni

fajl)- krajnji rezultat projektovanja. Koristi se za programiranje FPGAn Za antifuze FPGA - sadrži samo konfiguracione podatken Za SRAM FPGA - sadrži konfiguracione podatke i

konfiguracione komande (instrukcije FPGA-u šta da uradi sa podacima)

o Konfiguracione ćelije (programabilni prekidači) -omogućavaju konfigurabilnost FPGA, sadržane su u LUT-ovima, sprežnoj mreži, U/I blokovima.

Arhitektura mikrosistema

Konfigurisanje FPGA kola

o Sve konfiguracione ćelije su povezane u jedan dugački scan chain o Ulaz i izlaz scan chain-a su izvedeni na pinove FPGA

Arhitektura mikrosistema

Xilinx Virtex-II Pro

Arhitektura mikrosistema

Xilinx Virtex-II ProPowerPC Core

Arhitektura mikrosistema

CPLD/FPGA metodologija projektovanja

Arhitektura mikrosistema

CPLD/FPGA metodologija projektovanja

Arhitektura mikrosistema

Unos dizajnaŠematski editor

HDL (VHDL ili Verilog)

Dominantan način

Arhitektura mikrosistema

Budućnost FPGA tehnologijeo FPGA sa milijardu tranzistora (bliska

budnućnost)o Super-brzi U/I (optička komunikacija)o Veća podrška za DSP o Super-brza rekonfiguracijao Nova hard jezgrao Analogni programabilni modulio Ugrađeni FPGA u ASIC

Arhitektura mikrosistema

DSP jezgra

Arhitektura mikrosistema

Brza rekonfiguracija