1、另外,我们选择Verilog作为默认的硬件描述语言。 (3)再点击Next按钮进入下一页,这里显示了新建工程的信息,确认无误后,点击Finish就可以建立一个完整的工程了。(1)在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,选择Verilog Module输入,并输入Verilog文件名。(2)单击Next按钮进入端口定义对话框。其中Module Name栏用于输入模块名,这里是comp2bit,下面的列表框用于端口的定义。Port Name表示端口名称,Direction表示端口方向(可选择为input、output或inout),MSB表示信号最高位,LSB
2、表示信号最低位,对于单信号的MSB和LSB不用填写。当然,端口定义这一步我们也可以略过,在源程序中再行添加。(3)定义了模块的端口后,单击Next进入下一步,点击Finish完成创建。这样,ISE就会自动创建一个Verilog模块的模板,并且在源代码编辑区打开。简单的注释、模块和端口定义已经自动生成,接下来的工作就是将代码编写完整。(4)输入代码后,我们还需要对模块进行测试。在工程管理区将view设置为Simulation,在任意位置单击鼠标右键,并在弹出的菜单中选择New Source,在类型中选择Verilog Test Fixture,输入测试文件名,单击下一步。这时所有工程中的模块名都
3、会显示出来,我们选择要进行测试的模块。点击Next ,再单击Finish按钮,ISE会在源代码编辑区自动生成测试模块的代码。我们看到,ISE已经自动生成了基本的信号并对被测模块做了例化。我们的工作就是在initialend块中的“/Add stimulus here”后面添加测试向量。(5)完成测试文件编辑后,确认工程管理区中view选项设置为Simulation,这时在过程管理区会显示与仿真有关的进程。右键单击其中的Simulate Behavioral Model项,选择弹出菜单中的Process Properties项,会弹出属性设置对话框,其中Simulation Run Time就是
4、仿真时间的设置,可将其修改为任意时长。(6)仿真参数设置完后,就可以进行仿真。首先在工程管理区选中测试代码,然后在过程管理区双击Simulate Behavioral Model,ISE将启动ISE Simulator,可以得到仿真结果。3.综合与实现 (1)在工程管理区的view中选择Implementation,然后在过程管理区双击Synthesize-XST,就可以开始综合过程。(2)另外,要实现设计,还需要为模块中的输入输出信号添加管脚约束,这就需要在工程中添加UCF文件。在工程管理区单击鼠标右键,点击New Source,选择Implementation- Constraints F
5、ile,出现一个空白的约束文件,我们就可以为设计添加各种约束。如果综合步骤没有语法错误,XST能够给出初步的资源消耗情况,点击Design Summary,即可查看。(3)在过程管理区双击Implementation Design选项,就可以自动完成实现步骤。如果设计没有经过综合,就会启动XST完成综合,在综合后完成实现过程。经过实现后能够得到精确的资源占用情况。在Design Summary即可看到具体的资源占用情况。4. 二位比较器的verilog源代码module comp2bit (input wire 1:0 a,0 b,output wire a_eq_b,output wire
6、a_gt_b,output wire a_lt_b);assign a_eq_b = b1 & b0 & a1 & a0| b1 & b0 & a0| b1 & a1 & a0;assign a_gt_b = b1 & a1| b0 &assign a_lt_b = b1 & a1| b0 & a0;endmodule五实验结果 :通过对二位比较器的设计与实现仿真模拟出的结果,如图所示:实验一:输入逻辑门的设计与实现一.实验简介:这个实验将指导你通过使用ISE软件进行简单的2输入逻辑门的设计与实现。二.实验目的:使用ISE软件设计并仿真。学会程序下载。三.实验内容 :1. ISE软件是一个支持
7、数字系统设计的开发平台2. 用ISE软件进行设计开发时基于相应器件型号的。3. 图1-1所示电路包含6个不同的逻辑门,本实验中用Verilog语句来描述。四 实验步骤 :1. 新建工程(1)双击桌面上“”图标,启动ISE软件(也可从开始菜单启动)。选择File New Project选项,在弹出的对话框中输入工程名称并指定工程路径,如图所示。(2)点击Next按钮进入下一页,选择所使用的芯片及综合、仿真工具。计算机上安装的所有用于仿真和综合的第三方EDA工具都可以在下拉菜单中找到,如图所示。(3)再点击Next按钮进入下一页,这里显示了新建工程的信息,确认无误后,点击Finish就可以建立一个
8、完整的工程了,如图所示。2设计输入和代码仿真 (1)在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,会弹出如图1-5所示的新建源代码对话框,对于逻辑设计,最常用的输入方式就是HDL代码输入法(Verilog Module、VHDL Module)、状态机输入法(State Diagram )和原理图输入法(Schematic)。这里我们选择Verilog Module输入,并输入Verilog文件名。(2)单击Next按钮进入端口定义对话框,如图1-6所示。其中Module Name栏用于输入模块名,这里是gates2,下面的列表框用于端口的定义。简单的注释、模块
9、和端口定义已经自动生成,接下来的工作就是将代码编写完整,如图1-7所示。 (4)输入代码后,我们还需要对模块进行测试。这时所有工程中的模块名都会显示出来,我们选择要进行测试的模块,如gates2模块。点击Next ,再单击Finish按钮,ISE会在源代码编辑区自动生成测试模块的代码,如图1-8所示。对gates2模块,我们可以添加如下所示的测试代码。 #200 a = 0; b #200 a = 1; #200(5)完成测试文件编辑后,确认工程管理区中view选项设置为Simulation,这时在过程管理区会显示与仿真有关的进程,如图1-9中Processes栏所示。右键单击其中的Simul
10、ate Behavioral Model项,选择弹出菜单中的Process Properties项,会弹出如图所示的属性设置对话框,其中Simulation Run Time就是仿真时间的设置,可将其修改为任意时长。(1)所谓综合,就是将HDL语言、原理图等设计输入翻译成由与、或、非门和RAM、触发器等基本逻辑单元的逻辑连接(网表),并根据目标和要求(约束条件)优化所生成的逻辑连接。完成了输入和仿真后就可以进行综合。在工程管理区的view中选择Implementation,然后在过程管理区双击Synthesize-XST,就可以开始综合过程,如图所示综合可能有3种结果:如果综合后完全正确,则在
11、Synthesize-XST前面有一个打勾的小圆圈;如果有警告,则出现一个带感叹号的黄色小圆圈;如果有错误,则出现一个带叉的红色小圆圈。如果综合步骤没有语法错误,XST能够给出初步的资源消耗情况,点击Design Summary,即可得到结果。(3)综合完成后,下一个步骤就是实现(Implementation)。所谓实现,是指将综合输出的逻辑网表翻译成所选器件的底层模块和硬件原语,将设计映射到器件结构上,进行布局布线,达到在选定器件上实现设计的目的。实现主要分为3个步骤:翻译(Translate)逻辑网表、映射(Map)到器件单元与布局布线(place & Route)。在ISE中,执行实现过
12、程,会自动执行翻译、映射和布局布线过程:也可单独执行。在过程管理区双击Implementation Design选项,就可以自动完成实现的3个步骤,如图1-14所示。4. 输入逻辑门的verilog源代码module gates2(input wire a,input wire b, output wire5:0zassign z5 = a&b; assign z4 = (a&b);assign z3 = a|b; assign z2 = (a|b);assign z1 = ab; assign z0 = ab;通过对输入逻辑门的设计与实现仿真模拟出的结果,如图所示:实验四:4位二进制-BCD
13、码转换器的设计与实现一、实验简介这个实验将指导你通过使用ISE软件进行4位二进制-BCD码转换器的设计与实现。二、实验目的使用ISE软件设计并仿真。学会程序下载。三、实验内容 1.ISE软件是一个支持数字系统设计的开发平台2用ISE软件进行设计开发时基于相应器件型号的。 注意:3图8-1所示为4位二进制-BCD码转换器的真值表,本实验中用Verilog语句来描述。四、实验步骤1.新建工程 双击桌面上“”图标,启动ISE软件(也可从开始菜单启动)。选择File New Project选项,在弹出的对话框中输入工程名称并指定工程路径。 点击Next按钮进入下一页,选择所使用的芯片及综合、仿真工具。
14、再点击Next按钮进入下一页,这里显示了新建工程的信息,确认无误后,点击Finish就可以建立一个完整的工程了。 2. 设计输入和代码仿真 在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,选择Verilog Module输入,并输入Verilog文件名。 单击Next按钮进入端口定义对话框。其中Module Name栏用于输入模块名,这里是binbcd4,下面的列表框用于端口的定义。 定义了模块的端口后,单击Next进入下一步,点击Finish完成创建。 输入代码后,我们还需要对模块进行测试。完成测试文件编辑后,确认工程管理区中view选项设置为Simulatio
15、n,这时在过程管理区会显示与仿真有关的进程。 仿真参数设置完后,就可以进行仿真。3. 综合与实现 在工程管理区的view中选择Implementation,然后在过程管理区双击Synthesize-XST,就可以开始综合过程。 另外,要实现设计,还需要为模块中的输入输出信号添加管脚约束,这就需要在工程中添加UCF文件。 在过程管理区双击Implementation Design选项,就可以自动完成实现步骤。4.器件配置 硬件配置是FPGA开发最关键的一步,只有将HDL代码下载到FPGA芯片中,才能进行调试并最终实现相应的功能。首先我们必须生成能下载到硬件中的二进制比特文件。双击过程管理区的Ge
16、nerate Programming File,ISE就会为设计生成相应的二进制比特文件。 然后利用USB-MiniUSB缆线,来为开发板提供电源和数据下载。我们只需上网下载免费的Digilent Adept软件,即可快速实现Nexys3开发板上FPGA的配置。用USB-MiniUSB缆线连接开发板和PC,打开开发板的电源开关,然后启动Digilent Adept软件。系统开始自动连接FPGA设备,成功检测到设备后,会显示出JTAG链上所用芯片。界面上将显示检测到NEXYS3开发板上的器件FPGA(XC6SLX16)。这里我们对FPGA进行配置。在Browse中找到之前生成的设计的二进制比特文
17、件,并点击旁边的Program按钮,软件就开始对FPGA进行配置。配置成功后,下面的状态栏会显示Programming Successful。至此,器件配置成功,我们就可以在器件上验证预期的设计有没有很好的得以实现。1. 4位二进制-BCD码转换器的verilog源代码 module binbcd4 (input wire 3:output wire 4:0 p assign p4 = b3 & b2 | b3 & b1;assign p3 = b3 & b2 & b1;assign p2 = b3 & b2 | b2 &assign p1 = b3 & b2 & b1 | b3 &assig
18、n p0 = b0;24位二进制-BCD码转换器的约束文件 NET b3 LOC =T5;NET b2V8b1U8b0N8p4T11p3R11p2N11p1M11p0V15五、实验结果实验五:8-3优先编码器的设计与实现这个实验将指导你通过使用ISE软件进行8-3优先编码器的设计与实现。三、实验内容2.用ISE软件进行设计开发时基于相应器件型号的。3图7-1所示为8-3优先编码器的真值表,本实验中用Verilog语句来描述。1.新建工程 双击桌面上“”图标,启动ISE软件(也可从开始菜单启动)。2.设计输入和代码仿真 在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,选择Verilog Module输入,并输入Verilog文件名。其中Module Name栏用于输入模块名,这里是pencode83,下面的列表框用于端口的定义。定义了模块的端口后,单击Next进入下一步,点击Finish完成创建。 完成测试文件编辑后,确认工程管理区中view选项设置为Simulation,这时在过程管理区会显示与仿真有关的进程。仿真参数设置完后,就可以进行仿真。首先在工程管理区选中测试代码,然后在过程管
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1