八位16进制、八位10进制频率计设计_第1页
八位16进制、八位10进制频率计设计_第2页
八位16进制、八位10进制频率计设计_第3页
八位16进制、八位10进制频率计设计_第4页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA综合实习报告一李爱 20111154006 电子科学与技术 2011级数字频率计的设计(1)8位16进制频率计①.主程序:LIBRARYIEEE;ENTITY MAINISPORT(A,clk1,CLK:INSTD_LOGIC;O:OUTSTD_LOGIC_VECTOR(2DOWNTO0);P:OUTSTD_LOGIC_VECTOR(6DOWNTO0));END;ARCHITECTUREHEADOFMAINISCOMPONENTCEPINPORT(CLK1:INSTD_LOGIC;CNT:OUTSTD_LOGIC;RST:OUTSTD_LOGIC;LOAD:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTJISHUPORT(CLR:INSTD_LOGIC;EN:INSTD_LOGIC;FIN:INSTD_LOGIC;COUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDCOMPONENT;COMPONENT SUOCUNPORT(LK:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);QDOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDCOMPONENT;COMPONENTXIANSHIPORT(clk:instd_logic;Q:INSTD_LOGIC_VECTOR(31DOWNTO0);T:bufferSTD_LOGIC_VECTOR(2DOWNTO0);Y:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDCOMPONENT;SIGNAL NET1,NET2,NET3:STD_LOGIC;SIGNALNET4,NET5:STD_LOGIC_VECTOR(31DOWNTO0);BEGINU1:CEPINPORTMAP(CLK1=>CLK,CNT=>NET1,RST=>NET2,LOAD=>NET3);U2:JISHUPORTMAP(CLR=>NET2,EN=>NET1,FIN=>A,COUT=>NET4);U3:SUOCUNPORTMAP(LK=>NET3,DIN=>NET4,QDOUT=>NET5);U4:XIANSHIPORTMAP(clk=>clk1,Q=>NET5,Y=>P,T=>O);ENDHEAD;②.测频LIBRARYIEEE;ENTITY cepinISPORT(CLK1:INSTD_LOGIC;CNT:OUTSTD_LOGIC;RST:OUTSTD_LOGIC;LOAD:OUTSTD_LOGIC);END;ARCHITECTUREoneOFcepinISSIGNALM:STD_LOGIC;BEGINPROCESS(CLK1)BEGINIFCLK1'EVENTANDCLK1='1'THENM<=NOTM;ENDIF;ENDPROCESS;PROCESS(CLK1,M)BEGINIFCLK1='0'ANDM='0'THENRST<='1';ELSERST<='0';ENDIF;ENDPROCESS;LOAD<=NOTM;CNT<=M;ENDone;③.计数LIBRARYIEEE;ENTITYJISHUISPORT(CLR:INSTD_LOGIC;EN:INSTD_LOGIC;FIN:INSTD_LOGIC;COUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));END;ARCHITECTUREtwoOFJISHUISSIGNALQ:STD_LOGIC_VECTOR(31DOWNTO0);BEGINPROCESS(CLR,EN,FIN)BEGINIFCLR='1'THENQ<=(OTHERS=>'0');ELSIFFIN'EVENTANDFIN='1'THENIFEN='1'THENQ<=Q+1;ENDIF;ENDIF;ENDPROCESS;COUT<=Q;ENDtwo;④.锁存LIBRARYIEEE;ENTITY SUOCUNISPORT(LK:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);qDOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));END;ARCHITECTUREthreeOFSUOCUNISBEGINPROCESS(LK,DIN)BEGINIFLK'EVENTANDLK='1'THENqDOUT<=DIN;ENDIF;ENDPROCESS;ENDthree;⑤显示LIBRARYIEEE;ENTITYXIANSHIISPORT(clk:instd_logic;Q:INSTD_LOGIC_VECTOR(31DOWNTO0);T:bufferSTD_LOGIC_VECTOR(2DOWNTO0);Y:OUTSTD_LOGIC_VECTOR(6DOWNTO0));END;ARCHITECTUREfourOFXIANSHIISBEGINPROCESS(Q,clk,T)VARIABLEQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIFclk'eventandclk='1'THENQ1:=Q1+'1';ENDIF;ifQ1="0001" thenCASEQ(3downto0)ISWHEN"0000"=>T<="000";Y<="0111111";WHEN"0001"=>T<="000";Y<="0000110";WHEN"0010"=>T<="000";Y<="1011011";WHEN"0011"=>T<="000";Y<="1001111";WHEN"0100"=>T<="000";Y<="1100110";WHEN"0101"=>T<="000";Y<="1101101";WHEN"0110"=>T<="000";Y<="1111101";WHEN"0111"=>T<="000";Y<="0000111";WHEN"1000"=>T<="000";Y<="1111111";WHEN"1001"=>T<="000";Y<="1101111";WHEN"1010"=>T<="000";Y<="1110111";WHEN"1011"=>T<="000";Y<="1111100";WHEN"1100"=>T<="000";Y<="0111001";WHEN"1101"=>T<="000";Y<="1011110";WHEN"1110"=>T<="000";Y<="1111011";WHEN"1111"=>T<="000";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0010"thenCASEQ(7downto4)ISWHEN"0000"=>T<="001";Y<="0111111";WHEN"0001"=>T<="001";Y<="0000110";WHEN"0010"=>T<="001";Y<="1011011";WHEN"0011"=>T<="001";Y<="1001111";WHEN"0100"=>T<="001";Y<="1100110";WHEN"0101"=>T<="001";Y<="1101101";WHEN"0110"=>T<="001";Y<="1111101";WHEN"0111"=>T<="001";Y<="0000111";WHEN"1000"=>T<="001";Y<="1111111";WHEN"1001"=>T<="001";Y<="1101111";WHEN"1010"=>T<="001";Y<="1110111";WHEN"1011"=>T<="001";Y<="1111100";WHEN"1100"=>T<="001";Y<="0111001";WHEN"1101"=>T<="001";Y<="1011110";WHEN"1110"=>T<="001";Y<="1111011";WHEN"1111"=>T<="001";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0011"thenCASEQ(11downto8)ISWHEN"0000"=>T<="010";Y<="0111111";WHEN"0001"=>T<="010";Y<="0000110";WHEN"0010"=>T<="010";Y<="1011011";WHEN"0011"=>T<="010";Y<="1001111";WHEN"0100"=>T<="010";Y<="1100110";WHEN"0101"=>T<="010";Y<="1101101";WHEN"0110"=>T<="010";Y<="1111101";WHEN"0111"=>T<="010";Y<="0000111";WHEN"1000"=>T<="010";Y<="1111111";WHEN"1001"=>T<="010";Y<="1101111";WHEN"1010"=>T<="010";Y<="1110111";WHEN"1011"=>T<="010";Y<="1111100";WHEN"1100"=>T<="010";Y<="0111001";WHEN"1101"=>T<="010";Y<="1011110";WHEN"1110"=>T<="010";Y<="1111011";WHEN"1111"=>T<="010";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0100"thenCASEQ(15downto12)ISWHEN"0000"=>T<="011";Y<="0111111";WHEN"0001"=>T<="011";Y<="0000110";WHEN"0010"=>T<="011";Y<="1011011";WHEN"0011"=>T<="011";Y<="1001111";WHEN"0100"=>T<="011";Y<="1100110";WHEN"0101"=>T<="011";Y<="1101101";WHEN"0110"=>T<="011";Y<="1111101";WHEN"0111"=>T<="011";Y<="0000111";WHEN"1000"=>T<="011";Y<="1111111";WHEN"1001"=>T<="011";Y<="1101111";WHEN"1010"=>T<="011";Y<="1110111";WHEN"1011"=>T<="011";Y<="1111100";WHEN"1100"=>T<="011";Y<="0111001";WHEN"1101"=>T<="011";Y<="1011110";WHEN"1110"=>T<="011";Y<="1111011";WHEN"1111"=>T<="011";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0101"thenCASEQ(19downto16)ISWHEN"0000"=>T<="100";Y<="0111111";WHEN"0001"=>T<="100";Y<="0000110";WHEN"0010"=>T<="100";Y<="1011011";WHEN"0011"=>T<="100";Y<="1001111";WHEN"0100"=>T<="100";Y<="1100110";WHEN"0101"=>T<="100";Y<="1101101";WHEN"0110"=>T<="100";Y<="1111101";WHEN"0111"=>T<="100";Y<="0000111";WHEN"1000"=>T<="100";Y<="1111111";WHEN"1001"=>T<="100";Y<="1101111";WHEN"1010"=>T<="100";Y<="1110111";WHEN"1011"=>T<="100";Y<="1111100";WHEN"1100"=>T<="100";Y<="0111001";WHEN"1101"=>T<="100";Y<="1011110";WHEN"1110"=>T<="100";Y<="1111011";WHEN"1111"=>T<="100";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0110"thenCASEQ(23downto20)ISWHEN"0000"=>T<="101";Y<="0111111";WHEN"0001"=>T<="101";Y<="0000110";WHEN"0010"=>T<="101";Y<="1011011";WHEN"0011"=>T<="101";Y<="1001111";WHEN"0100"=>T<="101";Y<="1100110";WHEN"0101"=>T<="101";Y<="1101101";WHEN"0110"=>T<="101";Y<="1111101";WHEN"0111"=>T<="101";Y<="0000111";WHEN"1000"=>T<="101";Y<="1111111";WHEN"1001"=>T<="101";Y<="1101111";WHEN"1010"=>T<="101";Y<="1110111";WHEN"1011"=>T<="101";Y<="1111100";WHEN"1100"=>T<="101";Y<="0111001";WHEN"1101"=>T<="101";Y<="1011110";WHEN"1110"=>T<="101";Y<="1111011";WHEN"1111"=>T<="101";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0111"thenCASEQ(27downto24)ISWHEN"0000"=>T<="110";Y<="0111111";WHEN"0001"=>T<="110";Y<="0000110";WHEN"0010"=>T<="110";Y<="1011011";WHEN"0011"=>T<="110";Y<="1001111";WHEN"0100"=>T<="110";Y<="1100110";WHEN"0101"=>T<="110";Y<="1101101";WHEN"0110"=>T<="110";Y<="1111101";WHEN"0111"=>T<="110";Y<="0000111";WHEN"1000"=>T<="110";Y<="1111111";WHEN"1001"=>T<="110";Y<="1101111";WHEN"1010"=>T<="110";Y<="1110111";WHEN"1011"=>T<="110";Y<="1111100";WHEN"1100"=>T<="110";Y<="0111001";WHEN"1101"=>T<="110";Y<="1011110";WHEN"1110"=>T<="110";Y<="1111011";WHEN"1111"=>T<="110";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;elsifQ1="1000"thenCASEQ(31downto28)ISWHEN"0000"=>T<="111";Y<="0111111";WHEN"0001"=>T<="111";Y<="0000110";WHEN"0010"=>T<="111";Y<="1011011";WHEN"0011"=>T<="111";Y<="1001111";WHEN"0100"=>T<="111";Y<="1100110";WHEN"0101"=>T<="111";Y<="1101101";WHEN"0110"=>T<="111";Y<="1111101";WHEN"0111"=>T<="111";Y<="0000111";WHEN"1000"=>T<="111";Y<="1111111";WHEN"1001"=>T<="111";Y<="1101111";WHEN"1010"=>T<="111";Y<="1110111";WHEN"1011"=>T<="111";Y<="1111100";WHEN"1100"=>T<="111";Y<="0111001";WHEN"1101"=>T<="111";Y<="1011110";WHEN"1110"=>T<="111";Y<="1111011";WHEN"1111"=>T<="111";Y<="1110001";WHENOTHERS=>NULL;ENDCASE;endif;ENDPROCESS;ENDfour;⑥引脚::测频端口CLK:1Hz输入频率CLK1:2048Hz的刷新频率O:三八译码器选择端口P:数码管显示(2)8位10进制频率计①主程序 :LIBRARYIEEE;ENTITYMAINISPORT(CLK1,FSIN:INSTD_LOGIC;CLK:INSTD_LOGIC;E:OUTSTD_LOGIC_VECTOR(2DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(6DOWNTO0));END;ARCHITECTUREHEADOFMAINISCOMPONENTJISHUPORT(CLK,RST,EN:INSTD_LOGIC;CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);COUT:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTCEPINPORT(CLK:INSTD_LOGIC;TSTEN:OUTSTD_LOGIC;CLR_CNT:OUTSTD_LOGIC;LOAD:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTSUOCUNPORT(LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDCOMPONENT;COMPONENT XIANSHIPORT(clk:instd_logic;Q:INSTD_LOGIC_VECTOR(31DOWNTO0);T:bufferSTD_LOGIC_VECTOR(2DOWNTO0);Y:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDCOMPONENT;SIGNALTSTEN:STD_LOGIC;SIGNALCLR_CNT:STD_LOGIC;SIGNALLOAD:STD_LOGIC;SIGNALC1:STD_LOGIC;SIGNALC2:STD_LOGIC;SIGNALC3:STD_LOGIC;SIGNALC4:STD_LOGIC;SIGNALC5:STD_LOGIC;SIGNALC6:STD_LOGIC;SIGNALC7:STD_LOGIC;SIGNALC8:STD_LOGIC;SIGNALDIN,S:STD_LOGIC_VECTOR(31DOWNTO0);BEGINU0:CEPINPORTMAP(CLK=>CLK,TSTEN=>TSTEN,CLR_CNT=>CLR_CNT,LOAD=>LOAD);U1:JISHUPORTMAP(CLK=>FSIN,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(3DOWNTO0),COUT=>C1);U2:JISHUPORTMAP(CLK=>C1,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(7DOWNTO4),COUT=>C2);U3:JISHUPORTMAP(CLK=>C2,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(11DOWNTO8),COUT=>C3);U4:JISHUPORTMAP(CLK=>C3,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(15DOWNTO12),COUT=>C4);U5:JISHUPORTMAP(CLK=>C4,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(19DOWNTO16),COUT=>C5);U6:JISHUPORTMAP(CLK=>C5,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(23DOWNTO20),COUT=>C6);U7:JISHUPORTMAP(CLK=>C6,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(27DOWNTO24),COUT=>C7);U8:JISHUPORTMAP(CLK=>C7,RST=>CLR_CNT,EN=>TSTEN,CQ=>DIN(31DOWNTO28),COUT=>C8);U9:SUOCUNPORTMAP(LOAD=>LOAD,DIN=>DIN(31DOWNTO0),DOUT=>S);U10:XIANSHIPORTMAP(CLK=>CLK1,Q=>S,T=>E,Y=>DOUT);ENDHEAD;②测频LIBRARYIEEE;ENTITYCEPINISPORT(CLK:INSTD_LOGIC;TSTEN:OUTSTD_LOGIC;CLR_CNT:OUTSTD_LOGIC;LOAD:OUTSTD_LOGIC);END;ARCHITECTURETWOOFCEPINISSIGNALDIV2CLK:STD_LOGIC;BEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENDIV2CLK<=NOTDIV2CLK;ENDIF;ENDPROCESS;PROCESS(CLK,DIV2CLK)BEGINIFCLK='0'ANDDIV2CLK='0'THENCLR_CNT<='1';ELSECLR_CNT<='0';ENDIF;ENDPROCESS;LOAD<=NOTDIV2CLK;TSTEN<=DIV2CLK;ENDTWO;③计数LIBRARYIEEE;ENTITYJISHUISPORT(CLK,RST,EN:INSTD_LOGIC;CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);COUT:OUTSTD_LOGIC);END;ARCHITECTUREONEOFJISHUISBEGINPROCESS(CLK,RST,EN)VARIABLECQI:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIFRST='1'THENCQI:=(OTHERS=>'0');ELSIFCLK'EVENTANDCLK='1'THENIFEN='1'THENIFCQI<"1001"THENCQI:=CQI+1;ELSECQI:=(OTHERS=>'0');ENDIF;ENDIF;ENDIF;IFCQI="1001"THENCOUT<='1';ELSECOUT<='0';ENDIF;CQ<=CQI;ENDPROCESS;ENDONE;④所存LIBRARYIEEE;ENTITYSUOCUNISPORT(LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));END;ARCHITECTURETHREEOFSUOCUNISBEGINPROCESS(LOAD,DIN)BEGINIFLOAD'EVENTANDLOAD='1'THENDOUT<=DIN;ENDIF;ENDPROCESS;ENDTHREE;⑤显示LIBRARYIEEE;ENTITYXIANSHIISPORT(clk:instd_logic;Q:INSTD_LOGIC_VECTOR(31DOWNTO0);T:bufferSTD_LOGIC_VECTOR(2DOWNTO0);Y:OUTSTD_LOGIC_VECTOR(6DOWNTO0));END;ARCHITECTUREfourOFXIANSHIISBEGINPROCESS(Q,clk,T)VARIABLEQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIFclk'eventandclk='1'THENQ1:=Q1+'1';ENDIF;ifQ1="0001" thenCASEQ(3downto0)ISWHEN"0000"=>T<="000";Y<="0111111";WHEN"0001"=>T<="000";Y<="0000110";WHEN"0010"=>T<="000";Y<="1011011";WHEN"0011"=>T<="000";Y<="1001111";WHEN"0100"=>T<="000";Y<="1100110";WHEN"0101"=>T<="000";Y<="1101101";WHEN"0110"=>T<="000";Y<="1111101";WHEN"0111"=>T<="000";Y<="0000111";WHEN"1000"=>T<="000";Y<="1111111";WHEN"1001"=>T<="000";Y<="1101111";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0010"thenCASEQ(7downto4)ISWHEN"0000"=>T<="001";Y<="0111111";WHEN"0001"=>T<="001";Y<="0000110";WHEN"0010"=>T<="001";Y<="1011011";WHEN"0011"=>T<="001";Y<="1001111";WHEN"0100"=>T<="001";Y<="1100110";WHEN"0101"=>T<="001";Y<="1101101";WHEN"0110"=>T<="001";Y<="1111101";WHEN"0111"=>T<="001";Y<="0000111";WHEN"1000"=>T<="001";Y<="1111111";WHEN"1001"=>T<="001";Y<="1101111";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0011"thenCASEQ(11downto8)ISWHEN"0000"=>T<="010";Y<="0111111";WHEN"0001"=>T<="010";Y<="0000110";WHEN"0010"=>T<="010";Y<="1011011";WHEN"0011"=>T<="010";Y<="1001111";WHEN"0100"=>T<="010";Y<="1100110";WHEN"0101"=>T<="010";Y<="1101101";WHEN"0110"=>T<="010";Y<="1111101";WHEN"0111"=>T<="010";Y<="0000111";WHEN"1000"=>T<="010";Y<="1111111";WHEN"1001"=>T<="010";Y<="1101111";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0100"thenCASEQ(15downto12)ISWHEN"0000"=>T<="011";Y<="0111111";WHEN"0001"=>T<="011";Y<="0000110";WHEN"0010"=>T<="011";Y<="1011011";WHEN"0011"=>T<="011";Y<="1001111";WHEN"0100"=>T<="011";Y<="1100110";WHEN"0101"=>T<="011";Y<="1101101";WHEN"0110"=>T<="011";Y<="1111101";WHEN"0111"=>T<="011";Y<="0000111";WHEN"1000"=>T<="011";Y<="1111111";WHEN"1001"=>T<="011";Y<="1101111";WHENOTHERS=>NULL;ENDCASE;elsifQ1="0101"thenCASEQ(19downto16)ISWHEN"0000"=>T<="100";Y<="0111111";WHEN"0001"=>T<="100";Y<="0000110";WHEN"0010"=>T<="100";Y<="1011011";WHEN"0011"=>T<="100";Y<="1001111";WHEN"0100"=>T<="100";Y<="1100110";WHEN"0101"=>T<="100";Y<="1101101";WHEN"0110"=>T<="100";Y<="1111101";WHEN"0111"=>T<="100";Y<="0000111";WHEN"1000"=>T<="100";Y<="1111111";WH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论