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



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

Temat: Pamięci. Programowalne struktury logiczne.

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

Elektronika i techniki mikroprocesorowe

PROGRAMMABLE DEVICES UKŁADY PROGRAMOWALNE

Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA

Technika Mikroprocesorowa

Systemy wbudowane. Układy programowalne

To nie huragan, to Cyclone II!

Projektowanie Systemów Wbudowanych

Cyfrowe układy scalone

Technika Cyfrowa. Badanie pamięci

Cyfrowe układy scalone

Język opisu sprzętu VHDL

Opis przedmiotu zamówienia CZĘŚĆ 1

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

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

Podział układów cyfrowych. rkijanka

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

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

Systemy na Chipie. Robert Czerwiński

Opis przedmiotu zamówienia

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

Cyfrowe układy scalone

Elementy cyfrowe i układy logiczne

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

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

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

Systemy uruchomieniowe

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

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

Podstawy elektroniki cyfrowej dla Inżynierii Nanostruktur. Piotr Fita

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

RODZAJE PAMIĘCI RAM. Cz. 1

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

Rok akademicki: 2030/2031 Kod: EIT s Punkty ECTS: 4. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Który z podzespołów komputera przy wyłączonym zasilaniu przechowuje program rozpoczynający ładowanie systemu operacyjnego? A. CPU B. RAM C. ROM D.

PROJEKT I OPTYMALIZACJA STRUKTURY LOGICZNEJ DYDAKTYCZNEGO SYSTEMU MIKROPROCESOROWEGO DLA LABORATORIUM PROJEKTOWANIA ZINTEGROWANEGO

System mikroprocesorowy i peryferia. Dariusz Chaberski

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Układy sekwencyjne. 1. Czas trwania: 6h

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Wykład Mikroprocesory i kontrolery

Wykład II. Pamięci półprzewodnikowe. Studia Podyplomowe INFORMATYKA Architektura komputerów

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

Układy logiczne układy cyfrowe

Programowalne Układy Cyfrowe Laboratorium

Architektura systemu komputerowego

Rok akademicki: 2016/2017 Kod: EAR s Punkty ECTS: 4. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

WPROWADZENIE Mikrosterownik mikrokontrolery

dokument DOK wersja 1.0

Wykład II. Pamięci operacyjne. Studia stacjonarne Pedagogika Budowa i zasada działania komputera

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

MIKROKONTROLERY I MIKROPROCESORY

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

Tranzystor JFET i MOSFET zas. działania

ZL10PLD. Moduł dippld z układem XC3S200

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

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

ZL19PRG. Programator USB dla układów PLD firmy Altera

f we DZIELNIKI I PODZIELNIKI CZĘSTOTLIWOŚCI Dzielnik częstotliwości: układ dający impuls na wyjściu co P impulsów na wejściu

Programowalna matryca logiczna

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Opracował: Jan Front

Politechnika Warszawska

Układy logiczne układy cyfrowe

LABORATORIUM PROJEKTOWANIA UKŁADÓW VLSI

Sprawdzian test egzaminacyjny GRUPA I

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania

Sterowniki Programowalne (SP)

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

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

Opracował: Grzegorz Cygan 2012 r. CEZ Stalowa Wola. Pamięci półprzewodnikowe

LEKCJA TEMAT: Zasada działania komputera.

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL

Programowalne układy logiczne

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

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

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

INSTYTUT TECHNOLOGII ELEKTRONOWEJ

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

Szkolenia specjalistyczne

CZ1. Optymalizacja funkcji przełączających

Układy programowalne

Lista zadań nr 5. Ścieżka projektowa Realizacja każdego z zadań odbywać się będzie zgodnie z poniższą ścieżką projektową (rys.

Architektura komputerów. Układy wejścia-wyjścia komputera

Funkcje logiczne X = A B AND. K.M.Gawrylczyk /55

Architektura komputerów

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

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

Wstęp Architektura... 13

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

TECHNIKA CYFROWA ELEKTRONIKA ANALOGOWA I CYFROWA. Badanie rejestrów

Systemy Czasu Rzeczywistego FPGA

Transkrypt:

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

Pamięci ROM Pamięci stałe typu ROM (Read only memory) umożliwiają jedynie odczytanie informacji zawartej w strukturze pamięci. Działanie: Y= X j *cs gdzie j=linia(a). W wyniku wybrania układu cs =0 na wyjściach Y pojawia się wektor X j zapisany w linii o numerze j o adresie określonym przez wejścia adresowe A. Wejście cs wprowadza wyjścia układu w stan wysokiej impedancji umożliwiając łączenie pamięci w bloki o większej pojemności i podłączanie do magistral. 2

Schemat pamięci CS Wielkość pamięci: liczba bitów wektora danych * 2 A A - adres ROM Y czytane dane 3

Wykres dostępu do pamięci ROM Adres CS t CSA Wysoka impedancja Dane ważne t AA Dla pojawiania się danych ważnych musi upłynąć co najmniej: t CSA (czas dostępu od wybrania układu CS =0) i T AA (czas dostępu od adresu) 4

Układy programowalne PLD Układy pamięci ROM reprogramowalne EEPROM wymazywalne elektrycznie EPROM wymazywalne za pomocą światła UV ROM PROM PLD (Programable Logic Devices) Układy programowane przez użytkownika PLD Wykorzystanie wyjść z otwartym kolektorem do realizacji montażowych sum lub montażowych iloczynów (zmniejszenie liczby bramek - zwarcie wyjść) porównaj bramka z OC (wykład układy kombinacyjne) Układy PLA (Programmable Logic Array) zbudowane z matrycy bramek iloczynów i matrycy bramek sum, możliwość określenia sygnałów wejściowych bramek programowanie przez użytkownika. 5

Matryca PLA, jej struktura i programowanie 6

PLA zaprogramowany 7

Układy PAL Brak wykorzystania w praktyce możliwości struktur układów PLA prowadzi do prostszych realizacji PLD układów PAL (Programmable Array Logic ) typy układów posiadają: ustaloną liczbę wyjść bramki OR o ustalonej liczbie wejść bramki AND i liczbę wejść sygnały przez programowanie wykorzystane w iloczynach. Nazwy: np. GAL 16V8 pierwsza liczba to liczba wyprowadzeń wej/wyj, druga liczba wyjść 8

PAL STRUKTURA i zastosowanie 9

Rodzaje układów PAL Sprzężenie zwrotne układy asynchroniczne Wejścia-wyjścia Rejestry synchroniczne automaty synchroniczne Rejestry z programowanym sygnałem zegara Rozbudowa układów PAL w kierunku bardziej złożonych jakościowo i ilościowo: Układów CPLD (complex ) elementy programowane komórki logiczne Układów FPGA (Field Programmable Gate Array) złożone strukturalnie makrokomórki 10

Makrokomórka PAL i projekt licznika 11

Przykłady PAL 12

Układy CPLD Matryca połaczeń PIA (Programmable Interconnect Array) - dostęp do sygnałów generowanych, wejściowych, wyjściowych Bloki wej/wyj BIO Makrokomórka programowalna matryca funkcji boolowskich układ konfiguracji źródła sygnału wejścia przerzutnika układ konfiguracji sygnału wyjściowego z makrokomórki układy konfiguracji źródeł sygnałów sterujących clk, clr, enable Możliwość zapamiętania konfiguracji układu CPLD w EEPROM (elektrycznie wymazywalnej pamięci ROM) jeden bit komórki pamięci odzwierciedla stan programowalnego połączenia układu. 13

Układ CPLD struktura 14

Układ CPLD przykład architektury MAX7000 15

Układy FPGA Wzrost liczby elementów logicznych Efektywne rozwiązanie problemu łączenia elementów: Magistrale połączeń międzyblokowych (multitrack interconnection) - wiersze i kolumny konfigurowalnych połączeń (ścieżki dzielone) pomiędzy blokami funkcjonalnymi i elementami wej-wyj IOE Bloki funkcjonalne FPGA Matryce LAB (z lokalnymi magistralami) elementów logicznych LE Układy pamięci, Układy DSP (cyfrowego przetwarzania sygnałów) konfigurowalne układy mnożące, Układy z pętlami fazowymi PLL generacja synchronizowanych sygnałów zegarowych o żądanych częstotliwościach. 16

Architektura FPGA 17

Struktura LE Rys. 4.9 str 50 pawlowski Pamięc funkcji logicznej LUT (look up table) programowalna realizuje dowolne funkcje swoich wejść Sygnały przeniesienia Układy konfiguracji sygnałów sterujących i danych, Wyjścia podłączone do magistrali lokalnego LAB i magistrali połączeń międzyblokowych 18

Struktura bloku wyjściowego KBWY układ konfiguracji bufora wyjścia pozwala na dostosowanie bufora do współpracy z układami: TTL, CMOS, o różnych napięciach zasilania itp.. 19

Blok pamięci wbudowanej w FPGA 20

Schemat LE w Cyclone III 21

DE2 Development and Education Board Korzystamy również z DE2-70 podobna struktura, ~2x większy FPGA 22

Elementy składowe DE2 Altera Cyclone II 2C35 FPGA device Altera Serial Configuration device - EPCS16 USB Blaster (on board) for programming and user API control; both JTAG and Active Serial (AS) programming modes are supported 512-Kbyte SRAM 8-Mbyte SDRAM 4-Mbyte Flash memory (1 Mbyte on some boards) SD Card socket 4 pushbutton switches 18 toggle switches 18 red user LEDs 9 green user LEDs 50-MHz oscillator and 27-MHz oscillator for clock sources 24-bit CD-quality audio CODEC with linein, line-out, and microphone-in jacks VGA DAC (10-bit high-speed triple DACs) with VGA-out connector TV Decoder (NTSC/PAL) and TV-in connector 10/100 Ethernet Controller with a connector USB Host/Slave Controller with USB type A and type B connectors RS-232 transceiver and 9-pin connector PS/2 mouse/keyboard connector IrDA transceiver Two 40-pin Expansion Headers with diode protection 23

Schemat blokowy DE2 24

Parametry Cyclone II 2C35 FPGA 33,216 elementów logicznych/ 70 k LE dla 2C70 105 bloków pamięci RAM M4K 483,840 liczba bitów RAM 35 wbudowanych układów mnożących 4 pętle sprzężenia fazowego 475 wyprowadzeń użytkownika typu I/O obudowa z 672 wyprowadzeniami 25

Płyta DE2 i FPGA Cyclone III https://www.cs.put.poznan.pl/rwalkowiak/pli ki/de2_usermanual.zip https://www.cs.put.poznan.pl/rwalkowiak/pli ki/de2_70_user_manual_v108.zip https://www.cs.put.poznan.pl/rwalkowiak/pli ki/cyc2_cii51002.zip 26

Etapy: Projektowanie złożonych układów - Formalizowanie opisu - Projekt koncepcyjny - Projekt techniczny cyfrowych - Uruchomienie i weryfikacja 27

Formalizowanie opisu Specyfikacja działań układu Sposób współpracy z otoczeniem: sygnały danych, sygnały zegarowe, wymagania na sygnały współpracy z urządzeniami i pamięciami. Specyfikacja parametrów elektrycznych i czasowych układu Specyfikacja parametrów mechanicznych układu (obudowa, interfejsy). 28

Projekt koncepcyjny Wybór architektury podział realizowanych funkcji na sprzęt i oprogramowanie, wybór technologii: standardowe układy scalone, układy programowalne (FPGA, CPLD); wybór architektury modułów - możliwe wersje architektury: Standardowe bloki funkcjonalne Struktura mikroprogramowalna System mikroprocesorowy Dekompozycja układu - podział na moduły bloki funkcjonalne: Metoda projektowania zstępująca top-down użycie bloków realizujących skomplikowane funkcje bez określenia sposobu ich realizacji, określenie sposobu współpracy, znając strukturę i zasady współpracy projektuje się poszczególne bloki. Metoda projektowania wstępująca bottom-up zastosowanie bloków o określonej - znanej budowie, dla których należy określić sposób współpracy, aby uzyskać układ realizujący wymagania projektu. 29

Projekt koncepcyjny Opis połączeń i opis funkcji bloków metody: Schemat Język HDL (projekt w FPGA) Opis strukturalny przyjęcie struktury bloków funkcjonalnych, takiej jaka odpowiadałaby realizacji z układów scalonych, projekt jest schematem, którego symbole graficzne układów zamieniono na opis w języku HDL, wymagana jest znajomość opisu budowy układów mogących zrealizować poszczególne funkcje. Opis behawioralny opis układu za pomocą funkcji arytmetycznych i logicznych, realizacja jest powierzona komputerowym systemom wspomagania projektowania. Można wykorzystać dostępne w układach programowalnych: bloki RAM, bloki mnożące, DSP, PLL dostępne w kodzie HDL jako makrodefinicje. Można wykorzystać specjalne narzędzia do włączenia w projekty zespołów funkcjonalnych: procesory, potrzebne interfejsy. 30

Projekt techniczny. Uruchomienie urządzenia i weryfikacja projektu. Projekt techniczny to szczegółowe zaprojektowanie schematów, programów HDL wszystkich modułów urządzenia i programów sterujących ich działaniem. Projekt techniczny jest weryfikowany na podstawie działania modelu fragmentów urządzenia lub poprzez zastosowanie symulatorów. Wykonanie urządzenia, jego uruchomienie i weryfikacja z założeniami, która może prowadzić do potrzeby modyfikacji projektu i urządzenia powrotu w tym iteracyjnej procedurze projektowania do wcześniejszych etapów. 31

Projektowanie urządzeń cyfrowych - metodologie Projektowanie klasyczne schematy modułów i programy dla użytych procesorów; tworzenie i weryfikacja modelu: budowa i uruchamianie modułów, integracja rzeczywistych modułów z symulatorami niektórych modułów np. wykorzystywanych procesorów. Projektowanie współczesne - przy użyciu komputerowych systemów wspomagania projektowania testowanie koncepcji urządzenia bez potrzeby budowy modelu, wykorzystanie kompilatorów języka HDL, symulatorów i analizatorów projektów. Metoda pozwala na realizację modelu w strukturze programowalnej np. przy użyciu płyt modelowych (np. Terasic DE2) podłączanych do komputera w celu programowania i na bieżąco testowania pracy układu, w tym również śledzeniu stanu sygnałów i zawartości rejestrów np. procesora (narzędzia typu SOPC). Umożliwia szybką budowę prototypów (rapid prototyping). 32