Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
9 years ago

Assigning value to 7 bits output buffer?

Hi,

I'm doing a Moore FSM, and the outputs are 7 bits buffers (declared as such:

sum: out STD_LOGIC_VECTOR(6 down to 0);

)

When writing the output logic, I wrote:

when S2 => sum <= '0001010';

but that gives me an error for each of these instances. What would be the correct syntax for what I'm trying to do?

Thanks!

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    sum <= "0001010" WHEN S2 = '1';

    Any number that uses more than 1 bit requires double quotes. If that is supposed to be a hex number (not clear but guessing it's binary), you would add an x (x"0001010").
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    you would add an x (x"0001010")

    --- Quote End ---

    Since 'sum' is a 7-bit value and x"0001010" represents a 28-bit value (which wouldn't work), stick with sstrel's first solution.

    Cheers,

    Alex
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    ' is used for single characters

    " is used for strings

    You need to use "