Programabilna digitalna kola Arhitektura mikrosistema Klasifikacija IC IC
Programabilna digitalna kola Arhitektura mikrosistema
Klasifikacija IC IC projektovana za datu primenu Arhitektura mikrosistema
Full-Custom ASIC o Projektovanje do nivoa layout-a n n o o o Vremenski zahtveno Mogućnost postizanja visokih performansi Projekat IC-a se dostavlja fabrici poluprovodnika gde se IC fabrikuje Skupa tehnologija (visoki fiksni, početni troškovi) Tipičan projekat traje više meseci Arhitektura mikrosistema
Standard-cell ASIC o o IC se konstruiše od predprojektovanih modula (standardnih ćelija) Standardne ćelije se projektuju u full-custom tehn. (neko drugi ih projektuje) Manji rizik i ušteda u vremenu Postoji i veće ćelije (mikroprocesori i sl. - tzv. hardcores) Arhitektura mikrosistema
Standard-cell ASIC o o Ćelija (različitih dužina) se kao cigle u zidu raspoređuju u redove Većina veza prolazi kroz kanale između redova, mada neke ćelije mogu služiti kao prolazi između redova Arhitektura mikrosistema
Gate-Array ASIC o o IC je delimično fabrikovano (ćelije, napajanje ćelija i sl. ) Kada se projekat IC-a dostavi fabrici, IC se dorađuje nanošenjem slojevi metala (radi povezivanja tranzistora) Smanjeno vreme fabrikacije Niži troškovi Arhitektura mikrosistema
PLD o o Standardna IC, dostupna u standardnim pakovanjima i proizvedena u velikim serijama Mogućnost konfigurisanja/programiranja radi realizacije specijalizovanog kola Arhitektura mikrosistema
PLD o Klasifikacija: n n n SPLD (Simple PLD): PLA + PAL + ROM CPLD (Complex PLD) FPGA (Field-Programmable Gate Array) Arhitektura mikrosistema
PLA o o Bolova algebra: Svaka logička funkcija se može predstaviti u vidu zbira logičkih proizvoda. Npr. f 1 = x 1’x 2 x 3’ + x 2 x 4’ + x 1 x 4 PLA: dve programabilne mreže: n n AND – realizuje logičke proizvode OR – sumira logičke proizvode Arhitektura mikrosistema
PLA (unutrašnja struktura) o o f 1= x 1 x 2 + x 1 x 3` + x 1`x 2`x 3. f 2 = x 1 x 2 + x 1`x 2`x 3 + x 1 x 3 Arhitektura mikrosistema Simbolički prikaz
PAL o AND mreža programabilna, OR mreža fiksna f 1 = x 1 x 2 x 3` + x 1`x 2 x 3 f 2 = x 1`x 2` + x 1 x 2 x 3 Arhitektura mikrosistema
ROM o o o AND mreža fiksna, OR mreža programabilna AND matrica ima funkciju binaranog dekodera n/2 n (generator minterma) Mogućnost realizacije proizvoljen funkcije n promenljvih Arhitektura mikrosistema
PAL 16 L 8 (kombinacioni izlazi) Arhitektura mikrosistema
Programiranje SPLD kola Arhitektura mikrosistema
CPLD o o Sadrži više logičkih blokova (PAL ili PLA strukture) međusobno povezanih programabilnom prekidačkom matricom. U/I blokovi za spregu sa pinovima kola. Arhitektura mikrosistema
FPGA o o PLD kola najvećeg logičkog kapaciteta (od 10 K do 1 M ekvivalentnih gejtva) Zasnovani na logičkim blokovima (a ne na prekidačkim mrežama) Dodatno sadrže ugrađenu RAM memoriju i specijalizovane module, kao što su množači, komunikacioni kontroleri i sl. Omogućavaju realizaciju sistema na čipu (zasnovanih na mikroprocesoru) Arhitektura mikrosistema
FPGA (logički blok) o Logički blok: n n LUT - univerzalni logički blok sa malim brojem ulaza (n = 4 -6) i jednim izlazom. Realizuje se kao RAM 2 nx 1. Sadržaj RAM-a definiše logičku funkciju. Arhitektura mikrosistema Dvoulazni LUT – može da realizuje proizvoljnu funkciju dve promenljive
FPGA (LUT – realizacija funkcije) x 1 x 2 f 1 0 0 1 0 1 0 0 1 1 1 Arhitektura mikrosistema
FPGA (realizacija složenijih funkcija) f = f 1 + f 2 = x 1 x 2 + x 2’x 3. Arhitektura mikrosistema
ASIC vs. FPGA Visoki troškovi pripreme proizvodnje za ASIC dizajn Arhitektura mikrosistema
ASIC v. s. FPGA Arhitektura mikrosistema
ASIC vs. FPGA: 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 programiranja Volatile = Nepostojanost Arhitektura mikrosistema
˝Floating_Gate˝ tehnologija o o Postojanost, reprogramabilnost Primena kod SPLD, CPLD Arhitektura mikrosistema
SRAM tehnologija o Nepostojanost, reprogramabilnost Arhitektura mikrosistema
SRAM tehnologija o o Pass tranzistor + SRAM ćelija Multiplekser + SRAM ćelija(e) Arhitektura mikrosistema
Antifuze o o Sturktura: provodnik-dijalektrik-provodnik 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
CPLD o o CPLD = Complex PLD CPLD = više SPLD blokova na jednom čipu Arhitektura mikrosistema
Tipična savremena CPLD komponeta (Altera MAX 7128) o o Ekvivalent 13 PAL komponenti na jednom čipu Reprogramabilnost 128 flip-flopova ili funkcionalnih blokova Cena 10$ Arhitektura mikrosistema
CPLD Arhitektura Mreža za povezivanje Funkcionalni blok U/I blok Arhitektura mikrosistema
Altera MAX 7000 Arhitektura mikrosistema
Altera MAX 7000 - Makroćelija Arhitektura mikrosistema
Primena CPLD kola o Pogodni za sisteme koje karakteriše složene logičke funkcije sa malim brojem flip-flopova n n o o Konačni automati, Kontroleri Zamena većeg broja SPLD kola jednim CPLD kolom Sprežna logika (glue logic) Prototipovi jednostavinh ASIC kola Predvidljiv tajming Arhitektura mikrosistema
Proizvođači Proizv o đ a č Famili URL ja (e ) Altera MAX 7 0 0 0 MAX 9 0 0 0 www. a lt er a. c o m Lattice isp. LSI www. l Arhitektura mikrosistema
FPGA o o FPGA = Field Programmable Gate Arrays (gejtovska polja koja se programiraju ˝na terenu˝, tj. od strane krajnjeg korisnika) 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 Visok stepen konfigurabilnosti, kratko vreme projektovanja i implementacije, ali samo za jednostavan dizajn FPGA Xilinx ‘ 84 Arhitektura mikrosistema Veliki i složen dizajn, ali nepromenljiva nakon fabrikacije, skupo i dugotrajno projektovanje i fabrikacija
Prva FPGA kola o CMOS i SRAM tehnologija 3 -ulazni LUT + FF + MUX o Savremena FPGA kola su mnogo složenija o Arhitektura mikrosistema
FPGA arhitektura o o o Konfigurabilni logički blokovi, raspoređeni u dvodimenziono polje U/I blokovi, raspoređeni po obodu kola Programabilna sprežna mreža smeštena u kanalima između logičkih blokova Arhitektura mikrosistema
Granularnost FPGA arhitekture o Odnosi se na složenost logičkog bloka n n n o Fina - samo jednostavne funkcije (npr. 3 -ulazni NAND) Srednja - složenija struktura i funkcionalnost (npr. 4 ulazni LUT, 4 MUX, 4 D FF u jednom bloku) Gruba - pored logičkih blokova arhitektura sadrži i namenske specijalizovane module, npr. FFT, mikroprocesor. Sredinom 90 -tih, ahitekture srednje granularnosti su potisnule arhitekture fine granularnosti Arhitektura mikrosistema
Nizovi tranzistorskih parova FPGA CP 20 K firme Crosspoint Solutions o Fina granularnost Arhitektura mikrosistema
Logički blokovi zasnovani na multiplekserima - 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 2 o o 766 različitih logičkih funkcija 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 granularnosti o Većina savremenih FPGA koristi LUT-ove Arhitektura mikrosistema
Logički blokovi zasnovani na LUT o o LUT sa 3, 4, 5 i 6 ulaza n Jedan ulaz više, broj ćelija duplo veći n 4 -LUT se smatra optimalnim LUT može imati više namena n Relizacija logičke funkcije (osnovna namena) n 16 x 1 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 XC 4000 Arhitektura mikrosistema
Hijerarhija o Osnovni blok: n n o Slice - 2 LC n o Xilinx - Logička ćelija (LC) Altera - Logički blok (LB) Svaki LC ima svoje ulaze i izlaze, dok su clock, clock enable, set/reset - zajednički za oba LC. CLB (Configurable Logic Block) - Xilinx ili LAB (Logic Block Array) - Altera n 2 ili 4 slices Arhitektura mikrosistema
Sprežna mreža: • Žičani segmenti + • Programabilni prekidači Arhitektura mikrosistema
Sprežna mreža - struktura o o Connection block - sprega logičkog bloka na srežnu mrežu Switching block - nadovezivanje žičanih segmenata Arhitektura mikrosistema
Sprežna mreža o o Žičani segment neprekinuta veza završena prekidačima Traka - niz od jednog ili više žičanih segmenata Kanal za rutiranje grupa paralelnih traka Blok za povezivanje omogućava vezu jednog ulaza/izlaza logičkog bloka i žičanog segmenta u kanalu Arhitektura mikrosistema
Sprežna mreža o 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 o RAM je nephodan u mnogim aplikacijama. Dve mogućnosti za realizaciju RAM-a: n n Distribuirani RAM - koristi se LUT-ovi konfigurisani kao RAM Blok RAM - namenski RAM moduli ugrađeni u FPGA arhitekturu (tzv. embedded RAM) Arhitektura mikrosistema
Ugrađeni RAM o o o Kod nekih FPGA raspoređeni po obodu čipa, kod drugih grupisani u blokove, a oni u kolone Blok kapaciteta do 10 Kb, a ukupna memorije do nekoliko MB Blokovi se mogu koristiti nezavisno ili se mogu kombinovati u veće single/dual port RAM blokove, FIFO, FSM i td. Arhitektura mikrosistema
Ugrađeni množači o o o Neke funkcije, poput množača, su spore ako se realizuju pomoću LUT-ova. Pojedine FPGA arhitekture sadrže ugrađene hardverske množače Obično su locirani u blizini e-RAM blokova Arhitektura mikrosistema
Ugrađeni MAC o MAC - Multiply-and-Accumulate n o S=S+Ax. B Korisno za DSP Arhitektura mikrosistema
Ugrađeni procesori o Elektronski sistemi se mogu realizovati u: n n o Izbor zavisi od zahtevane brzine rada sistema: n n n o o Hardveru (logička kola/registri) Softveru (instrukcije koje se izvršavaju na mikroprocesoru) ps i ns: isključivo u hardveru us: hardver ili softver, ili njihova kombinacija ms: uglavnom u softeru Činjenica je da se neka forma mikroprocesora koristi u većini savremenih dizajna 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) procesora o o Hard - mikroprocesorsko jezgro (core) je implementirano kao namenski, predefinisani blok 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 jezgra o Dve opcije za implementaciju: n n o 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) Ugrađeni u samo FPGA polje In a stripe (prednosti): n n Glavno FPGA polje je identično kao kod čipova bez mikroprocesora U strip se mogu ugraditi i drugi moduli (memorija, perferije) Arhitektura mikrosistema
Hard mikroprocesorska jezgra o Ugrađeni direktno u FPGA polje Arhitektura mikrosistema
Soft mikroprocesorska jezgra o o Soft jezgra su sporija (niža maksimalna taktna frekvencija) od hard (30 -50%) 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 kola o Konfiguracioni fajl (ili bit-fajl ili implementacioni fajl)- krajnji rezultat projektovanja. Koristi se za programiranje FPGA n n o Za antifuze FPGA - sadrži samo konfiguracione podatke Za SRAM FPGA - sadrži konfiguracione podatke i konfiguracione komande (instrukcije FPGA-u šta da uradi sa podacima) 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 o Sve konfiguracione ćelije su povezane u jedan dugački scan chain Ulaz i izlaz scan chain-a su izvedeni na pinove FPGA Arhitektura mikrosistema
Xilinx Virtex-II Pro Arhitektura mikrosistema
Xilinx Virtex-II Pro Power. PC Core Arhitektura mikrosistema
CPLD/FPGA metodologija projektovanja Arhitektura mikrosistema
CPLD/FPGA metodologija projektovanja Arhitektura mikrosistema
Unos dizajna HDL (VHDL ili Verilog) Šematski editor Dominantan način Arhitektura mikrosistema
Budućnost FPGA tehnologije o o o o FPGA sa milijardu tranzistora (bliska budnućnost) Super-brzi U/I (optička komunikacija) Veća podrška za DSP Super-brza rekonfiguracija Nova hard jezgra Analogni programabilni moduli Ugrađeni FPGA u ASIC Arhitektura mikrosistema
DSP jezgra Arhitektura mikrosistema
Brza rekonviguracija Arhitektura mikrosistema
- Slides: 82