当前位置: 首页 > news >正文

中国城市建设网站合肥做微网站

中国城市建设网站,合肥做微网站,河北省建设厅网站怎么登陆,网站开发网页超链接路径文章目录前言一、关键词二、运算符三、数据类型1、基本类型:reg、wire、integer、parameter四、条件语句五、循环语句1、for2、generate六、function和task七、initial和always1、initial和always相同点和区别2、always和assign语句区别前言 2023.4.4 2023.4.7 补充…

文章目录

  • 前言
  • 一、关键词
  • 二、运算符
  • 三、数据类型
    • 1、基本类型:reg、wire、integer、parameter
  • 四、条件语句
  • 五、循环语句
    • 1、for
    • 2、generate
  • 六、function和task
  • 七、initial和always
    • 1、initial和always相同点和区别
    • 2、always和assign语句区别


前言

2023.4.4
2023.4.7 补充综合和不可综合的关键词


一、关键词

module/endmodule
input/output/inout
parameter
wire/reg
always/assign
begin/end
posedge/negedge
case/default/endcase
if/esle
for

二、运算符

位运算符和缩位运算符区别:缩位运算符结果为1bit,位运算符结果位数和操作数位数相同
在这里插入图片描述

三、数据类型

总共:19种

1、基本类型:reg、wire、integer、parameter

当信号没有定义类型时,缺省类型为wire,缺省值为高阻Z。

wire:常和assign用来描述组合逻辑,verilog中输入输出缺省类型为wire。

reg寄存器数据类型,缺省值是未知的,无符号数,但reg可以是负数也可以是正数。
在表达式的操作数中被当作是无符号数,假如是4bit的-1,则在实际运算时是-1的补码,也就是+15。
在always块内的每一个信号都必须是reg类型。

integer寄存器数据类型,有符号数,最小为32位,与宿主机的字的位数。

parameter:定义常量,用来提高代码的可读性和可维护性

  • reg 型和 wire 型的区别:reg 型保持最后一次的赋值,而 wire 型则需要持续的驱动。
  • reg, integer, real,time 都是寄存器数据类型,定义在 Verilog 中用来保存数值的变量,和实际的硬件电路中的寄存器有区别。
  • reg、integer是可综合的,time(64位)不可综合,real(32位)由仿真器决定。

四、条件语句

1、条件语句必须在过程块中使用,其他地方不可以。

2、0、z、X都是假,只有1条件才为真

3、出现锁存器的情况:

  • if else没有写完整
  • always里面,如果给定条件下变量没有被赋值,这个变量将一直保持原来的值,就会生成锁存器
  • 有else不一定没有锁存器,没有else也不一定有锁存器。

4、case语句如果情况完备,可以不写default

五、循环语句

1、for

for:for循环几次,就会把电路复制几次,循环次数越多,面积越大,综合越慢

2、generate

generate:生成可配置的、可综合的RTL设计结构。在elaboration阶段、仿真之前执行,必须保证generate的所有表达式都是常量

应用场景

  • 多次实例化某个模块
  • 条件generate,if-generate或者case-generate
  • 断言
module n_bit_xor
#(parameter SIZE = 16)
(input [SIZE-1:0] a,input [SIZE-1:0] b,output [SIZE-1:0] y
);genvar i;generatefor(i=0;i<SIZE;i=i+1)begin:label  //这里一定要写模块名称,否则会报错xor u_xor(y[i], a[i], b[i]);//会实例化生成label[0].u_xor、label[1].u_xor、label[2].u_xor//实例化后的层次路径为n_bit_xor.label[0].u_xorendendgenerate
endmodule

六、function和task

functiontask
只能用于组合逻辑组合逻辑和时序逻辑都可以,但只有组合逻辑才能综合
可以有/无返回值,缺失则返回一位寄存器类型数据无返回值
只能出现在过程块内,不能出现initial和always
至少有一个输入多个输入/输出/双向端口
只能调用函数可以调用函数/任务
不包含时间控制语句可包含时延控制语句(不可综合)

七、initial和always

1、initial和always相同点和区别

之前在SV语法的这篇文章里面有:传送门
initial:初始化仿真变量,作为电路的仿真信号来生成激励
always:边沿触发和电平触发,可综合成寄存器或者锁存器

2、always和assign语句区别

  • assign语句赋值的信号类型为wire,always块里面是reg类型,但是不是真的寄存器,只有当always的触发条件为时钟上升沿,才会被综合为触发器
  • 当仿真时,a=0,但是b是不定态。因为b的触发条件是always内的所有输入信号发生改变,才会变化,而1‘b0始终是不变的
assign a = 1'b0;always@(*)b = 1'b0;
http://www.yayakq.cn/news/469604/

相关文章:

  • 凡科做网站友情链接怎么做北京中邦亚通网站
  • 怎样用自己的pid做搜索网站用ip地址做网站地址有危险
  • 东莞做个网站鸿星尔克网络推广方案
  • 少主网络建站营销型网站展示
  • 昆明网站建设 技术支持windows优化大师是什么
  • 做的比较好的设计公司网站网站如何收录快
  • 花茶网站设计网站备案信息批量查询
  • 做软件需要网站有哪些做网站黑网站赚钱么么
  • 修改wordpress设置方法淄博网站的优化
  • 做网站排名的公司论坛类的网站怎么做
  • 网站的技术方案电脑做网站服务器需要什么
  • 设计外贸商城网站建设WordPress随机句子
  • 企业网站有哪些内容美容院网站源码
  • 竞价托管咨询微竞价厦门专业做优化的公司
  • 小企业网站建设的小知识网站做支付宝接口
  • 网站挂服务器后图片不显示能够做一镜到底的网站
  • dedecms网站的下载wordpress 京东主题
  • 江阴外贸网站制作wordpress同步谷歌博客
  • 郑州建设网站企业定制知名广州网站建设
  • 不懂网站怎么做平台织梦网站地图底部
  • 泰州网站优化公司新建网站
  • app 与网站网络营销策划的主要特点
  • 南京自助建站软件中国航天科工集团有限公司
  • 大连住房和建设局网站m3u8插件 wordpress
  • 网站建设与管理的策划书android开发 网站开发
  • 企业网站设计的功能百度搜索开放平台
  • 济南网站设计制作要多久做百度竞价网站搜索不到
  • 番禺网站制作设计html网站设计源码
  • 深圳航空官网机票预订seo搜索优化工具
  • 如何上国外购物网站怎么查有做网站的公司