赞
踩
按如下30步流程即可创建并完成仿真
第三步对工程命名
第七步搜索你的FPGA板型号
此处右键design sources选择出现的add sources
此处为design sources
第十四步对你的design sources命名
第十八步双击design sources中你创建的文件
这里我绑定了notepad++,因此自动跳转到notepad++,因为vivado自带的编辑页面很不舒服,因此建议绑定一个你习惯的编辑器,notepad++、vs等等都可以,具体教程网上都有,很简单
这里进行代码的编辑例如:
(该程序具体用法看上篇博客)
module L1C(
clk,
work,
l1c,
code
//端口列表
);
input clk;
input work;
input [5:0]l1c;
output code;
wire code;
//I/O端口说明
reg [5:0]r0; //寄存器RO
wire feedback; //反馈值
//中间变量定义
// -----------------------------------------------------------------------------------------------------
// ------------------------------Code Generator Part ---------------------------------------------------
// -----------------------------------------------------------------------------------------------------
always @(posedge clk) //clk上升沿及rst下降沿执行操作
begin
if(!work)
begin
r0 <= l1c;
end else
begin
r0 <= {r0[4:0],feedback};
end
end
assign feedback = r0[2] ^ r0[5]; //反馈值
assign code = r0[5]; //输出值
endmodule
程序写完记得保存
第十九步点击SYNTHESIS中的Run Synthesis
这样系统会自动帮你检查代码是否错误
出现complete,表明程序没问题
接下来介绍测试工程的创建
此处右键simulation sources点击add sources
第二十二步点击simulation sources
第二十五步为测试文件命名
第29步双击simulation sources中你所创建的测试文件
弹到编辑页面,在该页面中进行声明赋值,具体内容讲解如下:
module L1C_tb();
reg clk;
reg work;
reg [5:0]l1c;
wire code;
//此处声明测试文件变量,不是在()中声明
//下面调用源文件格式为 <源文件名字><自命名>()
//括号内进行源文件和测试文件中输入输出变量对应
L1C tsh(
.clk(clk),
.work(work),
.l1c(l1c),
.code(code)
);
initial begin //此处对输入变量初始化,赋值
clk = 1;
l1c = 6'b111111;//我们的老朋友l1c就是在此处进行初始化
work = 0;
# 10 //此处为10ns之后work变成1,开始反馈移位操作
work = 1;
end
always #10 clk = ~clk; //此处为每过10ns clk零一跳转一次
endmodule
程序写完记得养成点保存的习惯
此处点击SIMULATION中的Run Simulation
如图即为我们的仿真图形,其code在每个clk上升沿输出一次
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。