完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好:
我们使用的是v7 690t。 当我们使用相同的.mcs文件编程完成FPGA时,某些板在单热状态机中出现不可能的状态,例如,单热状态为0。 编程五板,一板都有错误。 如果我们再次编程错误板,则可能不会出现此错误。 有些身体经历这样的问题吗? |
|
相关推荐
8个回答
|
|
这些问题通常是由状态机的异步输入引起的,这些输入没有与状态机的时钟域正确同步。
另一个可能的原因是用作时钟的逻辑信号,没有适当的低偏移缓冲和分配。 换句话说,您的问题可能是由于糟糕的设计实践造成的。 没有看到你的代码,这只不过是我的一个疯狂的猜测。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 |
|
|
|
HiBob:
生成Sys_clk和Sys_rstn代码如下,Sys_clk = user_clk,Sys_rstn = ~user_reset; FDCP#(。INIT(1'b1))user_reset_i(.Q(user_reset),. D(user_reset_c |(~user_lnk_up)),. C(user_clk),. CLR(1'b0),. PRE(1'b0 )); 单热FSM状态是 assign port_st_shift = pkt_st [0]& ((port_st [0]& ~P0_rx_valid)|(port_st [1]& ~P1_rx_valid))| (pkt_st [1]&((port_st [0]& P0_rx_eop& P0_rx_ready)|(port_st [1]& P1_rx_eop& P1_rx_ready))); 始终@(posedge Sys_clk或negedge Sys_rstn)开始if(Sys_rstn == 1'b0)begin port_st [1:0] end else start port_st [1:0] |
|
|
|
我必须承认,当我看到源代码与设计师的风格大相径庭时,我深感怀疑。
我怀疑你没有编写代码,也许你不应该理解代码。 奇怪的是,您的代码片段包括一个实例化为基元(FDCP)的寄存器,以及一个用更传统的Verilog构造实例化的寄存器。 我提出的问题涉及时钟缓冲和分配,以及异步输入到同步状态机的可能性。 您发布的代码无法回答其中任何一个问题。 没有描述时钟sys_clk如何被缓冲和分配(例如,是否使用了BUFG?)。 没有描述port_st寄存器的逻辑输入的性质(这些逻辑信号是使用sys_clk时钟注册的吗?)。 鉴于代码实例化了2位port_st寄存器,我很惊讶综合工具没有将这个2位寄存器优化为单个1位寄存器,因为看起来很明显port_st [1]始终是port_st的否定[ 0]。 也许这种优化确实发生了?FDCP寄存器与port_st寄存器没有明显的联系。 是否缺少连接,或者在您的帖子中包含FDCP的其他原因? - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 |
|
|
|
嗨鲍勃:
我只写了这段代码的第二部分。我不明白使用FDCP时出了什么问题。 我们使用xilinx pcie ipcore,Sys_clk是pcie ipcore的输出。 所有的信号都在Sys_clk注册。 我认为综合工具没有将这个2位寄存器优化为单个1位寄存器,因为其他电路板中的相同.mcs文件运行良好。 为什么有些电路板不能正常工作? |
|
|
|
根据您目前发布的内容,我对您没有任何帮助。
如果问题与边际时序或异步信号处理不当有关,那么逻辑模拟对问题原因的排序几乎没有帮助。 建议你开始一个新线程,它应该引起你的问题的新关注,并提供尽可能多的细节。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 |
|
|
|
>总是@(posedge Sys_clk或negedge Sys_rstn)
应该很少使用异步复位,并且我永远不会将它们与同步FSM一起使用,因为在断言和解除断言之间总会存在时序偏差,这可能会导致失败。 尝试从您的设计中删除它。 ------您是否尝试在Google中输入问题? 如果没有,你应该在发布之前。太多结果? 尝试添加网站:www.xilinx.com |
|
|
|
应该很少使用异步复位,并且我永远不会将它们与同步FSM一起使用,因为在断言和解除断言之间总会存在时序偏差,这可能会导致失败。
同意,应该没有任何异步信号应用于同步FSM。 这包括用作复位的信号和用作逻辑项的信号。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 |
|
|
|
应该很少使用异步复位,并且我永远不会将它们与同步FSM一起使用,因为在断言和解除断言之间总会存在时序偏差,这可能会导致失败。
尝试从您的设计中删除它 我喜欢异步重置,因为一个人不需要时钟来使它们工作。 我也同样关心他们; 幸运的是,有一种方法可以吃蛋糕,也可以吃。 可以实现一个异步复位同步电路,它可以让复位的断言异步发生但是同步断言,这同时允许两个特征。 由于解除断言是同步的,因此定时器可以验证时钟到RN移除路径(类似于clk到D输入设置路径)。 - 如果提供的信息有用,请将答案标记为“接受为解决方案”。给予您认为有用且回复的帖子。 |
|
|
|
只有小组成员才能发言,加入小组>>
2416 浏览 7 评论
2821 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2292 浏览 9 评论
3372 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2459 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1143浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
581浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
447浏览 1评论
2002浏览 0评论
726浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 15:01 , Processed in 1.398080 second(s), Total 90, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号