Skip to content

Somador

Abrir arquivo fonte ⧉

Realiza operação aritmética de soma entre dois inteiros codificados em vetores booleanos.

Diagrama

Diagram

Genericos

NomeTipoValorDescrição
DATA_WIDTHnatural8Largura dos vetores de dados
DEFAULT_SOURCE_2integer1Dispensa necessidade de atribuir entrada source_2

Portas

NomeDireçãoTipoDescrição
source_1inputstd_logic_vector<DATA_WIDTH>Vetor de dados primário
source_2inputstd_logic_vector<DATA_WIDTH>Vetor de dados secundário
destinationoutputstd_logic_vector<DATA_WIDTH>Resultado da soma dos vetores de dados

Instâncias

NomeEntidade
CARRY_LOOKAHEADWORK.GENERIC_CARRY_LOOKAHEAD

Usagem

Incremento constante

vhdl
CONSTANT_ADDER : entity WORK.GENERIC_ADDER
    generic map (
        DATA_WIDTH_      => 32,
        DEFAULT_SOURCE_2 => 1
    )
    port map (
        source_1    => signal_source_1,
        destination => signal_destination
    );

Somador

vhdl
ADDER : entity WORK.GENERIC_ADDER
    generic map (
        DATA_WIDTH => 32
    )
    port map (
        source_1    => signal_source_1,
        source_2    => signal_source_2,
        destination => signal_destination
    );

Diagrama RTL

Diagrama de RTL do somador

Casos de teste

Abrir arquivo fonte ⧉

tb_GENERIC_ADDER_case_1

Forma de onda do caso de teste 1 do somador

Publicado sob a Licença MIT.