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

正文內(nèi)容

畢業(yè)設(shè)計-基于fpga的函數(shù)信號發(fā)生器的設(shè)計與實現(xiàn)(參考版)

2024-12-07 19:32本頁面
  

【正文】 首先進行電源部分的安裝,在焊接所有芯片之前先要保證電源工作正常,先將焊上電源芯片,并按設(shè)計值焊上外圍器件,然后加電, 安裝完的電路圖 檢查各個電源的輸出電壓是否正常,當所有電源輸出正常后,才能焊接其它芯片。安裝時要注意觀察組裝完工的電路板,檢查元器件是否安裝正確,包括電容類元件的正負極、集成電路引腳的位置與方向 。(2)數(shù)字地和模擬地分開,僅在一點相連 。 END a。 END IF。139。 ARCHITECTURE a OF reg1 IS BEGIN Process Statement PROCESS (clk) BEGIN Signal Assignment Statement IF (clk39。 Dout : OUT STD_LOGIC_VECTOR(9 downto 0) )。 ENTITY reg1 IS PORT( clk : IN STD_LOGIC。 USE 。我們可以對 sum相位累加器加與 不加 reg的時序仿真做出對比,如圖 420所示。這里所指的信號延時可以是數(shù)據(jù)信號的延時,也可以是時鐘信號的延時 ( a)在沒有使用 reg的相位累加器有毛刺 第 4章 模塊生成及仿真 第頁 XI ( b)使用了 reg后的相位累加器輸出無毛毛刺 圖 有無 reg的時序仿真對比 在程序及時序仿真中我們可以看出 reg有延時一個數(shù)據(jù)的作用,在實驗中主要用來消除數(shù)據(jù)信號中的毛刺 [13]。去毛刺的方法有輸出加 D觸發(fā)器、信號同步法、信號延時同步法 。這時,往往會出現(xiàn)一些不正確的尖峰信號 ——毛刺。延時的大小不僅和連線的長度和邏輯單元的數(shù)目有關(guān),而且也和器件的制造工藝、工作環(huán)境有關(guān)。這種算法共節(jié)省了 7/8的系統(tǒng)資源,否則無論如何也不會在一個 FPGA芯片中達到這樣的精度的。 圖 dataconvertor的時序仿真 第 4章 模塊生成及仿真 第頁 X 圖 生成的 dataconvertor元件 這樣就完成了整個周期的采樣,這樣做的好處也非常明顯,值存儲了 1//4的波形數(shù)據(jù),節(jié)省了 3/4的系統(tǒng)資源。 END PROCESS 。 ELSE data=rom(7 downto 0)。139。 END dataconvert。 rom : IN STD_LOGIC_VECTOR(7 downto 0)。 USE 。 這一部分功能由 dataconvertor模塊實現(xiàn)的,其 VHDL程序如下: LIBRARY IEEE。 圖 Convertor的時序仿真 圖 生成的 Convertor元件 當高位為 0時對 ROM中讀出來的數(shù)據(jù)不需要做處理,最高位為 1時,將讀出的數(shù)據(jù)取反。 END PROCESS 。 END IF。 THEN address=not addr(7 downto 0)。 ARCHITECTURE a OF convertor IS BEGIN Process Statement 第 4章 模塊生成及仿真 第頁 VIII PROCESS (addr) BEGIN If Statement IF addr(8)=39。 address : OUT STD_LOGIC_VECTOR(7 downto 0) )。 90180 270360 從大取到?。ǖ刂? 反 著 取 ) ENTITY convertor IS PORT( addr : IN STD_LOGIC_VECTOR(9 downto 0)。 USE 。 給出的波形數(shù)據(jù)只是 0? 90? 的,其 他部分的值必須是由 0? 90? 的值經(jīng)過轉(zhuǎn)換得到,具體解決如下:地址字 address[]設(shè)計成十位的,其中第八位是真實的 ROM地址,正好 256個,最高的兩位是控制字,當高位為 0時對地址字的第八位不作處理,當高位為 1時,將地址字的低八位取反,這就相當于在 90? 180? 和 270? 360? 時反過來讀 ROM,這是符合 sin的對稱性的。從而實現(xiàn)了相位對幅值的轉(zhuǎn)化。如果第十位為 0為單調(diào)上升, 1則相反。由以上的設(shè)計思想 本設(shè)計 對相位累加器的各數(shù)位做了分工,后 8位表示具體的地址,而最高位決定正弦波的 正負值,而次高位則確定了其究竟是上升還是減少的。在第三個為負且減少的 1/4周期 ( 2kπ+π——2kπ+3/2π)內(nèi),除了符號與第一個 1/4周期相反外,其數(shù)值是一樣的,所以采取正著取。所以可以只存 1/4個周期( 0——π/2)的數(shù)值。可見用這種方法得到高精度的數(shù)控振蕩器將花費較大的 ROM資源。 END SYN。 BEGIN q = sub_wire0(7 DOWNTO 0)。 q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) )。 PORT ( address : IN STD_LOGIC_VECTOR (7 DOWNTO 0)。 lpm_outdata : STRING。 lpm_widthad : NATURAL。 ARCHITECTURE SYN OF rom2 IS SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0)。 第 4章 模塊生成及仿真 第頁 V q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) )。 ENTITY rom2 IS PORT ( address : IN STD_LOGIC_VECTOR (7 DOWNTO 0)。 第 4章 模塊生成及仿真 第頁 IV 圖 ROM表所存儲的數(shù)據(jù) ROM模塊 VHDL程序如下: LIBRARY ieee。編程的 時候可對 LPMROM進行如下設(shè)置。第一種方法 ,容量最大 , 但速度最慢 , 而且編程比較麻煩 , 第二種方法 , 速度最快 , 但容量非常小 , 第三種方法則兼顧了二者的優(yōu)點 , 而克服了其缺點。因此,應(yīng)當用 C語言描述正弦方程式,最后再將其轉(zhuǎn)化為所需的 mif文件。為了保證波形的平滑,設(shè) 計時可將一個周期分為 1024個點。 ROM查找表在整個設(shè)計中是一個比較重要的部分。 相位累加器仿真如圖 第 4章 模塊生成及仿真 第頁 III 圖 相位累加器模塊的時序仿真 正弦 ROM 查找表 相位累加器對 2進制碼進行累加運算,是典型的反饋電路,產(chǎn)生的累加結(jié)果的高M位作為 ROM查找表的取樣地址值,而此查找表中儲存了一個周期的正弦波幅度值。 K : IN STD_LOGIC_VECTOR(7 downto 0)。 END a。 END IF。 END IF。 THEN Q=Q+K。) THEN IF en=39。event and clk=39。)。 THEN 第 4章 模塊生成及仿真 第頁 II output=(others=39。 BEGIN Process Statement PROCESS (clk, reset, en) BEGIN Signal Assignment Statement IF reset=39。 END sum。 K : IN STD_LOGIC_VECTOR(7 downto 0)。 USE 。 相位累加器 VHDL程序如下: IBRARY IEEE。電平轉(zhuǎn)換電路及與插座連接方式如下: 第 3 章 基于 FPGA的 DDS模塊的實現(xiàn) 第頁 XV 圖 RS232電平轉(zhuǎn)換電路 第 4章 模塊生成及仿真 第頁 I 第 4 章 模塊生成及仿真 相位累加器模塊 相位累加器以頻率字作為輸入,在每一輸入時鐘的上升沿到來時,將輸入的頻率字與累加器中的值相加,輸出作為相位累加器的輸入;當累加值溢出時 (大于正弦 ROM查找表地址的最大值 ),則減去模值加一再送出 。在通信距離上,如果通信速率低于 20kps,RS232C 直接連接的最大物理距離為 15m。圖 3一 4為用 MegaWizardPlug 一 InManager 生成的 PLL 的實例圖,圖中輸入端, 外接系統(tǒng)時鐘,兩個輸出端,一個是內(nèi)部 DDS 的系統(tǒng)時鐘,另一個為數(shù)模轉(zhuǎn)換的控制時鐘,兩個時鐘都是都一個 PLL 產(chǎn)生的,所以,輸出的時鐘相位偏移在允許范圍內(nèi)。采樣頻率越高,輸出波形的平坦度越好,同時大波形的的采樣點數(shù)也越多,那么獲得的波形質(zhì)量也就越好。如圖 3 一 3所示 :任意波形發(fā)生器的 FPGA的電路設(shè)計主要是用 FPGA設(shè)計 DDS的核心部分即相位加法器、控制字輸入寄存器、流水線累加器,波形查找表、任意波形數(shù)據(jù)寄存器。整個系統(tǒng)各模塊是在同步時鐘信號 CLK 的控制下協(xié)調(diào)工作的。相位寄存器是一個 8位寄存器,它接受 ARM 處理器發(fā)送來的相位控制字數(shù)據(jù)并進行寄存,當下一個時鐘到來時,輸入寄存的數(shù)據(jù),對輸出波形的頻率和相位進行控制。 該系統(tǒng)可實現(xiàn)常規(guī)固定波形輸出和任意波形輸出。(4)構(gòu)造出兩個多波形選擇輸出的輸出通道,其中的一路通道可具備移相功能 。(2)保存頻率字,并構(gòu)成相位累加器,產(chǎn)生與主時鐘相同頻率的 RAM 尋址字 。(4)形成波形 RAM。(2)保存相位字 。用 FPGA 可以非常方便的實現(xiàn) DDS 系統(tǒng)的數(shù)字電路環(huán)節(jié),且可現(xiàn)場編程進行電路的修改。另外,將 DDS 設(shè)計嵌入到 FPGA芯片所構(gòu)成的系統(tǒng)中,其系統(tǒng)成本并不會增加多少,而購買專用芯片的價格則是前者的很多倍。因為,只要改變 FPGA 中的 ROM 數(shù)據(jù), DDs 就可以產(chǎn)生任意波形,因而具有相當大的靈活性。而且它的時鐘頻率已可達到幾百兆赫茲,加上它的靈活性和高可靠性,非常適合用于實現(xiàn)波形發(fā)生器的數(shù)字電路部分。后來出現(xiàn)的專用 DDS 芯片極大的推動了 DDS 技術(shù)的發(fā)展,但專用 DDS 芯片價格昂貴,且無法實現(xiàn)任意波形輸出,近來, CPLD 及 FPGA 的發(fā)展為實現(xiàn) DDS 提供了更好的技術(shù)手段。若對于一些很復(fù)雜的系第 3 章 基于 FPGA的 DDS模塊的實現(xiàn) 第頁 X 統(tǒng),如視頻編解碼芯片,則還需在系統(tǒng)設(shè)計規(guī)范完成后開發(fā)行為級模型,并進行仿真,檢查是否能滿足系統(tǒng)需求。 圖 3 一 l 為基于 Verilog 的 FPGA 的設(shè)計流程示意圖。 (7)Verilog 語言對仿真提供強大的支持,雖然現(xiàn)在出現(xiàn)了專門的用于驗證的語言,但用 verilog 語一言直接對設(shè)計進行測試任然是大部分工程師的首選。 (6)VerilogHDL語言的描述能力可以通過使用編程語言接口 (PLI)機制進 一步擴展。 (4)所有的后端生產(chǎn)廠商都提供 verilog 的庫支持,這樣在制造芯片時,可以有更多的選擇。verilog 語言中提供開關(guān)級、門級、 RTL 級和行為級支持,一個設(shè)計可以先用行為級語法描述它的算法,仿真通過后,再用 RTL 級描述,得到可綜合的代碼。 采用 Verilog 語言設(shè)計的優(yōu)點有以下幾點 : (l)作為一種通用的硬件描述語言, Verilog 易學(xué)易用,因為在語法上它與 C語一言非常類似,有 C 語言編程經(jīng)驗的人很容易發(fā)現(xiàn)這一點。由于 Verilog 私有性,妨礙了使用者之間的交流與共享,為與 vHDL 語言競爭, 1990 年, Cadenee 公司決定公開 verilogHDL 語一言。隨著這種仿真器的流行, verilogHDL 語言得到迅速發(fā)展。 way DesignAutomation 公司的 philMoothy 首創(chuàng)。硬件描述語言自出現(xiàn)起,發(fā)展非常迅速,已經(jīng)成功應(yīng)用在數(shù)字邏輯設(shè)計的各個階段,包括設(shè)計、仿真、驗證、綜合等,它們對設(shè)計自動化起到了極大的推動作用。在硬件描述語言出現(xiàn)之前,已經(jīng)有很多成功的軟件設(shè)計語言,比如 :Fortran、 Pascal 和 C等,為什么不用這些語言描述硬件 ?因為這些軟件設(shè)計語言較合適描述順序執(zhí)行的程序,卻難以描述硬件的并發(fā)行為 。 硬件描述語言 HDL(HardwareDeseriptionLanguage)是一種用形式化方法來描述數(shù)字電路和設(shè)計數(shù)字邏輯系統(tǒng)的語言。 (5)多器件劃分 。 (3)定時驅(qū)動編譯 。項目處理包括以下基本步驟 : (1)消息處理器自動定位錯誤 。 QuartuSH 處理一個設(shè)計時,軟件編譯器讀取設(shè)計文件信息, 產(chǎn)生用于器件編程、仿真、定時分析的輸出文件。 Quartu
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1