
Verilog知识点
文章平均质量分 51
主要包含一些关于verilog的语法,modelsim使用的细节等
yezhangyinge
这个作者很懒,什么都没留下…
展开
-
设计与验证Verilog HDL 笔记一
文章目录前言Chapter1--设计方法简介1.Verilog特点2.HDL设计与验证的流程3.Verilog编程思想Chapter2--Verilog语言基础1.Top-Down&Bottom-Up2.语法(1)描述方法(2)注释和标识符(3)模块和端口(4)编译指令和延时指令(5)逻辑值和常量(6)变量类型Chapter3--描述方法和设计层次Chapter4--RTL概念和RTL建模Chapter5--RTL设计和编码指导Chapter6--状态机一些常用缩写前言这里主要是写一些读后的笔原创 2021-05-26 00:09:59 · 1074 阅读 · 0 评论 -
Verilog `include语句
目录一、`include定义二、`include使用方法1.`include "绝对路径"2.`include "相对路径"3.`include "文件名"4.`include "XX"后续不需要加上";"5.`include 多个文件6.`include 优先级问题一、`include定义可以使用这个语句进行文件包含,一般在被包含的文件里定义一些常用的task和`define方便后续的使用二、`include使用方法1.`include “绝对路径”这样写是万无一失的,但是会相对比较麻烦2.原创 2021-05-12 12:14:18 · 19003 阅读 · 0 评论 -
ModelsimSE使用指南
目录一、仿真前准备1.建立资源库前准备2.建立资源库altera_base_v3.建立资源库altera_device4.建立资源库二、开始仿真一、仿真前准备1.建立资源库前准备按照图中设置好后,在工程文件夹下会有,simulation文件夹,里面的modelsim文件夹内有很多文件2.建立资源库altera_base_v在modelsim文件安装位置新建两个文件夹打开modelsim新建library,如下,红框内加入刚刚创建的文件夹的路径点击compile,library选择a原创 2021-05-10 23:52:48 · 1129 阅读 · 1 评论 -
Verilog高效工作
目录一、使用插件verilog-HDL二、使用插件Verilog_testbench三、使用插件Waveform Render四、使用插件Draw.io一、使用插件verilog-HDL然后安装插件ctag,安装好后使用ctrl+shift+p调出命令面板搜索Verilog:Instantiate Module,可以帮我们快速例化二、使用插件Verilog_testbench这个安装好后,再安装python,打开cmd输入pip install chardet安装好后就可以了自动原创 2021-05-08 22:53:26 · 869 阅读 · 0 评论 -
testbench文件输入输出类型
输入必须为reg,因为对于testbench来说输入其实是要输出给测试模块的,也就是相当于需要一个东西来存储,所以是register类型输出必须为wire,因为对于testbench来说输出其实是测试模块的输入,也就是需要通过wire来进行连接...原创 2021-05-08 00:12:33 · 1502 阅读 · 0 评论 -
Verilog Task&Generate
目录1.task2.generate1.tasktask主要用来实现一些简单的功能,方便多次调用,要明白task只是负责处理而不带有任何连线的功能同时有一些特性input和output不是强制拥有的task可以调用自身或者其他task调用task时候只能在always里task内部不可以使用always和initial,assigntask task_id //input&output //task function endtask2.generate目前对于原创 2021-04-29 23:15:07 · 826 阅读 · 0 评论 -
Verilog Feature
目录1.reduction2.integer3.parameter4.for loop1.reduction如果需要使用到同一个reg、wire内部元素的逻辑操作可以使用& a[3:0] // AND: a[3]&a[2]&a[1]&a[0]| b[3:0] // OR: b[3]|b[2]|b[1]|b[0]^ c[2:0] // XOR: c[2]^c[1]^c[0]2.integer用来表示有符号数,和reg作区分3.par原创 2021-04-29 22:01:41 · 182 阅读 · 0 评论 -
Verilog always和assign知识点
目录always--------------过程赋值语句1.输出类型reg2.时序和组合3.always @(*)(1)避免latch的方法4.always @(posedge clk)5.非阻塞赋值assign----------------连续赋值语句1.输出类型wire2.阻塞赋值以下为对比图always--------------过程赋值语句1.输出类型reg(1)always内部输出一般使用reg类型(2)reg在组合电路中和wire其实类似,在时序电路中为触发器样式2.时序和组合/原创 2021-04-28 21:02:22 · 3241 阅读 · 0 评论 -
Verilog 逻辑值
目录逻辑值1.逻辑12.逻辑03.逻辑x4.逻辑z逻辑值1.逻辑1高电平,对应VCC2.逻辑0低电平,对应GND3.逻辑x未知,可能为1、04.逻辑z高阻态,悬空,可以用来实现不需要比较的值的设定always @(*) begin casez (in[3:0]) 4'bzzz1: out = 0; // in[3:1] can be anything 4'bzz1z: out = 1; 4'bz1zz: out = 2;原创 2021-04-28 20:38:08 · 764 阅读 · 0 评论 -
Verilog Module知识点
目录Module1.连接信号到Module2.总结提示:以下是本篇文章正文内容,下面案例可供参考Module1.连接信号到Module//第二种写法是更加提倡的,因为这样会更加清楚对应关系module_a u_name(a,b,c);module_a u_name(.in1(a),.in2(b),.out(c));2.总结...原创 2021-04-27 20:48:41 · 1199 阅读 · 0 评论 -
Verilog Vector知识点
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录Vector关于Vector的几个使用范例Vector关于Vector的几个使用范例1.以下会有2个3条的wire类型wire [2:0] wire1,wire2;2.以下会有4个3bits的registerreg [2:0] reg1 [3:0];3.注意字节序//以下只能由一种情况出现,不可同时出现reg [2:0] reg1;reg [0:2] reg2;4.注意取高位和取低位reg [7:0原创 2021-04-27 13:19:31 · 1085 阅读 · 0 评论