![基于單片機(jī)設(shè)計(jì)的簡(jiǎn)易信號(hào)發(fā)生器_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/b6877011-c0bf-49b4-a7bf-c2fe82271ce2/b6877011-c0bf-49b4-a7bf-c2fe82271ce21.gif)
![基于單片機(jī)設(shè)計(jì)的簡(jiǎn)易信號(hào)發(fā)生器_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/b6877011-c0bf-49b4-a7bf-c2fe82271ce2/b6877011-c0bf-49b4-a7bf-c2fe82271ce22.gif)
![基于單片機(jī)設(shè)計(jì)的簡(jiǎn)易信號(hào)發(fā)生器_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/b6877011-c0bf-49b4-a7bf-c2fe82271ce2/b6877011-c0bf-49b4-a7bf-c2fe82271ce23.gif)
![基于單片機(jī)設(shè)計(jì)的簡(jiǎn)易信號(hào)發(fā)生器_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/b6877011-c0bf-49b4-a7bf-c2fe82271ce2/b6877011-c0bf-49b4-a7bf-c2fe82271ce24.gif)
![基于單片機(jī)設(shè)計(jì)的簡(jiǎn)易信號(hào)發(fā)生器_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/b6877011-c0bf-49b4-a7bf-c2fe82271ce2/b6877011-c0bf-49b4-a7bf-c2fe82271ce25.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1遼東學(xué)院信息技術(shù)學(xué)院可編程邏輯器件原理及應(yīng)用教學(xué)實(shí)習(xí)報(bào)告簡(jiǎn)易信號(hào)發(fā)生器學(xué)生姓名: 楊剛 學(xué) 號(hào): 0915110619 班 級(jí): B1106 專 業(yè): 電子信息工程 指導(dǎo)教師: 張俊芳 2014年07月5遼東學(xué)院EDA教學(xué)實(shí)習(xí)報(bào)告簡(jiǎn)易信號(hào)發(fā)生器1引言信號(hào)發(fā)生器又稱信號(hào)源或振蕩器,在生產(chǎn)實(shí)踐和科技領(lǐng)域中有著廣泛的應(yīng)用。它能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波等,在電路實(shí)驗(yàn)和設(shè)備檢測(cè)中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號(hào)或脈沖信號(hào)運(yùn)載出去,就需要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等
2、領(lǐng)域內(nèi),如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都需要功率或大或小、頻率或高或低的信號(hào)發(fā)生器。本設(shè)計(jì)采用FPGA來(lái)設(shè)計(jì)制作多功能信號(hào)發(fā)生器。該信號(hào)發(fā)生器可以產(chǎn)生鋸齒波、三角波、方波等波形。2 FPGA簡(jiǎn)介FPGA(FieldProgrammable Gate Array)即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。與傳統(tǒng)們陣列和掩??删幊涕T陣列(MPGA)相比,F(xiàn)PGA具有很多的優(yōu)點(diǎn),傳統(tǒng)門陣列可以用來(lái)設(shè)計(jì)任
3、何電路,但是只能在工廠中一次性編程,而且還需要針對(duì)該電路的特定的掩模。FPGA是標(biāo)準(zhǔn)通用器件。使用其代替MPGA,可以將設(shè)計(jì)時(shí)間由幾個(gè)月縮短至幾小時(shí),并且使設(shè)計(jì)更加簡(jiǎn)單,從而減少了錯(cuò)誤修改和設(shè)計(jì)指標(biāo)變更的花費(fèi)。FPGA器件在結(jié)構(gòu)上,由邏輯功能塊排列為陣列,它的結(jié)構(gòu)可以分為三個(gè)部分:可編程快CLB(Configurable Logic Blocks)、可編程I/O模塊IOB(Input Block)和可編程內(nèi)部連線PI(Programmable Interconnect)。CLB在器件中排列為陣列,周圍有環(huán)形內(nèi)部連線,IOB分布在四周的管腳上。FPGA也存在缺點(diǎn),F(xiàn)PGA中,每個(gè)可編程的點(diǎn)都有電
4、阻和電容。電阻和電容的使用減慢了信號(hào)的傳輸速度,所以FPGA的速度比傳統(tǒng)門陣列要低,而且,F(xiàn)PGA中互聯(lián)延遲是不可預(yù)測(cè)的。FPGA的基本特點(diǎn)主要有: 一、采用FPGA設(shè)計(jì)ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 二、FPGA可做其它全定制或半定制ASIC電路的中試樣片。 三、FPGA內(nèi)部有豐富的觸發(fā)器和IO引腳。 四、FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。 五、FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容。使用FPGA時(shí),可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM
5、中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無(wú)須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活。FPGA有多種配置模式:并行主模式為一片F(xiàn)PGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片F(xiàn)PGA;串行模式可以采用串行PROM編程FPGA;外設(shè)模式可以將FPGA作為微處理器的外設(shè),由微處理器對(duì)其編程。3 VHDL & Verilog簡(jiǎn)介V
6、HDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成電路硬件描述語(yǔ)言)是一種用來(lái)描述數(shù)字系統(tǒng)行為和結(jié)構(gòu)的硬件描述語(yǔ)言,被廣泛的運(yùn)用于描述和仿真各種數(shù)字系統(tǒng),小到幾個(gè)門,大到許多復(fù)雜集成電路相連的系統(tǒng)。VHDL誕生于1982年,是由美國(guó)國(guó)防部開發(fā)的一種快速設(shè)計(jì)電路的工具,目前已經(jīng)成為IEEE(The Institute of Electrical and Electronics Engineers)的一種工業(yè)標(biāo)準(zhǔn)硬件描述語(yǔ)言。相比傳統(tǒng)的電路系統(tǒng)的設(shè)計(jì)方法,VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持
7、自頂向下(Top to Down)和基于庫(kù)(Library Based)的設(shè)計(jì)的特點(diǎn),因此設(shè)計(jì)者可以不必了解硬件結(jié)構(gòu)。從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行系統(tǒng)方框圖的劃分和結(jié)構(gòu)設(shè)計(jì),在方框圖一級(jí)用VHDL對(duì)電路的行為進(jìn)行描述,并進(jìn)行仿真和糾錯(cuò),然后在系統(tǒng)一級(jí)進(jìn)行驗(yàn)證,最后再用邏輯綜合優(yōu)化工具生成具體的門級(jí)邏輯電路的網(wǎng)表,下載到具體的FPGA器件中去,從而實(shí)現(xiàn)可編程的專用集成電路(ASIC)的設(shè)計(jì)。Verilog也是一種流行的硬件描述語(yǔ)言,他是由工業(yè)界開發(fā)的,1984年,Verilog作為一種私用的硬件描述語(yǔ)言,由Gateway Design Automation公司給出,1988年,Synopsis公司
8、為Verilog開發(fā)了綜合工具。1995年,Verilog成為IEEE的一個(gè)標(biāo)準(zhǔn)。Verilog 適合算法級(jí),寄存器級(jí),邏輯級(jí),門級(jí)和版圖級(jí)等各個(gè)層次的設(shè)計(jì)和描述。VHDL的語(yǔ)法是基于ADA語(yǔ)言的,而Verilog的語(yǔ)法是基于C語(yǔ)言的。由于是基于C語(yǔ)言,所以它更容易掌握,但是VHDL語(yǔ)言在設(shè)計(jì)和描述大型系統(tǒng)時(shí)具有突出優(yōu)勢(shì)。目前兩種語(yǔ)言各占一半市場(chǎng)份額,兩種語(yǔ)言都可以滿足數(shù)字系統(tǒng)設(shè)計(jì)者的需求。本設(shè)計(jì)中采用VHDL語(yǔ)言進(jìn)行設(shè)計(jì)。4 設(shè)計(jì)工具簡(jiǎn)介本次設(shè)計(jì)是基于Altera公司的QuartusII軟件。Quartus II 是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、Verilog
9、HDL以及AHDL(Altera Hardware Description Language)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。QuartusII支持Altera的IP核,包含了LPM/MegaFuction宏功能模塊庫(kù),使用它,可以簡(jiǎn)化設(shè)計(jì)的復(fù)雜性,加快設(shè)計(jì)速度。QuartusII平臺(tái)支持一個(gè)工作組環(huán)境下的設(shè)計(jì)要求,其中包括支持基于Internet的協(xié)作設(shè)計(jì)。此外,QuartusII通過(guò)和DSP Builder工具與Matlab/SIMULINK相結(jié)合,可以方便地實(shí)現(xiàn)各種DSP應(yīng)用系統(tǒng);支持Altera的片上可編程系統(tǒng)開發(fā),集系
10、統(tǒng)級(jí)設(shè)計(jì)、嵌入式軟件設(shè)計(jì)、可編程邏輯設(shè)計(jì)于一體,是一種綜性的開發(fā)平臺(tái)。5 系統(tǒng)設(shè)計(jì)基于VHDL語(yǔ)言設(shè)計(jì)一個(gè)多功能信號(hào)發(fā)生器,通過(guò)選擇輸入信號(hào),可以輸出遞增鋸齒波、遞減鋸齒波、三角波、方波等四種信號(hào)。信號(hào)發(fā)生器的控制模塊可以選用數(shù)據(jù)選擇器實(shí)現(xiàn),4種信號(hào)的數(shù)據(jù)選擇可以使用4選1數(shù)據(jù)選擇器實(shí)現(xiàn)。5.1 VHDL程序語(yǔ)言基本設(shè)計(jì)一個(gè)VHDL語(yǔ)言的設(shè)計(jì)程序描述的是一個(gè)電路單元,這個(gè)電路單元可以是一個(gè)門電路,或者是一個(gè)計(jì)數(shù)器,也可以是一個(gè)CPU,一般情況下,一個(gè)完整的VHDL語(yǔ)言程序至少包括實(shí)體、結(jié)構(gòu)體和程序包三個(gè)部分。實(shí)體給出電路單元的外部輸入輸出接口信號(hào)和引用信息,結(jié)構(gòu)體給出了電路單元的內(nèi)部結(jié)構(gòu)和信號(hào)
11、的行為特點(diǎn),程序包定義在設(shè)計(jì)結(jié)構(gòu)體和實(shí)體中將用到的常數(shù)、數(shù)據(jù)類型、子程序和設(shè)計(jì)好的電路單元等。第一部分是程序包,程序包是用VHDL語(yǔ)言編寫的共享文件,定義在設(shè)計(jì)結(jié)構(gòu)體和實(shí)體中將要用到的常數(shù)、數(shù)據(jù)類型、子程序和設(shè)計(jì)好的電路單元等,放在文件目錄名稱為IEEE的程序包庫(kù)中。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;第二部分是程序的實(shí)體,定義電路單元的輸入/輸出引腳名稱。程序的實(shí)體名稱可以任意取,但必須與VHDL程序的文件名稱相同。實(shí)體的標(biāo)示
12、符是ENTITY,實(shí)體以ENTITY開頭,以END結(jié)束。ENTITY fulladder ISPORT(a,b,Ci:in std_logic;Co,s: out std_logic_vector(7 downto 0);END fulladder;其中,定義了a,b, Ci為輸入信號(hào)引腳,定義Co,s為輸出信號(hào)引腳。第三部分是程序的結(jié)構(gòu)體,具體描述電路的內(nèi)部結(jié)構(gòu)和邏輯功能。結(jié)構(gòu)體有三種描述方式,分別是行為(BEHAVIOR)描述方式、數(shù)據(jù)流(DATAFLOW)描述方式和結(jié)構(gòu)描述方式。其中數(shù)據(jù)流描述方式又被稱為寄存器(RTL)描述方式。結(jié)構(gòu)體以表示ARCHITECHTURE開頭,以END結(jié)尾。
13、結(jié)構(gòu)體的名稱可以任取。architecture behav of fulladder isBEGINs=a xor b xor Ci;Co=(a and b)or(a and Ci)or(b and Ci);END fulladder上面程序段中結(jié)構(gòu)體的描述方式屬于程序流描述方式。以上三段程序是一個(gè)完整的VHDL程序段,實(shí)現(xiàn)的功能是一位全加器。5.2 波形發(fā)生器設(shè)計(jì)采用DDS技術(shù)可以很方便地產(chǎn)生各種高質(zhì)量的波形。DDS技術(shù)是從相位概念出發(fā)之結(jié)合成所需要波形的一種頻率合成技術(shù)。以正弦波為例,首先要按照一定的采樣點(diǎn)數(shù)將正弦波形一個(gè)周期的數(shù)據(jù)信息存于ROM表中,表中包含著一個(gè)周期正弦波的數(shù)字幅度信息
14、,每個(gè)地址對(duì)應(yīng)正弦波中0到360度范圍內(nèi)的一個(gè)相位點(diǎn)的幅度值,查找表時(shí)即是把輸入的地址相位信息映射成正弦波幅度的數(shù)字量信號(hào),通過(guò)設(shè)置的輸出端口輸出。在實(shí)物設(shè)計(jì)中,可以使用D/A接口來(lái)實(shí)現(xiàn)波形信號(hào)的輸出。為簡(jiǎn)化設(shè)計(jì)過(guò)程,本設(shè)計(jì)并未采用DDS技術(shù),而是采用描點(diǎn)輸出的方式,實(shí)現(xiàn)波形發(fā)生器的設(shè)計(jì)。程序中設(shè)置一個(gè)波形的起始點(diǎn),經(jīng)過(guò)比較、計(jì)算得出波形的其他數(shù)值,將這些點(diǎn)依次連續(xù)輸出,從而實(shí)現(xiàn)波形的仿真。以遞增鋸齒波為例,首先定義初始點(diǎn)為 tmp=“00000000”;在時(shí)鐘上升沿到來(lái)時(shí),執(zhí)行tmpqqqqnull;end case;end process; 圖5-2四選一數(shù)據(jù)選擇器封裝圖塊end beha
15、v;以上為四選一數(shù)據(jù)選擇器程序段,其中sel端口為外部輸入選擇信號(hào),d1,d2,d3,d4分別連接四個(gè)波形發(fā)生模塊,以二進(jìn)制形式給sel幅值,選擇相應(yīng)的通道。q為輸出端口,將波形信息的數(shù)字代碼輸出。5.4 程序設(shè)計(jì)圖5-3 系統(tǒng)流程圖5.5 主要函數(shù)語(yǔ)句分析在程序設(shè)計(jì)中,主要使用的函數(shù)語(yǔ)句有兩種:If-else語(yǔ)句和case-when語(yǔ)句。這兩種語(yǔ)句也是VHDL程序設(shè)計(jì)中常用的語(yǔ)句。二者都屬于流程控制語(yǔ)句。流程控制語(yǔ)句通過(guò)條件控制開關(guān)決定是否執(zhí)行一條或幾條語(yǔ)句或重復(fù)執(zhí)行一條或幾條語(yǔ)句或跳過(guò)一條或幾條語(yǔ)句 。 IF語(yǔ)句是一種條件語(yǔ)句,它根據(jù)語(yǔ)句中所設(shè)置的一種或多種條件,有選擇地執(zhí)行指定的順序語(yǔ)句
16、。IF語(yǔ)句的語(yǔ)句結(jié)構(gòu)有以下三種: IF 條件句 Then - 第一種IF語(yǔ)句結(jié)構(gòu) 順序語(yǔ)句 END IF IF 條件句 Then - 第二種IF語(yǔ)句結(jié)構(gòu) 順序語(yǔ)句 ELSE 順序語(yǔ)句 END IF IF 條件句 Then - 第三種IF語(yǔ)句結(jié)構(gòu) 順序語(yǔ)句 ELSIF 條件句 Then 順序語(yǔ)句 . ELSE 順序語(yǔ)句 END IFCASE語(yǔ)句根據(jù)滿足的條件直接選擇多項(xiàng)順序語(yǔ)句中的一項(xiàng)執(zhí)行,CASE語(yǔ)句的結(jié)構(gòu)如下:CASE 表達(dá)式 ISWhen 選擇值 = 順序語(yǔ)句When 選擇值 = 順序語(yǔ)句.END CASE 當(dāng)執(zhí)行到CASE語(yǔ)句時(shí),首先計(jì)算表達(dá)式的值,然后根據(jù)條件句中與之相同的選擇值。執(zhí)行
17、對(duì)應(yīng)的順序語(yǔ)句,最后結(jié)束 CASE語(yǔ)句。表達(dá)式可以是一個(gè)整數(shù)類型或枚舉類型的值,也可以是由這些數(shù)據(jù)類型的值構(gòu)成的數(shù)組。5.6 系統(tǒng)頂層文件將上述5個(gè)模塊(遞增鋸齒波sawtooth_adder、遞減鋸齒波sawtooth_minus、三角波triangle、方波square、4選1數(shù)據(jù)選擇器mux41)封裝成為模塊文件,供頂層電路調(diào)用。可以得到以下頂層文件電路:圖5-4 系統(tǒng)頂層電路圖6系統(tǒng)仿真通過(guò)選擇不同的sel值,可以實(shí)現(xiàn)不同的波形輸出。仿真中reset復(fù)位信號(hào)一直置高電平,即沒有仿真復(fù)位情況。輸入的選擇信號(hào)為1時(shí),信號(hào)發(fā)生器頂層電路的仿真輸出波形為遞增鋸齒波。輸出的波形線性遞增。圖6-1
18、 遞增鋸齒波仿真波形輸入的選擇信號(hào)為2時(shí),信號(hào)發(fā)生器頂層電路的仿真輸出波形為遞減鋸齒波。輸出的波形線性遞減。圖6-2 遞減鋸齒波仿真波形輸入的選擇信號(hào)為3時(shí),信號(hào)發(fā)生器頂層電路的仿真輸出波形為三角波。輸出的波形線性減小到最小值0后,再線性增加。圖6-3 三角波仿真波形輸入的選擇信號(hào)為4時(shí),信號(hào)發(fā)生器頂層電路的仿真輸出波形為方波。輸出的波形為周期性的全0或全1。(在仿真中,只有將CLK信號(hào)頻率取得很高的時(shí)候,才可以清晰地看出仿真效果。)圖6-4 方波仿真波形7 設(shè)計(jì)總結(jié)7.1 小結(jié)FPGA是當(dāng)前數(shù)字系統(tǒng)設(shè)計(jì)領(lǐng)域比較火熱的一種工具,它可以大大縮短設(shè)計(jì)需要的時(shí)間,降低成本的同時(shí)也提高了系統(tǒng)的穩(wěn)定性。
19、使用VHDL語(yǔ)言描述硬件系統(tǒng)使得FPGA技術(shù)有了更廣闊的應(yīng)用領(lǐng)域。本設(shè)計(jì)使用了基于Altera公司的FPGA系列,采用Altera公司提供的系統(tǒng)開發(fā)工具Quartus II軟件進(jìn)行了系統(tǒng)的設(shè)計(jì)和仿真。數(shù)字信號(hào)發(fā)生器在實(shí)驗(yàn)室以及工業(yè)場(chǎng)所都被大量使用著,本系統(tǒng)即實(shí)現(xiàn)了可以輸出四種波形的簡(jiǎn)易多功能波形發(fā)生器,仿真結(jié)果證明,該設(shè)計(jì)正確有效,可以作為制作實(shí)物的理論依據(jù)。但由于設(shè)計(jì)者能力有限,本系統(tǒng)仍然有著很多可改進(jìn)的地方,比如可以升級(jí)為輸出頻率、幅值可調(diào)的波形,或者輸出任意波形以更貼近實(shí)際情況。7.2 心得體會(huì)對(duì)FPGA一直都有著濃厚的興趣,借做課設(shè)的機(jī)會(huì),認(rèn)真的研究了一下這門科學(xué)。發(fā)現(xiàn)FPGA技術(shù)比我
20、想象中的要有很大的難度。里面有很多的思想來(lái)源于信息電子技術(shù)里面的基本知識(shí),包括門電路的概念以及寄存器傳送的基本知識(shí)。VHDL語(yǔ)言與C語(yǔ)言有很大的不同,但是C語(yǔ)言的編程思想也可以移植到VHDL語(yǔ)言中,尤其是一些邏輯算法的設(shè)計(jì),需要有很強(qiáng)的C語(yǔ)言編程功底。學(xué)習(xí)一門知識(shí)要從最基本的體系架構(gòu)開始,倘若一開始就從頂層設(shè)計(jì)入手,就會(huì)造成很多基本原理、基本概念上的偏差,甚至?xí)涎訉W(xué)習(xí)設(shè)計(jì)的時(shí)間,事倍功半。雖然課設(shè)完成了,但是我意識(shí)到,我對(duì)FPGA技術(shù)僅僅只是停留在入門的階段,想要有更大的發(fā)展,更深入的研究,還需要更多的努力與實(shí)踐。參考文獻(xiàn)1 蔣小燕,俞偉鈞.EDA技術(shù)及VHDL.南京:東南大學(xué)出版社.200
21、8年12月.2 李國(guó)麗,朱維勇.EDA與數(shù)字系統(tǒng)設(shè)計(jì).北京:機(jī)械工業(yè)出版.2005年3月.3 江國(guó)強(qiáng).EDA技術(shù)與實(shí)驗(yàn).北京:電子工業(yè)出版社.2005年1月.4 歐偉明.基于MCU、FPGA、RTOS的電子系統(tǒng)設(shè)計(jì)方法與實(shí)例.北京:北京航空航天大學(xué)出版社.2007年4月 .5 Charles H.Roth,Jr、Lizy Kurian John著,金明錄譯.數(shù)字系統(tǒng)設(shè)計(jì)與VHDL.北京:電子工業(yè)出版社.2008年8月附錄附錄一:遞增鋸齒波程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use iee
22、e.std_logic_unsigned.all; -程序包entity sawtooth_adder isport(clk,reset:in std_logic;-定義clk、reset為輸入信號(hào)q:out std_logic_vector(7 downto 0);-定義q為輸出信號(hào)end sawtooth_adder; -實(shí)體architecture behav of sawtooth_adder isbeginprocess(clk,reset)-定義進(jìn)程variable tmp:std_logic_vector(7 downto 0);-定義變量,8位beginif reset=0th
23、en-如果復(fù)位信號(hào)為0,tmp為0tmp:=00000000;elsif rising_edge(clk) then-捕捉時(shí)鐘上升沿if tmp=11111111then-如果tmp遞增至最大,增歸零tmp:=00000000;else -否則,tmp繼續(xù)遞增tmp:=tmp+1;end if;end if;q=tmp;-q等于變量tmpend process;-進(jìn)程結(jié)束end behav;-結(jié)構(gòu)體結(jié)束附錄二:遞減鋸齒波程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity sawtoo
24、th_minus isport(clk,reset:in std_logic;q:out std_logic_vector(7 downto 0);end sawtooth_minus;architecture behav of sawtooth_minus isbeginprocess(clk,reset)variable tmp:std_logic_vector(7 downto 0);beginif reset=0thentmp:=11111111;elsif rising_edge(clk) thenif tmp=00000000thentmp:=11111111;else tmp:=
25、tmp-1;end if;end if;q=tmp;end process;end behav;附錄三:三角波程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;-程序包entity triangle is-定義三角波實(shí)體port(clk,reset:in std_logic;q:out std_logic_vector(7 downto 0);end triangle;architecture behav of triangle is-定義三角波結(jié)構(gòu)體beginprocess(clk,reset)-進(jìn)程開始variable tmp:std_logic_vector(7 downto 0);-定義中間變量tmp、avariable a:std_logic;beginif reset=0then-復(fù)位信號(hào)設(shè)置tmp
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人股份轉(zhuǎn)讓協(xié)議書
- 勞務(wù)合同到期不續(xù)簽
- 信息管理系統(tǒng)建設(shè)及維護(hù)合同
- 石油鉆井服務(wù)合同
- 房屋委托租賃居間服務(wù)合同
- 大型挖掘機(jī)買賣合同
- 綜合辦公服務(wù)合同
- 雙11策劃活動(dòng)方案模板
- 公司內(nèi)部借款協(xié)議
- 連鎖餐飲企業(yè)加盟合同
- 文學(xué)類文本閱讀(理解賞析類)-2025年北京高考語(yǔ)文一輪總復(fù)習(xí)(原卷版)
- 北京某中學(xué)2024-2025學(xué)年九年級(jí)上學(xué)期開學(xué)考數(shù)學(xué)試卷
- Unit 5 Section B(2a-2c)教學(xué)設(shè)計(jì)2023-2024學(xué)年人教版七年級(jí)英語(yǔ)下冊(cè)
- 三下 第11課 《在線學(xué)習(xí)工具》教案 浙教版2023信息科技
- 2024年高考真題-英語(yǔ)(新高考Ⅱ卷) 含解析
- 【萬(wàn)通地產(chǎn)償債能力存在的問題及優(yōu)化建議(數(shù)據(jù)論文)11000字】
- 吉利收購(gòu)沃爾沃商務(wù)談判案例分析
- JGJ/T235-2011建筑外墻防水工程技術(shù)規(guī)程
- 信息科技課的跨學(xué)科主題學(xué)習(xí)PP義務(wù)教育課程方案和課程標(biāo)準(zhǔn)國(guó)家級(jí)示范培訓(xùn)課件
- 人教版PEP五年級(jí)英語(yǔ)下冊(cè)單詞表與單詞字帖 手寫體可打印
- 第七節(jié)碎石路基施工方案
評(píng)論
0/150
提交評(píng)論