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

技术分类: 电子/测试    作者:北京高鸿通信技术有限公司 朱愈  发表时间:2008-05-22

  在现今应用FPGA进行芯片电路设计的领域,已经使用HDL语言以及拥有强大功能的逻辑综合工具来进行设计。同时,高速电路也越来越被普遍使用,这一趋势使得芯片设计工程师把眼光越来越多的投向对后端布局布线的控制,因为对于高速设计,精细的后端控制是保障电路可靠运行的重要条件。在实践中,精细的后端控制也越来越显出它的重要性,同时要求设计者投入到这个方面的时间也越来越多。

  问题的提出

  实际的应用中,由于综合工具的介入,由它所输出的网表,有时候是非常难被设计者所理解的。这主要由三个方面的原因引起:1. 网表中除了在源程序中的寄存器能够被明显标志以外,其它的组合逻辑被映射(Map)到LUT中,但综合工具并没有提供一种很有效且有意义的方式进行对组合逻辑的命名,这使得设计者不容易找到组合逻辑的对应关系;2. 网表中元件(Component)之间的连接变得非常复杂;3. 由于综合工具的运用,会“优化”掉一些它认为是“冗余”的逻辑或增加一些它认为是“必要”的逻辑。

  上述因素直接影响到后端的布局布线控制。当然,设计者可

以在约束文件(UCF)中使用用户套(U_Set)、层次套(HU_Set)以及设置一个设计层次中元件相对的距离等措施来做一些后端控制。这样的设置可以很好的控制寄存器的布局和布线,但并不能够很好地完成对组合电路的布局布线控制。很明显,对于高速设计,这样的控制显然是非常必要的。这使得我们要找到一种更好的方法来控制组合电路。

  这个新方法应该满足以下两个条件。1. 对于高速设计,当通常控制方法难以达到要求的时候,这个新方法应该能够完全控制模块内部的布局布线;2. 用这个新方法建立的模块在上层调用的时候所采用的仿真模型应该很容易建立,并且很容易保证它和建立模块的功能上的一致性。满足这两个要求的方法就是建立宏模块,更准确的说是建立硬件宏模块,简称硬宏

  传统的建立硬宏的方式是在Xilinx提供的FPGA Editor中直接在FPGA内部来建立目标电路,然后把它存为一个宏文件。然后,在上层进行调用。这种方法的弊端是显而易见的。1. 要在这样一个“艰苦”的环境下建立一个硬宏是一件非常麻烦的事情。设计者必须进入到Slice内部,来控制一个Slice内部的器件选择和器件之间的连线,同时也正由于它非常的麻烦,导致了设计很容易出错;2. 这样设计出来的宏的功能验证非常繁琐;3. 要为这样的宏建立仿真模型也很麻烦,一般的方法是人为的直接编写一个行为仿真模型,然后在上层设计中调用这个仿真模型,然而要保证仿真模型和宏之间的一致性也是一件不太容易的事情。另外还有一种使用Xilinx的Foundation建立宏的方法,这个方法在进一步讨论部分将会提到它的不足之处。

  解决方法

  鉴于以上的原因,现在采用另外一个新的流程(图1)来设计并建立一个宏。  

解决方法

  第一步,为了使设计者不必进入到Slice里面进行电路的设计,而有一个很好的设计环境,使用Aldec公司的Active-HDL来进行宏内部电路的输入。在Active-HDL中,有一个库管理(Library Manager)功能,在这个库管理中,有很多子库,每个子库都有它不同的用途。在这些子库中,Schematic子库专门为Xilinx提供图形输入的。设计者调用这类库的元件来建立宏的内部电路。

  这一步需要注意:1.时钟进入芯片的时候,应该通过BUFGP进入。通过BUFGP把时钟引入全局时钟网络。BUFGP并不是一个物理上对应的元件,Xilinx只是为了方便设计者的调用,而把IBUFG和BUFG在表示上合成一个元件。但当用到DLL或其他时钟连接方式的时候,应该把BUFGP拆开,单独的使用IBUFG和BUFG;2.在各个PIN的位置,要加上相应电气参数的IBUF或OBUF;3. 强烈建议对SLICE里面的元件进行详细的了解;4.对于寄存器,寄存器和组合逻辑之间的连线,组合逻辑和组合逻辑之间的连线,都使用有意义的名字,以方便在下端工具中查看电路时,与上端电路图的对应;5.在设计的时候应该把关键路径记录下来,在下端检查的时候要防止出现组合电路竞争。

  第二步,直接对这个电路进行功能仿真。Schematic库中的元件可以直接支持基于门级的功能仿真。直接对这个电路图仿真可以从一开始就保证宏的功能正确性。Active-HDL提供了一个非常友好的仿真界面。它可以把仿真波形进行存储,而且,在以后的仿真中可以把第一次仿真所存储的输入向量波形当成激励。这样的做法大大地提高了效率,因为不用再为了一个小模块而专门编写它的测试基准(Test Bench)。

  第三步,由Active-HDL直接输

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

精彩专题

2008科技奥运面面观

2008年北京奥运会的成功不仅仅是奥运健儿们的成功,中国奥组委的成功,中国的成功,也是属于每个奥运会参与者的成功。而奥运盛事对新科技应用的拉动作用,对中国创新的拉动作用,也是全方位的…[ 详细内容 ]

浏览该文章的用户还看过

  • 文章
  • 论坛
  • 博客