Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Different widths of data on same bus

Status
Not open for further replies.

rac70

Newbie level 6
Joined
Jan 7, 2015
Messages
13
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
114
Hi all,
anyone help me in finding the logic for passing different widths of data on same bus
 

You cant, the bus width is fixed. depending on the interface there may be extra byte enable signals to mark specific bytes as not valid. But what interface are you using?
 

You cant, the bus width is fixed. depending on the interface there may be extra byte enable signals to mark specific bytes as not valid. But what interface are you using?

thank you,
here the design uses axi interface, actually the case is like the data is of 128 bit width and mic is of 64 width can i pass both of them on same bus or need to pad zeros for mic to make it 128 bit width.
 

If I understand your question correctly.

send the 128 bit signal

then just snippet the relevant stuff such that

-- initialize
sig_a <= (others => '0')

-- assign
sig_a(63 downto 0) <= stuff_i_care_about;

then when sampling

-- retrieve
stuff_wanted <= sig_a(63 downto 0);

-------------------------------
Edit
-------------------------------
Axi is an interface provided by Xilinx and therefore if the components want 128 bit then keep that.
 

thank you,
here the design uses axi interface, actually the case is like the data is of 128 bit width and mic is of 64 width can i pass both of them on same bus or need to pad zeros for mic to make it 128 bit width.

Axi Streaming I assume?
This is going to depend on what you want to do with it, and will depend on what format the downstream device requires.
You could zero pad and set tkeep/tstrb to mark the valid bytes, and then the downstream device can extract the data appropriatly. But this would be rather innefficient.
Or you could mux the data together (ie. put 2 64 bit words into a single word), and you could run the 128 bit bus at half the clock speed. (good efficiency)

But how you do it depends.

Axi is an interface provided by Xilinx and therefore if the components want 128 bit then keep that.

Axi is defined by ARM and Xilinx have chosen to use the specification in most of their new IP.
 

Or you could mux the data together (ie. put 2 64 bit words into a single word), and you could run the 128 bit bus at half the clock speed. (good efficiency)

Axi is defined by ARM and Xilinx have chosen to use the specification in most of their new IP.

clocking two 64-bit words into one 128-bit word, unless the peer is a custom design it will not work. Also the AXI interface bus width can be configured to 64/32 bits wide as well instead.
 

clocking two 64-bit words into one 128-bit word, unless the peer is a custom design it will not work. Also the AXI interface bus width can be configured to 64/32 bits wide as well instead.

Hi,
thankyou but on the same bus can i send the data byte by byte instead of word by word which is advantageous..
 

thankyou but on the same bus can i send the data byte by byte instead of word by word which is advantageous..

In that case
Use a fifo with 128 bit input & 8 bit output?

This can easily be done using vendor ip.

You have to read 16 times faster than you write otherwise the fifo will overflow.
 
Last edited by a moderator:
  • Like
Reactions: rac70

    rac70

    Points: 2
    Helpful Answer Positive Rating
Hi,
thankyou but on the same bus can i send the data byte by byte instead of word by word which is advantageous..

Yes you can. But the reading entity should also be aware of the lane positions (out of 128bit) that you are writing to. Agreeing mutually this can be done but potentially you are wasting 50% of performance
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top