freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的數(shù)字頻率計設(shè)計(參考版)

2025-02-08 06:26本頁面
  

【正文】 fc(乘法器的輸出)與 Nc 的商,從而獲得被測信號的頻率值。下一個閘門開啟周期( GateIn=‘ 1’)到來前,要用 CLR 輸入信號對計數(shù)器清零,從而開始下 一次的測頻周期。 該計數(shù)器中, CLR 實現(xiàn)了異步清零的功能,并且只有在 GateIn 為‘ 1’時,計數(shù)器才對 CLK 進行計數(shù)。所以 CntValue 定義為 24 位寬的數(shù)組( Vector 類型)。該信號來自于測頻控制器,由測頻控制器來協(xié)調(diào)計數(shù)過程。 CLR 是清零信號輸入端。對計數(shù)器 1, CLK 端口接基準頻率(時鐘)信號,對計數(shù)器 2,該端口接被測脈沖信號。 C n t V a l u eC LKG a t e I nC LRC n t V a l u e 圖 44 計數(shù)器的外部端口圖 計數(shù)器的端口 信號 計數(shù)器的實體名為 Counter,有三個輸入信號 CLK、 GateIn、 CLR,以及三個輸出信號 CntValue、 CF、 CntV_En。 計數(shù)器模塊 計數(shù)器是頻率測量中的最重要的測量模塊,計數(shù)器 2 在閘門信號開啟的時間內(nèi)分別對基準頻率信號(時鐘)、被測脈沖信號進行計數(shù),計數(shù)結(jié)果送入運算器進行測量基于 FPGA的數(shù)字頻率計設(shè)計 24 結(jié)果的計算。而用這些并行語句所描述的流程間也就有了“并發(fā)性”。這是VHDL 語言的特殊性。 預(yù)置閘門信號發(fā)生器和 D 觸發(fā)器的設(shè)計流程圖如圖 4圖 43 所示。 測頻閘門信號 GateOut 在開啟的時間間隔內(nèi)允許計數(shù)器 2 進行計數(shù)。 預(yù)置閘門信號發(fā)生器和 D 觸發(fā)器在結(jié)構(gòu)體中用兩個并行的進程語句實現(xiàn)。使得預(yù)置閘門輸出脈寬 周期為 1s 的閘門信號。 GateOut 是測頻閘門信號輸出端,輸出和 T_PULS 同步的實際的測頻閘門信號,用以控制計數(shù)器 2 的計數(shù)時間。 T_PULS 是和被測信號同頻的脈沖輸入信號。 基于 FPGA的數(shù)字頻率計設(shè)計 22 S_CLK 是基準頻率信號輸入端,或稱為時鐘信 號輸入端。 G a t e _ S i g n a lT _ ONS _ C LKT _ P U LSG a t e O u t 圖 41 閘門信號模塊外部端口圖 測頻閘門信號模塊的端口信號 測頻閘門信號產(chǎn)生模塊的實體名稱為 Gate_Signal,有三個輸入信號 T_ON、 S_CLK、T_PULS,有一個輸出信號 GateOut。 測頻閘門信號產(chǎn)生模塊的設(shè)計 該模塊將預(yù)置閘門信號和 D 觸發(fā)器合在一起進行設(shè)計。首先把模塊按功劃分為幾個子模塊,然后分別用 VHDL 實現(xiàn),最后通過頂層設(shè)計文件將各個子模塊組裝在一起共同完成測頻和顯示控制的功能。 設(shè)計實現(xiàn)過程是首先用 VHDL 語言實現(xiàn)頻率計核心模塊 — 測頻顯示模塊的設(shè)計 ,然后再用硬件電路實現(xiàn)各輔助模塊的設(shè)計。 基于 FPGA的數(shù)字頻率計設(shè)計 21 第 四 章 頻率計各功能模塊的設(shè)計實現(xiàn) 本課題頻率計采用第 三 章的設(shè)計方案,以 Altera 公司的 Cyclone 系列 FPGA 器件EP1C3T144C8 為核心器件實現(xiàn)頻率計的設(shè)計。 后半部分 主要提出了頻率計的總體設(shè)計方案,并對方案中頻率計各個模塊的設(shè)計原理進行了說明。 END PROCESS。 END CASE。 END IF。039。ELSE RES_REMAIND = DIV_NUM_r。 WHEN to_stdlogicvector(divide_s1, 4) = 基于 FPGA的數(shù)字頻率計設(shè)計 20 IF (DIV_NM_r = DIV_FOCUS_r) THEN RES_QUOTIENT_xhdl0 = RES_QUOTIENT_xhdl0 + 0001。 RES_REMAIND = 0000。 DIV_FOUS_r = DIV_FOCUS。) THEN divide_state = to_stdlogicvector(divide_s1, 4)。 IF (LOAD_pos_edge = 39。 divide_state = to_stdlogicvector(divide_idle, 4)。 BSY = 39。) THEN RES_QUOTIENT_xhdl0 = 0000。) THEN IF ((NOT(RST_N)) = 39。EVENT AND CLK = 39。該部分代碼 如下 。 除法器設(shè)計 由于 FPGA 并沒有提供硬件除法器,在實際設(shè)計過程中,除法會耗費大量的邏輯資源,于是我們單獨設(shè)計了除法器,并采用了循環(huán)相減法,具體的設(shè)計就是除數(shù)依次減去被除數(shù),一直減少到除數(shù)小于被除數(shù),此時記下此過程中的商數(shù)和余數(shù)就是 所求的結(jié)果。 divide_num_state = to_stdlogicvector(divide_num_s2, 5)。 amp。 基于 FPGA的數(shù)字頻率計設(shè)計 19 temp_result = (39。139。 END IF。139。139。 DIV_NUM = temp_result(23 DOWNTO 0)。 END IF。039。139。) THEN divide_num_state = to_stdlogicvector(divide_num_s1, 5)。 IF (T_ok = 39。 該過程將數(shù)的最高位拆分出來保存到 D_msb0 寄存器里面。 數(shù)碼管拆分過程 由于在顯示到數(shù)碼管過程里面,數(shù)據(jù)需要依次拆分到各個位,于是我們設(shè)計了拆分過程,原理 就是 對一個數(shù)采取分權(quán)相除法,依次取出各個位。 END IF。 基于 FPGA的數(shù)字頻率計設(shè)計 18 END IF。 ELSE C_t = C_t + 0000000000000000000000001。139。139。 計數(shù)單元部分代碼設(shè)計: PROCESS (SIG_I) BEGIN IF (SIG_I39。 計數(shù)單元我們采用單獨的計數(shù)控制,只對輸 入信號響應(yīng),可以實現(xiàn)精確的輸入記錄。 該部分設(shè)計同時做了仲裁功能,就是對 1s 時間內(nèi)的輸入信號做判斷,如果沒有輸入有效信號,則認定為低于 1Hz,此時進入低頻邏輯過程。 END IF。 END IF。 ELSE T_1s_done = 00。 ELSE TC_sel = 00。 基于 FPGA的數(shù)字頻率計設(shè)計 17 T_1s_done = 01。 T_1s_done = 00。) THEN T_t = 0000000000000000000000000。) THEN IF ((NOT(RST_N)) = 39。EVENT AND CLK_50M = 39。 該部分代碼設(shè)計如下 。 計數(shù)單元設(shè)計 外部時鐘我們采用 50MHz 有源晶振,該設(shè)計可以提供穩(wěn)定且精準的時鐘源??傮w設(shè)計框圖如下圖35 所示: 信號輸入計數(shù)選擇頻率計數(shù)周期計數(shù)顯示單元 圖 35 總體設(shè)計框圖 頻率計各功能模塊的設(shè)計原理 本設(shè)計方案主要由計數(shù)單元設(shè)計、數(shù)碼管拆分過程、 LED 顯示除法器設(shè)計等幾部分模塊組成。然后用 1s 除以 T 得到當前頻率值。本課題設(shè)計所用的 QuartusII 軟件包就是 Altera 公司提供的 FPGA/CPLD 開發(fā)集成環(huán)境, Altera 公司是世界上最大的可編程邏輯器件供應(yīng)商之一。 9. 硬件測試 最后將含有載入了設(shè)計的 FPGA 的硬件系統(tǒng)進行統(tǒng)一測試,以便最終驗證設(shè)計項目在目標系統(tǒng)上的實際工作情況,以排除錯誤,改進設(shè)計。綜合后所得的網(wǎng)表文件通常作為 FPGA 適配器的輸入 文件,產(chǎn)生的仿真網(wǎng)表文件中包含了精確的硬件延遲信息。 7. 時序仿真 時序仿真就是接近真實器件運行特性的仿真,仿真文件中已包含了器件硬件特性參數(shù),因而,仿真精度高。適配器將綜合后的網(wǎng)表文件針對某一具體的目標器件進行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯優(yōu)化、邏輯布局布線操作。 6. 適配 將綜合器產(chǎn)生的網(wǎng)表文件配置于指定的目標器件中,使之產(chǎn)生最終 的下載文件,這一過程成為適配。 5. 綜合 基于 FPGA的數(shù)字頻率計設(shè)計 15 進行綜合前要選擇最終使用的 FPGA 目標器件,在輸入約束條件后, VHDL 綜合器將對 VHDL 源代碼進行綜合處理,最終產(chǎn)生 FPGA 的配置網(wǎng)表文件。因為對于小型設(shè)計,其綜合優(yōu)化、配置花費的時間不多,而且在綜合優(yōu)化之后,往往會發(fā)現(xiàn)為了實現(xiàn)性能目標 ,將需要修改原設(shè)計。因為對于大型設(shè)計,其綜合優(yōu)化、配置往往要花費好幾個小時,在綜合之前對源代碼仿真,就可以大大減少設(shè)計重復(fù)次數(shù)和修正錯誤的時間。 4. 源代碼的功能仿真 功能仿真是直接對 VHDL 描述的邏輯 功能進行測試模擬,以了解其實現(xiàn)的功能是否滿足原設(shè)計要求。編輯器可以使用EDA 開發(fā)環(huán)境自帶的編輯器,也可以使用計算機上任一款文本編輯器如記事本等。 VHDL 語言的代碼與其它計算機程序語言的代碼有很大的不同,它是和硬件相關(guān)的,編寫 VHDL 程序時必須清醒地認識到是正在設(shè)計 硬件,編寫的 VHDL 代碼必須能夠綜合到采用可編程邏輯器件來實現(xiàn)的數(shù)字邏輯之中。例如,要設(shè)計的功能是什么?對所需的信號建立時間、時鐘 /輸出時間、最大系統(tǒng)工作頻率、關(guān)鍵的路徑等這些要求,要有一個明確的定義,然后再選擇適當?shù)脑O(shè)計方式和相應(yīng)的邏輯器件,進行總體方案的設(shè)計。使用 VHDL 硬件描述語言對數(shù)字電路進行設(shè)計,一般的設(shè)計流程可用圖 34 表示。自頂向下的設(shè)計方法可以將系統(tǒng)分解為各個功能模塊,不同的模塊可以同時設(shè)計、仿真、測試,最后將不同的模塊集成為最終的系統(tǒng)模型,并對其進行綜合測試和評價。在這些過程中,由于設(shè)計的下一步是基于當前的設(shè)計,即使發(fā)現(xiàn)問題或做新的修改而需從頭開始設(shè)計,也不妨礙整體的設(shè)計效率。人為介入的方式主要是根據(jù)仿真的結(jié)果和優(yōu)化的指標,控制邏輯綜合的方式和指向。)主系統(tǒng)和子系統(tǒng)最初的功能要求在 VHDL 里體現(xiàn)為可以被 VHDL 仿真程序驗證的可執(zhí)行程序。 應(yīng)用 VHDL 進行自頂向下的設(shè)計,就是使用 VHDL 模型在所有綜合級別上對硬件設(shè)計進行說明、建模和仿真測試。一個項目的設(shè)計過程包括從自然語言說明到 VHDL 的系統(tǒng)行為描述,從系統(tǒng)的分解、 RTL( Register Transport Level,寄存器傳輸級)模型的建立、門級模型產(chǎn)生到最終的可以物理布線實現(xiàn)的底層電路,就是從高抽象級別到低抽象級別的整個設(shè)計周期。當今,自頂向下的設(shè)計方法已經(jīng)是 EDA 技術(shù)的首選設(shè)計方法,是 ASIC或 FPGA 開發(fā)的主要設(shè)計手段。 在電子設(shè)計領(lǐng)域,自頂向下的設(shè)計方法在 EDA 技術(shù)得到快速發(fā)展和成熟應(yīng)用后才成為可能。在這個設(shè)計過程中的任一時刻,最底層目標器件的更換,或某些技術(shù)參數(shù)不滿足總體要求,或缺貨,或由于市場競爭的變化,臨時提出降低系統(tǒng)成本,提高運行速度等不可預(yù)測的外圍因素,都可使前面的工作前功盡棄,工作又得重新開始。傳統(tǒng)的電子設(shè)計方法通常是自底向上的,即首先確定構(gòu)成系統(tǒng)的最底層的電路模塊或元件的結(jié)構(gòu)和功能,然后根據(jù)主系統(tǒng)的功能要求,將它們組合成更大的功能塊,使它們的結(jié)構(gòu)和功能滿足高層系統(tǒng)的要求,以此流程,逐步向上遞推,直至完成整個目標系統(tǒng)的設(shè)計。在VHDL 程序 設(shè)計中,這一部分的優(yōu)勢與概念是 VHDL 系統(tǒng)的最基本的一個點。如此一來,通過使用 VHDL 所開發(fā)設(shè)計的程序就具備了這樣一個特點:可以把一個工程項目中 抑或 者是某個設(shè)計實體(譬如一個系統(tǒng)或者一個元基于 FPGA的數(shù)字頻率計設(shè)計 12 件)分成外部或者內(nèi)部,不但涉及實體的功能,還實現(xiàn)了算法部分。在我國大陸地區(qū), VHDL 硬件語言主要被應(yīng)用于 FPGA/CPLD/EPLD 的開發(fā)設(shè)計之中,只有一些非常有才能的企業(yè)應(yīng)用 VHDL 來設(shè)計開發(fā) ASIC。在漢文的意思中,是速度非常快的、集成的、用來秒速電路硬件的語言。在那個時候, VHDL 的使用范圍還是分有限。這是一種高級的、被廣泛應(yīng)用于設(shè)計電路的硬件開發(fā)語言。對于一個 LUT 無法完成的電路,就需要通過進位邏輯將多個單元相連,這樣 FPGA 就可以實現(xiàn)復(fù)雜的邏輯。這樣 FPGA 就完成了圖 33所示電路的功能。時鐘信號 CLK 由 I/O 腳輸入后進入芯片內(nèi)部的時鐘專用通道,直接連接到觸發(fā)器的時鐘端。在 FPGA 中, A、 B、 C、 D 輸入信號由 FPGA 芯片的管腳輸入后進 入可編程連線,然后作為地址線連到到 LUT, LUT 根據(jù)圖 33 中虛線框內(nèi)的邏輯關(guān)系通過編程已經(jīng)事先寫入了所有可能的邏輯結(jié)果,所以 LUT 通過地址查找到相應(yīng)的數(shù)據(jù),然后輸出,這樣組合邏輯就實現(xiàn)了。當邏輯函數(shù)的輸入多于 4 個的時候,必須用幾個查找表分開實現(xiàn)。 圖 32 FPGA查找表單元 至于一般情況下 FPGA 采用 4 輸入的 LUT,是因為,對于一個 N 輸入的查找表,需要 SRAM 存儲 N 個輸入構(gòu)成的真值表,需要 2N個 1 位 SRAM 單元。當用戶在 EDA 開發(fā)環(huán)境中通過原理圖或 HDL語言描述了一個邏輯電路以后, EDA 開發(fā)軟件會自動計算邏輯電路的所有可能的結(jié)果,并把結(jié)果事先寫入 RAM,這樣,每輸入一個信號進行邏輯運算就等于輸入一個地址進行查表,找出地址對應(yīng)的內(nèi)容,然后輸出即可。大部分的 FPGA 采用基于 SRAM(靜態(tài)隨機存儲器
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1