Prioritising nets

Discussion in 'VHDL' started by Willem Oosthuizen, Sep 3, 2003.

  1. Suppose I have an entity with inputs a,b,c,and d; all std_logic. and an
    output q. The whole entity is combinatorial.

    I want to mask the effect of inputs b,c and d with a.

    Inside my code:

    q <= '0' when a = '0' else q_p.

    -- where q_p if a signal derived from b,c and d.

    I want the mask a to go through the minimum levels of logic. The synthesis
    tool tries to make the level of logic have equal for all inputs a,b,c and d.

    How do I code the VHDL to get this right?. I have tried everything.

    Please help.

    Willem Oosthuizen, Sep 3, 2003
    1. Advertisements

  2. Component instanciation and "don't touch" options are a good and simple
    way of controlling a synthesizer. So you could try to encapsulate your
    b,c,d stuff in a sub-component.

    Renaud Pacalet, Sep 3, 2003
    1. Advertisements

  3. I have tried this and it works. Thank you. It is unfortunately not allways
    easy to do.
    Breaking designs up in small junks makes the code unreadable. I sometimes
    wonder if schematics isn't a better option...
    Willem Oosthuizen, Sep 3, 2003
  4. Well, when you know exactly what netlist you need, schematics and VHDL
    are almost equivalent. Almost only because one is portable and the other
    is sometimes easier to read.

    Renaud Pacalet, Sep 3, 2003
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.