购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.3 创建并添加一个新的设计文件

本节将介绍如何为设计创建一个 Verilog/VHDL 设计文件。下面给出创建设计文件的步骤。

第一步 :在Vivado工程主界面的Sources窗口中选择Design Sources文件夹,单击该窗口中的按钮 ;或者单击鼠标右键,出现浮动菜单,在浮动菜单中,执行菜单命令【AddSources】,弹出如图 3.7 所示的“Add Sources”对话框。在该对话框中,提供了下面的选项:

图3.7 “Add Sources”对话框

(1)Add or create constraints(添加或者创建约束)。

(2)Add or create design sources(添加或者创建设计源文件)。

(3)Add or create simulation sources(添加或者创建仿真文件)。

默认选择“Add or create design sources”选项。

第二步 :单击图3.7中的【Next】按钮,弹出如图3.8所示的“Add Sources-Add or Create Design Sources”对话框。

第三步 :单击图 3.8 中的【Create File】按钮;或者单击图 3.8 中的 按钮,出现浮动菜单,在浮动菜单内执行菜单命令【Create File】。

注: 读者可以多次单击【Create File】按钮来定义要添加到工程的几个新模块。

第四步 :弹出“Create Source File”对话框,如图3.9所示。

图3.8 “Add Sources-Add or Create Design Sources”对话框

图3.9 “Create Source File”对话框

在该对话框中,选择添加文件的类型和输入文件的名字。

(1)File type(文件类型):Verilog。

(2)File name(文件名字):top。

(3)File location(文件位置):Local to Project。

注: (1)在File type(文件类型)中提供的可选文件类型包括Verilog(.v后缀名)、Verilog Header(.vh 后缀名)、SystemVerilog(.sv 后缀名)、VHDL(.vhdl 或.vhd 后缀名)或 Memory File(.mem后缀名)。

(2)对于使用 VHDL 开发工程的读者,如果在图 3.6 中将“Target language”设置为“VHDL”,则“File type”默认设置为“VHDL”。

第五步 :单击图3.9中的【OK】按钮,退出“Create Source File”对话框。

第六步 :在图3.8所示的对话框中自动添加了top.v文件,如图3.10所示。

图3.10 添加top.v/top.vhd文件后的对话框

注: 若在图 3.9 中的“File type”设置为“VHDL”,则在图 3.10 所示的对话框中添加了名字为“top.vhd”的源文件。

注: 默认情况下,所有HDL源文件都会添加到xil_defaultlib库中。在Library列中,设计人员可以引用现有的库名字,也可以手动键入新的库名字以根据需要指定其他用户库。

第七步 :单击图 3.10 右下角的【Finish】按钮,弹出“Define Module”对话框,该对话框可帮助设计人员定义模块(对于Verilog HDL为module)或实体(对于VHDL为entity)声明的端口。

在该对话框中,需要添加clk、a、b和z四个端口。其中I/O Port Definitions(I/O端口定义)定义了添加到模块定义中的端口。

① Port Name(端口名字)定义出现在RTL代码中的端口名字(通过文本框输入设置)。

② Direction(方向):指定端口是输入、输出或双向端口(通过下拉框设置)。

③ Bus(总线):指定端口是否是总线端口。如果是,则使用最高有效位(Most Signifiant Bit,MSB)和最低有效位(Least Significant Bit,LSB)选项定义总线宽度(通过复选框设置)。

④ MSB:定义 MSB 的数字。这与 LSB 字段相结合,以确定正在定义的总线宽度(通过旋转按钮设置)。

⑤ LSB:定义LSB的数字(通过旋转按钮设置)。

注: 如果端口不是总线端口(没有勾选Bus前面的复选框)时,MSB和LSB无效。

端口的定义规则如表3.1所示。

表3.1 端口的定义规则

(1)定义Verilog HDL模块(module)的端口:弹出如图3.11所示的“Define Module”对话框,在该对话框中按表格3.1中的内容设置参数。

图3.11 “Define Module”对话框(1)

(2)定义VHDL实体(entity)的端口:弹出如图3.12所示的“Define Module”对话框,在该对话框中按表格3.1中的内容设置参数。

图3.12 “Define Module”对话框(2)

第八步 :单击【OK】按钮,如图 3.13 所示,在 Sources 窗口中添加了 top.v 或 top.vhd文件。

图3.13 Sources窗口

第九步 :找到并双击图3.13中top.v文件或top.v文件。打开设计模板,修改设计模板,并添加设计代码,见代码清单3-1和代码清单3-2。在该设计中,两个输入逻辑量a和b进行了6种逻辑运算,并将产生的6种逻辑结果送到z(5)~z(0)端口。

代码清单3-1 top.v文件

代码清单3-2 top.vhd文件

注: 对于使用Verilog HDL的FPGA开发人员,输入代码清单3-1中给出的代码;对于使用VHDL的FPGA开发人员,输入代码清单3-2中给出的代码。

第十步 :添加完 Verilog HDL/VHDL 设计代码后,按下 Ctrl+S 组合键,保存 top.v/top.vhd文件。

注: 在大多数情况下,Vivado IDE 会自动识别设计的顶层模块。在某些情况下,如果可能有多个候选模块,工具会提示设计人员选中设计的顶层模块。设计人员可以在 Sources 窗口中选中要设置为顶层模块的源文件,单击鼠标右键,出现浮动菜单。在浮动菜单内,执行菜单命令【Set as Top】。当设置为顶层文件时,该文件的左侧用 符号标记。 pXHhNzZPVMKUSKwgFteIKyZSs9TFsGH7NH9KwBYZ0EAFnKiaVTw7Qka2L4mp6TmC

点击中间区域
呼出菜单
上一章
目录
下一章
×