1 íntese ais S igit antos S s 05 L D do 20 V - para os ieira antos S dos el V ieira VHD igu iguel V ircuit M M agem José C - P José C A S ingu de L

Tamanho: px
Começar a partir da página:

Download "1 íntese ais S igit antos S s 05 L D do 20 V - para os ieira antos S dos el V ieira VHD igu iguel V ircuit M M agem José C - P José C A S ingu de L"

Transcrição

1 VHDL Linguagem para Síntese de Circuitos Digitais José Miguel Vieira dos Santos SACP - José Miguel Vieira dos Santos - V2005 1

2 VHDL Linguagem de programação que permite: Sintetizar descrições de circuitos digitais Documentar circuitos Simular circuitos Historial Very High Speed Integrated Circuits (VHSIC) VHSIC Hardware Description Language (VHDL) -198x Norma IEEE: 1076 e 1164 (1987-R1993) Bibliografia: The Designer's Guide to VHDL, Peter J. Ashenden, Morgan Kaufmann Publishers, ISBN SACP - José Miguel Vieira dos Santos - V2005 2

3 Síntese Síntese é a realização de descrições de circuitos i.e. a criação de um circuito. VHDL permite sintetizar circuitos a 2 níveis Estrutural- esquemático ( gráfico) Comportamental- funcional, abstracto (alto-nível) Independente dos circuitos lógicos Particularmente útil para CPLD/FPGA Um circuito é descrito em VHDL por: Entity - descreve o componente como entidade (periferia) Architecture - descreve o conteúdo (função, interior) SACP - José Miguel Vieira dos Santos - V2005 3

4 Ex.1: Comparador de 4 bits -- COMP4 é um comp de 4 bits Entity COMP4 is Port ( a, b: in bit_vector ( 3 downto 0 ) ; igual: out bit ) ; End COMP4; Architecture Estrut_C4 of COMP4 is Begin igual <= 1 when (a = b) else 0 ; -- Log positiva (activa/1) End Estrut_C4 SACP - José Miguel Vieira dos Santos - V2005 4

5 Entity Descreve a caixa (os pinos) A informação é transportada por SIGNALS Cada Signal é declarado com um tipo (Type) Ports são casos particulares de Signals Ports - cada conexão ao exterior é um Port, e tem: Nome - único (dentro) Lista de propriedades MODE - identifica a direcção (in, out, bid) TYPE - identifica os valores que o Port pode assumir (0, 1, Z, etc) Em regra, um Port corresponde a um pino (ou grupo de) SACP - José Miguel Vieira dos Santos - V2005 5

6 Ports - propriedades Os MODE podem ser 4: IN - entra apenas OUT - apenas sai INOUT - bidireccional BUFFER - sai e é também realimentado para o interior Types BIT - pode tomar os valores 0 e 1 Bit-Vector - grupo de bits, cada um podendo ser 0 ou 1. Integer - inteiros, útil para contagens, decisões de fluxo Bolean - pode tomar valores TRUE ou FALSE Enumerated - pode ser definido pelo utilizador. SACP - José Miguel Vieira dos Santos - V2005 6

7 IEEE 1076 TYPES Ex: SIGNAL a: BIT_VECTOR(0 TO 3); -- e.g. ascending range SIGNAL b: BIT_VECTOR(3 DOWNTO 0); -- e.g. descending range a <= "0101"; b <= "0101"; Equivalente a: a(0) = '0'; a(1) = '1'; a(2) = '0'; a(3) = '1'; b(0) = '1'; b(1) = '0'; b(2) = '1'; b(3) = '0'; VHDL é uma linguagem restritiva strongly typed language Um signal não pode ser ligado/atribuído a outro signal de type diferente SACP - José Miguel Vieira dos Santos - V2005 7

8 IEEE 1164 TYPES O standard logic package define 9 type Unresolved_logic TYPE std_ulogic IS ( U, -- Uninitialised X, -- Forcing Unknown 0, -- Forcing 0 1, -- Forcing 1 Z, -- High Impedance W, -- Weak Unknown L, -- Weak 0 H, -- Weak Don t care ); SACP - José Miguel Vieira dos Santos - V2005 8

9 IEEE 1164 TYPES (cont.) Os seguintes types derivam de std_ulogic: std_ulogic_vector Grupo de sinais std_ulogic std_logic A versão resolvida /definida de std_ulogic Resolução: define caso de sinais alimentados por mais que 1 saída std_logic_vector Grupo de std_logic VHDL é independente dos caracteres M/m (case indep/) SACP - José Miguel Vieira dos Santos - V2005 9

10 Exemplo2 - Entidade Descrição VHDL de uma black-box : LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY black_box IS PORT ( clk, rst: IN std_logic; d: IN std_logic_vector(7 DOWNTO 0); q: OUT std_logic_vector(7 DOWNTO 0); co: OUT std_logic); END black_box; MODE TYPE BLACK_BOX rst q[7:0] d[7:0] co clk SACP - José Miguel Vieira dos Santos - V

11 Exemplo 5 Escreva uma entity declaration para o circuito indicado: Port D is a 12-bit bus, input only Port OE and CLK are each input bits Port AD is a 12-bit, three-state bidirectional bus Port A is a 12-bit bus, output only Port INT is a three-state output Port AS is an output also used internally Circuito_a d[11:0] oe clk ad[11:0] a[11:0] int as SACP - José Miguel Vieira dos Santos - V

12 Exemplo.5 - solução LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY Circuito_a IS PORT ( d: IN std_logic_vector(11 DOWNTO 0); oe, clk:in std_logic; ad: INOUT std_logic_vector(11 DOWNTO 0); a: OUT std_logic_vector(11 DOWNTO 0); int: OUT std_logic; as: BUFFER std_logic); END Circuito_a ; Circuito_a -- Palavras reservadas a bold. -- VHDL não distingue m/m -- (not case sensitive) -- clock, Clock, CLOCK são -- o mesmo signal d[11:0] oe clk ad[11:0] a[11:0] int as SACP - José Miguel Vieira dos Santos - V

13 Exemplo 6 Escrever a entity declaration para o seguinte: Port EN, LD and CLK are input only Port A is a 4-bit bus, input only Port W is an output only Port X is a 12-bit three-state bidirectional bus Port Y is an output that is also used internally Port Z is a three-state output Circ_ex1 en ld clk a[3:0] w x[11:0] y z SACP - José Miguel Vieira dos Santos - V

14 Exemplo 6: Solução LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY Circ_ex1 IS PORT ( clk, ld, en: IN std_logic; a: IN std_logic_vector(3 DOWNTO 0); w: OUT std_logic; x: INOUT std_logic_vector(11 DOWNTO 0); y: BUFFER std_logic; z: OUT std_logic); END Circ_ex1 ; en ld clk a[3:0] w x[11:0] y z SACP - José Miguel Vieira dos Santos - V

15 Declaração de Ports Ter em conta a legibilidade; originalmente lógica discreta MODE Por defeito: IN Não ligar dois OUT BUFFER semelhante a OUT Obriga a usar saídas que permitam realimentação (interna) Todas nas Altera 3064, 7128 e 10KXX. Útil para contadores. BUFFER não permite bidireccionalidade (no VHDL original) Tem de ser utilizada nos dois sentidos INOUT pode substituir BUFFER em todas as declarações Impede optimização de recursos e dificulta leitura. TYPE std_ulogic; std_logic; arrays (vectores) SACP - José Miguel Vieira dos Santos - V

16 Standard VHDL operators Logical - defined for type STD_LOGIC, STD_LOGIC_VECTOR, BOOLEAN AND OR XOR NOT Relational - defined for types STD_LOGIC, STD_LOGIC_VECTOR, INTEGER = (equal to) /= (not equal to) < (less than) <= (less than or equal to) > (greater than) >= (greater than or equal to) SACP - José Miguel Vieira dos Santos - V

