高级搜索

基于配置模式匹配和层次化映射结构的高效FPGA码流生成系统研究

涂开辉 黄志洪 侯峥嵘 杨海钢

引用本文: 涂开辉, 黄志洪, 侯峥嵘, 杨海钢. 基于配置模式匹配和层次化映射结构的高效FPGA码流生成系统研究[J]. 电子与信息学报, doi: 10.11999/JEIT190143 shu
Citation:  Kaihui TU, Zhihong HUANG, Zhengrong HOU, Haigang YANG. Research on Efficient FPGA Bitstream Generation System Based on Mode Matching and Hierarchical Mapping[J]. Journal of Electronics and Information Technology, doi: 10.11999/JEIT190143 shu

基于配置模式匹配和层次化映射结构的高效FPGA码流生成系统研究

    作者简介: 涂开辉: 男,1984年生,博士生,助理研究员,研究方向为大规模集成电路设计自动化;
    黄志洪: 男,1984年生,博士,助理研究员,研究方向为可编程逻辑芯片设计技术;
    侯峥嵘: 男,1994年生,研究方向为大规模集成电路设计自动化;
    杨海钢: 男,1960年生,博士生导师,研究员,研究方向为可编程逻辑芯片设计技术,大规模集成电路设计自动化;
    通讯作者: 杨海钢, yanghg@mail.ie.ac.cn
  • 基金项目: 国家自然科学基金(61876172, 61704173),北京市科技重大专项课题(Z171100000117019)

摘要: 码流生成在FPGA电子设计自动化(EDA)流程中,提供应用电路在芯片上物理实现所需的精准配置信息。现代FPGA的发展一方面呈现出器件规模及码流容量越来越大的趋势,另一方面越来越多可变阵列大小的嵌入式应用(例如eFPGA)又要求码流生成器具备更高的配置效率以及更精简的可重构数据库。针对码流生成时间增加的问题和阵列规模任意缩放的需求,该文提出一种模式匹配和层次映射的码流生成方法,即对编程单元按配置模式进行分类建模,在配置时按模型进行调用匹配,并采用了层次化的码流映射策略,使得数据库可随阵列排布调整动态生成。该方法可有效应对FPGA嵌入式应用中码流容量的增大以及阵列规模可变所带来的挑战,同时相比平面化的建模及映射方法,码流配置的时间复杂度由O(n)降低为O(lgn)

