Buscar

Estudos Dirigidos em VHDL

Prévia do material em texto

Avaliação Participativa: Estudos Dirigidos
Laboratório de Sistemas Digitais - Turma PN2
Amanda Caroline Cardoso Meira
Lucas Monteiro Henriques
Raul Vitor de Resende
Belo Horizonte
2024
ESTUDO DIRIGIDO
1. Quais são os tipos de operandos aceitos como entrada para os comparadores de
magnitude e igualdade existentes no package “numeric_std”?
Os seguintes operadores relacionais são definidos para dois operandos do tipo unsigned: =, /=, >=,
<=, > ane <. Todos retornam o tipo booleano e podem, portanto, ser usados, por exemplo, na
condição de um declaração if.
2. Qual função de conversão existentes no package “numeric_std” podemos usar para
projetar um comparador de números expressos em complemento de dois cuja Entity tem
entradas do tipo “std_logic_vector”?
No pacote numeric_std, usado em VHDL para operações numéricas, pode-se usar a função
to_integer para converter um std_logic_vector representando um número em complemento de dois
para um valor inteiro. Esta função converte uma std_logic_vector em um valor inteiro baseado na
representação dos bits. Além disso, as entradas do tipo std_logic_vector poderiam ser convertidas
para signed ou unsigned utilizando um typecast simples: signed() ou unsigned() respectivamente,
que já suportariam operações de comparação citados na questão anterior.
3. Em VHDL, qual estrutura concorrente posso usar para fazer uma atribuição condicional a
um sinal ?
Na linguagem VHDL, para realizar uma atribuição condicional a um sinal, você pode se usar a
estrutura concorrente WHEN-ELSE. Esta estrutura permite que você atribua um valor a um sinal com
base em uma condição específica.
No pacote numeric_std, usado em VHDL para operações numéricas, pode-se usar a função
to_integer para converter um std_logic_vector representando um número em complemento
de dois para um valor inteiro. Esta função converte uma std_logic_vector em um valor
inteiro baseado na representação dos bits

Continue navegando