• / 9
  • 下载费用:10 金币  

音乐计算器的设计与实现 实验报告.doc

关 键 词:
音乐计算器的设计与实现 实验报告.doc
资源描述:
EDA 实验一实验报告一、实验设计思路1、键盘输入状态机设计控制键盘输入的电路分为 5 个模块:(1)扫描信号电路其状态转换图如下:状态根据扫描频率自动跳转,在 S0~S3 状态下分别输出 0001、1000 、0100、0010 ,该电路的输出用于数码管的选通(接位选线)和键盘信号的检测(接 H) 。(2)键值信号电路该电路的功能是输出按键对应的值,按键按下时,就跳到键值相应的状态,并输出相应的值。(3)按键信号电路电路的状态转换图如下:当数字按键被按下时,状态跳转到 S1 并输出高电平,如果不长按键,等一小段时间后,状态会自动回到 S0 并输出低电平。如果长按键,那么状态会停留在 S1 处,这样就不会重复地输出按键信号了。(4)运算符号电路状态转换图如下:该电路的功能是记录运算符号,按下符号按键就跳转到相应的状态,S0 为初始状态,输出为 000,当按下数字键时,任何状态都会跳转回 S0;S1 、 S2、S3、S4 和 S5 分别为加、减、与、或和比较运算对应的状态,输出分别为 001、010、011、100、101 ;S6 为按下等号键会跳转到的状态,输出为 110。(5)控制电路该电路的功能是选择移位寄存器、得到清零信号。当第一次输出数字是,control 选通其中一个移位寄存器;当按下运算符号时,电路跳转到下一个状态,control 选通另外一个移位寄存器。清零信号在按下等号键(正常规则下)或在得到运算结果后再次输入时,将移位寄存器的数据和运算符号等清空。2、 ALU 运算逻辑ALU 完成高 8 位和低 8 位运算的状态转换图,实际上是 Process 模块的状态转换图。在设计里,ALU 只要求完成 8 位二进制数的运算,其进位、借位的处理由 Process 模块执行。状态转换图如下(Process 模块程序中的 S6、S7 是无用的状态,这里不画出):(1)状态含义及跳转条件:S0 为初始状态,按下数字键或等号键时,停留在 S0;按下运算符号键(下称符号键)时,跳转到 S1。在 S1 状态下,按下数字键或符号键时,停留在 S1,并取最后输入的运算符号;按下等号键时,跳转到 S2。在 S2 状态下,按下等号键停留在 S2,按下数字键跳转到 S1,按下符号键跳转到 S5,S5 是一个记录运算结果用的状态,在 S5 会立刻跳转到 S3。S3 和 S4的含义和跳转条件与 S1、S2 类似,是进行继续运算用的状态。当 Reset 键被按下时,状态S1~S4 都会跳转回状态 S0。(2)各状态下的数据输出:S1 状态下,输出给 ALU 模块的数是两个数(记为 A、B)的低 8 位,carry_in 根据运算符号设置,加法为 0,减法为 1。S2 状态下,输出给 ALU 模块的数是 A、B 的高 8 位,carry_in则取 S1 状态时 ALU 的 carry_out。对于状态 S3,输出给 ALU 模块的数变为记录了的运算结果的低 8 位和新键入的数的低 8 位,S4 则是两个数的高 8 位,它们的 carry_in 的设置与 S1、S2 类似。(3)ALU 的进位、借位设置:ALU 的进位、借位根据运算符号和前一步的运算结果的正负来判断,运算结果的正负用 D1记录。D1 的初值为 0,当运算结果为非负数时,D1 为 0,当运算结果为负数时,D1 为 1。设计的 ALU 模块是利用补码进行运算的。进行加法运算时,若 D1 为 0,则运算结果的进位和正负判断作通常处理;若 D1 为 1,则对前一步的运算结果取补码再运算,当新的运算结果的符号位为 1 时,carry_out 为 1,且carry_in 为 1 时,运算时将加上二进制数 11111111,这其实是向高位借位(符号位为 1,说明运算结果为负,所以要借位) 。当高 8 位运算结果的符号位为 1 时,说明运算结果为负数。进行减法运算时,若 D1 为 0,则借位、结果正负的判断与进行加法运算且 D1 为 1 的情况类似,只是 carry_out 和 carry_in 的 0、1 值调转过来。若 D1 为 1,则将补码相加后,在结果不为 0 的情况下,若符号位为 0 或者符号位为 1 但运算结果为 0 时,carry_out 为 0,其他情况 carry_out 为 1。符号位为 1、运算结果为 0 是指两个负数的低 8 位刚好加起来为-256 的情况,这个时候应该是有借位的。3、显示模块的控制逻辑显示的功能由 Process 模块和 Seg 模块共同实现。其中,Seg 模块的功能主要是将运算结果转换为十进制数,并按顺序显示该数的高位、低位。而 Process 模块的功能则是根据按键的情况选择要显示的数。Process 模块的状态转换图已给出,在 S0 状态下,显示输入的数
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:音乐计算器的设计与实现 实验报告.doc
链接地址:https://www.weizhuannet.com/p-9858376.html
微传网是一个办公文档、学习资料下载的在线文档分享平台!

微传网博客

网站资源均来自网络,如有侵权,请联系客服删除!

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开