FPGA之道(27)VHDL的操作符号 您所在的位置:网站首页 逻辑运算1与0 FPGA之道(27)VHDL的操作符号

FPGA之道(27)VHDL的操作符号

2023-09-10 07:59| 来源: 网络整理| 查看: 265

文章目录 VHDL的操作符号VHDL赋值运算符位置赋值 VHDL按位运算符NOTANDORXORXNOR VHDL算术运算符+-*/MOD与REM** VHDL关系运算符VHDL逻辑运算符VHDL连接运算符VHDL移位运算符

VHDL的操作符号 VHDL赋值运算符

VHDL语言中共有3种赋值符号——“”。

'1', others => '0'); -- a = ”0101” b ‘1’); -- b = “1111”;

注意这里面有一个新的语法others,这在对逻辑向量赋值时非常好用,能够帮我们方便的完成一些高位宽向量的赋值。并且,类似像b这样的信号赋值,即是以后代码修改、扩展或减少了b的bit位数,赋值语句也可以不需要做任何修改,非常便于程序的维护和变更。

位置赋值

VHDL语言中仅有的三种赋值符号都已经介绍完了,可是赋值操作的形式并没有就此终结。除了以上三种赋值形式外,VHDL语言还有一种基于位置赋值的方式,这种赋值方式其实也属于映射赋值的范畴,但它不需要任何操作符,编译器仅仅根据参数的位置就可以进行映射赋值。 在VHDL语言中,元件例化、过程及函数调用都可以这样赋值,这一点跟C语言的函数调用非常类似。不过对于凡是支持“=>”符号来进行映射赋值地方,建议大家还是不要使用位置赋值,因为映射赋值是位置无关的,这样会在很大程度上减少程序出错的可能性,并且方便日后的修改与维护。

VHDL按位运算符

按位运算符是一类最基本的运算符,可以认为它们直接对应数字逻辑中的与、或、非门等逻辑门,在VHDL中它们的描述如下:

NOT

NOT是取反运算符。它是一个单目运算符,即作用于一个操作数,对它进行按位取反。相当于数字逻辑电路中的“非门”,例如:

signal a : std_logic := '1'; signal b : std_logic_vector (3 downto 0) := "1000"; a


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有