[畢業(yè)論文]基于FPGA的電話計費器設(shè)計_第1頁
[畢業(yè)論文]基于FPGA的電話計費器設(shè)計_第2頁
[畢業(yè)論文]基于FPGA的電話計費器設(shè)計_第3頁
[畢業(yè)論文]基于FPGA的電話計費器設(shè)計_第4頁
[畢業(yè)論文]基于FPGA的電話計費器設(shè)計_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、信息學(xué)院eda技術(shù)及應(yīng)用課程論文題目:基于fpga的電話計費器設(shè)計 作 者 班 級 系 別 信息學(xué)院 專 業(yè) 自動化 完成時間 2010年12月20日 1 緒論1.1 fpga發(fā)展及現(xiàn)狀隨著先進科技的發(fā)展,計算機仿真與應(yīng)用技術(shù)也在發(fā)生著日新月異的變化。在計算機技術(shù)實現(xiàn)重大飛躍的同時,復(fù)雜可編程邏輯器件(cpld)的應(yīng)用逐步滲透到生產(chǎn)與生活各個方面,給人們生活帶來了極大方便。因其性能的不斷提高,應(yīng)用范圍也越來越廣。1.2 電話計費器相關(guān)背景在商品經(jīng)濟迅猛發(fā)展中,人們對電話的需求日益增長,大力發(fā)展和普及公用電話,以滿足人們?nèi)粘I钜约傲鲃尤丝谵k理業(yè)務(wù)之需已成為當(dāng)前市場趨勢。在公用電話業(yè)務(wù)發(fā)展中,由

2、于諸多原因,計費不準的現(xiàn)象屢見不鮮,相關(guān)管理混亂,給人們生活帶來極大不便。為了使電話計費更加準確,本文將介紹一種采用fpga設(shè)計實現(xiàn)電話計費器的方法。1.3 基于fpga實現(xiàn)電話計費器的方案設(shè)計基本原則本文將針對自動計費電話機為例,給出方案設(shè)計基本原則如下:1. 金能夠通過選擇增減的方式快速設(shè)定卡內(nèi)的余額(最大顯示定為200元);2. 能夠設(shè)計通話的種類(如按13鍵選擇),并能夠根據(jù)打電話的種類和通話時間進行金額的扣除:1為市話(0.1元/分鐘),2為國內(nèi)長途(1元/分鐘),3為特殊種類電話(1.6元/分鐘);3. 能進行余額不足的報警:市話低于0.5元報警;國內(nèi)長途低于5元報警;國際長途低于

3、10元報警;特殊電話低于8元報警;并且當(dāng)余額不足以通話一分鐘即停止通話。因為在設(shè)計中只對電話機的計費系統(tǒng)進行設(shè)計,而沒有涉及到電話通話的信令過程,因此通話類型必須由外部輸入。1.4 論文主要完成的工作本文主要完成對電話計費系統(tǒng)的fpga設(shè)計,其中包括系統(tǒng)組成框圖、相關(guān)電路設(shè)計(包括控制與計費模塊、顯示模塊、報警模塊、頂層電路圖)、系統(tǒng)仿真三大部分。設(shè)計語言采用verilog_hdl硬件描述語言。2 系統(tǒng)的硬件設(shè)計2.1電話計費器的控制要求為了使電話計費器能夠正常穩(wěn)定運行,在設(shè)計時應(yīng)考慮到如下幾點:1. 在插入電話卡的同時,電話計費器的控制模塊開始工作;2. 電話計費控制器與正常通話計費、計時模

4、塊相連,以實現(xiàn)整個系統(tǒng)的計費計時功能;3. 如果卡內(nèi)余額不足,報警模塊將實現(xiàn)報警功能,報警模式采用聲光報警;4. 計費計時模塊與顯示模塊相連,顯示模塊應(yīng)實現(xiàn)對通話時間以及對話費余額的顯示功能。其計費一般過程可概括為:用戶插入電話卡整個系統(tǒng)開始運行顯示卡內(nèi)余額。由于沒有信號接受器,該系統(tǒng)將由外部輸入通話類型(市話、國內(nèi)/國際長途、特殊電話等)。如果選擇通話,計費系統(tǒng)將話費余額與所選通話類型計費率進行比較。如果話費余額小于費率值,則禁止通話且報警提示;如果話費余額大于等于通話二分鐘門限, 是正常通話狀態(tài), 通話指示燈亮;如果話費余額大于或等于費率值并且小于通話二分鐘門限,則進入通話報警狀態(tài),表示通

