
摘 要:文章基于FPGA設計了一款數字鐘,采用VHDL語言進行設計。系統包括分頻功能、計時功能、顯示譯碼功能和整點報時功能,并通過QuartusⅡ軟件進行了仿真驗證,經測試,仿真結果完全符合設計要求。系統具有穩定性好,便于修改和移植等優點。
關鍵詞:數字鐘系統;FPGA;QuartusⅡ
引言
數字鐘是我們生產和生活中不可或缺的計時工具,被廣泛的應用。傳統的數字鐘系統,大多是用數字電路芯片或單片機來實現,具有硬件電路復雜、擴展性能差、不方便移植等缺點,因此,不利于系統的更新。
采用FPGA芯片對數字鐘系統進行設計,充分利用FPGA的軟件可編程性,設計方法靈活不受硬件限制,縮短研發周期,利于產品升級。文章就是研究FPGA設計數字鐘系統。
1 數字鐘系統的整體設計
文章設計的數字鐘,主要包括7個子模塊:秒計時模塊、分計時模塊、時計時模塊、星期計時模塊、分頻模塊、譯碼顯示模塊和整點報時模塊。系統有兩個輸入:復位輸入和高頻時鐘信號輸入。復位端是用來對整個系統進行清零復位的,其控制著系統的7個模塊的復位端。高頻時鐘信號輸入先送入分頻器進行分頻,得到1Hz信號。分、秒、時、星期的當前值均送到譯碼顯示模塊進行譯碼,用于共陽數碼管的顯示。同時,將分計時模塊計時值送到整點報時模塊,當分為“00”時,進行整點報時。系統整體設計框圖如圖1所示。
2 計時功能部分的設計
計時功能部分主要包括四個模塊,分別是秒計時模塊、分計時模塊、時計時模塊、星期計時模塊。
秒計時模塊(miaojishi)是一個60進制的計數器。模塊包括兩個輸入,reset復位端和clks時鐘輸入端,當reset為低電平時對計數值進行清零,clks每來一個上升沿計數值加一。模塊有三個輸出,miao1是秒計時值的個位,miao2是秒計時值的十位,enmiao是秒計時的進位端,當計數到59時輸出高電平。
分計時模塊(fenjishi)也是一個60進制的計數器。模塊有兩個輸入分別為reset復位端和clkm時鐘輸入端。當reset為低電平時對計數值進行清零,clkm每來一個上升沿計數值加一。三個輸出,fen1是分計時值的個位,fen2是分計時值的十位,enfen是分計時的進位端,當計數到59時輸出高電平。
時計時模塊(shijishi)是24進制的計數器。模塊有兩個輸入分別為reset復位端和clkh時鐘輸入端。當reset為低電平時對計數值進行清零,clkh每來一個上升沿計數值加一。三個輸出,shi1是時計時值的個位,shi2是時計時值的十位,enshi是時計時的進位端,當計數到23時輸出高電平。
星期計時模塊(xingqishi)是7進制的計數器。模塊有兩個輸入分別為reset復位端和clkd時鐘輸入端。當reset為低電平時對計數值進行清零,clkd每來一個上升沿計數值加一。輸出day為星期計數值。
3 分頻模塊設計
分頻模塊(fenpin1)的主要作用是將高頻輸入信號clk,比如1MHz,進行1000000分頻,得到輸出q為1Hz,為計時功能部分提供基準時鐘信號。
4 譯碼顯示模塊設計
譯碼顯示模塊(decode))的主要功能是將計時功能部分的秒(miao1,miao2)、分(fen1,fen2)、時(shi1,shi2)、星期(day)的計數值進行譯碼,以便送至共陽數碼管進行顯示。輸出m1為miao1的段碼,m2為miao2的段碼,f1為fen1的段碼,f2為fen2的段碼,s1為shi1的段碼,s2為shi2的段碼,d為day的段碼。
5 整點報時模塊設計
整點報時模塊(alert1)的主要作用是當計時為整點時,輸出高電平,控制揚聲器發聲,以提示用戶整點時間到。其輸入reset為復位信號,低電平清零。輸入fen1、fen2來自分計時模塊,當fen1、fen2均為0時,輸出alarm輸出高電平,進行報時。
6 數字鐘系統原理圖及仿真
將7個模塊按照輸入輸出關系連接,數字計時系統原理圖如圖1所示。clk為高頻輸入時鐘信號,reset為系統復位信號。分頻器輸出信號送至秒計時模塊clks端,enmiao連接分計時模塊clkm,enfen連接時計時模塊clkh,enshi連接星期計時模塊clkd。miao1、miao2、fen1、fen2、shi1、shi2、day送至譯碼器,進行譯碼輸出。fen1、fen2同時送至整點報時模塊,當“00”時進行,報時輸出。
數字鐘系統QuartusII仿真圖分別如圖3所示。從圖中可以看到,m1、m2、f1、f2、s1、s2、d為計時的譯碼輸出。當f1、f2譯碼值均為40時,即計數值為“00”時alarm輸出高電平報時,仿真符合設計要求。
7 結束語
文章基于FPGA設計了一款數字鐘,數字鐘具有計時、顯示、報時等功能。設計采用VHDL語言進行編程,層次化的設計方法,底層設計了7個模塊,頂層采用原理圖設計。并通過QuartusⅡ軟件進行了仿真驗證,經測試,仿真結果滿足設計要求。
參考文獻
[1]周潤景,圖雅,張麗敏.基于QuartusⅡ的FPGA/CPLD數字系統設計實例[M].北京:電子工業出版社,2007:239.
[2]閆石.數字電子技術基礎[M].北京:高等教育出版社,2000:158.
作者簡介:張慧(1982-),女,籍貫:江蘇鹽城,鹽城工業職業技術學院,講師,碩士,主要從事電子專業教學,研究方向為移動通信、FPGA/CPLD應用。