《eda技术(第二版)教学课件作者邓力第9章》由会员分享,可在线阅读,更多相关《eda技术(第二版)教学课件作者邓力第9章(51页珍藏版)》请在金锄头文库上搜索。
1、第章 基于的简单音乐电路设计,2,. 工作任务的陈述与背景,. 完成工作任务的引导,. 相关技术基本知识与基本技能,返回,. 工作任务的陈述与背景,一、工作任务的陈述 使用层次化设计方法,设计并用实现一个能循环播放乐曲的音乐电路。 二、工作任务的背景 据有关媒体介绍,中国的第一颗人造卫星“东方红一号” 卫星,于年开始研制,年月日进入太空轨道,该星质量超过了苏、美、法、日等个国家的第一颗卫星质量的总和,在某些技术方面超过上述个国家第一颗卫星的水平,开创了中国航天史的新纪元。,下一页,返回,. 工作任务的陈述与背景,“东方红一号”,设计寿命为天,实际寿命达到天,年月日停止发送信号。关键技术包括东方
2、红乐音装置、短波天线遥测系统等项。其中电子乐音发生器是全星的核心部分,它通过短波发射系统反复向地面播送“东方红” 乐曲的前八小节,全中国人民乃至全世界的人民通过收音机都能听得到。 完成研制东方红乐音装置任务的是中国科学院自动化所的一个小组。他们首先考虑,用什么样的方法来模拟出东方红乐曲。当时有三种方案提上了台面,一种是八音盒方案,它采用机械齿轮播放音乐;另一种就是把音乐录在磁带机上,但是当时中国还没有小磁带机,都是笨重的大磁带机,不可能装上卫星升空;因此,第三种方案自然就是电子音乐,这也是后来被广泛接受的一种方案。,上一页,下一页,返回,. 工作任务的陈述与背景,根据上级要求,只需让卫星播放东
3、方红前八个小节的旋律。小组决定在内连续播放两遍这八个小节,然后发射机就切换成遥测信号,用一个发射机就可以实现交替传送乐曲和遥测信号的目的。 这是国内早期最知名、影响最大的一个音乐电路。在国内缺乏集成电路,没有微处理器的那个时代,东方红乐音装置全部用晶体管分立元件做成。有人粗略统计,整个乐音装置全部共用了多个晶体三极管(绝大多数是),大约个二极管(都是),其他都是电阻电容。,上一页,下一页,返回,. 工作任务的陈述与背景,现在,音乐电路广泛用于自动答录装置、手机铃声、集团电话及智能仪器仪表设备中。作为一个电子系统的一个模块,音乐电路的实现方法有以下几种: 购买专用音乐电路片。特点是价格低廉,多用
4、于玩具,无法更改乐曲,也无法编程。 录音重放电路,如系列录放电路。可通过麦克风人工录音,分段放音,成本稍高。 利用微处理器来实现乐曲演奏,需要占用微处理器的资源较多(要占用和定时器等),大多数情况无法采用这种方法。 以实现乐曲演奏,也就是本任务要求使用的方法。用这种方法实现音乐电路,现在单独价格较高。,上一页,下一页,返回,. 工作任务的陈述与背景,但随着集成度的提高,价格下降,设计工具更新换代,功能日益强大,操作方便实用,以及概念日益普及与流行,会使这种方案的应用领域越来越多。它的突出优点是:第一,仅占用中很少的资源,因此增加的系统整体成本较低,甚至不增加成本。这是因为某个产品选定某型号芯片
5、,产品的其他部分只用了其中一部分资源,还有相当一部分资源闲置没用;第二,更改乐曲非常方便;第三,可作为实现设计重用。,上一页,返回,. 完成工作任务的引导,一、资讯 明确任务 作为初步的开发设计,为了简化设计,本任务设计的音乐电路可只考虑音的最重要的两个方面:“音的高低”和“音的长短”,即音高和音长,忽略音的力度和音色。要求音乐电路最少能连续循环演奏一首歌曲或一首歌曲的一部分,在此基础上可再做进一步的扩展。 由于不考虑音色,考虑到充分利用的数字电路资源,可用一个可控分频电路模块产生演奏音乐所需的每个音,而各个音演奏的顺序和持续的时间即音长可根据乐谱用一个控制电路模块来控制。,下一页,返回,.
6、完成工作任务的引导,电路输入两路时钟信号:一路作为可控分频电路模块的输入时钟,经可控分频电路模块分频后,得到各种所需的乐音信号;一路作为控制电路模块的输入时钟,用来产生节拍。这两路时钟信号的频率根据具体的实验条件和所选歌曲可有所不同。 电路的输出有:一路一线是乐音信号输出,用来驱动外接喇叭或蜂鸣器演奏音乐;一路一线用来驱动外接的一个,演奏高音时发光;一路四线用来驱动外接的数码管显示演奏的音符简谱符号。,上一页,下一页,返回,. 完成工作任务的引导,查阅资料 到图书馆、互联网查找有关资料。前人发表的有关音乐电路的文章主要散见在学术期刊和有关网页上。可用乐曲演奏电路、音乐发生器等关键词查找。另外,
7、要理解这些文章所介绍的原理,还要具有音乐简谱、乐音频率的有关知识,如果缺乏,可再查找有关音乐简谱、乐音频率的知识。 本章第.节提供了一些与本任务有关的资料,请认真阅读。,上一页,下一页,返回,. 完成工作任务的引导,二、计划 音乐电路是模仿人歌唱的电路,故可用人歌唱作为原型来分析设计本任务的总体方案。人通过声带振动发出声音,声带振动频率不同,发出不同声音。故在用数字电路来模仿时,可用一个可控分频电路来产生不同频率时钟信号用来驱动外接喇叭或蜂鸣器演奏音乐。 人在歌唱时,是根据歌谱,用大脑控制声带按照一定节拍来在不同时间发出不同的乐音的。故在用数字电路来模仿时,还应该有一个控制电路模块,用来根据歌
8、谱控制可控分频电路模块按照一定节拍在不同时间发出不同的乐音。,上一页,下一页,返回,. 完成工作任务的引导,而控制电路模块应该分为两个小模块,一个用来产生节拍,称为节拍产生模块;另一个用来根据歌谱控制可控分频电路模块在不同时间发出不同的乐音,称为音符产生模块。 控制电路模块只是根据歌谱产生可供控制可控分频模块,按照一定节拍在不同时间发出不同的乐音的音符信号。具体要控制可控分频模块,还得把音符信号转换为可控分频模块的分频系数输入信号,另外,也要根据音符信号决定提供给外围数码管的用于显示简谱音符符号的数据和提供给外围的用于显示高低音的数据。这就需要另一个模块分频系数、数据产生模块了。,上一页,下一
9、页,返回,. 完成工作任务的引导,由于音乐电路是连续循环演奏,故控制电路模块的核心部分节拍产生模块应是一个计数器,每个状态持续的时间是需演奏的所有的音的音长的最小公因数,比如是一个十六分音符时值,具体时间长度应根据需演奏歌曲而定。这样,每个音持续的时间是每个状态持续的时间的整数倍,故占据整数倍个状态。具体占据状态的个数要根据每个音的音长来决定。 控制电路的计数器的模即状态数,可由需演奏歌曲的各个音所占据状态个数累加而得。例如一首用于演奏梁祝乐曲的音乐电路的控制电路的计数器的模是。,上一页,下一页,返回,. 完成工作任务的引导,节拍产生电路的计数器,用来产生节拍定时,音符产生模块则将节拍产生电路
10、的计数器的状态翻译成对应的音符,假如需演奏的歌曲中所用到的音符在个之间,则音符产生模块的输出信号应有四位,其他情况依此类推。 分频系数、数据产生模块则根据音符产生模块输出的音符信息,产生每个时刻提供给可控分频模块的分频系数、提供给外围数码管的用于显示简谱音符符号的数据和提供给外围的用于显示高低音的数据。 因此,音乐电路设计总体参考方案如图所示。,上一页,下一页,返回,. 完成工作任务的引导,其中的两个时钟频率取值,下面再做分析。 三、决策 本音乐电路设计重点在可控分频模块和控制电路模块的设计,故只讨论这两个模块以及顶层模块的设计方案的选择。 可控分频模块设计方案的选择 ()等占空比和非等占空比
11、方案选择 可控分频电路按输出时钟的占空比来分,有等占空比和非等占空比两类方案。为了得到足够功率驱动蜂鸣器,采用等占空比输出的可控分频电路方案。,上一页,下一页,返回,. 完成工作任务的引导,()偶数分频、整数分频方案的选择 常见的分频电路有偶数分频、奇数分频和整数分频电路,本任务从原理来看,既有偶数分频又有奇数分频,故应属于整数分频电路。非等占空比的偶数分频、奇数分频电路有统一的设计方法并且比较简单,但等占空比的偶数分频、奇数分频电路设计方法则不相同。对于偶数()的等占空比分频,可先做非等占空比分频,再做分频即可,比较简单。对于等占空比的奇数分频电路,则不能采用这种方法,比较复杂。,上一页,下
12、一页,返回,. 完成工作任务的引导,本任务可采取用较高频率(比如)的输入时钟,这样分频比就比较大,故对于初学者,作为初步解决方案,可采用偶数分频比近似代替奇数分频比的方法,把整数分频电路变成偶数() 分频电路,用先做非等占空比分频,再做分频这种较简单的方法来设计。作为提高,可采用比较复杂的真正的整数分频电路设计方法设计。,上一页,下一页,返回,. 完成工作任务的引导,控制电路模块设计方案的选择 控制电路模块的核心部分节拍产生模块是一个计数器,可采用通常的方法设计。音符产生模块的输入信号是节拍产生模块输出的计数值,输出信号是表示音符的音符序号。在节拍产生模块输出的计数值变化范围不大,并且音符产生
13、模块的输出数值不需灵活改变时,可用语句直接来描述音符产生模块即可;在节拍产生模块输出的计数值变化范围较大或音符产生模块的输出数值需灵活改变时,可使用来存储对应于不同计数值的音符序号。 输入设计法和原理图输入设计法的选择 本任务中,底层模块采用输入设计法较简单,而顶层模块采用输入设计法或原理图输入设计法都可以。,上一页,下一页,返回,. 完成工作任务的引导,四、实施 下面以用于演奏梁祝乐曲的音乐电路为例,对音乐电路各模块的实施进行进一步的分析。 (一)控制电路模块 控制电路模块包含节拍产生模块和音符产生模块两子模块,可合写成一个文件。 节拍产生模块设计分析 根据以上分析,此模块为一计数器,现在需
14、进一步决定计数器的模及其输入时钟频率。,上一页,下一页,返回,. 完成工作任务的引导,根据乐曲梁祝的简谱,此乐曲以四分音符为一拍,四拍为一节,所有的音的音长的最小公因数是一个十六分音符时值,所以以十六分音符时值作为一个状态持续时间,把乐曲梁祝中各个音所占据状态个数累加而得知节拍产生模块计数器的模是,其中最后休止符用了三个时间单位。 乐曲梁祝的简谱没有明确标出演奏速度,根据经验设定演奏拍,因此,一拍持续时间即四分音符的时值为,一个状态持续时间即一个十六分音符时值为.。故节拍产生模块输入时钟周期为.,频率为。,上一页,下一页,返回,. 完成工作任务的引导,音符产生模块设计分析 音符产生模块的功能是
15、将节拍产生电路的计数器的计数值按照乐曲梁祝的简谱翻译成对应的音符。若用表示计数器的状态,表示音符符号,可按表规定乐曲梁祝的简谱出现的音。 那么,根据乐曲梁祝的简谱可得其真值表,见表。,上一页,下一页,返回,. 完成工作任务的引导,设计文件实体描述 两模块可合起来写成一个文件,其实体描述如下: ; ; ( :; :() ); ;,上一页,下一页,返回,. 完成工作任务的引导,其中输入时钟信号与相连,表示音符信息。因为取值为,故为位二进制信号。其结构体设计可参考例. 。 (二)分频系数、数据产生模块 设计文件实体描述 此模块的功能是产生提供给可控分频模块的分频系数、提供给外围数码管和外围的数据。,上一页,下一页,返回,. 完成工作任务的引导,其