DFX极大地提高了Xilinx FPGA芯片的灵活性

描述

DFX(DynamicFunction eXchange,动态功能切换,就是之前的部分可重配置)技术极大地提高了Xilinx FPGA芯片的灵活性。借助此技术,用户可以加载不同的应用,可以对已布署的系统进行部分升级,还可以有效降低功耗。

同时,DFX对于团队设计也是有益的:可以将设计分割为不同的部分由不同的工程师完成。然而,DFX对设计流程有严格的要求,这往往导致Vivado较长的编译时间,且使得多用户环境面临较大挑战。

这是因为该流程要求在编译动态区时需要提供完整的锁定的静态区image文件(.dcp文件)。若静态区设计中包含收费IP,对于动态区的工程师而言若其使用的环境下没有该IP的license,就会导致Vivado无法编译。Abstract Shell技术应运而生,很好地解决了这些技术痛点。

Abstract Shell是什么?标准的DFX流程需要多个步骤完成整个设计的布局布线。其中第一步需要对静态区+f1+g1进行编译。这里f1/f2/f3称为动态区RP(Reconfigurable Partition)对应的RM(Reconfigurable Module)。g1/g2/g3则是另外一个动态区RP对应的RM。

第一步的一个重要作用是生成静态区的image文件(布线后的网表文件.dcp)。在后续步骤对其他RM编译时需要用到此image文件,例如编译f2+g2的组合时,需要提供第一步的静态区image文件,从而形成静态区+f2+g2的组合。即使f2+g2是很小的模块,也必须提供完整的静态区image文件,且不允许用户对这个image文件做任何修改。

Abstract Shell流程打破了这一规则。本质上,Abstract Shell是静态区image文件的裁剪版,是后续对新的RM进行编译并生成相应的部分位流文件所需的静态区image文件最小版本。这个最小版本不仅包含了RP的接口。

还包含了RP的约束信息(Pblock)、布线信息、边界的时序信息,以确保RM不会使用已经被静态区消耗的资源。如下图所示,图中左侧显示了完整的静态区image文件,右侧则是Abstract Shell版本。两者的差异还是很明显的。

同时,Abstract Shell版本还去除了需要license的IP以及具有专利的设计部分。

Abstract Shell带来的好处

Abstract Shell版本的image文件比全版本的image文件小了很多,从而,编译新的RM时可有效缩减编译时间、降低内存开销。

对于包含多个RP的设计,可同时并行对所有RM进行编译,从而,加速设计进程。

对于多用户设计而言,设计的安全性得到了保证。因为大部分信息已经从Abstract Shell版本中移除。同时所有需要license的收费IP也不会被包含在Abstract Shell版本中,这意味着在Abstract Shell流程中不会再检查license信息。

综上所述,Abstract Shell的内容取决于两个因素:

RP的布局信息(由Pblock约束管理)

RP与静态区的连接关系

编辑:jq

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分