Synteza systemów reprogramowalnych /27 dr inż. Mariusz Kapruziak mkapruziak@wi.ps.pl pok. 07, tel. 449 55 44 FPGA, CPLD, SPLD 945 950 955 960 965 970 975 980 985 990 995 2000 0 D CLK update v cur Q Q 0 a 0 a b b DIR DIR D 0 v ma x E 0 + + DIR DIR v cur 0 0 5 5 a_ a + a<b a>b a a = a b b a b b e D S = 2 0 24 24 D + v cur '0' 24 + 24 + + 2 v cur a - DIR DIR 0 0 S max + _ S max + _ 24 S setpos 24 v cur S cur Transistors ICs (General) SRAMs & DRAMs Microprocessors SPLDs CPLDs ASICs FPGAs CLK update S setpos v ma x a - a + PARAMETRY USTAWIANE PRZEZ UZYTKOWNIKA
. Wstęp 2 3 4 5 2/27 Procesor, FPGA\CPLD vs mikroprocesor PROCESOR Procesory strukturalne Procesory proceduralne ASIC/ASSP PLD? mikrokontroler mikroprocesor SPLD CPLD FPGA
M. Kapruziak, Implementacja regulatora optymalnego o najkrótszym czasie dojścia do zadanej pozycji, wysłane na RUC 2008. Wstęp 2 3 4 5 3/27 Strukturalna realizacja regulatora optymalnego 0 CLK update v cur D PAMIĘĆ ROZPROSZONA W STRUKTURZE Q Q 0 a 0 a b b DIR DIR D v max E 0 0 + + 0 v cur DIR DIR 5 5 a_ a + a<b a>b a a 0 = a b b e a b b D S = 0 24 24 D + v cur '0' 2 + + + 2 v cur a - 24 24 DIR DIR 0 0 S max + _ S max + _ 24 S setpos 24 v cur S cur Komórki pamięci CLK update S setpos v max a - a + PARAMETRY USTAWIANE PRZEZ UZYTKOWNIKA
. Wstęp 2 3 4 5 4/27 Architektura von Neumana i jej znaczenie. specjalizowana funkcja składana jest z sekwencyjnie wykonywanych uniwersalnych operacji (program) 2. program i dane są logicznie rozdzielone 3. program i dane zndajdują się fizycznie w tej samej pamięci 4. pamięć zawierajaca zarówno program jak i dane łączy się z procesorem jedną wspólną szyną John von Neumann Komputer von Neumanna: maszyna automatyczna do wykonywania operacji pobiarania instrukcji i wykonywania instrukcji na przemian (fetch-execute mechine) P.E. Ceruzzi, A History of Modern Computing, MIT Press 2003
. Wstęp 2 3 4 5 5/27 Komputer W. Stallings, Organizacja i architektura systemu komputerowego, WNT 2003
. Wstęp 2 3 4 5 6/27 Synteza systemów reprogramowalnych - zakres kursu Wykład. SPLD/CPLD/FPGA Wykład 2. Język Verilog składnia języka Wykład 3. Język Verilog synteza logiczna Wykład 4. Język VHDL Wykład 5. Synteza poziomu architektury i kostynteza sprzętowo-programowa Propozycja 6. Język SystemVerilog Propozycja 7. Systemy dynamicznie rekonfigurowalne + historia systemów rekonfigurowalnych
2. SPLD = Simple PLD 2 3 4 5 7/27 Krótka historia 945 950 955 960 965 970 975 980 985 990 995 2000 Transistors ICs (General) SRAMs & DRAMs Microprocessors SPLDs CPLDs ASICs FPGAs C.M. Maxfield, The Design Warrior s Guide to FPGAs, Linacre House 2004
2. SPLD = Simple PLD 2 3 4 5 8/27 SPLD = Simple Programmable Logic Devices
2. SPLD = Simple PLD 2 3 4 5 9/27 Przykład C.M. Maxfield, The Design Warrior s Guide to FPGAs, Linacre House 2004
2. SPLD = Simple PLD 2 3 4 5 0/27 PROM l l l
2. SPLD = Simple PLD 2 3 4 5 /27 PLAs Programmable Logic Arrays
2. SPLD = Simple PLD 2 3 4 5 2/27 PALs Programmable Array Logic l l l
2. SPLD = Simple PLD 2 3 4 5 3/27 MMI MegaPAL Predefined OR array l l l 945 950 955 960 965 970 975 980 985 990 995 2000 Transistors ROZBUDOWANA MATRYCA AND MegaSlow ;)) ICs (General) SRAMs & DRAMs Microprocessors SPLDs CPLDs ASICs FPGAs
3. CPLD = Complex PLD 2 3 4 5 4/27 CPLD Complex Programmable Logic Devices
3. CPLD = Complex PLD 2 3 4 5 5/27 CPLD Complex Programmable Logic Devices
4. FPGA = Field Programmable Gate Array 2 3 4 5 6/27 FPGA Field Programmable Gate Arrays
4. FPGA = Field Programmable Gate Array Koncepcja CLB 2 3 4 5 7/27
4. FPGA = Field Programmable Gate Array LUT Look Up Table 2 3 4 5 8/27
4. FPGA = Field Programmable Gate Array 2 3 4 5 9/27 6-bit SR Wielofunkcyjny LUT 6 x RAM 4-input LUT 6-bit SR 6x RAM 4-input LUT
4. FPGA = Field Programmable Gate Array 2 3 4 5 20/27 CLB Configurable Logic Block Slice 6-bit SR 6x RAM 4-input LUT Logic Cell (LC) LUT MUX REG 6-bit SR 6x RAM 4-input LUT Logic Cell (LC) CLB CLB Configurable logic block (CLB) Slice Slice Logic cell Logic cell Logic cell Logic cell LUT MUX REG Slice Slice CLB CLB Logic cell Logic cell Logic cell Logic cell
4. FPGA = Field Programmable Gate Array 2 3 4 5 2/27 Inne układy w FPGA RAM blocks Multipliers Logic blocks
4. FPGA = Field Programmable Gate Array 2 3 4 5 22/27 Producenci układów FPGA/CPLD Xilinx : Virtex (5/4/2) Spartan 3 CoolRunner-II Altera : Stratix (III/II) Cyclone (III/II/I) Arria MAX (II/I) Actel : ProASIC Fusion IGLOO Lattice : LatticeSC LatticeEC LatticeXP MachX0 ispmach (System Chip) (Economy) (expand Programmability) QuickLogic : Eclipse (II/I) QuickRAM ArcticLink, PolarPro
5. Xilinx Spartan3 FPGA 2 3 4 5 23/27 Xilinx Spartan3 ogólna struktura
5. Xilinx Spartan3 FPGA 2 3 4 5 24/27 Xilinx Spartan3 IOB
5. Xilinx Spartan3 FPGA 2 3 4 5 25/27 Xilinx Spartan3 CLB
Synteza systemów reprogramowalnych 26/27 Polecana literatura ) C.M. Maxfield, The Design Warrior s Guide to FPGAs, Linacre House 2004 Rozdział -6 strony - 8 2) Xilinx, Spartan-3 FPGA Family Complete Datasheet, 2007 8 strony 3) J. Pasierbiński, P. Zbysiński, Układy programowalne w praktyce, WKŁ 200
Synteza systemów reprogramowalnych 27/27 dr inż. Mariusz Kapruziak mkapruziak@wi.ps.pl pok. 07, tel. 449 55 44 KONIEC