我是靠谱客的博主 发嗲魔镜,最近开发中收集的这篇文章主要介绍8,verilog基本逻辑运算,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

注:学习、交流就在博主的个人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编程艺术

最后

以上就是发嗲魔镜为你收集整理的8,verilog基本逻辑运算的全部内容,希望文章能够帮你解决8,verilog基本逻辑运算所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部