Issue with inout ports

Guest #3812746
Rate this post
• ▲ useful
▼ not useful
Hi everyone,

I have some troubles with the codes in attachment. When I compile, these 
following errors are occuring:

ncelab: *E,CSGMSS: multiple sources for unresolved signal: INOUT_1B1_TB 
[4.3.1.2].
           Computing driving value: :CBTLV3253_tb(archi):inout_1B1_tb
In port map at: ../TBENCH/CBTLV3253_tb.vhdl, line: 52, position: 51
ncelab: *E,CSGMSS: multiple sources for unresolved signal: INOUT_1B2_TB 
[4.3.1.2].
           Computing driving value: :CBTLV3253_tb(archi):inout_1B2_tb
In port map at: ../TBENCH/CBTLV3253_tb.vhdl, line: 53, position: 30
ncelab: *E,CSGMSS: multiple sources for unresolved signal: INOUT_1B3_TB 
[4.3.1.2].
           Computing driving value: :CBTLV3253_tb(archi):inout_1B3_tb
In port map at: ../TBENCH/CBTLV3253_tb.vhdl, line: 54, position: 30
ncelab: *E,CSGMSS: multiple sources for unresolved signal: INOUT_1B4_TB 
[4.3.1.2].
           Computing driving value: :CBTLV3253_tb(archi):inout_1B4_tb


I tried to modify the ports "inout_1B1, inout_1B2, inout_1B3, inout_1B4" 
in inputs and "inout_1A" in output and that gave me good results.

So do you know why I have these errors ?

Thank you!
Attached files:
Moderator (Company: Titel) #3812762
Rate this post
• ▲ useful
▼ not useful
bob wrote:
> multiple sources
> So do you know why I have these errors ?
A real value cannot be driven from two sources because there is no 
resolution table (like std_logic has one). So you get a conflict here:
1
        inout_1B1 => inout_1B1_tb
2
:
3
        in_1OEn_tb    <= '1';
4
  inout_1B1_tb  <= 1.0;
5
:
6
        if (in_1OEn = '1') then
7
     inout_1B1 <= 0.0;

But even when you "correct" that minor problem with the enable polarity: 
in eafch process the value of a signal remains "stored" until it is 
changed. So even after no more assigning a value to inout_1B1_tb it 
keeps the 1.0. And that will conflict further on with the value assigned 
to inout_1B1.

To keep it short: with real (and eg. integer) you cannot use 
bidrectional ports, because they don't have a resolution table to 
resolve access contentions.


BTW: next time to get syntax highlighting pls. attach *.vhd files, not 
*.txt files!

Reply

Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.

Formatting
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]
  • [[Title]] – link to an article
  • Link to another post: right-click its post ID (#8078628), copy the address, paste it into the text

More about formatting

Post long source code as an attachment, not in the text.

Already registered? Log in

Not shown to anyone. We send you a link; your post appears once you confirm it there.

By submitting you create a free account and accept the terms of use.