An FPGA-based Coprocessor for Hash Unit Acceleration

被引:2
作者
Fairouz, Abbas [1 ]
Khatri, Sunil P. [1 ]
机构
[1] Texas A&M Univ, Dept ECE, College Stn, TX 77843 USA
来源
2017 IEEE 35TH INTERNATIONAL CONFERENCE ON COMPUTER DESIGN (ICCD) | 2017年
关键词
D O I
10.1109/ICCD.2017.53
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In recent times, applications like web-based search, antivirus scanners, cloud computing, social media applications, and network applications are extremely common. The hash table is a heavily used data structure in such applications. Modern microprocessors have several special function units (SFUs) such as a floating point unit, a memory management unit, and a cryptography unit. However, hashing is typically performed in software, which reduces the performance of such applications. In this paper, we propose an FPGA-based implementation of a hash unit (a hash function and a hash table) in an FPGA. The FPGA-based hash unit is implemented as a coprocessor for a CPU. The CPU and the FPGA communicate through a PCI Express (PCIe) interface. The hash table in our hash unit is implemented as a content-addressable memory (CAM), to enhance the speed of hash operations. The hash unit (HU) coprocessor is tested in the context of virus checking application, when the hashing operation only requires membership checks. Our HU can be used in other hashing applications as well; we use virus checking as a representative application. Hashing operations are performed in a batch on the FPGA, to provide better utilization of the PCIe bus. We demonstrate a significant performance of up to 7.3x for our FPGAbased hash unit implementation compared to a software-based hashing implementation. This speedup is for the entire virus checking application (not just the hash lookup portion of the virus checking application).
引用
收藏
页码:301 / 304
页数:4
相关论文
共 23 条
[1]  
Baldwin Brian, 2010, IET Irish Signals and Systems Conference (ISSC 2010), P1, DOI 10.1049/cp.2010.0478
[2]   Evolution of Non-Cryptographic Hash Function Pairs for FPGA-Based Network Applications [J].
Dobai, Roland ;
Korenek, Jan .
2015 IEEE SYMPOSIUM SERIES ON COMPUTATIONAL INTELLIGENCE (IEEE SSCI), 2015, :1214-1219
[3]   Circuit Level Design of a Hardware Hash Unit for use in Modern Microprocessors [J].
Fairouz, Abbas ;
Abusultan, Monther ;
Khatri, Sunil P. .
PROCEEDINGS OF THE GREAT LAKES SYMPOSIUM ON VLSI 2017 (GLSVLSI' 17), 2017, :101-106
[4]  
Fairouz A, 2016, PR IEEE COMP DESIGN, P412, DOI 10.1109/ICCD.2016.7753316
[5]  
Hadi M, 2016, 2016 INTERNATIONAL ELECTRONICS SYMPOSIUM (IES), P180, DOI 10.1109/ELECSYM.2016.7860998
[6]  
Hanna M., 2009, P 5 ACM IEEE S ARCH, P153, DOI DOI 10.1145/1882486.1882521
[7]   Efficient Hashing technique based on Bloom filter for High-Speed Network [J].
He, Gang ;
Du, Yanzhe ;
Yu, Dechen .
2016 8TH INTERNATIONAL CONFERENCE ON INTELLIGENT HUMAN-MACHINE SYSTEMS AND CYBERNETICS (IHMSC), VOL. 1, 2016, :58-63
[8]  
Huang NF, 2011, INT WIREL COMMUN, P207, DOI 10.1109/IWCMC.2011.5982419
[9]  
Hudel C, 2013, WOR CONGR INTERNET, P112, DOI 10.1109/WorldCIS.2013.6751028
[10]  
Ioannou L, 2015, 2015 4TH MEDITERRANEAN CONFERENCE ON EMBEDDED COMPUTING (MECO), P68, DOI 10.1109/MECO.2015.7181868