English

    1. [1]

      王俊, 郑彤, 雷鹏, 等. 深度学习在雷达中的研究综述[J]. 雷达学报, 2018, 7(4): 395–411. doi: 10.12000/JR18040
      WANG Jun, ZHENG Tong, LEI Peng, et al. Study on deep learning in radar[J]. Journal of Radars, 2018, 7(4): 395–411. doi: 10.12000/JR18040

    2. [2]

      IŠA R and MATOUŠEK J. A novel architecture for LZSS compression of configuration bitstreams within FPGA[C]. Proceedings of the IEEE 20th International Symposium on Design and Diagnostics of Electronic Circuits & Systems, Dresden, Germany, 2017: 171–176.

    3. [3]

      Intel Inc. UGS10CONFIG-Intel stratix 10 configuration user guide[EB/OL]. https://www.intel.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/stratix-10/ug-s10-config.pdf, 2018.

    4. [4]

      ABDELLATIF K M, CHOTIN-AVOT R, and MEHREZ H. Protecting FPGA bitstreams using authenticated encryption[C]. Proceedings of the IEEE 11th International New Circuits and Systems Conference, Paris, France, 2013: 1–4.

    5. [5]

      Xilinx Inc. UG909-Vivado design suite user guide partial reconfiguration[OL]. https://www.xilinx.com/support/documentation/sw_manuals/xilinx2016_1/ug909-vivado-partial-reconfiguration.pdf, 2018.

    6. [6]

      PATTERSON C and GUCCIONE S A. JBits TM design abstractions[C]. Proceedings of the 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, Rohnert Park, USA, 2001: 251–252.

    7. [7]

      POETTER A, HUNTER J, PATTERSON C, et al. JHDLBits: The merging of two worlds[C]. Proceedings of the 14th International Conference Field Programmable Logic and Application, Leuven, Belgium, 2004: 414–423.

    8. [8]

      PHAM K D, HORTA E, and KOCH D. BITMAN: A tool and API for FPGA bitstream manipulations[C]. Proceedings of 2017 Design, Automation & Test in Europe Conference & Exhibition, Lausanne, Switzerland, 2017: 894–897.

    9. [9]

      STEINER N, WOOD A, SHOJAEI H, et al. Torc: Towards an open-source tool flow[C]. Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays, Monterey, USA, 2011: 41–44.

    10. [10]

      TOWNSEND T and NELSON B. Vivado design interface: An export/import capability for vivado FPGA designs[C]. Proceedings of the 27th International Conference on Field Programmable Logic and Applications, Ghent, Belgium, 2017: 1–7.

    11. [11]

      NOTE J B and RANNAUD É. From the bitstream to the netlist[C]. Proceedings of the 16th International ACM/SIGDA Symposium on Field Programmable Gate Arrays, Monterey, USA, 2008: 264.

    12. [12]

      BENZ F, SEFFRIN A, and HUSS S A. Bil: A tool-chain for bitstream reverse-engineering[C]. Proceedings of the 22nd International Conference on Field Programmable Logic and Applications, Oslo, Norway, 2012: 735–738.

    13. [13]

      DING Zheng, WU Qiang, ZHANG Yizhong, et al. Deriving an NCD file from an FPGA bitstream: Methodology, architecture and evaluation[J]. Microprocessors and Microsystems, 2013, 37(3): 299–312. doi: 10.1016/j.micpro.2012.12.003

    14. [14]

      ROSE J, LUU J, YU Chiwai, et al. The VTR project: Architecture and CAD for FPGAs from verilog to routing[C]. Proceedings of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays, Monterey, USA, 2012: 77–86.

    15. [15]

      HUNG E, ESLAMI F, and WILTON S J E. Escaping the academic sandbox: Realizing VPR circuits on Xilinx devices[C]. Proceedings of the IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines, Seattle, USA, 2013: 45–52.

    16. [16]

      HUNG E. Mind the (synthesis) gap: Examining where academic FPGA tools lag behind industry[C]. Proceedings of the 25th International Conference on Field Programmable Logic and Applications, London, UK, 2015: 1–4.

    17. [17]

      SONI R K, STEINER N, and FRENCH M. Open-source bitstream generation[C]. Proceedings of the IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines, Seattle, USA, 2013: 105–112.

    18. [18]

      李智华, 黄娟, 李威, 等. 一种SRAM型FPGA互连资源的位流码配置方法[J]. 太赫兹科学与电子信息学报, 2016, 14(1): 136–142. doi: 10.11805/TKYDA201601.0136
      LI Zhihua, HUANG Juan, LI Wei, et al. An automatic approach for bitstream configuration of routing resource in SRAM FPGA[J]. Journal of Terahertz Science and Electronic Information Technology, 2016, 14(1): 136–142. doi: 10.11805/TKYDA201601.0136

    1. [1]

      王巍周凯利王伊昌王广袁军. 基于快速滤波算法的卷积神经网络加速器设计. 电子与信息学报, doi: 10.11999/JEIT190037

    2. [2]

      谢星黄新明孙玲韩赛飞. 大整数乘法器的FPGA设计与实现. 电子与信息学报, doi: 10.11999/JEIT180836

    3. [3]

      秦华标曹钦平. 基于FPGA的卷积神经网络硬件加速器设计. 电子与信息学报, doi: 10.11999/JEIT190058

    4. [4]

      张艳陈建华唐猛. 多层中继网络上的分布式LT码. 电子与信息学报, doi: 10.11999/JEIT180804

    5. [5]

      臧鸿雁黄慧芳柴宏玉. 一类2次多项式混沌系统的均匀化方法研究. 电子与信息学报, doi: 10.11999/JEIT180735

    6. [6]

      赵耿李红马英杰秦晓宏. 离散动力系统无退化-配置N个正Lyapunov指数. 电子与信息学报, doi: 10.11999/JEIT180925

    7. [7]

      梁春燕袁文浩李艳玲夏斌孙文珠. 基于判别邻域嵌入算法的说话人识别. 电子与信息学报, doi: 10.11999/JEIT180761

    8. [8]

      王莉曹一凡杜高明刘冠宇王晓蕾张多利. 一种低延迟的3维高效视频编码中深度建模模式编码器. 电子与信息学报, doi: 10.11999/JEIT180798

    9. [9]

      周杨张天骐. 同/异步短码DS-CDMA信号伪码序列及信息序列盲估计. 电子与信息学报, doi: 10.11999/JEIT180812

    10. [10]

      钱亚冠卢红波纪守领周武杰吴淑慧云本胜陶祥兴雷景生. 基于粒子群优化的对抗样本生成算法. 电子与信息学报, doi: 10.11999/JEIT180777

    11. [11]

      杨文哲杨宏雷王学运张升康赵环杨军冯克明. 高精度光纤时间频率一体化传递. 电子与信息学报, doi: 10.11999/JEIT180807

    12. [12]

      侯志强王帅廖秀峰余旺盛王姣尧陈传华. 基于样本质量估计的空间正则化自适应相关滤波视觉跟踪. 电子与信息学报, doi: 10.11999/JEIT180921

    13. [13]

      周武杰潘婷顾鹏笠翟治年. 基于金字塔池化网络的道路场景深度估计方法. 电子与信息学报, doi: 10.11999/JEIT180957

    14. [14]

      冯霞唐菱卢敏. 基于禁忌搜索算法的机场外航服务人员班型生成研究. 电子与信息学报, doi: 10.11999/JEIT181196

    15. [15]

      葛芸马琳江顺亮叶发茂. 基于高层特征图组合及池化的高分辨率遥感图像检索. 电子与信息学报, doi: 10.11999/JEIT190017

    16. [16]

      代美玲刘周斌郭少勇邵苏杰邱雪松. 基于终端能耗和系统时延最小化的边缘计算卸载及资源分配机制. 电子与信息学报, doi: 10.11999/JEIT180970

    17. [17]

      蒋莹王冰切韩俊何翼. 基于分布式压缩感知的宽带欠定信号DOA估计. 电子与信息学报, doi: 10.11999/JEIT180723

    18. [18]

      陆潞高梅国. 分布式阵列雷达基线位置和相位误差的卫星标校方法. 电子与信息学报, doi: 10.11999/JEIT181152

    19. [19]

      王琼罗亚洁李思舫. 基于分段循环冗余校验的极化码自适应连续取消列表译码算法. 电子与信息学报, doi: 10.11999/JEIT180716

    20. [20]

      吴昭军张立民钟兆根于柯远杨芸丞. 低信噪比下归零Turbo码码长及其帧同步识别. 电子与信息学报, doi: 10.11999/JEIT180903

  • 图 1  配置码位结构CBS示意

    图 2  码流生成流程

    图 3  电路设计数据库-器件结构数据库层次化对应关系

    图 4  公式配置模型示例

    图 5  DVD测试模型示意

    图 6  DSD测试模型示意

    图 7  码流配置时间随器件模型的变化关系(m=5)

    表 1  芯片相关数据库大小(kB)

    器件模型*config_modestile/primitive_first_addressesinitial_bitstreambitstream_format_info数据库总大小
    器件a(3 M Gates)51210/152262765
    器件b(10 M Gates)51232/152262787
    器件c(30 M Gates)51299/152262854
    器件d(50 M Gates)512158/152262913
    器件e(70 M Gates)512210/152262965
    器件f(90 M Gates)512268/1522621023
    *注:器件模型均属一个系列,该系列包含10种复用单元
    下载: 导出CSV

    表 2  不同电路设计、相同芯片规模(同系列)下的码流配置时间

    电路设计需要配置的
    码位总数(bit)
    码流配置
    时间(s)
    电路1(用满25 k Gates器件资源)5.8 k0.016
    电路2(用满1 M Gates器件资源)250.4 k0.682
    电路3(用满10 M Gates器件资源)2.3 M6.360
    电路4(用满30 M Gates器件资源)7.0 M19.419
    电路5(用满50 M Gates器件资源)11.5 M30.334
    电路6(用满80 M Gates器件资源)18.4 M50.886
    下载: 导出CSV

    表 3  相同电路设计、不同芯片规模(同系列)下的码流配置时间

    器件模型映射层数l全器件的码位总数n(bit)平面化映射码流(传统方法)
    配置时间t1(s)
    层次化映射码流(本文方法)
    配置时间t2(s)
    器件1(25.8 k Gates)312.5 k1.40.013
    器件2(130 k Gates)462.5 k7.00.013
    器件3(645 k Gates)5312.5 k34.10.014
    器件4(3.1 M Gates)61.5 M155.20.015
    器件5(16.1 M Gates)77.8 M820.20.015
    器件6(80.6 M Gates)839 M4066.00.016
    下载: 导出CSV

    表 4  本方法和其他码流生成工具的特性比较

    Torc[9]RapidSmith2[10]文献[18]本文方法
    数据库通用性仅针对Xilinx器件仅针对Xilinx器件通用通用
    码流生成层次Frame级Frame级Bit级Bit级
    涵盖资源全芯片资源全芯片资源仅互连资源全芯片资源
    Bit级映射方法平面化层次化
    下载: 导出CSV
  • 加载中
图(7)表(4)
计量
  • PDF下载量:  7
  • 文章访问数:  174
  • HTML全文浏览量:  126
  • 引证文献数: 0
文章相关
  • 通讯作者:  杨海钢, yanghg@mail.ie.ac.cn
  • 收稿日期:  2019-03-12
  • 录用日期:  2019-05-30
  • 网络出版日期:  2019-06-04
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

/

返回文章