欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1433|回復: 0
打印 上一主題 下一主題
收起左側

fpga優先級編碼器

[復制鏈接]
跳轉到指定樓層
樓主
ID:763891 發表于 2020-5-29 00:09 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
module clock(ctr,yout,clk,clr);
input clk,clr;
output[6:0] yout;
output[1:0] ctr;
reg[6:0] yout;
reg[4:1] temp;
reg[4:1] temp_a,temp_b;
reg[1:0] ctr;
reg state;
reg c;
reg[10:0] cp;
parameter s0=2'h0,s1=2'h1;
always @ (posedge clk or negedge clr)
begin
if(!clr)
begin
state=s0 ;
ctr=0 ;
end
else
begin
case (state)
s0:begin ctr=2'b10; temp=temp_a; state=s1; end
s1:begin ctr=2'b01; temp=temp_b; state=s0; end
endcase
  if(cp==2)
  begin        
    c=1;
    cp=0;
  end
  else
  begin
    cp=cp+1;
    c=0;
  end
end
end

always @(posedge clk  )
begin
   if(!clr){temp_a,temp_b}=0;
   else   
    begin
    if(c==1)
    begin
      if({temp_a,temp_b}==8'h59)   {temp_a,temp_b}=0;
      else if(temp_b==9)
          begin
                temp_b=0;temp_a=temp_a+1;
          end
          else temp_b=temp_b+1;
     end
    end
end

always @ (temp)
begin
case(temp)
4'd0:yout=7'b1111110;
                4'd1:yout=7'b0110000;
                4'd2:yout=7'b1101101;
                        4'd3:yout=7'b1111001;
                        4'd4:yout=7'b0110011;
                        4'd5:yout=7'b1011011;
                        4'd6:yout=7'b1011111;
                        4'd7:yout=7'b1110000;
                        4'd8:yout=7'b1111111;
                        4'd9:yout=7'b1111011;
                        default:yout=7'b0000000;
endcase
end
endmodule
其余部分程序:
1.10進制計數器文本輸入
module CNT10(clk,clr,en,cout,q);
input clk,en,clr;
output[3:0] q;
output cout;
reg [3:0] q1;
reg cout;
assign q= q1;
always @(posedge clk or negedge clr)
begin
if (!clr) q1<=0;
else if(en)
begin
if(q1<9) q1<=q1+1;
else q1<=4'b0000;
end
end
always @(q1)
if (q1==4'h9)
cout= 1'b1;
else
cout= 1'b0;
endmodule
2.8-3優先級編碼器
Case語句實現
module bm8_3 ( din ,yout);
input [7:0] din ;
wire [7:0] din ;
output [2:0] yout ;
reg  [2:0] yout;
always @ ( din )
     begin
     case ( din )
         8'b0000_0001 : b<=3'b000;
         8'b0000_0010 : b<=3'b001;
         8'b0000_0100 : b<=3'b010;
         8'b0000_1000 : b<=3'b011;
         8'b0001_0000 : b<=3'b100;
         8'b0010_0000 : b<=3'b101;
         8'b0100_0000 : b<=3'b110;
         8'b1000_0000 : b<= 3'b111;
         default : b<= 3'b000;
     endcase
     end
endmodule
if語句實現
module yxbm8_3 ( A ,I ,GS ,EO ,EI );
input [7:0] I ;
wire [7:0] I ;
output [2:0] A ;
reg [2:0] A ;
always @ ( I )
if ( I[0] == 0 )
A <= 3'b000;
else if ( I[1] == 0 )
A <= 3'b001;
else if ( I[2] == 0 )
A <= 3'b010;
else if ( I[3] == 0 )
A <= 3'b011;
else if ( I[4] == 0 )
A <= 3'b100;
else if ( I[5] == 0 )
A <= 3'b101;
else if ( I[6] == 0 )
A <= 3'b110;
else if ( I[7] == 0 )
A <= 3'b111;
else if ( I == 8'b11111111)
A <= 3'b111;
  end
endmodule



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表