ISE14.7手把手使用教程:建立工程、仿真、下载bit流、程序固化、以及一些常见的坑

最近,博主在学习FPGA,用的开发软件是ISE14.7,开发板是Spartan-3E starter board。本文主要记录下ISE14.7软件的使用,怎样从头开始建立工程,写代码,仿真,到下载bit流到板子上,还有程序的固化,用示波器看波形。最后还会记录下中间遇到的一些坑。

一、建立工程

1、新建工程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到这里,工程就新建完成了,接下来需要添加各种文件。下边是我的一段代码。

2、添加代码

在这里,我们可以创建新的代码文件(或者可以选择Add Sourse添加已有的代码)。
在这里插入图片描述
这里我用的是Verilog语言,所以选择了Verilog Module,如果你是VHDL语言,可以选择VHDL Module。
在这里插入图片描述
在这里插入图片描述
然后点击finish,就完成了新文件的建立。我们可以在这里写我们的代码。
在这里插入图片描述
这里是设计了一个流水灯,每隔1S小灯流动一次。
代码如下:

`timescale 1ns / 1ps

module led(
	input clk,
	input reset,
	output reg[7:0]led
	);
	reg  [25:0] cnt;
	parameter TIME = 26'd50_000_000;

	always @(posedge clk) begin
		if (reset) begin
			cnt <= 26'd0;
		end
		else if (cnt == TIME - 1'b1) begin
			cnt <=26'd0;
		end
		else begin
			cnt <= cnt + 1'd1;
		end
	end

	always @(posedge clk) begin
		if (reset) begin
			led <= 8'b0000_0001;
		end
		else if (cnt == TIME - 1'b1) begin
			led <= {led[0],led[7:1]};
		end
		else begin
			led <= led;
		end
	end
endmodule

3、综合

这里,我们双击Synthesize -XST进行综合。可以检查代码的语法错误,查看RTL图等。前边出现绿色圈圈里对号,说明综合成功了。
在这里插入图片描述
可以双击View RTL Schematic查看RTL图。
在这里插入图片描述
继续双击RTL图可以产看详细的图。

在这里插入图片描述

4、管脚约束

顾名思义,就是将我们设计中的input,output和FPGA对应的管脚相连接。
在这里插入图片描述
然后会打开PlanAhead,时间较久,需要稍等一会。
在这里插入图片描述
在这里,我们根据FPGA的数据手册分配管脚。
在这里插入图片描述
最后,save。
在这里插入图片描述
管脚约束完后,我们会看到有一个ucf文件。
在这里插入图片描述

5、实现:转换、映射、布局布线

双击Implement Design,完成后前边会变绿。
在这里插入图片描述

6、生成bit流文件

在这里插入图片描述

二、仿真

这里说的仿真,是对我们的代码进行功能仿真。可以用modelsim进行仿真,也可以在ISE内进行仿真。
用modelsim进项仿真可以参考文章:modelsim仿真
我们下边介绍的是在ISE14.7内进行仿真:

1、创建TestBench

在这里插入图片描述
在这里插入图片描述
输入testbench代码:

`timescale 1ns / 1ps
module test_tb;

	// Inputs
	reg clk;
	reg reset;

	// Outputs
	wire [7:0] led;

	// Instantiate the Unit Under Test (UUT)
	led uut (
		.clk(clk), 
		.reset(reset), 
		.led(led)
	);
	always #10 clk =~clk;
	initial begin
		// Initialize Inputs
		clk = 0;
		reset = 1;

		// Wait 100 ns for global reset to finish
		#100;
      reset = 0;
		// Add stimulus here
	end
      
endmodule

2、仿真

在这里插入图片描述
在这里插入图片描述
仿真成功后,可以将bit流下载到板子验证。

三、下载bit流文件到板子

下载bit文件到FPGA 的方式,掉电后会被擦除。

1、硬件连接

需要先将板子和电脑连接。当usb和电脑连接时,会自动加载驱动。
打开电脑的设备管理器,当出现下图的标志时说明连接成功:
在这里插入图片描述

