Układy programowalne w technice cyfrowej Zakład Techniki Cyfrowej ITK Dr inż. Jerzy Pasierbiński
Technika cyfrowa? Czyż nie jest wszechobecna? Aż rodzi się podejrzenie, że ma się nieźle.. nie tylko na Ziemi.
Technika cyfrowa Przecież nie tak dawno, do podstawowych środków prezentacji należały: tablica, kreda, plansze, rzutnik pisma czy przeźroczy to były nowinki technologiczne. A obecnie..
Technika cyfrowa Do jej rozwoju przyczynili się Ci naukowcy. dane im było zapoczątkować rewolucję technologiczną, która zmieniła Świat J.Redin A Tale of Two Brains
Technika cyfrowa Rejestrowanie, zapamiętywanie, przetwarzanie, przesyłanie informacji. i wiele, wiele innych zadań z każdej dziedziny życia realizuje się przede wszystkim z zastosowaniem metod i urządzeń techniki cyfrowej.
Technika cyfrowa Najintensywniej wspiera postęp techniczny w: informatyce telekomunikacji astronautyce automatyce sprzęcie militarnym metrologii
Technika cyfrowa Taki oscyloskop, naszpikowany cyfrówką, naprawdę wiele może. Ten model nie parzy jeszcze kawy, ale kto wie.
Technika cyfrowa Zadania mogą być realizowane: programowo systemy mikroprocesorowe, sprzętowo za pomocą układów cyfrowych, w sposób mieszany programowo z wyspecjalizowanymi koprocesorami układowymi.
Układy techniki cyfrowej Obecnie są to przede wszystkim: Układy scalone dedykowane określonym zastosowaniom układy ASIC - Application Specific Integrated Circuits Układy szyte na miarę potrzeb lub dostosowywane do tych potrzeb - programowalne
Układy ASIC współczesne układy cyfrowe Układy zindywidualizowane (układy typu Custom): projektowane i wykonywane do określonego zadania, wykonywane w pełnym cyklu projektowym i technologicznym (Full Custom i Semi Custom) Układy o wstępnie określonej strukturze logicznej i połączeniowej, które mogą być ostatecznie konfigurowane przez użytkownika, na jego biurku układy programowalne PLD (Programmable Logic Devices)
Układy ASIC Dla wyrobu produkowanego masowo: Układy typu Custom duże koszty oraz długi czas opracowania i przygotowania produkcji mały koszt jednostkowy układu. Model, sprawdzenie koncepcji układu: Układy PLD dostępność, krótki czas przygotowania zaprojektowanego układu na własnym biurku duży koszt jednostkowy.
Układy ASIC - koszt opracowania
Układy ASIC - czas opracowania
Układy ASIC - taniej Przygodę z układami ASIC można przeżyć także za mniejsze pieniądze i dla kilku układów prototypowych. Wystarczy: komputerowa stacja robocza, oprogramowanie projektowe (np. Cadens lub Mentor Graphics), trochę wiedzy i umiejętności.
Układy ASIC - taniej Projekt układu (VHDL, EDIF, Layout) przesyła się do producenta pojedynczych układów prototypowych. Jedną z firm w Europie, świadczących takie usługi, jest austriacka firma ASM (Austria Mikro Systeme), stosująca technologię MPE (Multi Product Wafer). Zaleca opis projektów w językach VHDL lub Verilog. Koszt usługi kilka tysięcy dolarów za 10 sztuk układów obudowanych.
Układy PLD - koszt i czas realizacji projektu Suma: Cena systemu projektowego (rozłożona na wiele lat i projektów), Cena układu PLD, Cena programatora (zazwyczaj kabel z buforami), Honorarium projektanta (kilka godzin pracy), Dla rozbudowanych układów cena gotowego projektu (modułu bibliotecznego IP Core). Możliwość wielokrotnego przeprogramowywania układu i poprawiania projektu.
Układy PLD - koszt systemu projektowego Do celów edukacyjnych dostępny bezpłatnie w Internecie (prawie wszyscy producenci) Do zastosowań profesjonalnych zależnie od producenta, dostępnych narzędzi i obsługiwanych układów (od kilkaset do kilkudziesięciu tysięcy $)
Układy PLD ceny układów Cena rośnie wraz z możliwościami funkcjonalnymi, gęstością upakowania i szybkością działania. Najtańsze układy w cenie puszki piwa! (Altera: EPM3032ATC44-10 cena netto 3,29zł) Typ układu Szybk ość (ns) Liczba bramek przelicz. Arcitektura Cena (Euro) EPM7064BLC44-7 7,5 1 250 CPLD MAX 6,90 EPM7064BFC100-3 3,5 1 250 CPLD MAX 80,- EPM71128SLC84-15 15 2 500 CPLD MAX 16,- EPM128EQC160-7 7,5 2 500 CPLD MAX 154,- EP20K400CF672 C9 9 400 000 FPGA APEX 855,- EP20K400CF672 I8 8 400 000 FPGA APEX 1710,-
Układy PLD moduły IP Core Moduły biblioteczne IP Core, zazwyczaj w postaci listy połączeń w formacie EDIF, są oferowane przez producentów układów PLD lub wyspecjalizowane firmy softwarowe. Są to: typowe bloki funkcjonalne urządzeń cyfrowych, interfejsy komunikacyjne, mikrokontrolery, mikroprocesory DSP, różnego rodzaju kodery i dekodery stosowane przy kompresji danych, szyfratory realizujące algorytmy kryptograficzne, i wiele innych.
Układy PLD moduły IP Core Ile kosztuje gotowiec IP Core? Oferta projektantów i dystrybutorów w Polsce (Evatronix, DCD, Altera) przykładowo: Mikrokontroler 8051 od 995 do 9 500 $, zależnie od wersji rdzenia i układów peryferyjnych Szyfrator 3-DES -od 495 $ do 4 500 $
Układy PLD czy warto stosować? TAK!!! Szybkie, łatwe i względnie tanie sprawdzenie opracowań prototypowych. Jedyne, ekonomicznie uzasadnione, rozwiązanie dla urządzeń unikatowych. Możliwość ochrony własnego wynalazku przed kradzieżą. W nowych układach jest możliwe zaprogramowanie niekasowalnego kodu zabezpieczającego. Koniec ery Revers Engineering!!!
Układy PLD jedno z zastosowań W erze Internetu, e-bankingu, e-biznesu, e-shopingu i innych e -.., podstawowym zagadnieniem jest bezpieczeństwo transmisji danych. Algorytmy kryptograficzne udaje się, z powodzeniem (przynajmniej ich wspomaganie) implementować w układach programowalnych: DES MARS RC6 Rijndael Serpent Twofish
Układy PLD kto robi te układy? W tym biznesie dominują firmy amerykański, które go zapoczątkowały!!! Na polskim rynku są to: Xilinx, Altera, Lattice i w mniejszym stopniu Actel, Atmel oraz Quick Logic Podział rynku PLD Actel; 7% inni; 9% Xilinx; 35% Lattice; 16% Altera; 33%
Trochę historii 1943 komputer Marck I (University of Harward) 1946 -komputer ENIAC (Uniwerity of Pensylwania) 18 tys. Lamp 1948 tranzystor (J. Bardeen i W.Brattain Bell Laboratories)
Trochę historii 1958 - układ scalony (J.Kilby z Texas Inst. i R. Noyce z Fairchild Semi.) 1970 - pamięci półprzewodnikowe 1971 mikroprocesor C4004 (Intel) 2,3 tys. tranzystorów 1973 - kalkulator elektroniczny 1975 - komputer osobisty 1975 - pierwszy układ programowalny PLS100 (Signetics/Philips) 1983 założenie firm: Lattice, Altera, Cypress 1984 założenie firmy Xilinx 1985 - pierwsze układy FPGA (Xilinx)
Układy programowalne PLD SPLD Simple Programmable Logic Devices (EPROM, fuse, EEPROM, Flash) CPLD Complex Programmable Logic devices (EPROM, EEPROM, Flash) FPGA Field Programmable Gate Arrays (antifuse, SRAM, Flash) PSoC Programmable Systems on Chip
Bramka Układy PLD - konfigurowanie V DD Zestawienie i pamiętanie połączeń: Ścieżka wdyfundowana n+ Bramka pływająca Komórka RAM Ścieżka Ścieżka Tranzystor łączący segmenty ścieżek Ścieżka polikrzemowa Trwale: -jednokrotnie (antifuse, EPROM) -wielokrotnie (EEPROM, Flash) Ulotnie (SRAM) Układy rekonfigurowalne - można zmieniać konfigurację w biegu, zależnie od fazy
Układy PLD - realizacja własnego układu Opisanie projektowanego układu: Tekstowo, za pomocą języka opisu sprzętu HDL - Hardware Description Language Rysując schemat za pomocą edytora graficznego Rysując przebiegi czasowe, jakie chcemy otrzymać przy zadanych wymuszeniach
Układy PLD - realizacja własnego układu Implementacja projektu w układzie PLD: Kompilacja opisu Symulacja funkcjonalna Synteza logiczna Wpasowanie w komórki PLD Wygenerowanie pliku do programowania Za pomocą oprogramowania CAD
Układy PLD - realizacja własnego układu Programowanie układu PLD: Obecnie najczęściej w systemie docelowym, za pomocą interfejsu szeregowego (JTAG testowanie krawędziowe i programowanie) Uniwersalne lub specjalizowane programatory zewnętrzne
Układy PLD obszar zastosowania W układach PLD można realizować projekty systemów cyfrowych o różnej złożoności funkcjonalnej, również z mikroprocesorami. Szczególnie nadają się do: Opracowywania modeli projektowanych urządzeń, Implementacji dużych projektów, realizowanych w niewielkich ilościach, na przykład w unikatowej aparaturze kontrolno-pomiarowej Realizowania wyspecjalizowanych koprocesorów układowych rekonfigurowalnych podczas pracy, wspierających złożone i czasochłonne przetwarzanie dużych strumieni danych
Ewolucja układów PLD Wprowadzanie nowych architektur Rozszerzanie możliwości funkcjonalnych Zwiększanie gęstości upakowania Zmniejszanie poboru mocy Nowe narzędzia projektowe CAD Obniżanie cen
Spadek cen względnych układów wraz ze zwiększaniem złożoności LE Logic element
Roczny spadek cen układów FLEX 1.0 1.00 Cena układu FLEX na LE (normalizowana do ceny z 1993) 0.8 0.6 0.4 0.2 0.578 0.261 0.144 Współczynnik ceny do złożoności (funkcji) malał rocznie o 40% 0.086 0.055 0.046 0.0 1993 1994 1995 1996 1997 1998 1998
Najświeższe trendy rozwojowe Zwiększenie możliwości funkcjonalnych przez wbudowanie: pamięci RAM, procesorów DSP, obwodów PLL interfejsów komunikacyjnych itp.. Przekroczono 2 mln. bramek przeliczeniowych w układzie
Najświeższe trendy rozwojowe Zmniejszenie poboru mocy: Nowe rozwiązania układowe komórek logicznych i matryc połączeniowych Rozdzielenie napięć zasilania rdzenia i komórek I/O Wprowadzanie układów w wersjach niskonapięciowych (2,5V, 1,8V,1,2 V) Układy pobierające kilka mikroamperów prądu w trybie oczekiwania CoolRunner XPLA3 statycznie ok. 80uA
Pobór mocy : /
Pobór mocy :
Zmniejszenie poboru mocy wraz ze zmniejszeniem napięcia zasilania 3,0 2,5 2,7 Układy APEX 20K mw/ LE 2,0 1,5 1,0 0,6 0,5 0,3 0,15 0,0 5.0-V EPF10K100 3.3-V EPF10K100A 2.5-V EP20K400 1.8-V EP20K400E
Standardy I/O i interfejsy komunikacyjne Rozszerzenie standardów napięciowych i interfejsowych dla wyprowadzeń I/O LVTTL, LVCMOS, 3,3V PCI, AGP Wbudowanie interfejsów komunikacyjnych (1Gb/s do 10Gb/s) LVPECL, LVDS, SERDES
Zwiększenie częstotliwości taktowania Sygnał zewnętrzny 350MHz Rdzeń 500MHz
Wirtualne przyrządy pomiarowe Karta komputerowa z graficznym interfejsem operatorskim na ekranie monitora. Główne bloki pomiarowe zrealizowane w układzie specjalizowanym (ASIC). Zobrazowanie wyników i manipulatory na ekranie monitora. APEX 20K
Liczniki czasu i częstotliwości T-2200 Liczniki T-2200 w postaci kart z komputerowych interfejsami, odpowiednio PCI i PXI
Licznik czasu i częstotliwości T-2200PCI Pomiar czasu: 0 43 s z rozdzielczością 200ps Pomiar częstotliwości: od 0,1 Hz do 1,1 GHz
Licznik czasu i częstotliwości T-2200 Okno interfejsu graficznego miernika
Licznik czasu i częstotliwości T-2200 Trzy w jednym: Mostek PCI 9052 prawdziwy ASIC firmy PLX Właściwy licznik czasu FPGA antifuse Firmy QuickLogic pasic QL 16x24 Sterownik lokalny CPLD EEPROM Xilinx XC95288XL