module FDIV0(input CLK, RST,input [3:0] D, output PM, output [3:0] DOUT);reg [3:0] Q1; reg FULL;wire LD;always@(posedge CLK or negedge RST)if(!RST)begin Q1=0; FULL=0; end else if(LD)begin Q1=D; FULL=1; end else begin Q1=Q1+1; FULL=0; endassign LD=(Q1==4&#

module FDIV0(input CLK, RST,input [3:0] D, output PM, output [3:0] DOUT);reg [3:0] Q1; reg FULL;wire LD;always@(posedge CLK or negedge RST)if(!RST)begin Q1=0; FULL=0; end else if(LD)begin Q1=D; FULL=1; end else begin Q1=Q1+1; FULL=0; endassign LD=(Q1==4’b1111); assign PM=FULL; assign DOUT=Q1;endmodule该模块实现的功能是:

module triBUS4(IN3,IN2,IN1,IN0,ENA,DOUT); input[3:0] IN3,IN2,IN1,IN0 ; input[1:0] ENA; output[3:0] DOUT; reg[3:0]DOUT; always @(ENA, IN0)if(ENA==2’b00)DOUT=IN0;()else DOUT=4’hz; always @(ENA, IN1)if(ENA==2’b01)DOUT=IN1;()else DOUT=4’hz; al

module triBUS4(IN3,IN2,IN1,IN0,ENA,DOUT); input[3:0] IN3,IN2,IN1,IN0 ; input[1:0] ENA; output[3:0] DOUT; reg[3:0]DOUT; always @(ENA, IN0)if(ENA==2’b00)DOUT=IN0;()else DOUT=4’hz; always @(ENA, IN1)if(ENA==2’b01)DOUT=IN1;()else DOUT=4’hz; always @(ENA, IN2)if(ENA==2’b10)DOUT=IN2;()else DOUT=4’hz; always @(ENA, IN3)if(ENA==2’b11)DOUT=IN3;()else DOUT=4’hz;endmodule该模块实现的是双向端口电路: