Układy FPGA Sumator 4-bitowy

Podobne dokumenty
Układy FPGA. programowanie bramek w zestawie uruchomieniowym Basys3 firmy Digilent -środowisko Vivado (2016.4)- firmy Xilings, język Verilog

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

Wygląd okna aplikacji Project Navigator.

TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie

SERWER DRUKARKI USB 2.0

SYSTEMY DEDYKOWANE W UKŁADACH PROGRAMOWALNYCH

Bezpieczeństwo informacji oparte o kryptografię kwantową

Informatyka I : Tworzenie projektu

1. ISE WebPack i VHDL Xilinx ISE Design Suite 10.1 VHDL Tworzenie projektu Project Navigator Xilinx ISE Design Suite 10.1 File

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

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

USB 2.0 SERWER DRUKARKI ETHERNETU

Tomasz Greszata - Koszalin

Akceleracja symulacji HES-AHDL. 1. Rozpoczęcie pracy aplikacja VNC viewer

Laboratorium - Instalacja Virtual PC

Projektowanie z użyciem procesora programowego Nios II

MentorGraphics ModelSim

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

cmt + CODESYS, oraz zdalne wejścia/ wyjścia

Poradnik użytkownika pomoc techniczna

Konfiguracja pakietu CrossStudio for MSP

Instrukcja konfigurowania GPS Trackera

USB 2.0 SERWER DRUKARKI ETHERNETU

Programowalne układy logiczne Wydziałowy Zakład Nanometrologii SEMESTR LETNI

Przykładowa konfiguracja komunikacji pomiędzy oprogramowaniem Wonderware i Codesys z wykorzystaniem sieci LAN lub modułu GSM

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Systemy Czasu Rzeczywistego FPGA

Konfiguracja Trimble Access Sync

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

SYSTEMY DEDYKOWANE W UKŁADACH PROGRAMOWALNYCH

MS Visual Studio Express 2012 for Web instalacja i konfiguracja

Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy z sterownikiem CX1000

Projektowanie układów VLSI-ASIC techniką od ogółu do szczegółu (top-down) przy użyciu pakietu CADENCE

Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie

Engenius/Senao EUB-362EXT IEEE802.11b/g USB Instrukcja Obsługi

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

UMOWY INSTRUKCJA STANOWISKOWA

Konfigurowanie sterownika BC8150 firmy Beckhoff wprowadzenie

PROJEKTOWANIE APLIKACJI INTERNETOWYCH

Instrukcja do oprogramowania ENAP DEC-1

Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie

Widok programatora PonyProgUSB wersja 1.0 oraz jego elementy przedstawiono na poniższym rysunku.

Modelowanie obiektowe - Ćw. 1.

Instrukcja użytkowania

Konfiguracja i podłączenie sterownika Horner APG do oprogramowania Cscape po RS232

INSTALACJA LICENCJI SIECIOWEJ NET HASP Wersja 8.32

1. Przekrój poprzeczny tranzystora nmos. Uzupełnij rysunek odpowiednimi nazwami domieszek (n lub p). S G D

FAQ: /PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200

Internet bezprzewodowy

Konfigurowanie sterownika BX9000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy ze sterownikiem BX9000

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

DEWI

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:

Przewodnik szybkiej instalacji

TURNINGPOINT KROKI DO URUCHOMIENIA TESTU NA PC

By móc zainstalować plugin niezbędna jest uprzednia instalacja Notowań Online 3 oraz programu do analizy technicznej AmiBroker.

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012:

Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie

TWORZENIE SZAF Z PATCH-PANELAMI

TWORZENIE POŁĄCZENIA INTERNETOWEGO PRZEZ TELEFON

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista

6. Cel: Sprawdzenie drogi protokołu TCP/IP

FAQ: /PL Data: 19/11/2007 Programowanie przez Internet: Przekierowanie portu na SCALANCE S 612 w celu umo

TWORZENIE OD PODSTAW PROJEKTU W ŚRODOWISKU QUARTUS PRIME

