2019年11月8日 星期五

設計一個JK 正反器 適用於DE2-70

設計一個JK 正反器 適用於DE2-70

// .J(SW[0]),
// .K(SW[1]),
// .Clk(KEY[0]),
// .Q(LEDR[0]) ,
// .Qnot(LEDR[1])





module JK_FF(SW,KEY,LEDR,CLOCK_50);
 input [17:0]SW;
 input [3:0]KEY;
 input CLOCK_50;
 output [17:0]LEDR;

 JK_FlipFlop ( .J(SW[0]),
.K(SW[1]),
.Clk(KEY[0]),
.Q(LEDR[0]) ,
.Qnot(LEDR[1]) );

endmodule


module JK_FlipFlop ( J,K,Clk ,Q ,Qnot);
       output Q,Qnot;
       input J,K,Clk;
 
       reg Q;
       assign Qnot = ~ Q ;
 
       always @ (posedge Clk)
       case ({J,K})
              2'b00: Q = Q;
              2'b01: Q = 1'b0;
              2'b10: Q = 1'b1;
              2'b11: Q = ~ Q;
       endcase
endmodule


/*
SW[0] PIN_N25   --> J
SW[1] PIN_N26   --> K

LEDR[0] PIN_AE23  -->Q
LEDR[1] PIN_AF23  -->Q_bar

KEY[0] PIN_G26  --> Clk

module jk_flip_flop(J, K, clk, Q);
          input J, K, clk;
         output Q;
         reg Q;
         reg Qm;

always @(posedge clk)

if(J == 1 && K == 0)
            Qm <= 1;

          else if(J == 0 && K == 1)

           Qm <= 0;

         else  if(J == 1 && K == 1)
Qm <= ~Qm;

Q <= Qm;

endmodule
     
//=========================================================
// 範例:JK 正反器(Flip-Flop) [範例01]
// 目的:1.認識JK flip-flop FPGA硬體電路工作原理
//      2.認識Verilog HDL行為模型的JK Flip-Flop編寫應用
//=========================================================
`timescale 1ns / 1ps

//JK 正反器(Flip-Flop)
module JK_FF_example01_SD(J,K,CLK,Q,Qnot);
       output Q,Qnot;
       input J,K,CLK;
 
       reg Q;
       assign Qnot = ~ Q ;
 
       always @ (posedge CLK)
       case ({J,K})
              2'b00: Q = Q;
              2'b01: Q = 1'b0;
              2'b10: Q = 1'b1;
              2'b11: Q = ~ Q;
       endcase
endmodule




*/

沒有留言:

張貼留言

2024_09 作業3 以Node-Red 為主

 2024_09 作業3  (以Node-Red 為主  Arduino 可能需要配合修改 ) Arduino 可能需要修改的部分 1)mqtt broker  2) 主題Topic (發行 接收) 3) WIFI ssid , password const char br...