日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[FPGA]基于FPGA的数字跑表

發(fā)布時間:2024/7/23 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [FPGA]基于FPGA的数字跑表 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

基于FPGA的數(shù)字跑表的設(shè)計與實(shí)現(xiàn)
一、設(shè)計要求
用FPGA設(shè)計并實(shí)現(xiàn)一個數(shù)字跑表,范圍為0~59分59.99秒??梢詫?shí)現(xiàn)數(shù)字跑表進(jìn)行啟動、停止計時和顯示讀數(shù)三個操作,可以在數(shù)碼管上顯示讀數(shù)。
二、設(shè)計任務(wù)
2.1基本部分
(1)了解FPGA開發(fā)板,了解數(shù)字跑表的功能。
(2)VHDL語言編程實(shí)現(xiàn)數(shù)字跑表系統(tǒng)的功能模塊,數(shù)字跑表進(jìn)行啟動、停止、顯示讀數(shù)操作,并具有計時清零功能;
(3)程序編譯正確,在Modelsim中仿真正確;
(4)采用FPGA開發(fā)板作為開發(fā)平臺,能夠下載驗(yàn)證。
2.2提高部分
能夠采用原理圖設(shè)計法設(shè)計。
三、設(shè)計原理
圖3.1系統(tǒng)框圖

如圖,如果要實(shí)現(xiàn)計時范圍為0~59分59.99秒的數(shù)字跑表并在數(shù)碼管上顯示讀數(shù),那么需要設(shè)計時鐘電路、分頻電路、計數(shù)器電路、譯碼顯示1電路。將DE1-SOC開發(fā)套件中提供的50MHZ時鐘進(jìn)行分頻至100HZ后送入100進(jìn)制計數(shù)器,計數(shù)器計滿100后發(fā)出進(jìn)位信號送入計秒模塊的60進(jìn)制計數(shù)器,計數(shù)器滿60后發(fā)出進(jìn)位信號送入計分模塊的60進(jìn)制計數(shù)器,每個計數(shù)器分別連接不同的數(shù)碼管顯示電路,實(shí)時顯示計時效果。因此使用原理圖輸入設(shè)計法,使用QuartusII軟件編寫元件代碼和繪制原理圖,而后進(jìn)行綜合仿真。
四、設(shè)計方案
4.1 硬件設(shè)計
本設(shè)計需要用到一個穩(wěn)定的50MHZ的時鐘,一個500000分頻的分頻器,一個100進(jìn)制計數(shù)器,兩個60進(jìn)制計數(shù)器,兩個撥碼開關(guān),六個7段數(shù)碼管。綜上所述,DE1-SOC開發(fā)套件提供的FPGA芯片可滿足對分頻器和計數(shù)器的設(shè)計需求,豐富的外部設(shè)備可滿足對數(shù)碼管和撥碼開關(guān)的需求。
圖4.1 DE1-SOC開發(fā)板實(shí)物圖

4.2 軟件設(shè)計
一百進(jìn)制計數(shù)器采用兩個十進(jìn)制計數(shù)器級聯(lián)的方式實(shí)現(xiàn),六十進(jìn)制計數(shù)器采用十進(jìn)制和六進(jìn)制計數(shù)器級聯(lián)的方式實(shí)現(xiàn)。
4.2.1 分頻器

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CLOCK IS PORT(CLK:IN STD_LOGIC;CLKOUT:OUT STD_LOGIC); END CLOCK; ARCHITECTURE RTL OF CLOCK IS SIGNAL CLK_1_REG: STD_LOGIC := '1'; BEGIN CLKOUT<=CLK_1_REG; PROCESS(CLK) VARIABLE COUNT :INTEGER RANGE 0 TO 500000; BEGINIF(CLK'EVENT AND CLK='1')THENIF COUNT = 500000 THENCOUNT:=0;CLK_1_REG<=NOT CLK_1_REG;ELSECOUNT:=COUNT+1;END IF;END IF;END PROCESS;END RTL;

4.2.2 數(shù)碼管顯示電路

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY HEX IS PORT( HEXIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);HEXOUT:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END HEX; ARCHITECTURE RTL OF HEX IS BEGIN PROCESS(HEXIN) BEGINCASE HEXIN ISWHEN "0000" => HEXOUT <="1000000";WHEN "0001" => HEXOUT <="1111001";WHEN "0010" => HEXOUT <="0100100";WHEN "0011" => HEXOUT <="0110000";WHEN "0100" => HEXOUT <="0011001";WHEN "0101" => HEXOUT <="0010010";WHEN "0110" => HEXOUT <="0000010";WHEN "0111" => HEXOUT <="1011000";WHEN "1000" => HEXOUT <="0000000";WHEN "1001" => HEXOUT <="0010000";WHEN "1010" => HEXOUT <="0001000";WHEN "1011" => HEXOUT <="0000011";WHEN "1100" => HEXOUT <="1000110";WHEN "1101" => HEXOUT <="0100001";WHEN "1110" => HEXOUT <="0000110";WHEN OTHERS => HEXOUT <="1000000";END CASE;END PROCESS; END RTL;

4.2.3 十進(jìn)制計數(shù)器

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER10 ISPORT(CLK,CLR,EN: IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR (3 DOWNTO 0);COUT : OUT STD_LOGIC); END COUNTER10; ARCHITECTURE RTL OF COUNTER10 IS BEGINPROCESS(CLK,CLR,EN)VARIABLE Q : STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINIF CLR = '1' THEN Q := (OTHERS => '0');ELSIF CLK'EVENT AND CLK = '1' THENIF EN = '1' THEN IF Q < 9 THEN Q := Q + 1;ELSE Q := (OTHERS => '0');END IF;END IF;END IF;IF Q = "0000" THEN COUT <= '1';ELSE COUT <= '0'; END IF;DOUT <= Q; END PROCESS; END RTL;

4.2.4 六進(jìn)制計數(shù)器

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER6 IS PORT(CLK,CLR,EN: IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR (3 DOWNTO 0);CO : OUT STD_LOGIC); END COUNTER6; ARCHITECTURE RTL OF COUNTER6 IS BEGIN PROCESS(CLK,CLR,EN) VARIABLE Q : STD_LOGIC_VECTOR (3 DOWNTO 0); BEGIN IF(CLR='1')THENQ:="0000";CO<='0'; ELSIF(CLK'EVENT AND CLK = '1') THENIF(EN='1')THENIF(Q <5)THENQ := Q + 1;ELSEQ := (OTHERS => '0');END IF;END IF; END IF; IF Q = "0000" THEN CO <= '1'; ELSECO <= '0'; END IF; DOUT <= Q; END PROCESS; END RTL;




QQ:1187060103

總結(jié)

以上是生活随笔為你收集整理的[FPGA]基于FPGA的数字跑表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。