5、話時間不足一分鐘,通話報警燈亮,通話指示燈閃爍且聲音報警。根據(jù)電話計費器的工作過程,本系統(tǒng)采用分層次化、分模塊的方式設(shè)計,本系統(tǒng)設(shè)計的系統(tǒng)組成框圖如圖1所示三個模塊:控制與計費模塊、顯示模塊和報警模塊。如圖中虛線框所示。控制與計費模塊完成計費功能并產(chǎn)生控制信號,控制另外兩個模塊。顯示模塊動態(tài)顯示通話時間與通話余額計費等信息。報警模塊是根據(jù)通話中出現(xiàn)的報警信息,及時給出聲、光或者聲光同時報警。圖1電 話 計費 控 制器時 鐘正 常 通 話計 費 計 時模 塊顯 示方 式通話計時顯示話費余額顯示余 額 不 足 聲 光報 警插入電話卡2.2方案設(shè)計和功能分割本系統(tǒng)采用層次化、模塊化的設(shè)計方法,設(shè)計順

6、序采用自底向上設(shè)計。首先實現(xiàn)系統(tǒng)總體框圖(圖1)中各子模塊然后由頂層模塊調(diào)用各子模塊實現(xiàn)整個系統(tǒng)。為了便于bcd碼顯示,這里時間和費用計數(shù)器均采用十進制表示。2.3各功能模塊的設(shè)計和實現(xiàn)2.3.1 控制與計費模塊 該模塊的主要功能是控制電話的計費和報警,是整個設(shè)計的核心??刂婆c計費模塊輸入信號有:插卡輸入信號enable(準備通話)、mode2:0(通話類型選擇與充值信號)、clk(系統(tǒng)工作的秒脈沖時鐘信號)。具體工作過程為:初始化顯示上次卡內(nèi)的余額,且enable為無效電平,當(dāng)用戶按下enable鍵,使之成為有效電平時電路進入工作狀態(tài)。首先判斷通話類型mode2:0(國內(nèi)長途,市話,特殊電話

7、)。若mode2:0=3b0xx,表示進入通話狀態(tài)。計費系統(tǒng)將余額與所選取的通話類型計費率(每分鐘所收取的費用)進行比較。如果話費余額balance小于費率fee值,則禁止通話且聲音報警;如果話費余額balance 大于等于門限limit(只能通話二分鐘門限),是正常通話狀態(tài),通話指示燈亮;如果話費余額balance大于等于費率fee值并且balance小于limit,則進入通話報警狀態(tài),表示通話時間不足二分鐘。通話報警燈亮,通話指示燈閃爍且聲音報警。計費過程:當(dāng)下一分鐘到來且電路工作在限制通話或正常工作狀態(tài),則在秒脈沖的下降沿余額發(fā)生改變,并將改變后的值輸出至顯示模塊。2.3.2 顯示模塊該

8、模塊的主要功能是實時顯示通話時間和話費余額。余額顯示采用數(shù)據(jù)流方式描述;時間顯示由于采用bcd 碼顯示,每一位的有效狀態(tài)為09;同時存在60分頻問題,所以采用行為級描述比較簡單。2.3.3 報警模塊該模塊的功能是產(chǎn)生聲光報警信號,提示用戶卡內(nèi)余額不足??刂婆c計費模塊允許輸出信號on,報警輸出warn及整個系統(tǒng)的輸入允許信號enable作為該模塊的控制信號,當(dāng)報警條件滿足時,通話指示燈閃爍或聲音提示。2.4 控制系統(tǒng)的實現(xiàn)整個系統(tǒng)各模塊設(shè)計仿真實現(xiàn)后,分別創(chuàng)建成元件符號,將各個模塊用verilog_hdl語言或者圖形的方法連接起來,形成頂層模塊。然后創(chuàng)建工程,經(jīng)過輸入、調(diào)試、綜合、適配、仿真后,

