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

正文內(nèi)容

畢業(yè)設(shè)計(jì)—樂曲硬件演奏電路的eda設(shè)計(jì)(編輯修改稿)

2025-01-06 20:08 本頁面
 

【文章內(nèi)容簡介】 ( 4) 綜合。綜合的目的是在于將設(shè)計(jì)的源文件由語言轉(zhuǎn)換為實(shí)際的電路。(但是此時(shí)還沒有在芯片中形成真正的電路。這一步就好像是把人的腦海中的電路畫成原理圖。 這是我的個(gè)人觀點(diǎn),似乎在好多文獻(xiàn)中都沒有提到 “綜合 ”的準(zhǔn)確定義。至少,我讀過的幾本書中就沒有。)這一部的最終目的是生成門電路級(jí)的網(wǎng)表( Netlist)。 ( 5 ) 布 局 、 布 線 。 這 一 步 的 目 的 是 生 成 用 于 燒 寫 ( 編 程Programming)的編程文件。在這一步,將用到第 4 步生成的網(wǎng)表并根據(jù)CPLD/FPG 廠商的器件容量,結(jié)構(gòu)等進(jìn)行布局、布線。這就好像 在設(shè)計(jì)PCB 時(shí)的布局布線一樣。先將各個(gè)設(shè)計(jì)中的門根據(jù)網(wǎng)表的內(nèi)容和器件的結(jié)構(gòu)放在器件的特定部位。然后,在根據(jù)網(wǎng)表中提供的各門的連接,把各個(gè)門的輸入輸出連接起來。最后,生成一個(gè)供編程的文件。這一步同時(shí)還會(huì)加一些時(shí)序信息( Timing)到你的設(shè)計(jì)項(xiàng)目中去,以便與你做后仿真。 ( 6) 后仿真。這一步主要是為了確定你的設(shè)計(jì)在經(jīng)過布局布線之后,是不是還滿足你的設(shè)計(jì)要求。 ( 7) 燒寫器件(編程)。 隨著 EDA 技術(shù)的發(fā)展,使用硬件語言設(shè)計(jì)PLD/FPGA 成為一種趨勢(shì)。目前最主要的硬件描述語言是 VHDL 和 Verilog HDL。 VHDL 發(fā)展的較早,語法嚴(yán)格,而 Verilog HDL 是在 C 語言的基礎(chǔ)上發(fā)展起來的一種硬件描述語言 ,語法較自由。 VHDL 和 Verilog HDL 兩者相比, VHDL 的書寫規(guī)則比 Verilog 煩瑣一些,但 verilog 自由的語法也容易讓少數(shù)初學(xué)者出錯(cuò)。 國外電子專業(yè)很多會(huì)在本科階段教授 VHDL,在研究生階段教授 verilog。從國內(nèi)來看, VHDL 的參考書很多,便于查找資料,而Verilog HDL 的參考書相對(duì)較少,這給學(xué)習(xí) Verilog HDL 帶來一些困難。 從EDA 技術(shù)的發(fā)展上看,已出現(xiàn)用于 CPLD/FPGA 設(shè)計(jì)的硬件 C 語言編譯軟件,雖然還不成熟,應(yīng)用極少,但它有可能會(huì)成為繼 VHDL 和 Verilog 之后,設(shè)計(jì)大規(guī)模 CPLD/FPGA 的又一種手段。 應(yīng)用 VHDL 進(jìn)行工程設(shè)計(jì)的優(yōu)點(diǎn)是多方面的 : (1) 與其他的硬件描述語言相比, VHDL 具有更強(qiáng)的行為描述能力,從而決定他成為系統(tǒng)設(shè)計(jì)領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計(jì)大規(guī)模電子系統(tǒng)的重要保證。 (2) VHDL 豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計(jì)早期就能查驗(yàn)設(shè)計(jì)系統(tǒng)的功能可行性,隨時(shí)可對(duì)設(shè)計(jì)進(jìn) 行 仿真模擬。 沈陽工程學(xué)院課程設(shè)計(jì)(論文) 6 (3) VHDL 語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用功能。符合市場(chǎng)需求的大規(guī)模系統(tǒng) 高效, 高速的完成必須有多人甚至多個(gè)代發(fā)組共同并行工作才能實(shí)現(xiàn)。 (4) 對(duì)于用 VHDL 完成的一個(gè)確定的設(shè)計(jì),可以利用 EDA 工具進(jìn)行邏輯綜合和優(yōu)化,并自動(dòng)的把 VHDL 描述設(shè)計(jì)轉(zhuǎn)變成門級(jí) 網(wǎng)表。 (5) VHDL 對(duì)設(shè)計(jì)的描述具有相對(duì)獨(dú)立性,設(shè)計(jì)者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計(jì)實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨(dú)立的設(shè)計(jì) . 任何 新生事物的產(chǎn)生都有它的歷史沿革,早期的硬件描述語言 是以一種高級(jí)語言為基礎(chǔ),加上一些特殊的約定而產(chǎn)生的,目的是為了實(shí)現(xiàn) RTL 級(jí)仿真,用以驗(yàn)證設(shè)計(jì)的正確性,而不必像在傳統(tǒng)的手工設(shè)計(jì)過程中那樣,必須等到完成樣機(jī)后才能進(jìn)行實(shí)測(cè)和調(diào)試。 VHDL 就是在用用最廣泛的 C 語言的基礎(chǔ)上發(fā)展起來的一種件描述語言,它是由 GDA(Gateway Design Automation)公司的 PhilMoorby 在 1983 年末首創(chuàng)的,最初只設(shè)計(jì)了一個(gè)仿真與驗(yàn)證工具,之后又陸續(xù)開發(fā)了相關(guān)的故障模擬與時(shí)序分析工具。 1985 年 Moorby 推出它的第三個(gè)商用仿真器VerilogXL,獲得了巨 大的成功,從而使得 Verilog HDL 迅速得到推廣應(yīng)用。1989 年 CADENCE 公司收購了 GDA 公司,使得 VerilogHDL 成為了該公司的獨(dú)家專利。 1990 年 CADENCE 公司公開發(fā)表了 Verilog HDL,并成立 LVI組織以促進(jìn) Verilog HDL 成為 IEEE 標(biāo)準(zhǔn),即 IEEE Standard 13641995。 VHDL 的最大特點(diǎn)就是易學(xué)易用,如果有 C 語言的編程經(jīng)驗(yàn),可以在一個(gè)較短的時(shí)間內(nèi)很快的學(xué)習(xí)和掌握,因而可以把 Verilog HDL 內(nèi)容安排在與 ASIC 設(shè)計(jì)等相關(guān)課程內(nèi)部進(jìn)行講授,由于 HDL 語言本身是專門面向硬件與系統(tǒng)設(shè)計(jì)的,這樣的安排可以使學(xué)習(xí)者同時(shí)獲得設(shè)計(jì)實(shí)際電路的經(jīng)驗(yàn)。與之相比, VHDL 的學(xué)習(xí)要困難一些。但 Verilog HDL 較自由的語法,也容易造成初學(xué)者犯一些錯(cuò)誤,這一點(diǎn)要 注意。 沈陽工程學(xué)院課程設(shè)計(jì)(論文) 7 第 3章 樂曲硬件演奏電路 基本要求 利用 FPGA,設(shè)計(jì)一個(gè)樂曲硬件演奏電路。 樂曲的 12 平均率規(guī)定:每 2個(gè)八度(如簡譜中的中音 1 與高音 1)之間的頻率相差 1 倍。在 2 個(gè)八度音之間,又可分為 12 個(gè)半音,每 2 個(gè)半音的頻率比為 12√ 2。另外,音符 A的頻率為 440HZ,音符 B 到 C 之間, E 到 F 之間為 半音,其余為全音。 由此可以計(jì)算出簡譜中從低音 l 至高音 1 之間每個(gè)音符的頻率。 設(shè)計(jì)音符查找表電路模塊,時(shí)鐘模塊,數(shù)控分頻器模塊,音樂節(jié)拍產(chǎn)生模塊電路。 任意選擇歌曲進(jìn)行設(shè)計(jì),但是歌曲前奏必須是中音 5353222 樂曲演奏原理 聲音的頻譜范圍一般在幾十到幾千赫茲,利用程序來控制 FPGA 芯片某個(gè)引腳輸出一定頻率的矩形波,接上揚(yáng)聲器就能發(fā)出相應(yīng)頻率的聲音。樂曲中的每個(gè)音符對(duì)應(yīng)著一定的頻率,因此,想要發(fā)出不同音符的音調(diào),只要能控制輸出相應(yīng)音符的頻率即可。樂曲都是由一連串的音符組成,因此按照樂曲的樂譜依次輸出這些音符所對(duì)應(yīng) 的頻率,就可以往揚(yáng)聲器上連續(xù)地發(fā)出各個(gè)音符的音調(diào)。 音樂頻率和音樂的持續(xù)時(shí)間 是音樂演奏的兩個(gè)關(guān)鍵因素 ,以純硬件完成演奏電路比利用微處理器來實(shí)現(xiàn)樂曲演奏要復(fù)雜的多,如果不憑借 EDA 工具和硬件描述語言,憑借傳統(tǒng)的數(shù)字邏輯技術(shù),即使最簡單的演奏電路也難以實(shí)現(xiàn)。樂曲硬件演奏電路系統(tǒng)主要有數(shù)控分頻器和樂曲存儲(chǔ)模塊組成。數(shù)控分頻器對(duì) FPGA 的基準(zhǔn)頻率進(jìn)行分頻,得到與各個(gè)音階對(duì)應(yīng)的頻率輸出。樂曲存儲(chǔ)模塊產(chǎn)生節(jié)拍控制和音階選擇信號(hào),即在此模塊中可存放一個(gè)樂曲曲譜真值表,由一個(gè)計(jì)數(shù)器來控制此真值表的輸出,而由計(jì)數(shù)器 的計(jì)數(shù)時(shí)鐘信 號(hào)作為樂曲節(jié)拍控制信號(hào)。樂曲演奏電路的結(jié)構(gòu)框圖如下 : 圖 樂曲演奏電路結(jié)構(gòu)框圖 沈陽工程學(xué)院課程設(shè)計(jì)(論文) 8 ( 1) 音名與頻率的關(guān)系 樂曲的 12 平均率規(guī)定:每 2 個(gè)八度(如簡譜中的中音 1 與高音 1)之間的頻率相差 1 倍。在 2 個(gè)八度音之間,又可分為 12 個(gè)半音,每 2 個(gè)半音的頻率比為 12√ 2。另外,音符 A 的頻率為 440HZ,音符 B 到 C 之間, E到 F 之間為半音,其余為全音。 由此可以計(jì)算出簡譜中從低音 l 至高音 1之間每個(gè)音符的頻率。如表 所示: 表 簡譜中的音名與頻率的關(guān)系 音名 頻率 /HZ 音名 頻率 /HZ 音名 頻率 /HZ 低音 1 中音 1 高音 1 低音 2 中音 2 高音 2 低音 3 中音 3 高音 3 低音 4 中音 4 高音 4 低音 5 392 中音 5 784 高音 5 1568 低音 6 440 中音 6 880 高音 6 1760 低音 7 中音 7 高音 7 由于音階頻率多為非整數(shù),而分頻系數(shù)又不 能為小數(shù),故必須將得到的分頻系數(shù)四舍五入取整。若基準(zhǔn)頻率過低,則由于分頻系數(shù)過小,四舍五入取整后的誤差較大,若基準(zhǔn)頻率過高,雖然誤碼差變小,但是分頻結(jié)構(gòu)將變大。實(shí)際的設(shè)計(jì)應(yīng)綜合考慮兩方面的因素,在盡量減小頻率誤差的前提下取舍合適的基準(zhǔn)頻率。本例中選取 4MHZ 的基準(zhǔn)頻率。 各音階頻率計(jì)相應(yīng)的分頻系數(shù)如表 所示。為了減少輸出的偶次諧波分量,最后輸出到揚(yáng)聲器的波形應(yīng)為對(duì)稱方波,因此在到達(dá)揚(yáng)聲器之前,又經(jīng)過一個(gè) 2 分頻的分頻器。表 的分頻系數(shù)就是從 4MHZ 頻率 2 分頻得到的 2MHZ 頻率基礎(chǔ)上計(jì)算得出的。 表 各音階頻率對(duì)應(yīng)的分頻表 音名 分頻系數(shù) 初始值 音名 分頻系數(shù) 初始值 音名 分頻系數(shù) 初始值 低音 1 7644 547 中音 1 3822 4369 高音 1 1911 6280 低音 2 6810 1381 中音 2 3405 4786 高音 2 1270 6921 低音 3 6067 2124 中音 3 3034 5157 高音 3 1517 6674 低音 4 5727 2464 中音 4 2864 5327 高音 4 1432 6759 低音 5 5102 3089 中音 5 2551 5640 高音 5 1256 6935 低音 6 4545 3646 中音 6 2273 5918 高音 6 1137 7054 低音 7 4050 4141 中音 7 2025 6166 高音 7 1013 7178 由于最大分頻系數(shù)是 7644,故采用 13 位二進(jìn)制計(jì)數(shù)器已能滿足分頻的要求。在表 中,除了給出了分頻比例外,還給出了對(duì)應(yīng)于各個(gè)音階頻率時(shí)計(jì)數(shù)器不同的初始值,對(duì)于樂曲中的休止符,要將分頻系數(shù)設(shè)為 0,即初始值位 8191 即可,此時(shí)揚(yáng)聲器將不會(huì)發(fā)聲。對(duì)于不同的分頻系數(shù),加載沈陽工程學(xué)院課程設(shè)計(jì)(論文) 9 不同的初始值即可。用加載初 始值而不是將分頻輸出譯碼反饋,可以有效地減少成本設(shè)計(jì)占用可編程邏輯器件的資源,也是同步計(jì)數(shù)器一個(gè)常用設(shè)計(jì)技巧。 ( 2)控制音長的節(jié)拍發(fā)生器 該演奏電路演奏的樂曲是“梁?!逼危渥钚〉墓?jié)拍是 1 拍。將 1 拍的時(shí)間定為 ,則只需要再提供一個(gè) 4HZ 的時(shí)鐘頻率即可產(chǎn)生 1 拍的時(shí)長,演奏的時(shí)間控制通過 ROM 查表得方式完成。對(duì)于占用時(shí)間較長的節(jié)拍(一定是拍的整數(shù)倍),如全音符為 4 拍(重復(fù) 4 次) ,2/4 音符為 2 拍(重復(fù) 2 次), 1//4 音符為 1 拍(重復(fù) 1 次)。 要求演奏時(shí)能循環(huán)進(jìn)行,因此需要另外設(shè)置一個(gè)時(shí)長計(jì)數(shù)器,當(dāng)樂 曲演奏完成時(shí),保證能自動(dòng)從頭開始演奏。該計(jì)數(shù)器控制真值表按順序輸出簡譜。 樂曲硬件演奏電路的層次化設(shè)計(jì)方案 根據(jù)層次化的設(shè)計(jì)思路,可把樂曲硬件演奏電路分為 3 個(gè)模塊,音樂節(jié)拍發(fā)生器 NoteTabs 模塊 ,音符譯碼電路 ToneTaba 模塊,數(shù)控分頻模塊( Speakera)。 音樂節(jié)拍發(fā)生器 NoteTabs 該模塊將利用 FPGA 的片內(nèi) POM 存放樂曲簡譜真值表,該計(jì)數(shù)器的計(jì)數(shù)頻率為 4HZ,即每一個(gè)數(shù)值的停留時(shí)間為 ,隨著 NoteTabs 中計(jì)數(shù)器按4HZ 的時(shí)鐘頻率做加法計(jì)數(shù)時(shí),樂符數(shù)據(jù) 轉(zhuǎn) 向音符 譯碼電路 ToneTaba,所以所存的樂曲就自然的演奏起來。 其 VHDL 源程序如下: LIBRARY IEEE。 USE 。 USE 。 USE 。 ENTITY NoteTabs IS PORT ( clk : IN STD_LOGIC。 ToneIndex : OUT INTEGER RANGE 0 TO 15 )。 END。 ARCHITECTURE one OF NoteTabs IS SIGNAL Counter : INTEGER RANGE 0 TO 145。 BEGIN CNT8 : PROCESS(clk) 沈陽工程學(xué)院課程設(shè)計(jì)(論文) 10 BEGIN IF Counter = 138 THEN Counter = 0。 ELSIF (clk39。EVENT AND clk = 39。139。) THEN Counter = Counter + 1。 END IF。 END PROCESS。 Search : PROCESS(Counter) BEGIN CASE Counter IS 譯碼器,查歌曲的樂譜表,查表結(jié)果為音調(diào)表的索引值 WHEN 00 = ToneIndex = 5。 WHEN 01 = ToneIndex = 3。 WHEN 02 = ToneIndex = 5。 WHEN 03 = ToneIndex = 3。 WHEN 04 = ToneIndex = 2。 WHEN 05 = ToneIndex =
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1