lucien_1986的个人空间 https://blog.eetop.cn/lucien [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Pack Into IOBs

已有 7678 次阅读| 2012-4-12 17:53 |个人分类:学习心得

 
     为了保证FPGA输入输出接口的时序,一般会要求将输入管脚首先打一拍再使用,输出接口也要打一拍再输出FPGA。将信号打一拍的方法是将信号通过一次寄存器,而且必须在IOB里面的寄存器中打一拍。因为,从FPGA的PAD到IOB里面的寄存器是有专用布线资源的,而到内部其他寄存器没有专用的布线资源。使用IOB里面的寄存器可以保证每次实现的结果都一样,使用内部其他寄存器就无法保证每次用的都是同一个寄存器且采用同样的布线。同时,为了使用输入输出延迟功能(Input / Output delay),也必须要求信号使用IOB里面的寄存器。
        为了让I/O使用IOB里面的寄存器,需要设定综合与MAP(对应于Xilinx的ISE工具)的相关属性。默认情况下,综合过程和MAP过程都是根据软件的分析自动判断是否要将I/O 的寄存器放入 IOBs中。如果需要强制指定,必须将Pack I/O Registe Into IOBs的默认属性修改成需要的值。对于XST,可以将I/O Pack Registers Into IOB属性由默认的Auto 修改为Yes或No。对于Snyplify,可以在Verilog代码的模块声明中添加属性:/* synthesis syn_useioff = 1 */。具体应用如下 module  module_a(a,b,c) /* synthesis syn_useioff = 1 */ ; 。MAP过程Pack I/O Registe Into IOBs属性可以设置成:Off,For Inputs Only,For Output Only,For Input and Output。需要特别注意的是,如果只在MAP过程中要求将I/O放入IOBs中,而在综合过程中没有强制要求,最终实现时I/O不一样会Pack Into IOBs。必须保证综合和MAP同时对该属性进行设定。
 

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 3

    粉丝
  • 0

    好友
  • 0

    获赞
  • 32

    评论
  • 927

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 20:31 , Processed in 0.014844 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部