9、確認能夠?qū)崿F(xiàn)系統(tǒng)所有功能后,進行編程下載,最終實現(xiàn)對整個系統(tǒng)的控制。3 系統(tǒng)的軟件設(shè)計3.1 軟件整體設(shè)計本系統(tǒng)設(shè)計的系統(tǒng)組成框圖如圖1 所示。包括三個模塊:控制與計費模塊、顯示模塊和報警模塊。如圖中虛線框所示??刂婆c計費模塊完成計費功能并產(chǎn)生控制信號,控制另外兩個模塊。顯示模塊動態(tài)顯示通話時間與通話余額計費等信息。報警模塊是根據(jù)通話中出現(xiàn)的報警信息, 及時給出聲、光或者聲光同時報警。本系統(tǒng)采用verilog_hdl硬件描述語言進行設(shè)計。3.2 主要模塊軟件設(shè)計3.2.1 控制與計費模塊流程圖充值模塊0on=0,state=0,warn=0enablemode2=0?balfee?ballim

10、it?on=0,state=0,warn=1on=1,state=1,warn=1on=1,state=1,warn=10101110圖23.2.2 顯示模塊流程圖0now(當(dāng)前狀態(tài))state=1?disp_times=0disp_timem=0disp_times+count+initial statenext statecount=60?disp_times+disp_times+disp_timem+;balance=balnext statenext state011圖33.2.3 報警模塊流程圖圖4alarm=xindicator=0enablewarnalarm=0indicat

11、or=0alarm=0indicator=1alarm=clk1indicator=clk201013.2.4 頂層電路圖各模塊設(shè)計仿真實現(xiàn)后,分別創(chuàng)建成元件符號。頂層就是將各分模塊用verilog_hdl語言或者是圖形的方法連接起來。下圖5所示是采用圖形的方法新建一電路圖,在圖中添加各模塊元件符號,連接實現(xiàn)系統(tǒng)電路。圖53.3 系統(tǒng)仿真 圖6是正常通話過程中特殊電話類計費的情形。圖7是仿真國內(nèi)長途計費中出現(xiàn)不足一分鐘通話時間聲光報警。圖8是仿真余額不足自動禁止通話聲音報警的情形。圖6圖7圖84 結(jié)束語本文介紹了一種全新的電話計費系統(tǒng)的fpga 設(shè)計方法, 如果結(jié)合到實際改變設(shè)計中計費要求,

12、就可以應(yīng)用到各種自動電話計費系統(tǒng)中。5 總結(jié)通過對本學(xué)期數(shù)字系統(tǒng)設(shè)計與verilog hdl這門課的學(xué)習(xí),我初步了解了eda和數(shù)字系統(tǒng)設(shè)計的相關(guān)知識,其中包括eda技術(shù)、fpga/cpld器件、verilog hdl硬件描述語言等。此門課以quartus 、synplify pro/synplify軟件為平臺,以verilog-2001和verilog-1995為語言標準,以可綜合的設(shè)計為重點,并通過老師對已經(jīng)過大量實踐驗證的數(shù)字設(shè)計實例的講解,使我們在學(xué)習(xí)過程中培養(yǎng)了興趣,增長了知識,并且能夠?qū)唵蔚南到y(tǒng)進行設(shè)計與實現(xiàn)。隨著計算機技術(shù)和微電子技術(shù)工藝的發(fā)展,現(xiàn)代數(shù)字系統(tǒng)的設(shè)計和應(yīng)用進入了新的

