




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課程設計學生姓名: 專業班級: 指導教師: 工作單位: 題 目: 出租車計價器的設計 初始條件:本設計利用Quartus軟件編寫VHDL代碼,運用EDA實驗箱上的FPGA、數碼管、LED燈、撥碼開關、3/8譯碼器、系統20MHz時鐘等硬件資源,實現簡易的出租車計價器的相關功能。要求完成的主要任務: (包括課程設計工作量及技術要求,以及說明書撰寫等具體要求)1、課程設計工作量:2周。2、技術要求: 設計一個出租車計價器。要求顯示行駛里程、停車時間和計費值。出租車的起步價為3元,當里程行駛到1km后,費用為4元;當里程行駛到1.5km后,費用為5元;,當里程行駛到2km后,費用為6元;當里程行駛到
2、2.5km后,費用為7元;當里程行駛到3km后,費用為8元;此后每公里計費為0.7元。當計費達到20元后,每公里加收50%的車費。停車每達3分鐘,增加0.7元。3、查閱至少5篇參考文獻。按武漢理工大學課程設計工作規范要求撰寫設計報告書。全文用A4紙打印,圖紙應符合繪圖規范。時間安排:1. 2011 年 1 月 10 日集中,作課設具體實施計劃與課程設計報告格式的要求說明。2. 2011 年 1 月 11 日,查閱相關資料,學習電路的工作原理。3. 2011 年 1 月 12 日 至 2011 年 1 月 16 日,方案選擇和程序設計設計。4. 2011 年 1 月 17 日 至 2011 年
3、1 月 20 日,電路調試和設計說明書撰寫。5. 2011 年 1 月 21 日上交課程設計成果及報告,同時進行答辯。課設答疑地點:鑒主13樓電子科學與技術實驗室。指導教師簽名: 年 月 日系主任(或責任教師)簽名: 年 月 日摘 要本文介紹了一種采用單片FPGA芯片進行出租車計費器的設計方法,主要闡述如何使用新興的EDA器件取代傳統的電子設計方法,利用FPGA的可編程性,簡潔而又多變的設計方法,縮短了研發周期,同時使出租車計費器體積更小功能更強大。本設計實現了出租車計費器所需的一些基本功能,計費包括起步價、行車里程計費、等待時間計費,同時考慮到出租車行業的一些特殊性,更注重了把一些新的思路加
4、入到設計中。主要包括采用了FPGA芯片,使用VHDL語言進行編程,使其具有了更強的移植性,更加利于產品升級。關鍵詞:VHDL;計費器;Quartus;FPGAAbstractThis paper describes the use of a single chip FPGA for the design of accounting-fee machine, mainly on how to use the emerging EDA electronic devices designed to replace traditional methods, using the programmable
5、 FPGA, concise and changing the design Ways to shorten the development cycle, so that taxi accounting-fee machine in a smaller more powerful. The design and implementation of the taxi accounting-fee machine for some basic functions, including billing starting price, driving metered, the waiting time
6、 billing, taking into account the special nature of some of the taxi industry, to pay more attention to a number of new Ideas into the design. Mainly including the use of the FPGA chip, the use of VHDL programming, so as to make it a stronger transplanted, and more conducive to product upgrades. Key
7、 words: VHDL, accounting-fee machine , Quartus , FPGA目 錄摘 要2Abstract3目 錄41.緒論52.設計內容及要求62.1.設計的目的及主要任務62.2.設計思想63.設計原理73.1.設計原理及方法73.2.單元模塊設計84.代碼仿真結果104.1.有限次數脈沖發生模塊仿真結果104.2.計數器模塊仿真結果114.3.七段數碼管模塊仿真結果114.4.分頻器模塊仿真結果125.硬件調試136.心得體會147.參考文獻158.附錄168.1.程序源代碼168.2.綜合網絡圖301. 緒論人類社會已經進入信息化時代,信息社會的發展離不開
8、電子產品的進步。現代電子產品在性能提高、復雜度降低的同時,價格卻一直呈下降趨勢,而且產品更新換代的步伐也越來越快,實現這種進步的主要原因就是生產制造技術和電子設計技術的發展。前者以微細加工技術為代表,目前已進展到深亞微米階段,可以在幾平方厘米的芯片上集成數萬個晶體管;后者的核心就是EDA技術1。沒有EDA技術的支持,想要完成超大規模集成電路的設計制造是不可想象的,反過來,生產制造技術的不斷進步又必須對EDA技術提出新要求。EDA代表了當今電子設計技術的最新發展方向,它的基本特征是:設計人員按照“自頂向下”的設計方法,對整個系統進行方案設計和功能劃分,系統的關鍵電路用一片或幾片專用集成電路(AS
9、IC)實現,然后采用硬件描述語言(VHDL)完成系統行為級設計,最后通過綜合器和適配器生成最終的目標器件2。可編程邏輯器件自20世紀70年代以來,經歷了PAL、GAL、CPLD、FPGA幾個發展階段,其中CPLD、FPGA屬高密度可編程邏輯器件,目前集成度以高達200萬門/片,它將掩膜ASIC集成度高的優點和可編程邏輯器件設計生產方便的特點結合在一起,特別適合于樣品研制和小批量產品開發,使產品能以最快的速度上市,而當市場擴大時,它可以和容易地轉由ASIC實現,因此開發風險也大為降低。CPLD/FPGA器件已成為現代高層次電子設計方法的實現載體3。 VHDL是一種全方位的硬件描述語言,包括系統行
10、為級、寄存器傳輸級和邏輯門級多個設計層次,支持結構、數據流和行為3種描述形式的混合描述,因此VHDL幾乎覆蓋了以往各種硬件描述語言的功能,整個自頂向下或自底向上的電路設計過程都可以用VHDL來完成4。另外,VHDL還有以下優點:VHDL的寬范圍描述能力使它成為高層次設計的核心,將設計人員的工作重心轉移到了系統功能的實現和調試上,只需要花較少的精力用于物理實現;VHDL可以用簡潔明確的代碼描述來進行復雜控制邏輯的設計,靈活且方便,而且也便于設計結果的交流、保存和重用;VHDL的設計不依賴于特定的器件,方便了工藝的轉換。VHDL是一個標準語言,為眾多的EDA場上支持,因此移植性好5。2. 設計內容
11、及要求2.1. 設計的目的及主要任務2.1.1. 設計的目的學會在Quartus環境中運用VHDL語言設計方法構建具有一定邏輯功能的模塊,并能運用圖形設計方法完成頂層原理圖的設計。掌握出租車自動計費器的主要功能與在FPGA中的實現方法。2.1.2. 設計任務及主要技術指標 設計一個出租車計價器。要求顯示行駛里程、停車時間和計費值:出租車的起步價為3元,當里程行駛到1km后,費用為4元;當里程行駛到1.5km后,費用為5元;,當里程行駛到2km后,費用為6元;當里程行駛到2.5km后,費用為7元;當里程行駛到3km后,費用為8元;此后每公里計費為0.7元/0.5km。停車每到3分鐘,增加0.7元
12、。通過開關讀入停車信號,在停車時進行計時,顯示格式為時分秒XX-XX-XX,每3分鐘,計價0.7元;按照輪胎轉動1圈為1m計算,計算并顯示行駛的里程結果(單位:Km),格式為:“000.0”。能顯示乘車費用(單位:元),格式為:“000.0”。 運用Quartus軟件中的仿真功能對所設計的出租車自動計費器的各個模塊及頂層電路的功能進行仿真分析。 將所設計的整個系統寫入FPGA器件中,加上需要的外圍電路在實驗箱上實現整個系統的硬件搭建。2.2. 設計思想本次設計首先在Quartus環境中對出租車自動計費器的各個部分利用VHDL這一硬件描述語言予以設計,生成模塊。主要有:運算控制模塊、分頻器、顯示
13、模塊這三大部分組成。由頂層模塊協調控制完成設計任務。3. 設計原理3.1. 設計原理及方法運算控制器分頻器時鐘信號按鍵控制LED狀態顯示七段譯碼器數碼管顯示計時信號計費信號序列計程信號3/8譯碼器分頻模塊控制計數模塊顯示模塊本設計包含運算控制模塊、分頻器、顯示模塊這三大部分。圖1 出租車自動計費器系統框圖運算控制器模塊將其他兩個進行連接,是本次設計的核心。它包含計程器、計時器、計價器,同時還有讀取外部的撥碼開關控制信號,提供當前顯示信號與顯示位選信號,從而周期性交替顯示計價/計時信息、等時信息。計程器在非停車狀態完成計程功能并產生里程計價信號,計時器在停車狀態完成計時功能并產生等時計價信號。計
14、價器是設計的核心與難點,涉及到多種時鐘信號,并有多種計費標準。擬使用有限次高速脈沖發生器向一組級聯的十進制計數器提供不同費率的計價脈沖,根據里程計價信號、等時計價信號、停車開關狀態、當前計費結果等信號,綜合考慮,挑選適合次數的計價脈沖,從而實現不同條件的不同計費。計程器、計時器、計價器根據位選信號,輸出相應數據的當前選中數字,由頂層模塊根據顯示數據類型變換信號進行選擇,傳輸給顯示模塊。實驗箱的時鐘信號為20MHz方波,由分頻器分為10Hz的計時信號(一個周期代表現實中的1s)、10Hz的計程信號(一個周期代表現實中的10m)、500Hz的數碼管掃描信號(掃描頻率62.5Hz)、0.2Hz的顯示
15、數據類型變換信號(變化周期5s)。顯示模塊由實驗箱上的3/8譯碼器、五個LED燈構成狀態的指示燈、程序編寫的一個七段數碼管譯碼器(因顯示需要,原有字形“E”征用改為“”,字形F改為“ ”)組成。本次設計首先在Quartus環境中對出租車自動計費器的各個部分利用VHDL這一硬件描述語言予以設計,進行仿真,然后編寫頂層模塊將各個模塊連接,并對相互之間的信號進行必要處理,從而實現整機功能,最后在實驗箱上進行物理測試,尋找漏洞、調整參數,最終確定設計。3.2. 單元模塊設計3.2.1. 分頻器TAXI_FP模塊設計本設計中分頻器模塊使用了一個通用的分頻器元件例化fp。該模塊從外部讀入系統時鐘方波信號c
16、lk,向外輸出計時信號clk_time,計程信號clk_mil,數碼管掃描信號clk_scan,顯示數據類型變換信號clk_v。具體程序代碼詳見附錄。3.2.2. 計程器MIL模塊設計計程器的核心為一個4位十進制數計數單元cnt10,它由四個十進制計數器級聯構成。在得到停車信號時,計程信號不輸入計數單元,在沒有停車信號stop時,每有10個脈沖clk(100m)才進行計數1次。每當成功計數5次,即500m,產生一個里程計費信號p_mil。在得到復位信號rst時,計程器內部所有計數器和計數信號清零復位,里程計費信號輸出0。根據讀入的位選信號wx決定當前輸出的數值datain。具體程序代碼詳見附錄
17、。3.2.3. 計時器TIM模塊設計計時器有一個24進制cnt24、兩個60進制的計數器cnt60級聯構成計時單元。當停車信號stop為1,進行計時。計時器中還有一個3進制計數器cnt3,每當代表分鐘的60進制計數器計數3次,產生一個等時計費信號p_up。當有復位信號rst時,所有計數單元清零,等時計數信號輸出0。根據讀入的位選信號wx決定當前輸出的數值datain。具體程序代碼詳見附錄。3.2.4. 計價器PRICE模塊設計因為在計費過程中存在1.05元的計費情況,故計價精度精確到分,共有五個計數器。因此計價器的計數單元有四個10進制計數器cnt10,一個10進制計數器cnt10_d。前者復
18、位值為0;后者復位值為3,為價格的第三位計數。它的內部還有一個指定個數脈沖產生器price_s。根據停車信號stop的選擇里程計費信號p_mil或p_t,當計費信號為1時,輸入適當個脈沖,當計費信號為0,脈沖發生器price_s復位。當計費開關switch或復位信號rst為1,計價器所有模塊復位。根據讀入的位選信號wx決定當前輸出的數值datain。具體程序代碼詳見附錄。3.2.5. 顯示模塊設計顯示模塊包含一個8進制計數器cnt8,七段數碼管譯碼器decl7s,實驗箱上的3/8譯碼器。還有五個狀態顯示燈,分別為停車狀態指示stop_s,計費狀態指示switch_s,3個當前顯示內容標志燈st
19、a(2.0)。當系統復位時,數碼管一起顯示相同的任意數,五個狀態顯示燈一起被點亮。正常顯示時,等時信息與計價/計程信號以5s為周期交替顯示。具體程序代碼詳見附錄。3.2.6. 運算控制模塊TAXI設計運算控制模塊將以上各模塊進行連接,綜合,構成出租車計價器。其輸入端有系統時鐘輸入端clk、系統復位信號輸入端rst、停車信號輸入端stop、計費開關switch。輸出端有數碼管字形輸入端segout、point、位選信號輸出端wx、狀態燈控制端stop_s、switch_s、sta。具體程序代碼詳見附錄。4. 代碼仿真結果上文中提到的六個模塊中還運用了一些更小的例化模塊。這些小模塊被上面的設計多次
20、調用,它們雖然小,功能簡單、單一,但是它們功能的正確是調用模塊乃至整個設計功能的保證,它們是整個設計的基石,因此在此著重對小模塊的邏輯功能與仿真結果進行了說明。仿真結果分為功能仿真與邏輯仿真兩幅圖進行呈現。我們會發現時序仿真與功能仿真的波形有差異,這是因為在實際門電路的運行中,電平的處理過程造成了信號的延時。4.1. 有限次數脈沖發生模塊仿真結果該模塊的任務是當使能信號rst為1時產生規定個方波信號,之后輸出結果為0。此處產生兩個脈沖。圖2.有限次數脈沖發生模塊功能仿真圖圖3.有限次數脈沖發生模塊時序仿真圖4.2. 計數器模塊仿真結果該模塊的任務是當輸入脈沖時,進行計數,當有復位信號時,計數器
21、復位。當計數器計滿后,產生進位信號。此處設定計數器的模制為10,復位初始值為0.圖4.計數器模塊功能仿真圖圖5計數器模塊時序仿真圖4.3. 七段數碼管模塊仿真結果該模塊的任務是根據輸入的十六進制信號,輸出數碼管顯示其字形的電平信號。圖6.七段數碼管模塊功能仿真圖圖7.七段數碼管模塊時序仿真圖4.4. 分頻器模塊仿真結果該模塊的任務是將輸入的時鐘信號,進行偶數次分頻,此處選為4分頻進行仿真。圖8.分頻器模塊功能仿真圖圖9.分頻器模塊時序仿真圖5. 硬件調試在完成程序綜合后,進行硬件調試之前,先要對芯片進行定義。具體操作如下:首先點擊AssignmentsDevice,選擇實驗箱所用芯片型號EP1
22、C3T144C8。點選Device and Pin Options。在這里選擇Unused Pins選項卡,將Reserve all unused pins選為As input tri-stated。然后開始進行管腳設定,根據實驗箱的資源配置設置如下:Pin NameLocationI/O StandardPin NameLocationI/O StandardClk16InputSegout397OutputRst49InputSegout498OutputSwitch50InputSegout599OutputStop51InputSegout6100OutputWx283OutputPo
23、int103OutputWx184OutputSta2107OutputWx085OutputSta1108OutputSegout091OutputSta0109OutputSegout194OutputStop_s110OutputSegout296OutputSwitch_s111Output表1.芯片管腳分配表再次進行綜合,正確后就可將文件下載到芯片中。連接下載線,調整實驗箱的跳線后,打開電源,經Quartus中的“PROGRAMMER”菜單,調出編程器窗口。按下編程器窗口中的“START”按鈕,設計的內容就開始下載到FPGA芯片中。進行多組功能組合測試,顯示結果符合設計要求,證明設計
24、成功。6. 心得體會本次課程設計至此已經接近尾聲,兩周的時間雖然很短暫,但在這兩個星期的設計過程中收獲頗豐。設計的核心內容就是Quartus環境中,利用VHDL語言設計出基于FPGA的出租車計費器。整個設計過程中首先對EDA(電子設計自動化)這門課程有了更深的了解,因為課程設計本身要求將以前所學的理論知識運用到實際的電路設計當中去,在電路的設計過程中,無形中便加深了對VHDL語言的了解及運用能力,對課本以及以前學過的知識有了一個更好的總結與理解;以前的EDA實驗只是針對某一個小的功能設計,而此次得EDA課程設計對我們的總體電路的設計的要求更嚴格,需要通過翻閱復習以前學過的知識確立了實驗總體設計
25、方案,然后逐步細化進行各模塊的設計;其次,在電路仿真的過程中總會出現一些問題,需要我們細心解決,所以這兩周下來,我對電路故障的排查能力有了很大的提高;再次,通過此次課程設計,我對設計所用到的軟件有了更加深刻地了解,這對我們以后的工作和學習的幫助都很有用處。感謝學校給我們這次機會,鍛煉了我們的動手能力。通過這次課設讓我明白了理論和實際操作之間差距,而且也讓我很明確得意識到自己在VHDL語言的語法理解上有很多的知識漏洞,以后應該多鉆研一下。同時也感謝指導老師在設計過程中的輔導以及同學的幫助。7. 參考文獻1潘松,黃繼業EDA技術與VHDL北京:清華大學出版社,2007.12宋嘉玉,孫麗霞EDA實用
26、技術北京:人民郵電出版社,2006.12 3齊洪喜,陸穎VHDL電路設計實用技術北京:清華大學出版社,2004.54劉艷萍,高振斌,李志軍EDA實用技術及應用北京:國防工業出版社,2006.15章彬宏EDA應用技術北京:北京理工大學出版社,2007.78. 附錄8.1. 程序源代碼LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;-ENTITY TAXI IS-頂層文件PORT(clk,rst,stop,switch:IN STD_LOGIC
27、;-時鐘;復位、停車、計費開關point,stop_s,switch_s:OUT STD_LOGIC;-小數點、停車、計費狀態 segout:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-數碼管輸出端wx:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);-位選端sta:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);-顯示狀態END ENTITY TAXI;ARCHITECTURE one OF TAXI IS-調用例化元件COMPONENT TAXI_FP IS-系統分頻器 PORT(clk:IN STD_LOGIC;-系統時鐘clk
28、_time,clk_mil,-計時時鐘、計程時鐘clk_scan,clk_v:OUT STD_LOGIC);-掃描時鐘、顯示切換時鐘END COMPONENT;COMPONENT MIL IS-計程器PORT(clk,rst,stop:IN STD_LOGIC;-計程時鐘、復位、停車信號wx:IN STD_LOGIC_VECTOR(2 DOWNTO 0);-位選信號p_mil:OUT STD_LOGIC;-里程計費信號datain:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);-輸出里程數據END COMPONENT;COMPONENT PRICE IS-計價器PORT(c
29、lk_sys,p_t,p_mil:IN STD_LOGIC;-系統時鐘、等時計費、里程計費信號rst,stop:IN STD_LOGIC;-復位、停車信號wx:IN STD_LOGIC_VECTOR(2 DOWNTO 0);-位選信號datain:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);-輸出計價數據END COMPONENT;COMPONENT TIM IS-計時器PORT(clk_time,rst,stop:IN STD_LOGIC;-計時時鐘、復位、停車信號wx:IN STD_LOGIC_VECTOR(2 DOWNTO 0);-位選信號p_up:OUT STD_
30、LOGIC;-等時計費信號datain:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);-輸出等時數據END COMPONENT;COMPONENT decl7s IS-七段數碼管譯碼器PORT(data:IN STD_LOGIC_VECTOR(3 DOWNTO 0);-輸出數據led7s:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-輸出電平信號END COMPONENT;COMPONENT cnt8 IS-8進制計數器PORT (clk:IN STD_LOGIC;-掃描時鐘 q:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);-輸出
31、結果END COMPONENT;-信號定義SIGNAL clk_time,clk_mil,-計時時鐘、計程時鐘 clk_scan,clk_v:STD_LOGIC;-掃描時鐘、顯示切換時鐘SIGNAL p_mil,p_t,rst_s:STD_LOGIC;-里程等時計費信號、復位信號SIGNAL datain,datain_mil,datain_time,-輸出數據相關信號 datain_price:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL wx_signal:STD_LOGIC_VECTOR(2 DOWNTO 0);-位選信號BEGIN-例化元件連線定義u1:TAX
32、I_FP PORT MAP(clk,clk_time,clk_mil,clk_scan,clk_v);u2:MILPORT MAP(clk_mil,rst_s,stop,wx_signal,p_mil,datain_mil);u3:PRICEPORT MAP(clk,p_t,p_mil,rst_s,stop,wx_signal,datain_price);u4:TIMPORT MAP(clk_time,rst_s,stop,wx_signal,p_t,datain_time);u5:decl7sPORT MAP(datain,segout);u6:cnt8PORT MAP(clk_scan,w
33、x_signal);-信號賦值rst_s=(not switch) OR rst;stop_s=stop OR rst;switch_s=switch OR rst;wx=wx_signal;-顯示數據選擇進程PROCESS(rst,clk,wx_signal)BEGINIF rst=1 THENsta =111;point IF wx_signal3 THENdatain=datain_price;ELSE datain=datain_mil;END IF;sta=110;IF wx_signal=101 OR wx_signal=001 THEN point=1;ELSE pointdat
34、ain=datain_time;sta=001;point=0;END CASE;END IF;END PROCESS;END ARCHITECTURE;-ENTITY cnt3 IS-三進制計數器PORT (clk,rst:IN STD_LOGIC;q:out STD_LOGIC);END ENTITY;ARCHITECTURE bhv OF cnt3 ISBEGINPROCESS(clk)VARIABLE cnter :STD_LOGIC_VECTOR (1 DOWNTO 0);BEGINIF (rst=1) THENcnter:=00;q=0; ELSEIF rising_edge(cl
35、k) THEN if cnter=10 then cnter :=00;q=1;elsecnter:=cnter+1;q=0;END IF;END IF;END IF;END PROCESS;END bhv;-ENTITY cnt8 IS-八進制計數器PORT (clk:IN STD_LOGIC;q:out STD_LOGIC_VECTOR(2 DOWNTO 0);END ENTITY;ARCHITECTURE bhv OF cnt8 ISBEGINPROCESS(clk)VARIABLE cnter :STD_LOGIC_VECTOR (2 DOWNTO 0);BEGINIF rising_
36、edge(clk) THEN if cnter=111 then cnter :=000;elsecnter:=cnter+1;END IF;end if;q=cnter;END PROCESS;END bhv;-ENTITY cnt10 IS-十進制計數器PORT(clk,rst:IN STD_LOGIC;co:OUT STD_LOGIC;q:buffer STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY;ARCHITECTURE bhv OF cnt10 ISSIGNAL cnter :STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPR
37、OCESS(clk,rst) BEGINIF (rst=1) THENcnter=0000;co=0; ELSEIF rising_edge(clk) THEN IF cnter=1001 THEN cnter =0000;co=1;ELSEcnter=cnter+1;co=0;END IF;END IF;END IF;q=cnter;END PROCESS;END bhv;-ENTITY cnt10_d IS-初值為“3”的十進制計數器PORT(clk,rst:IN STD_LOGIC;co:OUT STD_LOGIC;q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);E
38、ND ENTITY;ARCHITECTURE bhv OF cnt10_d ISSIGNAL cnter :STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPROCESS(clk,rst)BEGINIF (rst=1) THENcnter=0011;co=0; ELSEIF rising_edge(clk) THEN IF cnter=1001 THEN cnter =0000;co=1;ELSEcnter=cnter+1;co=0;END IF;END IF;END IF;q=cnter;END PROCESS;END bhv;-ENTITY cnt24 IS-24進制
39、計數器PORT (clk,rst:IN STD_LOGIC; c1,c0:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY;ARCHITECTURE bhv OF cnt24 ISBEGINPROCESS(clk,rst)VARIABLE cnter :INTEGER:=0 ;BEGINIF (rst=1) THENc1=0000;c0=0000; ELSEIF rising_edge(clk) THEN IF (c0=1001 OR (c0=0011 AND c1=0010) THEN c0=0000;IF c1=0010 THENc1=0000;
40、 ELSEc1=c1+1;END IF; ELSEc0=c0+1;END IF;END IF;END IF;END PROCESS;END bhv;-ENTITY cnt60 IS-60進制計數器PORT (clk,rst:IN STD_LOGIC;co:OUT STD_LOGIC;c1,c0:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY;ARCHITECTURE bhv OF cnt60 ISBEGINPROCESS(clk,rst)VARIABLE cnter :INTEGER:=0 ;BEGINIF (rst=1) THENc1=0000;
41、c0=0000;co=0; ELSEIF rising_edge(clk) THEN IF (c0=1001) THEN c0=0000;IF c1=0101 THENc1=0000;co=1; ELSEc1=c1+1;co=0;END IF; ELSEc0 led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s led7s NULL;END CASE;END PROCESS;END one;-ENTITY fp IS-通用分頻器GENERIC (N:integer); PORT ( clk:IN STD_LOGIC;fpq:BUFFER STD_LOGIC);END ENTITY;ARCHITECTURE bhv OF fp ISBEGINPROCESS(clk)VARIABLE cnter :INTEGER:=0;BEGINIF rising_edge(clk) THEN IF cnter=N-1 then cn
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 吉林省白城市洮北區2025屆三年級數學第二學期期末經典模擬試題含解析
- 南寧學院《俄語精讀Ⅴ》2023-2024學年第一學期期末試卷
- 吉林省長春市157中學2025年初三月考卷(六)英語試題含答案
- 淺談腦梗患者護理小常識
- 湛江十中高三月周測考試文綜地理試題
- 2025煤炭運輸、安全合同
- 2025校園照明系統維修承包合同
- 2025廣告設計制作合同2
- 《2025租賃合同提前終止協議》
- 2025年居間合同示范文本
- 私人水源轉讓協議合同
- 2025年中國坡莫合金磁芯行業市場發展現狀及投資戰略咨詢報告
- 2025年河南省三門峽黃河明珠集團有限公司招聘筆試參考題庫含答案解析
- 教育培訓公司的成本控制
- 四川成都歷年中考作文題與審題指導(2005-2024)
- 北京市網球運動管理中心2024年下半年公開招聘工作人員筆試歷年典型考題及考點剖析附帶答案詳解
- 電視臺采編崗試題及答案
- 2025-2030中國全自動洗鞋機行業市場現狀供需分析及市場深度研究發展前景及規劃可行性分析研究報告
- 期貨交易基礎知識單選題100道及答案
- 《羅萊生活公司基于平衡計分卡的業績評價應用案例》9700字【論文】
- 高二生物-2025-2025學年高二年級下冊期中生物試卷
評論
0/150
提交評論