Projektowanie systemów cyfrowych w językach opisu sprzętu. Studium Zaoczne IV rok kierunek Elektronika. Wykład 7

Podobne dokumenty
Architektura układów FPGA

Kierunek Inżynieria Akustyczna, V rok Programowalne Układy Cyfrowe. Platforma sprzętowa. Rajda & Kasperek 2014 Katedra Elektroniki AGH 1

Kierunek Elektronika, III rok Języki Opisu Sprzętu. Platforma sprzętowa. Rajda & Kasperek 2016 Katedra Elektroniki AGH 1

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

Układy programowalne. Wykład z ptc część 5

Układy FPGA. Programowalne Układy Cyfrowe dr inż. Paweł Russek

Układy programowalne. Wykład z ptc część 5

Programowalne Układy Logiczne. Wykład III FPGA dr inż. Paweł Russek

FPGA, CPLD, SPLD. Synteza systemów reprogramowalnych 1/27. dr inż. Mariusz Kapruziak pok. 107, tel

Systemy na Chipie. Robert Czerwiński

Cyfrowe układy scalone

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

LCD (Liquid Crystal Display)

Cyfrowe układy scalone

Opis przedmiotu zamówienia CZĘŚĆ 1

Procesory w FPGA H D L. dr inż. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska

ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH APPLICATIONS OF FPGAS IN ENUMERATION ALGORITHMS

OPBOX ver USB 2.0 Mini Ultrasonic Box with Integrated Pulser and Receiver

Cyfrowe układy scalone

Układy reprogramowalne i SoC Wprowadzenie

Układy reprogramowalne i SoC Specjalizowane moduły FPGA

Szczegółowy opis przedmiotu zamówienia. Część 1 - Laboratoryjny zestaw prototypowy

Rev Źródło:

Technika Mikroprocesorowa

Opis przedmiotu zamówienia

MAXimator. Zestaw startowy z układem FPGA z rodziny MAX10 (Altera) Partnerzy technologiczni projektu:

Projektowanie systemów cyfrowych w językach opisu sprzętu. Studium Zaoczne IV rok kierunek Elektronika. Wykład 1

Programowanie Układów Logicznych kod kursu: ETD6203 W dr inż. Daniel Kopiec. Pamięć w układach programowalnych

Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA

Technika Cyfrowa 2. Wykład 1: Programowalne układy logiczne

Język opisu sprzętu VHDL

Technika Cyfrowa 2 wykład 1: programowalne struktury logiczne - wprowadzenie

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Realizacja systemów wbudowanych (embeded systems) w strukturach PSoC (Programmable System on Chip)

Systemy wbudowane. Układy programowalne

Układy reprogramowalne i SoC Implementacja w układach FPGA

Stosowanie tego urządzenia zwiększa możliwości stosowanego sprzętu jak i sofware.


Układy FPGA w przykładach, część 2

Elementy cyfrowe i układy logiczne

Projektowanie układów FPGA. Żródło*6+.

Układy programowalne

Wybrane firmowe programowalne cyfrowe układy scalone PLD

1. Charakterystyka układu napędowego

Politechnika Warszawska

MDK-Plus. Licencja Node-Locked 8260 EUR 5740 EUR 3340 EUR gratis 3300 EUR 2300 EUR 1330 EUR 650 EUR 3970 EUR 2760 EUR 1600 EUR

Liczniki z zastosowaniem

Liczniki z zastosowaniem

Wybrane zagadnienia projektowania i testowania PLD

Elektronika i techniki mikroprocesorowe

Procesory rodziny x86. Dariusz Chaberski

PROGRAMMABLE DEVICES UKŁADY PROGRAMOWALNE

Komp m u p t u ery w bu b d u o d wane Cezary Ziółkowski

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Programowalne Układy Logiczne Konfiguracja/Rekonfiguracja

Rev Źródło:

Architektura systemu komputerowego

Moduł odtwarzacza plików MP3 audio

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych

Szkolenia specjalistyczne

Wykład 6. Mikrokontrolery z rdzeniem ARM

mgr inż. Maciej Rudek opracował: dr inż. Daniel Kopiec

