PRGA: An Open-Source FPGA Research and Prototyping Framework

Ang Li, D. Wentzlaff
{"title":"PRGA: An Open-Source FPGA Research and Prototyping Framework","authors":"Ang Li, D. Wentzlaff","doi":"10.1145/3431920.3439294","DOIUrl":null,"url":null,"abstract":"Field Programmable Gate Arrays (FPGA) are being used in a fast-growing range of scenarios, and heterogeneous CPU-FPGA systems are being tapped as a possible way to mitigate the challenges posed by the end of Moore's Law. This growth in diverse use cases has fueled the need to customize FPGA architectures for particular applications or application domains. While high-level FPGA models can help explore the FPGA architecture space, as FPGAs move to more advanced design nodes, there is an increased need for low-level FPGA research and prototyping platforms that can be brought all the way to fabrication. This paper presents Princeton Reconfigurable Gate Array (PRGA), a highly customizable, scalable, and complete open-source framework for building custom FPGAs. The framework's core functions include generating synthesizable Verilog from user-specified FPGA architectures, and providing a complete, auto-generated, open-source CAD toolchain for the custom FPGAs. Developed in Python, PRGA provides a user-friendly API and supports use both as a standalone FPGA as well as an embedded FPGA. PRGA is a great platform for FPGA architecture research, FPGA configuration memory research, FPGA CAD tool research, and heterogeneous systems research. It is also a completely open-source framework for designers who need a free and customizable FPGA IP core. An FPGA designed with PRGA is placed and routed using standard cell libraries. The design is evaluated and compared to prior works, providing comparable performance and increased configurability.","PeriodicalId":386071,"journal":{"name":"The 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","volume":"38 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-02-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"15","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"The 2021 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3431920.3439294","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 15

Abstract

Field Programmable Gate Arrays (FPGA) are being used in a fast-growing range of scenarios, and heterogeneous CPU-FPGA systems are being tapped as a possible way to mitigate the challenges posed by the end of Moore's Law. This growth in diverse use cases has fueled the need to customize FPGA architectures for particular applications or application domains. While high-level FPGA models can help explore the FPGA architecture space, as FPGAs move to more advanced design nodes, there is an increased need for low-level FPGA research and prototyping platforms that can be brought all the way to fabrication. This paper presents Princeton Reconfigurable Gate Array (PRGA), a highly customizable, scalable, and complete open-source framework for building custom FPGAs. The framework's core functions include generating synthesizable Verilog from user-specified FPGA architectures, and providing a complete, auto-generated, open-source CAD toolchain for the custom FPGAs. Developed in Python, PRGA provides a user-friendly API and supports use both as a standalone FPGA as well as an embedded FPGA. PRGA is a great platform for FPGA architecture research, FPGA configuration memory research, FPGA CAD tool research, and heterogeneous systems research. It is also a completely open-source framework for designers who need a free and customizable FPGA IP core. An FPGA designed with PRGA is placed and routed using standard cell libraries. The design is evaluated and compared to prior works, providing comparable performance and increased configurability.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
PRGA:一个开源的FPGA研究和原型框架
现场可编程门阵列(FPGA)在快速增长的场景中得到了广泛应用,异构CPU-FPGA系统被认为是缓解摩尔定律终结带来的挑战的一种可能方法。不同用例的增长推动了为特定应用或应用领域定制FPGA架构的需求。虽然高级FPGA模型可以帮助探索FPGA架构空间,但随着FPGA向更高级的设计节点移动,对低级FPGA研究和原型平台的需求不断增加,这些平台可以一直带到制造阶段。本文介绍了普林斯顿可重构门阵列(PRGA),一个高度可定制的,可扩展的,完整的开源框架,用于构建定制fpga。该框架的核心功能包括从用户指定的FPGA架构生成可合成的Verilog,并为自定义FPGA提供完整的、自动生成的、开源的CAD工具链。用Python开发,PRGA提供了一个用户友好的API,并支持作为独立FPGA和嵌入式FPGA使用。PRGA是FPGA架构研究、FPGA组态存储器研究、FPGA CAD工具研究和异构系统研究的重要平台。对于需要免费和可定制的FPGA IP核的设计人员来说,它也是一个完全开源的框架。采用PRGA设计的FPGA采用标准单元库进行放置和路由。该设计经过评估并与之前的作品进行了比较,提供了相当的性能和增加的可配置性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Exploring PGAS Communication for Heterogeneous Clusters with FPGAs NASCENT: Near-Storage Acceleration of Database Sort on SmartSSD Global Is the New Local: FPGA Architecture at 5nm and Beyond Triggered Scheduling: Efficient Detection of Dataflow Network Idleness on Heterogeneous Systems Reconfigurable Acceleration of Short Read Mapping with Biological Consideration
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1