FPGA程序简单代码错误

FPGA程序简单代码错误,第1张

怀疑是library 没添加,试下加下

library IEEE;

use IEEESTD_LOGIC_1164ALL;

use IEEESTD_LOGIC_ARITHALL;

use IEEESTD_LOGIC_UNSIGNEDALL;

需要添加算术运算库 for ARITH

AS模式下 烧写pof文件需要注意的是在setting/device and pin option中选择configuration这个里面configuration scheme选择ASconfiguration device选择你配置芯片的型号(EPCS4这样的)。

JTAG模式 烧写SOF文件。

2种模式下首先需要确定电路和物理连接的正确然后继续。在hardware setup中选择usb。一般勾上Program/Configure就可以了。

一般可以使用VERILOG 或者VHDL编写。

其实两种语言的差别并不大,他们的描述能力也是类似的。掌握其中一种语言以后,可以通过短期的学习,较快的学会另一种语言。 选择何种语言主要还是看周围人群的使用习惯,这样可以方便日后的学习交流。当然,如果您是专用集成电路(ASIC)设计人员,则必须首先掌握verilog,因为在IC设计领域,90%以上的公司都是采用verilog进行IC设计。对于PLD/FPGA设计者而言,两种语言可以自由选择。

设计人员通过计算机对HDL语言进行逻辑仿真和逻辑综合,方便高效地设计数字电路及其产品。

其实,从个人感觉上来讲,verilog比较容易理解和学习,也比较灵活,但是正是由于其代码的随意性,如果应用不熟练程序很可能会有较多bug,需要慢慢调试。而VHDL作为早期美国军方设计的语言,追求其完备性和规则的严密性,用它可以避免很多程序BUG的发生,但是相对的,代码编写量也会较大。

没有掌握基本的编程流程。以排序算法全家桶为基础,先抄,再模仿,最后再自己写。先抄指的是了解代码这样写为啥能实现功能,然后逐句的写上去,运行,调试,观察每个变量内值的流转。再模仿指的是尝试改变代码逻辑看能否实现该功能,如果不能找原因。自己写指的是按照这个思路看能不能解决问题。

首先PLL应用就不用说明了,这个直接调用内部软核来实现,没有涉及到代码。就分频代码我简单写个8分频的代码,其他的大同小异。

module div_8(clk_100M,rst,clk_125M);

input clk_100M,rst;

output reg clk_125M;//8分频输出125M

reg[3:0] temp;

always@(posedge clk_100M or negedge rst)

begin

if(!rst)

begin

temp<=4'b0000;

clk_125M<=1'b0;

end

else if(temp==4'd3)

begin

clk_125M<=~clk_125M;

temp<=4'b0000;

end

else

temp<=temp+1'b1;

end

endmodule

这个只是8分频代码,其他的16分频可参考这个来写,原理是一样的。

以上就是关于FPGA程序简单代码错误全部的内容,包括:FPGA程序简单代码错误、quartus中往FPGA烧程序,在AS模式下,烧写文件是pof吧后面的那些选项如verify等,哪些需要勾上、FPGA用什么语言编写好。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9769251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存