2、软件设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
软件会自动检测到板子上的芯片,由于我的板子上有三个芯片,所以检测到三个。在这里,我们只需要将bit加载到FPGA(第一个xc3s500e)。
在这里插入图片描述

在这里插入图片描述
剩下的两个,都选择bypass.

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
出现Program suceeded,就成功将bit流文件下载到FPGA内了。
在这里插入图片描述
可以在板子上看到流水灯的效果。

fpga流水灯演示

四、程序固化

  • 在编写FPGA程序时,我们可以在测试程序的功能的时候去带电烧写程序,但是当程序功能满足我们的设计需求的时候,就想要把程序存放在外部的Flash中,这样即便掉电了以后,等到下次重新上电,FPGA就可以直接从Flash中把代码加载到内部运行,达到方便简单的效果。
  • 由于bit不能直接下载到QSPI Flash中,所以必须先把bit文件转化为.mcs文件,然后才能下载到QSPI Flash中。

参考方法:ISE14.7程序固化步骤

五、坑

1、ise14.7在win10下闪退解决办法

  1. 寻找安装Xilinx_ISE的安装目录下的文件夹:D:\Xilinx\14.7\ISE_DS\ISE\lib\nt64
  2. 对文件夹下的两个文件作如下操作:
    将libPortability.dll重名为libPortability.dll.orig
    将 libPortabilityNOSH.dll 复制一份,然后将这个复制重命名为libPortability.dll
  3. 寻找安装Xilinx_ISE的安装目录下的文件夹:D:\Xilinx\14.7\ISE_DS\common\lib\nt64
  4. 在该文件夹下进行如下操作:将libPortability.dll重名为libPortability.dll.orig 。然后将已经复制好的libPortabilityNOSH.dll文件复制到该文件夹下,并重命名为libPortability.dll

2、下载bit流时,电脑和FPGA连接,但是电脑识别不到FPGA

  1. 正常情况:打开设备管理器,出现下图:
    在这里插入图片描述
  2. 有问题的情况:出现黄色感叹号
  • 解决办法一:
    右键点击更新驱动程序即可,找到安装位置D:\Xilinx\14.7\ISE_DS\ISE\bin\nt64\install_drivers下的这个文件进行更新即可,如果是32位则是nt。
  • 解决办法二:
    禁用驱动程序强制签名

六、完整工程

点击链接下载完整工程

  • 61
    点赞
  • 615
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
ISE 14.7是Xilinx公司的一款FPGA设计软件,这里是ISE 14.7手把手使用教程: 1. 下载并安装ISE 14.7软件 首先需要在Xilinx公司的官网上下载ISE 14.7软件,并按照提示进行安装。安装完成后,可以在安装目录下找到ISE软件。 2. 创建一个新工程 打开ISE软件后,选择“File”菜单中的“New Project”选项,弹出“New Project Wizard”向导,按照提示进行设置,包括工程名称、项目目录、FPGA型号等。 3. 添加源文件 在新建工程后,需要添加设计文件。在ISE软件中,设计文件包括VHDL文件、Verilog文件、UCF文件等。可以使用ISE自带的编辑器进行编写,或者使用其他编辑器编写后再添加到ISE中。添加文件后,需要进行约束(Constraints)设置,包括时钟频率、时序等。 4. 进行综合、实现和下载 完成设计文件和约束设置后,需要进行综合和实现。综合是将设计文件转换成逻辑门电路,实现是将逻辑门电路映射到FPGA器件中。完成综合和实现后,可以生成比特文件(Bitstream),用于下载FPGA器件中。下载可以使用Xilinx公司提供的下载工具或者第三方下载工具。 5. 调试和优化 在下载完成后,需要进行调试和优化。可以使用ISE提供的仿真工具进行仿真,或者使用外部的仿真工具进行仿真。调试和优化包括时序约束调整、时钟域划分、资源占用优化等。 以上就是ISE 14.7手把手使用教程的基本步骤,希望能够帮助到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值