Literatura (w zakresie języka j

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

System mikroprocesorowy i peryferia. Dariusz Chaberski

Załącznik nr 1 część IX - sprzęt pomiarowy. Formularz cenowy. Opis przedmiotu zamówienia. Wartość brutto. Wartość netto.

Programowanie Mikrokontrolerów

Sensory w systemach wbudowanych Dr inż. Cezary Worek

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

Moxa Solution Day Cezary Ziółkowski

ZL11PRG v.2. Uniwersalny programator ISP. Odpowiednik: Byte Blaster II DLC5 Programmer AT89ISP STK-200 Lattice ISP ARM Wiggler

Systemy Czasu Rzeczywistego FPGA

Temat: Pamięci. Programowalne struktury logiczne.

Moduł mikrokontrolera PROTON (v1.1)

Systemy wbudowane. Poziomy abstrakcji projektowania systemów HW/SW. Wykład 9: SystemC modelowanie na różnych poziomach abstrakcji

Współczesne techniki informacyjne

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

e Newsletter CoM s & EMS

ZL6PLD zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx

5. PROGRAMOWALNE UKŁADY LOGICZNE

Integracja istniejącej infrastruktury do nowego systemu konwersja protokołów

Systemy Czasu Rzeczywistego FPGA

Bezpieczeństwo informacji oparte o kryptografię kwantową

mgr inż. Adam Korzeniewski p Katedra Systemów Multimedialnych

ZL10PLD. Moduł dippld z układem XC3S200

napięcie-częstotliwość

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji.

Przetworniki. Przetworniki / Transducers. Transducers. Przetworniki z serii PNT KON PNT CON Series Transducers

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci RAM w FPGA.

Debugger/programator z interfejsem JTAG oraz SWD dla mikrokontrolerów ARM zgodny z KEIL ULINK 2. Gotronik

XC4000: LUT jako ROM Układy Cyfrowe i Systemy Wbudowane 2 Układy FPGA cz. 2 ROM32X1 VHDL inference example ROM 16x2b type

Projektowanie z użyciem bloków funkcjonalnych w układach programowalnych firmy Xilinx

Rev Źródło:

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Mikroprocesory i Mikrosterowniki

Współpraca procesora ColdFire z urządzeniami peryferyjnymi

Transkrypt:

Projektowanie systemów cyfrowych w językach opisu sprzętu Studium Zaoczne IV rok kierunek Elektronika Wykład 7

Program wykładu Układy PLD (Programmable Logical Devices) jako platforma sprzętowa dla HDL (Hardware Descrip. Lang.) układy SPLD (Simple PLD) i jak się to programowało... układy CPLD (Complex PLD) układy FPGA (Field Programmable Gate Array) 2

Technologiczne wahadło Makimoto s Wave 1957 to 67 Standard discrete devices (transistors, diodes) 1958 Opracowanie pierwszych układów scalonych 1964 Uruchomienie produkcji układów serii TTL 1967 to 77 Custom LSI for calculators, radio, TV 1971 Opracowanie 4 bitowego procesora p-mos/lsi 1974 Uruchomienie produkcji układów programowalnych 1977 to 87 Standard microprocessors, custom software 1978 Uruchomienie produkcji układów PAL (AMD) 1985 Uruchomienie produkcji układów FPGA (Xilinx) 1987 to 97 Custom logic in ASICs 1995 Układy FPGA większa produkcja niż układy GateArray <10K 1997 to 07 Standard Field-Programmable devices 1999 Układy FPGA większa produkcja niż wszystkie GateArray FPGA vs ASIC - it is a war!!! 3

RAW 2003 invited paper Reiner Hartenstein IEEE fellow Kaiserslautern University of Technology standard 1957 TTL custom hardwired 1967 LSI, MSI algorithm: fixed resources: fixed procedural programming µproc., memory 1977 1987 algorithm: variable resources: fixed ASICs, accel s vn machine paradigm structural programming 1997 2007 algorithm: variable resources: variable 2 sources new machine paradigm needed The Programmable System-on-a-Chip is the next wave 4

RAW 2003 invited paper Reiner Hartenstein IEEE fellow Kaiserslautern University of Technology Current Computer Science Education is based on the Submarine Model This model disables... Algorithm Brain usage: procedural-only procedural high level Programming Language Assembly Language Hardware invisible: under the surface Hardware 5

Hardware and Software as Alternatives procedural structural Algorithm partitioning Brain usage: both hemispheres Hardware, Configware Hardw/Configw only Software Software only Software & Hardw/Configw 6

Klasyfikacja układów PLD Source: Dataquest Logic Standard Logic ASIC Programmable Logic Devices (PLDs) Gate Arrays Cell-Based ICs Full Custom ICs SPLDs (PALs) CPLDs FPGAs SPLD = Simple Prog. Logic Device PAL = Programmable Array of Logic CPLD = Complex PLD FPGA = Field Prog. Gate Array Configurable Logic Blocks (CLB) memory Look-Up Table AND-OR planes simple gates Input / Output Blocks (IOB) bidirectional, latches, inverters, pullup/pulldown Interconnect or Routing local, internal feedback, and global ISP In System Programmable 7

Układy PLD Literatura Majewski, Łuba, Jasiński, Zbierzchowski, Programowalne moduły logiczne w syntezie układów cyfrowych Łuba, Markowski, Zbierzchowski, Komputerowe projektowanie układów cyfrowych w strukturach PLD Łuba, Jasiński, Zbierzchowski, Specjalizowane układy cyfrowe w strukturach PLD i FPGA Strony WWW producentów układów PLD www.actel.com www.altera.com www.atmel.com www.latticesemi.com www.xilinx.com i strony inne np. www.pldesignline.com www.fpgajournal.com www.design-reuse.com www.opencores.org 8

Firmy branży PLD 9

SPLD - Simple-Programmable Logic Devices PAL (Programmable Array Logic, AMD Vantis) PLA (Programmable Logic Array) GAL (Generic Array Logic, Lattice) 10

Podstawowa struktura układu typu PAL Układy typu PAL: programowalna matryca AND stała matryca OR 11

Przykład realizacji funkcji w układzie PAL 12

Układy PLD SPLD (Simple PLD) PAL (Programmable Array Logic) 16L8, 16R4, 16R6, 16R8 GAL (Generic Array Logic) 16V8, 20V8, 22V10, 26V12 PLA (Programmable Logic Array) 13

Układy PLD PAL16L8 Schemat blokowy i struktura układu 14

Układy PAL rodziny 12,14,16,20 Technologia bipolarna Jednokrotne programowanie przez przepalenia fuse Rozkodowanie symbolu PAL xx Y z xx - liczba wejść Y - L logika ujemna H logika dodatnia C wyjścia komplementarne R wersja z przerzutnikami synchronicznymi RA wersja z przerzutnikami asynchronicznymi X, A wersja z układami arytmetycznymi S wersja z dzielonymi iloczynami z - liczba wyjść (kombinacyjnych lub rejestrowych) 15

Układy GAL - Generic Array Logic Rok 1985 Technologia E 2 CMOS Wielokrotne programowanie Czas kasowania 100ms GAL16V8 GAL 20V10 - światowy standard 16

Układy GAL ISP (In System Programmable) HDPLD High Density PLD 17

Układy PLD GAL22V10 W większych układach GAL liczba termów nie jest równa dla każdego pinu 18

Układy PLD GAL22V10 Makrocela układu GAL 22V10 Przerzutnik D z wejściami: Asynchronic Reset (AR) Synchronic Set (SR) 19

Makrocela układu GAL22V10 20

SPLD wciąż na rynku... Firmy: Atmel Texas Instruments 2014 w ciągłej sprzedaży układy SPLD np. DigiKey (64 modele) 21

Architektura układów CPLD Typowa architektura układów CPLD: Makrocele (typu PAL) Matryce łączeniowe Technologia:CMOS Komórki konfigurujące: EPROM (UV + wersje OTP) EEPROM FLASH (ISP) CPLD- Przewidywalne opóźnienia (Predictable timing!!!) 22

CPLD - Complex-Programmable Logic Devices Altera (chyba lider na rynku CPLD..) Atmel (wsparcie dla standardowych rozwiązań np. 22V10 + military std) Lattice (chyba vice lider na rynku CPLD.. + nieocenione tradycje) Xilinx (segment CPLD jako uzupełnienie do FPGA) Wartości akcji firm Xilinx, Altera i Lattice w latach1990..2011 23

Oferta CPLD z firmy Lattice The Do-it-All PLD - MachXO2 Offers an unprecedented mix of low cost, low power and high system integration for system and consumer designs Most Versatile Non-Volatile PLD - MachXO Combines FPGA flexibility with CPLD performance, instant-on and high pin to logic ratio Ultra Low Power CPLD - ispmach 4000ZE As low as 10µA standby current, packages as small as 4x4 mm, 5V-tolerant I/Os + Mature devices (PAL, PALCE, GAL, ispgdx, isplsi 1k..8k,ORCA,MACH 1,2,4) 24

Przykład CPLD z firmy Lattice ispmach4000 Key Features and Benefits SuperFAST Performance 2.5 ns tpd Pin-to-Pin Delay 400 MHz System Performance Industry s Lowest Power Consumption 1.8V Core for Low Dynamic Power Low Static Current - 1.3-3 ma (1.8V Device Family) - 11.3-13 ma (2.5V and 3.3V Device Families) Multiple Temperature Range Options Commercial: 0 to 70º C TA (Ambient) Industrial: -40 to 85ş C TA (Ambient) Automotive: -40 to 125ş C TA (Ambient) Ease of Design Excellent First-Time Fit and Refit Capability 4 Global Clocks 36 Inputs per Logic Block Up to 80 Product Terms (PT) per Output ORP for Pin Locking Density Migration Flexible Control, Clocking and OE Fast, SpeedLocking, and Wide PT Paths 5V Tolerant Inputs and I/O Easy System Integration Operation with 1.8V, 2.5V and 3.3V Supplies 1.8V, 2.5V, 3.3V I/O Support IEEE 1532 In-System Programmable (ISP ) IEEE 1149.1 Boundary Scan Test Open Drain Output for Flexible Bus Interface Capability Programmable Pull-Up or Bus-Keeper Inputs Hot Socketing Capability 3.3V PCI Compatible Programmable Output Slew Rate Lead-free Package Options 25

Przykład CPLD z firmy Lattice ispmach4000 26

Przykład CPLD z firmy Lattice ispmach4000 27

Oferta CPLD z firmy Altera Układy MAX V, MAX II, MAX Oprogramowanie Środowisko Quartus II (dla CPLD darmowe) 28

Przykład CPLD Altera seria MAX V Feature Summary The following list summarizes the MAX V device family features: Low-cost, low-power, and non-volatile CPLD architecture Instant-on (0.5 ms or less) configuration time Standby current as low as 25 μa and fast power-down/reset operation Fast propagation delay and clock-to-output times Internal oscillator Emulated RSDS output support with a data rate of up to 200 Mbps Emulated LVDS output support with a data rate of up to 304 Mbps Four global clocks with two clocks available per logic array block (LAB) User flash memory block up to 8 Kbits for non-volatile storage with up to 1000 read/write cycles Single 1.8-V external supply for device core MultiVolt I/O interface supporting 3.3-V, 2.5-V, 1.8-V, 1.5-V, and 1.2-V logic levels Bus-friendly architecture including programmable slew rate, drive strength, bus-hold, and programmable pull-up resistors Schmitt triggers enabling noise tolerant inputs (programmable per pin) 29

CPLD Altera MAX V - architektura The CFM block provides the non-volatile storage for all of the SRAM configuration information. The CFM automatically downloads and configures the logic and I/O at power-up, providing instant-on operation. A portion of the flash memory within the MAX V device is partitioned into a small block for user data. This user flash memory (UFM) block provides 8,192 bits of general-purpose user storage. The UFM provides programmable port connections to the logic array for reading and writing. 30

CPLD Altera MAX V - połączenia LE zgrupowane po 10 w Logic Array Block Magistrale łączeniowe kolumny, wiersze Połączenia bezpośrednie LAB Połączenia bezpośrednie do I/O Globalne sygnały zegarowe 31

CPLD Altera MAX V bloki I/O i LE I/O block LVTTL, LVCMOS, LVDS, and RSDS I/O standards JTAG boundary-scan test (BST) support programmable drive strength control weak pull-up resistors during power-up and in system programming tri-state buffers with individual output enable bus-hold circuitry programmable pull-up resistors in user mode open-drain outputs Schmitt trigger inputs, programmable input delay Each LE contains: four-input LUT, programmable register (D, T, JK, or SR operation) carry chain with carry-select capability. supports dynamic single-bit addition or subtraction mode clock enable, preset, asynchronous load, and asynchronous data. 32

Oferta CPLD Xilinx 33

CPLD Xilinx seria XC95xx 34

CPLD Xilinx seria XC95xx Blok funkcyjny Makrocela 35

CPLD Xilinx seria XC95xx Optimized for high-performance 3.3V systems - 5 ns pin-to-pin logic delays, with internal system frequency up to 208 MHz - Small footprint packages including VQFPs, TQFPs and CSPs (Chip Scale Package) - Pb-free available for all packages - Lower power operation - 5V tolerant I/O pins accept 5V, 3.3V, and 2.5V signals - 3.3V or 2.5V output capability - Advanced 0.35 micron feature size CMOS FastFLASH technology Advanced system features - In-system programmable - Superior pin-locking and routability with FastCONNECT II switch matrix - Extra wide 54-input Function Blocks - Up to 90 product-terms per macrocell with individual product-term allocation - Local clock inversion with three global and one product-term clocks - Individual output enable per output pin with local inversion - Input hysteresis on all user and boundary-scan pin inputs - Bus-hold circuitry on all user pin inputs - Supports hot-plugging capability - Full IEEE Standard 1149.1 boundary-scan (JTAG) support on all devices Four pin-compatible device densities - 36 to 288 macrocells, with 800 to 6400 usable gates Fast concurrent programming Slew rate control on individual outputs Enhanced data security features Excellent quality and reliability - 10,000 program/erase cycles endurance rating - 20 year data retention Pin-compatible with 5V core XC9500 family in common package footprints 36

CPLD Xilinx CoolRunner 37

Aplikacje CPLD materiały Lattice 38

Aplikacje CPLD materiały Xilinx This Chapter contains the following topics: IrDA and UART Design in a CoolRunner CPLD Serial ADC Interface Using a CoolRunner CPLD Wireless Transceiver for the CoolRunner CPLD CoolRunner-II Smart Card Reader CoolRunner-II CPLD I2C Bus Controller Implementation CoolRunner-II Serial Peripheral Interface Master Design of a Digital Camera with CoolRunner-II CPLDs CompactFlash Card Interface for CoolRunner-II CPLDs Interfacing to Mobile SDRAM with CoolRunner-II CPLDs An SMBus/I2C-Compatible Port Expander Driving LEDs with Xilinx CPLDs CoolRunner-II CPLDs in Cell Phone Handsets/Terminals Implementing Keypad Scanners with CoolRunner-II Level Translation Using Xilinx CoolRunner-II CPLDs CoolRunner-II Character LCD Module Interface Using Xilinx CPLDs to Interface to a NAND Flash Memory Device Cell Phone Security Demoboard On The Fly Reconfiguration Technique Using CoolRunner-II with OMAP, XScale, i.mx & Other Chipsets Connecting Intel PXA27x Processors to Hard-Disk Drives with a CoolRunner-II CPLD A Low-Power IDE Controller Design Using a CoolRunner-II CPLD Using a Xilinx CoolRunner-II CPLD as a Data Stream Switch Supporting Multiple SD Devices with CoolRunner-II CPLDs 39

Aplikacje CPLD materiały Altera 40

CPLD kontra FPGA typu PAL więcej logiki kombinacyjnej mała / średnia wielokrotna struktura 22V10 do 300 MHz przewidywalne opóźnienia ARCHITEKTURA GĘSTOŚĆ SZYBKOŚĆ typu Gate Array więcej przerzutników średnia / duża do 10 milionów bramek do 500 MHz opóźnienia zależne macierz łączeniowa POŁĄCZENIA połączenia odcinkami 41

Układy FPGA literatura Strony WWW producentów układów FPGA Wielcy ( alfabetycznie) www.actel.com (Microsemi) www.altera.com www.atmel.com www.latticesemi.com www.quicklogic.com www.xilinx.com (wykład) Nowe podmioty na rynku FPGA http://www.achronix.com http://www.siliconbluetech.com http://www.tabula.com Plus ciekawostki http://www.easic.com i strony inne np. http://www.soccentral.com www.eetimes.com/design/programmable-logic 42

Cechy użytkowe układów FPGA Idealna technologia dla aplikacji dedykowanych Fast Time-to-Market Zalety integracji niski koszt, mały pobór mocy, małe wymiary, System on Chip Niższe koszty i mniejsze ryzyko niż układy ASIC no NRE, minimum order size nor inventory risk, no long delay in design and testing Bardzo szybkie przetwarzanie danych massively parallel operation much faster than DSP engines Reprogramowalne w każdym z etapów produkcji i użytkowania in design, in manufacturing, after installation allows unlimited product differentiation 43

Internet Recofigurable Logic 44

ASIC? ASSP? czy FPGA 45

ASIC? ASSP? czy FPGA Dotychczasowy sposób myślenia... 46

ASIC? ASSP? czy FPGA 47

ASIC? ASSP? czy FPGA 48

ASIC? ASSP? czy FPGA 49

ASIC? ASSP? czy FPGA 50

Architektura FPGA Bloki we/wy (Input Output Block) Bloki logiki (Configurable Logic Block) Zasoby połączeniowe 51

Architektura FPGA 52

Rynek układów FPGA Źródło: http://www.fpgadeveloper.com/2 011/07/list-and-comparison-offpga-companies.html Xilinx $2.4B in revenues in fiscal year 2011 (Intel $3.1B) 53

Oferta układów FPGA XILINX XC 2000 1985 0,8...1,5 tys. LGEs XC 3000 & 3100 /A/L 1987 1,5...7,5 tys. LGEs XC 4000 : A/H/D/E/L/EX/XL/XLT/XLA/XV 1990 2...250tys. LGEs XC 5200 1994 3...23 tys. LGEs XC 6200 1996 13...100 tys. LGEs XCS /XL (Spartan) 1997 5...40 tys. LGEs XCV E/EM (Virtex) 1998 58... 4.074 tys. LGEs XCS-2 (Spartan-2) 2000 15...200 tys. LGEs XCV-2 (Virtex-2) 2001 40...10.000 tys. LGEs XCS-3 (Spartan-3) 2004 XCV-4 (Virtex-4) 2004 XCV-5 (Virtex-5) 2007 XCS-6 (Spartan-6) 2009 3,8...147 tys. Logic Cells XCV-6 (Virtex-6) 2009 75...567 tys. Logic Cells XCV-7 (Virtex-7,Artix-7,Kintex-7) 2010-2016 8...1955 tys. Logic Cells 54

Xilinx Spartan3 technologia 90nm struktura gruboziarnista 50k 5.000k system gates 725 MHz max toggle frequency clock DCMs: 2...4 18-bitowe mnożarki: 4...104 pamięć użytkowa Select RAM+ rozproszona: do 520 Kb blokowa (18Kb): do 1872 Kb zewnętrzna pamięć konfiguracji SRAM (4 tryby + ReadBack) port JTAG zasilanie: (testowanie + konfiguracja) V CCINT : 1,2V V CCAUX : 2,5V V CCO : 1,2...3,3V 55

Spartan3 CLB CLB = 2 x LS = 4 x LC przerzutnik / zatrzask Clock Enable AP / AC / SS / SR LUT (Look-Up-Table) carry logic 56

Spartan3 CLB LUT LUT: 4-wejściowy generator funkcji SinglePort / DualPort RAM 16-stopniowy rejestr przesuwny 57

Spartan3 CLB multipleksery brak BUFT/BUFE funkcje magistral realizowane przez multiplexery inne multipleksery: CYMUX, BUFGMUX 58

Spartan3 Carry & Arithmetic logic sumator licznik mnożarka 59

Spartan3 Carry & Arithmetic logic sumator wide-and Equality Comparator Magnitude Comparator Wide-AND 60

Spartan3 - IOB DDR: pary przerzutników DDR mux każdy sygnał z core może być w inwersji Programowalne: pull-up pull-down weak-keeper DCI Digital Controlled Impedance delay 61

Spartan3 - IOB Interfejs z logiką 5V przy użyciu buforów LVTTL: wejścia (IBUF) I IK <100mA, <100wejść jednocześnie wyjścia (OBUF, OBUFT) ew. dodatkowy driver we/wy (IOBUF) nie: dwukierunkowy we. zegar. (IBUFG) konieczny dzielnik 62

Spartan3 LUT as Distributed RAM RAM32X1S RAM16X1D 63

Spartan3 LUT as Shift Register Zastosowania: długie linie opóźniające długie liczniki (także LFSR) synchroniczne FIFO generatory pseudolosowe 64

Spartan3 Block RAM 65

Spartan3 Block RAM Zastosowania: duże pamięci (łączenie) pamięci ROM rejestry FIFO pamięć programu dla P bufory kołowe linie opóźniające złożone automaty złożone funkcje logiczne szybkie, długie liczniki pamięci CAM pamięci 4-portowe tablice funkcji (DDS) 66

Spartan3 mnożarki 18-bitowe czynniki 36-bitowy iloczyn mnożenie w kodzie U2 opcjonalne rejestry łączenie w większe podział na mniejsze Zastosowania: mnożenie przesuwanie obliczanie modułu generowanie wartości U2 mnożenie zespolone mnożenie macierzy (z podziałem czasu) mnożenie zmiennoprzecinkowe 67

Spartan3 Clock Resources 16 wejść zegarów globalnych GCLK po 8 wejść zegarów lokalnych LH/RHCLK 2...8 układów DCM (Digital Clock Manager) dystrybucja kwadrantowa 68

Spartan3 DCM Bloki DCM: DLL (Delay Locked Loop) DFS (Digital Frequency Synthesizer) PS (Phase Shifter) Status Logic Fukcje DCM: eliminacja różnic fazy przesuwanie fazy mnożenie / dzielenie częstotliwości zegara korekcja współczynnika wypełnienia DLL: F in 2 DLL: F in / 1.5, 2, 2.5... 7.5, 8... 16 DLL: F in >> 0 / 90 / 180 / 270 DFS: F in M/D; M=2...32, D=1..32 69

Spartan3 Zasoby połączeniowe Interconnect Tile: Switch Matrix podłaczona do elementu funkcyjnego (CLB, IOB, DCM, BRAM, MULT) Połączenia: long lines hex lines double lines direct lines 70

Spartan3 Zasoby połączeniowe 24 linie pionowe i poziome na każdy wiersz i kolumnę, rozciągnięte przez cały układ podłączone co 6 Switch Matrix 8 linii hex w 4 kierunkach sterowanie tylko na początku odbiór w połowie i na końcu podłączone co 3 Switch Matrix 8 linii double w 4 kierunkach sterowanie tylko na początku odbiór w połowie i na końcu podłączone do 3 Switch Matrix linie direct w 8 kierunkach przekazują sygnały z/do w/w zasobów 71

Spartan3 konfiguracja Tryby konfiguracji: Slave Serial Master Serial Slave Parallel (SelectMAP) Boundary Scan (JTAG) ReadBack: weryfikacja pamięci konfiguracji oraz stanów przerzutników i zawartości pamięci (debug) 72

Virtex 6 Spartan6 73

Virtex 6 Spartan6 74

Virtex 6 Spartan6 75

Spartan6 76

Virtex 6 Spartan6 77

Virtex 6 78

Virtex 6 Spartan6 79

Virtex 6 80

Virtex 6 81

Virtex 6 82

Virtex 6 83

Virtex 6 84

Virtex 6 Spartan6 85

Virtex 6 86

Virtex 6 87

Spartan6 88

Spartan6 89

Spartan6 90

Spartan6 91

Seria 7 92

Seria 7 93

Seria 7 94

EasyPath FPGA 95

EasyPath FPGA EasyPath FPGA 30..70 % cost FPGA 96

Digilent Spartan3 Starter Kit Board Układ XC3S200-FT256: macierz CLB 24 x 20 (480 CLBs, 4,320 LCs) 173 sygnały dla użytkownika max. 76 sygnałów różnicowych 30Kb pamięci rozproszonej 216Kb pamięci blokowej (12 bloków) 12 mnożarek 4 bloki DCM 97

Digilent Spartan3 Starter Kit Board układ XC3S200-FT256 pamięć FLASH konfiguracji 2Mb jumper konfiguracji szeregowej 2 układy pamięci statycznej 10ns 256K 16bitów złącze portu VGA (8 kolorów) złącze portu RS-232 driver portu RS-232 złącze dodatkowego portu RS-232 złącze portu PS/2 4-znakowy, multipleksowany wyświetlacz 7-segmentowy LED 8 przełączników 8 diod LED 4 przyciski oscylator 50MHz gniazdo dodatkowego oscylatora jumpery trybu konfiguracji przycisk PROGRAM dioda LED DONE złącze B1 rozszerzenia złącze A2 rozszerzenia złącze A1 rozszerzenia złącze sondy JTAG Centronics sonda JTAG Centronics (w zestawie) złącze sondy JTAG MultiPro zasilacz sieciowy 5V/2A (w zestawie) dioda LED POWER stabilizatory napięć zasilania 98

Digilent Nexys3 Starter Kit Board Xilinx Spartan6 XC6LX16-CS324 16Mbyte Micron Cellular RAM, 16Mbyte Micron Parallel PCM 16Mbyte Micron Quad-mode SPI PCM 10/100 SMSC LAN8710 PHY Digilent Adept USB port for power, programming & data transfers USB-UART Type-A USB host for mouse, keyboard or memory stick 8-bit VGA 100MHz fixed-frequency oscillator 8 slide switches, 4 push buttons, 4-digit 7seg display, 8 LEDs Four double-wide Pmod connectors, one VHDC connector 99

Digilent Altys Starter Kit Board The Spartan-6 LX45 is optimized for high-performance logic and offers: 6,822 slices each containing four 6-input LUTs and eight flipflops 2.1Mbits of fast block RAM 4 clock tiles (8 DCMs & 4 PLLs) 6 phased-locked loops 58 DSP slices 500MHz+ clock speeds Xilinx Spartan-6 LX45 FPGA, 324-pin BGA package 128Mbyte DDR2 16-bit wide data 10/100/1000 Ethernet PHY On-board USB2 ports for programming & data transfer USB-UART and USB-HID port (for mouse/keyboard) Two HDMI video input ports & two HDMI output ports AC-97 Codec with line-in, line-out, mic, & headphone Real time power monitors on all power rails 16Mbyte x4 SPI Flash for configuration & data storage 100MHz CMOS oscillator 48 I/O s routed to expansion connectors GPIO includes 8 LEDs, 6 buttons, & 8 slide switches 100

Altera - najnowsze układy FPGA Densities ranging from 25K logic elements (LEs) up to 1.1 million LEs Transceiver bandwidth ranging from 600 Mbps up to 28 Gbps Up to 40 percent lower total power compared to previous-generation FPGAs Hard processor system (HPS) with a dual-core ARM Cortex -A9 MPCore processor 101 integrated into the 28-nm Low-Power (28LP) FPGA fabric

FPGA firmy Lattice This is not to say that Lattice doesn t innovate. They do. In fact, Lattice basically created the mid-range FPGA category that both Xilinx and Altera have now adopted. When Lattice rolled out the first low-cost FPGA with high-speed serial interfaces, they sent their larger competitors into a spin, trying to rapidly re-define the line between their expensive, highend FPGAs with SerDes and their market-saturating low-cost FPGAs with conventional IO. Lattice has consistently looked at profitable market segments, designed better mouse traps specifically for those segments, and quietly raised victory flags over numerous applications in whose small ponds they had suddenly become the big fish.

FPGA firmy Actel (Microsemi) 103

Actel lider technologii antifuse 104

Cypress PSoC Programmable System-on-Chip 105

Cypress PSoC Programmable System-on-Chip 106

FPGA SoC (materiały firmy Altera) 107

Softprocessor for FPGA 108

Dlaczego ARM?? 109

Altera ARM based SoC SoC FPGAs integrate an ARM-based hard processor system (HPS) consisting of processor, peripherals, and memory interfaces with the FPGA fabric using a highbandwidth interconnect backbone. The Arria V SoC FPGAs reduce system power, system cost, and board size while increasing system performance by integrating discrete processor, FPGA, and digital signal processing (DSP) functions into a single, user customizable ARM-based system on a chip (SoC). SoC FPGAs provide the ultimate combination of hardened intellectual property (IP) for performance and power savings, with the flexibility of programmable logic

Xilinx PicoBlaze softprocessor PicoBlaze microcontroller supports the following features: 16 byte-wide general-purpose data registers 1K instructions of programmable on-chip program store, automatically loaded during FPGA configuration Byte-wide Arithmetic Logic Unit (ALU) with CARRY and ZERO indicator flags 64-byte internal scratchpad RAM 256 input and 256 output ports for easy expansion and enhancement Automatic 31-location CALL/RETURN stack Predictable performance, always two clock cycles per instruction, up to 200 MHz or 100 MIPS in a Virtex-II Pro FPGA Fast interrupt response; worst-case 5 clock cycles Optimized for Xilinx Spartan-3 architecture just 96 slices and 0.5 to 1 block RAM Support in Spartan-6, and Virtex-6,7 FPGA architectures Assembler, instruction-set simulator support 111

IDE for PicoBlaze (Mediatronix) 112

Xilinx Zynq-7000 Extensible Processing Platform 113

Dziękuję za uwagę To już jest koniec... 114