Instalacja i opis podstawowych funkcji programu Dev-C++

Przewodnik instalacji i rejestracji ASN RadioOS

Krótka instrukcja instalacji Adobe Acrobat Reader

Istnieją trzy sposoby tworzenia kopii zapasowej na panelu Comfort:

Instrukcja instalacji i konfiguracji bazy danych SQL SERVER 2008 EXPRESS R2. Instrukcja tworzenia bazy danych dla programu AUTOSAT 3. wersja 0.0.

Site Installer v2.4.xx

Projekt procesora NIOSII w strukturze programowalnego układu logicznego CYCLONEII EP2C35F672C6 podłączenie i obsługa wyświetlacza LCD.

Projektowania Układów Elektronicznych CAD Laboratorium

1. Synteza układów opisanych w języku VHDL Xilinx ISE Design Suite 10.1 VHDL 2. Obsługa przetwornika CA Project Add source...

Instrukcja instalacji Zespołu Diagnostycznego Delphi w systemie Vista.

Tworzenie pliku źródłowego w aplikacji POLTAX2B.

Aktualizacja sterownika Podobnie jak w przypadku instalacji, podczas wykonywania tej operacji należy zalogować się jako administrator.

Oprogramowanie Turning Point 5. Tryb AnyWhere (Test AnyWhere) Oprogramowanie Turning Point 5 Tryb AnyWhere Agraf Sp. z o.o. Nowe Sady 2, Łódź

JDK 7u25 NetBeans Zajęcia 1 strona - 1

StacjaSQL.2012 / PIERWSZE URUCHOMIENIE I PODSTAWOWE USTAWIENIA / / USUNIĘCIE "BAZY TESTOWEJ, PRZEJŚCIE NA WERSJĘ KOMERCYJNĄ / oraz. str.

dokument DOK wersja 1.0

Gromadzenie danych. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 15 minut.

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.

Laboratorium Siemens UMX2MS

Wersja polska. Wstęp. Zawartość opakowania. Dane techniczne. PU001 Sweex 1 Port Parallel PCI Card

AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE. QuIDE Quantum IDE PODRĘCZNIK UŻYTKOWNIKA

Przełącznik USB 2.0. Podręcznik użytkownika. Typ: DA & DA

Modelowanie liczników w języku Verilog i ich implementacja w strukturze FPGA

KolNet. Konfiguracja kolektora Honeywell i instalacja programu. NET Innovation Software Sp. z o. o.

Instrukca instalacji i obsługi aplikacji CHIGO Smart Kit

2. W oknie dialogowym Choose Toolbox Items w zakładce.net Framework Components naciskamy przycisk Browse...

Rozwiązanie Zadania egzaminacyjnego egzamin praktyczny z kwalifikacji e13 styczeń 2015

Problemy techniczne SQL Server

Rys.1. Technika zestawiania części za pomocą polecenia WSTAWIAJĄCE (insert)

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

Transkrypt:

Układy FPGA Sumator 4-bitowy programowanie bramek w zestawie uruchomieniowym Basys3 firmy Digilent -środowisko Vivado (2016.4)- firmy Xilings, język Verilog Pierwszy projektowany układ będzie zawierał cztery sumatory 1-bitowe, połączone kaskadowo tworzące sumator 4 bitow y- których wejścia będą podłączone do przełączników na płytce Basys3 (wykorzystamy SW0 SW8), a stan wyjść będzie wskazywany przez LED-y (wykorzystamy LD0 - LD4). 1.Tworzenie projektu Uruchamiamy środowisko Vivado 2016.4 (na dolnym pasku) Klikamy na ikonę tworzenia nowego projektu ("Create New Project"). Otwiera sie okno "Create a New Vivado Project" Next W oknie Project name nazwij projekt full_adder i wybierz jego lokalizację jako np. Project location: C:/Users/student. Pole Create project subdirectory pozostaw zaznaczone. Next W oknie Project type wybierz opcję RTL project (Register Transfer Level) z zaznaczeniem Do not specify resource at this time (kody źródłowe zostaną dodane w późniejszym etapie). Next W oknie Default part należy wybrać: Product category: General Purpose Family: Artix-7 Sub-family: Artix-7 Package: cpg236 Speed grade: -1 Temperature grade: All Remaining Z pozostałych do wyboru zaznaczyć xc7a35tcpg236-1. Model ten posiada 20800 tablic LUT. Next Następnie pojawia się okno: "New project Summary" a w nim opisane są parametry charakterystyczne projektu Finish. Przez parę sekund tworzy się projekt (Create project ) i otwiera się kolejne okno czyli projekt: simple_gates. Po utworzeniu projektu, z lewej strony okna powinien znajdować się panel Flow Navigator. Jeżeli jest on niewidoczny, wciśnij kombinację Ctrl+Q. 1

