久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久
[Full]
完整版
[Rss]
訂閱
[Xml]
無圖版
[Xhtml]
無圖版
Rss
& SiteMap
曙海教育集團論壇
http://www.bjzhda.cn
曙海教育集團論壇
◎
曙海教育集團論壇
→
FPGA技術討論區
→
WCDMA速率適配算法的FPGA實現
共1 條記錄, 每頁顯示 10 條, 頁簽:
[1]
[瀏覽完整版]
標題:WCDMA速率適配算法的FPGA實現
1樓
wangxinxin
發表于:2010-11-12 13:25:56
以下內容含腳本,或可能導致頁面不正常的代碼
<strong>引言</strong> 隨著因特網爆炸性的增長以及各種<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%CE%DE%CF%DF">無線</span><span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D2%B5%CE%F1">業務</span>需求的增加,傳統的無線<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%CD%A8%D0%C5">通信</span>網已經越來越無法適應人們的需要。因此,以大容量、高數據率和承載多媒體業務為目的的第三代<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D2%C6%B6%AF%CD%A8%D0%C5">移動通信</span><span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%CF%B5%CD%B3">系統</span>(IMT-2000)應運而生。碼分多址(<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=CDMA">CDMA</span>)由于其良好的抗噪性、保密性和簡單性等優點而成為第三代<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D2%C6%B6%AF">移動</span>通信的主流。主要<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%B7%BD%B0%B8">方案</span>包括歐洲<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%B1%EA%D7%BC">標準</span><span class="t_tag" onclick="tagshow(event)" href="tag.php?name=WCDMA">WCDMA</span>,<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%C3%C0%B9%FA">美國</span>標準CDMA-2000和<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D6%D0%B9%FA">中國</span>標準<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=TD-SCDMA">TD-SCDMA</span>。 和傳統的CDMA系統相比,第三代移動通信的最大特點在于可支持具有不同QoS的變速率的多種業務,這便要求其具有將各種無線媒體業務復接在一起傳輸的能力。為了達到這一目標,WCDMA采用了一種比較完善的業務復接方案,各種業務須經過一套復雜的編碼復接<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%C1%F7%B3%CC">流程</span>才能進行擴頻調制,占用盡可能少的碼道以恒定的功率發送。這樣就最大限度地減少了碼道間串擾,降低了對功放線性程度的要求。圖1所示的是WCDMA下行鏈路編碼復接方案流程圖。而速率適配算法是業務復用方案的核心算法,如何<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%C9%E8%BC%C6">設計</span>有效的算法實現方案,是業務復用方案設計的關鍵環節。 <table class="t_table" cellspacing="0"> <tbody> <tr> <td> <tr> <td><img height="324" alt="" src="http://www.52rd.com/upload/2006_5/File200652610242779956.gif" width="320"/></td></tr></tbody></table> <p align="center">圖1 下行鏈路編碼復接方案 <strong>速率適配算法描述 </strong> 一條傳輸信道上不同的傳輸<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%CA%B1%BC%E4">時間</span>間隔中的比特數有可能不一樣,但是上下行鏈路都對傳輸的比特率有一定的要求:下行鏈路中如果比特數低于最小值的就會被中斷;上行鏈路中各傳輸時間間隔的比特數不同,但需要保證第二次交織后的總比特率等于所分配的專用物理信道的總比特率。因此需要重復或者鑿去傳輸信道上的一些比特。速率適配就是指在傳輸信道上的數據比特被鑿孔(Puncturing)或重復(Repeating),以便使信道映射時達到傳輸<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%B8%F1%CA%BD">格式</span>所要求的比特速率。“鑿孔”是按照一定的算法鑿去某些位置的比特;“重復”則按照一定的算法在某些位置插入重復比特。 速率匹配前的比特記為:xi1,xi2,xi3,k,xixi 其中 i 為 TrCH 號,速率匹配參數為Xi, eini, eplus, 和eminus。 eini:初始化誤差,算法中誤差e的初始值; eminus:相減誤差,算法中誤差e的相減值; eplus:相加誤差,算法中誤差e的相加值; N:數據量,即速率適配前的數據量。 速率匹配的規則如下: if 要執行“鑿孔”操作 e=eini 初始化目前的與要求的鑿孔比例之間的偏差 m=1 當前比特索引序號 do while m <= N e=e-eminus 修改誤差 if e <= 0 then 檢查m是否是應該鑿掉的比特序號 鑿掉該比特xi,m e=e+eplus 更改誤差 end if m=m+1 進行下一個比特的判斷 end do else e = eini 初始化目前的與要求的鑿孔比例之間的偏差 m = 1 當前比特索引序號 do while m <= N e = e - eminus 修改誤差 do while e <= 0 檢查比特m 是否是應被重復的比特序號 重復比特 xi,m e = e + eplus 更改誤差 end do m = m + 1 進行下一個比特的判斷 end do end if 該適配算法對于上行鏈路和下行鏈路都是適用的。3GPP<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D0%AD%D2%E9">協議</span>中規定了“鑿孔”和“重復”算法的使用對象與范圍。Turbo編碼后的系統比特不允許鑿去,因此如果對Turbo編碼后的數據進行“鑿”操作,則首先應將系統比特和校驗比特區分開,僅對其中的校驗比特進行“鑿”操作;然而Turbo編碼后的數據如果進行“重復”以及卷積編碼后數據進行“鑿”或“重復”都不區分系統比特與校驗比特。上述情況的速率匹配見圖2及圖3。 <table class="t_table" cellspacing="0"> <tbody> <tr> <td> <tr> <td><img height="136" alt="" src="http://www.52rd.com/upload/2006_5/File200652610245883884.gif" width="320"/></td></tr></tbody></table> <p align="center">圖2 下行鏈路Turbo編碼比特鑿孔時TrCH的速率適配 <table class="t_table" cellspacing="0"> <tbody> <tr> <td> <tr> <td><img height="137" alt="" src="http://www.52rd.com/upload/2006_5/File200652610252825722.gif" width="320"/></td></tr></tbody></table> <p align="center">圖3 下行未編碼和卷積編碼以及重復的Turbo編碼的TrCH的速率匹配 另外,協議給出的確定參數的算法依編碼方式及鏈路的不同而不同。也就是說,Turbo編碼與卷積編碼、下行鏈路與上行鏈路在確定適配參數的算法上有區別。具體的確定算法可以參考3G相應的協議。 速率適配的FPGA實現 通過對編碼復接的方案研究發現,直接根據協議流程對數據流各個步驟(一共大約11個步驟)直接進行處理將會大大增加系統復雜度,這樣每個步驟之間都需對數據進行緩存,而移動環境下系統支持的最高速率可達384Kbps,對于TTI=20ms的業務,平均每步需要的緩存為7.68K,所需要的總存儲量是巨大的。而且這中間,數據流頻繁的寫入讀出所導致的處理時延也是難以忍受的。因此,如果將某些步驟合并起來,就能減少不必要的數據存取工作,從而節省存儲量,縮短處理延時。 上行鏈路的速率匹配按10ms數據幀為單位進行,而下行鏈路則是以TTI為單位針對一個無線幀的數據比特進行的。雖然算法上一致,但是考慮到上下行各自的步驟合并情況,在實際處理上還是有很大區別的。下面以下行144Kb/s速率適配為例介紹一下其FPGA的實現方法。 144Kb/s速率適配過程大致分為兩個<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%C4%A3%BF%E9">模塊</span>:鑿圖樣產生模塊和保留比特搬移轉換模塊。在實現過程中,用到的存儲資源是兩個RAM—一個用來存“鑿”圖樣、另一個用來存原來的數據,兩個DCFIFO(雙時鐘FIFO)用來存比特收集后的兩幀數據。 鑿孔圖樣產生模塊 由于144Kb/s業務信道編碼用的是Turbo編碼,鑿孔時只針對兩個分量編碼器輸出的校驗比特,因此需先進行比特分離再分塊進行鑿孔操作(系統比特塊自動保留不進行鑿孔操作)。我們采用了一種鑿孔圖樣控制方式,所有待速率適配比特都對應一個P比特,P=1表示鑿去,P=0表示保留,以此種方式產生鑿孔圖樣來控制保留比特的搬移。具體實現框圖如圖4所示。主要硬件結構包括一個加法器、一個減法器、一個數值比較器、一個計數器和一個選通控制模塊及參數初始化模塊。 <table class="t_table" cellspacing="0"> <tbody> <tr> <td> <tr> <td><img height="164" alt="" src="http://www.52rd.com/upload/2006_5/File200652610254858725.gif" width="320"/></td></tr></tbody></table> <p align="center">圖4 鑿孔圖樣產生 <p align="left">該結構工作過程如下:首先,比特分離和參數初始化模塊主要完成模塊計數和eini、eminus、eplus等參數的初始化<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%C9%E8%D6%C3">設置</span>。 在減法器端,當前誤差值e減去eminus,該數值同時送給數值比較器和選通控制模塊。減法器的輸出結果和0值作比較,如果結果小于零則記P比特為1;如果結果大于零則記P比特為0,同時將減法器的輸出結構作為當前加法器的A端輸入值。P比特則在選通控制模塊產生的讀寫使能、地址<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%D0%C5%BA%C5">信號</span>線的驅動下寫入Punc_ram。另外用一個計數器來對比特數進行記錄,以控制整個流程的結束時刻。系統時鐘為8倍碼片時鐘,計數器和Punc_ram都采用同步控制,加法器、減法器及比較器都不采用同步時鐘延時。 <p align="left"><strong>保留比特搬移轉換模塊 </strong> <p align="left">鑿圖樣產生以后,接下來的操作就是保留比特的搬移和轉換,并進行第一次交織和無線幀分段。按照3GPP協議,對于TTI=20ms的144Kb/s業務,其交織模式是<0,1>,亦即順序輸出。 <table class="t_table" cellspacing="0"> <tbody> <tr> <td> <tr> <td><img height="188" alt="" src="http://www.52rd.com/upload/2006_5/File200652610261912571.gif" width="320"/></td></tr></tbody></table> <p align="center">圖5 保留比特搬移轉換 實現的流程圖如圖5。假定TURBO編碼后待速率適配的比特流存在out_ram中,這里進行的操作關鍵是鑿孔圖樣的讀出和out_ram的讀出應該是同步一致進行(在同一個時鐘上升沿開始),用Punc_ram的輸出來作為積攢比特的使能信號。用移位寄存器組和計數器實現比特積攢,每等到滿16bit時,就進行串并轉換,同時產生一個fifo寫使能脈沖,把一個字的內容寫入fifo;等到滿一幀(復接前的數據幀)的時候,轉向對下一個fifo進行寫操作。到一個數據幀4205bit結束時,積攢比特不滿16的補零表示,串并轉換為一個字寫入fifo。 <p align="left"><strong>資源使用和時延分析 </strong> 按照上面的實現方式,主要占用的是存儲資源,現代FPGA中的ESB(嵌入式系統塊)可以很容易地實現各種類型的存儲模塊,包括雙端口RAM、ROM、FIFO及CAM塊。下面主要進行的是時延分析。 按照上面的流程可以大致估算一個比特從“鑿孔”圖樣產生到比特搬移完成所用的時間。所選工作時鐘 速率為8倍碼片速率3.84MHz,一個時鐘周期約為32.4ns。鑿孔圖樣模塊中的加法器、減法器、選通控制大概需要3個時鐘周期,9516個鑿孔圖樣的產生需要大致925ns;保留比特搬移模塊主要是數據比特的直接搬移,對于最后一個比特而言,假定它是保留比特,從搬移開始到最終寫入FIFO,經過了大致9516+16=9532個時鐘周期,耗時大約308ns。對整個流程用MAXPUSII仿真,總共耗時1.336ms,考慮到中間的緩沖控制和使能控制延遲,仿真結果和計算值大致吻合。對于TTI=20ms的業務,完全滿足處理要求。 <p align="left"><strong>結語 </strong> <p align="left">WCDMA系統的電路型數據業務(64K)和分組型數據業務(144K、384K)可以實現對多媒體業務的承載,但由于基帶數據處理量大、比特搬移操作明顯,編碼復接中的核心算法之一速率適配算法我們采用了FPGA實現,并且適當合并了前后步驟,大大縮短了處理時間,使系統達到了很高的吞吐量和處理速度,完全滿足3GPP協議<span class="t_tag" onclick="tagshow(event)" href="tag.php?name=%B9%E6%B7%B6">規范</span>的要求。在實際實施中被證明是可行的。此外,文中提出的模塊合并、產生鑿孔圖樣進行比特積攢搬移的思想同樣可以適合未來更復雜的編碼復接方案。 [align=right][color=#000066][此貼子已經被作者于2010-11-17 12:07:01編輯過][/color][/align]
說明:
上面顯示的是代碼內容。您可以先檢查過代碼沒問題,或修改之后再運行.
共1 條記錄, 每頁顯示 10 條, 頁簽:
[1]
Copyright © 2000 - 2009
曙海
教育集團
Powered By
曙海教育集團
Version 2.2
Processed in .03125 s, 2 queries.
[Full]
完整版
[Rss]
訂閱
[Xml]
無圖版
[Xhtml]
無圖版
主站蜘蛛池模板:
久久精品国产大片免费观看
|
日本三级网站在线线观看
|
一级特黄一欧美俄罗斯毛片
|
日韩一区二区三区不卡视频
|
你懂的国产精品
|
欧美日韩一区二区三区视频在线观看
|
精品国产欧美另类一区
|
操12p
|
日韩在线视频中文字幕
|
黄 色 三 级 网站
|
中文字幕精品一区二区精品
|
亚洲成人视
|
亚洲加勒比久久88色综合
|
日本一级高清不卡视频在线
|
久久久久免费精品国产
|
97视频网站
|
av在线天堂网
|
久草热久
|
免费a级毛片无码
|
久色一区
|
在线视频日本
|
国产成人精品男人的天堂538
|
欧美特黄高清免费观看的
|
99视频精品在线
|
精品国产一区二区三区久
|
国产一级做a爰片久久毛片99
|
欧美日本一区
|
国产欧美日韩在线观看
|
97免费视频免费视频
|
欧美成人精品大片免费流量
|
久久综合中文字幕一区二区三区
|
天天澡夜夜澡狠狠澡
|
亚洲精品中文字幕久久久久久
|
国产美女作爱视频
|
成人怡红院视频在线观看
|
自怕偷自怕亚洲精品
|
日本αv
|
亚洲91精品
|
国产伦久视频免费观看视频
|
亚洲精品一区二区观看
|
国产激情视频在线播放
|