《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的數字秒表設計與仿真
基于FPGA的數字秒表設計與仿真
摘要: 數字集成電路作為當今信息時代的基石,不僅在信息處理、工業控制等生產領域得到普及應用,并且在人們的日常生活中也是隨處可見,極大的改變了人們的生活方式。面對如此巨大的市場,要求數字集成電路的設計周期盡可能短、實驗成本盡可能低,最好能在實驗室直接驗證設計的準確性和可行性,因而出現了現場可編程邏輯門陣列FPGA。
Abstract:
Key words :

數字集成電路作為當今信息時代的基石,不僅在信息處理、工業控制等生產領域得到普及應用,并且在人們的日常生活中也是隨處可見,極大的改變了人們的生活方式。面對如此巨大的市場,要求數字集成電路的設計周期盡可能短、實驗成本盡可能低,最好能在實驗室直接驗證設計的準確性和可行性,因而出現了現場可編程邏輯門陣列FPGA。對于芯片設計而言,FPGA的易用性不僅使得設計更加簡單、快捷,并且節省了反復流片驗證的巨額成本。對于某些小批量應用的場合,甚至可以直接利用FPGA實現,無需再去訂制專門的數字芯片。

文中著重介紹了一種基于FPGA利用VHDL硬件描述語言的數字秒表設計方法,在設計過程中使用基于VHDL的EDA工具ModelSim對各個模塊仿真驗證,并給出了完整的源程序和仿真結果。

1 總體功能結構設計

