![北郵ASIC實驗報告卷積碼編碼器_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/8c899d4f-942d-4d17-88d6-c895562774aa/8c899d4f-942d-4d17-88d6-c895562774aa1.gif)
![北郵ASIC實驗報告卷積碼編碼器_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/8c899d4f-942d-4d17-88d6-c895562774aa/8c899d4f-942d-4d17-88d6-c895562774aa2.gif)
![北郵ASIC實驗報告卷積碼編碼器_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/15/8c899d4f-942d-4d17-88d6-c895562774aa/8c899d4f-942d-4d17-88d6-c895562774aa3.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、北京郵電大學ASIC原理課程實驗實驗報告設計要求:( 3,1,8 )卷積碼編碼器學院:電子工程學院專業(yè):電子信息科學與技術班級:學號:姓名:2013 年 6 月 20 日一、設計要求運用verilog語言編寫一個(3,1,8 )卷積碼編碼器,并對其進行仿真。二、卷積碼編碼器原理卷積碼擁有良好的糾錯性能,是一種被廣泛應用于移動通信的信道編碼系 統(tǒng)。一個(n,k,m )卷積碼編碼器由k個輸入,具有m階存儲的n個輸出的線形 時序電路實現(xiàn)。通常,n和k是較小的整數(shù),且kvn,但m比較大。當k = 1 時,信息序列不再分成小塊,以便可以連續(xù)處理。卷積碼(n,k,m )表示碼率R=k/n,編碼器級數(shù)m=
2、s 1,其中s是碼約束長度。反向CDM信道使用(3,1,8)卷積碼,碼率R= 1/3,約束長度為9,由于 k = 1,n = 3, m= 8,則該卷積編碼器包含單個輸入端,一個 8級移位寄存器,三 個模2加法器和一個3向編碼器輸出的連續(xù)轉向器。編碼器每輸入一位信息比 特將產生三位編碼輸出。這些編碼符號中,第一個輸出符號GO是生成序列g1編碼產生的符號,第二個輸出符號 G1是由生成序列g1編碼產生的符號,最后一個輸出符號G2是由生成序列g1編碼產生的符號,如下圖所示I* II | o f Li+ plr該電路由一個八位寄存器、三個碼生成邏輯、一個時隙發(fā)生器和一個四選一 復用器構成。mux的輸入為
3、G0 G1和G2,碼選擇信號C1:0和clk1由時隙發(fā) 生器產生,輸出信號即為整個電路的輸出Yout。卷積編碼器的初始狀態(tài)用rst異步清零信號置為0,rst=0時,電路清零。 卷積編碼器的初始狀態(tài)全為 0,初始狀態(tài)之后輸出的第一個編碼符號由生成序列g1編碼產生。這里,三個生成序列分別為g1二(101101111),g1(2)=(110110011), g1 =(111001001)。即三個生成多項式分別為:eg 1+X+X2+X3+X5+X6+X8 (557)C仁 1+X+X4+X5+X7+X8 (663)C2= 1+X3+X6+X7+X8 (711)三、實驗設計與實現(xiàn)根據(jù)以上實驗要求, 我們
4、首先設想了分為幾個模塊, 然后將各個模塊進行整 合實現(xiàn)編碼器的功能, 根據(jù)我們的設想編寫相應的 verilog 程序,進行調試、 實 現(xiàn)。以下是實驗的具體過程。1. 卷積碼模塊設計(1 )3 分頻器( fenping )。它的功能是產生 clk 時鐘三分之一頻率的時鐘信 號,命名為 clk1 ,同時產生選擇信號 sel1:0 。(2) 4-1 多路選擇器 (mux_4_1 ) 。根據(jù) sel1:0 輸入的選擇信號,選擇 4路 (in0,in1,in2,in3) 輸入的 1 路來輸出 (out) 。后來, 根據(jù)老師的指導, 將卷積的 運算邏輯組裝在這個模塊里。(3) 8 位移位寄存器( wyjc
5、_8 )。用于記錄輸入的信息。每經過一個時鐘上 升沿( clk1 )向前移位一次。2. verilog 程序編寫各個模塊相應的代碼和注釋如下所示。( 1) 3 分頻器module fenping(clear,clk,clk1,count);input clk,clear;output clk1,count;wire clk,clear;reg clk1;reg 2:0 count;always (posedge clk or posedge clear)beginif(clear=1)count2:0<=3 ' b010;elsebegin/ 通過循環(huán)移位實現(xiàn) 3 分頻count
6、0<=count2;count1<=count0;count2<=count1; clk1<=count1; end;endendmodule2)41 多路選擇器module mux_4_1(clk1,clk,sel,in,kin,out); input1:0 sel;input clk,in,clk1;input7:0 kin; output out; wire 1:0 sel; reg out; reg 8:0k;always (posedge clk) /依次計算 c0 ,c1, c2begincase(sel) default out<=0;2'b
7、00 :out<=(k0+k1)+(k2+k3)+(k5+k6+k8); 2'b01:out<=k0+k1+k4+k5+k7+k8; 2'b10:out<=k0 +k3+k6)+k7+k8;endcaseendalways (posedge clk1) /采樣部分begink7:0<=kin7:0; k8<=in;endendmodule(3)8 位移位寄存器module wyjc_8(clear,clk,in,out);Input clear,clk,in; output7:0 out;reg7:0 out;wire clear,clk,in;a
8、lways (posedge clk or posedge clear) beginif(clear=1)out7:0<=8 ' b0;elsebegin out7<=in;out6<=out7;out5<=out6;out4<=out5;out3<=out4;out2<=out3;out1<=out2;out0<=out1;endendendmodule4)整合模塊'in elude“ fen pi ng.v ”/將各模塊加入文件'in elude“ mux_4_1.v”'include“ wyjc_8 .
9、 v ”module bianma(rst,elk,in,out,elk1);input rst,elk,in;output out;output elk1;wire elr,elk,in,elk1,rst;wire7:0 k;wire2:0 sel;reg g0,g1,g2;分頻器實例化移位寄存器實例化fenping f1(.elk(elk),.elear(elr),.elk1(elk1),.eount(sel);/wyje_8 w1(.elear(elr),.elk(elk1),.in(in),.out(k);/mux_4_1m1(.elk1(elk1),.in(in),.kin(k),.
10、elk(elk),.sel(sel1:0),.out(out); / 多路選擇器實例化assign elr=rst;/復位信號翻轉endmodule(5)測試程序 timescale 1 ns/ 1 nsmodule bianma_test1;reg clk,rst,in,code,flag;wire out,clk1;integer I,j,r_seed;reg31:0 a;reg15:0 c0,c1,c2;bianma b1(.clk1(clk1),.clk(clk),.rst(rst),.in(in),.out(out);initial clk=0;/ 時鐘產生always #5 clk
11、=clk;initial/ 復位部分beginrst=0;#7 rst=1;endinitial/結束仿真#490 $finish;Initial/輸入與對照分量產生begin$monitor($stime, ”clk=%b,rst=%b,in=%b,out=%b,code=%b,error=%b”,clk,rst,in,out,code,flag);a31:0=32 'b0;a18:0=$random % (1024*8);for(i=0;i<16;i=i+1)begincOi=ai+8F ai+6A ai+5A ai+3A ai+2A ai+1Aai;c1i=ai+8F ai
12、+7A ai+5F ai+4F ai+1Fai;c2i=ai+8A ai+7A ai+6A ai+3Aai;endin=0;flag=0;#10 in=a8;for(i=0;i<16;i=i+1)begin#30 in=ai+9;endendini tial/采樣對比begin#20 code=0;for(j=0;j<16;j=j+1)begin#5 code=c0j;#5 if(out!=code) flag=1;#5 code=c1j;#5 if(out!=code) flag=1;#5 code=c2j;#5 if(out!=code) flag=1;if(flag=1) $
13、dispaly( “error ” ); end"bianma.sdf ” ,b1);/ 延時文件endin itial $sdf_a nno tate(en dmodule四、仿真與綜合1. 初始波形(輸入IN為隨機數(shù))以看出,兩者的輸出波形完全一致,即編碼器工作正常。2. 門級電路仿真各模塊和綜合后仿真結果如下4張圖所示Tang I.3. 綜合后電路信息書K電胡on ArM! I Garrald brp: EHQOJUCail! RTL CoTinler vl3.1C-g322_1 «Ajjg 20111GcrcnlcFt gq J up 13 3CI3 19 Offl
14、Modk » p>n ehI Bdh'ki Mry 才Illy lypcli 1 4-Ct*?i"irg<oxl:kn&' rrpkl balancedElreJ口曲 nrocfe tementire:*R mxjf t PuweiG4n«ralodby: Enc flunt o<(R i R7L C orr pi lor v 10.10 c322_ 1 'Aug 16 2011Generalcd on: Jun 133013 19:33:26Module biarrnaTechnocq/ library tpic
15、al L4Opting conditions; Epical bakneed tree,Wirtfcad mudu.詁旳"舊MhJInstancpJ&ls Leakage (nW> 1 itenial (n'A Not mW) jswilching |F1W)biannw415,40187689 365Q323.&72M0t1r93biinmaf 15o.es562£M 6010937.5007100bi an ma hi 1252.7769862.131103-52103965.34bianmawl01.746M51 S3 16341.157
16、7793.004. 綜合后仿真波形(輸入IN為隨機數(shù))在control_test.v文件中加入以下語句,以便將control.sdf文件標注到測試文件中:initial$sdf_annotate(“control.sdf”,c1); c1 為測試文件中調用control電路模塊的標簽在對門級電路control.vg進行仿真時,在仿將庫文件引入,真命令中使用-v/home2/student/lib/train/verilog/tsmc25.v得到的仿真波形如下圖所示曾 2# jfrv. rwC«Ww*.i-i M乘*t't1晦1! ll K* -nt*由上圖可知,在其他條件不變
17、情況下,編碼器工作依然正常,但是out端(實 際)的輸出與code端(對照)的輸出相比,有1ps的延遲五. 實驗思考題請用vi打開control.vg和control.sdf 文件,理解其中內容,尤其是co ntrol.sdf中的延遲信息是如何表示的,并回答以下問題。1.control.vg 文件是verilog 語言級的描述還是結構化的描述?實驗中的部分vg文件如下截圖所示DFFKL aut_rQ5(.CK (elk), . (flIS), .Q (out), .QN (LNCOSNECTEEO;OAI235CL S227.AO (selfoj), .Al <n_14)1 .BC-Bl
18、 (sel(lj). ACivlS);ADI?BB2X1 軟 28(丄血 (rULO)t .AIM <sell ) , .00 (n,12) , .Bl (se1(1, .V tn.-!);MAND2X1 S229C.A CselfOn. .B (n.U). TY (n_131);OAtZBBaXL g23O(.ON (n_0j.AIM.BO CelS). .Bl (n_0). ACn_12J):OAlZHHZltL gJJlt ACM n_JJ. AIM (rL_9J T EO-Jil tn_J), .V可以看出,vg文件是結構化描述2.control.sdf文件中,對觸發(fā)器的延遲包括
19、哪些信息,請列出。Sdf文件中關于觸發(fā)器的描述部分截圖如下。(CELL(CELLLYFE "DFRiHQlil/')(INSTANCE fl.count_rogLlJ(DELAY(AKSOLLTE(PORT SN (uO.O)(PORT CKPORT D(lOPATIt (noeedge SM) Q (: :437)()(IOPATHCK) Q 仁:州為(:780)<riMINGCHECK(RKHEN 中陌配肌 SN) (po崩電倉 Clt) :77)() (SEIUPIIOLD (nccdc D) (potedgtt CK) (-2D0) (: :14) (SERPH
20、OLD 的曲till詐 D)CK) (,:132) (: :-7G)可以看出觸發(fā)器的延時信息包括每一個邏輯單元的每一個管腳的上升時延 與下降時延的最小值、典型值、最大值。3. 在對門級電路control.vg進行仿真時,加上+ maxdelays模擬選項,觀察仿真結果;并與不加+ maxdelays模擬選項的模擬結果 進行比較,如果有不同之處,請將其不同處列在下面,并分析原因。加上+ maxdelays模擬選項的模擬結果:IE "g也* MMEIDOh -B ©池-hewIW由1W Aeft!3nfuwrnruuulfuirJiiifLJi:m .ttlhiuuli ruurnnjWinii niiJinnfirLrTLJLJLrLJyLrLJLJtrUcodeIg*EQ W4 IJ# ' iiii“*"TOTfl ftUItrTfii-IBI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度含擔保人借款合同模板(創(chuàng)新創(chuàng)業(yè)項目支持)
- 2025年個人代理人保險代合同(三篇)
- 2025年三方采購合同(2篇)
- 2025年嚴紀律轉作風樹形象學習心得樣本(2篇)
- 2025年10月工區(qū)工會工作總結模版(三篇)
- 2025年業(yè)務員年終個人工作總結(4篇)
- 2025年“五觀”討論會心得體會范文(2篇)
- 2025年上半年簡易工作總結(二篇)
- 2025年不跪著教書心得體會例文(3篇)
- 2025年10月護士長月工作總結模版(二篇)
- 2025年上半年長沙市公安局招考警務輔助人員(500名)易考易錯模擬試題(共500題)試卷后附參考答案
- 2025河北邯鄲世紀建設投資集團招聘專業(yè)技術人才30人高頻重點提升(共500題)附帶答案詳解
- 慈溪高一期末數(shù)學試卷
- 《基于新課程標準的初中數(shù)學課堂教學評價研究》
- 貴州省黔東南州2024年七年級上學期數(shù)學期末考試試卷【附答案】
- 醫(yī)院廉潔自律承諾書
- 企業(yè)招聘技巧培訓
- 學校校本課程《英文電影鑒賞》文本
- 華為HCSA-Presales-IT售前認證備考試題及答案
- 重大事故隱患判定標準與相關事故案例培訓課件
- 環(huán)境檢測實驗室分析人員績效考核方案
評論
0/150
提交評論