“计算机系统结构”课程改革与探索
2009-06-20王华徐洁王雁东吴晓华
王 华 徐 洁 王雁东 吴晓华
文章编号:1672-5913(2009)10-0015-03
摘要:本文主要介绍了我院在“计算机系统结构”课程的教学实践中进行的改革措施,在分析了国内外高校在该门课程的教学模式的基础上,引入先进的教学理念,改革了教学模式中的教学方法、教学内容等多个方面。实践证明,该模式的改革取得了预期的良好效果,提高了学生的学习兴趣,增加了学生的知识宽度和深度。
关键词:计算机系统结构;教学模式;教学改革
中图分类号:G642
文献标识码:A
1引言
众所周知,“计算机系统结构”(Computer Architecture)历来是高校计算机科学与技术专业必修的主干专业基础课程之一。通过对“计算机系统结构”课程的学习,学生可以了解计算机系统的内部工作原理以及在软硬界面划分的权衡策略,从而建立起计算机软硬件整机的概念。由于该课程教学内容覆盖了“计算机组成原理”、“编译系统”、“操作系统”、“数据结构”、“数字逻辑”等计算机专业的重要课程,因此,国内外著名高校对这门课程都非常重视。
为了使学生能够真正将课本上的理论知识与实际的计算机系统结构融会贯通,我们在该课程的教学模式上进行了一系列的改革和尝试。在此过程中,我们学习和借鉴了国内外著名高校的有效经验,在教学内容、教学方法等多个方面进行了调整,取得了良好的预期效果。
2引进国内外先进教学经验
2.1教学内容及时更新
教学内容的及时有效更新主要体现在国外著名高校的教学当中。美国的麻省理工学院MIT(Massachusetts Institute of Technology),卡内基-梅隆大学CMU(Carnegie Mellon University),伊利诺伊大学厄巴纳香槟分校UIUC(University of Illinois - Urbana-Champaign),斯坦福大学(Stanford University)等著名大学每年都采用一本最新的最权威的教材,如David A. Patterson等人编写的《Computer Architecture::A Quantitative Approach》等。教材的更新并非做秀,他们在选择更新教材的同时,同样注重课程内容的更新。他们每年更新的内容约占总的教学内容的15%~20%。而这些更新的内容并非完全由学生进行课后消化,而是尽可能在课堂教学时抽出一定的比例进行讲解和介绍,并尽可能进行实物讲解或者模拟教学,从而加深了学生的理解,并提高了学生的学习兴趣。
我们目前在教学内容的更新上比起国外著名高校还有一定的距离,总的来看,国内的大学在“计算机系统结构”的教学方面,教材的更新和课程内容的更新普遍存在着“理论脱离实际”的状况,主要原因在于新技术的发展速度与课程讲授知识更新频度的不一致、不统一。而从教材本身的更新速度来看,目前我们国内是无法与国外相提并论的,因为在计算机系统结构领域的研究上,我们国家的发展远不如国外发展迅速,很多含有最新或者较新技术的教材或者教参还不能及时引入国内,而这正是制约我们培养该领域技术革新人才的重大瓶颈。为了尽量减少这方面的影响,我们课题组提出了争取教材每年更新、保证教参年年更新的要求,尽量缩小课堂教学与实际发展之间的差距,实际上,教材教参的更新对于课程组的授课教师们提出了更高的专业要求,所谓教学相长道理就在于此。
2.2课堂教学+自我调研的教学方法的运用
在教学方法上,我们借鉴了国内外一些著名高校的有效经验,总的来说可以归结为课堂教学+自我调研相结合的教学方法。
在课堂教学中,我们主要解决基本的概念和理论。比如:通过学习了解精简指令系统计算机(RISC)和复杂指令系统计算机(CISC)的体系结构特点和区别;掌握RISC处理器的设计原则和指令系统特征等等。而在自我调研的阶段,要求在老师的引导下,学生通过互联网自行搜集和整理当前在某个子领域最新的发展动向和最新产品的性能情况,并根据所学理论,进行横向和纵向的比较并得出自己的结论。最后形成一篇调研论文,并以平时成绩或者是考试成绩的一部分的形式进行考核。
通过这种方式的学习,一方面锻炼了学生自己动手查找最新科技资料的能力,另一方面也弥补了课堂教学在内容上的不足,同时还能增强学生对知识点的深入理解,提高学生的学习兴趣,可谓一举多得。而老师也通过该课程的教学网站将自己的调研所得与学生进行分享,学生的学习不仅仅局限于课堂,知识的获取途径增加了,知识的宽度和深度也增加了,学习质量和效果也就提高了。实践证明,这样的教学形式完全可行并且十分高效。
2.3加强实践教学环节的力度
说到实践教学,由于“计算机系统结构”课程具有抽象性、理论综合性、概念性等固有特点,国内在该课程的实践教学环节一直比较薄弱,很多高校甚至没有开设相应的实践课程,仅仅将学习停留在理论的阶段,学生的理解能力受到了限制,学生的动手能力也没有得到加强,这也是前述问题所产生的一个直接结果。为了再次避免出现这样的问题,我们课题组开发了相应的软件仿真实验和硬件设计实验,其内容涵盖了“计算机系统结构”软硬界面的主要知识点。目前,我们的实践环节主要还处于基础实验的层次,实验的内容和难度都与教学中多涉及的基础理论和基本设计方法紧密挂钩,与国外高校相比还缺少一系列系统性强、综合性强的大型实验项目,这对于培养高水平的软硬设计人才是极为不利的。因此,我们在该课程教学改革的过程中,着重就开出大型实验项目方面开展了大量的工作,专门成立了实践教学指导小组,将科研项目转化成为实验项目,以及从电子设计竞赛项目中挖掘出新的实验项目等,多形式多渠道地进行了一系列的实验改革。目前,我们正着重在计算机模拟和性能评测、系统芯片(System-on-a-Chip)设计等方向开发一些大型实践项目(Project),由于该类实验难度较大,受实验时间和实验环境、器材等一些客观条件的限制,到目前为止,该类实验刚刚进入尝试阶段,将以课程设计的方式向一些有较强动手能力和对该领域有很强兴趣的学生开放。
我们不仅在实验内容上进行重新设计,在实验时间上也做出了相应的调整。为了提高学生的动手能力,我们在不降低课堂教学学时数的前提下,增加了实验环节的学时数,并且开始尝试开放式实验室的运行模式,实验室最大化地得到有效利用。我们还吸收优秀学生参与到新实验的开发中来,使学生真正能通过实验得到认知的升华。
3理清教学思路,明确学生学习重点
由于“计算机系统结构”课程内容随着计算机软硬件技术的发展而不断更新,加之这门课程的系统性,综合性和实践性较强,给这门课程的教学和学习带来了一定的困难,学生很难将所学到的知识综合应用到具体的实际问题中去,因此,理清教学思路,明确学生学习重点是提高该门课程教学质量的前提。
一直以来,“计算机系统结构”在内容上与“计算机组成原理”、“微机原理与接口技术”等课程有一定的重叠,当然,三者都属于与硬件相关的计算机专业课程,之间有着很强的逻辑联系,但是我们应该仔细区分三者在在知识结构和专业层次上的不同,把握好教学的重点,使学生真正从整机的层次上把握系统的构建和各个部分的设计方法和原则。
我们都知道,“计算机组成原理”更多的是偏向硬件的整机,它系统地讲解了计算机的五大硬件组成部分的基本概念、基本组成和基本功能,为培养学生对硬件系统的分析、设计、开发和使用能力打下基础。其前驱课程是数字逻辑、离散数学等。“计算机系统结构”和“微机原理与接口技术”是其后续课程。
而“微机原理与接口技术”是在学生对计算机组成等基础知识有了初步了解后,针对广泛应用的微型机软硬件系统知识和技术进行的更深入和系统的学习。通过该课程的学习,使学生对计算机软硬件知识的掌握达到系统级专业水平,并为后继的计算机应用课程(如计算机网络、计算机通信、计算机控制、计算机图形学、多媒体技术等)的学习打下坚实的基础。因此,该课程在计算机专业学科中起着承上启下的作用。
总体上看,三门课程在教学层次上如图1所示。
其中,“计算机系统结构”课程跨越了软件和硬件两个层次。而“计算机组成原理”和“微机原理与接口技术”主要讲解硬件相关的设计和功能原理。美国普渡大学(Purdue University)计算机科学系资深教授科默(Douglas E. Comer)博士就曾经在他的著作当中指出了“计算机系统结构”课程是如何统一计算机软硬件知识的:在许多计算机科学(Computer Science)的教学计划中,“计算机系统结构”是惟一一门能让学生接触到与编程相关的计算机结构方面的基本概念的课程。实际上,懂得硬件可以把程序构造得更加高效、更少出错。从广义上讲,有了“计算机系统结构”方面的知识,程序员就能理解程序设计中不同选择和取舍所带来的影响,有助于提高程序的效率;另一方面,知道硬件工作原理,还可以改善编程的过程,因为这使得程序员能够更迅速地查明故障来源。
由于上述课程在内容上有一定的相似,近年来很多高校都提出了要将“计算机组成原理”与“计算机系统结构”课程在内容上进行整合,甚至有些高校在制定培养计划时,没有单独区分两门课程,而是进行“二合一”,直接开设了“计算机组成和体系结构”的课程。我们坚持认为,计算机系统结构课程在知识层次上高于计算机组成原理,并且两门课程本质核心有着截然的不同,因此,我们坚持独立设课,以使学生从硬件和软件的不同层次深入了解计算机系统的工作。当然,尽量减少之间重叠的部分是提高课时含金量的必要途径。上述三门课程在教学内容上的知识重叠如表1所示。
表1三门课程内容重叠一览表
改革后的课程主要内容及其培养目标如表2所示。
4结束语
围绕“计算机系统结构”所进行的一系列改革经过近两年的实践取得了很好的预期效果,学生不仅明晰了各门课程之间的关系,而且对于计算机系统结构的发展也表现出了浓厚的兴趣。在实验环节,学生能够很快进入角色,掌握实验的主要目的和有针对性地进行课前预习和准备工作,极大提高了实验的效果。
随着计算机系统结构的不断发展,随着社会对于熟悉计算机软硬双重技术人才需求量的不断扩大,掌握计算机系统结构的基本原理、组成方式、关键技术和设计方法等方面的知识对于学生就业和深造等都具有越来越重要的现实意义。我们现阶段面临的主要问题还有很多,比如如何保证教学内容的先进性、如何设计综合性和趣味性相结合的大中型实验等,这些都需要我们不断地在教学实践中进行探索和尝试。
参考文献:
[1] 吴晓华,徐洁,王雁东,等.《计算机系统结构》课程教学探讨[J]. 实验科学与技术,2006(6).
[2] 王华,傅彦,崔金钟.《微机原理与接口》实验教学改革的实践[J]. 实验科学与技术,2007(1).
[3] 科默(美). 计算机系统结构精髓[M]. 方存正,译. 北京:清华大学出版社,2006.
[4] 王新忠,熊书兴. 论计算机系统结构、组成及实现之间的内在关系[J]. 科技广场,2007(11).
[5] 童小念,何秉娇,舒万能.“计算机系统结构”实践教学环节的研究与实施[J]. 学科建设与教学研究,2008(3).
Research about the Teaching Mode Reform of Computer Architecture Course
WANG Hua, XU Jie, WANG Yan-dong, WU Xiao-hua
(Computer Science and Engineering College,University of Electronics Science and Technology of China,Chengdu 610054,China)
Abstract: In this paper, we described mainly about some reform measures on Computer Architecture course in Computer Science and Engineering College, UESTC. After we analyzed the teaching modes about the same course of some other colleges in some domestic and overseas famous universities, some advanced ideals have been adopted in our teaching reform. The new teaching methods, the new teaching contents and so on have been used for a period of time and consequently we get a good result. Not only the students interests in the course have been inspired, but also the width and the depth of their knowledge in this field have been enlarged.
Key words: Computer Architecture; teaching mode; teaching reform