文档详情

eda课程设计 多波形函数发生器设计.doc

发布:2018-02-25约6.51千字共18页下载文档
文本预览下载声明
子信息科学与技术 专业课程设计任务书 学生姓名 专业班级 学号 题 目 多波形函数发生器设计 课题性质 工程设计 课题来源 自拟课题 指导教师 同组姓名 主要内容 设计一个多波形函数发生器。要求: (1)选择几种不同波形分别输出。波形可选:三角波,递增斜波,递减斜波,方波,正弦波,阶梯波等。 (2)设计一个输出波形选择模块。该模块可以根据所输入的数字选择输出相应的波形。 任务要求 (1)根据设计题目要求编写相应程序代码 (2)对编写的VHDL程序代码进行编译和仿真 (3)利用实验箱完成硬件验证 (4)总结设计内容,完成课程设计说明书 参考文献 [1] 焦素敏.EDA课程设计指导书.郑州:河南工业大学,2008 [2] 刘爱荣,王振成.EDA技术与CPLD/FPGA开发应用简明教程.清华大学出版社,2007 [3] 胡机秀,卜波涛.新编数字电路与EDA技术.国防工业出版社,2008 [4] 沈明山.EDA技术及可编程器件应用实训.科学出版社,2006 [5] / 中国电子制作网 网站 1 设计任务及要求 设计一个简易的多波形发生器,此设计分为七个模块,分别为三角波产生模块,方波产生模块,递增斜波产生模块,递减斜波产生模块,阶梯波产生模块,正弦波产生模块以及输出波形选择模块。 输出波形选择模块的作用是将其用作选择开关来选择输出的波形,而其它模块即是产生不同的波形。 2设计原理及总体框图 函数发生器由波形选择开关控制波形的输出,分别能输出正弦波、方波、三角波和,递增斜波,递减斜波,阶梯波六种波形。本设计采用自顶向下的设计方法进行设计。 CLK为系统时钟,CLR,RESET为系统清零信号,SEL是波形选择数码开关,根据所选数字可输出相应的波形。 系统总体框图: 设计流程: 3 程序设计 (1)、递增斜波的设计 采用0-255循环加法计数器实现。设计思路是:reset是复位信号,tmp是引进的一个中间变量。通过赋值给输出值q。clk是时钟信号,当复位信号有效时,从“255”开始,当时钟检测到有上升沿的时候,输出就会呈现递增的趋势,加“1”。建立的默认逻辑符号如图所示。 ENTITY zeng IS PORT(CLK,RESET:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END zeng; ARCHITECTURE zeng_arc OF zeng IS BEGIN PROCESS(CLK,RESET) VARIABLE TMP:STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF RESET=0 THEN TMP: ELSIF CLKEVENT AND CLK=1 THEN IF TMP THEN TMP: ELSE TMP:=TMP+1; END IF; END IF; Q=TMP; END PROCESS; END zeng_arc; (2)、递减锯齿波的设计 采用255-0循环减法计数器实现。设计思路是:reset是复位信号,tmp是引进的一个中间变量。通过赋值给输出值q。clk是时钟信号,当复位信号有效时,从“255”开始,当时钟检测到有上升沿的时候,输出就会呈现递减的趋势,减“1”。建立的默认逻辑符号如图所示。 ENTITY jian IS PORT(CLK,RESET:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END jian; ARCHITECTURE jian_arc OF jian IS BEGIN PROCESS(CLK,RESET) VARIABLE TMP:STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF RESET=0THEN TMP: ELSIF CLKEVENT AND CLK=1THEN IF TMPHEN TMP: ELSE TMP:=TMP-1; END IF; END IF; Q=TMP; END PROCESS; END jian_arc; (3)、三角波的设计 产生的三角波以64个时钟为一个周期,三角波在一个周期内具有对称性,而且波形是线性,tmp是中间变量。其中Q[7..0]为并行输出数据;CLK为同步时钟信号;RESET为复位信号。建立的默认逻辑符号如下图所示。 ENTITY delta IS PORT(CLK,RESET:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END delta; ARCHITECTURE
显示全部
相似文档