EDA课程设计报告--智能函数信号发生器&&抢答器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

江苏大学电气学院EDA课程设计报告必选题目1:序列检测器设计一:题目要求见课本p296页二:程序编写思路:序列检测器用于检测一组或数组二进制数位是否与检测器中预置的码相同,由于检测的序列必须是连续的,所以要求检测器必须记住前一次的正确码以及正确序列,直到连续检测收到的码与预置的码完全一样。检测过程中,任意一位的不相等都会回到出事状态重新开始检测。若此数的每一位的连续检测都与预置的数完全一样,则输出A,否则输出B\。三:程序见课本p296页—p297页四:程序仿真波形程序仿真说明:在D中预置八位的序列,当clk时钟信号为上升沿时,开始检测,当Din中序列与预置序列D完全相同时,AB中输出A,否则输出B,当RST为高电平有效时,Din从头开始检测与D中预置序列匹配。必选题目2:八位并行预置加法计数器设计一.题目要求见P276页二.题目设计思路该加法计数器含有技术使能,异步复位和计数值并行预置的八位加法计数器,其中ID,EN,CLK,RST分别是并行输入预置使能信号,计数时钟使能信号,计数时钟信号和复位信号。其中ID并行输入预置使能信号作为高电平要保持时间必须包含一个上升沿。三.程序见课本P277页四.程序仿真波形程序仿真说明:D中预置两位计数初值,CLK为上升沿,RST为高电平有效时,Q置0,当SET信号为高电平时,Q置为计数初值,当EN为高电平时Q加1,EN为低电平时Q保持不变。自选题目1:智能函数发生器一.要求:函数发生器能够长生递增斜波,递减斜波,阶梯波,三角波,方波和正弦波,并可以通过选通开关选择输出的波形。二.设计思路:智能函数发生器可由递增斜波产生模块,递减斜波产生模块,阶梯波产生模块,三角波产生模块,方波产生模块,正弦波产生模块和一个选通模块组成。三.程序代码及仿真波形递增模块(icrs):LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYICRSISPORT(CLK,CLR:INSTD_LOGIC;--时钟信号,复位信号Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0)--输出函数值);ENDICRS;ARCHITECTUREONEOFICRSISBEGINPROCESS(CLK,CLR)VARIABLETMP:STD_LOGIC_VECTOR(7DOWNTO0);--中间变量BEGINIFCLR='1'THENTMP:=00000000;--清0ELSIFCLK'EVENTANDCLK='0'THEN--下降沿触发IFTMP=11111111THENTMP:=00000000;ELSETMP:=TMP+1;ENDIF;ENDIF;Q=TMP;ENDPROCESS;ENDONE;仿真波形如下:递减模块(dcrs):LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYDCRSISPORT(CLK,CLR:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDDCRS;ARCHITECTUREONEOFDCRSISBEGINPROCESS(CLK,CLR)VARIABLETMP:STD_LOGIC_VECTOR(7DOWNTO0);BEGINIFCLR='1'THENTMP:=11111111;--复位为最大值ELSIFCLK'EVENTANDCLK='1'THENIFTMP=00000000THENTMP:=11111111;ELSETMP:=TMP-1;ENDIF;ENDIF;Q=TMP;ENDPROCESS;ENDONE;仿真波形如下:阶梯波(ladder):通过改变阶梯常数可以改变递增的阶梯数LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYLADDERISPORT(CLK,CLR:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDLADDER;ARCHITECTUREONEOFLADDERISBEGINPROCESS(CLK,CLR)VARIABLETMP:STD_LOGIC_VECTOR(7DOWNTO0);VARIABLEA:STD_LOGIC;BEGINIFCLR='1'THENTMP:=00000000;ELSIFCLK'EVENTANDCLK='0'THENIFA='0'THENIFTMP=11111111THENTMP:=00000000;A:='1';ELSETMP:=TMP+16;A:='1';--阶梯常数为16ENDIF;ELSEA:='0';ENDIF;ENDIF;Q=TMP;ENDPROCESS;ENDONE;仿真波形如下:三角波模块(delta):LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYDELTAISPORT(CLK,CLR:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDDELTA;ARCHITECTUREONEOFDELTAISBEGINPROCESS(CLK,CLR)VARIABLETMP:STD_LOGIC_VECTOR(7DOWNTO0);VARIABLEA:STD_LOGIC;BEGINIFCLR='1'THENTMP:=00000000;ELSIFCLK'EVENTANDCLK='0'THENIFA='0'THEN--A=0,递增过程IFTMP=11111110THENTMP:=11111111;A:='1';--增到最大值后转为递减过程ELSETMP:=TMP+1;ENDIF;ELSE--A=1,递减过程IFTMP=00000001THENTMP:=00000000;A:='0';--减到最小值后转为递增过程ELSETMP:=TMP-1;ENDIF;ENDIF;ENDIF;Q=TMP;ENDPROCESS;ENDONE;仿真波形如下:由仿真图可以看出输出刚开始递增,增到最大值FF后转为递减,输出实现三角波波形。方波模块(square):LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSQUAREISPORT(CLK,CLR:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDSQUARE;ARCHITECTUREONEOFSQUAREISSIGNALA:STD_LOGIC;--分频信号BEGINPROCESS(CLK,CLR)VARIABLETMP:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIFCLR='1'THENA='0';ELSIFCLK'EVENTANDCLK='1'THENIFTMP=1111THENTMP:=0000;A=NOTA;ELSETMP:=TMP+1;ENDIF;ENDIF;ENDPROCESS;PROCESS(CLK,A)BEGINIFCLK'EVENTANDCLK='1'THENIFA='1'THENQ=11111111;--输出高电平ELSEQ=00000000;--输出低电平ENDIF;ENDIF;ENDPROCESS;ENDONE;仿真波形如下:正弦波模块(sin):一个周期取64个采样点,输出其函数值LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSINISPORT(CLK,CLR:INSTD_LOGIC;Q:OUTINTEGERRANGE0TO255);ENDSIN;ARCHITECTUREONEOFSINISBEGINPROCESS(CLK,CLR)VARIABLETMP:INTEGERRANGE0TO63;BEGINIFCLR='1'THENQ=0;ELSIFCLK'EVENTANDCLK='0'THENIFTMP=63THENTMP:=0;ELSETMP:=TMP+1;ENDIF;CASETMPISWHEN0=Q=255;WHEN1=Q=254;WHEN2=Q=252;WHEN3=Q=249;WHEN4=Q=245;WHEN5=Q=239;WHEN6=Q=233;WHEN7=Q=225;WHEN8=Q=217;WHEN9=Q=207;WHEN10=Q=197;WHEN11=Q=186;WHEN12=Q=174;WHEN13=Q=162;WHEN14=Q=150;WHEN15=Q=137;WHEN16=Q=124;WHEN17=Q=112;WHEN18=Q=99;WHEN19=Q=87;WHEN20=Q=75;WHEN21=Q=64;WHEN22=Q=53;WHEN23=Q=43;WHEN24=Q=34;WHEN25=Q=26;WHEN26=Q=19;WHEN27=Q=13;WHEN28=Q=8;WHEN29=Q=4;WHEN30=Q=1;WHEN31=Q=0;WHEN32=Q=0;WHEN33=Q=1;WHEN34=Q=4;WHEN35=Q=8;WHEN36=Q=13;WHEN37=Q=19;WHEN38=Q=26;WHEN39=Q=34;WHEN40=Q=43;WHEN41=Q=53;WHEN42=Q=64;WHEN43=Q=75;WHEN44=Q=87;WHEN45=Q=99;WHEN46=Q=112;WHEN47=Q=124;WHEN48=Q=137;WHEN49=Q=150;WHEN50=Q=162;WHEN51=Q=174;WHEN52=Q=186;WHEN53=Q=197;WHEN54=Q=207;WHEN55=Q=217;WHEN56=Q=225;WHEN57=Q=233;WHEN58=Q=239;WHEN59=Q=245;WHEN60=Q=249;WHEN61=Q=252;WHEN62=Q=254;WHEN63=Q=255;WHENOTHERS=NULL;ENDCASE;ENDIF;ENDPROCESS;ENDONE;仿真波形如下:由仿真图可以看出输出波形周期性递增,递减,但是并非线性增减,输出实现正弦波波形。波形选择模块(ch61a)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYCH61AISPORT(SEL:INSTD_LOGIC_VECTOR(2DOWNTO0);D0,D1,D2,D3,D4,D5:INSTD_LOGIC_VECTOR(7DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDCH61A;ARCHITECTUREONEOFCH61AISBEGINPROCESS(SEL)BEGINCASESELISWHEN000=Q=D0;--递增WHEN001=Q=D1;--递减WHEN010=Q=D2;--阶梯波WHEN011=Q=D3;--三角波WHEN100=Q=D4;--方波WHEN101=Q=D5;--正弦波WHENOTHERS=Q=NULL;ENDCASE;ENDPROCESS;ENDONE;整体电路原理图:整体仿真波形:由仿真图可以看出输出波形由控制信号sel[2...0]控制输

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功