A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais.

Apresentações semelhantes


Apresentação em tema: "VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais."— Transcrição da apresentação:

1 VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais

2 Comandos Concorrentes Básicos O Atraso Delta Δ Comandos concorrentes são executados conjuntamente. Logo, a sequência como são apresentados no código é irrelevante Um atraso delta é empregado para o simulador avaliar as iterações resultantes dos comando concorrentes. Ordem dos comandos no código não deve interferir no resultado final da simulação O simulador necessita de um atraso interno, denominado Δ, para coordenação da avaliação de eventos concorrentes Para todos os comandos ativados, o resultado é transferido 1Δ após A nova condição pode ativar novos comandos, e o processo se repete por sucessivas iterações até atingir uma condição estável

3 Comandos Concorrentes Básicos O Atraso Delta Δ Observe que em uma linguagem sequencial, o comando da linha 9 deveria ser apresentado antes do comando da linha 8! 1 | ENTITYsig_tes0 IS 2 |PORT( sa:INBIT; 3 |sb, sc:BUFFERBIT); 4 | END sig_tes0; 5 | 6 | ARCHITECTURE testeOFsig_tes0IS 7 | BEGIN 8 |sc<=sb; 9 |sb<=sa; 10 | ENDteste;

4 Comandos Concorrentes Básicos O Atraso Delta Δ Simulador Comportamento real

5 Comandos Concorrentes Básicos O Atraso Delta Δ – condição instável Os simuladores normalmente limitam o número máximo de iterações e abortam a simulação!

6 Comandos Concorrentes Básicos Atribuição de valor a um sinal Pode ocorrer tanto em regiões de código concorrente quanto sequencial Quando a atribuição ocorre em região concorrente, a ordem dos comandos é irrelevante A atribuição emprega o delimitador <= A informação pode ser originada de um outro sinal ou expressão VHDL é rigorosa com relação a operações envolvendo tipos diferentes, não permitindo transferência de valor entre objetos nesse caso

7 Comandos Concorrentes Básicos Atribuição de valor a um sinal Exemplo: MUX (Circuito de Seleção)

8 Comandos Concorrentes Básicos Atribuição de valor a um sinal

9 Comandos Concorrentes Básicos Atribuição de valor a um sinal

10 Comandos Concorrentes Básicos Construção WHEN ELSE

11 Comandos Concorrentes Básicos Construção WHEN ELSE s1_s0 <= s1 & s0;

12 Comandos Concorrentes Básicos Construção WITH SELECT

13 Comandos Concorrentes Básicos Construção WITH SELECT

14 Comandos Concorrentes Básicos WHEN ELSE versus WITH SELECT Na construção WHEN ELSE a ordem de apresentação das condições indica a precedência na execução Primeira condição tem prioridade máxima e a última mínima Na construção WITH SELECT todas as condições possuem igual prioridade Tais diferenças podem ser aproveitadas pelo projetista para obter circuitos mais eficientes e descrições mais sucintas O exercício a seguir ilustra o caso onde a construção WHEN ELSE leva vantagem sobre a construção WITH SELECT

15 Exercícios

16 1 | ENTITYpr_cod IS 2 |PORT( p:INBIT_VECTOR(3 DOWNTO 1); 3 | c:OUTBIT_VECTOR(1 DOWNTO 0)); 4 | END pr_cod; 5 | 6 | ARCHITECTURE teste1OFpr_codIS 7 | BEGIN-- p3 p2 p1 c1 c0 8|c <= 11 WHENp(3) = 1ELSE -- 1 - - 1 1 9| 10 WHENp(2) = 1ELSE -- 0 1 - 1 0 10| 01 WHENp(1) = 1ELSE -- 0 0 1 0 1 11| 00; -- 0 0 0 0 0 12 | ENDteste1; 1 | ENTITYpr_codIS 2 |PORT( p:INBIT_VECTOR(3 DOWNTO 1); 3 | c:OUTBIT_VECTOR(1 DOWNTO 0)); 4 | END pr_cod; 5 | 6 | ARCHITECTURE teste2OFpr_codIS 7| BEGIN 8| WITH p SELECT -- p3 p2 p1 c1 c0 9 |c <= 11 WHEN111|110|101|100, -- 1 - - 1 1 10 | 10 WHEN011|010, -- 0 1 - 1 0 11 | 01 WHEN001, -- 0 0 1 0 1 12 | 00 WHEN 000; - 0 0 0 0 0 13 | ENDteste2;

17 Comandos Concorrentes Básicos Criação de latch com as construções WHEN ELSE e WITH SELECT 1 | ENTITYlatchIS 2 |PORT( enb, d1, d2, d3 :INBIT; 3 | q1, q2, q3, : BUFFERBIT); 4 | END latch; 5 | 6 | ARCHITECTURE funcionamento OFlatchIS 7 | BEGIN 8|q1 <= d1 WHENenb = 1ELSE 9| q1; 10| q2 <= d2 WHENenb = 1; 11 | WITH enb SELECT 12 | q3 <= d3 WHEN 1; 13 | q3 WHEN 0; 14 | ENDfuncionamento;


Carregar ppt "VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais."

Apresentações semelhantes


Anúncios Google