基于FPGA的改進(jìn)型分組交織器的設計與實(shí)現
2.1 FPGA選取及總體實(shí)現
交織器的設計采用Altera公司生產(chǎn)的Cyclone系列FPGA實(shí)現。根據系統的總體要求選用了一片EP1C3T100C8芯片,該系列芯片具有成本低、設計靈活、系統便于集成等優(yōu)點(diǎn)[4],因而在數字通信系統設計中得到了廣泛的應用。此外,Cyclone系列芯片內部具有嵌入式RAM存儲空間,可以實(shí)現較為復雜的邏輯功能,當用作片內存儲器時(shí),其存儲數據的寬度和深度可由設計人員設定。因而利用存儲器可以方便的設計出交織器,從而能夠大大減小電路的體積和復雜度。
FPGA實(shí)現交織器的原理框圖如圖1所示,從圖中可以看出交織器主要由讀、寫(xiě)地址序列發(fā)生器,雙端口RAM以及讀寫(xiě)使能控制幾部分組成。其中讀寫(xiě)使能控制主要用來(lái)產(chǎn)生雙端口RAM的讀寫(xiě)控制信號,并決定讀、寫(xiě)地址序列發(fā)生器何時(shí)啟動(dòng)工作。
FPGA實(shí)現交織器的原理框圖
2.2 讀地址序列產(chǎn)生算法及設計
2.2.1 交織器讀地址產(chǎn)生算法
交織器設計的關(guān)鍵部分在于“讀/寫(xiě)地址”的產(chǎn)生。設交織器的交織矩陣為n m矩陣,根據分組交織原理,輸入數據以0,1,2…,mn-1的順序地址方式寫(xiě)入存儲器,交織后輸出為:0,n,2n,…, (m-1)n,1,n+1,2n+1, …,(m-1)n+1,2,…,mn-1.
地址產(chǎn)生算法采用雙重循環(huán)的方式(算法流程如圖2所示),算法流程說(shuō)明如下:
算法流程圖
?、偈紫雀鶕诺缹?shí)際情況及數據幀長(cháng),選定合適的交織
將計數變量i,j清零;
?、趯τ嫈底兞縥進(jìn)行判斷:如果j<m,則j++;
如果j=m,則跳到第3步;
?、蹖τ嫈底兞縤進(jìn)行判斷:如果i<n,則i++并將j清零之后跳回第2步;如果i=n,則跳回第1步,開(kāi)始新一輪循環(huán)。
評論