Sumatory H D L. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska
|
|
- Artur Niewiadomski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Sumatory 1
2 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 k b k ) + (a k c k ) + (b k c k ) 2
3 Układ Flex10K - schemat 3
4 Układ Flex10K komórka logiczna 4
5 Sumator 1-bitowy realizacja w FPGA Realizacja w FPGA: Altera Flex10K70 EPF10K70RC240-4; Quartus2 v4.1 SP2 WebEdition -- 1 bit full adder IBRARY ieee; USE ieee.std_logic_1164.a; ENTITY fa IS PORT ( a, b, cin : IN ST_OGIC; s, cout : OUT ST_OGIC); EN fa; ARCITECTURE fa_arch OF fa IS BEGIN s <= a XOR b XOR cin; cout <= (a AN b) OR (a AN cin) OR (b AN cin); EN fa_arch; 5
6 Sumator 1-bitowy realizacja w FPGA // 1 bit full adder module fa(a, b, cin, s, cout); input a, b, cin; output s, cout; assign s = a ^ b ^ cin; assign cout = a & b a & cin b & cin; endmodule 6
7 Sumator 1-bitowy realizacja w FPGA 7
8 Sumator 1-bitowy realizacja w FPGA Opóźnienia w komórce Opóźnienia w ścieŝkach bardzo duŝe w fpga 8
9 Sumator 1-bitowy realizacja w FPGA 9
10 Sumator 1-bitowy realizacja w FPGA 10
11 Sumator 1-bitowy realizacja funkcją PM -- 1 bit full adder using PM_A_SUB IBRARY ieee; USE ieee.std_logic_1164.a; IBRARY lpm; USE lpm.lpm_components.a; ENTITY fa_lpm IS GENERIC (n : INTEGER := 1); Realizacja w FPGA: Altera Flex10K20 EPF10K70RC240-4 z parametryzowaną funkcją PM_A_SUB 2 C; t pd =20,5ns PORT (a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); cin : IN ST_OGIC; s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); EN fa_lpm; ARCITECTURE fa_arch OF fa_lpm IS BEGIN fa_lpm: lpm_add_sub GENERIC MAP (PM_WIT => n, PM_REPRESENTATION => "UNSIGNE", PM_IRECTION => "A") PORT MAP (dataa => a, datab => b, cin => cin, result => s, cout => cout); EN fa_arch; 11
12 Sumator 1-bitowy realizacja funkcją PM Nagłówek parametryzowanej funkcji PM_A_SUB (V Component eclaration): COMPONENT lpm_add_sub GENERIC (PM_WIT: POSITIVE; PM_IRECTION: STRING := "UNUSE"; PM_REPRESENTATION: STRING := "SIGNE"; PM_PIPEINE: INTEGER := 0; PM_TYPE: STRING := "PM_A_SUB"; PM_INT: STRING := "UNUSE" ONE_INPUT_IS_CONSTANT: STRING := "NO"; MAXIMIZE_SPEE: INTEGER; USE_WYS: STRING := "OFF"); PORT (dataa, datab: IN ST_OGIC_VECTOR(PM_WIT-1 OWNTO 0); aclr, clock, cin: IN ST_OGIC := '0'; clken, add_sub: IN ST_OGIC := '1'; result: OUT ST_OGIC_VECTOR(PM_WIT-1 OWNTO 0); cout, overflow: OUT ST_OGIC); EN COMPONENT; 12
13 Sumator 7-bitowy ripple-carry adder 13
14 Sumator 7-bitowy realizacja V -- n-bit adder Ripple Carry Adder IBRARY ieee; USE ieee.std_logic_1164.a; ENTITY rca IS GENERIC (n : INTEGER := 7); EN rca; PORT ( a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); ARCITECTURE rca_arch OF rca IS BEGIN SIGNA c : ST_OGIC_VECTOR(n-1 OWNTO 0); s(0) <= a(0) XOR b(0); c(0) <= (a(0) AN b(0)); add: FOR i IN n-1 OWNTO 1 GENERATE s(i) <= a(i) XOR b(i) XOR c(i-1); Realizacja bez sygnału Carry-In c(i) <= (a(i) AN b(i)) OR (a(i) AN c(i-1)) OR (b(i) AN c(i-1)); EN GENERATE; cout <= c(n-1); EN rca_arch; 7-bitowy RCA C (carry) * 8 f [Mz] / tmax [ns] 34, 01 / 29,4 C (bez carry) ** 13 f [Mz] / tmax [ns] 22,27 / 44,9 * Z komponentem CARRY_SUM ** Bez 14
15 Sumator 7-bitowy realizacja Verilog // n-bit adder Ripple-Carry Adder module rca (a, b, s, cout); parameter n=7; input [n-1:0] a, b; output [n-1:0] s; output cout; wire [n-1:0] c; assign s[0] = a[0] ^ b[0]; assign c[0] = a[0] & b[0]; genvar i; generate for (i = 1; i < n; i=i+1) begin : rca_adder assign s[i] = a[i] ^ b[i] ^ c[i-1]; assign c[i] = a[i] & b[i] a[i] & c[i-1] b[i] & c[i-1]; end endgenerate assign cout = c[n-1]; endmodule; 15
16 Komponent carry_sum 16
17 Sumator 7-bitowy z komponentem carry_sum V ARCITECTURE rca_arch OF rca IS SIGNA cin : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA co : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA sin : ST_OGIC_VECTOR(n-1 OWNTO 0); COMPONENT CARRY_SUM IS PORT (sin, cin : IN ST_OGIC; sout, cout : OUT ST_OGIC); EN COMPONENT; BEGIN sin(0) <= a(0) XOR b(0); cin(0) <= a(0) AN b(0); c_0: CARRY_SUM PORT MAP (sin => sin(0), cin => cin(0), sout => s(0), cout => co(0)); add: FOR i IN n-1 OWNTO 1 GENERATE sin(i) <= a(i) XOR b(i) XOR co(i-1); cin(i) <= (a(i) AN b(i)) OR (a(i) AN co(i-1)) OR (b(i) AN co(i-1)); c_i: CARRY_SUM PORT MAP (sin => sin(i), cin => cin(i), sout => s(i), cout => co(i)); EN GENERATE; cout <= co(n-1); dr inŝ. Paweł EN rca_arch; Tomaszewicz 17
18 Sumator 7-bitowy z carry_sum Verilog // n-bit adder Ripple-Carry Adder module rca (a, b, s, cout); parameter n=7; input [n-1:0] a, b; output [n-1:0] s; output cout; wire [n-1:0] cin, co, sin; assign sin[0] = a[0] ^ b[0]; assign cin[0] = a[0] & b[0]; carry_sum c_0 (.sin(sin[0]),.cin(cin[0]),.sout(s[0]),.cout(co[0])); genvar i; generate for (i = 1; i < n; i=i+1) begin : rca_adder assign sin[i] = a[i] ^ b[i] ^ co[i-1]; assign cin[i] = a[i] & b[i] a[i] & co[i-1] b[i] & co[i-1]; carry_sum c_i (.sin(sin[i]),.cin(cin[i]),.sout(s[i]),.cout(co[i])); end endgenerate assign cout = co[n-1]; endmodule 18
19 Sumator 7-bitowy symulacja 19
20 Sumator 7-bitowy realizacja w fpga 20
21 Sumator 7-bitowy realizacja z komponenem fa V IBRARY ieee; USE ieee.std_logic_1164.a; ENTITY rca_fa IS GENERIC (n : INTEGER := 7); PORT ( a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); EN rca_fa; ARCITECTURE rca_arch OF rca_fa IS COMPONENT fa IS PORT ( a, b, cin : IN ST_OGIC; s, cout : OUT ST_OGIC); EN COMPONENT fa; SIGNA c : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA cin : ST_OGIC; BEGIN cin <= '0'; fa0: fa PORT MAP (a => a(0), b => b(0), cin => cin, s => s(0), cout => c(0)); fa_n: FOR i IN n-1 OWNTO 1 GENERATE fa_i: fa PORT MAP (a => a(i), b => b(i), cin => c(i-1), s => s(i), cout => c(i)); EN GENERATE; cout <= c(n-1); dr inŝ. Paweł EN rca_arch; Tomaszewicz 21
22 Sumator 7-bitowy realizacja z komponenem fa V IBRARY ieee; USE ieee.std_logic_1164.a; PACKAGE fa_package IS COMPONENT fa IS PORT ( a, b, cin : IN ST_OGIC; s, cout : OUT ST_OGIC); EN COMPONENT fa; EN fa_package; IBRARY work; USE work.fa_package.a; IBRARY ieee; USE ieee.std_logic_1164.a; ENTITY rca_fa IS GENERIC (n : INTEGER := 7); PORT ( a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); EN rca_fa; ARCITECTURE rca_arch OF rca_fa IS SIGNA c : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA cin : ST_OGIC; BEGIN dr inŝ. Paweł... Tomaszewicz 22
23 Sumator 7-bitowy realizacja z komponenem fa Verilog // n-bit adder Ripple-Carry Adder // using FA component //'include "fa.v" module rca_fa (a, b, s, cout); parameter n=7; input [n-1:0] a, b; output [n-1:0] s; output cout; wire [n-1:0] c; fa fa_0 (.a(a[0]),.b(b[0]),.cin(0),.s(s[0]),.cout(c[0])); genvar i; generate for (i = 1; i < n; i=i+1) begin : rca_adder fa fa_i (.a(a[i]),.b(b[i]),.cin(c[i-1]),.s(s[i]),.cout(c[i])); end endgenerate endmodule assign cout = c[n-1]; 23
24 Sumator 7-bitowy z rejestrami na we/wy V ENTITY rca_r IS... ARCITECTURE rca_arch OF rca_r IS BEGIN SIGNA c : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA a_r, b_r, s_r : ST_OGIC_VECTOR(n-1 OWNTO 0); Reg: PROCESS (clk) BEGIN EN rca_arch; IF clk'event AN (clk = '1') TEN EN IF; a_r <= a; b_r <= b; s <= s_r; EN PROCESS Reg; cout <= c(n-1); s_r(0) <= a_r(0) XOR b_r(0); c(0) <= (a_r(0) AN b_r(0)); cra_n: FOR i IN n-1 OWNTO 1 GENERATE s_r(i) <= a_r(i) XOR b_r(i) XOR c(i-1); 7-bitowy RCA c(i) <= (a_r(i) AN b_r(i)) OR (a_r(i) AN c(i-1)) OR (b_r(i) AN c(i-1)); EN GENERATE; C (carry) * 29 f [Mz] / t_clk [ns] 65,36 / 15,3 C (bez carry) ** 27 f [Mz] / t_clk [ns] 42,55 / 23,5 * Z komponentem CARRY_SUM ** Bez Rejestry na wejściu i wyjściu bloku pozwalają na oszacowanie szybkości działania bloku wewnątrz układu FPGA, bez opóźnień związanych z logiką we/wy 24
25 Sumator 7-bitowy parameter n=7; input z [n-1:0] rejestrami a, b; na we/wy Verilog // n-bit adder Ripple-Carry Adder module rca_r_1 (a, b, s, cout, clk); input clk; output [n-1:0] s; output cout; reg [n-1:0] a_r, b_r, s; reg cout; wire [n-1:0] s_r; wire [n-1:0] c; clk) begin a_r <= a; b_r <= b; s <= s_r; cout <= c[n-1]; end assign s_r[0] = a_r[0] ^ b_r[0]; assign c[0] = a_r[0] & b_r[0]; genvar i; generate for (i = 1; i < n; i=i+1) begin : rca_adder assign s_r[i] = a_r[i] ^ b_r[i] ^ c[i-1]; assign c[i] = a_r[i] & b_r[i] a_r[i] & c[i-1] b_r[i] & c[i-1]; end endgenerate endmodule 25
26 Sumator 8n+7- bitowy Opóźnienia liniowo związane z długością sumatora komórek f [Mz] t_clk [ns] 15bit 61 53,19 18,8 23bit 93 45,05 22,2 31bit ,91 25,7 39bit ,25 29,2 47bit ,58 32,7 55bit ,62 36,2 la układu FEX10K70RC240 moŝna zbudować maks. sumator 55-bitowy, poniewaŝ uŝyty układ ma dostępnych 183 nóŝki dla uŝytkownika ( =166); la sumatora 63-bitowego mamy = bit zegara i juŝ się nie zmieścił ze względu na liczbę nóŝek; Teoretycznie moŝna zbudować łańcuch Carry o długości 13x8=104, bo 52 kolumny, w połówce układu jest 26 kolumn, uŝyta co druga kolumna, czyli dostępnych13, stąd moŝliwy do zbudowania sumator 8 x n+7=103 bity) 26
27 Sumator potokowy A + B = S 27
28 Sumator 15-bitowy potokowy V (1) IBRARY work; USE work.rca_package.a; IBRARY ieee; USE ieee.std_logic_1164.a; ENTITY rca_pipe IS GENERIC (n : INTEGER := 15; n7 : INTEGER := 7; n8 : INTEGER := 8); PORT (clk : IN ST_OGIC; a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); EN rca_pipe; ARCITECTURE rca_arch OF rca_pipe IS SIGNA r0_00, r0_01, r1_0, r2_0, s0 : ST_OGIC_VECTOR(n8-1 OWNTO 0); SIGNA r0_10, r0_11, r1_10, r1_11, r2_1, s1: ST_OGIC_VECTOR(n7-1 OWNTO 0); SIGNA c0, c1, cr0, cr1 : ST_OGIC; 28
29 BEGIN PROCESS BEGIN Sumator 15-bitowy potokowy V (2) WAIT UNTI clk='1'; FOR k IN n8-1 OWNTO 0 OOP r0_00(k) <= a(k); r0_01(k) <= b(k); EN OOP; FOR k IN n7-1 OWNTO 0 OOP -- 1st level add_lsb: rca GENERIC MAP (n => n8) PORT MAP (a => r0_00, b => r0_01, s => s0, cout => c0); r0_10(k) <= a(k+n8); -- 2nd level r0_11(k) <= b(k+n8); EN OOP; add_msb: rca_in GENERIC MAP (n => n7) PORT MAP (a => r1_10, b => r1_11, EN PROCESS; cin => cr0, s => s1, cout => c1); Reg: PROCESS (clk) s(n8-1 OWNTO 0) <= r2_0(n8-1 OWNTO 0); BEGIN s(n7-1+n8 OWNTO n8) <= r2_1(n7-1 OWNTO 0); IF clk'event AN (clk = '1') TEN cout <= cr1; r1_10 <= r0_10; EN rca_arch; r1_11 <= r0_11; r2_0 <= r1_0; r1_0 <= s0; r2_1 <= s1; cr0 <= c0; cr1 <= c1; EN IF; EN PROCESS Reg; 29
30 Sumator 15-bitowy potokowy Verilog // 15-bit pipeline adder //'include "rca.v" //'include "rca_in.v" module rca_pipe (clk, a, b, s, cout); parameter n=15; parameter n7=7; parameter n8=8; input clk; input [n-1:0] a, b; output [n-1:0] s; output cout; reg [n8-1:0] r0_00, r0_01, r1_0, r2_0, s0; reg [n7-1:0] r0_10, r0_11, r1_10, r1_11, r2_1, s1; reg c0, c1, cr0, cr1; clk) begin r0_00 <= a[n8-1:0]; r0_01 <= b[n8-1:0]; r0_10 <= a[n7-1+n8:n8]; r0_11 <= b[n7-1+n8:n8]; end Przykład przekazania parametru przez konkretyzację // 1st level clk) // registers begin end r1_0 <= s0; r1_10 <= r0_10; r1_11 <= r0_11; cr0 <= c0; r2_0 <= r1_0; r2_1 <= s1; cr1 <= c1; //rca add_lsb (.a(r0_00),.b(r0_01),.s(s0),.cout(c0)); // defparam add_lsb.n=n8; rca #(n8) add_lsb (.a(r0_00),.b(r0_01),.s(s0),.cout(c0)); // 2nd level //rca_in add_msb (.a(r1_10),.b(r1_11),.cin(cr0),.s(s1),.cout(c1)); // defparam add_msb.n=n7; rca_in #(n7) add_msb (.a(r1_10),.b(r1_11),.cin(cr0),.s(s1),.cout(c1)); // output endmodule assign s[n8-1:0] = r2_0[n8-1:0]; assign s[n7-1+n8:n8] = r2_1[n7-1:0]; assign cout = cr1; 30
31 Sumator 15-bitowy potokowy - symulacja C 86 FF 69 f [Mz] 49,02 t_clk [ns] 20,4 31
32 Sumator 8n+7 potokowy N = 47 W = 8 Potokowość: zyskujemy na przepustowości, tracimy na uŝytych zasobach 32
33 Sumator 8n+7 RCA potokowy vs kombinacyjny stopni potoku komórek przerzutników f [Mz] t_clk [ns] 15bit ,02 20,4 23bit ,78 20,5 31bit ,08 20,8 39bit ,54 20,6 47bit ,17 21,2 15bit ,19 18,8 23bit ,05 22,2 31bit ,91 25,7 39bit ,25 29,2 47bit ,58 32,7 Wyniki uzyskane dla układów z rejestrami na wejściu i wyjściu Wyniki uzyskane dla układów z rejestrami na wejściu i wyjściu oraz oraz z z wykorzystaniem wykorzystaniem szybkich szybkich łańcuchów łańcuchów Carry Carry 33
34 Sumator 15-bitowy potokowy PM V -- n-bit adder using PM IBRARY ieee; USE ieee.std_logic_1164.a; IBRARY lpm; USE lpm.lpm_components.a; ENTITY rca_lpm IS GENERIC (n : INTEGER := 15); PORT (clk : IN ST_OGIC; a, b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); cout : OUT ST_OGIC); EN rca_lpm; ARCITECTURE rca_arch OF cra_lpm IS SIGNA a_r, b_r : ST_OGIC_VECTOR(n-1 OWNTO 0); BEGIN Reg: PROCESS (clk) BEGIN IF clk'event AN (clk = '1') TEN a_r <= a; b_r <= b; EN IF; EN PROCESS Reg; add: lpm_add_sub GENERIC MAP (PM_WIT => n, PM_REPRESENTATION => "UNSIGNE", PM_IRECTION => "A", PM_PIPEINE => 2) PORT MAP (dataa => a_r, datab => b_r, result => s, cout => cout, clock => clk); EN rca_arch; 34
35 Sumator 15-bitowy potokowy PM Verilog // n-bit adder using PM module rca_lpm (clk, a, b, s, cout); parameter n = 47; input clk; input [n-1:0] a, b; output [n-1:0] s; output cout; reg [n-1:0] a_r, b_r; clk) // registers begin a_r <= a; b_r <= b; end lpm_add_sub fa_lpm (.dataa(a_r),.datab(b_r),.result(s),.cout(cout),.clock(clk)); defparam fa_lpm.lpm_width=n; defparam fa_lpm.lpm_representtion="unsigned"; defparam fa_lpm.lpm_direction="add"; defparam fa_lpm.lpm_pipeline=6; endmodule 35
36 Sumator 15-bitowy potokowy PM - symulacja C 71 FF 65 f [Mz] 99,01 t_clk [s] 10,1 36
37 Sumator potokowy PM - koszt stopni potoku komórek przerzutników f [Mz] t_clk [ns] 15bit ,75 11, ,01 10,01 23bit ,92 13, ,03 11, ,75 11,8 31bit ,36 15, ,49 14, ,03 11, ,64 12,1 39 bit ,61 16, ,52 15, ,37 12, ,07 13, ,74 12,7 47 bit ,19 13,3 37
38 Sumator Carry ook-ahead Adder W sumatorze z przeniesieniami równoległymi wszystkie przeniesienia są wytwarzane jednocześnie na podstawie bitów sumowanych składników. s i = a i b i c i c i+1 = a i b i + a i c i + b i c i = a i b i + c i (a i + b i ) G i = a i b i (generacja przeniesienia) P i = a i + b i (propagacja przeniesienia) Wtedy: c i+1 = G i + c i P i 38
39 Realizacja sumatora Carry ook-ahead Adder V (1) IBRARY ieee; USE ieee.std_logic_1164.a; Argorytm CA nie jest stosowany w układach fpga, poniewaŝ są zaimplementowane specjalne linie szybkiego przeniesienia Carry ENTITY c_l_addr IS GENERIC (n : INTEGER := 7); PORT ( a : IN ST_OGIC_VECTOR(n-1 OWNTO 0); b : IN ST_OGIC_VECTOR(n-1 OWNTO 0); carry_in : IN ST_OGIC; s : OUT ST_OGIC_VECTOR(n-1 OWNTO 0); carry_out : OUT ST_OGIC ); EN c_l_addr; 39
40 Realizacja sumatora Carry ook-ahead Adder V (2) ARCITECTURE behavioral OF c_l_addr IS SIGNA h_sum : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA carry_generate : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA carry_propagate : ST_OGIC_VECTOR(n-1 OWNTO 0); SIGNA carry_in_internal : ST_OGIC_VECTOR(n-1 OWNTO 1); BEGIN h_sum <= a XOR b; carry_generate <= a AN b; carry_propagate <= a OR b; PROCESS (carry_generate,carry_propagate,carry_in_internal,carry_in) BEGIN carry_in_internal(1) <= carry_generate(0) OR (carry_propagate(0) AN carry_in); inst: FOR i IN 1 TO n-2 OOP carry_in_internal(i+1) <= carry_generate(i) OR (carry_propagate(i) AN carry_in_internal(i)); EN OOP; carry_out <= carry_generate(n-1) OR (carry_propagate(n-1) AN carry_in_internal(n-1)); EN PROCESS; s(0) <= h_sum(0) XOR carry_in; s(n-1 OWNTO 1) <= h_sum(n-1 OWNTO 1) XOR carry_in_internal(n-1 OWNTO 1); EN behavioral; 40
41 Realizacja sumatora Carry ook-ahead Adder Verilog // carry look-ahead adder module c_l_addr (a, b, carry_in, s, carry_out); parameter n=7; input [n-1:0] a,b; input carry_in; output [n-1:0] s; output carry_out; wire [n-1:0] h_sum; wire [n-1:0] carry_generate; wire [n-1:0] carry_propagate; wire [n-1:0] carry_in_internal; assign h_sum = a ^ b; assign carry_generate = a & b; assign carry_propagate = a b; assign carry_in_internal[1] = carry_generate[0] (carry_propagate[0] & carry_in); genvar i; generate for (i = 1; i <= n-2; i=i+1) begin : l_a_adder assign carry_in_internal[i+1] = carry_generate[i] (carry_propagate[i] & carry_in_internal[i]); end endgenerate assign carry_out = carry_generate[n-1] (carry_propagate[n-1] & carry_in_internal[n-1]); assign s[0] = h_sum[0] ^ carry_in; assign s[n-1:1] = h_sum[n-1:1] ^ carry_in_internal[n-1:1]; dr inŝ. endmodule Paweł Tomaszewicz 41
Układy mnoŝące H D L. dr inŝ. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska
Układy mnoŝące 1 MnoŜenie w układzie sekwencyjnym P = A X = N 1 k = 0 k a k 2 X MnoŜenie szeregowo-równoległe równoległe Czynnik X jest przesuwany o k pozycji: jeŝeli a k 0 to X*2 k jest dodawane i zapisywane
Bardziej szczegółowoUkłady kryptograficzne z uŝyciem rejestrów LFSR
Układy kryptograficzne z uŝyciem rejestrów FSR Algorytmy kryptograficzne uŝywane w systemach telekomunikacyjnych własność modulo 2 funkcji XOR P K K = P = P 2 Rejestr z liniowym sprzęŝeniem zwrotnym FSR
Bardziej szczegółowoJę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
Bardziej szczegółowoJę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
Bardziej szczegółowoFiltry cyfrowe o skończonej odpowiedzi impulsowej FIR
Filtry cyfrowe o skończonej odpowiedzi impulsowej FIR 1 FPGA zalety i wady Ogromny wzrost wydajności niektórych algorytmów Elastyczność architektury MoŜliwości znacznego zrównoleglenia algorytmów ostosowanie
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoSposoby 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
Bardziej szczegółowoUkł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
Bardziej szczegółowoFiltry cyfrowe o skończonej odpowiedzi impulsowej FIR - realizacje
Filtry cyfrowe o skończonej odpowiedzi impulsowej FIR - realizacje wersja: 01.2015 1 FPGA zalety i wady Ogromny wzrost wydajności niektórych algorytmów Elastyczność architektury Możliwości znacznego zrównoleglenia
Bardziej szczegółowoProjektowanie 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.
Bardziej szczegółowoJę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?
Bardziej szczegółowoAltera 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:...
Bardziej szczegółowoSystemy wbudowane. Projektowanie systemów wbudowanych na bazie układów CPLD/FPGA Język opisu sprzętu Verilog cz.1
Systemy wbudowane Projektowanie systemów wbudowanych na bazie układów CPLD/FPGA Język opisu sprzętu Verilog cz.1 System Quartus II Opis projektu Tekstowy (język opisu sprzętu np. Verilog) Graficzny Wykresy
Bardziej szczegółowoArchitektura komputerów, Informatyka, sem.iii. Sumatory
Sumatory Architektury sumatorów (zarys) Sumatory 1-bitowe Sumatory z propagacją Przeniesień CPA (Carry Propagate Adders) Sumatory wieloargumentowe 3-argumentowe Half Adder HA Macierz sumatorów RCA Full
Bardziej szczegółowoKró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
Bardziej szczegółowoLaboratorium 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
Bardziej szczegółowoTechnika cyfrowa Układy arytmetyczne
Sławomir Kulesza Technika cyfrowa Układy arytmetyczne Wykład dla studentów III roku Informatyki Wersja 1.0, 05/10/2010 Układy arytmetyczne UKŁADY ARYTMETYCZNE UKŁADY SUMUJĄCE i ODEJMUJĄCE UKŁADY MNOŻĄCE
Bardziej szczegółowoUkłady sekwencyjne. Wstęp doinformatyki. Zegary. Układy sekwencyjne. Automaty sekwencyjne. Element pamięciowy. Układy logiczne komputerów
Wstęp doinformatyki Układy sekwencyjne Układy logiczne komputerów Układy sekwencyjne Dr inż. Ignacy Pardyka Akademia Świętokrzyska Kielce, 2001 Wstęp do informatyki I. Pardyka Akademia Świętokrzyska Kielce,
Bardziej szczegółowoUkłady arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011
Układy arytmetyczne Joanna Ledzińska III rok EiT AGH 2011 Plan prezentacji Metody zapisu liczb ze znakiem Układy arytmetyczne: Układy dodające Półsumator Pełny sumator Półsubtraktor Pełny subtraktor Układy
Bardziej szczegółowoCyfrowe przetwarzanie sygnałów Mariusz Rawski
CAD Cyfrowe przetwarzanie sygnałów Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Cyfrowe przetwarzanie sygnału A/D konwersja sygnału analogowego na cyfrowy (próbkowanie, kwantyzacja,
Bardziej szczegółowoUkł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ń -
Bardziej szczegółowoProgramowalne układy logiczne kod kursu: ETD Podstawy języka Verilog W
Programowalne układy logiczne kod kursu: ETD008270 Podstawy języka Verilog W2 2.03.2018 mgr inż. Maciej Rudek 2 Tematyka kursu wykład Poziom abstrakcji systemów opisu sprzętu Historia Verilog został stworzony
Bardziej szczegółowo(przykład uogólniony)
Serial Peripheral Interface (przykład uogólniony) Brak standardu. Inne stosowane nazwy: Synchronous Serial Port (SSP), 4 wire SSI (Synchronous Serial Interface, Texas Instrument), Microwire (National Semiconductor).
Bardziej szczegółowoUkłady cyfrowe w Verilog HDL. Elementy języka z przykładami. wersja: cz.3
Układy cyfrowe w Verilog Elementy języka z przykładami wersja: 10.2009 cz.3 1 Układy sekwencyjne Układy sekwencyjne mają pamięć Układy synchroniczne najczęściej spotykane wszystkie elementy są kontrolowane
Bardziej szczegółowoTechnika 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
Bardziej szczegółowoPrzykł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.
Bardziej szczegółowoProgramowalne 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
Bardziej szczegółowoPracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5.
Pracownia elektryczna i elektroniczna. Elektronika cyfrowa. Ćwiczenie nr 5. Klasa III Opracuj projekt realizacji prac związanych z badaniem działania cyfrowych bloków arytmetycznych realizujących operacje
Bardziej szczegółowo1. 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
Bardziej szczegółowoUkłady reprogramowalne i SoC Specjalizowane moduły FPGA
Specjalizowane moduły FPGA Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój
Bardziej szczegółowoĆwiczenie 27 Temat: Układy komparatorów oraz układy sumujące i odejmujące i układy sumatorów połówkowych i pełnych. Cel ćwiczenia
Ćwiczenie 27 Temat: Układy komparatorów oraz układy sumujące i odejmujące i układy sumatorów połówkowych i pełnych. Cel ćwiczenia Poznanie zasad budowy działania komparatorów cyfrowych. Konstruowanie komparatorów
Bardziej szczegółowoProjekt 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
Bardziej szczegółowoProgramowalne układy logiczne kod kursu: ETD Układy kombinacyjne, przypisania, blokujące i nieblokujące cz.2 W
Programowalne układy logiczne kod kursu: ETD008270 Układy kombinacyjne, przypisania, blokujące i nieblokujące cz.2 W4 23.03.2018 mgr inż. Maciej Rudek UKŁADY KOMBINACYJNE Układy kombinacyjne Układ kombinacyjny
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoArchitektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące
Architektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Plan wykładu Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka
Bardziej szczegółowoLaboratorium 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,
Bardziej szczegółowoLaboratorium Podstaw Techniki Cyfrowej
Laboratorium Podstaw Techniki Cyfrowej Ćwiczenie 5: Wprowadzenie do języków opisu sprzętu 1. Języki opisu sprzętu Języki opisu sprzętu(hdl Hardware Description Language) to języki słuŝące do opisu układów
Bardziej szczegółowoWykład 4. Języki Opisu Sprzętu
Języki Opisu Sprzętu Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D-10 222, tel. w. 28-72, e-mail: skoczen@fis.agh.edu.pl Wprowadzenie do Veriloga Przypisania proceduralne (c. d.) Wykład 4 2017 8 listopad
Bardziej szczegółowoPolitechnika 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
Bardziej szczegółowoPlan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite.
Plan wykładu rchitektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka sekwencyjna
Bardziej szczegółowoSpecyfika 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
Bardziej szczegółowoSystemy 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
Bardziej szczegółowoModelowanie 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
Bardziej szczegółowoUkł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
Bardziej szczegółowoLABORATORIUM 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
Bardziej szczegółowoWykład 3. Języki Opisu Sprzętu. Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D , tel. w ,
Języki Opisu Sprzętu Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D-10 222, tel. w. 28-72, e-mail: skoczen@fis.agh.edu.pl Tablice i wektory Reguły łączenia portów Wykład 3 2018 10 październik 2018
Bardziej szczegółowoUkł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
Bardziej szczegółowoVHDL. Behawioralny Strukturalny Czasowy. Poziom RTL
Style opisu VHDL VHDL Behawioralny Strukturalny Czasowy Równania boolowskie Poziom RTL Przebieg czasowy c = a v b c
Bardziej szczegółowoAby 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ł
Bardziej szczegółowoPolitechnika 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
Bardziej szczegółowoSystemy 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
Bardziej szczegółowoWykład 2. Języki Opisu Sprzętu. Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D , tel. w ,
Języki Opisu Sprzętu Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D-10 222, tel. w. 28-72, e-mail: skoczen@fis.agh.edu.pl Dwa oblicza systemu cyfrowego Opcje projektowe dla systemu cyfrowego Wykład
Bardziej szczegółowoPolitechnika 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
Bardziej szczegółowoVHDL. 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
Bardziej szczegółowoUkł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ń
Bardziej szczegółowoProcesory w FPGA H D L. dr inż. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska
Procesory w FPGA 1 System w FPGA SOPC - System on a Programmable Chip System mikroprocesorowy w układzie programowalnym: softprocesor zrealizowany w logice układu FPGA NIOS2 Altera Microblaze Xilinx OpenRISC
Bardziej szczegółowoSynteza 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
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoJęzyk VERILOG w praktyce
Język VERLOG w praktyce RUS RUS Język VERLOG rzykłady syntezy blokowej RUS RUS Elementy systemu cyfrowego magistrala danych cd. module swap (Data, Resetn, w, Clock, Extern, RinExt, Busires); input [7:0]
Bardziej szczegółowoUkł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)
Bardziej szczegółowoSystem cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.
Sstem cfrow Sgnał sterujące ane wejściowe Układ sterując (kontroler) Układ operacjn (atapath) Mikrooperacje wwołwane przez sgnał sterujące Stan części operacjnej ane wjściowe Snteza strukturalna układów
Bardziej szczegółowoPodstawy techniki cyfrowej cz.2 zima Rafał Walkowiak
Podstawy techniki cyfrowej cz.2 zima 2015 Rafał Walkowiak 3.12.2015 Układy cyfrowe Ogólna struktura logiczna: Wej ster Dane układ sterowania bloki funkcjonalne dla realizacji określonych funkcji przetwarzania
Bardziej szczegółowo1 Wstęp. 2 Operatory. 3 Blok always dla układów kombinacyjnych. 4 Instrukcja IF. 5 Instrukcja CASE. 6 Struktury konstrukcji warunkowych
Wstęp PROGRAMOWANIE STRUTUR CYFROWYCH Układy kombinacyjne poziomu RT c Dr inż. Ignacy Pardyka UNIWERSYTET JANA OCHANOWSIEGO w ielcach 1 Rok akad. 2013/2014 2 1 Instytut Fizyki, Zakład Informatyki, e-mail:
Bardziej szczegółowoKierunek 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
Bardziej szczegółowoPod o z d ia i ł a r yn y k n u k u ( 2004 r.). źródło: Gartner 3
Systemy typu SoPC Orkiszewski Marcin Projektowanie Programowalnych Układów Scalonych z-2009 Mikrokontrolery vs. FPGA MCU cena łatwość montaŝu łatwość programowania > >> >>> FPGA cena łatwość montaŝu łatwość
Bardziej szczegółowoWykład 4. Języki Opisu Sprzętu. Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D , tel. w ,
Języki Opisu Sprzętu Prowadzący: dr inż. Andrzej Skoczeń Współrzędne: D-10 222, tel. w. 28-72, e-mail: skoczen@fis.agh.edu.pl Przypisania nieblokujące Stosowanie opóźnień w przypisaniach Wykład 4 2018
Bardziej szczegółowoSPIS TREŚCI. 2. Arytmetyka rozproszona Symulacja układu programowalnego Realizacja algorytmu cyfrowego filtrowania
SPIS TREŚCI 1. Wstęp... 5 2. Arytmetyka rozproszona... 6 2.1. Symulacja układu programowalnego... 7 3. Realizacja algorytmu cyfrowego filtrowania... 9 4....... 10 5....... 12 6. Podsumowanie... 13 Literatura...
Bardziej szczegółowoĆwiczenie 28. Przy odejmowaniu z uzupełnieniem do 2 jest wytwarzane przeniesienie w postaci liczby 1 Połówkowy układ
Temat: Układy odejmujące połówkowe i pełne. Cel ćwiczenia Ćwiczenie 28 Poznanie teorii uzupełniania. Budowanie układów odejmujących połówkowych pełnych. Czytanie schematów elektronicznych, przestrzeganie
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoWydział 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
Bardziej szczegółowoVerilog HDL. Język Opisu Sprzętu Hardware Description Language Część I. Elementy języka. dr inż. Paweł Tomaszewicz H D L
Verilog Język Opisu Sprzętu ardware escription anguage Część I. Elementy języka dr inż. Paweł Tomaszewicz 1 istoria krótko ata '80 potrzeba stworzenia jednego języka do symulacji na różnych poziomach opisu
Bardziej szczegółowoProgramowalne 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
Bardziej szczegółowoPrzykłady do wykładu Języki modelowania i symulacji
Przykłady do wykładu Języki modelowania i symulacji dr inż. Bogdan Pankiewicz Gdańsk, listopad 2011 - grudzień 2015 Część I - PSPICE Przykład I - przerzutnik D Czynności do wykonania: Wprowadzenie opisu
Bardziej szczegółowoModelowanie liczników w języku Verilog i ich implementacja w strukturze FPGA
Modelowanie liczników w języku Verilog i ich implementacja w strukturze FPGA Licznik binarny Licznik binarny jest najprostszym i najpojemniejszym licznikiem. Kod 4 bitowego synchronicznego licznika binarnego
Bardziej szczegółowoKrótkie przypomnienie
Krótkie przypomnienie Prawa de Morgana: Kod Gray'a A+ B= Ā B AB= Ā + B Układ kombinacyjne: Tablicy prawdy Symbolu graficznego Równania Boole a NOR Negative-AND w.11, p.1 XOR Układy arytmetyczne Cyfrowe
Bardziej szczegółowoPodział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące
Podział sumatorów Równoległe: Z przeniesieniem szeregowym Z przeniesieniem równoległym Szeregowe (układy sekwencyjne) Zwykłe Akumulujące 1 Sumator z przeniesieniami równoległymi G i - Warunek generacji
Bardziej szczegółowoKierunek 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
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoUkłady FPGA w przykładach, część 2
Układy FPGA w przykładach, część 2 W drugiej części artykułu zajmiemy się omówieniem wyposażenia (po mikrokontrolerowemu : peryferiów) układów FPGA z rodziny Spartan 3, co ułatwi ich wykorzystywanie w
Bardziej szczegółowoPodstawy techniki cyfrowej cz.2 wykład 3 i 5
Podstawy techniki cyfrowej cz.2 wykład 3 i 5 Rafał Walkowiak Wersja 0.1 29.10.2013 Układy cyfrowe Ogólna struktura logiczna: Wej ster Dane bloki funkcjonalne dla realizacji określonych funkcji przetwarzania
Bardziej szczegółowoImplementacja algorytmu DES
mplementacja algorytmu DES Mariusz Rawski rawski@tele.pw.edu.pl www.zpt.tele.pw.edu.pl/~rawski/ Z Mariusz Rawski 1 Algorytm DES DES (Data Encryption Standard) - jest szyfrem blokowym, o algorytmie ogólnie
Bardziej szczegółowo1 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
Bardziej szczegółowoJęzyk Verilog w projektowaniu układów FPGA
POLITECHNIKA ZIELONOGÓRSKA Wydział Elektryczny Język Verilog w projektowaniu układów FPGA Jacek Bieganowski Grzegorz Wawrzyniak Promotor: dr inż. Marek Węgrzyn Zielona Góra, czerwiec 2001 Spis treści 1.
Bardziej szczegółowoProjektowanie Scalonych Systemów Wbudowanych VERILOG
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
Bardziej szczegółowoProjektowanie Scalonych Systemów Wbudowanych VERILOG
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
Bardziej szczegółowoProgramowanie 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
Bardziej szczegółowoQuartus. Rafał Walkowiak IIn PP Listopad 2017
Quartus Rafał Walkowiak IIn PP Listopad 2017 Altera Quartus Narzędzie projektowe dla FPGA I CPLD Umożliwia: wprowadzenie projektu, syntezę logiczną i symulację funkcjonalną, przydział do układów logicznych
Bardziej szczegółowoUkład cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.
Układ 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 Synteza
Bardziej szczegółowoUkłady kombinacyjne 1
Układy kombinacyjne 1 Układy kombinacyjne są to układy cyfrowe, których stany wyjść są zawsze jednoznacznie określone przez stany wejść. Oznacza to, że doprowadzając na wejścia tych układów określoną kombinację
Bardziej szczegółowoMetoda Newtona przyjmuje następujące założenia dla funkcji :
Zakład Cyberbezpieczeństwa, Instytut Telekomunikacji, Politechnika Warszawska, 2015. 1 Układy Cyfrowe laboratorium Przykład realizacji ćwiczenia nr 5 wersja 2015) 1. Temat Realizacja iteracyjnego algorytmu
Bardziej szczegółowoProjektowanie 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
Bardziej szczegółowoLABORATORIUM UKŁADÓW PROGRAMOWALNYCH
LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydział Elektroniki Mikrosystemów i Fotoniki Politechnika Wrocławska Prowadzący: dr inż. Daniel Kopiec email: daniel.kopiec@pwr.edu.pl Konfiguracja układu DCM Digital
Bardziej szczegółowoJęzyki projektowania HDL
Języki projektowania HDL Wykład dr inż. Marek Wójcikowski Ver: 2015-03-11 1 Zasady zaliczenia Wykład 2 kolokwia: 22.5+22.5 punktów=45 punktów Obecność na wykładzie 5 punktów Laboratorium 50 punktów Warunek
Bardziej szczegółowoĆWICZENIE 4 Zapoznanie ze środowiskiem CUPL Realizacja układów kombinacyjnych na układach PLD
ĆWICZENIE 4 Zapoznanie ze środowiskiem CUPL Realizacja układów kombinacyjnych na układach PLD ZAGADNIENIA algebra Boola, bramki logiczne, Przygotowanie plików źródłowych w języku CUPL, Zasady kompilacji
Bardziej szczegółowoBloki funkcjonalne. stanowią wyposażenie bibliotek komputerowych systemów projektowania. Każdy układ cyfrowy składamy z bloków funkcjonalnych ZPT
Bloki funkcjonalne stanowią wposażenie bibliotek komputerowch sstemów projektowania Licznik Mux Rejestr Każd układ cfrow składam z bloków funkcjonalnch Edtor graficzn IN CLK CK IN LB[7..] STOP] OUT CLOK
Bardziej szczegółowoPROGRAMOWANIE STRUKTUR CYFROWYCH. Konwencje dla asemblera KCPSM3. Simple IO. PicoBlaze - projekty. c Dr inż. Ignacy Pardyka. Rok akad.
PROGRAMOWANIE STRUTUR CYFROWYCH PicoBlaze - projekty c Dr inż. Ignacy Pardyka UNIWERSYTET JANA OCHANOWSIEGO w ielcach 1 Rok akad. 2014/2015 1 Instytut Fizyki, Zakład Informatyki, e-mail: ignacy.pardyka@ujk.edu.pl
Bardziej szczegółowoPojedyncze 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
Bardziej szczegółowoPROJEKTOWANIE UKŁADÓW CYFROWYCH Z WYKORZYSTANIEM PAKIETU MULTISIM 2001 ORAZ JĘZYKA OPISU SPRZĘTU VHDL
Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej Nr 20 XIV Seminarium ZASTOSOWANIE KOMPUTERÓW W NAUCE I TECHNICE 2004 Oddział Gdański PTETiS PROJEKTOWANIE UKŁADÓW CYFROWYCH
Bardziej szczegółowoPolitechnika 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
Bardziej szczegółowoXC4000: 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
Bardziej szczegółowo