FPGA Implementation of Fast Binary Multiplication Based on Customized Basic Cells

Abd Al-Rahman Al-Nounou, O. Al-Khaleel, Fadi Obeidat, M. Al-khaleel
{"title":"FPGA Implementation of Fast Binary Multiplication Based on Customized Basic Cells","authors":"Abd Al-Rahman Al-Nounou, O. Al-Khaleel, Fadi Obeidat, M. Al-khaleel","doi":"10.3897/jucs.86282","DOIUrl":null,"url":null,"abstract":"Multiplication is considered one of the most time-consuming and a key operation in wide variety of embedded applications. Speeding up this operation has a significant impact on the overall performance of these applications. A vast number of multiplication approaches are found in the literature where the goal is always to achieve a higher performance. One of these approaches relies on using smaller multiplier blocks which are built based on direct Boolean algebra equations to build large multipliers. In this work, we present a methodology for designing binary multipliers where different sizes customized partial products generation (CPPG) cells are designed and used as smaller building blocks. The sizes of the designed CPPG cells are 2×2, 3×3, 4×4, 5×5, and 6×6. We use these cells to build 8×8, 16×16, 32×32, 64×64, and 128×128 binary multipliers. All of the CPPG cells and the binary multipliers are described using the VHDL language, tested, and implemented using XILINX ISE 14.6 tools targeting different FPGA families. The implementation results show that the best performance is achieved when cell 3×3 is used and Virtex-7 FPGA is targeted. The binary multipliers that are designed using the proposed CPPG cells achieve better performance when compared with the binary multipliers presented in the literature. As an application that utilizes the proposed multiplier, a Multiply-Accumulate (MAC) unit is designed and implemented in Spartan-3E. The implementation results of the MAC unit demonstrate the effectiveness of the proposed multiplier.","PeriodicalId":14652,"journal":{"name":"J. Univers. Comput. Sci.","volume":"50 1","pages":"1030-1057"},"PeriodicalIF":0.0000,"publicationDate":"2022-10-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"J. Univers. Comput. Sci.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.3897/jucs.86282","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Multiplication is considered one of the most time-consuming and a key operation in wide variety of embedded applications. Speeding up this operation has a significant impact on the overall performance of these applications. A vast number of multiplication approaches are found in the literature where the goal is always to achieve a higher performance. One of these approaches relies on using smaller multiplier blocks which are built based on direct Boolean algebra equations to build large multipliers. In this work, we present a methodology for designing binary multipliers where different sizes customized partial products generation (CPPG) cells are designed and used as smaller building blocks. The sizes of the designed CPPG cells are 2×2, 3×3, 4×4, 5×5, and 6×6. We use these cells to build 8×8, 16×16, 32×32, 64×64, and 128×128 binary multipliers. All of the CPPG cells and the binary multipliers are described using the VHDL language, tested, and implemented using XILINX ISE 14.6 tools targeting different FPGA families. The implementation results show that the best performance is achieved when cell 3×3 is used and Virtex-7 FPGA is targeted. The binary multipliers that are designed using the proposed CPPG cells achieve better performance when compared with the binary multipliers presented in the literature. As an application that utilizes the proposed multiplier, a Multiply-Accumulate (MAC) unit is designed and implemented in Spartan-3E. The implementation results of the MAC unit demonstrate the effectiveness of the proposed multiplier.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于自定义基本单元的快速二进制乘法的FPGA实现
乘法运算被认为是各种嵌入式应用程序中最耗时、最关键的运算之一。加速此操作对这些应用程序的整体性能有重大影响。在文献中发现了大量的乘法方法,其目标始终是实现更高的性能。其中一种方法依赖于使用基于直接布尔代数方程的较小乘数块来构建大型乘数。在这项工作中,我们提出了一种设计二进制乘法器的方法,其中不同尺寸的定制部分产品生成(CPPG)单元被设计并用作较小的构建块。设计的CPPG细胞尺寸分别为2×2、3×3、4×4、5×5、6×6。我们使用这些单元格构建8×8、16×16、32×32、64×64和128×128二进制乘数器。所有CPPG单元和二进制乘法器都使用VHDL语言进行描述,并使用针对不同FPGA系列的XILINX ISE 14.6工具进行测试和实现。实现结果表明,当单元为3×3,以Virtex-7 FPGA为目标时,可以获得最佳性能。与文献中提出的二进制乘法器相比,使用所提出的CPPG细胞设计的二进制乘法器具有更好的性能。作为一种利用所提出的乘法器的应用,在Spartan-3E中设计并实现了一个乘法累加(MAC)单元。MAC单元的实现结果证明了所提乘法器的有效性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Sentiment Analysis of Code-Mixed Text: A Comprehensive Review Mobile Handoff with 6LoWPAN Neighbour Discovery Auxiliary Communication A Proposal of Naturalistic Software Development Method Recommendation of Machine Learning Techniques for Software Effort Estimation using Multi-Criteria Decision Making Transfer Learning with EfficientNetV2S for Automatic Face Shape Classification
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1