
verilog
寒泉Hq
当你试图解决一个你不理解的问题时,复杂化就产生了
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【verilog 语法】always 和 always@(*) 的区别
always@(*)always@后面内容是敏感变量,always@(*)里面的敏感变量为*,意思是说敏感变量由综合器根据always里面的输入变量自动添加,不用自己考虑。always如果没有@,那就是不会满足特定条件才执行,而是执行完一次后立马执行下一次,一直重复执行比如,testbench里面产生50Mhz的时钟就(假设时间尺度是1ns)可以写成:always #20 CLK_50M...原创 2019-04-04 18:14:18 · 98046 阅读 · 1 评论 -
【Modelsim零基础入门】verilog仿真程序:1-bit A+B
↓ 第一个自己写的verilog程序以及对应的测试程序计算A+B源程序文件名称:simpleAdd.vmodule addTwo(sum,a,b) input a,b; output sum assign sum=a+b;end module测试程序文件名称:test.v`timescale 1ns/1ns`include "simpleAdd.v"module add...原创 2019-04-04 08:49:10 · 17055 阅读 · 1 评论 -
【Modelsim零基础入门】新建项目+运行第一个verilog仿真程序:一位加法器
这篇注释比较详细,由《Moselsim 第一个仿真程序 四位加法器》修改而来原博客:https://blog.youkuaiyun.com/sinat_42483341/article/details/88970852关于begin end 串行并行的易错点源程序//source programmodule myadd(sum,cout,a,b,cin); //output,output,inpu...原创 2019-04-03 21:41:10 · 17757 阅读 · 9 评论 -
【计组实验】P2 Modelsim Verilog单周期处理器开发 MIPS指令集
ALUalu.v/* * Module Name: ALU * File Created: 2019-4-4 16:11:12 * Notes: * 没有添加溢出判断 * OF为溢出标志位(有溢出为1,无溢出为0)如果溢出 要用两个GPR表示这个结果 */ module ALU( input [31:0] A, //输入32位A input [31:0] B, ...原创 2019-04-04 19:45:21 · 17234 阅读 · 2 评论 -
【verilog语法】关于testbench与被测module的输入输出数据类型定义:reg/wire原因
testbench的输入输出数据类型正好与被测模块相反1、被测module中,输入为wire,输出为reg输入信号是由模块外部决定的,输入数据的状态是变化的,与外部模块是通过线连接,所以用wire,不用reg2、testbench中,输入为reg,输出为wire所谓寄存器类型就是暂存一个数据,保持数据不变。在testbenchb里定义的A,B输出给被测模块因此对于testbench来说...原创 2019-04-05 10:17:21 · 22654 阅读 · 6 评论 -
【Verilog语法】读文件
在进行FPGA模块的开发过程中,常常需要对数据的处理过程进行行为仿真,以验证FPGA的功能逻辑是否正确,因此需要将FPGA行为仿真的结果与MATLAB或C/C++的处理结果进行对比验证。但需要对比的数据量比较大时,将输入输出结果数据存入文件进行对比是非常常用的方法。Verilog中读写文件常用到的系统任务主要有以下几个:1.文件打开、关闭与定位操作:$fopen(file_name)、$fcl...原创 2019-04-05 12:47:47 · 11873 阅读 · 0 评论 -
【verilog语法】always@(*)自动添加敏感变量列表
verilog 里面,always和always@(*)有区别吗?一般always@(*)是指里面的语句是组合逻辑的。always@后面内容是敏感变量,always@(*)里面的敏感变量为*,意思是说:敏感变量由综合器根据always里面的输入变量自动添加,不用自己考虑。如果没有@,那就是不会满足特定条件才执行,而是执行完一次后立马执行下一次,一直重复执行。比如testbench里面产...原创 2019-04-26 09:07:23 · 21642 阅读 · 1 评论 -
【计组实验】P3 Verilog多周期处理器开发 MIPS指令集
实验要求处理器应 MIPS-Lite2 指令集。a) MIPS-Lite2={MIPS-Lite1,lb,sb}。b) MIPS-Lite1={addu,subu,ori,lw,sw,beq,j,lui,addi,addiu,slt,jal,jr }。c) 所有运算类指令均可以不支持溢出。处理器为多周期设计。控制信号各控制信号含义控制信号真值表状态转移图...原创 2019-05-07 22:36:14 · 20047 阅读 · 15 评论