8,verilog基本逻辑运算

您所在的位置:网站首页 verilog非运算符 8,verilog基本逻辑运算

8,verilog基本逻辑运算

2023-08-16 14:48| 来源: 网络整理| 查看: 265

注:学习、交流就在博主的个人weixin公众号 “FPGA动力联盟” 留言或直接+博主weixin “fpga_start” 私信~

对于标量的逻辑运算有以下几种:

1,逻辑取反(!)

对一个操作数进行逻辑取反,如果这个操作数是0,则结果为1。如果这个操作数为1,则结果为0;

2,逻辑与(&&)

对两个操作数进行逻辑与,如果两者都不为0,则结果为1。否则结果为0;

3,逻辑非(||)

对两个操作数进行逻辑或,如果两者其中至少有一个不为0,则结果为1,否则为0;

对于向量,存在两组信号按照比特操作(或称为“按位操作”)和单组信号各个比特一起操作(或称为“缩减操作”)两个类型。

按位操作包含如下几种:

1,按位取反(~):

1个多位操作数按位取反。例如,a=4’b1011,则~a的结果为4’b0100。

2,按位与(&):

2个多位操作数按位进行与运算,各位的结果按顺序组成一个新的多位数。例如,a=2’b10,b=2’b11,则a&b的结果为2’b10;

3,按位或(|):

2个多位操作数按位进行或运算,各位的结果按顺序组成一个新的多位数。例如,a=2’b10,b=2’b11,则a|b的结果为2’b11;

4,按位异或(^):

2个多位操作数按位进行异或运算,各位的结果按顺序组成一个新的多位数。例如,a=2’b10,b=2’b11,则a|b的结果为2’b01;(相同为0,不同为1);

5,按位同或(~^或^~):

2个多位操作数按位进行同或运算,各位的结果按顺序组成一个新的多位数。例如,a=2’b10,b=2’b11,则a|b的结果为2’b10;(相同为1,不同为0)

缩减操作都是对于一个向量,或者说一个多比特信号进行操作的,包括以下几种:

1,缩减与(&):

对一个多位操作数进行缩减与操作,先将它的最高位与次高位进行与操作,其结果再与第二次高位进行与操作,直到最低位。例如,&(4’b1011)的结果为0;

2,缩减与非(~&):

对一个多位操作数进行缩减与非操作,先将它的最高位与次高位进行与非操作,其结果再与第二次高位进行与非操作,直到最低位。例如,~&(4’b1011)的结果为1;

3,缩减或(|):

对一个多位操作数进行缩减或操作,先将它的最高位与次高位进行或操作,其结果再与第二次高位进行或操作,直到最低位。例如,|(4’b1011)的结果为1;

4,缩减或非(~|):

对一个多位操作数进行缩减或非操作,先将它的最高位与次高位进行或非操作,其结果再与第二次高位进行或非操作,直到最低位。例如,~|(4’b1011)的结果为0;

5,缩减异或(^):

对一个多位操作数进行缩减异或操作,先将它的最高位与次高位进行异或操作,其结果再与第二次高位进行异或操作,直到最低位。例如,^(4’b1011)的结果为1;

6,缩减同或(~^或^~):

对一个多位操作数进行缩减同或操作,先将它的最高位与次高位进行同或操作,其结果再与第二次高位进行同或操作,直到最低位。例如,~^|(4’b1011)的结果为0;

参考文献:

1,verilog传奇——从电路出发的HDL代码设计

2,verilog编程艺术



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3