Elementy języka VHDL
|
|
- Barbara Sobczyk
- 7 lat temu
- Przeglądów:
Transkrypt
1 Elementy języka VHDL Języki opisu sprzętu: Firmowe - stosowane wyłącznie w systemach danej firmy (AHDL, ABEL) Uniwersalne - stosowane coraz powszechniej w różnych systemach, równolegle z językami firmowymi (VHDL, Verilog) Najpopularniejszym i z opracowanym standardem jest - VHDL Z 1
2 Język VHDL Very high speed integrated circuit Hardware Description Language (VHDL) przemysłowy standard języka HDL Kolejne wersje normy EEE Std 1076: 1987, 1993 owszechnie stosowany w specyfikacjach układów cyfrowego przetwarzania sygnałów: Z 2
3 Język VHDL Zawiera użyteczne konstrukcje semantyczne umożliwiające zwięzłą specyfikację złożonych układów cyfrowych rojekt może być opisany hierarchicznie (na wielu poziomach) Możliwe jest korzystanie z biblioteki gotowych elementów i tworzenie podukładów (tzw. komponentów) Z 3
4 Jednostka projektowa DESGN ENY ENY DECLARAON Deklaracji jednostki EJŚCE/YJŚCE ARAMERY ARCHECURE BODY Blok architektury FUNKCJE DZAŁANE JEDNOSKA ROJEKOA reprezentuje fragment układu cyfrowego; ma dobrze zdefiniowane wejścia i wyjścia; spełnia ściśle określoną funkcję Może mieć dowolny stopień złożoności od prostej bramki do systemu!!! Z 4
5 Specyfikacja jednostki Halfadd: Deklaracje e/y entity HALFADD is port (A,B : in bit; SUM, CARRY : out bit); end HALFADD; A B A B SUM CARRY o samo co w pliku halfadd.vhd architecture BEHAVE of HALFADD is begin SUM <= A xor B; CARRY <= A and B; end BEHAVE; Specyfikacja logiczna Sekcja specyfikacji e same nazwy Z 5
6 Jednostka projektowa języka VHDL entity Komunikacja z otoczeniem architecture architecture architecture Działanie układu Z 6
7 Deklaracja jednostki A B SUM CARRY entity HALFADD is port (A,B : in bit; SUM, CARRY : out bit); end HALFADD; Komunikacja z otoczeniem Deklaracja wyprowadze : nazwy sygnałów tryby typy danych Z 7
8 ryby wyprowadzeń entity HALFADD is ryby port (A,B : in bit; SUM, CARRY : out bit); end HALFADD; ryby portu in -wejściowy out -wyjściowy inout - dwukierunkowy buffer -wyjściowy z możliwością odczytu Z 8
9 ryby wyprowadzeń n ryb ryb Out Buffer n n nout Out Z 9
10 yp danych entity HALFADD is yp danych port (A,B : in bit; SUM, CARRY : out bit); end HALFADD; ypy danych: bit, bit_vector, integer, Boolean Z 10
11 Blok architektury A Działanie lub SUM architecture BEHAVE of HALFADD is begin B budowa CARRY SUM <= A xor B; CARRY <= A and B; end BEHAVE; Architektura opisuje sposób działania jednostki (entity) lub jej budowę (strukturę). VHDL wyraźnie odróżnia opis działania od opisu struktury Style specyfikacji funkcjonalny (behavioralny) przepływ danych (dataflow) strukturalny Z 11
12 Style specyfikacji behavioralny Specyfikowane jest dzia anie uk adu bez podania szczegó ów realizacyjnych przepływ danych (dataflow) , : ,3, ,3. 7, 03, strukturalny Specyfikowana jest budowa układu. opisie podane są komponenty oraz połączenia między nimi. Z 12
13 Deklaracja jednostki entity nazwa_jednostki is deklaracja parametrów ogólnych: generic (lista) deklaracja wyprowadzeń: port (lista) end nazwa_jednostki; aramery ogólne (generics) umożliwiają projektowanie parametryzowanych wzorców układów Z 13
14 Blok architektury architecture nazwa_arch of nazwa_jednostki is begin Definicje i deklaracje: (typów, podtypów, stałych, sygnałów, komponentów, konfiguracji) instrukcje przypisania procesy (instrukcje sekwencyjne) komponenty end nazwa_arch; Z 14
15 Moduły systemowe wspomagające specyfikację dost pne dla wielu jednostek projektowych to biblioteki i pakiety. akiet jest modułem do deklarowania i definiowania obiektów danych, typów, komponentów, funkcji i procedur przeznaczonych do stosowania w wielu jednostkach projektowych. Biblioteka to zbiór zanalizowanych pakietów i jednostek projektowych przechowywanych w danym systemie operacyjnym i dostępnych bezpośrednio wg nazwy logicznej (nie jest to nazwa katalogu w tym systemie). Z 15
16 Dostęp do biblioteki i jej pakietów Dostęp do pakietu osiąga się deklaracją: LBRARY library_name; USE library_name.package_name.all; Biblioteka systemowa EEE Z 16
17 Biblioteka systemowa EEE EEE to najważniejsza biblioteka zawierająca pakiety ze standardowymi typami danych. Odwołanie do tej biblioteki a także polecenie use umożliwiające dostęp do standardowego pakietu: Std_Logic_1164 musi poprzedzać każdą jednostkę projektową. LBRARY EEE; use EEE.Std_Logic_1164.all; Z 17
18 Elementy strukturalne języka VHDL Słowa kluczowe dentyfikatory Obiekty danych Operatory Atrybuty nstrukcje Z 18
19 Obiekty danych Dane liczbowe i alfanumeryczne są przechowywane w obiektach danych. Z punktu widzenia syntezy wyróżnia się trzy klasy obiektów: sygnał signal zmienne variable stałe constant Klasa deklarowana jest przed nazwą obiektu np.: signal s1, s2 : bit; variable u: integer range 0 to 127; Z Odpowiednikiem sprzętowym sygnału jest ścieżka w układzie scalonym. Zmienna nie ma odpowiednika sprzętowego i służy do obliczeń na wyższym poziomie abstrakcji. 19
20 ojęcie typu danych Język VHDL jest silnie zorientowany na typy danych. Każdy obiekt musi mieć zdefiniowany typ i może przechowywać dane tylko tego typu. signal signal_name : type_name ; variable nazwa_zm: typ_zm [ograniczenia] constant nazwa : typ := wartość; rzy operacji przypisania sygnałów, typy danych po każdej stronie operatora przypisania muszą być zgodne Z 20
21 ypy danych yróżnia się 10 typów danych: B, B_VECOR, SD_LOGC, SD_LOGC_VECOR, (SD_ULOGC), SGNED, UNSGNED, NEGER, ENUMERAON, BOOLEAN Z 21
22 Standardowe typy danych SD_LOGC, SD_LOGC_VECOR LBRARY EEE; use EEE.Std_Logic_1164.all; SD_LOGC: 0, 1, Z,, L, H, U, X, SD_LOGC_VECOR jest tablicą obiektów z SD_LOGC Z 22
23 Atrybuty Dostarczaj dodatkowych informacji o obiektach (np.. sygnałach, zmiennych, typach lub komponentach) Składnia obiekt atrybut[(parametr)]; Najczęściej stosowany atrubut: event równy RUE, gdy zachodzi zmiana wartości sygnału, f Clock event and Clock = 1 then Q := D; Z 23
24 nstrukcje SÓƒBE NE SEKENCYJNE spółbie ne (Concurrent assignment statement) Sekwencyjne (Sequential assignment statement) Z 24
25 nstrukcje spółbie ne: Zachowanie układu jest niezale ne od kolejności instrukcji przyporz dkowania sygnałów. Stosowane w specyfikacji typu przepływ danych (dataflow description). Z Sekwencyjne: nstrukcje sekwencyjne s stosowane w specyfikacji behawioralnej (behavioral description). rzede wszystkim w tzw. procesach (process). orządek zapisu instrukcji sekwencyjnych zmienia działanie układu. 25
26 spółbieżne instrukcje przypisania sygnału (Concurrent Signal Assignment Statements) podstawowe przypisanie do sygnału (simple signal assignment statement) warunkowe przypisanie do sygnału (conditional signal assignmenet statement) selektywne przypisanie do sygnału (selected signal assignment statement) when else with select Z 26
27 nstrukcja podstawowa Składnia: signal_name <= wyra enie; boolowskie lub arytmetyczne ypowe zastosowanie: Realizacje układów kombinacyjnych Z 27
28 a b c d MUX y rzykład MUX 4:1 y = s1 s0a + s1s 0b + s1s 0c + s1s 0d S S 1 0 library ieee; use ieee.std_logic_1164.all; entity mux is port ( a, b, c, d : in std_logic ; s: in std_logic_vector (1 downto 0) ; y: out std_logic ) ; end mux; Z 28
29 rzykład MUX 4:1 library ieee; use ieee.std_logic_1164.all; entity mux is port ( a b c d MUX y a, b, c, d : in std_logic ; s: in std_logic_vector (1 downto 0) ; S S 1 0 x: out std_logic ) ; end mux; architecture archmux of mux is begin x <= (a and not(s(1)) and not(s(0))) or (b and not(s(1)) and (s(0)) or (c and (s(1) and not(s(0))) or (d and (s(1) and (s(0)); end archmux; Z 29
30 library ieee; rzykład MUX grupowy 4:1 use ieee.std_logic_1164.all; entity mux is port ( a, b, c, d : in std_logic ; s: in std_logic_vector (1 downto 0) ; x: out std_logic ) ; a b c d MUX S S 1 0 y end mux; a = (a3,a2,a1,a0) b = (b3,b2,b1,b0).. y = (y3,y2,y1,y0) Z 30
31 rzykład MUX grupowy 4:1 Z architecture archmux of mux is begin x (3) <= (a(3) and not(s(1)) and not(s(0))) or (b(3) and not(s(1)) and (s(0)) or (c(3) and (s(1) and not(s(0))) or (d(3) and (s(1) and (s(0)); x (2) <= (a(2) and not(s(1)) and not(s(0))) or (b(2) and not(s(1)) and (s(0)) or (c(2) and (s(1) and not(s(0))) or (d(2) and (s(1) and (s(0)); x (1) <= (a(1) and not(s(1)) and not(s(0))) or (b(1) and not(s(1)) and (s(0)) or (c(1) and (s(1) and not(s(0))) or (d(1) and (s(1) and (s(0)); x (0) <= (a(0) and not(s(1)) and not(s(0))) or (b(0) and not(s(1)) and (s(0)) or (c(0) and (s(1) and not(s(0))) or (d(0) and (s(1) and (s(0)); end archmux; 31
32 nstrukcja warunkowa - when-else Składnia: yrażenie boolowskie signal_name <= value_a when condition1 else value_b when condition2 else value_c when condition3 else... value_x; Z 32
33 rzykład MUX 4:1 library ieee; use ieee.std_logic_1164.all; entity mux is port ( a, b, c, d : in std_logic ; std_logic_vector (3 downto 0); s: in std_logic_vector (1 downto 0) ; y: out std_logic ) ; std_logic_vector (3 downto 0)); end mux; architecture archmux of mux is begin y <= a when (s = 00 ) else b when (s = 01 ) else c when (s = 10 ) else d; end archmux; Dla uzyskania MUX grupowego wystarczy zmienić tylko typ zmiennych w deklaracji Z 33
34 nstrukcja selektywna - with-select Składnia: Zmienna wielowartościowa with sel_sig select signal_name <= value_a when value1_of_sel_sig, value_b when value2_of_sel_sig, value_c when value3_of_sel_sig,... value_x when last_value_of_sel_sig; rzykładzik: Można określać kilka wartości lub zakres artości nie mogą się powtarzać with N_A select Z <= A when 0, B when 1 to 3, C when 4 6 8, D when others; Z 34
35 rzykład MUX 4:1 library ieee; use ieee.std_logic_1164.all; entity mux is port ( end mux; a, b, c, d : in std_logic ; s: in std_logic_vector (1 downto 0) ; y: out std_logic ) ; architecture archmux of mux is begin with s select y <= a when 00, b when 01, c when 10, d when others; end archmux; std_logic_vector (3 downto 0); std_logic_vector (3 downto 0)); Dla uzyskania MUX grupowego wystarczy zmienić tylko typ zmiennych w deklaracji Z 35
36 Ostrzeżenie przed pochopnym wnioskiem Można podać wiele przykładów, w których zastosowanie instrukcji podstawowej prowadzi do znacznie lepszej implementacji Jednym z nich jest komparator Z 36
37 Komparator A B n n K 1 z 3 A < B A = B A > B Z 37
38 Komparator a 3 b 3 i 3 A = a 3 a 2 a 1 a 0 B = b 3 b 2 b 1 b 0 i k = a k b k a 2 b 2 i 2 a 1 b 1 i 1 A eq B = i 3 i 2 i 1 i 0 a 0 b 0 i 0 A < B = A eq B+ A gt B A > B = a 3 + i b 3 3 i 2 + i a 1 3 b a 1 2 b 2 + i 3 i + 2 i 1 a 0 b 0 Z 38
39 Komparator wersja 1 LBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENY compare_8bit S OR (A, B: N SD_LOGC_VECOR(7 DONO 0); AeqB, AgtB, AltB: OU SD_LOGC ); END compare_8bit; ARCHECURE Behavior OF compare_8bit S BEGN AeqB <= '1' HEN A = B ELSE '0'; AgtB <= '1' HEN A > B ELSE '0'; AltB <= '1' HEN A < B ELSE '0'; END Behavior; Z 39
40 Komparator wersja 2 LBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENY compare_2_8bit S OR (a7,a6,a5,a4,a3,a2,a1,a0: N SD_LOGC; b7,b6,b5,b4,b3,b2,b1,b0: N SD_LOGC; AeqB, AgtB, AltB: OU SD_LOGC); END compare_2_8bit; Z ARCHECURE Behavior OF compare_2_8bit S SGNAL i7,i6,i5,i4,i3,i2,i1,i0: SD_LOGC; SGNAL AequalB,AgreaterB,AlesserB: SD_LOGC; BEGN i7 <= NO (a7 XOR b7); i6 <= NO (a6 XOR b6); i5 <= NO (a5 XOR b5); i4 <= NO (a4 XOR b4); i3 <= NO (a3 XOR b3); i2 <= NO (a2 XOR b2); i1 <= NO (a1 XOR b1); i0 <= NO (a0 XOR b0); 40
41 Komparator wersja 2 c.d. AequalB <= i7 AND i6 AND i5 AND i4 AND i3 AND i2 AND i1 AND i0; AgreaterB <= (a7 AND (not b7)) OR (i7 AND a6 AND (not b6)) OR (i7 AND i6 AND a5 AND (not b5)) OR (i7 AND i6 AND i5 AND a4 AND (not b4)) OR (i7 AND i6 AND i5 AND i4 AND a3 AND (not b3)) OR (i7 AND i6 AND i5 AND i4 AND i3 AND a2 AND (not b2)) OR (i7 AND i6 AND i5 AND i4 AND i3 AND i2 AND a1 AND (not b1)) OR (i7 AND i6 AND i5 AND i4 AND i3 AND i2 AND i1 AND a0 AND (not b0)); AlesserB <= NO (AequalB OR AgreaterB); AeqB <= AequalB; AgtB <= AgreaterB; AltB <= AlesserB; END Behavior; Z 41
42 Realizacje komparatora ersja 1: MAX 7000: 48 makrokomórek, 27 expanderów FLEX: 20 komórek ersja 2: MAX 7000: 32 makrokomórki, 15 expanderów FLEX: 13 komórek Specyfikacja za pomocą instrukcji podstawowej prowadzi do dużo lepszej implementacji!!! Z 42
43 nstrukcje sekwencyjne nstrukcje sekwencyjne są stosowane w specyfikacji behawioralnej (behavioral description) rzede wszystkim w tzw. procesach (process) roces nstrukcja F nstrukcja CASE Z 43
44 roces Name :ROCESS (sensitivity_list) BEGN nstrukcja sekwencyjna #1 nstrukcja sekwencyjna #2... nstrukcja sekwencyjna # N END ROCESS name; Składnia: rocess ( ) begin.. end process Lista czułości nstrukcje sekwencyjne są wykonywane kolejno jedna po drugiej Etykieta jest opcjonalna Z 44
45 rocesy Konstrukcja wykonywana równolegle ystępuje wewnątrz architektury Zawiera opis behawioralny nstrukcje wewnętrzne wykonywane są sekwencyjnie Zawiera: listę czułości (ang. sensitivity list); jest to lista sygnałów, których zmiana powoduje aktywację procesu Z 45
46 nstrukcja warunkowa if then else Jest to instrukcja sekwencyjna Część elsif może wystąpić dowolną liczbę razy Część else nie musi wystąpić Może być zagnieżdżana Składnia: if warunek then sekwencja_instrukcji1 {elsif warunek then sekwencja_instrukcji2 } [else sekwencja_instrukcji3] end if ; Z 46
47 nstrukcja wyboru - case nstrukcja sekwencyjna odobna do instrukcji with select Można określać kilka wartości lub zakres artości nie mogą się powtarzać Składnia (przykład): case zm_wielow is when wybór1 => sekwencja1_instrukcji ; when wybór2 => sekwencja2_instrukcji ; [when others => sekwencja3_instrukcji ;] end case; Z 47
48 Archmux1 i Archmux2 entity mux is port( a, b, c, d: in bit; s: in bit_vector(1 downto 0); y: out bit); end mux; a b c d MUX y Z architecture archmux1 of mux is begin mux4_1: process (a, b, c, d, s) begin if s = "00" then y <= a; elsif s = "01" then y <= b; elsif s = "10" then y <= c; else y <= d; end if; end process mux4_1; end archmux1; S S 1 0 architecture archmux2 of mux is begin y <= a when (s = "00") else b when (s = "01") else c when (s = "10") else d; end archmux2; 48
49 Archmux3 i Archmux4 architecture archmux3 of mux is begin process (a,b,c,d,s) begin case s is when "00" => y<= a; when "01" => y<= b; when "10" => y<= c; when "11" => y<= d; end case; end process; end archmux3; architecture archmux4 of mux is begin with s select y <= a when "00", b when "01", c when "10", d when "11"; End archmux4; Z 49
50 Archmux5 Architecture archmux5 of mux is Begin y <= (a and not(s(1)) and not(s(0))) OR (b and not(s(1)) and s(0)) OR (c and s(1) and not(s(0))) OR (d and s(1) and s(0)); end archmux5; Z 50
51 Archmux6 architecture archmux6 of mux is begin mux4_1: process (a, b, c, d, s) begin if s = "00" then y <= a; end if; if s = "01" then y <= b; end if; if s = "10" then y <= c; end if; if s = "11" then y <= d; end if; end process mux4_1; end archmux6; Z 51
52 Archmux1 i Archmux2 A B C X D N0D N0C N0B Z S1 S0 52
53 Archmux3 i Archmux4 A B C X D N0E N0D N0C N0B S1 S0 Z 53
54 Archmux5 A B C X D Z S1 S0 54
55 Archmux6 C B A N0E X D N0D N0H N0G N0F N0A Z S1 S0 55
56 Synteza układów sekwencyjnych VHDL umożliwia bezpośrednią reprezentację automatu (układu sekwencyjnego). ablicę przejść-wyjść można bezpośrednio przetłumaczyć na specyfikację VHDL. szystkie inne metody, polegające na oddzielnej syntezie części kombinacyjnej, a następnie na dołączaniu do niej rejestru, nie mają sensu Z 56
57 Zasady specyfikacji automatu Stany automatu są reprezentowane przez typ wyliczeniowy, którego wartości są nazwami stanów Synchronizm zapewnia odpowiednie wyrażenie testujące zbocze sygnału zegarowego Funkcje przejść wyjść są realizowane instrukcjami CASE, F HEN wewnątrz ROCESU Specyfikacja jedno- lub dwu-procesowa yjątkiem w stosowaniu typu wyliczeniowego jest automat ze stanami kodowanymi przez użytkownika Z 57
58 yp wyliczeniowy yp wyliczeniowy (enumeration type) może być definiowany przez użytkownika. rzykład: type MY_SAE is (State1, State2, State3, State4);... signal SAE : MY_SAE; SAE <= State1; Z 58
59 Atrybuty Dostarczaj dodatkowych informacji o obiektach (np.. sygnałach, zmiennych, typach lub komponentach) Składnia obiekt atrybut[(parametr)]; Najczęściej stosowany atrubut: event równy RUE, gdy zachodzi zmiana wartości sygnału, f Clock event and Clock = 1 then Q := D; Z 59
60 rzykład: automat Moore a x = 0 Rst x = 1 x s 0 1 z A/z = 0 B/z = 0 A A B 0 x = 0 x = 0 x = 1 B A C 0 C/z = 1 C A C 1 x = 1 Z 60
61 Automat: jednostka deklaracji LBRARY ieee; USE ieee_std_logic_1164.all; ENY automacik S OR (Clock, Rst, x : N SD_LOGC; z : OU SD_LOGC); END automacik; Z 61
62 Automat - wersja Zerowanie asynchroniczne ARCHECURE funkcja_przejsc OF automacik S YE State_type S (A, B, C); SGNAL Q : State_type; BEGN Deklaracja typu i sygnału ROCESS (Rst, Clock) BEGN F Rst = '0' HEN Q <= A; ELSF (Clock'EVEN AND Clock = '1') HEN CASE Q S HEN A => F x = '0' HEN Q <=A; ELSE Q <= B; END F; HEN B => F x = '0' HEN Q <= A; ELSE Q <= C; Synchronizacja END F; HEN C => F x = '0' HEN Q <= A; ELSE Q <= C; END CASE; END F; END ROCESS; z <= '1' HEN Q = C ELSE '0'; END funkcja_przejsc; END F; Z 62
63 Automat Moore a - wersja Z ARCHECURE funkcja_przejsc OF simple S YE State_type S (A, B, C); SGNAL Q_present, Q_next : State_type ; BEGN ROCESS (x, Q_present) BEGN CASE Q_present S HEN A => F x = '0' HEN Q_next <= A; ELSE Q_next <= B; END F; HEN B => F x = '0' HEN Q_next <=A; ELSE Q_next <= C; END F; HEN C=> F x = '0' HEN Q_next <= A; ELSE Q_next <= C; END F; END CASE; END ROCESS; ROCESS (Clock, Rst) BEGN F Rst = '0' HEN Q_present <= A; r o c e s k o m b i n a c y j n y roces sekwencyjny ELSF (Clock'EVEN AND Clock = '1') HEN Q_present <= Q_next; END F; END ROCESS; z <= '1' HEN Q_present = C ELSE '0'; END funkcja_przejsc; 63
64 roces Kombinacyjny Case f hen Else ejścia Układ kombinacyjny Automat Stan następny (next_state) roces Sekwencyjny CLK EVEN and CLK= 1 rzerzutniki Stany bieżące (present_state) Z 64
65 roblem kodowania stanów Specyfikacja automatu: ciekawostka o procesie kompilacji Automaty w komercyjnych kompilatorach VHDL raczej nie są realizowane optymalnie jak też nie zawsze są realizowane na minimalnej liczbie przerzutników Nasz automat w opcji FGA na trzech przerzutnikach!!! Ucieczka przed skomplikowaniem części kombinacyjnej w realizacjach dla struktur FGA Z 65
66 roblem kodowania stanów Dlatego warto w projektach dla urządzeń rynkowych stosować zewnętrzne procedury kodowania stanów automatu. akie procedury są dostępne w oprogramowaniu uniwersyteckim akiet SS JED, NOVA Z 66
67 roblem kodowania stanów Szczęśliwie się składa, iż język VHDL umożliwia wprowadzenie dowolnego, zewnętrznie obliczonego kodowania stanów wewnętrznych architecture nazwa_arch of nazwa_jednostki is begin u kodowanie: za pośrednictwem deklaracji stałych (constant) end nazwa_arch; Z 67
68 Automat Moore a z kodowaniem stanów Z ARCHECURE funkcja_przejsc OF simple S SGNAL Q_present, Q_next: SD_LOGC_VECOR(1 DONO 0) CONSAN A :SD_LOGC_VECOR(1 DONO 0) := "00"; CONSAN B :SD_LOGC_VECOR(1 DONO 0) := "01"; CONSAN C :SD_LOGC_VECOR(1 DONO 0) := "11"; BEGN ROCESS (x, Q_present) BEGN CASE Q_present S HEN A => F x = '0' HEN Q_next <= A; ELSE Q_next <= B; END F; HEN B => F x = '0' HEN Q_next <= A; ELSE Q_next <= C; zabezpieczenie przed nadmiarowym stanem: 10 nny typ zmiennej END F; HEN C => F x = '0' HEN Q_next <= A; ELSE Q_next <= C; END F; HEN OHERS => Q_next <= A; END CASE; END ROCESS; ROCESS (Clock, Rst) BEGN F Rst = '0' HEN Q_next <= A; ELSF (Clock'EVEN AND Clock = '1') HEN Q_present <= Q_next; END F; END ROCESS; z <= '1' HEN Q_present = C ELSE '0'; END funkcja_przejsc; 68
69 SUBDESGN MOORE_AHDL( CLOCK, RESEN, : NU; Z : OUU; ) VARABLE Y : MACHNE H SAES (A, B, C); Automat w AHDL BEGN Y.CLK = CLOCK; Y.RESE =!RESEN; F RESEN == B"0" HEN Y = A; END F; CASE Y S HEN A => F == B"0" HEN Y = A; ELSE Y = B; HEN B => END F; F == B"0" HEN Y = A; ELSE Y= C; HEN C => END F; F == B"0" HEN Y = A; ELSE Y = C; Z END; END CASE; F Y == C HEN Z = B"1"; ELSE Z = B"0"; END F; END F; 69
70 AHDL kontra VHDL AHDL VHDL Variable temp : dff temp.clk = clk; temp.d = data out = temp.out if (clk event and clk= 1 ) then out <= d; end if; Całkowicie behawioralny opis, nawet nie znamy typu przerzutnika Z 70
71 Specyfikacje typowych układów rzerzutniki Rejestry: równoległy, szeregowy Liczniki: w górę, z wpisem równoległym Modelowanie na poziomie strukturalnym rojektowanie większych układów Specyfikacje wszystkich przykładów są podane w książce: rogramowalne układy przetwarzania sygnałów cyfrowych i informacji Z 71
Instrukcje sekwencyjne
nstrukcje sekwencyjne nstrukcje sekwencyjne są stosowane w specyfikacji behawioralnej (behavioral description) rzede wszystkim w tzw. procesach (process) roces nstrukcja F nstrukcja CASE Z 1 rocesy Konstrukcja
Układy reprogramowalne i SoC Język VHDL (część 4)
Język VHDL (część 4) Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój Politechniki
Modelowanie złożonych układów cyfrowych (1)
Modelowanie złożonych układów cyfrowych () funkcje i procedury przykłady (przerzutniki, rejestry) style programowania kombinacyjne bloki funkcjonalne bufory trójstanowe multipleksery kodery priorytetowe
Projektowanie automatów z użyciem VHDL
Projektowanie automatów z użyciem VHDL struktura automatu i jego modelu w VHDL przerzutnik T jako automat przykłady automatów z wyjściami typu: Moore'a Mealy stanu kodowanie stanów automatu Wykorzystano
Sposoby projektowania systemów w cyfrowych
Sposoby projektowania systemów w cyfrowych Top-down Idea całości projektu Dekompozycja na mniejsze bloki Projekt i rafinacja podbloków Łączenie bloków w całość PRZYKŁAD (sumator kaskadowy) zdefiniowanie
Języki opisu sprzętu VHDL Mariusz Rawski
CAD Języki opisu sprzętu VHDL rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Języki opisu sprzętu System cyfrowy może być opisany na różnych poziomach abstrakcji i z wykorzystaniem różnych sposobów
Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS
Język HDL - VERLOG Hardware Description Language (Syntetyzowalna warstwa języka) RUS RUS VERLOG rzegląd zagadnień RUS RUS prowadzenie do języka Reprezentacja układu cyfrowego w Verilogu opis strukturalny
Altera Quartus II. Opis niektórych komponentów dostarczanych razem ze środowiskiem. Opracował: mgr inż. Leszek Ciopiński
Altera Quartus II Opis niektórych komponentów dostarczanych razem ze środowiskiem Opracował: mgr inż. Leszek Ciopiński Spis treści Opis wybranych zagadnień obsługi środowiska Altera Quartus II:...1 Magistrale:...
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL Instrukcja pomocnicza do laboratorium z przedmiotu Synteza układów
Projektowanie w VHDL
Projektowanie w VHDL powtórka wiadomości o języku VHDL słowa zastrzeżone typy danych, deklaracje obiektów instrukcje współbieżne i sekwencyjne pętle for, while typowe bloki układów cyfrowych przykłady
Elementy języka VHDL. obiekty typy danych atrybuty pakiety i biblioteki instrukcje współbieżne instrukcje sekwencyjne. PUE-w3 1
Elementy języka VHDL obiekty typy danych atrybuty pakiety i biblioteki instrukcje współbieżne instrukcje sekwencyjne PUE-w3 1 Obiekty (sygnały, zmienne, stałe, pliki) Obiekty służą do zapisu i pamiętania
Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje.
Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje. 1. W języku VHDL zdefiniowano mechanizm odczytywania i zapisywania danych z i do plików. Pliki te mogą być wykorzystywane
Projektowanie hierarchiczne Mariusz Rawski
CAD Projektowanie hierarchiczne rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Zamek elektroniczny: Elektroniczny zamek kod 4 cyfrowy kod wprowadzony z klawiatury ready sygnalizacja gotowości
WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego LABORATORIUM UKŁADÓW PROGRAMOWALNYCH I SPECJALIZOWANYCH
WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego LABORATORIUM UKŁADÓW PROGRAMOWALNYCH I SPECJALIZOWANYCH SPRAWOZDANIE Temat: Projekt notesu elektronicznego w języku VHDL przy użyciu układów firmy
VHDL cz.1. Rafał Walkowiak IIn PP Wer
VHDL cz.1 Rafał Walkowiak IIn PP Wer 2.0 11.2013 VHDL VHDL (ang. Very High Speed Integrated Circuits Hardware Description Language ) jest popularnym językiem opisu sprzętu używanym w komputerowym projektowaniu
Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3.
Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3. Jak umieszcza się komentarze w pliku symulacyjnym PSPICE? 4.
VHLD Very High Speed Integrated Circuit (VHSIC) Hardware Description Language (VHDL)
VHLD Very High Speed Integrated Circuit (VHSIC) Hardware Description Language (VHDL) Język VHDL jest jednym z nowszych języków opisu i projektowania układów cyfrowych. W lipcu 1983 roku firmy Intermetrics,
Specyfika projektowania Mariusz Rawski
CAD Specyfika projektowania Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ System cyfrowy pierwsze skojarzenie Urządzenia wprowadzania danych: klawiatury czytniki urządzenia przetwarzania
Język HDL - VERILOG. (Syntetyzowalna warstwa języka) Hardware Description Language Krzysztof Jasiński PRUS PRUS
Język HDL - VERLOG Hardware Description Language (Syntetyzowalna warstwa języka) RUS RUS Język VERLOG w praktyce RUS RUS VERLOG Specyfikacja układów kombinacyjnych RUS RUS Operator warunkowy Conditional_expression?
Technika cyfrowa projekt: Sumator 4 bitowy równoległy
Technika cyfrowa projekt: Sumator 4 bitowy równoległy Autorzy: Paweł Bara Robert Boczek Przebieg prac projektowych: Zadany układ dostaje na wejściu dwie czterobitowe liczby naturalne, sumuje je, po czym
1. ISE WebPack i VHDL Xilinx ISE Design Suite 10.1 VHDL Tworzenie projektu Project Navigator Xilinx ISE Design Suite 10.1 File
1. ISE WebPack i VHDL Celem ćwiczenia jest szybkie zaznajomienie się ze środowiskiem projektowym Xilinx ISE Design Suite 10.1 oraz językiem opisu sprzętu VHDL. Tworzenie projektu Uruchom program Project
VHDL cz.1. Rafał Walkowiak IIn PP Wer
VHDL cz.1 Rafał Walkowiak IIn PP Wer 2.1 12.2015 VHDL VHDL (ang. Very High Speed Integrated Circuits Hardware Description Language ) jest popularnym językiem opisu sprzętu używanym w komputerowym projektowaniu
Projekt prostego procesora
Projekt prostego procesora Opracowany przez Rafała Walkowiaka dla zajęć z PTC 2012/2013 w oparciu o Laboratory Exercise 9 Altera Corporation Rysunek 1 przedstawia schemat układu cyfrowego stanowiącego
Projektowanie Urządzeń Cyfrowych
Projektowanie Urządzeń Cyfrowych Laboratorium 2 Przykład prostego ALU Opracował: mgr inż. Leszek Ciopiński Wstęp: Magistrale: Program MAX+plus II umożliwia tworzenie magistral. Magistrale są to grupy przewodów
Programowalne układy logiczne
Programowalne układy logiczne Układy kombinacyjne Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 28 września 2015 Co to jest układ kombinacyjny? Stan wyjść zależy tylko
AHDL - Język opisu projektu. Podstawowe struktury języka. Komentarz rozpoczyna znak i kończy znak %. SUBDESIGN
AHDL - Język opisu projektu. Podstawowe struktury języka Przykładowy opis rewersyjnego licznika modulo 64. TITLE "Licznik rewersyjny modulo 64 z zerowaniem i zapisem"; %------------------------------------------------------------
Projektowanie Scalonych Systemów Wbudowanych VERILOG
Projektowanie Scalonych Systemów Wbudowanych VERILOG OPIS BEHAWIORALNY proces Proces wątek sterowania lub przetwarzania danych, niezależny w sensie czasu wykonania, ale komunikujący się z innymi procesami.
Pojedyncze wartości zadeklarowanego typu Ustawiane przed rozpoczęciem symulacji bez moŝliwości
Stałe - constant Pojedyncze wartości zadeklarowanego typu Ustawiane przed rozpoczęciem symulacji bez moŝliwości późniejszych zmian Deklarowane w ciele architektury Widoczne dla całej architektury architecture
Język VHDL podstawy Mariusz Rawski
CAD Język VHDL podstawy Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Języki opisu sprzętu Very high speed integrated Hardware Description Language Przemysłowy standard języka
mgr inż. Maciej Rudek opracował: dr inż. Daniel Kopiec
Programowanie Układów Logicznych kod kursu: ETD6203 Analiza układów sekwencyjnych W3 7.03.2018 mgr inż. Maciej Rudek opracował: dr inż. Daniel Kopiec Zmiany w terminach Plan wykładu 1 2 3 4 5 6 Ciekawostki
Krótkie wprowadzenie do ModelSim i Quartus2
Krótkie wprowadzenie do ModelSim i Quartus2 wersja 04.2011 1 Plan Oprogramowanie Pliki źródłowe Scenariusze użycia 2 Programy Programy w wersji darmowej do pobrania ze strony www.altera.com ModelSim-Altera
Realizacja algorytmu wyznaczania wyrazów ciągu w języku VHDL z zastosowaniem podziału projektu na moduły: FSM i Data Path.
Zakład Cyberbezpieczeństwa, Instytut Telekomunikacji, Politechnika Warszawska, 2015. 1 Układy Cyfrowe laboratorium Przykład realizacji ćwiczenia nr 6 (wersja 2015) 1. Wstęp 1.1. Algorytm Realizacja algorytmu
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe. Synteza logiczna. Rajda & Kasperek 2015 Katedra Elektroniki AGH 1
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe Synteza logiczna Rajda & Kasperek 2015 Katedra Elektroniki AGH 1 Program wykładu Wstęp do syntezy Sprzętowa reprezentacja obiektów
Układy reprogramowalne i SoC Język VHDL (część 5)
Układy reprogramowalne i SoC Język VHDL (część 5) Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
LABORATORIUM TECHNIKA CYFROWA. Pamięci. Rev.1.35
LABORATORIUM TECHNIKA CYFROWA Pamięci Rev.1.35 1. Cel ćwiczenia Praktyczna weryfikacja wiedzy teoretycznej z projektowania modułów sterowania oraz kontroli pamięci 2. Kolokwium Kolokwium wstępne sprawdzające
Układy reprogramowalne i SoC Język VHDL (część 2)
Układy reprogramowalne i SoC Język VHDL (część 2) Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
Programowalne układy logiczne
Programowalne układy logiczne Przerzutniki Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 20 maja 2013 Przerzutnik synchroniczny Układ synchroniczny wyzwalany ustalonym
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 7 (2h) Obsługa urządzenia peryferyjnego z użyciem pamięci w VHDL. Instrukcja do zajęć laboratoryjnych z przedmiotu
Systemy Czasu Rzeczywistego FPGA
01. Systemy Czasu Rzeczywistego FPGA 1 Systemy Czasu Rzeczywistego FPGA laboratorium: 03 autor: mgr inż. Mateusz Baran 01. Systemy Czasu Rzeczywistego FPGA 2 1 Spis treści FPGA... 1 1 Spis treści... 2
Realizacja logiki kombinacyjnej Mariusz Rawski
CAD Realizacja logiki kombinacyjnej rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Logika kombinacyjna Logika jest logiką kombinacyjna jeśli wartość wyjść w danej chwili zależy wyłącznie od wartości
Układy reprogramowalne i SoC Język VHDL (część 3)
Układy reprogramowalne i SoC Język VHDL (część 3) Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
Układy reprogramowalne i SoC Implementacja w układach FPGA
Układy reprogramowalne i SoC Implementacja w układach FPGA Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez
VHDL. Zebrał i opracował R.Walkowiak PTC wykład 2013/2014
VHDL przykłady rozwiązań Zebrał i opracował R.Walkowiak PTC wykład 2013/2014 for generate Tworzenie wektora obiektów : for in generate -- wyrażenia równoległe end
PUCY Kolos 2: Reloaded
PUCY Kolos 2: Reloaded 1) Narysować schemat układu mikroprogramowalnego z licznikiem rozkazów. 2) Narysować schemat elementu ścieżki cyklicznej dla sygnału kombinacyjnego 3) Narysować schemat elementu
LABORATORIUM OPTOELEKTRONIKA I SENSORYKA Oprogramowanie bariery podczerwieni w układzie CPLD
LABORATORIUM OPTOELEKTRONIKA I SENSORYKA Oprogramowanie bariery podczerwieni w układzie CPLD 1. Wstęp i cel ćwiczenia W ćwiczeniu student tworzy barierę podczerwieni złożoną z diody nadawczej IR (Infra
1 Wstęp. 2 Proste przykłady. 3 Podstawowe elementy leksykalne i typy danych. 6 Opis strukturalny. 7 Moduł testowy (testbench)
Wstęp SYSTEMY WBUDOWANE Układy kombinacyjne c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 c Dr inż. Ignacy Pardyka (Inf.UJK) Systemy wbudowane Rok akad. 2011/2012
Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.
Literatura 1. D. Gajski, Principles of Digital Design, Prentice- Hall, 1997 2. C. Zieliński, Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003 3. G. de Micheli, Synteza i optymalizacja układów
LABORATORIUM ELEKTRONIKA Projektowanie koderów, transkoderów i dekoderów w języku VHDL
LABORATORIUM ELEKTRONIKA Projektowanie koderów, transkoderów i dekoderów w języku VHDL 1. Cel ćwiczenia W ćwiczeniu student projektuje i implementuje w strukturze układu FPGA (Field Programmable Gate Array)
Systemy Czasu Rzeczywistego FPGA
01. Systemy Czasu Rzeczywistego FPGA 1 Systemy Czasu Rzeczywistego FPGA laboratorium: 04 autor: mgr inż. Mateusz Baran 01. Systemy Czasu Rzeczywistego FPGA 2 1 Spis treści FPGA... 1 1 Spis treści... 2
XC4000: LUT jako ROM Układy Cyfrowe i Systemy Wbudowane 2 Układy FPGA cz. 2 ROM32X1 VHDL inference example ROM 16x2b type
Układy Cyfrowe i Systemy Wbudowane 2 XC4000: LUT jako ROM Układy FPGA cz. 2 dr inż. Jarosław Sugier Jaroslaw.Sugier@pwr.edu.pl W-4/K-9, pok. 227 C-3 FPGA(2) - 1 FPGA(2) - 2 ROM32X1 VHDL inference example
Układy asynchroniczne
Układy asynchroniczne Model układu sekwencyjnego Model układu asynchronicznego (synchronicznego) y 1 x n UK y m układ kombinacyjny Z clock t 1 q 1 k B x s tan stabilny s: δ(s,x) = s x blok pamięci jest
Język opisu sprzętu VHDL
Język opisu sprzętu VHDL dr inż. Adam Klimowicz Seminarium dydaktyczne Katedra Mediów Cyfrowych i Grafiki Komputerowej Informacje ogólne Język opisu sprzętu VHDL Przedmiot obieralny dla studentów studiów
Ćwiczenie 1 VHDL - Licznik 4-bitowy.
Ćwiczenie 1 VHDL - Licznik 4-bitowy. Zadaniem studenta jest zaprojektowanie w układzie CoolRunner2 układu, który dzieli częstotliwość zegara wejściowego generując sygnał taktowania licznika 4-bitowego,
Projektowanie scalonych systemów wbudowanych VERILOG. VERLIOG - historia
Projektowanie scalonych systemów wbudowanych VERILOG VERLIOG - historia Początki lat 80 XX w. Phil Moorby Gateway Design Automation symulator Verilog XL 1987 Synopsys Verilog jako język specyfikacji projektu
Kurs języka VHDL Very High (Speed Integrated Circuits) Description Language
Kurs języka VHDL Very High (Speed Integrated Circuits) Description Language Józef Kalisz, Wojskowa Akademia Techniczna, 2008 Początek: lata 80-te XX w. Kontrakt VHSIC (Department of Defense, USA) Podstawa:
Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści
Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, 2017 Spis treści Przedmowa 11 ROZDZIAŁ 1 Wstęp 13 1.1. Rys historyczny 14 1.2. Norma IEC 61131 19 1.2.1. Cele i
System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.
System cyfrowy Sygnały sterujące Dane wejściowe Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące Stan części operacyjnej Dane wyjściowe Z System
Synteza strukturalna
Synteza strukturalna Analizując algorytm pracy układu opisany siecią działań dobiera się: bloki funkcjonalne służące do przechowywania zmiennych, bloki operacyjne służące do wykonywania operacji występujących
Systemy Czasu Rzeczywistego FPGA
01. Systemy Czasu Rzeczywistego FPGA 1 Systemy Czasu Rzeczywistego FPGA laboratorium: 05 autor: mgr inż. Mateusz Baran 01. Systemy Czasu Rzeczywistego FPGA 2 1 Spis treści FPGA... 1 1 Spis treści... 2
Układy logiczne układy cyfrowe
Układy logiczne układy cyfrowe Jak projektować układy cyfrowe (systemy cyfrowe) Układy arytmetyki rozproszonej filtrów cyfrowych Układy kryptograficzne X Selektor ROM ROM AND Specjalizowane układy cyfrowe
Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYNTEZA UKŁADÓW CYFROWYCH ES2D100005
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYNTEZA UKŁADÓW CYFROWYCH ES2D100005 Ćwiczenie Nr 8 Implementacja prostego
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe. Zaawansowany VHDL. Rajda & Kasperek 2014 Katedra Elektroniki AGH 2
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe Zaawansowany VHDL Rajda & Kasperek 2014 Katedra Elektroniki AGH 1 Program wykładu Opis strukturalny map, generate Pojęcia leksykalne
Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.
Generowanie sygnałów testowych VHDL Wariant współbieżny (bez procesu): sygnał
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 9 (3h) Projekt struktury hierarchicznej układu cyfrowego w FPGA. Instrukcja pomocnicza do laboratorium z przedmiotu
VHDL. Behawioralny Strukturalny Czasowy. Poziom RTL
Style opisu VHDL VHDL Behawioralny Strukturalny Czasowy Równania boolowskie Poziom RTL Przebieg czasowy c = a v b c
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe. Zaawansowany VHDL. Rajda & Kasperek 2015 Katedra Elektroniki AGH 1
Kierunek EiT Specjalność Sieci i usługi, V rok Programowalne Układy Cyfrowe Zaawansowany VHDL Rajda & Kasperek 2015 Katedra Elektroniki AGH 1 Program wykładu Opis strukturalny map, generate Pojęcia leksykalne
Sterowniki Programowalne (SP)
Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. Automaty stanów
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 6 (2h) Automaty stanów Instrukcja do zajęć laboratoryjnych z przedmiotu Synteza układów cyfrowych studia niestacjonarne,
Projektowanie systemów cyfrowych w językach opisu sprzętu. Studium Zaoczne IV rok kierunek Elektronika i Telekomunikacja. Wykład 2
Projektowanie systemów cyfrowych w językach opisu sprzętu Studium Zaoczne IV rok kierunek Elektronika i Telekomunikacja Wykład 2 Program wykładu VHDL przykłady VHDL jednostki projektowe VHDL pojęcia leksykalne
Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014
Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Temat 1. Algebra Boole a i bramki 1). Podać przykład dowolnego prawa lub tożsamości, które jest spełnione w algebrze Boole
Projektowanie hierarchiczne Mariusz Rawski
CAD Projektowanie hierarchiczne rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Zamek elektroniczny: Elektroniczny zamek kod 4 cyfrowy kod wprowadzony z klawiatury ready sygnalizacja gotowości
Układy reprogramowalne i SoC Testbenches. Symulacja sterowana zdarzeniami.
Testbenches. Symulacja sterowana zdarzeniami. Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń -
DOKUMENTACJA PROJEKTU
AKADEMIA GÓRNICZO-HUTNICZA w Krakowie KATEDRA ELEKTRONIKI DOKUMENTACJA PROJEKTU Projekt z przedmiotu Sprzętowa Implementacja Algorytmów: Dekoder klawiatury na PS/2 Prowadzący: Dr inż. Paweł Russek Wykonali:
Programowanie Układów Logicznych kod kursu: ETD6203. VHDL, ISE WebPACK, Plan Ahead, Impact W
Programowanie Układów Logicznych kod kursu: ETD6203 VHDL, ISE WebPACK, Plan Ahead, Impact W2 28.02.2018 mgr inż. Maciej Rudek opracował: dr inż. Daniel Kopiec Plan wykładu 1 2 3 4 5 6 VHDL powtórka ważniejszych
Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza
Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza Projektowanie układów VLSI-ASIC za pomocą techniki komórek standardowych przy użyciu pakietu Cadence Programowanie,
Rok akademicki: 2013/2014 Kod: JIS s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -
Nazwa modułu: Języki opisu sprzętu Rok akademicki: 2013/2014 Kod: JIS-1-015-s Punkty ECTS: 5 Wydział: Fizyki i Informatyki Stosowanej Kierunek: Informatyka Stosowana Specjalność: - Poziom studiów: Studia
Układy reprogramowalne i SoC Język VHDL (część 1)
Układy reprogramowalne i SoC Język VHDL (część 1) Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń
Technika Cyfrowa. Wprowadzenie do laboratorium komputerowego część II
Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie Wydział IET Katedra Elektroniki Technika Cyfrowa Wprowadzenie do laboratorium komputerowego część II Wstęp W ramach zajęć przedstawione zostaną
Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 1 Programowanie 1 Program wykładu Struktura programu Instrukcja przypisania Wprowadzanie danych Wyprowadzanie wyników Instrukcja
Opisy efektów kształcenia dla modułu
Karta modułu - Języki opisu sprzętu 1 / 8 Nazwa modułu: Języki opisu sprzętu Rocznik: 2012/2013 Kod: JIS-1-013-s Punkty ECTS: 5 Wydział: Fizyki i Informatyki Stosowanej Poziom studiów: Studia I stopnia
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki
Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 3 (4h) Konwersja i wyświetlania informacji binarnej w VHDL Instrukcja do zajęć laboratoryjnych z przedmiotu Synteza
Podstawy techniki cyfrowej zima 2015 Rafał Walkowiak
Podstawy techniki cyfrowej zima 2015 Rafał Walkowiak Wykład: synteza wyższego poziomu 1 Układy cyfrowe synteza strukturalna wyższego poziomu Ogólna struktura logiczna UC: bloki funkcjonalne dla realizacji
Synteza logiczna APSC
Jest to proces tłumaczenia opisu projektu przygotowanego na wysokim poziomie abstrakcji na zoptymalizowaną reprezentację na poziomie bramek logicznych w oparciu o zadaną technologiczną bibliotekę komórek
Wyświetlacz siedmiosegmentowy
Wyświetlacz siedmiosegmentowy autorzy: Tomasz Perek Tomasz Biernat Projekt: Układ, który liczbę podaną w postaci binarnej wyświetla w systemie szesnastkowym, ósemkowym oraz dziesiętnym. Wyświetlacz siedmiosegmentowy
Język AHDL. Synteza strukturalna. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska H D L
Język A Synteza strukturalna 1 Synteza strukturalna icznik Rejestr B l o k i F u n k c j o n a l n e 1. Składamy układ z bloków funkcjonalnych 2. Odwzorowanie technologiczne 2 Komponent Wyboru odpowiedniej
Układy Cyfrowe laboratorium
Układy Cyfrowe laboratorium Przykład realizacji ćwiczenia nr 7 Temat: Realizacja układu sterującego systemu cyfrowego z uwzględnieniem kodowania i dekompozycji funkcji pw automatu dla Metody Newtona, tj.
DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Bloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0
Uwaga: DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0 1. Zostały pominięte diagramy: CYFRA, CYFRA SZESNASTKOWA, ZNAK i LITERA. Nie została uwzględniona możliwość posługiwania się komentarzami. 2. Brakuje
CZ1. Optymalizacja funkcji przełączających
CZ1. Optymalizacja funkcji przełączających 1. Proszę opisać słownie metodę i dokonać optymalizacji łącznej następujących funkcji (najmłodszy bit wejścia proszę oznaczyć A) : F1=SUM m(1,3,5,7,9,13,15) F2=SUM
Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Laboratorium przedmiotu Technika Cyfrowa
Laboratorium przedmiotu Technika Cyfrowa ćw.3 i 4: Asynchroniczne i synchroniczne automaty sekwencyjne 1. Implementacja asynchronicznych i synchronicznych maszyn stanu w języku VERILOG: Maszyny stanu w
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Architektura komputerów Wykład 2
Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana
Układy logiczne układy cyfrowe
Układy logiczne układy cyfrowe Jak projektować układy cyfrowe (systemy cyfrowe) Układy arytmetyki rozproszonej filtrów cyfrowych Układy kryptograficzne Evatronix KontrolerEthernet MAC (Media Access Control)
Sumatory H D L. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska
Sumatory 1 Sumator 1-bitowy full adder Równanie boolowskie sumy: s k = a k XOR b k XOR c k = a k b k c k Równanie boolowskie przeniesienia: c k+1 = (a k AN b k ) OR (a k AN c k ) OR (b k AN c k ) = (a
LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydziałowy Zakład Metrologii Mikro- i Nanostruktur SEMESTR LETNI 2016
LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydziałowy Zakład Metrologii Mikro- i Nanostruktur SEMESTR LETNI 2016 Prowadzący: dr inż. Daniel Kopiec email: daniel.kopiec@pwr.edu.pl Pierwszy projekt w środowisku
Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne
Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne Schemat ogólny X Y Układ kombinacyjny S Z Pamięć Zegar Działanie układu Zmiany wartości wektora S możliwe tylko w dyskretnych chwilach czasowych