“数字逻辑与数字系统”教学研究
2013-11-30李超张静
李 超 张 静
(烟台大学 文经学院电子信息与计算机科学系,山东 烟台264005)
0 前言
“数字逻辑与数字系统”课程是计算机科学与技术专业及相关专业的基础核心课程[1],教育部在各类相关的教学大纲中均规定为必开课程。它是计算机科学与技术专业的硬件知识基础,为计算机组成原理、计算机体系结构、单片机、嵌入式等后续课做基石。本课程不仅要学理论,又要动手做实验,还有课程设计,各环节要环环相扣。本文只讨论理论授课方面。
在理论授课方面首要问题就是教材的选择,结合学院办学定位、专业要求及学生的层次等诸多方面,挑选一本恰当的教材,具有事半功倍的效果。我院选定的是自编教材——沙丽杰主编中国电力出版社出版的《数字逻辑与数字系统》。教材选定后剩下的说道一下教的艺术。
1 注重学生逻辑思维的培养
数字电路与模拟电路最大的不同在于输入输出之间不是普通的函数关系,而是逻辑因果关系。数字电路中多采用二进制‘0’和‘1’来描述信息,“0”和“1”表示的是逻辑“真”和“假”,或事物的两个不同的状态,它没有“数”的多和少的概念。例如电子开关中的“导通”和“关断”,灯的“亮”和“灭”都分别用逻辑“1”和逻辑“0”表示。当事物存在多于两种状态时就需用多位逻辑量表示,如十字路口交通灯的四种常见状态:①主通道绿灯亮,支通道红灯亮;②主通道黄灯亮,支通道红灯亮;③主通道红灯亮,支通道绿灯亮;④主通道红灯亮,支通道黄灯亮。可以用两位逻辑量表示:①00;②01;③10;④11。这里的两位逻辑量就是状态的代码/编码,这和国共时期打入敌人内部的人员代号“不死鸟”、“飞鹰”、“007”等是一个作用。“不死鸟”和“飞鹰”是文字代码或字符代码,“007”是数字代码或数字编码,在现实生活中人们熟悉的是十进制代码,而数字电路中用的最多的是二进制代码。所以要想将一个现实问题转化为数字逻辑问题,首要的一件事就是将实际问题用二进制逻辑代码表示,再根据输入输出间的因果关系列出其满足的逻辑运算表达式。注重学生逻辑思维的培养是提高学生自行设计数字逻辑电路的基础。
2 用口诀简化记忆
在本课的教学过程中会遇到许多需要记忆的逻辑代数公式和表(如触发器的激励表),学生常常要为记忆这些东西而发愁。而用口诀记忆帮助学生记忆是一个效果显著的做法。如根据真值表可得出“与”运算的规律为“有0得0,无0得 1”,“或”运算的规律是“有 1得 1,无 1得 0”;对 JK 触发器的功能表如表1。
表1 JK触发器功能表
J可看做“置1端”,高有效,K可看做“置0端”高有效,功能表第一行JK=00,表示输入端无有效输入,触发器状态不变,即保持的功能;功能表第二行JK=01,表置0端有效置1端无效,触发器次态变为0状态,即置0的功能;功能表第三行JK=10,表置0端无效置1端有效,触发器次态变为1状态,即置1的功能;功能表第四行JK=11,表置0端有效且置1端亦有效,此时,触发器的次态既不是确定的0状态也不是确定的1状态,而是由原来的状态决定,变为原来状态的反状态,即为翻转的功能。上述也可用“一山容不得二虎”来调侃,加深学生的印象。通过这么一解释相信学生会很容易记住JK触发器的功能表,而JK触发器的特征方程和状态图、波形图等都可由功能表推出故无需逐一记忆。
这种“寓教于乐”的教学方法可使学生产生兴趣,同时也可激发和鼓励他们对一些公式、定理等编造适合自己习惯的口诀来帮助记忆。实践证明,“寓教于乐”可使学生学起来感到轻松愉悦,受益匪浅。
3 在讲授综合知识的应用时,更要注重启发式教学法[2]的运用
教材中一些综合知识的应用是难点,在讲解难点时,要层层剖析、提示,让学生在已有知识的基础上想到解决问题的办法或思路,讲完后要让学生有一种运用所学知识解决问题后的喜悦,并让其渐渐养成碰到问题后不退缩独立地主动地分析问题的意识。
例如,触发器这一知识块的讲解,先讲最简单的基本SR触发器,这一部分一定要讲清楚讲明白,再在此基础上讲解D触发器、JK触发器等!具体分析如下,先让学生观察两个与非门组成的基本SR触发器的电路结构,并回答其与组合逻辑电路的不同之处,再在教师的引导下利用已学过的与、或、非基本逻辑运算分析并让学生回答SR触发器在不同输入下的输出,最后由教师对SR触发器的功能进行总结并用功能表、卡诺图、特征方程、状态图等进行逻辑描述。只要学生掌握了基本SR触发器的分析方法,那么此后的钟控SR触发器、D触发器、JK触发器等便不成问题。如钟控SR触发器、钟控D触发器,同样,先让学生观察其电路结构,之后让其回答电路中哪些部分是熟悉的已学过的,哪些是新加的,如何利用已学过的内容简化分析新知识,并在此基础上进一步探究结构的不同带来的功能的不同,以及与SR触发器相比它们的优点。
再如,利用集成器件实现逻辑函数这一部分。在对组合逻辑电路和时序逻辑电路的设计中,全是采用真值表或状态表来推导出相应逻辑表达式,化简,并根据化简后的逻辑表达式绘制出由基本逻辑单元(与门、或门、与非门、触发器等)实现的电路图。而利用集成器件的设计是在已有集成电路功能的基础上,外加一些门电路实现所需功能。在学生习惯了利用一般方法从无到有地实现组合逻辑电路或时序逻辑电路时,转而利用中规模集成器件进行设计对他们来说在一段时间内是一个不小的挑战,且设计时灵活多变,有时需要靠经验来实现,这就更增加了这部分的学习难度。那么如何化解这一难点呢,本人做法如下,首先讲清楚利用集成器件实现设计的特点:集成器件的功能不可变,我们对它只可利用不可改变,我们可以改变的只是其外围电路的设计。之后,由简入繁地利用大量例题来形象化这一设计过程。如先利用全加器实现多位二进制加法器,再利用集成加法器74LS283实现将8421BCD转换成余3码的电路,最后利用74LS283实现一个1位的8421BCD码的十进制加法器,要求输入和输出均是BCD码。
下面以使用四位二进制比较器74LS85和必要的门电路设计输血指示器[3]为例描述讲解过程。输血配对图如图1所示,用AB表示供血者代码,CD表示受血者代码,代码设定见表1,用F表示输出函数,并用F=1表示可输血,用F=0表示不可输血。则根据:
图1 输血配对图
表2 血型代码表
图1得真值表如表3。
表3 输血指示器真值表
由真值表得卡诺图如图2。
图2 输血指示器卡诺图
由卡诺图知,令输出为1的输入组合可归纳为三种情况:①AB=00;②AB=CD;③CD=10。
图3 输血指示器实现电路
在本例中,要利用到74LS85就必须想到通过变量间的比较来描述可输血的的某种情况。集成器件74LS85的功能是固定的,咱们只能将可输血的情况向它靠拢,由它实现,而不是改变74LS85的结构或功能来实现输血指示器。
4 结语
教学方法直接影响到学生的学习方法,在教学过程中引导学生掌握正确的学习方法,培养它们的自学和主动自学的能力,授之以鱼不如授之以渔,本人觉得这才是是教学中的重中之重。
[1]朱怀宏.“数字逻辑与数字系统”课程教学理念[J].计算机教育,2006(10):83-85.
[2]韩天荣.“数字逻辑与数字系统”实践教学改革初探[J].集宁师专学报,2010,32(4):8-10.
[3]沙丽杰,万珊珊,王玲玲,等.数字逻辑与数字系统[M].北京:中国电力出版社,2011:60-62.