计算机组成 vhdl cpu 实验 西安交大,西安交大计算机组成 实验三.doc

文档介绍:

西安交大计算机组成_实验三实验三时序电路基本部件设计一、实验目的掌握VHDL\Verilog中时序模块电路的设计方法。熟悉VHDL\Verilog中层次结构的设计方法。二、实验内容利用进程语句完成一个触发器电路模块(使能端、复位)的设计。利用进程语句完成寄存器和移位寄存器(包括串行输入输出、循环移位)电路模块的设计。完成各种数字(个人学号末两位)进制的计数器。分析时序电路部件的仿真波形。三、实验要求分析各模块的的程序结构,画出其流程图。画出模块的电路图。分析电路的仿真波形,标出关键的数值。记录设计和调试过程。四、实验代码及结果1、触发器代码:moduleshiyan31(inputwireclk,inputwirereset,inputwireg,inputwiredin,outputregdout);always@(posedgeclk)begin//使能端低有效,复位端高有效if(g==1'b1)beginendif(reset==1'b1&&g==1'b0)begindout<=1'b0;endif(reset==1'b0&&g==1'b0)begindout<=din;endendEndmodule电路图:仿真:moduleshiyan31sim();regclk,din,g,reset;wiredout;shiyan31test(.clk(clk),.reset(reset),.dout(dout),.din(din),.g(g));initialbeginclk<=0;din<=0;reset<=0;g<=0;#10din<=1;#20din<=0;#100reset<=1;#30reset<=0;#20g<=1;#20din<=1;#100g<=0;endalwaysbegin#5clk=~clk;endendmodule仿真结果:结果分析:当复位端有效时,输出变为由1变为0。使能端无效时,即使在clk上升沿,也无法将din传输给dout。当使能端有效切复位端无效时,在clk上升沿,电路将din传给dout。其完成了触发器的作用。位移寄存器代码:modulejcq(ain,clk,reset,aout);input[7:0]ain;outputreg[7:0]aout;inputclk,reset;always@(posedgeclk)beginif(!reset)beginaout<={ain[6:0],ain[7]};endelsebeginaout[7:0]<=8'b;endendEndmodule电路图:仿真代码:modulesim();reg[7:0]ain;regclk,reset;wire[7:0]aout;jcqtest(.ain(ain),.clk(clk),.reset(reset),.aout(aout));initialbeginclk=0;reset=1;ain=8'b;#50reset=0;ain=8'b;#200ain=8'b;#200reset=1;endalwaysbegin#50clk=~clk;endendmodule仿真结果:结果分析:输入,clk上升沿时,输出为,左移了一位。输入,clk上升沿时,输出为,左移了一位。在复位端有效时,输出变为0。即一个左移寄存器。3、51位计数器代码:modulejsq(ret,t);inputclk,ret;outputreg[5:t;parametermax=6'b;always@(posedgeclk)beginif(ret)t<=6'b;t==max)t<=6'b;t<=cnt+6'b;endendendEndmodule电路图:仿真代码:modulesim2();regclk,ret;wire[5:t;jsqtest(.clk(clk),.ret(ret),.t));alwaysbegin#5clk=~clk;endinitialbeginclk=1'b0;ret=1'b1;#10ret=1'b0;endEndmodule

内容来自淘豆网www.taodocs.com转载请标明出处.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值