一、实验名称
1.4位移位寄存器的另一种代码;
2.一个n位移位寄存器;
3.递增计数器;
4.带并行载入端的递增计数器。
二、实验目的
1.每个实验都有相应的代码,实行联合仿真
三、实验截图与源代码
1.实验(1)
1.
module shift4(R,L,w,Clock,Q);
input [3:0]R;
input L,w,Clock;
output reg [3:0]Q;
always @(posedge Clock)
if(L)
Q<=R;
else
begin
Q[0]<=Q[1];
Q[1]<=Q[2];
Q[2]<=Q[3];
Q[3]<=w;
end
endmodule
2.实验(2)
2.
module shiftn(R,L,w,Clock,Q);
parameter n=16;
input [n-1:0]R;
input L,w,Clock;
output reg [n-1:0]Q;
integer k;
always @(posedge Clock)
if(L)
Q<=R;
else
begin
for(k=0;k<n-1;k=k+1)
Q[k]<=Q[k+1];
Q[n-1]<=w;
end
endmodule
3.实验3
3.
module upcount(Resetn,Clock,E,Q);
input Resetn,Clock,E;
output reg [3:0] Q;
always @(negedge Resetn,posedge Clock)
if(!Resetn)
Q<=0;
else if(E)
Q<=Q+1;
endmodule
4.实验(4)
4.
module Tupcount(R,Resetn,Clock,E,L,Q);
input [3:0]R;
input Resetn,Clock,E,L;
output reg [3:0] Q;
always @(negedge Resetn,posedge Clock)
if(!Resetn)
Q<=0;
else if(L)
Q<=R;
else if(E)
Q<=Q+1;
endmodule