赞
踩
大家都知道,二进制补码数据如果直接丢掉低bit位进行trunction截断,那么截断后的数据会带有直流成分,这个直流成分在某些应用场合是不可接受的,为此,很多工程师需要把较长的二进制补码数据进行四舍五入截断,这样就可以避免人为产生的不必要的直流成分。这个操作其实很简单,我举一个例子,大家一看就明白了:
reg [32:0] dout= 0;
wire [46: 0] m_axis_data_tdata;
dout<= (m_axis_data_tdata[46:0] +
{ ~m_axis_data_tdata[46], { 13{ m_axis_data_tdata[46] } } } ) >>>14;
这里是把47位数据低14位按照四舍五入截掉,无论正数负数,都适用。Get到了吧,记得给我点赞!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。