verilog2001 generate endgenerate
Abtract
generate语句允许细化时间(Elaboration-time)的选取或者某些语句的重复。这些语句可以包括模块实例引用的语句、连续赋值语句、always语句、initial语句和门级实例引用语句等。细化时间是指仿真开始前的一个阶段,此时所有的设计模块已经被链接到一起,并完成层次的引用。
Introduction
1.generate语法
- 定义genvar,作为generate种的循环变量。
- generate语句中定义的for语句,必须要有begin,为后续增加标签做准备。
- begin必须要有名称,也就是必须要有标签,因为标签会作为generate循环的实例名称。
- 可以使用在generate语句中的类型主要有:
- ü module(模块)
- ü UDP(用户自定义原语)
- ü 门级原语
- ü 连续赋值语句
- ü initial或always语句
- 基本结构如下:
genvar 循环变量名;
generate
// generate循环语句
// generate 条件语句
// generate 分支语句
// 嵌套的generate语句
endgenerate
下面将就generate常用的几种情况举例说明。
2. generate-loop循环语句
3.generate-conditional条件语句
generate允许对语句进行条件选择,即将条件选择加入到generate中的for循环中,只例化条件成立时对应的语句或者module。
4.generate-case分支语句
generate-case分支语句与generate-条件语句类似,只不过将原来的分支语句换做了case语句。
Conclusion
genvar与generate是Verilog 2001才有的,功能非常强大,可以配合条件语句、分支语句等做一些有规律的例化或者赋值等操作,对于提高简洁代码很有帮助,同时也减少了人为的影响。
verilog2001 generate endgenerate相关推荐
- 【IEEE_Verilog-12.4】generate的用法
12.4 Generate construct generate构造用于在模型中有条件地或实例化的生成块.生成块是一个或多个模块项的集合.一个生成块不能包含端口声明.参数声明.指定块或specpara ...
- 一把王者的时间,学会generate语句【Verilog高级教程】
芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球 四社区联合力荐!近500篇数字IC精品文章收录! [数字IC精品文章收录]学习路线·基础知识·总线·脚本语言·芯片求职· ...
- 【HDL系列】乘法器(2)——阵列乘法器
目录 一.阵列乘法器 二.Verilog设计 一.阵列乘法器 将上文中的AB两数相乘的例子: 4比特的AB两数相乘的竖式计算表示成如下,为了区分,方便在阵列格式中看出差异,图中标记了不同的颜色,每组颜 ...
- cshrc gvim 配置
插件:https://github.com/amix/vimrc.git ## in .cshrcif (-f $HOME/.alias) thensource $HOME/.alias endifi ...
- Verilog中生成语句(generate)的用法
一:generate Verilog-2001添加了generate循环,允许产生module和primitive的多个实例化,同时也可以产生多个variable,net,task,function, ...
- Verilog中generate语法和作用
Verilog中generate语句的用法 在Verilog-2001中新增了语句generate,通过generate循环,可以产生一个对象(比如一个元件或者是一个模块)的多次例化,为可变尺度的设计 ...
- Verilog中generate语句的用法
在Verilog-2001中新增了语句generate,通过generate循环,可以产生一个对象(比如一个元件或者是一个模块)的多次例化,为可变尺度的设计提供了方便,generate语句一般在循环和 ...
- Verilog generate循环
一:generate Verilog-2001添加了generate循环,允许产生module和primitive的多个实例化,同时也可以产生多个variable,net,task,function, ...
- generate用法
verilog2001中在呢个价四个关键字,generate,endgenerate, genvar, localparam. genvar是一个新增的数据类型,用在generate的循环中的标尺变量 ...
最新文章
- 转载 iOS js oc相互调用(JavaScriptCore) --iOS调用js
- java实现随机字母数字验证码
- 硬盘IO,SAS,SATA,和HD TUNE
- 复旦高等代数 I(17级)每周一题
- NVIDIA GPU 架构梳理
- kali 切换root权限_Ubuntu 被曝严重漏洞:切换系统语言 + 输入几行命令,就能获取 root 权限...
- Java基础---认识抽象类
- PHP生成器--动态生成内容的数组
- 【C语言】Simple Sorting(结构)
- 计算机文化基础第二次答案,中国石油大学2020年秋计算机文化基础第二次在线作业答案...
- CVE-2018-8120 漏洞分析
- matlab符号函数sgn,latex 符号函数sgn
- linux 文件擦除,[原创]在Linux下进行文件“粉碎”/擦除
- csgo怎么一直连接服务器失败,CSGO提示连接到官方任意服务器失败怎么办?
- 不良资产证券化之后,谁来买单?
- h5py使用基础笔记
- 三大主流Mac清理软件实测:Cleaner One | 柠檬清理 | CleanmyMac
- 访问网站浏览器左上角提示:windows 没有足够信息,不能验证该证书
- JIL Widget模拟器上网技巧
- 抖音视频解析PHP源码抖音解析php版api
热门文章
- 手绘板的制作——手绘(1)
- JavaScript事件冒泡和事件捕获
- 网页学习——JavaScript事件
- python爬取音乐专辑时间_Python爬取披头士乐队历年专辑封面-网易云音乐
- css指针光标样式小手图标
- iOS开源加密相册Agony的实现(一)
- 数据密集型系统设计:可靠性、可拓展性及可维护性
- 利用混淆矩阵及Kappa系数评价土地利用分类精度
- git clone出现 fatal: unable to access ‘https://github.com/...‘的两种解决方法
- 深度学习感知机(Perceptron)学习笔记