13、階段。電子設(shè)計自動化技術(shù)(eda)在數(shù)字系統(tǒng)設(shè)計中起的作用越來越重要,新的工具和新的設(shè)計方法不斷推出,可編程邏輯器件不斷增加新的模塊,功能越來越強,硬件設(shè)計語言也順應(yīng)了形勢,推出新的標準,更加好用,更加便捷。為了順應(yīng)時代潮流的發(fā)展,越來越多的數(shù)字系統(tǒng)將采用硬件描述語言來進行設(shè)計,作為一個從事數(shù)字系統(tǒng)設(shè)計開發(fā)的工程師,必須至少熟練掌握一種hdl語言。為了鞏固學(xué)習(xí)效果和實踐動手能力,杜絕死記硬背,充分鞏固對在課程學(xué)習(xí)的相關(guān)知識,采用課程設(shè)計的方法有利于考查我們綜合應(yīng)用的能力,提高其動手和分析能力,為今后的學(xué)習(xí)和就業(yè)提供幫助。這次課程設(shè)計,不僅使我鞏固了word 2003的用法,同時也鍛煉了我的綜合

14、應(yīng)用能力。在設(shè)計過程中,通過查找相關(guān)資料,培養(yǎng)了我搜索信息的能力,提高了動手和分析能力??傊?,我在這次課程設(shè)計中受益匪淺。6 源程序代碼6.1 頂層模塊module top(enable,clk3,purse,mod,time1,time2,clk1,clk2,indicator,alarm,balance2); input enable,clk3,clk1,clk2;input1:0 mod;input15:0 purse; output indicator,alarm;output7:0 time1,time2;output15:0 balance2; reg indicator,alar

15、m;reg7:0 time2,time1;reg15:0 balance2; wire on,state,warn;wire15:0 times,banlance1; control(enable,clk3,purse,mod,on,state,warn,times,balance1); disp(state,times,balance1,time1,time2,clk3,balance2); warning(enable, clk1, clk2, warn, on, indicator, alarm);endmodule6.2 控制與計費模塊module control(enable,clk

16、3,purse,mod,on,state,warn,times,balance); input enable,clk3; input1:0 mod; input15:0 purse; output on,state,warn; output15:0 times,balance; reg on,state,warn; reg15:0 times,balance; reg7:0 fee; reg11:0 limit;always(negedge clk3)/費率及極限的賦值 begin case (mod) 2b00 : begin fee=16; limit=80; end 2b01 : beg

17、in fee=01; limit=5 ; end 2b10 : begin fee=10; limit=50; end 2b11 : begin fee=20; limit=100;end endcase endalways (negedge clk3)/余額與費率及極限的比較 begin if (enable) begin if (purse7:0fee) begin on=0; state=0; warn=1;end else if (purse11:0limit) begin on=1; state=1; warn=1;end else begin on=0; state=1; warn

18、=1;end end else begin on=0; state=0; warn=0; end endalways(negedge clk3)/計時 begin if (enable) begin if (times=16b0101100101011001) times=16d0; else if (times11:0=12b100101011001) begin times11:0=12d0; times15:12=times15:12+4b0001; end else if (times7:0=8b01011001) begin times7:0=8d0; times11:8=times

19、11:8+4b0001; end else if (times3:0=4b1001) begin times3:0=4b0000; times7:4=times7:4+4b0001; end else times3:0=times3:0+4b0001; end else times=0; endalways (negedge clk3)/剩額的計算 begin if (enable) begin if (balance3:0fee7:4) begin balance7:4=balance7:4-fee7:4-4b0001; balance3:04b0000) begin balance11:8

20、=balance11:8-4b0001; balance7:4=balance7:4+(4b1001-fee7:4); balance3:0=balance3:0+(4b1010-fee3:0); end else begin balance15:12=balance15:12-4b0001; balance11:8=4b1001; balance7:4=balance7:4+(4b1001-fee7:4); balance3:0=balance3:0+(4b1010-fee3:0); end else if (balance7:40) begin balance11:8=balance11:

21、8-4b0001; balance7:4=balance7:4+(4b1010-fee7:4); balance3:0=balance3:0-fee3:0; end else begin balance15:12=balance15:12-4b0001;balance11:8=4b1001; balance7:4=balance7:4+(4b1010-fee7:4); balance3:0=balance3:0-fee3:0; end end else begin balance7:0=balance7:0-fee; end end else balance=purse; endendmodule6.3 顯示模塊module disp(state,times,balance1,time1,time2,clk3,balance2); input state,clk3; input15:0 balance1,times; output15:0 balance2;output7:0 time1,time2; reg7:0 time1,time2; reg15:0 balance2;always (posedge clk3) begin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論