本發(fā)明涉及算法技術(shù)領(lǐng)域,具體為一種基于FPGA的算法的加速卡。
背景技術(shù):
目前,計(jì)算機(jī)網(wǎng)絡(luò)發(fā)展非常迅速,各政府部門和企事業(yè)單位,都大量通過網(wǎng)絡(luò)進(jìn)行信息查詢、郵件收發(fā)、數(shù)據(jù)共享等各種辦公操作,由于計(jì)算機(jī)網(wǎng)絡(luò)通信具有信息量大、信息更新速度快、信息處理和利用方便等優(yōu)點(diǎn),使得計(jì)算機(jī)網(wǎng)絡(luò)通信已逐漸成為各個(gè)單位日常工作不可或缺的一部份,整個(gè)社會(huì)已步入網(wǎng)絡(luò)信息化時(shí)代。
網(wǎng)絡(luò)的飛速發(fā)展給人們帶來方便的同時(shí),也帶了一系列的新問題,一方面,網(wǎng)絡(luò)的飛速發(fā)展給企業(yè)和用戶帶來了便利,但同時(shí)也對(duì)網(wǎng)絡(luò)安全管理提出了嚴(yán)峻的挑戰(zhàn)。局域網(wǎng)內(nèi)部以及局域網(wǎng)與互聯(lián)網(wǎng)之間不斷增長的數(shù)據(jù)通信,使網(wǎng)絡(luò)及網(wǎng)絡(luò)設(shè)備在負(fù)載、工作效率以及安全性方面都承受著巨大的壓力,網(wǎng)絡(luò)時(shí)斷時(shí)續(xù)、網(wǎng)絡(luò)速度慢、網(wǎng)絡(luò)遭受攻擊等故障一直制約著網(wǎng)絡(luò)的正常運(yùn)行,另一方面,隨著Internet技術(shù)和應(yīng)用的飛速發(fā)展,各種新的應(yīng)用不斷涌現(xiàn),造成網(wǎng)絡(luò)流量不斷增加,在這種情況下,網(wǎng)絡(luò)管理設(shè)備既要有更加強(qiáng)大的報(bào)文分析和流量分析功能,也需要對(duì)經(jīng)過本設(shè)備的流量進(jìn)行高效地轉(zhuǎn)發(fā)處理。因此,需要有強(qiáng)大的CPU處理能力來同時(shí)保證分析工作和轉(zhuǎn)發(fā)工作迅速完成。而網(wǎng)絡(luò)服務(wù)器CPU處理能力的限制往往使得轉(zhuǎn)發(fā)工作擠占了分析工作所需的資源,產(chǎn)品應(yīng)用開發(fā)人員不得不在性能和功能的平衡取舍問題上花費(fèi)很多的精力,網(wǎng)絡(luò)性能問題甚至成了制約功能進(jìn)一步豐富完善的瓶頸。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)以上問題,本發(fā)明提供了一種基于FPGA的算法加速卡,基于硬件的網(wǎng)絡(luò)加速技術(shù)是采用硬件來實(shí)現(xiàn)字符串的匹配,以達(dá)到快速數(shù)據(jù)包處理的目的,這種結(jié)構(gòu)使原本由服務(wù)器CPU和分析軟件處理的工作下放到專用的硬件設(shè)備來執(zhí)行,既加快了數(shù)據(jù)報(bào)文的分類處理速度,也使CPU從疲于應(yīng)對(duì)高速數(shù)據(jù)的流量處理中解脫,可以有效解決背景技術(shù)中的問題。
為實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:
一種基于FPGA的算法加速卡,包括一塊FPGA核心處理器和一個(gè)轉(zhuǎn)發(fā)模塊,所述FPGA核心處理器內(nèi)設(shè)置有時(shí)鐘異步處理模塊與寄存器配置模塊;
所述FPGA核心處理器外圍設(shè)置有查找模塊和高速緩存模塊,所述查找模塊通過高速緩存模塊連接到FPGA核心處理器的數(shù)據(jù)接口(10);
所述FPGA核心處理器的表面設(shè)置有一個(gè)數(shù)據(jù)接口(7),所述數(shù)據(jù)接口(7)通過設(shè)置在FPGA核心處理器外的復(fù)位模塊連接到與PCIE接口模塊連接;
所述FPGA核心處理器的數(shù)據(jù)輸出端連接到網(wǎng)絡(luò)接口模塊,所述網(wǎng)絡(luò)接口模塊通過接口控制模塊連接到轉(zhuǎn)發(fā)模塊,轉(zhuǎn)發(fā)模塊與FPGA核心處理器進(jìn)行數(shù)據(jù)連接;
所述轉(zhuǎn)發(fā)模塊的輸出端與數(shù)據(jù)采集卡相連接,數(shù)據(jù)采集卡通過存儲(chǔ)器與數(shù)據(jù)庫相連接;
所述FPGA核心處理器與查找模塊分別連接到電源模塊。
在上述技術(shù)方案中,所述FPGA核心處理器的數(shù)據(jù)接口(10)為RS232串行數(shù)據(jù)接口。
在上述技術(shù)方案中,所述PCIE接口模塊內(nèi)設(shè)置有程序下載電路。
在上述技術(shù)方案中,所述網(wǎng)絡(luò)接口模塊的輸出端還連接有網(wǎng)絡(luò)適配器,網(wǎng)絡(luò)適配器的輸出端為對(duì)外連接接口。
在上述技術(shù)方案中,數(shù)據(jù)庫的輸出端還連接有圖形處理單元,且圖形處理單元的輸出端為對(duì)外連接接口。
在上述技術(shù)方案中,所述復(fù)位模塊通過時(shí)鐘控制模塊與驅(qū)動(dòng)器相連接。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:該基于FPGA的算法加速卡,通過設(shè)置FPGA核心處理器配置PCIE接口模塊,使得PCIE接口可以通過金手指直接與主機(jī)或者服務(wù)器的CPU主板相連。CPU根據(jù)首包的信息、安全策略和路由信息等通過PCIE總線向FPGA核心下達(dá)處理表,F(xiàn)PGA根據(jù)處理表的匹配規(guī)則來執(zhí)行轉(zhuǎn)發(fā)等功能。FPGA根據(jù)匹配的結(jié)果可以通過DMA(直接存儲(chǔ)器訪問)的方式經(jīng)PCIE總線將所需數(shù)據(jù)直接送至服務(wù)器,實(shí)現(xiàn)線速采樣,網(wǎng)絡(luò)安全加速卡硬件平臺(tái)的設(shè)計(jì),是在充分吸收了網(wǎng)絡(luò)安全隔離新技術(shù)和硬件規(guī)則匹配技術(shù)等基礎(chǔ)上完成,通過專用通信設(shè)備、自定義協(xié)議格式、并配合應(yīng)用層數(shù)據(jù)提取,滿足了新一代網(wǎng)絡(luò)隔離技術(shù)的需求,采用硬件規(guī)則匹配技術(shù)加快了數(shù)據(jù)處理速度。
附圖說明
圖1為本發(fā)明結(jié)構(gòu)示意圖;
圖中:1-FPGA核心處理器;2-時(shí)鐘異步處理模塊;3-寄存器配置模塊;4-電源模塊;5-查找模塊;6-高速緩存模塊;7-數(shù)據(jù)接口;8-復(fù)位模塊;9-配置下載電路;10-RS232數(shù)據(jù)接口;11-PCIE接口模塊;12-轉(zhuǎn)發(fā)模塊;13-網(wǎng)絡(luò)接口模塊;14-RJ45/SFP接口控制模塊;15-數(shù)據(jù)采集卡;16-存儲(chǔ)器;17-數(shù)據(jù)庫;18-網(wǎng)絡(luò)適配器;19-上位機(jī);20-圖形處理單元;21-顯示器;22-時(shí)鐘控制模塊;23-驅(qū)動(dòng)器。
具體實(shí)施方式
下面結(jié)合附圖,對(duì)本發(fā)明作詳細(xì)的說明。
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示,本發(fā)明提供一種技術(shù)方案:一種基于FPGA的算法加速卡,包括FPGA核心處理器1和轉(zhuǎn)發(fā)模塊12,所述FPGA核心處理器1包括時(shí)鐘異步處理模塊2與寄存器配置模塊3,且FPGA核心處理器1的輸入端與電源模塊4相連接,電源模塊4的輸出端與查找模塊5和高速緩存模塊6的輸入端相連接,所述高速緩存模塊6通過RS232數(shù)據(jù)接口10與FPGA核心處理器1相連接,所述FPGA核心處理器1的表面上還設(shè)置有數(shù)據(jù)接口7,且數(shù)據(jù)接口7通過復(fù)位模塊8與PCIE接口模塊11相連接,PCIE接口模塊11還配置有可以下載程序代碼的配置下載電路9,所述復(fù)位模塊8的通過時(shí)鐘控制模塊22與驅(qū)動(dòng)器23相連接,所述FPGA核心處理器1的輸出端連接有網(wǎng)絡(luò)接口模塊13,本設(shè)計(jì)的網(wǎng)絡(luò)接口模塊13采用S558-5999-Q2F設(shè)計(jì),其中端接電阻的設(shè)計(jì)很好地抑制了高速信號(hào)的反射,經(jīng)測試達(dá)到了很好的耦合標(biāo)準(zhǔn),增強(qiáng)了系統(tǒng)的整體精度和性能,所述網(wǎng)絡(luò)接口模塊13的輸出端還連接有網(wǎng)絡(luò)適配器18,網(wǎng)絡(luò)適配器18的輸出端與上位機(jī)19相連接,且所述網(wǎng)絡(luò)接口模塊13連接有RJ45/SFP接口控制模塊14,所述RJ45/SFP接口控制模塊14通過轉(zhuǎn)發(fā)模塊12與FPGA核心處理器1相連接,所述轉(zhuǎn)發(fā)模塊12的輸出端與數(shù)據(jù)采集卡15相連接,數(shù)據(jù)采集卡15通過存儲(chǔ)器16與數(shù)據(jù)庫17相連接,所述數(shù)據(jù)庫17的輸出端還連接有圖形處理單元20,且圖形處理單元20的輸出端與顯示器21相連接,本系統(tǒng)采用DDR2-SDRAM模組來實(shí)現(xiàn)數(shù)據(jù)的高速存儲(chǔ)和讀出,設(shè)計(jì)采用Micron公司的MT16HTF12864H(I)-1GB模組可以很好的滿足系統(tǒng)的要求。
網(wǎng)絡(luò)接口模塊是外部網(wǎng)絡(luò)和內(nèi)部核心處理單元的橋梁。它的設(shè)計(jì)包括PHY設(shè)計(jì)和MAC接口設(shè)計(jì),該網(wǎng)絡(luò)安全加速卡支持RJ45接口和SFP接口,單個(gè)接口速率達(dá)到1000Mbps,其中RJ45接口還能向下兼容10Mbps和100Mbps網(wǎng)絡(luò)速率。根據(jù)網(wǎng)絡(luò)接口模塊的性能需求,PHY芯片采用Marvell公司的88E1145芯片,所述88E1145集成了4端口的以太網(wǎng)收發(fā)器,支持從10M到1000M的速率要求。每個(gè)端口都具有相同的功能卻能獨(dú)立工作。且內(nèi)部設(shè)計(jì)了獨(dú)立的MDC/MDIO接口。通過該接口可以對(duì)PHY進(jìn)行靈活的邏輯地址設(shè)置和工作方式的設(shè)置??梢造`活配置4個(gè)端口是并行工作或由一個(gè)MDC串行控制。
本發(fā)明的工作原理:該基于FPGA的算法加速卡,通過設(shè)置FPGA核心處理器配置PCIE接口模塊,使得PCIE接口可以通過金手指直接與主機(jī)或者服務(wù)器的CPU主板相連。CPU根據(jù)首包的信息、安全策略和路由信息等通過PCIE總線向FPGA核心下達(dá)處理表,F(xiàn)PGA根據(jù)處理表的匹配規(guī)則來執(zhí)行轉(zhuǎn)發(fā)等功能。FPGA根據(jù)匹配的結(jié)果可以通過DMA(直接存儲(chǔ)器訪問)的方式經(jīng)PCIE總線將所需數(shù)據(jù)直接送至服務(wù)器,實(shí)現(xiàn)線速采樣,網(wǎng)絡(luò)安全加速卡硬件平臺(tái)的設(shè)計(jì),是在充分吸收了網(wǎng)絡(luò)安全隔離新技術(shù)和硬件規(guī)則匹配技術(shù)等基礎(chǔ)上完成,通過專用通信設(shè)備、自定義協(xié)議格式、并配合應(yīng)用層數(shù)據(jù)提取,滿足了新一代網(wǎng)絡(luò)隔離技術(shù)的需求,采用硬件規(guī)則匹配技術(shù)加快了數(shù)據(jù)處理速度。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。