功能描述:这是一个十个裁判表决的电路,基本功能:每个裁判输入1:同意;0:不同意.
按照少数服从多数的原则,输出情况除了通过、不通过或待定等状态。
module first(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,out); input a1,a2,a3,a4,a5,a6,a7,a8,a9,a10; //十路信号 output reg [1:0] out; reg [9:0] temp = 10'b0000000000; integer i,cout1,cout2; always@(temp) begin temp = {a1,a2,a3,a4,a5,a6,a7,a8,a9,a10}; i=0; cout1 = 0; cout2 = 0; while(i<10) begin if(temp[i]) cout1 = cout1+1; else cout2 = cout2+1; i=i+1; end if(cout1==cout2)out=2'b00;//待定 else if(cout1>cout2)out=2'b01;通过 else if(cout1<cout2)out=2'b10;//不通过 else out=2'b11;//未知错误 end endmodule