Jump to content

    
Sign in to follow this  
ysmat

сборка шины verilog

Recommended Posts

встретил в чужом коде очень странную запись склейки 
шины

wire    signed  [ 31 :  0 ] B0;
wire    signed  [ 31 :  0 ] B1;
wire    signed  [ 31 :  0 ] B2;
wire    signed  [ 31 :  0 ] B3;
BF4_comb u1 (
    .re_0(r_data[1]), 
    .re_1(r_data[3]), 
    .re_2(r_data[5]), 
    .re_3(r_data[7]), 
	 
    .reout_0(B0[31-:16]), 
    .reout_1(B1[31-:16]), 
    .reout_2(B2[31-:16]), 
    .reout_3(B3[31-:16]),
	 
    .imout_0(B0[15-:16]), 
    .imout_1(B1[15-:16]), 
    .imout_2(B2[15-:16]), 
    .imout_3(B3[15-:16])
    );

суть из блока BF4_comb u1 выходят  шины по 16 бит которые склеены
в одну 32 битную 

что означает B0[31-:16]  B0[15-:16] и как это понять
понятная для меня форма B0[31:16] и B0[15:0]

Share this post


Link to post
Share on other sites
7 hours ago, ysmat said:

что означает B0[31-:16]  B0[15-:16] и как это понять

Если не изменяет память, B0[31-:16] -- это взять 16 линий подряд из шины B0, начиная с линии 31 и двигаясь в сторону уменьшения номеров -- т.е. взять линии 31:16. Соответственно, для B0[15-:16] -- взять 16 линий, начиная с линии 15, и тоже в сторону уменьшения -- т.е. линии 15:0. Для чего так писали, непонятно.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this