[MCU] 【AG32VF407测评】FPGA工程初探

lenxvp   2023-8-18 20:57 楼主

AG32VF407毕竟是一个MCU+FPGA的组合,所以我们还是要来玩一玩FPGA的

参考MANUAL_AGRV2K.pdf中软件开发流程部分,先再开官方的LED Demo,解压到自己的工程目录,打开Supra软件,这个软件在SDK解压的目录里就有

image.png  

在Supra中菜单栏文件->打开工程,选择我们上面下载的LED Demo的解压后的目录下的.proj后缀的文件

image.png  

然后Tool->Migrate,参数可以参考MANUAL_AGRV2K.pdf修改,这里不做改动,直接next

用Quartus打开LED_Demo下的led.qpf工程文件,在Quartus中菜单栏Tool->Tcl Scripts,选中af_quartus.tcl,Run的,等待完成

image.png  

image.png  

在Quartus编译一下

image.png  

编译完成在Supra也要编译一下,在Supra中Tool->Compile,不需要修改什么,直接RUN即可

编译完成就可以下载到开发板了,在Supra中Tool->Program,选择JLink,然后Query device ID,Device ID为0x40200001

  image.png  

下载后即可在开发板看到LED闪烁了

 

最后简单看看LED_Demo的代码和流程

module led(clk,ledout);
	input	clk;
	//input	rst;
	//output en;
	output [3:0] ledout;

	reg [3:0]  ledout;
	reg [31:0] counter;
	wire c0;

	always@(posedge c0)
	begin
		counter <= counter+1;
		case(counter[26:24])
			0:	ledout <= 4'b1110;
			1:	ledout <= 4'b1101;
			2:	ledout <= 4'b1011;
			3:	ledout <= 4'b0111;
			4:	ledout <= 4'b1100;
			5:	ledout <= 4'b0011;
			6:	ledout <= 4'b0000;
			7:	ledout <= 4'b1111;
		endcase
	end
	
	pll1	pll1_inst(
		.areset(1'b0),
		.inclk0(clk),
		.c0 (c0)
	);
endmodule

FPGA开发使用的Verilog语言,上面的代码通过PLL模块产生时钟计数信号,根据计数的值的最高位给LED赋值

跟一般的FPGA开发的流程不同的是,AG32VF407 FPGA的开发不需要在Quartus配置引脚约束,而是在ve文件中配置的,这样看来ve文件倒像是AG32VF407的引脚约束文件

 

回复评论 (4)

关于Quartus可以到Intel官网直接下载最新的版本,我用的就是22.1版,Quartus有多个版本,开发中只需要Cyclone IV的系列,可以只选择免费的lite版

点赞  2023-8-18 21:01

官网的Quartus-lite-22.1std.1.917是最新版本

点赞  2023-8-19 09:25

谢谢分享,期待后续!

默认摸鱼,再摸鱼。2022、9、28
点赞  2023-8-29 14:20

感谢分享!

北京太速科技的"基于DSP TMS320C6678+FPGA XC7V690T的6U VPX信号处理卡"的确不错!

点赞  2023-9-20 14:48
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复