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

正文內(nèi)容

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

2025-05-23 19:26 本頁面
 

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