《数字逻辑系统设计》设计报告格式new

《数字逻辑系统设计》设计报告格式new

ID:18592632

大小:326.50 KB

页数:14页

时间:2018-09-19

《数字逻辑系统设计》设计报告格式new_第1页
《数字逻辑系统设计》设计报告格式new_第2页
《数字逻辑系统设计》设计报告格式new_第3页
《数字逻辑系统设计》设计报告格式new_第4页
《数字逻辑系统设计》设计报告格式new_第5页
资源描述:

《《数字逻辑系统设计》设计报告格式new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、JIUJIANGUNIVERSITY数字逻辑系统课程设计报告设计课题:简易电子琴专业:电子信息工程班级学号: 20   学生姓名:陈长源指导教师:盛健12设计时间:2012.12.24~2012.12.28简易电子琴1.设计任务与要求1.1通过对一个简易的八音符电子琴的设计,进一步加深对计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤1.2设计简易的八音符电子琴,它可通过按键输入来控制音响。1.3演奏时可以选择是手动演奏(由键盘输入)还是自动演奏已存入的乐曲。1.4能够自动演奏多首乐曲,且每首乐曲可重复演奏2.方案设计及

2、主要技术思路2.1方案一、本设计可有两种方案实现,他们的程序一样,但是所利用逻辑元件不同,其一是将产生的32M频率模块,自动

3、手动控制模块,音节产生模块,分频模块依次连接。2.2方案二、利用顶层设计将各个程序整合,再生成相应的图形文件,利用这个图形元件再接上外围即可实现功能。2.3优劣分析及方案选定方案一层次分明,逻辑元件连接清晰,易于理解。反观方案二,虽然结构简单,但是不易理解。2.4采用的硬件平台及主要技术2.4.1EDA技术是以计算机为工具,根据硬件描述语言HDL(HardwareDescriptionlanguage)完成的设计文件,自动地完成逻辑编译、化简、分

4、割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。2.4.212VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计

5、的基本点。3.模块设计过程及仿真3.1A模块的设计本设计主要分为四个模块,分别为32M频率产生模块,手动

6、自动模块,音节产生模块,分频模块3.1.1A模块要实现的具体功能,引脚。32M频率产生模块的功能是要将100M频率变为32M,手动

7、自动模块是实现自动控制或手动控制,音调发生模块的作用是产生音阶的分频预置值,数控分频模块是对时基脉冲进行分频,得到与1、2、3、4、5、6、7七个音符相对应的频率。3.1.2A模块的设计思路和设计方法及关键设计语句说明。音乐有两个重要因素,一个是音节,一个是音调。简单来说就是低音还是高音,每个音持续多久,即为频率。本设计主要就是依据这个

8、思路来实现的,设计方法采用的是自顶而下的设计方法。关键设计语句在后面的具体程序有详细描述。3.1.3A模块的设计过程中遇到的问题及解决方法本设计遇到的主要问题是如何产生32M的频率,由于程序要求的是32M,然而开发板上并没有32M的信号。开发板上有48M和100M的,在分析计算后,发现用100M产生32M结果更精确。3.1.4A模块实现的具体功能、仿真分析、模块符号图。12(3)数控分频模块(2)音调发生模块的仿真121.自动手动模块符号图3.1.5A模块代码见附录,代码必须有注释。自动手动控制libraryIEEE;useIEEE.STD_LOGIC_1164.ALL

9、;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;entityautomusicisPort(clk,Auto:instd_logic;--系统时钟;键盘输入/自动演奏index2:instd_logic_vector(7downto0);--键盘输入信号index0:outstd_logic_vector(7downto0));--音符信号输出endautomusic;architectureBehavioralofautomusicissignalcount0:integerrange0to31;

10、--changesignalclk2:std_logic;beginpulse0:process(clk,Aut0)--此进程完成对系统时钟8M的分频,得到4Hz的信号clk212variablecount:integerrange0to8000000;beginifAuto='1'thencount:=0;clk2<='0';elsifclk'eventandclk='1'thencount:=count+1;ifcount=4000000(4)thenclk2<='1';elsifcount=8000000(8)thenclk2<='

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。