8位雙向移位寄存器verilog設計

系統功能
設計一個8位雙向移位寄存器,實現並行輸入數據、數據左移、右移、清空數據的功能。

程序主要包括移位寄存器模塊和按鍵去抖模塊

① Key1 控制撥碼輸入:

a) key_flag1, key_state1實現Key1去抖(if(key_flag1 && (!key_state1)));
b) key_cnt [3:0]從0開始在每一次Key1 按下後加1,累積到3後再按下Key1, key_cnt 清零;
c) en_num1爲高4位輸入使能信號,en_num2爲低4位輸入使能信號,en_num3爲輸入確認使能信號(都爲高水平有效);
d) key_cnt 的數值控制c)中3個使能信號的值;


② Key2 , Key3控制移位方向:

a) 按鍵去抖同Key1 a);
b) turn_left爲左移使能信號,turn_right爲右移使能信號(都爲高水平有效);
c) key_cnt 的數值控制c)中3個使能信號的值;

③ Clk 同步時鐘信號,Reset異步清零:

 

 本程序用verilog編寫,在quartusII上完成。

 


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章