欢迎来到天天文库
浏览记录
ID:41690183
大小:95.76 KB
页数:10页
时间:2019-08-30
《基于Verilog的密勒码编译码器设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验三基于Verilog的密勒码编译码器设计一、程序设计1.编码器modulemillerencoder(signal_in,signal_out,elk,o_start,ofinish);//输入输出端口声明inputsignal_in;inputclk;〃编码串行输出数据〃编码数据开始输出指示//编码数据输出完毕指示〃待编码数据转并行何存〃编码后输出并行数据簡存〃数据输入完毕指示//编码完毕指示〃分频时钟outputregsignalout;outputregostart;outputrego_finish;/
2、/内部变罐声明reg[7:0]datainparallel=0;reg[15:0]outbuf_parallel=0;reg[3:0]count=0;regd_finish=0;regc_finish=0;regclk2=0;integeri,k二15;//本进程用來串并转换always@(posedgeclk2)//输入)IJelk的二分频时钟,来保证时间相等begincount=count+1;if(count二二9)//串行数据输入完毕,可以开始计算了begincount<=8;d_finish<=l;end
3、elsebegindatain_parallel<={datain_paralleiE6:0],signal_in};endend//本进程用来产生2分频always@(posedgeclk)beginclk2<=~clk2;end//木进程用來并串转换,因为老师说输入输出都得是串行且吋间相等a1ways@(poscdgec1k)//输出用cIk时钟beginif(c_finish==l)//编码完毕了,可以输出鸟begino_start=l;signal_out<=outbuf_parallel[k];k<=k-
4、l;if(k<0)//数据输出完毕begino_finish=l;signal_out<=0;endendbeginsignal_out<=0;endendalways@(posedgeclk2)beginif(d_finish=l)//当串行数据全输入完毕,才开始计算。begincase(datainparallel[7:6])bOO:outbuf_parallel[15:12]=4'b0011;2,bOl:outbuf_parallel[15:12]=4'b0001;blO:outbuf_parallel[15
5、:12]=4'b0111;bl1:outbuf_parallei[15:12]=4'b0110;default:outbuf_parallei[15:12]=4,bOOOO;endcasefor(i=5;i>=0;i=i-1)case(datain_parallei[i])'bl:begincase(datain_parallei[i+1])'bl:begincase({outbufparallel[2*i+3],outbufparallel[2*i+2]})blO:{outbufjparallel[2*i+l],
6、outbuf_parallel[2*i]}=2'b01;.sbjooq二q・(〔Ii〕IoIIRIea—UEEP)oseo.sbjcoqoq"puooseopuopuoOSEOPU①oIqdH二一离二①二・u±*cx]〕1,-PJPd—Jnqlno)二iq*二oqzn(〔7z〕IO=PJed「4nq4no・〔I+^z〕oudcrJnq4->no)ooqz(二Z+%Z〕Q二Fed—Jnqpno・〔g+7£iQ二EJed—Jnq4no)ose。u-s①qoq.puooseopuooIqzHHTZHMdJed—JrKHn
7、olI+rzoUEEd—Jnq-notloqzpuos壬・J屏衆a4v二”言u辽J①seopu①puooseopuopueOSEOPU①-ooqdH二一离二①二ejed—jnq」no・u±*cx]〕1,-PJPd—Jnqlno)二iq*二」q*H(〔^z〕-euRIed-Jnq4no・u+vz〕Ieudd-Jnqpno}ooqd(二zi益〕I①二EJPaIJnqpno・〔g+^旦sI£ed—Jnq+Jno})osp。u-soqoq.puooseopuo二sdH二一离二①二ejed—jnq」no・u±*cx]〕1,
8、-PJPd—Jnqlno)二oq0ooqdn=Tz〕IQIIeJed—Jnq4no=Ii^〕oueIecrJnq4no=sqd(二Z+%Z〕Q二Fed—Jnqpno二g+7z〕o二EJed—4nq4no)ose。endendmodule2.译码器);//串行输入信号〃解码串行输出数据〃解码数据开始输出指示〃解码数据输出完毕指示〃待解码数据转并行暂存〃解码示输
此文档下载收益归作者所有