爱板网论坛

查看: 600|回复: 0

[资料] FPGA的重构方式

[复制链接]

主题

好友

6873

积分

状元

  • TA的每日心情
    郁闷
    4 小时前
  • 签到天数: 621 天

    连续签到: 42 天

    [LV.9]以坛为家II

    发表于 2017-12-17 21:57:34 |显示全部楼层
    根据重构的方法不同,FPGA的重构可分为静态重构和动态重构两种,前者是指在系统空闲期间进行在线编程,即断开先前的电路功能后,重新下载存贮器中不同的目标数据来改变目标系统逻辑功能。常规SRAM FPGA都可实现静态重构。后者则是指在系统实时运行中对FPGA芯片进行动态配置(即在改变电路功能的同时仍然保持电路的工作状态),使其全部或部分逻辑资源实现在系统的高速的功能变换和时分复用。动态重构技术需要特定的基于SRAM或FLASH结构的新型FPGA的支持。随着其产品和技术的相对成熟,动态重构FPGA的设计理论和设计方法已经逐渐成为新的研究热点。

      根据实现重构的面积不同,可重构FPGA又可以分为全局重构和局部重构。

      (1)全局重构:对FPGA器件或系统能且只能进行全部的重新配置,在配置过程中,计算的中间结果必须取出存放在额外的存储区,直到新的配置功能全部下载完为止。重构前后电路相互独立,没有关联。通常,可以给FPGA串连一个EPROM来存储配置数据,实现前后功能的转化。常规基于SRAM的FPGA的静态重构均为全局重构。

      (2)局部重构:对重构器件或系统的一部分进行重新配置,重构过程中,其余部分的工作状态不受影响。这种重构方式减小了重构范围和单元数目,FPGA的重构时间大大缩短,占有相当的速度优势。应用FPGA动态部分重构功能使硬件设计更加灵活,可用于硬件的远程升级、系统容错和演化硬件以及通信平台设计等。动态部分重构可以通过两种方法实现:基于模块化的设计方法(Module-Based Partial Reconfiguration)和基于差别的设计方法(Difference-Based Partial Reconfiguration)。

      显然,动态重构比静态重构优越,因为静态重构将整个内部的逻辑单元都重新配置,此时FPGA被挂起不能执行正常操作,重构完成后才能恢复工作,影响系统实时性。动态重构在系统运行中能实时全部或部分重构,且不中断正常逻辑输出,因而更有灵活性和高速度。

      大多数FPGA都是基于LUT查找表结构,它们只适用于静态重构,通过向LUT一次下载全部配置数据而设定FPGA的逻辑功能。根据FPGA的容量不同、配置方式不同,全部重构时间为几ms到几秒不等。

      对于常规FPGA来说,重载方式多种多样。在系统调试阶段,一般是通过JTAG电缆从主机下载配置数据,调试结束后正式运行时一般是将配置数据放在串行PROM中,上电时向FPGA加载逻辑。但对于系统实际运行还有一些更快更灵活的配置方式,可以缩短FPGA的重构时间,实现灵活重构。如ALTERA公司的FPGA可采用串行被动(PS)方式配置,对于2万逻辑门规模的EP1K10配置数据为20KB,在30MHz的配置时钟下只要5ms即可全部重构。这个速度虽然比不上动态配置的FPGA,但也比JTAG下载、串行PROM配置方式快多了,姑且称之为准动态重构(bogus dynamic restructuring)。而且在许多系统中FPGA并不时刻都在工作,而是以一定的重复频率执行任务,只要在FPGA的空闲时间来得及对其进行重新配置,那么在系统宏观的角度就可以认为是动态配置的,即实时重构。

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

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

    手机版|爱板网

    GMT+8, 2018-6-22 04:01 , Processed in 0.074192 second(s), 12 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-5   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001056号

    Powered by Discuz!

    返回顶部