w07
Transkrypt
w07
Struktury programowalnych scalonych układów cyfrowych PLD Wprowadzenie Technologie połaczeń programowalnych Rodzaje PLD - typy struktur Proces projektowania PLD Budowa układu GAL 22V10 Wykorzystano materiały firm: Altera, Actel, Cypress, Lattice, Xilinx PUE-w7 1 Niektóre skróty i nazwy • Field-Programmable Device (FPD) — układ scalony programowany przez użytkownika • Programmable logic devices (PLDs) - j.w., ale układy o specyficznej, prostej strukturze • Programmable Logic Array (PLA) — mały PLD o dwóch programowalnych matrycach: AND i OR • Programmable Array Logic (PAL) - mały PLD o programowalnej matrycy AND i stałej OR • Generic Array Logic (GAL) - PAL z dodanymi przerzutnikami na wyjściach • Simple PLD (SPLD) - (PLA, PAL, GAL itp.) • Complex PLD (CPLD) — złożony PLD, zawierający wiele struktur SPLD • Field-Programmable Gate Array (FPGA) — FPD o specyficznej strukturze i dużej pojemności logicznej • High-Capacity PLD (HCPLD) — układ o dużej pojemności (CPLD lub FPGA) PUE-w7 2 skróty, terminy(2) • Interconnect — połączenia programowalne (łączniki, matryce połaczeń) • Programmable Switch — łącznik programowalnyc (przez użytkownika) • Logic Block — blok logiczny o złożoności rzędu SPLD, część CPLD lub FPGA • Logic Capacity — "pojemność logiczna" podawana w "zastępczych bramkach" NAND2 • Logic Density — "gęstość logiczna" ilość bramek na jednostkę powierzchni • Speed-Performance — max prędkość pracy (dla kombinacyjnych : najdłuższe opóźnienie w w którejkolwiek ścieżce przebiegu sygnału od końćówki we do wy; dla sekwencyjnych: max. częśtotliwość zegara przy której układ pracuje poprawnie PUE-w7 3 Technologie połączeń (re-)programowalnych PUE-w7 4 Łącznik programowalny typu "bezpiecznik" PUE-w7 5 Łącznik programowalny typu EPROM PUE-w7 6 Łącznik programowalny typu EEPROM PUE-w7 7 Łącznik programowalny zawartością pamięci SRAM PUE-w7 8 Łącznik typu "antybezpiecznik" PUE-w7 9 Symboliczne oznaczanie połączeń PUE-w7 10 Struktura logiczna pamięci PROM PUE-w7 11 Struktura logiczna układu PLA PUE-w7 12 Struktura logiczna układu PAL PUE-w7 13 Struktura układów typu PLA PUE-w7 14 Struktura układów typu PAL PUE-w7 15 Struktura układów typu GAL, SPLD PUE-w7 16 Architektura typu CPLD PUE-w7 17 Architektura typu FPGA (1) PUE-w7 18 Architektura typu FPGA (2) PUE-w7 19 Pojemność logiczna (obecnie do 10mln) PUE-w7 20 2 rodzaje komórek logicznych w FPGA PUE-w7 21 Porównanie architektur układów CPLD i FPGA PUE-w7 22 Proces projektowanie SPLD (2 rodzaje wejść) PUE-w7 23 Projektowanie SPLD metodą "schematową" (1) PUE-w7 24 Projektowanie SPLD metodą "schematową" (2) PUE-w7 25 Projektowanie CPLD (FPGA) (blok mnożący 16x16 b) PUE-w7 26 Projektowanie FPGA (blok mnożący 32x32 b) BEFORE (16 X 16 MULTIPLIER): entity MULT is port(A,B:in std_logic(15 downto 0); Y:out std_logic(31 downto 0)); end MULT; architecture BEHAVE of MULT is begin Y <= A * B; end BEHAVE; AFTER (32 X 32 MULTIPLIER): entity MULT is port(A,B:in std_logic(31 downto 0); Y:out std_logic(63 downto 0)); end MULT; architecture BEHAVE of MULT is begin Y <= A * B; end BEHAVE; PUE-w7 27 Projektowanie i programowanie FPGA PUE-w7 28 Programowanie konwencjonalne i w systemie (ISP) PUE-w7 29 Lattice ispGAL22V10 PUE-w7 30 Lattice ispGAL22V10 PUE-w7 31 Lattice ispGAL22V10 PUE-w7 32 Lattice ispGAL22V10 : OLMC PUE-w7 33 Lattice ispGAL22V10 : OLMC (tryb rejestrowy) PUE-w7 34 Lattice ispGAL22V10 : OLMC (tryb kombinatoryczny) PUE-w7 35 ispGAL22V10 : mapa przepaleń bezpieczników PUE-w7 36 ispGAL22V10 : mapa przepaleń bezpieczników PUE-w7 37 ispGAL22V10 : parametry elektryczne PUE-w7 38 ispGAL22V10 : fmax PUE-w7 39 ispGAL22V10 : opóźnienia t PUE-w7 40 ispGAL22V10 : schematy zastępcze we/wy (IO) PUE-w7 41 ispGAL22V10 : końcówki isp PUE-w7 42 ispGAL22V10 : programowanie w systemie PUE-w7 43