《数电课程设计报告-万年历(共15页).doc》由会员分享,可在线阅读,更多相关《数电课程设计报告-万年历(共15页).doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上北京工商大学数字电子技术基础课程设计报告学 院: 计算机与信息工程学院 专 业: 信实 学 生 姓 名: 薛子朦 学 号: 课程设计题目: 1.具有运算及存储功能的计算机 2.数字万年历 设 计 时 间: 2012/12.23至2012/12.26 题目要求:一.运算存储计算机自行设计指令,实现两个数字相加或相减的运算,指令得到译码后控制存储器的相关元件,使数据输入目的地并用代码存在存储器里,用0、1字符串来表示;最后运算的结果要有所表示;可参考冯诺依曼计算机体系结构。二.数字万年历实现万年历数字显示功能,能显示准确的年(平年闰年)、月(大小月)、星期、日、小时、分钟
2、、秒,并能实现上闹钟功能。一、设计目的1、掌握不同集成芯片的逻辑功能及使用方法2、掌握加法器、存储器的工作原理3、掌握数字电子钟及万年历的组成及工作原理4、数字电子钟及万年历的设计与制作5、熟悉multisim电子电路设计及仿真软件的应用6、灵活运用课本知识解决实际问题7、锻炼主动思考的思维方式二、设计思路-运算、存储计算机1.74LS283超前进位并行加法器的串接可以计算八位二进制数的加法运算2将输出的八位二进制数转换成三位十进制数,通过数码管显示3.通过8421BCD码编码器,将十进制数转化成四位二进制数4.选择74LS283超前进位并行加法器的组合形成8421BCD码加法器5.编码器与7
3、4LS283加法器相接,通过 8421BCD码加法器串接可以计算三位十进制数的加法运算,输出结果通过数码管显示设计思路-数字万年历 1、设计60进制秒计数器,用来实现秒-分及分-时的计数功能2、设计24进制时计数器,用来实现时-日的计数功能3、设计31、30、29、28制天计数器,用来实现不同月份的月计数功能4、设计12机制月计数器,用来实现月-年计数功能5、设计7进制周计数器,用来实现日-周计数功能6、设计闰年平年不同月份不同进制逻辑电路7、设计调整时间电路8、整合所有电路并根据演示需要增加控制开关三、系统综述(运算、存储计算机)控制电路是总体电路的枢纽,是控制电路开启和关闭的部分。电路的控
4、制可以采用多种方式,诸如开关、脉冲等。本次设计主要侧重于三位十进制数(000到255)的输入,于是就要通过一个双掷开关来实现高低电平的输入,双掷开关的另外两头一个接高电平5伏电压,一个接地,通过开关的开和关来实现1和0的输入,这样就实现了电路的控制。本次设计一共用到54个双掷开关,其型号为SPDT。开关从下往上、从左往右依次来表示二进制数1到9的输入,其中开关都断开表示0的输入。在如图所示的部分开关电路中,J1到J9别表示1到9,实现了0到9的输入。编码电路是总体电路的第二部分,其主要作用是实现十进制数到二进制数的转换,本次设计中要用到的是10线-4线优先编码器74LS147,通过输入一个十进
5、制数转换到了四位二进制数,由于74LS147的输入和输出都是低电平有效,因此输出的是四位十进制数的反码,而后面要进行计算,则此时必须将输出的四个数接到非门,然后输出,这次设计中用到的非门为74LS05,可以实现反码的转换。加法电路是总电路的第三部分,也是总电路的中心环节, 74LS283是中规模四位二进制超前进位加法器,它实现的是四位二进制数的相加,但是题目中要设计的是12位BCD码的相加,这样就需要用到3个加法器。BCD码是用4位二进制数表示1位十进制数,4位二进制数内部为二进制,BCD码之间是十进制,即逢10进1。采用判“9”电路,当和数大于9时,8421BCD码即产生进位,而此时十六进制
6、则不一定产生进位,因此需要对二进制数进行修正,即加上6(0110),让其产生一个进位,当和数小于9时,则不需要修正。将大于9的最小项列在卡诺图里,同时,还要考虑到,若相加产生进位,则同样出现大于9的结果,综合考虑,可得卡诺图为: S1S0 00 01 11 10 S3S2 1 1 1 1 1 1 00 01 11 10 通过上述的卡诺图,可得到修正和数的条件为L=C3+S3S2+S3S1,于是可通过一个非门(74LS05)、三个与非门(74LS00和74LS10)和两个加法器来74LS283来构建成一个新的加法器,这个新的加法器就可以实现一位8421BCD码的加法计算。本次设计中,要进行运算的
7、是十二位字码的相加,需要将三个这样的新加法器串联在一起,于是,将与非门出来的线与加法器向高位的进位端出来的线共同接到一个或门(74LS32)的两个入线端,然后将出线端接到下一个新加法器的低位进位输入端,这样就完成了8421BCD码的计算。译码电路是总体电路的第四部分,作用在于将加法器输出得到的十二位数通过译码器再转换为三位十进制数。输出电路是总电路的最后一部分,它的作用是显示最后的计算结果。当BCD码是0000时,显示0;当BCD码是0001时,显示1;当BCD码是0010时,显示2;当BCD码是0011时,显示3;当BCD码是0100时,显示4;当BCD码是0101时,显示5;当BCD码是0
8、110时,显示6;当BCD码是0111时,显示7;当BCD码是1000时,显示8;当BCD码是1010时,显示9。上述关系即为最后显示电路的实现关系。系统框图:个位(十位、百位)部分相加的真值表加数被加数和00000000000000010000000100010001001000100001001100100010010000110010010100110011011001000011011101000100100001010100100101010101100000110010110001011001101001001110110100110111011110100100001111010
9、1100010001011010011000101111001100111000显示部分: 自行设计指令:15+1=16,显示结果如下经编码、译码后存入计算机编码部分三、设计过程(万年历)1、60进制计数器设计图:两个芯片之间采用串行进位方式,接成60进制计数器。2、二十四进制计数器3、天计数器及周计数器备注:该部分单独可以实现,但是总电路图中没有连出。4、闰年平年各月份不同进制逻辑控制电路设计通过二与门,三与门,将28日,29日,30日,31日的特征信号输出;特征信号引入数据选择器,由地址信号进行选择,然后接回控制日期的160芯片。数据选择器的A、B信号由“月”的特征信号及”闰年”的特征信号
10、,通过逻辑电路给出,通过不同信号选择不通进制。如下:AB进制0028012910301131而闰年信号通过再加一个四进制计数器,平年输出信号为0,闰年输出信号为1,另其与月份信号够成选择信号,实现各进制的转换。对于大小月,首先列出真值表十位个位月份大小月Q3Q2Q1Q0Q3Q2Q1Q00000000113100000010200000011331000001004300000010153100000110630000001117310000100083100001001930000100001031000100011131000100101230数字万年历总设计图分解:(年、月部分)分解:(针
11、对年、月的选择判断)分解:(分、秒、时)四总结在具体设计的过程中出现了许多难题。我不断提出新的问题,然后去论证、推翻,再接着提出新的问题。在这个循环往复的过程中,从宏观到微观上都对电路电子设计有了初步的概念与认知。由于长时间生病我没有对出现的问题实施解决方案,比如说定时闹钟方案的实施以及为了图省事把万年历变成10年历;生病和时间紧不应该成为借口,如果基础知识扎实的话要做出来结果不成问题。Multisim软件是可以将一个系统分为好几个子模块的,而且连线之间也可以规则化;这一点在即将完成时才知道,导致我之前做的所有“不规则”图形都要被推翻,我试着改变设计图,最终还是没能够在验收的时候全部改完;这也是当初考虑问题不周到、对系统不熟悉就急于上手导致的闹剧。两个系统的原理还是比较清晰的;我在仿真的过程中遇到最大的困难就是对于芯片本身的了解没有做足功课,比如在使用74LS160和74LS161两种芯片的时候,基于印象而没有查找资料,于是出久久调试不出来、最后才想到总之本次课程设计任务使我了解到自己知识上的漏洞并且掌握了教训,行动之前的思考和准备功课非常重要。专心-专注-专业
限制150内