建议如下:
1、掌握必要的理论知识,如leshen750所说部分;
2、理清思路,在做C语言的时候你可以单纯当作程序来看,至于FPGA的程序,建议把它看做实际的数字电路就好理解了,比如说一个module你就可以看出一个实际的器件(实际就是电路模块),而对于if-else则是判断电路,所以其需要一步步判断,case的话则相当于选通电路。有了这些概率再加以modelsim、questsim等仿真软件你就好理解了。其实,设计数字电路都是写verilog代码。仅能表达这么多,重在理解!
fpga和你之前学过的单片机之类的不一样的
labview里是有设定程序的运行时间这个说法
但是fpga没有,fpga的运行时间是根据你用的开发板的,现在比较常见的就是50MHZ的时钟,就是20ns一个clk。你可以通过分频来获得想要的时钟频率
当然你在仿真的时候可以直接改变某个输入的时钟频率,至于怎么改要看你用的是哪个软件了
FPGA可以通过PC上的开发工具进行编程,但也有一些FPGA板可以在板载运行时自我编程。 一般情况下,为了编程FPGA,需要将开发环境中编写的程序转换成比特流(bitstream)。转换后的这个比特流会包含可配置逻辑,时钟管理网、I/O管脚分配等信息。
可以使用PC上的开发环境来生成比特流文件、下载比特流并监控FPGA设备的工作状态。 这种方式的优点是灵活性很高,可以根据需要修改程序和重新编程。
此外,FPGA设备本身也可以在板上进行自我编程。例如,使用一个ROM存储比特流,在FPGA启动时读取ROM中的比特流,并把它加载到FPGA中,这种方式就不需要PC进行编程。
总之,FPGA可以通过多种方式进行编程,其中通过PC进行编程是一种常用而灵活的方式。
你买的fpga是基于sram的工艺,掉电程序确实会消失,只是在运行时程序存在sram中。JTAG一般用来调试,在通电的情况下把程序烧到sram中,断电又没了;AS是主动模式,fgpa在上电的时候主动从epcs芯片中读取数据放到sram中,这样也能工作了,每次上电那一瞬间fpag都会从epcs里读取数据然后正常工作,所以用起来像是烧到fpga里一样。PS就是被动模式,由一个外部的CPU给fpga输入程序,用的不太多。所以,你想“程序烧到内部”,应该是用AS模式把程序烧到EPCS里,每次上电的时候fpga都会从中读取数据然后正常运行的。看起来就像是烧到fpga里面一样。如果要“真的”烧到fpga里面,是有基于flash工艺的fpga,可以直接烧到fpga里面的flash里,也就不需要ecps芯片了,不过商业或者民用领域不太常用。
你买的这个板子也不是这种。
on-chip-memery就是fpga用内部的资源撘成一个ram或者rom。fpga里面都是ram,这个没问题。那rom其实也是一个ram,只是上电的时候fpga从epcs里面读取了固定的信息放到这个ram里,所以用起来就像rom一样。
不能。
越是FPGA靠前端步骤的时候提供的IP,他的二次开发性就越好,但是它的性能可能是个反的过程。同时也越贵,毕竟任何一个提供者也不想将自己的源码程序提供给他者。
以上就是关于我的FPGA能下载程序,但不运行,怎么回事啊全部的内容,包括:我的FPGA能下载程序,但不运行,怎么回事啊、您好,我是fpga的初学者,想请教一下 怎么设定一个verilog程序的运行时间呢、fpga只能通过pc编程吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)