17 Standard VHDL operators (cont.) Unary Arithmetic - defined for type INTEGER - (arithmetic negate) Arithmetic - defined for type INTEGER, STD_LOGIC + (addition) - (subtraction) Concatenation - defined for types STRING & STRING is any sequence of characters BIT_VECTOR is an example of a STRING SACP - José Miguel Vieira dos Santos - V

18 VHDL: Operadores Lógicos Operadores lógicos não têm precedência A or B and C -- origina erro São necessários parêntesis A or (B and C) (A or B) and C SACP - José Miguel Vieira dos Santos - V

19 Architecture A Architecture é associada a uma Entity VHDL permite 2 estilos de descrição funcional Structural - estrutural, descreve a estrutura interna da caixa Tende a recorrer aos componentes lógicos, ligações, blocos Behavioral - comportamental, enuncia funcionamento esperado Forma algorítmica, abstracta. Evita lidar com os componentes Mais compacta Mais legível Melhor portabilidade Permite combinação dos estilos Ex: Abstract ( high-level ) descriptions IF a = b THEN state <= state5; Boolean equations x <= (a OR b) AND c; SACP - José Miguel Vieira dos Santos - V

20 Ex7: Comp-4 bits - Fluxo de dados Fluxo de dados (RTL ou Data-flow) ENTITY comp4 IS PORT (a, b: IN BIT_VECTOR (3 DOWNTO 0); igual: OUT BIT); END comp4; ARCHITECTURE c4_df OF comp4 IS BEGIN igual <= 1 WHEN (a=b) ELSE 0 ; -- igualdade activa igual END c4_df ; SACP - José Miguel Vieira dos Santos - V

21 Ex8: Comp-4b - todos estados definidos ENTITY comp4 IS PORT ( a, b: IN STD_LOGIC_VECTOR (3 DOWNTO 0); igual: OUT STD_LOGIC ); END comp4; ARCHITECTURE c4_detalhe OF comp4 IS BEGIN comp: PROCESS (a, b) BEGIN IF a=b THEN igual <= 1 ; ELSE igual <= 0; -- todos os comportamentos especificados END IF; END PROCESS comp; END c4_detalhe; SACP - José Miguel Vieira dos Santos - V

22 Ex9: Comp-4b - valor por defeito ENTITY comp4 IS PORT ( a, b: IN STD_LOGIC_VECTOR (3 DOWNTO 0); igual: OUT STD_LOGIC ); END comp4; ARCHITECTURE c4_atrib OF comp4 IS BEGIN comp: PROCESS (a, b) BEGIN igual <= 0 ; -- atribuição por defeito; localização rígida IF a=b THEN igual <= 1 ; END IF; END PROCESS comp; END c4_atrib ; SACP - José Miguel Vieira dos Santos - V

23 Process: exemplo Example of statements within a Process: s a(3 DOWNTO 0) b(3 DOWNTO 0) x(3 DOWNTO 0) mux: PROCESS (a, b, s) BEGIN IF s = '0' THEN x <= a; ELSE x <= b; END IF; END PROCESS mux; µ The logic within a process can be registered or combinatorial SACP - José Miguel Vieira dos Santos - V

