基于FPGA的LZO實(shí)時無損壓縮的硬件設(shè)計
3 LZO壓縮系統(tǒng)集成與測試驗(yàn)證
本文引用地址:http://www.ex-cimer.com/article/273211.htm3.1 LZO壓縮系統(tǒng)硬件結(jié)構(gòu)
如圖4(A)為LZO壓縮系統(tǒng)SOPC硬件結(jié)構(gòu),內(nèi)層虛線表示FPGA,虛線內(nèi)的模塊有相應(yīng)的代碼或硬件電路構(gòu)成,外層虛線表示DE2開發(fā)板,開發(fā)板提供了相應(yīng)的資源。圖中:PC機(jī)通過下載線將待壓縮的數(shù)據(jù)傳送至DE2開發(fā)板上的SDRAM,數(shù)據(jù)經(jīng)壓縮后再經(jīng)下載線回傳至PC機(jī);Nios II處理器負(fù)責(zé)與用戶交互,對待壓縮數(shù)據(jù)進(jìn)行管理,控制整個SOPC的正常工作;JTAG-UART用于設(shè)計過程中的軟件和硬件調(diào)試;DMA控制器用于高速數(shù)據(jù)傳輸,它將片外SDRAM中的待壓縮數(shù)據(jù)傳送到LZO壓縮算法模塊,將LZO壓縮算法模塊中被壓縮后的數(shù)據(jù)傳送到片外SDRAM中;LZO壓縮算法模塊用于對用戶傳輸過來的數(shù)據(jù)進(jìn)行壓縮,它與片外SRAM進(jìn)行通訊;LCD控制器用于控制LCD的顯示,LCD可顯示LZO壓縮文件開始與結(jié)束,增加用戶交互的可視性,例如顯示待壓縮文件的大小,壓縮后的文件大小等;PIO控制LED指示燈的亮與滅,LED燈可用于指示LZO壓縮文件開始與結(jié)束,增加用戶交互的可視性;On-chip memory用于存儲系統(tǒng)啟動時的軟硬件配置等信息;SDRAM控制器用于控制SDRAM與系統(tǒng)數(shù)據(jù)的交換;SDRAM用于存儲指令和數(shù)據(jù);SRAM用于存儲LZO壓縮算法過程中產(chǎn)生的壓縮信息,在硬件設(shè)計中扮演字典的角色,采用片外SRAM的原因是考慮到FPGA片內(nèi)資源可能不夠使用;以上所有涉及到的模塊均采用Avalon總線規(guī)范進(jìn)行數(shù)據(jù)通信,它們共同掛載到數(shù)據(jù)總線上,Avalon總線具有自身的仲裁結(jié)構(gòu)、地址分析等功能,易于用戶集成開發(fā)。
3.2 開發(fā)板簡介
測試與驗(yàn)證平臺如圖4(B)所示的DE2開發(fā)板,該開發(fā)板上的核心芯片為Altera公司的Cyclone II EP2C35 FPGA。選擇該開發(fā)板作為測試平臺主要基于以下考慮:擁有足夠的片外存儲資源(SDRAM 8MB、SRAM 512KB);擁有較豐富的片上邏輯資源(35K LEs);擁有豐富的可用于調(diào)試的外設(shè)(LCD、7-segment-displays);支持 Nios II嵌入式軟核;成本較低。
3.3 測試結(jié)果及對比
針對LZO壓縮算法模塊和集成后的系統(tǒng)進(jìn)行板級測試,一方面驗(yàn)證算法模塊及集成后的系統(tǒng)的功能正確性,另一方面測試分析算法模塊及集成后系統(tǒng)的性能。測試內(nèi)容包括:數(shù)據(jù)壓縮率(壓縮后的文件大小/壓縮前的文件大小),數(shù)據(jù)壓縮速率(單個周期內(nèi)處理的字節(jié)數(shù))。
通過圖5(A)可知,壓縮率提升最大的是1.pdf文件,提升最小的是7.mp3文件(音頻文件已經(jīng)采用音頻壓縮算法壓縮過了),除去最大值和最小值后取平均值,則壓縮率提升為1.37%;通過圖5(B)不難發(fā)現(xiàn),壓縮速率提升最快的為2.txt文件,提升最慢的為10.dll文件,除去最大值和最小值后取平均值,則壓縮速率提升為4.81倍。
fpga相關(guān)文章:fpga是什么
網(wǎng)線測試儀相關(guān)文章:網(wǎng)線測試儀原理
評論