计算机组成原理课程实验教学的调查与研究

时间:2022-03-19 04:50:11

计算机组成原理课程实验教学的调查与研究

摘要:针对国内计算机组成原理课程实验教学落后的实际情况,在分析多个高校实验教学的基础上,结合清华大学多年实验教学经验,从课程设置、实验设置和实验管理及评价几个方面,阐述课程实验教学现状,指出使用可编程芯片进行计算机原型系统设计实验已经成为大势所趋。

关键词:计算机组成原理;实验教学;可编程器件;实验评价

计算机组成原理课程是计算机学科的一门专业基础课,主要内容包括计算机构成及其各个部分如何协调工作[1]。在整个计算机专业课程体系中,计算机组成原理是起着承上启下的作用[2-3],它以数字逻辑课程为基础,而自身又是计算机系统结构、编译原理、操作系统等课程的基础。同时计算机组成原理又是一门与实践结合很紧密的课程,课程实验一直是教学中的一个重点,各高校也很重视,在实验上投入了大量的精力。

2009年11月在南京召开了“计算机组成与结构课程群”的实验教学研讨会,会上讨论了国内实验教学的进展和不足,本文立足于此次会议,结合各校的实验教学环节,以计算机组成原理课程为例,对实验教学进行研究。

1课程设置

目前,国内大多数高校都将计算机组成原理作为第一门专业课程安排在数字逻辑课之后,主要内容包括:计算机系统的基本概念、指令系统、处理器组成(运算器、控制器等)、存储系统、输入输出系统、流水线技术等[1,4]。组成原理一般会安排在大二下学期甚至大三上学期,这样就不可避免地造成与其他专业课程同时开课,使得学生在没有掌握计算机组成之前就开始更高层次的专业课学习,这样无法体现计算机组成原理的专业基础课作用。

为了解决这些问题,一些学校在课程设置上学习了国外大学的做法,开设了一门计算机入门性质的课程,如清华大学和中国科技大学开设了计算机系统导论课程,课程系统地介绍了计算机专业的一些入门知识:最底层的器件逻辑门电路微结构指令集结构程序算法问题域。这样,学生对计算机有了概括性的基础知识,这样就可以避免课程安排的问题了,同时,教师在计算机组成原理课上就可以更加深入地介绍计算机的组成和工作原理了。

各校一般都在计算机组成原理课程中安排试验[4-5],课程的总课时中有专门的实验课时,让学生在学习理论课的同时完成实验,这样做的好处是让学生能够将理论学习和实验操作同时进行,加深对知识的理解,但是由于进度安排的问题,综合性的大实验(如处理器设计)只能被安排在学期后段,学生需要短时间内投入大量精力才能完成。对于一些无法单独在组成原理课程中实现的更大规模的课程设计型实验,需要学生掌握系统结构、编译原理、操作系统等课程的知识,也需要更多的实验课时,为此,一些学校开设了专门的计算机综合实践课程,如东南大学的计算机系统综合课程设计、中国科技大学的计算机系统原型设计等,这些课程综合了计算机学科多方面的知识,以计算机组成原理为实验基础,进一步拓展了实验的领域。

中国科技大学华夏班在课程设置上参考了国外大学的一些方案,面向计算机系统结构学科发展前沿,强调前瞻性、先进性和实践性,探索出了计算机组成课程群课程设置(见表1)的新方向。

从课程设置中我们可以看出实验在总课时和总学分中所占的比重很大,几乎占到了二分之一,并且计算机系统原型设计是一门实验课程,分为A和B两个部分,A为CPU设计,B为系统软件设计,二者结合起来就是一个完整的计算机系统原型。清华大学在课程设置上也与其类似,只是没有专门的实验课程,内容也简化很多,主要着重于计算机组成原理的相关内容。

2实验设置

目前国内的计算机组成原理课程实验都已经逐

渐向处理器设计这一方向靠拢,差别只在于实验的方式和难度。表2是参加此次会议的几个学校课程实验设置情况。

从表2可以看出,计算机组成原理课程的实验已经由以前的验证性部件实验逐渐过渡到处理器设计及计算机系统搭建这一层次上,具体体现在以下几个方面:

1) 使用可编程逻辑器件作为实验平台[2],这样能够大大提高实验的灵活性和可操作性,根据学生能力的不同安排不同层次和难度的实验,充分发挥学生的主观能动性,在实验内容和形式上不断创新,同时也激发了学生的兴趣,实验样式也不再呆板和单调。但是,这样需要有更加完善的实验评价机制,做到公平和公正;还需要学生掌握硬件描述语言和相应的EDA工具软件,这些就需要对课程内容进行适当的调整或者得到先修课程的支持。

2) 指令集基本上都是MIPS或者类MIPS的,其好处是指令系统成熟,格式规整,有很好的技术和文档支持。使用这类的指令系统,学生能够更好的掌握和理解,设计出来的处理器结构也更加规范,而且有很多相应的设计文档和实例可供参考;其次,如果想要进行更高层次的实验内容,就需要相应的编译器等工具的支持,MIPS指令系统在这一点有很大的优势,有了这些工具开发难度能够大大降低。因此目前来看采用MIPS指令系统是一个很好的方案。不过这样也有一些缺点,采用统一的指令系统限制了学生在指令系统设计上的灵活性,使得设计出来的处理器过于类似,过多的设计资料也使得学生可以更加容易偷懒,使得实验效果降低。

