FPGA烧写文件的问题
<p></p><p>好像FPGA烧写sof文件可以调试。那用什么调试呢?JTAG吗?</p>
<p>我原来以为FPGA,CPLD只能烧写,不能调试呢。</p>
<p>我以为只可以仿真。</p>
<p>请问高手,是这样的吗?谢谢!</p>
<p>FPGA的速度在线调试能跑的过来吗?</p>
有的 xilinx自带ise可以仿真看时序。很多开发FPGA全要仿很多才流片的啊 quartus 加入signalTap就可以在线通过JTAG观察信号啦。当然,需要占用一定逻辑资源,速度也会有影响 <p>进一步加入In-System Memory Content Editor,就可以输入变量了,这样的调试更完整</p>
<p>我感觉好多都不懂</p>
<div class='shownolgin' data-isdigest='no'>一、下载到板子上却是没有反应 用modelsim仿真,看看功能是否正确,测试文件应该要尽可能多的考虑各种问题。建议下载到板子之前要先做功能仿真。二、当代码写完后,仿真通过后,下载到板子上却是没有反应,可以尝试以下方法 a)仔细的看看警告的信息,没有错误并不代表就是正确的,还要看看警告的信息, 1)对那些一直为低或者为高的要注意,看看你是否真的想让他一直为高,如果不是的话,就要去看看源代码,看看他为什么会一直为高或者低。 2)对于一些位宽不匹配的也要注意一下,看看是否是位宽定义不对。 3)模糊连接的就是信号没有定义,回到源码,去定义一下就可以了 4)产生了锁存器,如果不是自己想要的产生的就要去修改一下源码了 b)检测clk,rst_n,以及引脚绑定是否正确。这个可以看Pin Planner c)检测计数器位宽是否正确 d)查看RTL_view,看看框图是否是自己想要的,从宏观上检测连线等 e)使用Signal Tap 在线调试,看看具体的波形。 f)input / output是否正确,不单单是顶层需要检查,子模块的端口也要检查。 g)以上还不行就得考虑时序了,这个就得用到时序分析了,看看建立时间和保持时间是否符合要求。三、如果系统比较大的话,可以单独的测试各个小功能模块。总之不要心急,不要慌。写代码一定要小心,要规范,下载到板子前最好先仿真。端口输入输出要想清楚,位宽什么的要数清楚。</div><script>showreplylogin();</script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script> <div class='shownolgin' data-isdigest='no'>OliverH 发表于 2023-6-8 16:19
一、下载到板子上却是没有反应 用modelsim仿真,看看功能是否正确,测试文件应该要尽可能多的考虑 ...
<p>谢谢</p>
</div><script>showreplylogin();</script> <div class='shownolgin' data-isdigest='no'><p>quartus 可以用signalTap在线通过JTAG观察信号。</p>
</div><script>showreplylogin();</script> <div class='shownolgin' data-isdigest='no'>sunlei11223344 发表于 2023-6-10 20:20
quartus 可以用signalTap在线通过JTAG观察信号。
<p>谢谢!我已经学会了</p>
</div><script>showreplylogin();</script> <div class='shownolgin' data-isdigest='no'><p>Altera 用的是SingnalTapII进行在线调试,Xilinx用的是LogicDebug也可以在线调试。</p>
</div><script>showreplylogin();</script>
页:
[1]