Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   VHDL (http://www.velocityreviews.com/forums/f18-vhdl.html)
-   -   multiple individual bidirectional signal concatenated into 1bidirectional bus (http://www.velocityreviews.com/forums/t946900-multiple-individual-bidirectional-signal-concatenated-into-1bidirectional-bus.html)

Amish Rughoonundon 06-08-2012 05:28 PM

multiple individual bidirectional signal concatenated into 1bidirectional bus
 
Hi,
I was wondering how to concatenate multiple individual bidirectional
signals into 1 bidirectional bus
Code:

signal a : std_logic;
signal b : std_logic;
signal c : std_logic;
signal d : std_logic_vector;

test1 : test1
port map(
a => a,
b => b,
c => c
);

d <= a & b & c;
a <= d(2);
b <= d(1);
a <= d(0);

test2 : test2
port map(
d => d
);

Would something like this work?
Wouldn't the simulator throw X's on the signal a,b,c because driven
from two places.
Thanks for the help,
Amish


Paul Uiterlinden 06-11-2012 09:02 AM

Re: multiple individual bidirectional signal concatenated into 1 bidirectional bus
 
Amish Rughoonundon wrote:

> Hi,
> I was wondering how to concatenate multiple individual bidirectional
> signals into 1 bidirectional bus
>
Code:

> signal a : std_logic;
> signal b : std_logic;
> signal c : std_logic;
> signal d : std_logic_vector;
>
> test1 : test1
> port map(
> a => a,
> b => b,
> c => c
> );
>
> d <= a & b & c;
> a <= d(2);
> b <= d(1);
> a <= d(0);
>
> test2 : test2
> port map(
> d => d
> );
>

>
> Would something like this work?


No.

> Wouldn't the simulator throw X's on the signal a,b,c because driven
> from two places.


Yes. So only combine signals that go in the same direction.

> Thanks for the help,


--
Paul Uiterlinden
www.aimvalley.nl
e-mail addres: remove the not.


All times are GMT. The time now is 08:13 AM.

Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57