Dwukanałowy wzmacniacz fazoczuły sterowany cyfrowo
Transkrypt
Dwukanałowy wzmacniacz fazoczuły sterowany cyfrowo
Programowanie Układów Logicznych kod kursu: ETD6203 Wprowadzenie do techniki FPGA W1 – 24.02.2016 dr inż. Daniel Kopiec Informacje… Prowadzący: dr inż. Daniel Kopiec Konsultacje: WT: 015a/C2 g. 12-14 PT: 015a/C2 g. 13-15 Strona kursu: http://www.w12.pwr.wroc.pl/mikro/ Kontakt: email: [email protected] lab. 015a/C2 tel. 71 320 3651 2 Wymagania wstępne … cel … Zakładam, że podstawy już opanowane… W tym roku ciąg dalszy techniki cyfrowej i VHDL-a… w praktyce 3 Tematyka kursu – wykład 4 Tematyka kursu - projekt 7 spotkań po 3 godz. (180 min) i 1 spotkanie 2 godz. (90 min) 5 Zaliczenie … • Wykład: cykl 15 wykładów – kolokwium zaliczeniowe -> test wyboru, – termin: ostatni wykład tj. 8 czerwca 2016 godz. 13:15, – poprawa: odpowiedź ustna 13 czerwca 2016 godz. 13:15. • Możliwe zaliczenie na wykładzie – każdy wykład kończy się przykładowymi pytaniami od 5 – 10, – w trakcie następnego wykładu możliwa kartkówka z poprzedniego wykładu, – do zdobycia 40 punktów = 5.0, – ewentualnie 1/3 punktów doliczona zostaje do kolokwium. 6 Zaliczenie … … przykładowy test 7 Zaliczenie … zajęcia projektowe • Projekt: 8 spotkań, – praca na zajęciach – kilka zadań realizowanych w czasie zajęć, – projekt indywidualny: • • • • • • wybór tematu, założenia projektowe, kod programu, uruchomienie, szczegółowa dokumentacja projektu, prezentacja. Realizacja projektu: od drugich zajęć 8 Literatura kursu W ramach powtórzenia techniki cyfrowej: [1] K. M. Noga, M. Radwański, Multisim, Technika cyfrowa w przykładach, Wydawnictwo BTC, 2009 [2] B. Wilkinson, Układy cyfrowe, Wydawnictwa Komunikacji i Łączności, 2003 O jezyku VHDL, Verilog i układach programowalnych FPGA: [1] D. Kania, Układy logiki programowalnej, Podstawy syntezy i sposoby odwzorowania technologicznego, Wydawnictwo PWN (2012) [2] K. Skahill, Język VHDL: projektowanie programowalnych układów logicznych, Wydawnictwa NaukowoTechniczne, 2004 [3] M. Zwolinski, Projektowanie układów cyfrowych z wykorzystaniem języka VHDL, Wydawnictwa Komunikacji i Łączności, 2002 [4] J. Majewski, P. Zbysiński, Układy FPGA w przykładach, Wydawnictwo BTC, 2007. [5] P. Zbysiński, J. Pasierbiński, Układy programowalne pierwsze kroki, wydanie 2, BTC Warszawa, 2004 [6] W. Wrona, VHDL: język opisu i projektowania układów cyfrowych, Wydawnictwo Pracowni Komputerowej Jacka Skalmierskiego, 1998 [7] J. Pasierbiński, P. Zbysiński, Układy programowalne w praktyce, Wydawnictwa Komunikacji i Łączności, 2001 [8] Z. Hajduk, Wprowadzenie do języka Verilog, Wydawnictwo BTC, 2009 9 Źródła internetowe: [1] http://www.xilinx.com/training/free-video-courses.htm [2] http://www.digilentinc.com/data/textbooks/intro_digital_design-digilent-vhdl_online.pdf [3] http://www.fpga4fun.com/ [4] http://www.eng.auburn.edu/department/ee/mgc/vhdl.html [5] http://www.ics.uci.edu/~alexv/154/VHDL-Cookbook.pdf Coś dla entuzjastów elektroniki … • Możliwość realizacji własnych projektów w zespołach 2 – 5 osobowych. • Możliwość pozyskania narzędzi, zestawów uruchomieniowych o łącznej wartości $100. • Możliwość zdobycia nagrody głównej o wartości $5000. Zgłoszenia przyjmowane są tylko do: 29 lutego 2016 roku. Więcej informacji na oficjalnej stronie Texas Instruments: 10 http://www.ti.com/ww/eu/TIIC2016/enter.html … od tranzystora do FPGA • • • • • • • • • • • • • • 11 1947 pierwszy tranzystor ostrzowy skonstruowany w laboratoriach firmy Bell Telephone Laboratories przez Johna Bardeena oraz Waltera Housera Brattaina, 1949 pierwszy tranzystor złączowy Shockley, 1958 pierwszy układ scalony, Jack Kilby, Texas Instruments, (Kilby zastosował german i połączenia drucikami) 1959 pierwszy monolityczny krzemowy prototyp układu scalonego Robert Noyce, Fairchild Sem. 1961 pierwsze planarne układy scalone, Fairchild Sem. i Texas Instruments Prawo Moore’a 1965 – przewiduje wykładniczy wzrost liczby tranzystorów w układach scalonych co 12 – 18 miesięcy 1967 Micromosaic – precursoc ASIC, (Application-Specific Integrated Circuit - ASIC) 1970 – pamięć statyczna RAM (256 bitów) – Fairchild, symbol 4100, 1970 – pamięć dynamiczna RAM (1024 bity) – Intel, symbol 1103, 1971 – opracowanie pierwszego mikroprocesora 4-bitowego Intel 4004, (2300 tranzystorów, 34 rozkazy, 60k rozkazów/s), rok później Intel 8008 (8-bit, 45 rozkazów, 300k rozkazów/s) 1975 – prekursor PLD opracowany przez firmę Signetics – układ o strukturze PLA 1978 – opracowanie układu o strukturze PAL przez firmę Monolithic Memoriec 1980 – technologia CMOS, dominują układy BiCMOS i SOI, pierwszy milion tranzystorów w jednym układzie 1985 – narodziny FPGA firma Xilinx Pierwszy tranzystor, 1947 Pierwszy układ scalony, 1958 Pierwszy monolityczny układ scalony,1959 Producenci ukł. programowalnych 12 , Altium Designer Definicja układu programowalnego • Układ programowalny to układ scalony, którego właściwości funkcjonalne nie są definiowane przez producenta, lecz przez końcowego użytkownika. • Najważniejszą cechą jest możliwość nadawania im określonych cech funkcjonalnych przez programistę. • Układ programowalny jest wytwarzany z pełnym zestawem połączeń usuwanych w trakcie programowania w specjalnym programatorze wg. zaprojektowanej maski przepaleń. 13 Klasyfikacja układów logicznych 14 Cel stosowania logicznych układów programowalnych Załóżmy, że musimy powielić ten schemat 100 razy … 1 układ scalony … a to jego fizyczna realizacja 30 lat temu 15 PLD PAL - Programmable Logic Arrays PLA - Programmable Array Logic GAL 16V8 zajrzyjmy do wnętrza … 16 Standardowy symbol bramki AND i jego odpowiednik w diagramie struktury PLA, PAL Szkic architektury układów PLD o strukturze PAL i PLA Architektura układów CPLD i FPGA Szkic architektury układów CPLD oraz FPGA CPLD 17 FPGA CPLD – zapewnia stałe opóźnienie, przewidywalne czasy propagacji Struktura wewnętrzna 18 PROCESOR, MIKROKONTROLER FPGA Macierze połączeniowe 19 Technologia połączeń wewnętrznych • • FUSE – bezpieczniki ANTIFUSE – antybezpieczniki • • • • • • • • • • • • • EPROM – kasowalne światłem UV EEPROM – kasowalne elektrycznie (reprogramowalna) FLASH • • • • • programowanie wielokrotne, zawartość pamięci nieulotna droższe ze względu na integrację pamięci FLSAH, skomplikowany proces technologiczny większy pobór mocy SRAM • • • 20 przewodzi po przepaleniu programowane jednokrotnie dane o konfiguracji nie są przenoszone poza układ, „revers enginering” praktycznie niemożliwy brak wewnętrznych tranzystorów stosowane w lotnictwie i aeronautyce – niezawodne, odporne na promieniowanie 20% mniejsze zużycie mocy mniejsza powierzchni układu szybsze działanie – brak pojemności tranzystorów droższe w produkcji, nie nadają się do budowy prototypów • • programowane wielokrotnie oparte na technologii CMOS SRAM ulotne, konieczność ponownego programowanie po wyłączeniu zasilania, ładownie z zewnętrznej pamięci EPROM lub FLASH opóźniony start urządzenia – ze względu na czas ładowania programu rozmiar fizyczny komórki SRAM o rząd większe niż rozmiary złącza programowalnego VHDL – język opisu sprzętu • Język VHDL jest jednym z nowszych języków opisu i projektowania układów cyfrowych. Już w lipcu 1983 roku zespół złożony z przedstawicieli firm Intermetrics, IBM oraz Texas Instruments rozpoczął pierwszy etap pracy nad nowym językiem opisu i projektowania układów VLSI. Po roku pracy zaimplementowano dany język, dzięki czemu w grudniu 1985 otrzymano pierwszą wersję narzędzia napisanego w języku Ada dla komputerów klasy VA 11/780 i IBM 370. • Projekt VHDL był częścią programu Departamentu Obrony USA o nazwie VHSIC, którego zadaniem było opracowanie metod projektowania oraz wykorzystanie najbardziej złożonych i bardzo szybkich układów scalonych. W roku 1987 VHDL stał się obowiązującym standardem w dziedzinie języków opisu i projektowania układów VLSI. Ulepszona wersja języka pojawiła się dopiero w 1993 roku i obecnie jest stosowana przez większość projektantów układów cyfrowych na świecie. 21 Przykładowe pytania 1. Klasyfikacja układów programowalnych. 2. Wskazać zasadnicze różnice między układami PLA oraz PAL. 3. Wskazać różnice w budowie układów CPLD oraz FPGA. 4. Co to są trakty połączeniowe ? 5. Który typ połączenia traktów zapewnia największą niezawodność ? 6. Wskazać różnicę między mikrokontrolerem a procesorem. 7. Czy układy CPLD/FPGA realizują operacje sekwencyjnie czy równolegle ? 8. Na jakie parametry układu CPLD/FPGA należy zwrócić uwagę ? 22 9. Jakie są poziomy napięć akceptowane przez układy FPGA ?