版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 V erilog作业姓名:zzz班級:zzzz學號:zzzz報告日期:2010年10月30日作业题目要求:实现8位的并行数据转换为串行的数据。题目分析:并行转串行,只要把每个输入按从高到低的顺序输出即可。即每个时钟脉冲输出一个数据。但是下面的代码有一个的问题,不能解决在8为数据串行输出的过程当中如果又有一个并行的输入数据输入,没有做到缓冲处理。也许这个缓冲处理可以在调用此模块时在外部实现吧。功能代码:module para_to_serial_8bit(para_in,clock,reset,ser_out;input7:0para_in;input reset,clock;output s
2、er_out;reg ser_out;reg7:0data;always(posedge clock or negedge resetbeginif(resetbeginser_out<=1'b0;data<=para_in;endelse begindata<=data6:0,data7;ser_out<=data7;endendendmodule测试代码:module test_para_to_ser;reg7:0para_in;reg clock,reset;wire out;para_to_serial_8bit f1(.para_in(para_in,
3、.clock(clock,.reset(reset,.ser_out(out;initial$monitor($time,"in_8bit=%b,reset=%b,ser_out=%b,data=%b",para_in,reset,out,f1.data; initial beginclock=1'b0;reset=1'b0;#3reset=1'b1;#300$stop;endinitialpara_in=8'b1010_0100;always#5clock=clock; endmodule测试结果: 测试波形如下: 作业二题目要求:实现8位
4、的串行数据转换为并行的数据。题目分析:8位串行数据转换为并行数据,需要一个模为8的计数器,当计到8个时钟脉冲时,把之前的8个数据全部输出,然后从新接收。功能模块代码:模8计数器:module counter_mod_8(clock,reset,Q;input clock;/posedge effectiveinput reset;/negedge effectiveoutput2:0Q;reg2:0Q;always(posedge clock or negedge resetbeginif(resetQ<=3'd0;elseQ<=Q+1;endendmodul e串转并模块
5、:module ser_to_par_8bit(ser_in,clk,rst,out;input ser_in,clk,rst;output7:0out;wire7:0out;reg7:0par_out;wire2:0count;counter_mod_8f1(.clock(clk,.reset(rst,.Q(count;always(posedge clk or negedge rstbeginif(rstpar_out<=8'b0000_0000;else beginpar_out<=par_out6:0,ser_in;endendassign out=(count=7
6、?par_out:8'b0000_0000;endmodule测试模块代码:module test_ser_par;reg7:0data;wire data_in;reg clock,reset;wire7:0out;initial beginclock=1'b0;reset=1'b0;#3reset=1'b1;data=8'b1001_1101;#300$stop;endalways#5clock=clock;always(posedge clockdata=data6:0,data7;assign data_in=data7;ser_to_par_8
7、bit a(.ser_in(data_in,.clk(clock,.rst(reset,.out(out;initial$monitor($time,"reset=%b,data=%b,data_in=%b,out=%b",reset,data,data_in,out; endmodule测试结果: 测试波形: 作业三 题目:可变模计数器,当控制信号为 1 时,模值为 16,当控制信号为 0 是模值 为 32。 功能模块代码: / contr = 1 mod =16; contr =0 mod =32 module count_mod_chg(clk,reset,contr
8、,Q; input clk,reset,contr; output 4:0 Q; reg wire 4:0 Q; 4:0 last; assign last =(contr ? 5'b01111:5'b11111; always(posedge clk or negedge reset begin if(reset | Q = last Q <= 5'b00000; else Q = Q + 1; end endmodule 测试模块代码: module test_count_mod_chg; reg clock,reset; reg control; wire 4:0 out; count_mod_chg counter1(.clk(clock,.reset(reset,.contr(control,.Q(out; initial $monitor($time,"reset= %b,control= %b,out= %b",reset,control,out; initial begin clock = 1'b0; forever #5 clock = c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深度解析(2026)《GBT 30114.5-2014空间科学及其应用术语 第5部分:空间生命科学和生物技术》
- 深度解析(2026)《GBT 29992-2017 日用压力锅橡胶密封圈》
- 深度解析(2026)《GBT 29873-2013能源计量数据公共平台数据传输协议》
- 深度解析(2026)《GBT 29835.3-2013系统与软件效率 第3部分:测试方法》
- 《GBT 4457.5-2013机械制图 剖面区域的表示法》(2026年)合规红线与避坑实操手册
- 2026年深度学习模型测试服务合同协议
- 浙江省丽水市2024学年第二学期九年级适应性考试(一)英语试题(含答案)
- 密封件失效形式分析及其解决方案
- 2025北京五十五中高三(上)期中数学试题及答案
- 测绘师职业规划书
- 《贵州劲同矿业有限公司清镇市麦格乡贵耐铝土矿(延续)矿产资源绿色开发利用方案(三合一)》评审意见
- 2026年上海市黄浦区初三语文二模试卷及答案
- 航天军工行业从海外看中国商发产业链前景
- 2026年各地算力统筹与算电协同精细化政策汇编解读
- 光伏产品进出口贸易合同协议(2025年度)
- 发展对象考试试题附答案
- 2026年《职业病防治法》宣传周知识竞赛考试题库附参考答案
- 乐至介绍教学课件
- 2024-2025学年鲁教版(五四制)美术五年级下全册(教学设计)
- 沪教版三年级下学期(新版)数学第4单元单元试卷(附答案)-02
- 2025年安全生产考试题库(安全知识)信息安全试题试卷及答案
评论
0/150
提交评论