Upload
nguyenkhanh
View
214
Download
0
Embed Size (px)
Citation preview
Technika Cyfrowa 2
wykład 1: programowalne struktury logiczne
- wprowadzenie
Dr inż. Jacek Mazurkiewicz
Katedra Informatyki Technicznej
e-mail: [email protected]
Sprawy formalne
• konsultacje, p. 225 C-3:
ŚR: 11-13, PT: 9-11
• trochę slajdy: www.zsk.ict.pwr.wroc.pl
• trochę „Wiktor Zinn”
• egzamin: 17.06.2016, godz. 9:00–11:00, s.205 C-1
• dobieg: 27.06.2016, godz. 9:00-11:00, s.41 C-4
- TC2: wykład i laborka – trzeba zaliczyć obie formy
- ocena z laboratorium – 20% oceny z egzaminu
- zadania stwierdzające co w głowie zostało
- pytanie bonusowe!
TC2 – o czym będzie na wykładzie
• Technologie wytwarzania i rodziny układów logicznych
• Parametry i charakterystyki układów logicznych
• Układy PLD: charakterystyka technologii, zasady
programowania
• Architektury układów PAL: kombinacyjnych,
rejestrowych, z makrokomórkami programowalnymi
• Układy FPGA: klasyfikacja, technologie programowania,
architektury
• Proces projektowania układów cyfrowych
z wykorzystaniem FPGA
• Tendencje rozwojowe w projektowaniu systemów
TC2 – a na laborce będzie wesoło!
• Ćwiczenia dotyczące projektowania oraz symulacji komputerowej
prostych kombinacyjnych oraz sekwencyjnych układów cyfrowych.
• Sposób realizacji i warunki zaliczenia zestawu ćwiczeń określa
prowadzący podczas pierwszych zajęć.
• Szczegółowe zadania dla każdej grupy definiuje prowadzący.
• Tematyka kolejnych zajęć:
• układy konwersji kodów: kodery, dekodery, translatory
• układy arytmetyczne: sumatory, subtraktory, komparatory
• rejestry: PIPO, SISO, PISO, SIPO
• liczniki asynchroniczne i synchroniczne o różnych właściwościach
• realizacja układów sekwencyjnych opisanych automatem Moore'a
i Mealy'ego
• Czyli TC1 w projektowaniu i symulacji
TC2 – laborka – mam swoich ludzi
• dr inż. Jacek Mazurkiewicz:
- środa (N i P), 15:00 – 18:00, s. L2.7 C-16,
- środa (N i P), 18:00 – 21:00, s. L2.7 C-16,
- poniedziałek (N i P), 17:00 – 20:00, s. L2.7 C-16
• dr inż. Dariusz Banasiak:
- piątek (N i P), 09:00 – 12:00, s. L2.7 C-16,
- środa (N i P), 18:00 – 21:00, s. 019A C-3,
• dr inż. Jarosław Mierzwa:
- środa (N i P), 08:00 – 11:00, s. L2.7 C-16,
- środa (N i P), 15:00 – 18:00, s. 019A C-3,
• dr inż. Marek Woda:
- piątek (N i P), 12:00 – 15:00, s. L2.7 C-16.
TC2 – literatura
• Praca Zbiorowa: Programowalne moduły logiczne
w syntezie układów cyfrowych. WKiŁ
• Łuba T. (red.): Synteza układów cyfrowych. WKŁ
• Łuba T. Markowski M.A. Zbierzchowski B.: Komputerowe
projektowanie układów cyfrowych w strukturach PLD.
WKŁ
• Pasierbiński J., Zbysiński P.: Układy programowalne
w praktyce. WKŁ
• Łuba T., Jasiński K., Zbierzchowski B.: Specjalizowane
układy cyfrowe w strukturach PLD i FPGA. WKiŁ
• Łakomy M., Zabrodzki J.: Układy scalone CMOS. PWN
• Kalisz J.: Podstawy elektroniki cyfrowej. WKŁ
TC2 – KRK
\CELE PRZEDMIOTU
C1. Zdobycie podstawowej wiedzy z zakresu architektury, działania i aplikacji specjalizowanych układów
programowalnych.
C2. Zdobycie podstawowej wiedzy o cechach i właściwościach technologii wykonania cyfrowych układów
logicznych.
C3. Zdobycie podstawowej wiedzy o sposobie opisu, analizy, symulacji i projektowania struktur PLD i FPGA.
C4. Zdobycie umiejętności użycia środowisk projektowania, modelowania oraz symulacji kombinacyjnych i
sekwencyjnych układów cyfrowych.
PRZEDMIOTOWE EFEKTY KSZTAŁCENIA
Z zakresu wiedzy:
PEK_W01 – zna zasady logiki budowy układów programowalnych i specjalizowanych.
PEK_W02 – definiuje cechy charakterystyczne technologii konstrukcji układów cyfrowych.
PEK_W03 – zna architekturę układów typu PLD i FPGA i zasady ich aplikacji.
PEK_W04 – zna sposoby opisu, analizy i projektowania podstawowych struktur programowalnych.
Z zakresu umiejętności:
PEK_U01 – potrafi posługiwać się narzędziami projektowania oraz symulacji komputerowej kombinacyjnych
układów cyfrowych.
PEK_U02 – potrafi posługiwać się narzędziami projektowania oraz symulacji komputerowej sekwencyjnych
układów cyfrowych.
PEK_U03 – potrafi korzystać z katalogów i not aplikacyjnych elementów scalonych.
Sposoby projektowania układów (1)
• Wielkie standardy: - inicjatywa producenta,
- produkcja masowa = masowi odbiorcy,
- duża podaż, niskie ceny, łatwa dostępność,
- duża rozpiętość stopnia skomplikowania: „od funktora do procesora”.
• Układy specjalizowane: - ASIC: Application Specific Integrated Circuit,
- „zamówienie – wykonanie – honoracja” („Ostatnie Takie Trio”),
- układy z pełnym cyklem projektowania (full-custom),
- układy z ograniczonym cyklem projektowania (semi-custom):
- „na komórkach standardowych” – standard cells,
- „na płytkach wstępnie przygotowanych” – gate arrays,
- drogo, brak masowości,
- jest klient = się robi.
Programowalne struktury logiczne (1)
• jak klocki LEGO:
- z wielkich standardów: - inicjatywa producenta,
- produkcja masowa = masowi odbiorcy,
- duża podaż, niskie ceny, łatwa dostępność,
- pewna rozpiętość stopnia skomplikowania,
- z układów specjalizowanych: - układ kupiony nie może podlegać „natychmiastowej” aplikacji,
- konstruktor układ programuje – by spełniał żądaną funkcję,
- kształtowanie funkcji układu ograniczone zaimplementowaną „bazą materiałową”,
- „idea konstruktora” niezbędną, ale jej zakres ograniczony!
Programowalne struktury logiczne (2)
• PLD = Programmable Logic Devices
• FPGA = Field Programmable Gate Array
• kompilator stanów logicznych
• transformacja zapisów języka programowania – CUPL, ABEL, PLPL, PALASM - na wyrażenia boolowskie
• minimalizacja wyrażeń logicznych – algorytmy: PRESTO, ESPRESSO, QUINE-McCLUSKY
• tworzenie mapy punktów programowania
• symulacja funkcjonalna, przepalenia struktury – programowanie
• PLD – sprzęt z przypisanymi funkcjami
• programowalna pamięć (PROM, EPROM) z „osprzętem” do sterowania działaniem „ustrojstwa”
• mixy i remixy: PLS – Programmable Logic Sequencer, FPC – Fuse Programmable Controller
• a „ustrojstwa” mogą być różne!
PLD – próba klasyfikacji (1)
• PAL - Programmable Array Logic
• PLA – Programmable Logic Array
• GAL – Generic Array Logic
• MACH – Macro Array MOS High-density
• EPLD – Erasable PLD
• PLS – Programmable Logic Sequencer
• FPGA – Field Programmable Gate Array
• LCA – Logic Cell Array
• zawsze matryca tranzystorów TTL, MOS
• a matryce są dwie: AND oraz OR
• programowanie – palenie połączeń
• reprogramowanie – wprowadzenie ładunku w obszar dielektryka tranzystora MOS
PAL (1)
• AND – programowalny, termy wejściowe
• OR – nieprogramowalny – słabość technologii
• sprzężenia zwrotne po OR
• programowalna przełączalność wejść/wyjść