基于FPGA的實時無損數(shù)據(jù)壓縮系統(tǒng)設(shè)計
2 LZW算法的FPGA實現(xiàn)
CycloneII是Altera公司推出的新一代低成本系列FPGA器件,選用CycloneII系列的EP2C5T14418芯片來實現(xiàn)數(shù)據(jù)壓縮。這款芯片有4 608個邏輯單元、26塊M4K RAM塊、13個嵌入式乘法器、2個鎖相環(huán),用戶I/O引腳數(shù)目為89,完全能夠滿足設(shè)計對存儲器容量以及邏輯功能的要求,并且有一定余量,便于功能擴展。設(shè)計采用Quartus II為FPGA器件軟件開發(fā)平臺,用VHDL+原理圖的混合輸入方式進行層次化描述。系統(tǒng)的整體框圖如圖1所示。采集到的數(shù)據(jù)經(jīng)過壓縮后存儲到外部存儲器,再讀入計算機,用專用軟件對壓縮數(shù)據(jù)進行解壓還原,對原始數(shù)據(jù)進一步分析處理。本文引用地址:http://m.butianyuan.cn/article/191088.htm
整個設(shè)計的核心是壓縮算法的實現(xiàn)。FPGA設(shè)計過程中模塊劃分非常重要,好的模塊劃分能夠大大減少邏輯所消耗的面積并優(yōu)化功能的時序關(guān)鍵路徑。具體到LZW算法的FPGA實現(xiàn),劃分了10個大模塊,各個模塊相互之間的連接如圖2所示。圖中名字相同的箭頭,表示是連接在一起的。為了使框圖看起來比較清晰,圖中省略了一些控制信號的連接。狀態(tài)機控制模塊(M5)是整個壓縮模塊的時序控制中心,根據(jù)其他模塊反饋給它的信號,判斷壓縮的運行狀態(tài),從而控制其他各個模塊的運行。
評論