一個完整的數字秒表應具有計時、相應的控制以及計時結果顯示功能,總體的功能結構如圖1所示。黑色線框內是計數模塊、使能轉化模塊和顯示譯碼模塊,左邊是輸入控制信號,右邊是顯示計時結果的數碼顯示管,用六位BCD七段數碼管顯示讀數,顯示格式如圖2,計時范圍為:1小時,精度為0.01s。
輸入時鐘信號由32MHz的石英晶振提供,考慮到設計指標要求秒表精度為0.01秒,計數脈沖的時鐘輸入就應該是頻率為100Hz的脈沖,所以先要設計一個320000分頻器,分頻器的輸出可作計數器的輸入;其次計數模塊設計應綜合考慮秒表的計時范圍(1小時)和顯示輸出(6位輸出),6位輸出中有兩位是六進制輸出,其余四位是十進制輸出,所以可通過設計4個模10計數器和2個模6計數器來實現,其中較低位的進位輸出就是高位的計數輸入端。
控制模塊應包括開始計時/停止計時、復位兩個按鈕,即電路設計經常用到的使能端和清零端,這兩個控制端口直接接到計數器的清零和史能端即可實現復位、開始計時/停止計時;但是外圍使能輸入需要經過使能轉換電路后,才可變為計數器可用的使能控制信號。因此在輸入使能信號和計數器使能輸入之間需設計一個信號轉換模塊。
顯示計數結果的模塊實現較為簡單,只需將六位計數結果通過七段譯碼電路接到輸出即可點亮數碼管,無需時序控制,直接用組合邏輯電路就可以實現。數碼管顯示可以采用掃描顯示,用一個頻率1KHz的信號掃描一個多路選擇器,實現對六位已經鎖存的計數結果的掃描輸出。
2 各功能模塊設計
2.1 分頻器模塊
分頻器的功能是提供標準時鐘控制信號以精確控制計數器的開閉,提供的標準信號是32MHz,根據設計精度0.01s的要求,輸出信號是100Hz,所以該分頻器實現的功能是320000分頻,具體的VHDL源程序:
process(clk)
begin
if(clk'event and clk='1')then
if (q=159999)then
q<=0;
count_temp<=not count_temp;
else
q<=q 1;
end if;
end if;
end process;
2.2 計數模塊
該計數器要實現最大計數值為59分59秒99的計數,而且為了數碼管顯示方便,該模塊必須通過計數器的級聯來實現,即首先分別設計一個模6計數器和一個模10計數器,然后將他們級聯,其中調用4次模10計數器、2次模6計數器,這樣可以比直接設計模100 的計數器和模60的計數器節省資源。級聯時低位的計數進位輸出接高位的計數輸入端,如圖3所示。再考慮到控制模塊的要求,每個計數器有三個輸入端:時鐘、使能和清零,兩個輸出端:計數輸出和進位輸出,采用同步使能異步清零的設計方法,每個計數器的使能和清零端都與外圍的使能和清零端相聯。

       該模塊的源程序以及ModelSim仿真輸出結果如下:

模6計數器的VHDL源程序如下:
process(clear,clk)
begin
if (clear='1') then
tmp<="0000";
carryout<='0';
elsif(clk'event and clk='1') then
if (rst='0') then
if (tmp="0101") then
carryout<='1';
tmp<="0000";
else
tmp<=tmp 1;
carryout<='0';
end if;
end if;
end if;
模10計數器的VHDL源程序與模6計數器類似,為節省篇幅,不再給出。
2.3 使能信號轉換模塊
數字秒表輸入的開始和停止信號是單個脈沖信號,而計數器要持續計數所需的使能信號是持續的高電平,所以需要通過使能控制電路實現使能信號的轉換。該模塊的VHDL源程序以及ModelSim仿真輸出結果如下:
該模塊源程序:
process(enablein)
begin
if(enablein'event and enablein='1')then
temp<= not temp;
end if ;
end process;
2.4 譯碼顯示模塊
由上面的設計可知,計數器輸出為二進制碼,不能直接點亮數碼管,要想將計數結果通過數碼管顯示必須再設計一個七段譯碼電路,以便將計數結果輸出。通過分析可知該譯碼器是一個4輸入,7輸出元件,其真值表如表1所示:

根據以上真值表可寫出譯碼電路VHDL源程序如下:
process(datainput)
begin
case datainput is
when "0000"=>dataoutput<="0000010";
when "0001"=>dataoutput<="1001111";
when "0010"=>dataoutput<="0010001";
when "0011"=>dataoutput<="0000101";
when "0100"=>dataoutput<="1001100";
when "0101"=>dataoutput<="0100100";
when "0110"=>dataoutput<="0100000";
when "0111"=>dataoutput<="0001111";
when "1000"=>dataoutput<="0000000";
when "1001"=>dataoutput<="0000100";
when others=>dataoutput<="1111111";
end case;
end process;
3 功能驗證以及下載實現
完成以上各個子模塊的設計后,該數字秒表的模塊設計就基本完成了,剩下的工作就是通過一個頂層文件將各個子模塊連接起來。在頂層文件中可以將以上各個子模塊看作一個個黑匣子,只將其輸入輸出端對應相連就可以了。下面是該頂層文件的VHDL源程序:

        architecture Behavioral of topfile is
signal clk:std_logic:='0';
signal enableout:std_logic:='0';
signal data0,data1,data2,
data3,data4,data5:std_logic_vector(3
downto 0):="0000";
component abc
port(clk:in std_logic;
dout:out std_logic);
end component;
component enable
port(enablein:in std_logic;
enableout:out std_logic);
end component;
component highlevel
port(rst,clk,clear:in std_logic;
output1,output2,output3,
output4,output5,output6:out
std_logic_vector(3 downto 0);
carryout:out std_logic);
end component;
component yima
port(datainput:in std_logic_vector(3 downto 0);
dataoutput: out std_logic_vector(6 downto 0));
end component;
begin
u0:abc port map(clkin,clk);
        u1:enable port map(enablein,enableout);
u2:highlevel port map(enableout,clk,clear,data0,data1,data2,data3,data4,data5);
u3:yima port map(data0,dataout0);
u4:yima port map(data1,dataout1);
u5:yima port map(data2,dataout2);
u6:yima port map(data3,dataout3);
u7:yima port map(data4,dataout4);
u8:yima port map(data5,dataout5);
end Behavioral;
由于各個子模塊都已經經過驗證無誤,并且頂層文件中不涉及復雜的時序關系,相當于只是將各個模塊用導線連接起來,只要各個端口的連接對應正確即可,所以不需寫專門的test bench進行驗證。完成以上設計后,即可進行邏輯綜合,綜合無誤后進行管腳適配,生成.bit文件然后下載到實驗板上測試。經過反復多次測試,以上設計完全滿足了預期的設計指標,開始/停止按鍵和清零按鍵都能準確的控制秒表的運行,七段顯示數碼管也能夠準確的顯示計時結果。通過與標準秒表對比,該設計的計時誤差在0.03s以內,而這其中也包括實驗板上晶振由于長期使用所帶來的誤差。
4 結束語
本文所介紹數字秒表設計方法,采用了當下最流行的EDA設計手段。在Xinlinx FPGA開發環境下,采用至上而下的模塊化設計方法,使得系統開發速度快、成本低、系統性能大幅度提升。通過實驗驗證,本文設計的數字秒表計時準確、性能穩定,可以很容易嵌入其他復雜的數字系統,充當計時模塊。
利用EDA設計工具,結合基于FPGA的可編程實驗板,輕松實現電子芯片的設計,現場觀察實驗結果,大大縮短了產品的設計周期和調試周期,提高了設計的可靠性和成功率,體現了邏輯器件在數字設計中優越性。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          一区二区三区精品| 免费91麻豆精品国产自产在线观看| 欧美一区二区三区在线| 国产午夜精品一区二区三区视频| 一区二区三区自拍| 国产乱码精品一区二区三| 亚洲性感激情| 国内成人精品2018免费看| 蜜臀av在线播放一区二区三区| 国产亚洲一区二区在线观看| 狠狠久久亚洲欧美| 国产一区二区三区精品久久久| 亚洲午夜久久久久久久久电影网| 国产一区二区丝袜高跟鞋图片| 亚洲精品少妇网址| 91久久精品一区二区别| 噜噜噜噜噜久久久久久91| 免费在线一区二区| 国产日韩欧美一区在线| 欧美一区二区三区视频免费播放| 欧美二区乱c少妇| 亚洲自拍都市欧美小说| 久热爱精品视频线路一| 久久久久久9999| 国产欧美日韩免费| 欧美无乱码久久久免费午夜一区| 久久久噜噜噜久久| 国产最新精品精品你懂的| 亚洲欧美日韩中文播放| 亚洲风情在线资源站| 亚洲欧美国产视频| 欧美日韩一区二区三区四区在线观看| 亚洲理论在线观看| 亚洲精品乱码久久久久久| 亚洲乱码精品一二三四区日韩在线| 亚洲一二三级电影| 久久精品免费看| 狠久久av成人天堂| 亚洲美女精品久久| 性欧美xxxx大乳国产app| 亚洲国产精品精华液网站| 狂野欧美性猛交xxxx巴西| 亚洲国产精品专区久久| 亚洲欧美另类在线| 美女91精品| 美女视频一区免费观看| 欧美波霸影院| 老司机久久99久久精品播放免费| 欧美午夜宅男影院在线观看| 欧美色综合网| 性欧美暴力猛交另类hd| 久久天堂av综合合色| 亚洲欧洲精品一区二区三区| 性欧美xxxx视频在线观看| 国产日韩欧美综合精品| 免费一级欧美在线大片| 欧美一区二区视频在线观看| 欧美性做爰毛片| 中文网丁香综合网| 欧美日韩福利视频| 欧美日韩亚洲综合| 亚洲高清一区二| 亚洲裸体俱乐部裸体舞表演av| 亚洲黄色在线| 欧美午夜精品久久久久久浪潮| 在线视频欧美精品| 亚洲性感激情| 亚洲免费观看高清完整版在线观看| 国产精品国码视频| 欧美日韩免费看| 尤物视频一区二区| 久久久国际精品| 亚洲欧洲av一区二区三区久久| 欧美亚洲日本一区| 欧美成人精品1314www| 欧美+亚洲+精品+三区| 欧美性一二三区| 久久精品99无色码中文字幕| 欧美一区二区三区视频| 久久黄色网页| 精品电影在线观看| 欧美日韩亚洲高清| 激情国产一区二区| 欧美一激情一区二区三区| 欧美日韩亚洲一区三区| 亚洲欧美国产毛片在线| 久久国产婷婷国产香蕉| 国产在线拍揄自揄视频不卡99| 国产日韩精品视频一区| 最新国产精品拍自在线播放| 欧美另类99xxxxx| 欧美亚洲免费电影| 亚洲视频在线观看三级| 久久一区二区精品| 亚洲第一视频| 欧美成人免费小视频| 亚洲国产婷婷香蕉久久久久久| 欧美激情视频免费观看| 女女同性女同一区二区三区91| 亚洲人成亚洲人成在线观看| 国产精品日韩在线观看| 久久久国产精品一区二区中文| 宅男噜噜噜66一区二区66| 国产一区二区黄色| 久久亚洲色图| 日韩午夜在线视频| 欧美日韩一区在线观看| 欧美国产综合| 欧美一级大片在线免费观看| 亚洲国产美国国产综合一区二区| av成人老司机| 国产精品羞羞答答xxdd| 欧美成人免费大片| 国产女人水真多18毛片18精品视频| 性色av一区二区三区红粉影视| 国产欧美日韩亚洲精品| 99在线精品免费视频九九视| aa亚洲婷婷| 久久久久久综合网天天| 老司机成人网| 亚洲全部视频| 久久久av毛片精品| 欧美精品免费播放| 欧美国产三区| 午夜精品久久久久久久久久久| 一道本一区二区| 欧美国产一区视频在线观看| 国产亚洲午夜高清国产拍精品| 在线观看日韩av电影| 极品中文字幕一区| 久久亚洲不卡| 欧美黑人一区二区三区| 欧美日韩综合久久| 久久99在线观看| 欧美高清日韩| 开心色5月久久精品| 欧美日韩国产成人| 欧美日韩国产一区二区三区地区| 一区二区自拍| 韩国av一区二区三区在线观看| 夜夜嗨av一区二区三区网页| 亚洲免费成人av电影| 久久夜色精品国产亚洲aⅴ| 亚洲成色www久久网站| 日韩午夜激情| 一区二区三区av| 欧美一区二区三区免费看| 欧美18av| 欧美激情一区二区三区在线视频| 欧美日韩高清一区| 欧美xxx成人| 在线成人免费视频| 欧美激情一区二区三级高清视频| 久久久久久夜| 999亚洲国产精| 国自产拍偷拍福利精品免费一| 欧美裸体一区二区三区| 国产精品视频专区| 99国产精品久久久久久久久久| 亚洲日韩中文字幕在线播放| 亚洲三级电影全部在线观看高清| 欧美精品少妇一区二区三区| 欧美电影在线免费观看网站| 久久亚洲国产精品日日av夜夜| 亚洲精品久久久久| 欧美日韩国产精品自在自线| 欧美伦理一区二区| 黄色一区二区在线| 久久精品成人一区二区三区| 91久久精品www人人做人人爽| 欧美精品少妇一区二区三区| 老司机精品导航| 欧美激情欧美狂野欧美精品| 久久精品国产欧美激情| 欧美精选午夜久久久乱码6080| 女同性一区二区三区人了人一| 欧美在线一二三区| 免费日韩一区二区| 久久人91精品久久久久久不卡| 亚洲欧洲综合另类| 在线观看欧美日韩| 亚洲性感美女99在线| 欧美大片一区| 日韩一级黄色av| 久久精品国产亚洲一区二区三区| 国产精品theporn88| 国产精品网站一区| 欧美/亚洲一区| 欧美一区二区三区婷婷月色| 欧美精品久久久久a| 国产精品美腿一区在线看| 欧美有码在线观看视频| 亚洲私拍自拍| 欧美成人高清视频| 国产精品视频精品| 久久久欧美一区二区| 日韩一级二级三级| 亚洲欧美日韩国产一区二区| 亚洲人午夜精品| 亚洲激情影院| 亚洲激情影视| 亚洲乱码日产精品bd| 国产精品啊v在线| 亚洲大片一区二区三区| 亚洲精品自在久久| 久久精品夜色噜噜亚洲a∨| 野花国产精品入口| 久久女同精品一区二区| 国产精品裸体一区二区三区| 久久免费高清视频| 国产麻豆成人精品| 国产精品久久午夜| 亚洲激情视频网| 欧美天天视频| 久久久一本精品99久久精品66| 欧美精品一区二区三区视频| 久久成人一区二区| 精品二区视频| 日韩午夜激情av| 亚洲欧美日韩国产| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美四级电影网站| 蜜臀av在线播放一区二区三区| 欧美精品一二三| 一本色道久久综合亚洲精品婷婷| 午夜精品久久久久久| 久久久噜噜噜久噜久久| 狠狠干狠狠久久| 欧美专区在线| 久久综合电影一区| 欧美午夜不卡影院在线观看完整版免费| 1024成人| 久久先锋影音av| 久久久综合免费视频| 性欧美暴力猛交69hd| 狠狠久久综合婷婷不卡| 欧美不卡激情三级在线观看| 亚洲欧美激情在线视频| 国产精品卡一卡二| 国产专区一区| 久久全国免费视频| 欧美一区二区私人影院日本| 亚洲欧美国产va在线影院| 国产精品欧美久久| 你懂的网址国产 欧美| 亚洲精选一区| 欧美日本免费一区二区三区| 樱桃成人精品视频在线播放| 蜜臀va亚洲va欧美va天堂| 亚洲人成亚洲人成在线观看图片| 亚洲精品一二三区| 日韩视频免费大全中文字幕| 快she精品国产999| 亚洲精品色婷婷福利天堂| 99在线|亚洲一区二区| 国产精品乱人伦中文| 亚洲乱码精品一二三四区日韩在线| 一区二区三区国产在线| 欧美日韩成人在线观看| 久久久久久久综合色一本| 伊人精品成人久久综合软件| 影音先锋中文字幕一区| 久久久噜久噜久久综合| 91久久精品久久国产性色也91| 亚洲日本中文字幕区| 一区二区三区精密机械公司| 欧美一区二区三区在| 久久久久欧美精品| 看片网站欧美日韩| 蜜桃久久精品乱码一区二区| 亚洲一区二区三区色| 美女精品自拍一二三四| 午夜精品美女久久久久av福利| 欧美午夜在线观看| 久久精品亚洲国产奇米99| 激情成人av| 国语自产在线不卡| 亚洲欧美日韩在线观看a三区| 欧美成黄导航| 亚洲麻豆av| av成人激情| 欧美精品一卡| 亚洲全黄一级网站| 久久精品免费看| 欧美一级一区| 欧美另类视频| 国产精一区二区三区| 欧美在现视频| 亚洲国内在线| 亚洲人在线视频| 一区二区三区视频观看| 99ri日韩精品视频| 欧美性理论片在线观看片免费| 一区二区三区在线看| 亚洲黄色三级| 欧美在线一级va免费观看| 欧美国产激情二区三区| 欧美日韩国产在线看| 欧美在线一二三四区| 一本大道久久精品懂色aⅴ| 久久久久综合一区二区三区| 在线观看一区二区视频| 国产午夜精品久久久久久免费视| 亚洲一区尤物| 午夜精品久久| 久久精品一区二区三区中文字幕| 国产综合婷婷| 国产精品日韩一区二区三区| 国产婷婷97碰碰久久人人蜜臀| 久久久久久9| 国产亚洲美州欧州综合国| 亚洲国产精品va在看黑人| 欧美一区二区三区四区在线| 亚洲国产一成人久久精品| 国产精品欧美日韩久久| 国产精品美女www爽爽爽视频| 国产一区视频网站| 日韩系列欧美系列| 欧美在线视屏| 亚洲无限乱码一二三四麻| 午夜久久电影网| 欧美精品日韩三级| 9l国产精品久久久久麻豆| 亚洲美女精品成人在线视频| 亚洲二区精品| 国内精品伊人久久久久av一坑| 亚洲精一区二区三区| 99v久久综合狠狠综合久久|