本發(fā)明實(shí)施例涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法、裝置及系統(tǒng)。
背景技術(shù):
在云計(jì)算時(shí)代,所傳輸?shù)臄?shù)據(jù)量越來(lái)越大,海量數(shù)據(jù)的傳輸需要占用超大的寬帶,嚴(yán)重影響了云計(jì)算數(shù)據(jù)中心的網(wǎng)絡(luò)傳輸?shù)男阅?。為了提高網(wǎng)絡(luò)輸出的性能,需要采用無(wú)損壓縮算法對(duì)所傳輸?shù)暮A繑?shù)據(jù)進(jìn)行壓縮,并且還需要對(duì)壓縮后的文件進(jìn)行解壓縮處理。在海量數(shù)據(jù)傳輸過(guò)程中,提高對(duì)數(shù)據(jù)壓縮的速度和/或提高對(duì)壓縮后的數(shù)據(jù)進(jìn)行解壓縮的速度就可以提高網(wǎng)絡(luò)傳輸?shù)男阅堋?/p>
在對(duì)壓縮后的數(shù)據(jù)進(jìn)行解壓縮處理時(shí),現(xiàn)有技術(shù)中是采用cpu實(shí)現(xiàn)解壓縮算法的,但是,由于采用cpu實(shí)現(xiàn)解壓縮算法的過(guò)程中執(zhí)行的是串行計(jì)算,從而導(dǎo)致現(xiàn)有技術(shù)在實(shí)現(xiàn)解壓縮算法時(shí)存在解壓縮速度較慢、所需功耗較高的缺點(diǎn)。
因此,如何提供一種解決上述技術(shù)問(wèn)題的基于fpga異構(gòu)加速平臺(tái)的解壓縮方法、裝置及系統(tǒng)成為本領(lǐng)域的技術(shù)人員需要解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的目的是提供一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法、裝置及系統(tǒng),在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法,包括:
接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將所述第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);
依據(jù)所述主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)所述解壓縮算法對(duì)所述第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到解壓縮數(shù)據(jù);所述參數(shù)信息包括與所述第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;
將所述解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ),并返回完成信號(hào)至所述主機(jī)端處理器,以便所述主機(jī)端處理器接收所述完成信號(hào)后讀取所述解壓縮數(shù)據(jù)。
可選的,所述解壓縮算法為gzip解壓縮算法。
可選的,所述gzip解壓縮算法為采用opencl高級(jí)語(yǔ)言進(jìn)行描述的gzip解壓縮算法。
可選的,所述gzip解壓縮算法包括huffman解碼和lz77解壓縮;所述壓縮關(guān)系表為huffman碼表;
所述依據(jù)解壓縮算法對(duì)所述第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作的過(guò)程具體為:
s201:逐個(gè)字節(jié)讀取緩存中的所述第一待解壓縮數(shù)據(jù),并按照所述huffman碼表對(duì)每個(gè)所述字節(jié)進(jìn)行huffman解壓縮,得到第二待解壓縮數(shù)據(jù),并將所述第二待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);
s202:逐個(gè)字節(jié)讀取所述第二待解壓縮數(shù)據(jù),所述第二待解壓縮數(shù)據(jù)中的第一個(gè)字節(jié)為標(biāo)記位,判斷當(dāng)前字節(jié)是否為標(biāo)記位,如果是,進(jìn)入s203,否則,進(jìn)入s204;
s203:讀取后續(xù)字節(jié),并得到重復(fù)字節(jié)長(zhǎng)度和偏移量,根據(jù)所述重復(fù)字節(jié)長(zhǎng)度和所述偏移量進(jìn)行解壓縮,將解壓縮后的數(shù)據(jù)進(jìn)行存儲(chǔ);
s204:直接將讀取的數(shù)據(jù)作為解壓縮后的數(shù)據(jù)進(jìn)行存儲(chǔ);
s205:重復(fù)s202-s204,直至所述第二待解壓縮數(shù)據(jù)處理結(jié)束得到所述解壓縮數(shù)據(jù)。
可選的,所述將所述第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ)的過(guò)程具體為:將所述第一待解壓縮數(shù)據(jù)存儲(chǔ)至fpga異構(gòu)加速板卡的ddr內(nèi)存中。
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置,包括:
存儲(chǔ)模塊,用于接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將所述第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);還用于將解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);
解壓縮模塊,用于依據(jù)所述主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)所述解壓縮算法對(duì)所述第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到所述解壓縮數(shù)據(jù);所述參數(shù)信息包括與所述第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;
返回模塊,用于返回完成信號(hào)至所述主機(jī)端處理器,以便所述主機(jī)端處理器接收所述完成信號(hào)后讀取所述解壓縮數(shù)據(jù)。
可選的,所述存儲(chǔ)模塊為ddr存儲(chǔ)器。
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮系統(tǒng),包括主機(jī)端處理器及如上述所述的基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置。
可選的,所述主機(jī)端處理器通過(guò)pci-e接口與所述解壓縮裝置進(jìn)行信息交互。
本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法、裝置及系統(tǒng),包括:接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);依據(jù)主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)解壓縮算法對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到解壓縮數(shù)據(jù);參數(shù)信息包括與第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;將解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ),并返回完成信號(hào)至主機(jī)端處理器,以便主機(jī)端處理器接收完成信號(hào)后讀取解壓縮數(shù)據(jù)。
本發(fā)明通過(guò)調(diào)用fpga異構(gòu)加速平臺(tái)上的fpga硬件電路實(shí)現(xiàn)的解壓縮算法,以對(duì)主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮處理,能夠通過(guò)并行流水的方式提高算法的并行度,實(shí)現(xiàn)對(duì)解壓縮過(guò)程的加速。本發(fā)明在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)現(xiàn)有技術(shù)和實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例提供的一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法的流程示意圖;
圖2為本發(fā)明實(shí)施例提供的一種基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法、裝置及系統(tǒng),在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參照?qǐng)D1,圖1為本發(fā)明實(shí)施例提供的一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法的流程示意圖。該方法包括:
s10:接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);
s20:依據(jù)主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)解壓縮算法對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到解壓縮數(shù)據(jù);參數(shù)信息包括與第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;
s30:將解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ),并返回完成信號(hào)至主機(jī)端處理器,以便主機(jī)端處理器接收完成信號(hào)后讀取解壓縮數(shù)據(jù)。
需要說(shuō)明的是,在通過(guò)fpga(field-programmablegatearray,現(xiàn)場(chǎng)可編程門陣列)異構(gòu)加速平臺(tái)對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮處理之前,可以預(yù)先采用高級(jí)語(yǔ)言對(duì)解壓縮算法進(jìn)行描述,并生成在主機(jī)端處理器(cpu)上運(yùn)行的主機(jī)端程序以及面向fpga異構(gòu)加速平臺(tái)的kernel(操作系統(tǒng)內(nèi)核)程序。
具體的,可以預(yù)先通過(guò)主機(jī)端程序創(chuàng)建主機(jī)端與fpga異構(gòu)加速平臺(tái)進(jìn)行數(shù)據(jù)通信的緩存,并可以將該緩存存放至fpga異構(gòu)加速平臺(tái)中的ddr內(nèi)存中。fpga異構(gòu)加速平臺(tái)接收到主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù)后,將該第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ),具體可以存儲(chǔ)至相應(yīng)的緩存中;主機(jī)端處理器中的主機(jī)端程序可以通過(guò)將參數(shù)信息發(fā)送至fpga異構(gòu)加速平臺(tái)以進(jìn)一步設(shè)置fpga異構(gòu)加速平臺(tái)在運(yùn)行時(shí)所需要的參數(shù)信息;主機(jī)端處理器中的主機(jī)端程序發(fā)送啟動(dòng)指令以使fpga異構(gòu)加速平臺(tái)接收到該啟動(dòng)指令后依據(jù)該啟動(dòng)指令啟動(dòng)kernel程序,以調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)該解壓縮算法對(duì)待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,并將解壓縮后的解壓縮數(shù)據(jù)存儲(chǔ)至相應(yīng)的緩存中;當(dāng)將待解壓縮數(shù)據(jù)解壓完畢后可以向主機(jī)端處理器發(fā)送完成信號(hào),主機(jī)端處理器接收到完成信號(hào)后從fpga異構(gòu)加速平臺(tái)的緩存中讀取解壓縮數(shù)據(jù),完成對(duì)待解壓縮數(shù)據(jù)的解壓縮過(guò)程。
另外,本發(fā)明實(shí)施例中所提供的參數(shù)信息不僅可以包括與第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表,還可以包括其他的參數(shù)信息,本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
可選的,解壓縮算法為gzip解壓縮算法。
需要說(shuō)明的是,本發(fā)明實(shí)施例中的解壓縮算法可以為gzip解壓縮算法,gzip壓縮算法是最經(jīng)典的解壓縮算法,相應(yīng)的依據(jù)gzip壓縮算法進(jìn)行壓縮的數(shù)據(jù)在解壓縮時(shí)需要采用與gzip壓縮算法對(duì)應(yīng)的gzip解壓縮算法。當(dāng)然,本發(fā)明實(shí)施例中的解壓縮算法不僅限于為gzip解壓縮算法,還可以為其他的解壓縮算法,具體采用哪種解壓縮算法可以根據(jù)實(shí)際情況而定,本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
可選的,gzip解壓縮算法為采用opencl高級(jí)語(yǔ)言進(jìn)行描述的gzip解壓縮算法。
具體的,用于描述gzip解壓縮算法的高級(jí)語(yǔ)言為opencl(opencomputinglanguage,開(kāi)放式計(jì)算語(yǔ)言)高級(jí)語(yǔ)言。對(duì)于生成的在主機(jī)端處理器(cpu)上運(yùn)行的主機(jī)端程序以及面向fpga異構(gòu)加速平臺(tái)的kernel(操作系統(tǒng)內(nèi)核)程序,可以采用gcc編譯器對(duì)主機(jī)端程序進(jìn)行編譯,生成可以在cpu上執(zhí)行的可執(zhí)行文件;采用alterasdkforopencl高層次綜合工具對(duì)kernel程序文件進(jìn)行編譯,生成可以在fpga上運(yùn)行的aocx文件。通過(guò)alterasdkforopencl高層次綜合工具完成經(jīng)opencl高級(jí)語(yǔ)言描述的gzip解壓縮算法到fpga異構(gòu)加速平臺(tái)中的硬件執(zhí)行比特流的自動(dòng)化映射,完成對(duì)gzip解壓縮算法的異構(gòu)加速系統(tǒng)的自動(dòng)化部署過(guò)程,實(shí)現(xiàn)fpga異構(gòu)加速平臺(tái)對(duì)gzip解壓縮算法的硬件加速。
需要說(shuō)明的是,本發(fā)明實(shí)施例中采用opencl高級(jí)語(yǔ)言描述gzip解壓縮算法,在一定程度上降低將解壓縮算法部署到fpga異構(gòu)加速平臺(tái)的時(shí)間,降低了開(kāi)發(fā)的難度、縮短了研發(fā)周期,同時(shí)還可以提高gzip解壓縮算法的執(zhí)行性能。
另外,本發(fā)明實(shí)施例中不僅限于采用opencl高級(jí)語(yǔ)言描述gzip解壓縮算法,也可以采用opencl高級(jí)語(yǔ)言描述其他的解壓縮算法,具體的本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
可選的,gzip解壓縮算法可以包括huffman解碼和lz77解壓縮;壓縮關(guān)系表為huffman碼表;
依據(jù)解壓縮算法對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作的過(guò)程具體為:
s201:逐個(gè)字節(jié)讀取緩存中的第一待解壓縮數(shù)據(jù),并按照huffman碼表對(duì)每個(gè)字節(jié)進(jìn)行huffman解壓縮,得到第二待解壓縮數(shù)據(jù),并將第二待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);
s202:逐個(gè)字節(jié)讀取第二待解壓縮數(shù)據(jù),第二待解壓縮數(shù)據(jù)中的第一個(gè)字節(jié)為標(biāo)記位,判斷當(dāng)前字節(jié)是否為標(biāo)記位,如果是,進(jìn)入s203,否則,進(jìn)入s204;
s203:讀取后續(xù)字節(jié),并得到重復(fù)字節(jié)長(zhǎng)度和偏移量,根據(jù)重復(fù)字節(jié)長(zhǎng)度和偏移量進(jìn)行解壓縮,將解壓縮后的數(shù)據(jù)進(jìn)行存儲(chǔ);
s204:直接將讀取的數(shù)據(jù)作為解壓縮后的數(shù)據(jù)進(jìn)行存儲(chǔ);
s205:重復(fù)s202-s204,直至第二待解壓縮數(shù)據(jù)處理結(jié)束得到解壓縮數(shù)據(jù)。
具體的,如果對(duì)數(shù)據(jù)進(jìn)行壓縮時(shí)采用的是huffman壓縮,則gzip解壓縮算法應(yīng)該包括huffman解碼和lz77解壓縮兩個(gè)過(guò)程,本發(fā)明實(shí)施例中的壓縮關(guān)系表應(yīng)為huffman碼表,依據(jù)該huffman碼表即可實(shí)現(xiàn)對(duì)待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作。
當(dāng)然,本發(fā)明實(shí)施例中的壓縮關(guān)系表不僅限于為huffman碼表,也可以為其他的壓縮關(guān)系表,具體可以根據(jù)實(shí)際情況而定,本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
另外,具體可以將所述第一待解壓縮數(shù)據(jù)以及解壓縮后的解壓縮數(shù)據(jù)都存儲(chǔ)至fpga異構(gòu)加速板卡的ddr內(nèi)存中,當(dāng)然,不僅限于存儲(chǔ)至ddr內(nèi)存,也可以存儲(chǔ)至其他的存儲(chǔ)器中,本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮方法,包括:接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);依據(jù)主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用解壓縮算法,并依據(jù)解壓縮算法對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到解壓縮數(shù)據(jù);參數(shù)信息包括與第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;將解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ),并返回完成信號(hào)至主機(jī)端處理器,以便主機(jī)端處理器接收完成信號(hào)后讀取解壓縮數(shù)據(jù)。
本發(fā)明通過(guò)調(diào)用fpga異構(gòu)加速平臺(tái)上的fpga硬件電路實(shí)現(xiàn)解壓縮算法,以對(duì)主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮處理,能夠通過(guò)并行流水的方式提高算法的并行度,實(shí)現(xiàn)對(duì)解壓縮過(guò)程的加速。本發(fā)明在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。
請(qǐng)參照?qǐng)D2,圖2為本發(fā)明實(shí)施例提供的一種基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置的結(jié)構(gòu)示意圖。在上述實(shí)施例的基礎(chǔ)上:
該裝置包括:
存儲(chǔ)模塊1,用于依據(jù)主機(jī)端處理器發(fā)送的啟動(dòng)指令及參數(shù)信息調(diào)用fpga硬件電路實(shí)現(xiàn)的解壓縮算法,并依據(jù)接收主機(jī)端處理器發(fā)送的第一待解壓縮數(shù)據(jù),并將第一待解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);還用于將解壓縮數(shù)據(jù)進(jìn)行存儲(chǔ);參數(shù)信息包括與第一待解壓縮數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)信息和壓縮關(guān)系表;
解壓縮模塊2,用于采用解壓縮算法對(duì)第一待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,得到解壓縮數(shù)據(jù);
返回模塊3,用于返回完成信號(hào)至主機(jī)端處理器,以便主機(jī)端處理器接收完成信號(hào)后讀取解壓縮數(shù)據(jù)。
可選的,存儲(chǔ)模塊為ddr存儲(chǔ)器。
具體的,本發(fā)明實(shí)施例中的存儲(chǔ)模塊可以為ddr存儲(chǔ)器,具體可以采用ddr3存儲(chǔ)器,當(dāng)然也可以采用其他型號(hào)的ddr存儲(chǔ)器,本發(fā)明實(shí)施例對(duì)此不做特殊的限定。
需要說(shuō)明的是,fpga異構(gòu)加速平臺(tái)包括fpga芯片和存儲(chǔ)器,并且fpga芯片設(shè)置有用于實(shí)現(xiàn)解壓縮算法的fpga硬件電路,在cpu上運(yùn)行主機(jī)端程序可以啟動(dòng)fpga異構(gòu)加速平臺(tái),調(diào)用實(shí)現(xiàn)解壓縮算法的fpga硬件電路對(duì)待解壓縮數(shù)據(jù)進(jìn)行解壓縮操作,以實(shí)現(xiàn)對(duì)該fpga硬件電路的硬件加速。
本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置,在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。另外,對(duì)于本發(fā)明實(shí)施例中涉及到的基于fpga異構(gòu)加速平臺(tái)的解壓縮方法的具體介紹請(qǐng)參照上述實(shí)施例,本申請(qǐng)?jiān)诖瞬辉儋樖觥?/p>
在上述實(shí)施例的基礎(chǔ)上,本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮系統(tǒng),包括主機(jī)端處理器及如上所述的解壓縮裝置。
可選的,主機(jī)端處理器通過(guò)pci-e接口與上述解壓縮裝置進(jìn)行信息交互。
需要說(shuō)明的是,本發(fā)明實(shí)施例中的cpu與基于fpga異構(gòu)加速平臺(tái)的解壓縮裝置之間采用pci-e接口連接,進(jìn)行信息交互。當(dāng)然,不僅限于通過(guò)pci-e接口進(jìn)行信息交互,也可以通過(guò)其他的接口進(jìn)行信息交互,具體采用哪種接口可以根據(jù)實(shí)際情況而定,本發(fā)明實(shí)施例對(duì)此不做特殊的限定,能實(shí)現(xiàn)本發(fā)明實(shí)施例的目的即可。
本發(fā)明實(shí)施例提供了一種基于fpga異構(gòu)加速平臺(tái)的解壓縮系統(tǒng),在使用過(guò)程中提高了解壓縮的速度、降低了解壓縮過(guò)程中所需的功耗。另外,對(duì)于本發(fā)明實(shí)施例中涉及到的基于fpga異構(gòu)加速平臺(tái)的解壓縮方法的具體介紹請(qǐng)參照上述方法實(shí)施例,本申請(qǐng)?jiān)诖瞬辉儋樖觥?/p>
還需要說(shuō)明的是,在本說(shuō)明書(shū)中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其他實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。