24 VHDL: processamento temporal Dois tipos de statements - essencialmente para simulação Sequential Statements within a process are sequential statements and evaluate sequentially in terms of simulation Concurrent Statements outside of a process evaluate concurrently (em //) => more than one process can be active at any given time Active processes are evaluated concurrently Ex: inc <= 0 inc <= 1 SACP - José Miguel Vieira dos Santos - V

25 Processos: atribuição sequencial Ex: inc <= 0 inc <= 1 Fora de Process Se type bit: erro na síntese Dentro de Process Se type bit: inc = 1 Se type std_logic inc <= X para simulação Erro para síntese SACP - José Miguel Vieira dos Santos - V

26 Concurrent statements Concurrent statements include boolean equations -- Examples of boolean equations x <= (a AND (NOT sel1)) OR (b AND sel1); g(0) <= NOT (y AND sel2); conditional assignments (i.e., when...else...) instantiations -- Examples of conditional assignments y <= d WHEN (sel1 = '1') ELSE c; g(1) <= '0' WHEN (x = '1' AND sel2 = '0') ELSE '1'; -- Example of instantiation inst1: mand GENERIC MAP (1, 2) PORT MAP (g, h); inst2: minv GENERIC MAP (1) PORT MAP (h, f); SACP - José Miguel Vieira dos Santos - V

27 Sequential statements: The Process Statements within a process are evaluated sequentially in terms of simulation A Process can be either active (awake) or inactive (asleep) A Process typically has a sensitivity list ex: PROCESS (clock, enable) Normally assyncronous signals Usually detect transitions (clk event) When a signal in the sensitivity list changes value, the process becomes active All signal assignments occur at END PROCESS statement in terms of simulation time The Process then becomes inactive SACP - José Miguel Vieira dos Santos - V

28 Controlo de programa Controlo de fluxo WITH- SELECT- WHEN WHEN - ELSE (ELSIF) Decisões If-THEN-ELSE CASE-WHEN SACP - José Miguel Vieira dos Santos - V

29 Ex10: Controlo fluxo- WITH-SELECT-WHEN ENTITY selsig IS PORT ( d0, d1, d2, d3 : IN STD_LOGIC; s : IN INTEGER RANGE 0 TO 3; output : OUT STD_LOGIC ); END selsig; ARCHITECTURE maxpld OF selsig IS BEGIN WITH s SELECT -- cria mux 4-1 output <= d0 WHEN 0, d1 WHEN 1, d2 WHEN 2, d3 WHEN 3; END maxpld; SACP - José Miguel Vieira dos Santos - V

30 Ex11: Descodificador BCD-7seg: Entidade -- file: decoder.vhd -- LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY decoder IS PORT( digit: IN std_logic_vector(3 DOWNTO 0); leds: OUT std_logic_vector(7 DOWNTO 0)); END decoder; SACP - José Miguel Vieira dos Santos - V

31 EX11: Decod.BCD-7seg - Arquitectura ARCHITECTURE archdecoder OF decoder IS BEGIN -- 7 segment display decoder, the segment order is a,b,c,d,e,f,g,dp dec:process (digit) BEGIN CASE digit IS WHEN "0000" => leds <= " "; WHEN "0001" => leds <= " "; WHEN "0010" => leds <= " "; WHEN "0011" => leds <= " "; WHEN "0100" => leds <= " "; WHEN "0101" => leds <= " "; WHEN "0110" => leds <= " "; WHEN "0111" => leds <= " "; WHEN "1000" => leds <= " "; WHEN "1001" => leds <= " "; WHEN "1010" => leds <= " "; WHEN "1011" => leds <= " "; WHEN "1100" => leds <= " "; WHEN "1101" => leds <= " "; WHEN "1110" => leds <= " "; WHEN "1111" => leds <= " "; WHEN OTHERS => leds <= " "; END CASE; END PROCESS dec; END archdecoder; SACP - José Miguel Vieira dos Santos - V

32 Ex12: Comp4 - Arch. Behavioral -- COMP4 é um comp de 4 bits Entity COMP4 is Port ( a, b: in std_logic_vector (3 downto 0) ; igual: out std_logic ) ; End COMP4; Architecture Comport_C4 of COMP4 is Begin comp: process (a,b) begin if a=b then igual <= 1 else igual <= 0 ; end if; end process comp; End Comport_C4 -- COMP4 é um comp de 4 bits Entity COMP4 is Port ( a, b: in bit_vector ( 3 downto 0 ) ; End COMP4; igual: out bit ) ; Architecture Estrut_C4 of COMP4 is Begin igual <= 1 when (a = b) else 0 ; -- Log positiva End Estrut_C4 SACP - José Miguel Vieira dos Santos - V

33 Projecto com Registos Há dois métodos de criar flip-flops Instanciar (definir, declarar) o flip-flop Ou outro componente que contenha o flip-flop Usar um processo sensível à transição (edge) do clock d q clock SACP - José Miguel Vieira dos Santos - V

34 FF activo por nível CLK (Latch) ENTITY reginf IS PORT ( d, clk, [clr, pre, load, data] : IN STD_LOGIC; q : OUT STD_LOGIC ); END reginf; d q clk -- Registo com Clock activo-a-1 PROCESS BEGIN WAIT UNTIL clk = '1'; q <= d; END PROCESS; -- Registo com Clock activo-a-0 PROCESS BEGIN WAIT UNTIL clk = '0'; q <= d; END PROCESS; SACP - José Miguel Vieira dos Santos - V

35 Ex13: FF - D (descrição comportamental) LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY registo1 IS PORT ( d, clock: IN std_logic; q: OUT std_logic); END registered; ARCHTECTURE arc_reg OF registo1 IS BEGIN ff1: PROCESS (clock) BEGIN IF clock'event AND clock = '1 -- verifica só no THEN q <= d; -- flanco ascendente END IF; END PROCESS ff1; END arc_reg; SACP - José Miguel Vieira dos Santos - V

36 Ex14: Contador ARCHITECTURE a OF counters IS BEGIN -- Enable counter PROCESS (clk) VARIABLE cnt : INTEGER RANGE 0 TO 255; BEGIN IF (clk'event AND clk = '1') THEN IF enable = '1' THEN END IF; END IF; qa <= cnt; END PROCESS; cnt := cnt + 1; SACP - José Miguel Vieira dos Santos - V

37 Ex15: Synchronous clear counter PROCESS (clk) BEGIN VARIABLE cnt : INTEGER RANGE 0 TO 255; IF (clk'event AND clk = '1') THEN END IF; IF clear = '0' THEN cnt := 0; ELSE cnt := cnt + 1; END IF; qc <= cnt; END PROCESS; SACP - José Miguel Vieira dos Santos - V

38 Ex16: Synchronous load counter PROCESS (clk) BEGIN VARIABLE cnt : INTEGER RANGE 0 TO 255; IF (clk'event AND clk = '1') THEN END IF; IF ld = '0' THEN cnt := d; ELSE cnt := cnt + 1; END IF; qb <= cnt; END PROCESS; SACP - José Miguel Vieira dos Santos - V

39 Ex17: Up/down counter PROCESS (clk) VARIABLE cnt : INTEGER RANGE 0 TO 255; VARIABLE direction : INTEGER; BEGIN IF (up_down = '1') THEN direction := 1; ELSE direction := -1; END IF; IF (clk'event AND clk = '1') THEN cnt := cnt + direction; END IF; qd <= cnt; END PROCESS; SACP - José Miguel Vieira dos Santos - V

40 library ieee; use ieee.std_logic_1164.all; entity counter is port( clk, reset, load: in std_logic; data: in std_logic_vector(3 downto 0); count: buffer std_logic_vector(3 downto 0)); end counter; Ex18: Contador Up-Load 4bits use work.std_arith.all; architecture archcounter of counter is begin upcount: process (clk) begin if (clk'event and clk= '1') then if load = '1' then count <= data; else count <= count + 1; end if; end if; end process upcount; end archcounter; SACP - José Miguel Vieira dos Santos - V

41 Ex19: Synchronous load enable counter PROCESS (clk) BEGIN VARIABLE cnt : INTEGER RANGE 0 TO 255; IF (clk'event AND clk = '1') THEN END IF; IF ld = '0' THEN cnt := d; ELSE IF enable = '1' THEN END IF; END IF; qe <= cnt; END PROCESS; cnt := cnt + 1; SACP - José Miguel Vieira dos Santos - V

42 Ex20: Enable up/down counter PROCESS (clk) BEGIN VARIABLE cnt : INTEGER RANGE 0 TO 255; VARIABLE direction : INTEGER; IF (up_down = '1') THEN ELSE END IF; direction := 1; direction := -1; IF (clk'event AND clk = '1') THEN END IF; IF enable = '1' THEN END IF; qf <= cnt; END PROCESS; cnt := cnt + direction; SACP - José Miguel Vieira dos Santos - V

43 VHDL - Resumo VHSIC* Hardware Description Language Very Hard Difficult Language Linguagem modular de programação em alto nível Pode ser criada com qualquer editor de texto Editor do MAX+PLUS II sensível ao contexto e usa cores VHDL Design Files (*.vhd) com sintaxes 1987 ou de 1993 VHDL Design Files permitem programar os UPLD Depois de compiladas, simuladas e depuradas *- Very High Speed Integrated Circuit SACP - José Miguel Vieira dos Santos - V

44 Modos de escrita: VHDL não distingue modos Todas as declarações legais são tratadas O projectista pode utilizar o que for mais conveniente Descrições: Estruturais: lógicas Comportamentais: maior abstracção e portabilidade RTL: Register Transfer Level SACP - José Miguel Vieira dos Santos - V

45 Síntese e Simulação Síntese = Projectar (Designing) Simulação = Modelar (Modelling) Código para projecto é sempre simulável Inverso não é verdade Algumas directivas temporais ou de sequenciamento não são aplicáveis. Compilador ignora-as na síntese Resultado global pode não ser o desejado (tempos de simulação diferentes reais) Ex: ARCHITECTURE modelo1 OF 2_gates IS x <= a AND b AFTER 5ns; y <= NOT b; END modelo1; SACP - José Miguel Vieira dos Santos - V

46 RAM (e ROM) Implementada nas FLEX 10K a partir da libraria parametrizada (LPM= Lib. of Parametrize Modules) Dependentes da tecnologia Escaláveis (parametrizáveis) Noutras famílias utilizar FF (D) As LPM são construídas com megafunctions SACP - José Miguel Vieira dos Santos - V

47 Megafunções para RAM/ROM no MP2 Nome Descrição lpm_ram_dq Synchronous or asynchronous RAM with separate input and output ports lpm_ram_io Synchronous or asynchronous RAM with a single I/O port lpm_rom Synchronous or asynchronous ROM csdpram Cycle-shared dual-port RAM csfifo Cycle-shared first-in first-out (FIFO) buffer Os parâmetros definem as características finais SACP - José Miguel Vieira dos Santos - V

48 Ex: RAM 256x8 dual-port ENTITY ram256x8 IS PORT( data: IN STD_LOGIC_VECTOR (DATA_WIDTH-1 DOWNTO 0); address: IN STD_LOGIC_VECTOR (ADDR_WIDTH-1 DOWNTO 0); we, inclk, outclk: IN STD_LOGIC; q: OUT STD_LOGIC_VECTOR (DATA_WIDTH - 1 DOWNTO 0)); END ram256x8; LIBRARY ieee; USE ieee.std_logic_1164.all; LIBRARY lpm; USE lpm.lpm_components.all; LIBRARY work; USE work.ram_constants.all; ARCHITECTURE example OF ram256x8 IS BEGIN inst_1: lpm_ram_dq GENERIC MAP (lpm_widthad => ADDR_WIDTH, lpm_width => DATA_WIDTH) PORT MAP (data => data, address => address, we => we, inclk => inclk, outclk => outclk, q => q); END example; SACP - José Miguel Vieira dos Santos - V

49 Megafunções e LPMs Gates lpm_and lpm_inv lpm_bustri lpm_mux lpm_clshift lpm_or lpm_constant lpm_xor lpm_decode mux busmux Arithmetic Components lpm_abs lpm_counter lpm_add_sub lpm_mult lpm_compare Outras Funções clklock pll ntsc Storage Components csfifo lpm_ram_dq csdpram lpm_ram_io lpm_ff lpm_rom lpm_latch lpm_dff lpm_shiftreg lpm_tff MegaCore Functions a16450 a8255 a6402 fft a6850 rgb2ycrcb a8237 ycrcb2rgb a8251 SACP - José Miguel Vieira dos Santos - V

50 Componentes File: Package Library Conteúdo maxplus2.vhd maxplus2 altera MP II primitivas, algumas megafunctions de VHDL. megacore.vhd megacore altera Megafunctions pre-testadas (diversos projectos) std1164.vhd std_logic_1164 ieee Norma que descreve ligações e data types para modelação em VHDL std1164b.vhd bem como STD_LOGIC e STD_LOGIC_VECTOR types. lpm_pack.vhd lpm_components lpm LPM megafunctions definidas em VHDL. arith.vhd std_logic_arith ieee Types SIGNED e UNSIGNED, aritmética e funções de comparação arithb.vhd para types SIGNED e UNSIGNED. Funções de conversão CONV_ INTEGER, CONV_SIGNED, CONV_UNSIGNED. signed.vhd std_logic_signed ieee Funções q permitem ao MP2 aceder a types STD_LOGIC_VECTOR signedb.vhd como SIGNED types. unsigned.vhd std_logic_unsigned ieee Funções q permitem ao MP2 aceder a types STD_LOGIC_VECTOR unsignedb.vhd como UNSIGNED types. SACP - José Miguel Vieira dos Santos - V

51 SACP - José Miguel Vieira dos Santos - V

52 Ex.4: Entity+Architecture LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY logic IS PORT ( a: IN std_logic_vector(1 DOWNTO 0); b: IN std_logic; d: OUT std_logic); END logic; USE my_work.all; ARCHITECTURE archlogic OF logic IS SIGNAL c: std_logic_vector(0 TO 0); BEGIN g1: and GENERIC MAP (1, 2) PORT MAP (a, c); d <= b NOR c(0); END archlogic; a(0) a(1) b Behavioural g1 Structural LOGIC c SACP - José Miguel Vieira dos Santos - V d

VHDL Lógica Síncrona. Sinais de Saída. Sinais de Entrada. barreira. carg. VHDL -Lógica Síncrona

VHDL Lógica Síncrona. Sinais de Saída. Sinais de Entrada. barreira. carg. VHDL -Lógica Síncrona VHDL Lógica Síncrona Circuitos combinacionais respondem a estímulos com um atraso que depende de sua implementação Para sincronizar subsistemas em lógica combinacional utiliza-se barreiras temporais, que

Leia mais

Eletrônica Digital para Instrumentação

Eletrônica Digital para Instrumentação G4 Eletrônica Digital para Instrumentação Prof. Márcio Portes de Albuquerque (mpa@cbpf.br) Prof. Herman P. Lima Jr (hlima@cbpf.br) Centro Brasileiro de Pesquisas Físicas Ministério da Ciência e Tecnologia

Leia mais

VHDL. Descrição e Projeto de Circuitos Utilizando VHDL

VHDL. Descrição e Projeto de Circuitos Utilizando VHDL VHDL Descrição e Projeto de Circuitos Utilizando VHDL O projeto de circuitos digitais de forma automatizada se tornou prática industrial comum. As principais vantagens são : Portabilidade de tecnologia

Leia mais

Introdução à Linguagem VHDL

Introdução à Linguagem VHDL Sistemas Digitais EEL 480 Introdução à Linguagem VHDL Luís Henrique M. K. Costa luish@gta.ufrj.br UFRJ DEL/Poli e PEE/COPPE P.O. Box 68504 - CEP 21941-972 - Rio de Janeiro - RJ Brasil - http://www.gta.ufrj.br

Leia mais

Organização e Arquitetura de Computadores II

Organização e Arquitetura de Computadores II Organização e Arquitetura de Computadores II Rômulo Calado Pantaleão Camara Romulo.camara@univasf.edu.br www.univasf.edu.br/~romulo.camara 60h/02h Disciplinas Correlacionadas Programação Org. e Arq. de

Leia mais

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Curso Superior de Sistemas de Telecomunicações Unidade São José Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Bases tecnológicas Dispositivos Lógicos Programáveis. Introdução à Tecnologia

Leia mais

Eletrônica Digital para Instrumentação. Prof: Herman Lima Jr hlima@cbpf.br

Eletrônica Digital para Instrumentação. Prof: Herman Lima Jr hlima@cbpf.br G03 Eletrônica Digital para Instrumentação Prof: hlima@cbpf.br Centro Brasileiro de Pesquisas Físicas Ministério da Ciência, Tecnologia e Inovação (MCTI) Eletrônica Digital para Instrumentação Objetivo

Leia mais

O diagrama ASM contém dois elementos básicos: o bloco de estado e o bloco de decisão.

O diagrama ASM contém dois elementos básicos: o bloco de estado e o bloco de decisão. 14 3.2 Projeto da Unidade de Controle (VHDL) 3.2.1 Diagrama ASM (Algorithmic State Machine) ASM é um fluxograma através do qual se representa a seqüência de ações que a unidade de controle de um sistema

Leia mais

LABORG. Parte 3 - VHDL: Processos, Paralelismo e o Comando process. Fernando Gehm Moraes Ney Laert Vilar Calazans

LABORG. Parte 3 - VHDL: Processos, Paralelismo e o Comando process. Fernando Gehm Moraes Ney Laert Vilar Calazans LABORG Parte 3 - VHDL: Processos, Paralelismo e o Comando process Fernando Gehm Moraes Ney Laert Vilar Calazans 31/março/2014 Sumário Ø Introdução Ø Processos em VHDL Ø TRABALHO A FAZER Ø A ENTREGAR 2

Leia mais

Descrição e Projeto de Circuitos Utilizando VHDL

Descrição e Projeto de Circuitos Utilizando VHDL Descrição e Projeto de Circuitos Utilizando VHDL O projeto de circuitos digitais de forma automatizada se tornou prática industrial comum. As principais vantagens são : Portabilidade de tecnologia Melhor

Leia mais

Tópicos Especiais 2 Capítulo 3 Introdução ao VHDL, sintaxe básica, tipo de dados e atribuições

Tópicos Especiais 2 Capítulo 3 Introdução ao VHDL, sintaxe básica, tipo de dados e atribuições Tópicos Especiais 2 Capítulo 3 Introdução ao VHDL, sintaxe básica, tipo de dados e atribuições Prof. Alan Petrônio Pinheiro - 2011 Introdução VHDL é uma linguagem de descrição de hardware Hardware Description

Leia mais

Modelagem de Sistemas com VHDL

Modelagem de Sistemas com VHDL Modelagem de Sistemas com VHDL A abstração empregada por projetistas de sistemas digitais pode ser expressa em dois domínios: No domínio estrutural, um componente é descrito em termos de um conjunto de

Leia mais

Descrição por fluxo de dados (Data-Flow): Descreve o que o sistema deve fazer utilizando expressões lógicas.

Descrição por fluxo de dados (Data-Flow): Descreve o que o sistema deve fazer utilizando expressões lógicas. Descrição por fluxo de dados (Data-Flow): Descreve o que o sistema deve fazer utilizando expressões lógicas. Descrição estrutural: Descreve como é o hardware em termos de interconexão de componentes. Descrição

Leia mais

Introdução ao VHDL. Circuitos Lógicos. DCC-IM/UFRJ Prof. Gabriel P. Silva. Original por Ayman Wahba

Introdução ao VHDL. Circuitos Lógicos. DCC-IM/UFRJ Prof. Gabriel P. Silva. Original por Ayman Wahba Introdução ao VHDL Circuitos Lógicos DCC-IM/UFRJ Prof. Gabriel P. Silva Original por Ayman Wahba VHDL É uma linguaguem de descrição de hardware, ou seja, uma forma estruturada para a descrição de circuitos

Leia mais

Módulo 4 Introdução ao VHDL

Módulo 4 Introdução ao VHDL 1 Módulo 4 Introdução ao VHDL Conceitos básicos do VHDL Modelação, Simulação e Síntese de Sistemas Digitais entity declara o interface de um componente; architecture descreve a realização de um componente;

Leia mais

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Curso Superior de Sistemas de Telecomunicações Unidade São José Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Bases tecnológicas Dispositivos Lógicos Programáveis. Introdução à Tecnologia

Leia mais

Fundamentos de Sistemas Digitais. Lógica Sequencial. Prof. Dr. Alexandre M. Amory Prof. Dr Edson I. Moreno

Fundamentos de Sistemas Digitais. Lógica Sequencial. Prof. Dr. Alexandre M. Amory Prof. Dr Edson I. Moreno Fundamentos de Sistemas Digitais Lógica Sequencial Prof. Dr. Alexandre M. Amory Prof. Dr Edson I. Moreno 2 Referências Sugiro estudarem nesta ordem de preferência: Floyd, Cap 7 até 7.4, 9, 10. Não tem

Leia mais

LABORG. Parte 5 Projeto de um circuito digital de média complexidade Parte 2. Fernando Gehm Moraes Matheus Trevisan

LABORG. Parte 5 Projeto de um circuito digital de média complexidade Parte 2. Fernando Gehm Moraes Matheus Trevisan LABORG Parte 5 Projeto de um circuito digital de média complexidade Parte 2 Fernando Gehm Moraes Matheus Trevisan 0/maio/2015 Relógio de Xadrez 1. Em campeonatos, o xadrez é jogado usando um relógio. A

Leia mais

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP. 18/04/2016 Prof. Alexandre - ELP1DLP1 / DEE

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP. 18/04/2016 Prof. Alexandre - ELP1DLP1 / DEE DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP 1 Objetivos da Aula: Introdução à Linguagem VHDL Plano de Ensino Conteúdo Programático 3. Ferramentas de Desenvolvimento 3.4. Editor de texto (programação VHDL ou

Leia mais

Lab 3. Timing Timing Constraints Simulação

Lab 3. Timing Timing Constraints Simulação Lab 3 Timing Timing Constraints Simulação A. Mariano - 2014 1 VHDL processes Para um designer, process é um bloco de instruções que funciona de maneira sequencial e que é chaveado quando algum dos sinais

Leia mais

low): Descreve o que o sistema deve fazer utilizando expressões lógicas.

low): Descreve o que o sistema deve fazer utilizando expressões lógicas. Descrição por fluxo de dados (Data Data-Flow low): Descreve o que o sistema deve fazer utilizando expressões lógicas. Descrição estrutural: Descreve como é o hardware em termos de interconexão de componentes.

Leia mais

LABORG. Parte 1 Introdução à Simulação em VHDL. Fernando Moraes e Ney Laert Vilar Calazans

LABORG. Parte 1 Introdução à Simulação em VHDL. Fernando Moraes e Ney Laert Vilar Calazans LABORG Parte 1 Introdução à Simulação em VHDL Fernando Moraes e Ney Laert Vilar Calazans atualização - 05/agosto/2013 Mais informações sobre VHDL Web sites sobre VHDL e assuntos relacionados http://www.asic-world.com/vhdl/links.html

Leia mais

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP. 10/03/2017 Prof. Alexandre - ELP1DLP1 / DEE

DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP. 10/03/2017 Prof. Alexandre - ELP1DLP1 / DEE DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP 1 Objetivos da Aula: Introdução à Linguagem VHDL Plano de Ensino Conteúdo Programático 3. Ferramentas de Desenvolvimento 3.4. Editor de texto (programação VHDL ou

Leia mais

Aula 2 Semântica de VHDL

Aula 2 Semântica de VHDL VHDL - VHSIC Hardware Description Language Aula 2 Semântica de VHDL Leonardo Augusto Casillo Ivan Saraiva Silva 2003-2 Identificadores Usados como referência a todos os objetos declarados no código. Regras:

Leia mais

VHDL Circuitos Combinacionais

VHDL Circuitos Combinacionais VHDL Circuitos Combinacionais Neste módulo será feita uma revisão de circuitos combinacionais introduzindose alternativas representações em VHDL Uma descrição VHDL, de forma geral, pode seguir uma das

Leia mais

Registradores. Circuitos Lógicos. DCC-IM/UFRJ Prof. Gabriel P. Silva

Registradores. Circuitos Lógicos. DCC-IM/UFRJ Prof. Gabriel P. Silva Registradores Circuitos Lógicos DCC-IM/UFRJ Prof. Gabriel P. Silva 2 Registradores Conjunto de elementos de memória (flip-flops ou latches) utilizados para armazenar n bits. Utilizam um único sinal de

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I. Introdução ao VHDL. César A. M. Marcon

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I. Introdução ao VHDL. César A. M. Marcon ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I Introdução ao VHDL César A. M. Marcon VHDL Uma Linguagem de Descrição de Hardware 2 Originou como linguagem para descrever hardware, no contexto do programa

Leia mais

Circuitos Seqüenciais

Circuitos Seqüenciais Circuitos Seqüenciais Circuitos Lógicos DCC-IM/UFRJ Prof. Gabriel P. Silva Circuitos Seqüenciais Um circuito seqüencial síncrono consiste de um circuito combinacional e uma rede de memória formada por

Leia mais

4.a Aula Prática Projeto de um Somador de 16 bits com a Linguagem VHDL

4.a Aula Prática Projeto de um Somador de 16 bits com a Linguagem VHDL 4.a Aula Prática Projeto de um Somador de 16 bits com a Linguagem VHDL Prof. Cesar da Costa VHDL é uma linguagem para descrever sistemas digitais utilizada universalmente. VHDL é proveniente de VHSIC Hardware

Leia mais

CIRCUITOS SEQUENCIAIS parte 1

CIRCUITOS SEQUENCIAIS parte 1 Fundamentos de Sistemas Digitais 21/outubro/2018 CIRCUITOS SEQUENCIAIS parte 1 profs. Alexandre M. Amory e Fernando G. Moraes 1 Referências Sugiro estudarem nesta ordem de preferência: Floyd, Cap 7 até

Leia mais

Circuitos sequenciais elementares

Circuitos sequenciais elementares Circuitos sequenciais elementares João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de Computer Organization and esign,. Patterson & J. Hennessey, 3ª. ed., MKP ópicos Sistemas sequenciais

Leia mais

Gustavo G. Parma. Objetivos: O aluno deverá ser capaz de compreender os conceitos básicos de VHDL.

Gustavo G. Parma. Objetivos: O aluno deverá ser capaz de compreender os conceitos básicos de VHDL. Introdução à VHDL Gustavo G. Parma Assunto: Introdução à VHDL. Objetivos: O aluno deverá ser capaz de compreender os conceitos básicos de VHDL. 1 Introdução Teórica VHDL, VHSIC (Very High Speed Integrated

Leia mais

ISE com VHDL estrutural

ISE com VHDL estrutural UFRJ - DEL EEL480-2014 Laboratório - Turmas EL1, EL2 ISE com VHDL estrutural Texto para as aulas de laboratório, a ser complementado pelo Tutorial dos Alunos e manuais da Xilinx UG331, UG334 e UG695. Mário

Leia mais

CMP238 Projeto e Teste de Sistemas VLSI

CMP238 Projeto e Teste de Sistemas VLSI CMP238 Projeto e Teste de Sistemas VLSI Projeto Prof. Fernanda Gusmão de Lima Kastensmidt fglima@inf.ufrgs.br Conteúdo descrição lógica de alto nível (VHDL): componentes da plataforma como memória, contadores,

Leia mais

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Aula 5-P Processos em VHDL. Comandos de atribuição em VHDL:

Leia mais

Introdução. VHDL: VHSIC Hardware Description Language. Origem: VHSIC: Very High Speed Integrated Circuits. Departamento de Defesa EUA

Introdução. VHDL: VHSIC Hardware Description Language. Origem: VHSIC: Very High Speed Integrated Circuits. Departamento de Defesa EUA Introdução VHDL: VHSIC Hardware Description Language VHSIC: Very High Speed Integrated Circuits Origem: Departamento de Defesa EUA desenvolvida entre anos 70 e 80 descrever e modelar circuitos complexos

Leia mais

Descreva em VHDL, simule no simulador logico e sintetize usando uma ferramenta de CAD para FPGA :

Descreva em VHDL, simule no simulador logico e sintetize usando uma ferramenta de CAD para FPGA : UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMATICA LISTA DE EXERCÍCIOS DE SISTEMAS DIGITAIS Prof. Fernanda Gusmão de Lima Kastensmidt E Marcelo Porto (aluno mestrado PPGC) Descreva em VHDL,

Leia mais

Tipos enumerados definem uma lista de valores, e são especialmente úteis na

Tipos enumerados definem uma lista de valores, e são especialmente úteis na Usando a palavra reservada TYPE é possível definir tipos personalizados. Por exemplo, pode-se definir tipos enumerados (Enumerated) e tipos compostos (Array). Tipos enumerados definem uma lista de valores,

Leia mais

FSM em VHDL e Verificação Funcional. CMP de junho de 2006

FSM em VHDL e Verificação Funcional. CMP de junho de 2006 FSM em VHDL e Verificação Funcional CMP 238 20 de junho de 2006 Máquina de Estados: exemplo Reset= S0 S S3 X= S2 Descrição em VHDL library IEEE; use IEEE.STD_LOGIC_64.ALL; use IEEE.STD_LOGIC_ARITH.ALL;

Leia mais

VHDL - VHSIC Hardware Description Language. Exemplo prático. Raiz Quadrada

VHDL - VHSIC Hardware Description Language. Exemplo prático. Raiz Quadrada VHDL - VHSIC Hardware Description Language Exemplo prático Raiz Quadrada Exemplo de um circuito completo Descrição de um circuito que realiza a raiz quadrada de um número natural; Obtenção de um modelo

Leia mais

Lógica Reconfigurável

Lógica Reconfigurável UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA MESTRADO EM SISTEMAS DE ENERGIA Lógica Reconfigurável - amauriassef@utfpr.edu.br

Leia mais

VHDL. Prof. Maurício A Dias Laboratório de Lógica Digital

VHDL. Prof. Maurício A Dias Laboratório de Lógica Digital VHDL Prof. Maurício A Dias Laboratório de Lógica Digital Introdução VHDL é uma linguagem para descrever sistemas digitais utilizada universalmente. Origem: VHDL é proveniente de VHSIC Hardware Description

Leia mais

Lógica Reconfigurável

Lógica Reconfigurável UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA MESTRADO EM SISTEMAS DE ENERGIA Lógica Reconfigurável - amauriassef@utfpr.edu.br

Leia mais

TIPO INTEGER. Profa. Luiza Maria Romeiro Codá 2

TIPO INTEGER. Profa. Luiza Maria Romeiro Codá 2 TIPO INTEGER 2 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY FF3_tipoD_nivel IS PORT(CLK, RST, SET : IN STD_LOGIC; D : IN STD_LOGIC_VECTOR(2 DOWNTO 0); Q : OUT STD_LOGIC_VECTOR(2 DOWNTO 0)); END FF3_tipoD_nivel;

Leia mais

12/11/13. Obje%vos do laboratório. SST20707 Síntese de Sistemas de Telecomunicações. Síntese de máquinas de estado (FSM) Finite State Machine (FSM)

12/11/13. Obje%vos do laboratório. SST20707 Síntese de Sistemas de Telecomunicações. Síntese de máquinas de estado (FSM) Finite State Machine (FSM) Instituto Federal de Santa Catarina Área de Telecomunicações SST20707 Síntese de Sistemas de Telecomunicações Prof. Roberto de Matos Aviso de direitos Autorais: Transparências baseadas no trabalho do Prof.

Leia mais

Prof. Leonardo Augusto Casillo

Prof. Leonardo Augusto Casillo UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 3 Introdução ao VHDL Prof. Leonardo Augusto Casillo O que significa VHDL? Very High Speed Integrated Circuit Hardware Description

Leia mais

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO GUIA DE LABORATÓRIO DE SISTEMAS DIGITAIS PARA O CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO Agosto/2004 V2 INTRODUÇÃO Este guia foi preparado para auxilio às aulas de laboratório para o curso de Engenharia

Leia mais

Sistemas Digitais I LESI :: 2º ano. Questões Práticas de Sistemas Sequenciais

Sistemas Digitais I LESI :: 2º ano. Questões Práticas de Sistemas Sequenciais Sistemas Digitais I LESI :: 2º ano Questões Práticas de Sistemas Sequenciais António Joaquim Esteves João Miguel Fernandes www.di.uminho.pt/~aje Bibliografia: secções 8.3.1, 8.4 (parte), 8.5 (parte), DDPP,

Leia mais

Universidade Federal Fluminense - UFF Centro Tecnológico - CTC Escola de Engenharia - TCE Departamento de Engenharia de Telecomunicações TET

Universidade Federal Fluminense - UFF Centro Tecnológico - CTC Escola de Engenharia - TCE Departamento de Engenharia de Telecomunicações TET 1 Universidade Federal Fluminense - UFF Centro Tecnológico - CTC Escola de Engenharia - TCE Departamento de Engenharia de Telecomunicações TET Técnicas Digitais A Laboratório nº 3: Somadores. Data do laboratório:

Leia mais

Lógica Reconfigurável

Lógica Reconfigurável UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA MESTRADO EM SISTEMAS DE ENERGIA Lógica Reconfigurável - amauriassef@utfpr.edu.br

Leia mais

Circuitos sequenciais elementares

Circuitos sequenciais elementares Circuitos sequenciais elementares João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de Computer Organization and esign,. Patterson & J. Hennessey, 3 a. ed., MKP Tópicos Sistemas

Leia mais

ELETRÔNICA DIGITAL I

ELETRÔNICA DIGITAL I ELETRÔNICA DIGITAL I DE10-LITE Programação Utilizando VHDL Professor Dr. Michael Klug 1 Comparativo Linguagens Linguagem de Programação x HDL Supondo que cada instrução leve 20ns entre 40 e 60ns para conclusão

Leia mais

Introdução a Sistemas Digitais

Introdução a Sistemas Digitais Introdução a Sistemas Digitais Uso de banco de registradores e Memorias Disciplina: Sistemas Digitais Profa. Dra. Fernanda Gusmão de Lima Kastensmidt 2006 1/ 30 Uso de Memoria em Circuitos Integrados VHDL

Leia mais

Circuitos/Sistemas Integrados Digitais (CID/SID)

Circuitos/Sistemas Integrados Digitais (CID/SID) Circuitos/Sistemas Integrados Digitais (CID/SID) Ano Lectivo 2002/03 1 a Trabalho de Laboratório Paulo Flores, Horácio Neto 1 Objectivos Pretende-se com este trabalho de laboratório introduzir e familiarizar

Leia mais

Exercícios Referentes à Prova P1

Exercícios Referentes à Prova P1 ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I Referentes à Prova P1 prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno 2 / 11 1. Assinale com V se a sentença estiver correta, caso contrário

Leia mais

Eletrônica Digital Moderna e VHDL Volnei A. Pedroni, Elsevier, Soluções dos Exercícios Ímpares dos Capítulos 19 23

Eletrônica Digital Moderna e VHDL Volnei A. Pedroni, Elsevier, Soluções dos Exercícios Ímpares dos Capítulos 19 23 Eletrônica Digital Moderna e VHDL Volnei A. Pedroni, Elsevier, 00 Tradução (com revisão, atualização e ampliação) de Digital Electronics and Design with VHDL Elsevier / Morgan Kaufmann, USA, 00 Soluções

Leia mais

Introdução à Linguagem VHDL

Introdução à Linguagem VHDL Fundamentos de Sistemas Digitais Introdução à Linguagem VHDL prof. Dr. Alexandre M. Amory Referências Sugiro estudarem nesta ordem de preferência: Vahid, Cap 9 Ignorar verilog e SystemC Bem didático! um

Leia mais

AULA 5 Aplicação com divisor de freqüência com o CI Livro Texto pág.197 a 200.

AULA 5 Aplicação com divisor de freqüência com o CI Livro Texto pág.197 a 200. AULA 5 Aplicação com divisor de freqüência com o CI 74293. Livro Texto pág.197 a 200. 1. Contadores Assíncronos comerciais CI 74293. 1.1 Configuração Interna. 1.2 Bloco contador assincrono ou modulante,

Leia mais

Revisão: Projeto de Processadores em VHDL

Revisão: Projeto de Processadores em VHDL Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Revisão: Projeto de Processadores em VHDL DCA0119 Sistemas Digitais Heitor Medeiros Florencio 1 Sumário

Leia mais

CMP238 Projeto e Teste de Sistemas VLSI

CMP238 Projeto e Teste de Sistemas VLSI CMP238 Projeto e Teste de Sistemas VLSI Uso de banco de registradores e Memorias Projeto Prof. Fernanda Lima Kastensmidt Uso de Memoria em Circuitos Integrados VHDL designs Memory Model Simulador lógico

Leia mais

Eletrônica Digital para Instrumentação. Prof. Herman P. Lima Jr (hlima@cbpf.br) Monitor: Rafael Gama

Eletrônica Digital para Instrumentação. Prof. Herman P. Lima Jr (hlima@cbpf.br) Monitor: Rafael Gama G15 Eletrônica Digital para Instrumentação Prof. Herman P. Lima Jr (hlima@cbpf.br) Monitor: Rafael Gama Centro Brasileiro de Pesquisas Físicas Ministério da Ciência, Tecnologia e Inovação (MCTI) Eletrônica

Leia mais

Eletrônica Digital para Instrumentação. Prof: Herman Lima Jr

Eletrônica Digital para Instrumentação. Prof: Herman Lima Jr G03 Eletrônica Digital para Instrumentação Prof: hlima@cbpf.br Centro Brasileiro de Pesquisas Físicas Ministério da Ciência, Tecnologia e Inovação (MCTI) PACOTES (package) Entidades e Arquiteturas são

Leia mais

Disciplina de SSC Elementos de Lógica Digital II (Prática)

Disciplina de SSC Elementos de Lógica Digital II (Prática) USP - ICMC - SSC SSC 0113 (Lab ELD II) - 2o. Semestre 2012 Disciplina de SSC0113 - Elementos de Lógica Digital II (Prática) 1 Prof. Fernando Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Estagiário

Leia mais

Lógica Reconfigurável

Lógica Reconfigurável UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETROTÉCNICA CURSO DE ENGENHARIA INDUSTRIAL ELÉTRICA MESTRADO EM SISTEMAS DE ENERGIA Lógica Reconfigurável - amauriassef@utfpr.edu.br

Leia mais

Implementação de um Sistema Digital em VHDL Cronômetro para Jogos de Basquete

Implementação de um Sistema Digital em VHDL Cronômetro para Jogos de Basquete - 1 - V 1.0 - De: 02/maio/2012 por Ney Calazans Laboratório de Organização de Computadores-EC V 3.2 - De: 21/abril/2013 por Fernando Gehm Moraes e Ney Calazans Implementação de um Sistema Digital em VHDL

Leia mais

Conceitos de Linguagens de Descrição de Hardware (Verilog, VHDL) Alex Vidigal Bastos alexvbh@gmail.com

Conceitos de Linguagens de Descrição de Hardware (Verilog, VHDL) Alex Vidigal Bastos alexvbh@gmail.com Conceitos de Linguagens de Descrição de Hardware (Verilog, VHDL) 1 Alex Vidigal Bastos alexvbh@gmail.com Objetivos da Aula Apresentar o conceito gerais de Linguagens de Descrição de Hardware (Verilog /

Leia mais

Suporte de funcionamento e interacção com o teclado

Suporte de funcionamento e interacção com o teclado Suporte de funcionamento e interacção com o teclado Autor: André Amaral Costa (nº 7578) Curso: Universidade de Aveiro Data: 6 de Dezembro de 006 Disciplina: Docente: Valery Sklyarov Introdução Neste trabalho

Leia mais

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Aula 3-P Descrição de somadores em VHDL, síntese com o Quartus

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores VHDL - VHSIC Hardware Description Language Arquitetura de Computadores Leonardo Augusto Casillo Referências bibliográficas PELLERIN, David. TAYLOR, Douglas. VHDL Made Easy. Prentice-Hall PTR. 1997. SKANHILL,

Leia mais

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2) Arquitectura de um computador Caracterizada por: Conjunto de instruções do processador (ISA Estrutura interna do processador (que registadores existem, etc Modelo de memória (dimensão endereçável, alcance

Leia mais

O QUE É UM SISTEMA? Executa uma função com base em estímulos internos e/ou externos

O QUE É UM SISTEMA? Executa uma função com base em estímulos internos e/ou externos 1 O QUE É UM SISTEMA? hardwared Interligação de módulos que podem ser elementares ou não Executa uma função com base em estímulos internos e/ou externos Descrito de forma Hierarquizada, em camadas, a partir

Leia mais

SISTEMAS DIGITAIS. Linguagem de Descrição de Hardware VHDL. Prof. Fernanda Gusmão de Lima Kastensmidt

SISTEMAS DIGITAIS. Linguagem de Descrição de Hardware VHDL. Prof. Fernanda Gusmão de Lima Kastensmidt SISTEMAS DIGITAIS Linguagem de Descrição de Hardware VHDL Prof. Fernanda Gusmão de Lima Kastensmidt fglima@inf.ufrgs.br 7 e 8 Comandos Sequencias Comandos Sequenciais Execução de acordo com a ordem com

Leia mais

VHDL ENTIDADES DE PROJETO

VHDL ENTIDADES DE PROJETO ENTIDADES DE PROJETO Uma entidade de projeto é o módulo básico de um projeto em. Pode representar desde uma porta lógica até um circuito complexo. É composta de duas partes: Declaração da entidade Arquitetura

Leia mais

Capítulo 7 Circuitos sequenciais: latches, flipflops, registradores, contadores

Capítulo 7 Circuitos sequenciais: latches, flipflops, registradores, contadores MC62 Mario Côrtes IC / Unicamp IC-UNICAMP MC 62 Circuitos Lógicos e Organização de Computadores IC/Unicamp Prof Mario Côrtes Capítulo 7 Circuitos sequenciais: latches, flipflops, registradores, contadores

Leia mais

Sistemas Digitais. PALs Sequenciais Parâmetros Temporais em PALs Sequenciais ABEL Registos Contadores Registos de Deslocamento ( Shift Registers )

Sistemas Digitais. PALs Sequenciais Parâmetros Temporais em PALs Sequenciais ABEL Registos Contadores Registos de Deslocamento ( Shift Registers ) PALs Sequenciais Parâmetros Temporais em PALs Sequenciais ABEL Registos Contadores Registos de Deslocamento ( Shift Registers ) 10ª aula 1-37 PALs Sequenciais 16R8 10ª aula 2-37 Uma Saída de 16R8 8 termos

Leia mais

Exercícios de Laboratório 3

Exercícios de Laboratório 3 Tradução do Laboratory Exercise 3 disponível em Exercícios de Laboratório 3 Latches, Flip-Flops e Registradores Este exercício

Leia mais

Dispositivos Lógicos Programáveis

Dispositivos Lógicos Programáveis PARTE 1 - TEORIA Dispositivos Lógicos Programáveis Os dispositivos lógicos programáveis (PLD Programmable Logic Device) são circuitos integrados programáveis, que possuem um grande número de portas lógicas,

Leia mais

SISTEMAS DIGITAIS. Linguagem de Descrição de Hardware VHDL. Prof. Fernanda Gusmão de Lima Kastensmidt

SISTEMAS DIGITAIS. Linguagem de Descrição de Hardware VHDL. Prof. Fernanda Gusmão de Lima Kastensmidt SISTEMAS DIGITAIS Linguagem de Descrição de Hardware VHDL Prof. Fernanda Gusmão de Lima Kastensmidt fglima@inf.ufrgs.br Linguagem de Descrição de Hardware Hardware Description Language (HDL) = "Programming"-language

Leia mais

Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC

Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC Livro texto: VHDL- Descrição e Síntese de Circuitos Digitais Roberto D Amore Editora LTC Linguagem para descrever o funcionamento de um sistema (o que e como o sistema faz). O sistema descrito em HDL

Leia mais

Prototipação de Sistemas Digitais. Metodologia de Projetos Cristiano Araújo

Prototipação de Sistemas Digitais. Metodologia de Projetos Cristiano Araújo Prototipação de Sistemas Digitais Metodologia de Projetos Cristiano Araújo Fluxo de projeto Emulação/Implementação do componente de harwdare VHDL/Verilog Simulação FPGAs, CPLDs Síntese p/emulação ASICs

Leia mais

PCS3225. Sistemas Digitais II. Biestáveis em VHDL. Biestáveis em VHDL. Marcos A. Simplicio Jr.

PCS3225. Sistemas Digitais II. Biestáveis em VHDL. Biestáveis em VHDL. Marcos A. Simplicio Jr. PCS3225 Sistemas Digitais II Biestáveis em VHDL Marcos A. Simplicio Jr. Slides baseados em material de Edson Midorikawa e Bruno Albertini PCS3225-2015 1 Tópicos VHDL: recapitulação Circuitos sequenciais

Leia mais

Introdução VHDL Parte 4 - Testbench

Introdução VHDL Parte 4 - Testbench Introdução VHDL Parte 4 - Testbench Prof. Mário Luiz Rodrigues mario.luiz@ifmg.edu.br Prof. Otávio Gomes otavio.gomes@ifmg.edu.br 1 library IEEE; use IEEE.std_logic_1164.all; entity portae is port( a:

Leia mais

Funções de Lógica Combinacional

Funções de Lógica Combinacional Fundamentos de Sistemas Digitais Funções de Lógica Combinacional prof. Dr. Alexandre M. Amory prof. Dr. Edson I. Moreno Referências Sugiro estudarem nesta ordem de preferência: Floyd, Cap 6. ppt segue

Leia mais

MINICURSO: TÓPICOS EM VHDL. Prof. Leonardo Augusto Casillo

MINICURSO: TÓPICOS EM VHDL. Prof. Leonardo Augusto Casillo MINICURSO: TÓPICOS EM VHDL Prof. Leonardo Augusto Casillo O que significa VHDL? Very High Speed Integrated Circuit Hardware Description Language Linguagem de Descrição de Hardware com ênfase em Circuitos

Leia mais

2006, António Esteves, Sistemas Digitais 1, UM-DI. Módulo 6. Sistemas sequenciais

2006, António Esteves, Sistemas Digitais 1, UM-DI. Módulo 6. Sistemas sequenciais Módulo 6 Sistemas sequenciais 2 PA. Controlador de portão automático: enunciado O portão é deslocado por um motor, controlado pelos sinais Ma e Mf. Estes sinais nunca poderão estar activos simultaneamente

Leia mais

Circuitos Sequenciais. Sistemas digitais

Circuitos Sequenciais. Sistemas digitais Circuitos Sequenciais Sistemas digitais Agenda } Introdução } Latchs (trava) } Latch NAND e Latch NOR } Flip-Flop Set-Reset (FF S-R) } FF S-R Latch NAND, FF S-R Latch NOR, FF S-R Latch NAND com Clock }

Leia mais

Fundamentos de sistemas digitais. Test-bench. prof. Dr. Edson Ifarraguirre Moreno

Fundamentos de sistemas digitais. Test-bench. prof. Dr. Edson Ifarraguirre Moreno Fundamentos de sistemas digitais Test-bench prof. Dr. Edson Ifarraguirre Moreno 2 / 8 Validação por Simulação Utilizar um circuito de teste: test-bench Contém um circuito gerador de teste e uma instância

Leia mais

Projeto de Circuito Combinacional

Projeto de Circuito Combinacional ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I Projeto de Circuito Combinacional Unidade Lógica e Aritmética (ULA) prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno 2 / 12 ULA Unidade

Leia mais

Centro Universitário da FEI Engenharia Elétrica PROJETO DE SISTEMAS. DIGITAIS UTILIZANDO FPGAs

Centro Universitário da FEI Engenharia Elétrica PROJETO DE SISTEMAS. DIGITAIS UTILIZANDO FPGAs Centro Universitário da FEI Engenharia Elétrica PROJETO DE SISTEMAS DIGITAIS UTILIZANDO FPGAs Prof. Edson Lemos Horta Fevereiro 2008 1 Introdução aos Circuitos Integrados para Aplicações Específicas (Application

Leia mais

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21 7ª Experiência Síntese de Circuitos Sequenciais Síncronos 1. Objetivos

Leia mais

Sistemas Digitais (SD) Lógica Programável

Sistemas Digitais (SD) Lógica Programável Sistemas Digitais (SD) Lógica Programável Aula Anterior Na aula anterior: Circuitos de controlo, transferência e processamento de dados Exemplo de uma arquitectura simples de um processador Prof. Nuno

Leia mais

FPGA & VHDL. Tutorial

FPGA & VHDL. Tutorial FPGA & VHDL Tutorial 2009-2 FPGA FieldProgrammableGateArray Dispositivo lógico contendo uma matriz de: Células lógicas genéricas Configuráveis ( programadas ) para desempenhar uma função simples Chaves

Leia mais

Algumas questões de prova recentes com seus gabaritos

Algumas questões de prova recentes com seus gabaritos Algumas questões de prova recentes com seus gabaritos Q1 Uma das formas mais simples e mais usadas de detecção de erros na transmissão de dados digitais são os códigos de paridade. Estes consistem em acrescentar

Leia mais

MEMÓRIA M.1 - HIERARQUIA DE MEMÓRIAS NUM COMPUTADOR DIGITAL

MEMÓRIA M.1 - HIERARQUIA DE MEMÓRIAS NUM COMPUTADOR DIGITAL MEMÓRIA M.1 - HIERARQUIA DE MEMÓRIAS NUM COMPUTADOR DIGITAL Quando se caminha no sentido da memória secundária encontramos memórias com maior capacidade, maior tempo de acesso e mais baixo custo/bit. Fig

Leia mais

Exercícios de Fixação

Exercícios de Fixação Exercícios de Fixação Para entregar em 07/02/2013 Exercício I Implemente o circuito de seis portas lógicas abaixo em VHDL; Crie um projeto com o simulador Modelsim que contenha o par entidade-arquitetura

Leia mais

Disciplina: Laboratório de Circuitos Digitais

Disciplina: Laboratório de Circuitos Digitais Universidade Federal de São Carlos Disciplina: Laboratório de Circuitos Digitais Prof. Dr. Emerson Carlos Pedrino 7ª Prática: Introdução à Verilog-HDL e á Lógica Sequencial Data: 22/05/2014 Nome: Adrián

Leia mais

CIRCUITOS SEQUENCIAIS parte 2 Máquina de Estados Finita (FSM)

CIRCUITOS SEQUENCIAIS parte 2 Máquina de Estados Finita (FSM) Fundamentos de Sistemas Digitais 3/outubro/28 CIRCUITOS SEQUENCIAIS parte 2 Máquina de Estados Finita (FSM) profs. Alexandre M. Amory e Fernando G. Moraes Máquina de estados finita (FSM) Uma máquina de

Leia mais

AMOSTRAGEM DE SINAIS ANALÓGICOS POR

AMOSTRAGEM DE SINAIS ANALÓGICOS POR Relatório de Sistemas de Aquisição de Dados 2006/2007 Engenharia Física Tecnológica AMOSTRAGEM DE SINAIS ANALÓGICOS POR UM CIRCUITO ADC COM INTERFACE DE COMUNICAÇÃO SÉRIE Laboratório II Trabalho realizado

Leia mais

Exercícios Referentes à Prova P1

Exercícios Referentes à Prova P1 ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I Referentes à Prova P1 prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno 2 / 11 1. Assinale com V se a sentença estiver correta, caso contrário

Leia mais