《EDA技术实验报告--硬件乐曲演奏电路设计.docx》由会员分享,可在线阅读,更多相关《EDA技术实验报告--硬件乐曲演奏电路设计.docx(6页珍藏版)》请在优知文库上搜索。
1、实验报告课程-EDA技术实验名称硬件乐曲演奏电路设计第页一、实验目的1、设计数控分频器,学习设计硬件乐曲演奏电路;2、学习使用开发板,将设计好的电路烧写进去,使其实现具体的功能;二、实验内容1、设计一个分频器,实现2OM-1M,20M4HZ的分频;2、利用ROM写入梁祝的乐谱码;3、利用1中分频分得的4HZ设计一个计数器,使得读完梁祝中139个节拍后得以置零;4、设计一个译码电路,使得梁祝乐谱码可以转换成相应的音符频率;5、设计一个11位的数控分频器,使得梁祝中的每一个音符的音调得以确定:三、实验环境QuartusII软件四、实验步骤1、设计一个分频器,实现20M1M,20M-4HZ的分频;(
2、1)实验代码:123456789IO11121314151617181920212223242526272829LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD2LOGIC2UNSIGNED.ALL;HENTITYM_20DIVIS-HPORT(INCLKO:INSTD_LOGIC;CLKlMzCLK4:OUTSTD_LOGIC);END;HARCHITECTUREONEOFM_20DIVISSIGNALRl,R2zR3zR4:-STDJLOGIjVECTOR(7DO三TO0)SIGNALCXzCYzCZzCQ:STDlLOGlC一;HBEG
3、INIMDIVISIONaprocess(inclko)BEGINHIFINCLKO,EVENTANDINCLKO=1,THENIFRl=9THENRl三,00000000r,;CX=NOTCX;HELSER1=R1+1;ENDIF;ENDIF;CLK1M=CX;ENDPROCESS;4HZDIVISIONHPROCESS(CX)BEGINHIFINCLKO,EVENTANDINCLKO=,1,THENIFR2=249THENR2=,00000000,r;CY=NOTCY;HELSER2=R2+1;30313233343536373839404142434445464748495051ENDI
4、F;ENDIF;ENDPROCESS;HPROCESS(CY)BEGINHIFCY,EVENTANDCY=1THENIFR3=249THENR3=,00000000,r;CZ=NOTCZ;HELSER3=R3+1;ENDIF;ENDIF;CLK4三CZ;ENDPROCESS;HPROCESS(CZ)BEGINHIFCZ,EVENTANDCZ三,1,THENIFR4=9THENR4=,00000000r,;CQ=NOTCQ;ELSER4=R4+1;ENDIF;ENDIF;CLK4三CQ;ENDPROCESS;ENDONE;(2)代码说明本模块代码是实现将输入为20MHZ信号分频成IMHZ和4HZ
5、的信号。2、利用RoM写入梁祝的乐谱码用LMP ROU进行定制和调用:Cyclone IIICurrentlyselecteddevicefamily:HMatchProjeCt/defaultFamilysupportsLPM_R0Monlyinbackward-compatibilitymode.AlterarecommendsusingALTSYNCRAMwizard.Howwideshouldthe,qou(putbusbe?4v;bitsHowmany4-bitwordsofmemory?256Vwords将梁祝的乐谱码写入到ROM:3;01:3;02:3;03:3;04:5;05:
6、5;06:5;07:6;08:8;09:8;10:8;11:9;12:6;13:8;14:5;15:5;16:12;17:12;18:12;19:15;20:13:21:12;22:10;23:12;24:9;25:9;26:9;27:9;28:9;29:9;30:9;31:0;32:9;53:9;34:9;35:10;36:7;37:7;38:6;39:6;40:5;41:5;42:5;43:6;44:8;45:8;46:9;47:9;48:3;49:3;50: 8;51:8;52:6;53:5;54:6;55:8;56:5;57:5;58:5;59:5;60: 5;61:5;62:5;63
7、:5;64:10;65:10;66:10;67:12;68:7;69:7;78:5;79:5;88:6;89:6;98:8;99:9;73:83:93:6 3 62:2:2:-8 99 5 61117 8 99 3 6 m80:笫75:85:95: 5;5;5;59 8 7:7:7:-8 95;fz,&6 6 67 8 9 5;6 100:12;102:12;103:10:104:9;105:9:106:10;107:9;108:8;109:8;110: 6;111:5;112:3;113:3;114:3;115:3;116:8;117:8:118:8:119:8;120: 6;121:8;1
8、22:6;123:5;124:3;125:5;126:6;127:8;128:5;129:5;130: 5;131:5;132:5;133:5;134:5;135:5;136:0;137:0;138:0;1 3、利用1中分频分得的4HZ设计一个计数器,使得读完梁祝中139个节拍后得以置零;(1)实验代码:2 1.IBRARYIEEE;3 USEIEEE.STD_LOGIC_1164.ALL;4 USEIEEE.STD2LOGIC2UNSIGNED.ALL;5 HENTITYcetl38tIS-6 HPORT(elk:INSTD_LOGIC;7 cnt8:OUTSTD_LOGIC_VECTOR(
9、7DO三TO0);8 END;9 HARCHITECTUREoneOFcetl38tIS10 SIGNALCounter:STD_LOGIC_VECTOR(7DOWNTO0);11 HBEGIN12 HPROCESS(clkzCounter)13 BEGIN13HIFCounter=138THENCounter=,r00000000,r;14 ELSIF(clk,EVENTANDelk=,1,)THENCounter=Counter+1;ENDIF;15 ENDPROCESS;16 cnt8=ENDCASE;ENDPROCESS;END;(2)仿真结果:译码电路,有表方式,控制音调的预置数To
10、ne=wOll0101Tone=,01110010000wTone=,r10000001100r,Tone=,r10010101101MTone=10100001010r,Tone=,10IOlOll100r,Tone=r,10110000010r,Tone-rrIOlllOO1000nTone三r,11000000110Tone-,11001010110wTone-,11010000100r,one-r,ooooooor,NULL;CODE=,OOOOr,;CODE=w0001,r;;code=mooiom;CODE=,Oll,r;CODE=,0101r,;;C0DE=,0110m;;COD
11、E=,0111r,;CDE=,0001,r;;C0DE=r,0010,r;;CODE-,OOHr,;;CODE-r,0101,r;;CODE-,OHO,r;;CODE-,0001f,;HI_GHHIlGHHI二GHHl二GHHl二GHHl二GHHI二GHHllGHHlGHHl二GHHl二GHH工二GHHIGH=0000000111111;2047;773;912;1036;1197;1290;1372;1410;1480;1542;;1622;1668;1728;实验说明:如仿真图所示,当取相应的输入时,输出将其译码成11位的二进制数、查表方式以及控制音调的预置数(code,high在本实验中没有用到):5、设计一个11位的数控分频器,使得梁祝中的每一个音符的音调得以确定;1 (1)实验代码:2 1.IBRARYIEEE;3 USEIEEE.STD_LOGIC_1164.ALL;4 USEIEEE.STD二LOG工UUNSlGNED.ALL;5 HENTITYSpeakersIS6 HPORT(elk:INSTD_LOGIC;7 Tone:INSTDlLoGlJUECTOR(10DOWNTO0);