2012年10月18日 星期四

P6-10 無Debounce 16 bits Register

P6-10 無Debounce 16 bits Register

SW[0] =1  (往上推)  按 KEY[0] 後LEDR[15:0] 全部 亮
所以還是要Debounce 

module REG16_BPA(CLOCK_50,SW, KEY, LEDR, LEDG );

input  [17:0] SW; // toggle switches
input  [7:0]  KEY;
input  CLOCK_50;    //Clock 50MHZ
output [17:0] LEDR; // red LEDs
output [7:0]  LEDG; // green LEDs


    /*
output [3:0] Qout;
input CLK, RESET;
input Din;
*/
//wire [3:0] Qout  disable , reg[3:0]Qout;
wire  CLK;
wire  RESET;
reg [15:0] Qout;

//assign to DE2-70 hardware     

    assign CLK = KEY[0];
    assign RESET= KEY[1];
    assign Din =SW[0];
    
always @ (posedge CLK or negedge RESET)
//Positive edge CLK and asynchronous RESET
if (!RESET)
Qout = 16'b0000_0000_0000_0000;
else
begin
Qout[0] = Din;
Qout[1] = Qout[0];
Qout[2] = Qout[1];
Qout[3] = Qout[2];
Qout[4] = Qout[3];
Qout[5] = Qout[4];
Qout[6] = Qout[5];
Qout[7] = Qout[6];
Qout[8] = Qout[7];
Qout[9] = Qout[8];
Qout[10] = Qout[9];
Qout[11] = Qout[10];
Qout[12] = Qout[11];
Qout[13] = Qout[12];
Qout[14] = Qout[13];
Qout[15] = Qout[14];

end

assign LEDR[15:0]=Qout;

endmodule

沒有留言:

張貼留言

習題解答 (5/6)

  第五章 習題解答 一、 錯誤偵測技術 1. 何謂循環冗餘檢查法 (CRC)? 是一種根據傳輸資料產生簡短固定位數校驗碼的演算法。發送端將資料除以一個特定的多項式,得到的「餘數」即為 CRC 碼並隨資料發送;接收端以同樣多項式除之,若餘數為 0 則代表資料傳輸正確。 2. 何...