




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Abstract在實務上常常需要將parallel轉成serial,然後再將serial轉成parallel,本文討論如何實現這些功能。Introduction使用環境:NC-Verilog 5.4 + Debussy 5.4 v9 + Quartus II 7.2很多介面都採用serial傳輸,如I2C、LVDS、mini-LVDS等,在寫入時必須將parallel資料轉成serial,讀出時又得將serial轉成parallel,所以是個常用的電路,其原理就是使用shift register來達成,本文將一一討論parallel轉serial,serial轉parallel,也順便討論parallel轉parallel與serial轉serial。並進串出 (Parallel In Serial Out)當load為1且clk rising edge時,parallel data載入至register當中,當load為0且clk rising edge時,register資料依序往前遞移,在最後一個register將資料送出。p2s.v / Verilog1/*2(C) OOMusou 2009 34Filename : p2s.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Synthesizer : Quartus II 7.27Description : parallel in serial out rtl8Release : Oct/24/2009 1.09*/1011module p2s (12 clk,13 rst_n,14 load,15 pi,16 so17);1819input clk;20input rst_n;21input load;22input 3:0 pi;23output so;2425reg 3:0 r;2627always(posedge clk ornegedge rst_n) 28 if (rst_n)29 r =4h0;30 elseif (load)31 r = pi;32 else33 r = r, 1b0;34 35assign so = r3;36 37endmodule33行r = r, 1b0;用Verilog實現shift register有很多種方式,但以33行這種方式最精簡,其他coding style可參考(筆記) 如何將值delay n個clock? (SOC) (Verilog)。Testbenchp2s_tb.v / Verilog 1/*2(C) OOMusou 2009 34Filename : p2s_tb.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Description : parallel in serial out testbench7Release : Oct/24/2009 1.08*/910timescale 1ns/1ns11includep2s.v1213module p2s_tb;1415reg clk;16reg rst_n;17reg load;18reg 3:0 pi;19wire so;2021initialbegin22 load =1b0;23 pi =4h0;24 #10;25 load =1b1;26 pi =4b1010;27 #20;28 load =1b0;29 pi =4h0;30end3132initial clk =1b0;33always #10 clk =clk;3435initialbegin36 rst_n =1b0;37 #5;38 rst_n =1b1;39end4041initialbegin42 $fsdbDumpfile(p2s.fsdb);43 $fsdbDumpvars(0, p2s_tb);44 #150;45 $finish;46end4748p2s p2s_0 (49 .clk(clk),50 .rst_n(rst_n),51 .load(load),52 .pi(pi),53 .so(so)54);5556endmodule模擬結果 串進並出 (Serial In Parallel Out) serial data依序送進shift register,當en為1時,一次將shift register內的資料送進parallel out。s2p.v / Verilog1/*2(C) OOMusou 2009 34Filename : s2p.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Synthesizer : Quartus II 7.27Description : serial in parallel out rtl8Release : Oct/24/2009 1.09*/1011module s2p (12 clk,13 rst_n,14 en,15 si,16 po17);1819input clk;20input rst_n;21input en;22input si;23output 3:0 po;2425reg 3:0 r;2627always(posedge clk ornegedge rst_n) 28 if (rst_n)29 r =8h0;30 else31 r = r, si;32 33assign po = (en) ? r : 4h0;34 35endmoduleTestbenchs2p_tb.v / Verilog1/*2(C) OOMusou 2009 34Filename : p2s_tb.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Description : serial in parallel out testbench7Release : Oct/24/2009 1.08*/910timescale 1ns/1ns11includes2p.v1213module s2p_tb;1415reg clk;16reg rst_n;17reg en;18reg si;19wire 3:0 po;2021initialbegin22 en =1b0;23 si =1b0;24 #10;25 / 4b101026 si =1b1;27 #20;28 si =1b0;29 #20;30 si =1b1;31 #20;32 en =1b1;33 si =1b0;34 #20;35 en =1b0;36 si =1b0;37end3839initial clk =1b0;40always #10 clk =clk;4142initialbegin43 rst_n =1b0;44 #5;45 rst_n =1b1;46end4748initialbegin49 $fsdbDumpfile(s2p.fsdb);50 $fsdbDumpvars(0, s2p_tb);51 #200;52 $finish;53end5455s2p s2p_0 (56 .clk(clk),57 .rst_n(rst_n),58 .en(en),59 .si(si),60 .po(po)61);6263endmodule模擬結果 串進串出 (Serial In Serial Out)基本上串進串出沒有任何實用功能,只能當成delay n個clk用,與(筆記) 如何將值delay n個clock? (SOC) (Verilog)一樣,只是在此順便提及。s2s.v / Verilog1/*2(C) OOMusou 2009 34Filename : s2p.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Synthesizer : Quartus II 7.27Description : serial in serial out rtl8Release : Oct/24/2009 1.09*/1011module s2s (12 clk,13 rst_n,14 si,15 so16);1718input clk;19input rst_n;20input si;21output so;2223reg 3:0 r;2425always(posedge clk ornegedge rst_n) 26 if (rst_n)27 r =8h0;28 else29 r = r, si;30 31assign so = r3;32 33endmoduleTestbenchs2s_tb.v/ Verilog1/*2(C) OOMusou 2009 34Filename : s2s_tb.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Description : serial in serial out testbench7Release : Oct/24/2009 1.08*/910timescale 1ns/1ns11includes2s.v1213module s2s_tb;1415reg clk;16reg rst_n;17reg si;18wire so;1920initialbegin21 si =1b0;22 #10;23 / 4b101024 si =1b1;25 #20;26 si =1b0;27 #20;28 si =1b0;29 #20;30 si =1b1;31end3233initial clk =1b0;34always #10 clk =clk;3536initialbegin37 rst_n =1b0;38 #5;39 rst_n =1b1;40end4142initialbegin43 $fsdbDumpfile(s2s.fsdb);44 $fsdbDumpvars(0, s2s_tb);45 #200;46 $finish;47end4849s2s s2s_0 (50 .clk(clk),51 .rst_n(rst_n),52 .si(si),53 .so(so)54);5556endmodule模擬結果 並進並出 (Parallel In Parallel Out)並進並出也沒實用功能,只是順便提及。p2p.v / Verilog1/*2(C) OOMusou 2009 34Filename : p2p.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Synthesizer : Quartus II 7.27Description : parallel in parallel out rtl8Release : Oct/24/2009 1.09*/1011module p2p (12 clk,13 rst_n,14 pi,15 po16);1718input clk;19input rst_n;20input 3:0 pi;21output 3:0 po;2223reg 3:0 r;2425always(posedge clk ornegedge rst_n) 26 if (rst_n)27 r =8h0;28 else29 r = pi;30 31assign po = r;32 33endmoduleTestbenchp2p_tb.v / Verilog1/*2(C) OOMusou 2009 34Filename : p2p_tb.v5Simulator : NC-Verilog 5.4 + Debussy 5.4 v96Description : parallel in parallel out testbench7Release : Oct/24/2009 1.08*/910timescale 1ns/1ns11includep2p.v1213module p2p_tb;1415reg clk;16reg rst_n;17reg 3:0 pi;18wire 3:0 po;1920initialbegin21 pi =4h0;22 #10;23 pi =4b1010;24 #20;25 pi =4b1100;26 #2027 pi =4h0;28end2930initial clk =1b0;31always #10 clk =clk;3233initialbegin34 rst_n =1b0;35 #5;36 rst_n =1b1;37end3839initialbegin40 $fsdbDu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-河北-河北机械热加工一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-河北-河北图书资料员三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏防疫员三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-江苏-江苏工程测量工四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-广西-广西计量检定工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东热处理工二级(技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东林木种苗工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-安徽-安徽热力运行工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-安徽-安徽城管监察员三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京房管员一级(高级技师)历年参考题库典型考点含答案解析
- 飞机电气接地技术标准线路施工课件
- 酒店店长述职报告
- (完整版)智能语音平台建设技术建议方案书
- 成人糖尿病食养指南
- 2025年中国冻果行业市场发展前景及发展趋势与投资战略研究报告
- 新版电子物料编码原则
- 2025广东省劳动合同样本
- 医疗机构患者信息管理制度
- 食品安全知识宣传材料
- 言语语言障碍康复护理
- 旧油罐防腐施工方案
评论
0/150
提交评论