15'd63啥意思verilog中

15'd63啥意思verilog中,第1张

15'd63符号计数verilog中。

Verilog中的有符号计数,一般是自己定义的而不是像C语言之类的定义一个有符号变量就好了。所以,要想在FPGA的世界里随心所欲的进行有符号运算,必须先对补码有一个很好的认知,然后再注意Verilog中编程的几个特性,两者缺一不可。

对补码初步的认识:

1、正数的补码与源码相同,即正数的补码是其本身。

2、负数的补码,是对其源码除符号位取反再加一,于是得到其补码。

3、对负数的补码(除符号位)取反再加一,于是得到其源码。

4、正数的补码被定义为其本身,所以不需以上 *** 作,其实你也可以理解为正数没有补码。

5、计算机储存数时是以补码的形式储存的。


1、两者概念不同

&&是逻辑与:即判断&&两侧的表达式是否都为真,都为真则此&&表达式值为真;

& 是按位与:即将&两侧的数用二进制展开,每一位都求与运算(二进制与运算,跟逻辑与差不多),最后得到的二进制数即为结果;

2、两者结果不同

逻辑与结果只讲真和假,而按位与得出的却是实实在在的一个数。

以一个Verilog测试程序为例,说明两者之间的区别:

module test (CLK, AA, BB, CC, AOUT, BOUT, COUT, DOUT);

input CLK;

input[3:0] AA,BB,CC;

output AOUT,BOUT,COUT,DOUT;

reg AOUT;

reg BOUT;

reg COUT;

reg DOUT;

always @(posedge CLK)//检测时钟上升沿

begin : u1

 if (AA && CC && BB)

 begin

    AOUT<=1'b1 ;

 end

 else

 begin

    AOUT<=1'b0 ;

 end

end

always @(posedge CLK)//检测时钟上升沿

begin : u2

  if (AA & CC & BB)

 begin

    BOUT<=1'b1 ;

 end

 else

 begin

    BOUT<=1'b0 ;

 end

end 

always @(posedge CLK)//检测时钟上升沿

begin : u3

 if ((AA>5) && (CC<8) && (BB>4))

 begin

    COUT<=1'b1 ;

 end

 else

 begin

    COUT<=1'b0 ;

 end

end

always @(posedge CLK)//检测时钟上升沿

begin : u4

 if ((AA>5) & (CC<8) & (BB>4))

 begin

    DOUT<=1'b1 ;

 end

 else

 begin

    DOUT<=1'b0 ;

 end     

end

endmodule  

上面三个always @()中分别用到如下三种if判断表达式

(AA && CC && BB)

(AA & CC & BB)

((AA>5) && (CC<8) && (BB>4))

((AA>5) & (CC<8) & (BB>4))

扩展资料:

对这四条表达式进行逻辑分析  :

1、(AA && CC && BB)

逻辑分析:

当AA、BB、CC都为非0数时,表达式为“1”。

怎么判断AA、BB、CC为非“0”,先分析一下为“0”的情况。

当AA为0的时候,AA等于4'b0,即每位都为0,即只需AA的4位矢量之间做一下“逻辑或”运算,AA[3] || AA[2] || AA[1] || AA[0],也可写成(|AA);

当4位矢量中只需有一位不为0,那么AA就必然不为“0”。

整个实现过程就是,先AA、BB、CC各自本身的各位之间做“逻辑或”运算,运算的结果之间做“逻辑与”运算。

2、(AA & CC & BB)

逻辑分析:

表达式(AA & CC & BB)等效为:

((AA[3] & BB[3] & CC[3])  || (AA[2] & BB[2] & CC[2])  ||

(AA[1] & BB[1] & CC[1]) ||  (AA[0] & BB[0] & CC[0]))

即只需要其中有一个表达式(AA[i] & BB[i] & CC[i]) 不为“0”,则整个结果就为“1” ,i取0到3。

3、((AA>5) && (CC<8) && (BB>4))

逻辑分析:

表达式(AA>5)、(CC<8)、(BB>4)结果均为1位的逻辑量,三个逻辑量之间做“逻辑与”。

4、((AA>5) & (CC<8) & (BB>4))

逻辑分析:

三个一位的逻辑量之间做“逻辑与”和“位与”是等效的。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13384415.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-25
下一篇 2023-07-25

发表评论

登录后才能评论

评论列表(0条)

保存