3) 基本上将流水线等知识应用到实验之中[5]。由于各个学校都在不同程度的推进计算机组成原理课程改革,普遍将流水线、高速缓存等内容加入了教学计划中,实验中也相应的加入了这些内容;同时MIPS指令系统能够很好的支持流水线的设计,现有的资料和教材大多也是围绕着流水线处理器设计展开的,因此流水线处理器的设计已经成为了各个学校实验的基本内容。在清华的计算机组成原理实验中并没有规定一定要实现流水线,要求学生完成多周期或者流水线处理器的设计,仅过几轮实验教学,学生普遍选择了流水线处理器的设计,因为多周期处理器的设计并不比流水线处理器设计简单很多,而且相应的设计资料较少。不过有一点是值得商榷的,就是为了组成原理实验有更好的显示度,在实验中加入了不少其他课程的内容,比如编译、操作系统等内容。这些内容安排在单独的综合实验课程中还可以,放到组成原理课程实验中就有些喧宾夺主了,学生会投入太多的精力在这些内容上,组成原理实验还是应该以理解计算机组成及工作原理为目的,不需要完成其他课程的内容,只有少数能力较强的同学在完成了基本内容后,才值得鼓励去做这些事情。

4) 实验规模较大,需要多个同学分工协作来完成。在以往的计算机组成原理实验中大多数是以验证性的实验为主,学生往往可以独立完成,但是处理器设计这一类的实验单靠个人完成对学生的压力太大,这就需要学生组成一个驼队来完成实验,这样不仅能够减轻学生的工作量,还可以培养他们团队协作的能力。一个团队规模控制在2~3人比较合适,人数太多会造成有人懈怠,达不到实验目的。

3实验管理和评价

由于计算机组成原理实验内容和形式的更新,具体的实验管理方式和评价机制也有了很大的改动。以前是以实验室为主的实验模式,学生根据实验室安排的实验内容和时间来完成规定的实验;现在则是实验室根据学生的实验进度和需求,提供相应的实验支持,包括设备、场地以及人员等。

以清华大学的组成原理课程实验为例,前两个验证性的实验安排在实验室统一完成,帮助学生熟悉软件工具和实验设备,然后再安排课程大实验。大实验过程中会将实验设备发放给学生,让学生能够在宿舍进行实验,同时实验室保证一定的开放时间,方便学生来实验室做实验。在整个过程中安排三次集中的实验课程,实行小班教学,目的是能够更好的掌握学生目前的实验情况,控制实验进度和解决学生遇到的一些实际问题。在整个实验过程中,实验室的主要作用就是后勤保障和监督进度,协助和督促学生完成实验。

由于实验内容和形式的变化,实验已经不能简单的通过检查实验数据来评定一个实验完成的程度,需要从多个方面进行评价。对于我们的大实验,首先会提供一套标准的测试程序,通过这些程序来检查实验结果是否正确;然后学生需要针对自己的处理器提供自测程序来体现自己设计的处理器的特点,这些测试都是需要教师或助教现场检查的,检查的同时会询问他们在设计及实现的过程中是否独立完成以及各自的分工,以便确定是否存在抄袭现象、工作量分配是否合理。对于完成较好或者有所创新的小组给与加分奖励[7],并鼓励其在实验总结课上展示自己的成果。将这些汇总然后结合实验报告及平时实验情况,就能够给出一个比较全面公平的实验评价结果。

在这种实验管理模式和评价机制下,能够很好的提高同学的积极性和对实验的整体把握程度,教师也能够掌控好实验进度和学生掌握情况,达到很好的实验效果,不过这需要教师和助教通力合作,所花费的精力也比较多。

4结语

随着实验技术的不断进步,计算机组成原理课程实验在内容和形式上已经发生了很大的变化,各个高校都有着自己的发展思路,但是大的方向是一致的,总体说来就是实验已经由验证型实验过渡到设计型实验,内容也变成了在可编程芯片上进行处理器设计,进而形成一个简单的计算机系统,可以说是计算机组成原理课程实验已经由验证计算机各部分功能逐渐过渡到设计及搭建计算机系统这一层面上。

参考文献:

[1] 王诚,刘卫东,宋佳兴. 计算机组成与设计[M]. 北京:清华大学出版社,2008:6-7.

[2] 罗克露,谭华,单立平. 计算机组成原理实验改革探索[J]. 实验科学与技术,2004(3):57-59.

[3] 郝秉华. 结合EDA 的计算机组成原理实践教学探究[J]. 内蒙古科技与经济,2009(11):103-104.

[4] 叶雪军,唐建宇,熊威. 基于EDA 的计算机硬件课程实践教学的研究[J]. 计算机教育,2007(7):90-93.

[5] David A.Patterson,John L.Hennessy. 计算机组成与设计:硬件软件接口[M]. 北京:机械工业出版社,2006:368-383.

[6] 王诚,刘卫东,宋佳兴. 计算机组成与设计实验指导[M]. 北京:清华大学出版社,2008:12-48.

[7] 马明涛. 计算机组成原理课程的实践教学方法初探[J]. 山西财经大学学报,2009(11):21.

Investigation and Research on the Experiment Teaching of Computer Organization Course

LI Shan-shan, QUAN Cheng-bin

(Lab for Computer Education, Tsinghua University, Beijing 100084, China)

Abstract: The experiment of the Computer Organization can not catch up with the requirement for experiment teaching. This paper investigates the computer organization experiment of several colleges and universities, and discusses the current status on course setting, experiment setting, experiment management and experiment evaluation of the Computer Organization, points out that the computer prototype experiment on programmable device is the trend of the experiment teaching on computer organization course.

Key words: Computer Organization; experiment teaching; programmable device; experiment evaluation

上一篇:基于KM教学法的软件工程教学研究 下一篇:基于CDIO理念的IT应用型人才培养模式