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

正文內(nèi)容

基于vhdl電子琴設(shè)計(jì)說明書(已修改)

2025-05-23 19:26 本頁面
 

【正文】 目錄 一、 設(shè)計(jì)任務(wù)與要求 ………………… …… …………… … 1 二、 總體框圖 …………………… …………………… … 2 三、 選擇器件 ……………………… ………………… … 5 四、 功能模塊 ………………………… …………… … … 6 1. Songer 模塊 …………………………… … 6 NoteTabs 模塊 ? ????? ?? ? 6 ToneTaba 模塊 ???????? ? 11 Speakera 模塊 ??????? ? ? 13 2. div 模塊 ????? ????? ??? ? 16 3. 七段譯碼器模塊 ????? ?? ??? ? 18 五、 總體設(shè)計(jì)電路圖 ?????? ? ?? ? ????? 21 1. 頂層設(shè)計(jì)的電路原理圖 ? ???? ? ?? 21 2. 頂層設(shè)計(jì)的仿真結(jié)果 ?????? ??? 23 3. 電路的管腳圖 ????????? ??? 23 六、 結(jié)束語………………………………… … ………… 24 七、 心得體會(huì)………………………………… … ……… 25 1 八音符 電子琴電路設(shè)計(jì) 一、 設(shè)計(jì)任務(wù)與要求 在 EDA開發(fā)平臺(tái)上利用 VHDL 語言設(shè)計(jì)一個(gè)八音符電子琴,由鍵盤輸入控制音響 或 自動(dòng)演奏。用戶可以將自己編制的樂曲存入電子琴,演奏時(shí)可以選擇鍵盤輸入樂曲或者 自動(dòng)演奏已存入的樂曲。 二 、總體框圖 系統(tǒng)設(shè)計(jì)方案: 方案一 : 采用單個(gè)的邏輯器件組合實(shí)現(xiàn)。這樣雖然比較直觀,邏輯器件分工鮮明,思路也比清晰,一目了然。但是由于元器件種類、個(gè)數(shù)繁多,而過于復(fù)雜的硬件電 路也容易引起系統(tǒng)的精度不高、體積過大等不利因素。例如八個(gè)不同的音符是由八個(gè)不同的頻率來控制發(fā)出的,而采用方案一就需要運(yùn)用不同的分頻器來對(duì)信號(hào)進(jìn)行不同程度的分頻。所用儀器之多顯而易見。 方案二 : 采用 VHDL 語言編程來實(shí)現(xiàn)電子琴的各項(xiàng)功能。系統(tǒng)主要由電子琴發(fā)聲模塊、選擇控制模塊和儲(chǔ)存器模塊組成。和方案一相比較,方案二就顯得比較籠統(tǒng),只是把整個(gè)系統(tǒng)分為了若干個(gè)模塊,而不牽涉到具體的硬件電路。但是我們必須看到用超高速硬件描述語言 VHDL 的優(yōu)勢(shì),它不僅具有良好的電路行為描述和系統(tǒng)描述的能力而且通俗易懂。 經(jīng)過對(duì)以上兩種方案的分析、比較和總結(jié),我們選用方案二來進(jìn)行八音符 電子琴的設(shè)計(jì)。 八音符電子琴設(shè)計(jì)總體框圖 ,如圖 1: 圖 1 八音符電子琴設(shè)計(jì)總體框圖 分頻器 NOTETABS TONETABA SPEAKERA 揚(yáng)聲器 譯碼器 2 該系統(tǒng)由三個(gè)模塊: Songer、 Div和 SEG7( 7段譯碼器)組成。 1. Songer 模塊:此模塊包括 3 個(gè)小模塊,分別是 NoteTabs 模塊, ToneTab模塊 和 Speakera 模塊。此外,還需建立一個(gè)名為“ music”的 LPM_ROM 模塊與 NoteTabs 模塊連接。 1. NoteTabs 模塊:該模塊的功能就是定義音符數(shù)據(jù) ROM“ music”隨著該模塊中的計(jì)數(shù)器控制時(shí)鐘頻率速率作加法計(jì)數(shù)時(shí),即地址值遞增時(shí),音符數(shù)據(jù) ROM中的音符數(shù)據(jù)。將從 ROM 中通過 ToneIndex[3..0]端口輸向 ToneTaba 模塊,演奏《采茶舞曲》。 2. ToneTaba 模塊:是樂曲簡(jiǎn)譜碼對(duì)應(yīng)的分頻預(yù)置數(shù)查找表電路,其中設(shè)置了樂曲的全部音符所對(duì)應(yīng)的分頻置數(shù),每一音符的停留時(shí)間由音樂節(jié)拍和音調(diào)發(fā)生器模塊 NoteTabs 的 CLK的輸入頻率決定,這些值由對(duì)應(yīng)于 ToneTaba 的 4 位輸入值 Index[3..0]確定,最多有 16 種可選值。輸向 ToneTaba 中 Index[3..0]的值 ToneIndex[3..0]的輸出值與持續(xù)的時(shí)間由模塊 NoteTabs 決定。 3. Speakera 模塊:是一個(gè)數(shù)控分頻器,音符的頻率可由此模塊獲得。由 CLK端輸入一具有較高頻率的信號(hào),通過 Speakera 分頻后由 SPKOUT輸出。由于直接從數(shù)控分頻器中出來的輸出信號(hào)是脈寬極窄的脈沖式信號(hào)。為了利用驅(qū)動(dòng)揚(yáng)聲器,需加一個(gè) D 觸發(fā)器以均衡其占空比,頻率將是原來的 1/2。 Speakera 對(duì) CLK 輸入信號(hào)的分頻比由預(yù)置數(shù) Tone決定。 SPKOUT 的輸出頻率將決定每一音符的音調(diào)。 2. Div 模塊: 由于所使用的硬件設(shè)備不能滿足設(shè)計(jì)所需要的兩個(gè) CLK 輸出 的頻率,所以使用一個(gè)分頻器來實(shí)現(xiàn)把一個(gè) 50MHz 的晶體振蕩頻率分成一個(gè) 12MHz,一個(gè) 8Hz 兩個(gè)分頻率,再把兩個(gè)頻率分別給所需的兩個(gè)模塊。 3. EG7模塊: SEG7 模塊是一個(gè)七段譯碼器,作用是在硬件上顯示音頻的高 低, 用 0到 7 分別對(duì)應(yīng)空節(jié)拍 do、 ri、 mi、 fa、 suo、 la、 xi,高音時(shí) , LED燈亮,數(shù)碼管顯示對(duì)應(yīng)數(shù)字。 發(fā)音原理: 1. 樂曲演奏的原理 組成樂曲的每個(gè)音符的頻率值(音調(diào))及其持續(xù)時(shí)間(音長(zhǎng))是樂 曲能連續(xù)演奏所需的兩個(gè)基本數(shù)據(jù),因此只要控制輸出到揚(yáng)聲器的激勵(lì) 信號(hào)的頻率的高低和持續(xù)時(shí)間,就可以使揚(yáng)聲器發(fā)出連續(xù)的樂曲聲 。 : 頻率的高低決定了音調(diào)的高低。 基準(zhǔn)頻率 f0的選取 所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻 率 f0 分頻而得到的。由于音節(jié)頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),因此必須將計(jì)算所得的分頻數(shù)四舍五入取整。若基準(zhǔn)頻率過高,則分頻比太小,取整后誤差較大。若基準(zhǔn)頻率過高,雖然誤差減小,但分頻數(shù)變大。綜合這兩方面因素,在盡量減小頻率誤差的前提下取合適的基準(zhǔn)頻率, 在此取 f0=12MHz。 3 分頻系數(shù) ,二進(jìn)制計(jì)數(shù)器計(jì)數(shù)的容量 N和 預(yù)置數(shù)的 選取 分頻系數(shù) A=f0/音名頻率 分頻系數(shù) n=f0/音名頻率 /2 N〉 =MAX{分頻系數(shù) n} 由表 1可得最大分頻系數(shù)為 1274,因此 N=2048為 2的 11次方。因此二進(jìn)制計(jì) 數(shù)器設(shè)為 11位二進(jìn)制加法計(jì)數(shù)器,其計(jì)數(shù)容量為 2048,計(jì)數(shù)的最大值為 2047。 預(yù)置數(shù) =N分頻系數(shù) n 表 1為各音階的頻率、對(duì)應(yīng)的分頻系數(shù)及預(yù)置數(shù): 3. 音長(zhǎng)的控制: 音符的持續(xù)時(shí)間須根據(jù)樂曲的速度及每個(gè)音符的節(jié)拍數(shù)來確定的?!恫刹栉枨分凶疃痰囊舴麨樗姆忠舴?,如果全音符的持續(xù)時(shí)間為 1s, 4 則四分音符的持續(xù)時(shí)間為 ,二分音符持續(xù)的時(shí)間為 等等,只需再提供一個(gè) 4Hz的時(shí)鐘頻率。每來一個(gè)脈沖計(jì)一次數(shù),每一計(jì)數(shù)值的停留時(shí)間為 ,即要輸入一個(gè)全音符時(shí)需要計(jì)四次數(shù)才行,則應(yīng)在 Rom 表格中輸出相應(yīng)音符四次,表示一個(gè)全音符的持續(xù)時(shí)間。 三、選擇器件 QuartusII 軟件的計(jì)算機(jī)一臺(tái)。 燈一個(gè) :使用 altera 公司生產(chǎn)的 Cyclone 系列芯片,如 EP1C12Q240C8 芯片。 實(shí)驗(yàn)箱一個(gè)。 ( JTAG) ,主要用于 FPGA 芯片的數(shù)據(jù)下載。 Cyclone 器件的配置器件 : 此次設(shè)計(jì)實(shí)驗(yàn)采用 ALTERA 公司的 cyclone 系列的 FPGA 芯片 EP1C12,設(shè)計(jì)和仿真采用 ALTERA 公司的 QUARTUS II 軟件, EP1C12 各項(xiàng)參數(shù)參照表 2。 Cyclone 的配置器件 配置器件 器件數(shù)量 EP1C3 EP1C4 EP1C6 EP1C12 EP1C20 EPCS1 1 1 1 N/A N/A EPCS4 1 1 1 1 1 EPC2 1 1 1 2 2 EPC4 1 1 1 1 1 EPC8 1 1 1 1 1 EPC16 1 1 1 1 1 表 2 EP1C12 參數(shù)表 Cyclone 的性能特性 : 新的 可編程體系結(jié)構(gòu) ,實(shí)現(xiàn)低成本設(shè)計(jì)。 嵌入式存儲(chǔ)器資源支持多種存儲(chǔ)器應(yīng)用和 數(shù)字信號(hào)處理 (DSP)實(shí)現(xiàn) 5 專用 外部存儲(chǔ)器接口 電路,支持與 DDR FCRAM 和 SDRAM 器件以及 SDR SDRAM存儲(chǔ)器的連接。 支持 串行總線和網(wǎng)絡(luò)接口 以及多種 通信協(xié)議 片內(nèi)和片外系統(tǒng)時(shí)序管理使用嵌入式 PLL 支持 單端 I/O 標(biāo)準(zhǔn)和差分 I/O 技術(shù) , LVDS 信號(hào)數(shù)據(jù)速率高達(dá) 640Mbps。 處理功耗支持 Nios II 系列嵌入式處理器 采用新的 串行配置器件 的低成本配置方案 Quartus II 軟件 OpenCore 評(píng)估特性 支持 免費(fèi)的 IP功能評(píng)估 四、 功能模塊 1)、 Songer 模塊 如圖 3: 圖 3 Songer 模塊 Songer 模塊由三個(gè)模塊組成: NoteTabs 模塊, ToneTaba 模塊 和 Speakera 模塊 。 Notetabs 模塊類似于彈琴人的手指, Toaba 類似于琴鍵, Speakera 類似于琴弦或音調(diào)發(fā)生器。 1. NoteTabs 模塊: 原理: 在這個(gè)模塊中設(shè)置了一個(gè) 8位二進(jìn)制計(jì)數(shù)器,作為音符數(shù)據(jù) ROM 的地址發(fā)生器。這個(gè)計(jì)數(shù)器的計(jì)數(shù)頻率選為 4HZ,即每一計(jì)數(shù) 值的停留時(shí)間為 秒,當(dāng)全音符設(shè)為 1秒時(shí), 4分音符持續(xù)時(shí) 間為 , 2分音符持續(xù)的時(shí)間為 等等。每來一個(gè)脈沖計(jì)一 次數(shù),每一計(jì)數(shù)值的停留時(shí)間為 ,即要輸入一個(gè)全音符時(shí)需 要計(jì)數(shù) 4次才行,則應(yīng)在 Rom表格中輸出相應(yīng)音符四次,表示一個(gè) 全音符的持續(xù)時(shí)間,要輸入一個(gè) 2分音符則需要計(jì)數(shù) 2次,依次類 推。 NoteTabs 模塊圖如圖 4: 6 圖 4 NoteTabs 模塊 程序 : library ieee。 use 。 use 。 entity notetabs is port(clk1:in std_logic。 toneindex:out std_logic_vector(3 downto 0))。 end。 architecture one of notetabs is ponent music port(address:in std_logic_vector(7 downto 0)。 clock:in std_logic。 q:out std_logic_vector(3 downto 0))。 end ponent。 signal counter:std_logic_vector(7 downto 0)。 begin t8:process(clk1,counter) begin if counter=336 then counter=00000000。 elsif(clk139。event and clk1=39。139。)then counter=counter+1。 end if。 end process。 7 u1:music port map(address=counter,q=toneindex,clock=clk1)。 end。 NoteTabs 模塊波形仿真圖如圖 5: (注:每來一個(gè)時(shí)鐘 clk,輸出一個(gè)相應(yīng)的數(shù),每個(gè)音符的拍子不一樣所記次數(shù)也不一樣) 圖 5 Notetabs 的波形仿真圖 《采茶舞曲》簡(jiǎn)譜 如圖 6 8 圖 6 《采茶舞曲》簡(jiǎn)譜 下表 7是 Rom 表格:(即為此程序中調(diào)用的 music 模塊)。 9 表 7 Rom 表格 ROM 模塊圖 如圖 8: 圖 8 ROM 生成的模塊圖 10 2. ToneTaba 模塊: 原理: ToneTaba 是樂曲簡(jiǎn)譜碼對(duì)應(yīng)的分頻預(yù)置數(shù)查表電路 。 音符的持續(xù)時(shí)間需要根據(jù)樂曲的速度及每個(gè)音符的節(jié)拍數(shù)來確定, Toaba的功能首先是為 Speakera 提供決定所發(fā)音符的分頻預(yù)置數(shù),而此數(shù)在 Speakera 輸入口停留的時(shí)間為此音符的節(jié)拍值。模塊Toaba 是樂曲簡(jiǎn)碼對(duì)應(yīng)的分頻預(yù)置數(shù)查表電路,其中設(shè)置了《采茶舞曲》樂曲全部音符所對(duì)應(yīng)的分頻預(yù)置數(shù),共 16 個(gè),每一音符的停留時(shí)間由音樂節(jié)拍和音調(diào)發(fā)生器模塊 Notetabs 的 clk 的輸入頻率決定,在此為 4Hz。這 16個(gè)值得輸出由對(duì)應(yīng)于 Toaba 的 4位 輸入值 Index[3..0]確定。輸向 Toaba 中 Index[3..0]的值,ToneIndex[3..0]的輸出值與持續(xù)的時(shí)間由模塊 Notetabs 決定。如圖 9: 圖 9 ToneTab 模塊 程序 library ieee。 use 。 entity ToneTaba is port
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1