电子元器件PDF资料大全-亿配芯城-什么是DFX技术?DFX设计一定要执行设计规则检查吗?
你的位置:电子元器件PDF资料大全-亿配芯城 > 芯片资讯 > 什么是DFX技术?DFX设计一定要执行设计规则检查吗?
什么是DFX技术?DFX设计一定要执行设计规则检查吗?
发布日期:2024-01-02 12:44     点击次数:109

什么是DFX技术?

DFX(Dynamic Function eXchange)的前身是PR(部分可重配置,Partial Reconfiguration)。使用DFX这个名字更能准确描述其功能,即在线切换设计中某个模块的功能。我们把这个模块对应的FPGA物理区域称之为一个可重配置分区(RP,ReconfigurablePartition)。同一个RP下可动态切换的模块称之为可重配置模块(RM,Reconfigurable Module)。一个RP下可以有一个或多个RM。每个RP要通过手工布局(画Pblock)的方式指定其在FPGA中的具体位置和大小(位置约束+面积约束)。

DFX对RM有什么要求?

首先,同一个RP下的所有RM必须保证端口一致,即输入/输出方向一致、位宽一致。即使某个RM中使用的端口在另一个RM中未被使用,也要在该RM中进行端口声明。其次,本身DFX设计对设计的层次化要求更高,对RM必须采用OOC综合方式,因此,要避免在RM中使用Parameter(Verilog)或Generic(VHDL)。最后,RM的顶层必须是RTL代码(可以是BD的wrapper文件),不能是IP或着网表文件,同时RM下不能包含EDIF或DCP等网表文件,但可以包含IP(.xci)文件。

需要对RP进行手工布局吗?

DFX设计要求必须对动态区也就是RP进行手工布局, EEPROM带电可擦可编程存储器芯片大全即通过Pblock来约束RP的位置和大小, 电子元器件PDF资料大全同时Pblock的形状尽可能为规则的矩形,芯片交易网IC交易网避免出现奇形怪状, ATMEGA系列ATMEL芯片COM这会对布局布线带来较大压力。对于静态区, CMOS图像传感器集成电路芯片则可以不用手工布局。如果对动态区没有做Pblock约束,那么会报如下错误:

23ed1a34-5812-11ee-939d-92fbcf53809c.png  DFX设计一定要执行设计规则检查吗?

相比于传统设计,DFX设计较为复杂,无论是从设计本身(RTL代码的层次化、约束)的角度看还是工具的使用角度看,电子元器件PDF资料大全都是如此。因此,在综合后,一定要执行设计规则检查,如下图所示。这样能尽早发现设计可能存在的问题。这里并不需要对所有规则都做检查,只需要检查DFX相关的规则即可。这样可以节省时间。

23fb7c5a-5812-11ee-939d-92fbcf53809c.png

可以对同一RP下不同的RM添加不同的约束吗?

假定RP1下有两个RM,分别为RM1和RM2,由于RM1和RM2本身功能并不相同,因此可能就存在一些约束层面的差异。例如:在RM1里需要对某些路径添加set_max_delay约束,在RM2里则需要对一些路径添加set_false_path约束。这就要求对不同的RM施加不同的约束。对此,Vivado是支持的,无论是Project模式还是Non-Project模式。具体操作可阅读这篇文章。

如何给每个RM添加约束?

BD可以用作动态区的顶层吗?

这个问题的本质是RM是否可以用BD创建。答案是肯定的。只是这时需要将BD设计转换为BDC(Block Design Container),勾选下图中的红色方框所示内容即表明该模块是一个RM。

24259422-5812-11ee-939d-92fbcf53809c.png除了上述几个问题之外,我们还需要从以下角度来看待DFX设计。

DFX设计本质上是FPGA内嵌入了FPGA,也就是说RP可视为一个内嵌的FPGA,那么这个RP的可用逻辑资源、布线资源和IO也就固定了。正因此,RP的Pblock的大小和形状对设计性能有较大影响,同时,RM的输出/输出端口个数应尽可能少,过多的IO个数大概率会导致布线拥塞。因此,同样的设计,使用DFX和不使用DFX可能会有不同的时序结果。层次化设计在DFX设计中也非常重要,将直接影响合动态区和静态区的分割。

审核编辑:刘清