完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我遇到了Spartan 3A配置的麻烦。
在我的设计中,外部CPU涉及FPGA配置,从属串行模式。 将所有配置文件写入FPGA后,从FPGA监控DONE为高电平,然后CPU开始访问FPGA。 但是响应CPU得到的结果是不正确的,直到大约1ms过去。 DONE信号是否表示配置完成且FPGA可以正常工作? 为什么我们需要额外的时间才能使用它。 BTW:DONE设置为等待DCM LOCK,并且在GTS(全局三态)和GWE(全局写入启用)释放后,在启动序列的第六阶段发送DONE。 另一个问题是,正如所说的那样“因为Xilinx FPGA已经在配置后的已知状态下启动,所以全局复位实际上并不是必需的。” 在启动时间序列中,专用的全局复位GSR将复位FPGA中的所有寄存器。 众所周知,GSR是不可见的,不能在用户的VHDL代码中使用。 那么我们如何在VHDL代码中分配寄存器信号的起始值。 我的意思是在正常情况下我们使用这样的重置信号: 过程(clk,rst) 开始 如果rst ='1'那么 regs |
|
相关推荐
2个回答
|
|
第一个问题可能是由于锁定DCM所需的时间。
如果您关闭等待DCM锁定, 然后,一旦你发布GWE,设计应该会运行。 至于你的第二个问题,配置后的INIT值为零时为零 代码中没有初始化。 如果您有同步或异步重置 代码中的值,例如在您发布异步重置的代码段中 “1010”然后配置后的值将匹配该值,除非您有 以两种方式之一显式分配INIT值: 1)使用INIT属性(参见约束手册) 2)在信号声明中应用初始值(参见XST手册) 在这种情况下,您可以将INIT值设置为您想要的任何值,这将是值 在配置时。 它不必匹配异步或 同步复位值。 问候, 的Gabor - Gabor 以上来自于谷歌翻译 以下为原文 The first issue is likely due to the time it takes to lock the DCM. If you turn off Wait to DCM Lock, then the design should come up running as soon as you release GWE. As to your second question, the INIT value after configuration is zero when there is no initialization in your code. If you have a synchronous or asynchronous reset value in the code, for example in the snippet you posted an asynchronous reset to "1010" then the value after configuration will match that value unless you have explicitly assigned an INIT value in one of two ways: 1) using the INIT attribute (see the constraints manual) 2) by applying an initial value in the signal declaration (see the XST manual) In this case you can set the INIT value to anything you want, which will be the value at the time of configuration. It does not have to match the asynchronous or synchronous reset value. Regards, Gabor -- Gabor |
|
|
|
要添加到Gabor的观点,如果在您的设计中实例化了STARTUP_SPARTAN3A原语,则可以访问GSR。
有关详细信息,请参阅Spartan-3A库指南,第272页: http://www.xilinx.com/support/documentation/sw_manuals/xilinx12_3/spartan3a_hdl.pdf 上述post引用的初始化值将是特定元素在重置后的值,无论该重置是本地的,还是来自配置后的GSR或来自用户。 希望这可以帮助 -Eric 以上来自于谷歌翻译 以下为原文 To add to Gabor's point, you do have access to the GSR using the STARTUP_SPARTAN3A primitive if it is instantiated in your design. See the Spartan-3A Libraries Guide, page 272 for more details: http://www.xilinx.com/support/documentation/sw_manuals/xilinx12_3/spartan3a_hdl.pdf The initialization value which the above post references will be the value that the specific element comes out of reset in, regardless if that reset is local, from the GSR after config or from the user. Hope this helps -Eric |
|
|
|
只有小组成员才能发言,加入小组>>
2380 浏览 7 评论
2797 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2262 浏览 9 评论
3335 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2428 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
755浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
543浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
365浏览 1评论
1961浏览 0评论
681浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 15:28 , Processed in 1.313791 second(s), Total 49, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号