1.Dodawanie plików do projektu W panelu Flow Navigator będziemy rozwijali zakładkę Project Manager. Utworzymy model SUMATORA 4-bitowego kaskadowego o nazwie full_adder. (Project Manager -> Add sources -> Add or create design sources Next Create File ) Pojawia sie małe okno: Create Source File File type: Verilog, File name: full_adder, File location: Choose location: Local to Project OK Pojawia się nowe okno z opisem i lokalizacją projektu Finish Następne małe okno: Define Module. Sprawdzamy nazwę - Module name: full_adder i definiujemy porty (I/OPort Definitions). Port Name/Direction kolejno: jako input : a _in, b_in, zaznaczyć BUS (ustawić odpowiednio MSB, LSB), jako input : c_in (bez zaznaczenia BUS), jako output : s_out, zaznaczyć BUS (ustawić odpowiednio MSB, LSB), jako output : c_out (bez zaznaczenia BUS), OK 2

W oknie Project Manager Sources pojawia się folder : Design Sources - plik (ve):full_adder.v,(na dole okna powinna być aktywna zakładka Hierarchy ). Zapisujemy moduł (Ctrl + S). Po każdym zapisaniu pliku Vivado analizuje kod. Jeżeli są jakieś błędy składni, to informacja o nich zostaje wyświetlona w zakładce Messages okna Messages (na dole). Zwróć również uwagę, że pliki z błędami pojawiają się w oknie Sources w folderze Design sources Syntax Error Files Nie tworzymy struktury hierarchicznej (nie przypisujemy wejść/wyjść do sw/led), ponieważ dokonamy KONKATENACJI czyli scalania wektorów ze sobą i z pojedynczymi sygnałami w przypisaniu assign : Po otwarciu pliku pojawia się moduł całości układu o nazwie full_adder : `timescale 1ns / 1ps module full_adder ( input wire [3:0] a_in, input wire [3:0] b_in, input wire c_in, output wire c_out, output wire [3:0] s_out ) ; assign {c_out, s_out[3:0]} = a_in[3:0] + b_in[3:0] + c_in ; // znak + oznacza sumę sygnałów endmodule Nie wykonujemy SYMULACJI. Implementacja w układzie FPGA SYNTEZA: Uruchom syntezę (-> Run Synthesis). Zwróć uwagę na pasek statusu w prawym górnym rogu ekranu. Synteza przekształca opis w języku HDL na schemat w postaci bramek. Może pojawić sie komunikat dotyczacy blokady, należy wybrać Allow Access. Należy śledzić w prawym górnym rogu ekranu przebieg syntezy i czekać na komunikat Synthesis Succesfully Completed. Po zakończeniu, na razie, nie wybieramy Run Implementation tylko View Reports OK Sprawdź, ile procent dostępnych tablic LUT, buforów wejściowych IBUF i buforów wyjściowych OBUF wykorzystał na układ ( Reports Utilization Raport). Zauważ, że w menu Run Synthesis pojawiły się dwie nowe opcje (nie musisz ich teraz uruchamiać). 3

Aby przeprowadzić implementację sprzętową, musimy wprowadzić ograniczenie projektowe (ang. constraints), które powiedzą Vivado, które wyprowadzenia układu FPGA są używane i jak są skonfigurowane. W tym celu: 1)dodaj do projektu plik ograniczeń XDC: Basys3 Master.xdc (który należy rozpakować ze strony home). 2)Następnie należy zapisać poprzez: Add Sources Add or Create Constraints Add Files (z projektu:full_adder). Odkomentuj potrzebne linijki w pliku. Należy odkomentować wszystkie używane switche: sw[0] do sw[8] i ledy: led[0] do led[4], po dwa wiersze (!) na każdy switch i led oraz dokonać podmiany w nawiasach klamrowych { } według schematu z rysunku sumatora 4- bitowego ze strony 1 : {sw[0]} na {a_in[0]}. itd., {sw[4]} na {b_in[0]}. itd., {sw[8]} na {c_in}, {led[0]} na {s_out[0]}.itd, {led[4]} na {c_out} 3)Sprawdzić czy plik xdc jest w folderze Constraints. IMPLEMENTACJA: Uruchom implementację ( Run Implementation ). Obserwuj log. Po implementacji zauważ, że pojawiły się nowe zestawy raportów Place Design i Route Design. W większości z uwagi na prostotę projektu będą one większości puste. Znajdź w raporcie informację o procencie wykorzystanych zasobów IO (Place Design->Utilization Raport, Bonded IOB). Otwórz topografię układu ( Implemented Design), znajdź jedną z tablic LUT (look-up table), która został wykorzystana do budowy bramki AND lub OR, podświetl połączenia wejściowe i wyjściowe. Zaznacz na topografii slice i otwórz jego schemat (prawy przycisk myszy ->Schematic lub F4). Powinien on zawierać 4 bufory wejściowe, dwa elementy tablicy LUT i dwa bufory wyjściowe. W Messages mogą się pojawić teraz ostrzeżenia, które ignorujemy: [Timing 38-313] There are no user specified timing constraints. Timing constraints are needed for proper timing analysis. [Chipscope 16-3] Cannot debug net 'led[0]'; it is not accessible from the fabric routing.(12 more like this) PROGRAMOWANIE I DEBUGOWANIE: Należy zaznaczyć bin file w Bitstream Settings. Wygeneruj bitstream (plik zawierający dane do programowania FPGA) Generate Bitstream. Gdy po wygenerowaniu bitstreamu chcemy sprawdzić ilość użytych tablic LUT oraz I/O, to z górnego paska należy otworzyć Project Summary - (okno Utilization (Post Implementation) w formie : Graph lub Table Upewnij się, że przełączniki na układzie Basys3 są w odpowiednim ustawieniu (obie niebieskie zworki bliżej środka płytki): -JP1 (Mode) USB -JP2 (Power) USB Podłącz układ Basys3 przy pomocy kabla USB do komputera i włącz go przełącznikiem Power Switch ON. UWAGA: przed wsunięciem wtyku kabla do gniazda płytki Basys3 UPEWNIĆ SIĘ, że wtyk microusb ( typ smartfonowy ) jest prawidłowo ułożony - wsuwamy do gniazdka ząbkami do góry. Skonfiguruj podłączenie do programowania płytki Basys3: 4

-Program and Debug ->Open Hardware Manager Hardware Manager -> Open Target -> Open New Target Open Hardware Target -Wybierz: Local server, zegar programowania domyślny 15MHz Next Finish Program device -> xc7a35t_0 -Bitstream File powinien być domyślnie ustawiony poprawnie (sprawdzić w okienku) -Dostaniemy ostrzeżenie, które w tym przypadku możemy zignorować: WARNING: [Labtools 27-3123] The debug hub core was not detected at User Scan Chain 1 or 3. (Okno Messages bez Errors). Sprawdź, czy układ działa poprawnie. Jeżeli tak gratulacje! 5