FPGA应用设计中一种崭新的硬宏开发流程

技术分类: 电子/测试    作者:北京高鸿通信技术有限公司 朱愈  发表时间:2008-05-22
出EDIF网表,在这个网表中记录了宏的内部电路信息。Active-HDL可以把图形转换成三种语言形式的网表,VHDL、Verilog HDL和EDIF。而其他的上层输入工具一般只能输出两种,VHDL和Verilog HDL,如Mentor Graphics的HDL Design Series。选择Diagram菜单中的Set Target HDL选项来实现这一语言的切换。请注意,Set Target HDL选项只有在图形输入方式的时候才出现在Diagram菜单中。

  第四步,把Active-HDL产生的这个EDIF网表直接交给Xilinx的后端工具进行处理。这样,就绕开了综合工具的干预,使得精细的下端控制成为可能。值得注意的是,由于绕开了综合工具,很多综合工具原来要做的工作就必须由设计者自己去做。这就是为什么第一步提到要添加相应电气参数的IBUF和OBUF以及时钟引脚要添加全局时钟缓冲器(BUFG)的原因。如果在第一步中忘记了这一点,会直接导致后端的映射工具把设计中的电路全部清空,然后报告出错。后端工具只需要进行三个步骤的处理就可以了,即翻译、映射以及布局和布线,其他的处理都不需

要。处理完后会生成一些关键的文件,分别是project_name.ngd、project_name.ncd和map.ncd。

  第五步,把处理得到的project_name.ncd文件拿到FPGA Editor中进行宏的生成。注意在使用FPGA Editor打开这个文件的时候,应该选择Read Write模式进入。进入之后,首先应该做的工作就是把设计中所有的IBUF和OBUF全部删除。这可以在LIST窗口来进行。在删除的同时,与这些IBUF和OBUF连接的连线也被同步删除。这样一来,就只剩下了功能部分。值得一提的是,在第四步中映射对电路进行处理的时候会完成把组合电路映射到LUT的功能。但由于在第一步中对组合电路和组合电路之间的连线使用了有意义的名称命名,使得在这一步中要找到原始电路图中的对应并不难。这一点是使用综合工具流程所不能实现的。设计者通过名字的对应,就找到在第一步中记录的关键路径,通过使用Delay功能来显示线路延迟,从而判断电路是否可以工作。如果不行,使用FPGA Editor中的相应工具来进行路径的重新布线,这个布线可以使用人工布线。在这一步中严禁进行逻辑修改,而只允许进行布线修改。具体怎么使用FPGA Editor可以参考FPGA Editor用户指南。当完成了修改过后,把NCD文件另存为NMC文件,这样就生成了需要的硬宏

  第六步,生成宏的逻辑仿真模型。再回到Active-HDL中,打开宏的电路图,使用Set Target HDL的语言切换功能,把图形转成Verilog HDL网表或是VHDL网表。这个网表就可以作为宏的仿真模型。因为这个网表是由标准HDL形成,那么它可以在任何HDL仿真器中调用,如ModelSim和VCS等。

  至此整个流程的介绍全部完成。

  进一步的讨论

  关于流程的替代方案。事实上,整个流程似乎用Xilinx的Foundation也能完成。但是,有一个关键的步骤Foundation是不能完成的,那就是Foundation不能根据电路图输出基于Verilog HDL和VHDL的仿真模型,这样直接影响了宏的仿真通用性。另外,Foundation自己提供的仿真环境又相当不完善。

  关于仿真模型和宏的功能一致性。由于仿真模型和宏的网表都来自于一个电路图,这样从上层保证了两者的一致性。另外,在第五步中,严禁进行逻辑修改,又进一步的保证两者的功能一致性,排除第二次建模的可能,从而把人为的错误减到最低。

  关于完全控制后端布局布线。在FPGA Editor中,设计者可以根据上下层名称对应来确定关键路径,从而进行完全人为的布局布线控制,这就是在第一步中使用有意义名称的原因所在。

  很明显的一点,这个流程不应该作为一个大项目的主要开发流程,因为,这样人力消耗太多,同时也失去了使用HDL语言和开发综合工具的意义。比较合适的一种用法是把它使用在关键路径模块和常规控制不能达到预期要求的模块上,因为它可以提供对后端的完全人为的控制,排除工具对设计的干扰。将基于HDL语言的设计方法与这种建立并使用硬宏的方法相结合,对基于FPGA的高速电路设计大有裨益。

1】【2
收藏此页】【  】【打印】【关闭

精彩专题

超值订阅2009年度DESIGN NEWS China杂志

DESIGN NEWS China杂志向国内读者介绍国际上最先进的工业技术与设计,涉及电子/测试、运动控制/自动化、创新材料、工程软件/硬件、汽车设计等领域,现在订阅可获更多优惠…[ 详细内容 ]

浏览该文章的用户还看过

  • 文章
  • 论坛
  • 博客