首页 > 范文大全 > 正文

计算机组成与体系结构核心课程的创新建设

开篇:润墨网以专业的文秘视角,为您筛选了一篇计算机组成与体系结构核心课程的创新建设范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:分析我校计算机组成体系结构课程教学的现状和存在问题,结合实际教学经验,从教学内容设置、理论教学方法、实践教学规划、课程考核制度、师资队伍建设和综合教学平台六方面,对建设计算机组成与体系结构核心课程提供创新思路和实践经验,为进一步提高计算机组成与体系结构课程的教学效果提供参考和经验。

关键词:计算机组成与体系结构;核心课程建设;教学创新

依据上海理工大学实施教育部“卓越工程师教育培养计划”的要求,上海理工大学计算机科学与工程系确立了计算机科学与技术、计算机工程两个本科专业定位为培养计算机工程领域需求的工程性人才。在参考ACM/IEEE-CS CC2005[1]对计算机工程(CE)学科课程体系设置的基础上,我们将计算机组成原理和计算机体系结构的知识组织为一门统一的计算机组成与体系结构课程,并采用白中英教授主编的《计算机组织与体系结构》作为理论教学教材[2]。

计算机组成与体系结构课程涵盖两个方面:计算机组成的基本原理和计算机体系结构量化设计的基本方法。计算机组成原理是通用计算机系统结构的一般性逻辑实现方法;计算机体系结构揭示计算机系统的属性,包括概念性结构和功能特性,确定计算机系统软硬件的界面。二者既有区别,又有内在联系,因此,适合于整合为一门综合性专业基础课程。但是,由于计算机组成原理是计算机相关专业全国研究生统一入学考试的专业基础课,因此,我们确定本课程的教学内容侧重于计算机组成原理的教学。

根据教育部高等学校计算机科学与技术教学指导委员会制定的《高等学校计算机科学与技术专业核心课程教学实施方案》中关于计算机组成原理课程的实施方案[3],我们确立了计算机组成与体系结构的教学目标是围绕单CPU计算机硬件系统的基本组成和工作原理,系统讲述计算机硬件系统及功能部件的内部结构、功能特征、工作原理、交互方式和基本设计方法,使学生理解计算机硬件系统的组织结构与工作原理,掌握计算机硬件系统的基本分析与设计方法,为计算机工程领域培养具有硬件设计和实施能力的工程性人才;主要教学任务是培养学生对计算机硬件结构的分析、应用、设计和开发能力,系统地理解计算机系统各部件的工作原理和运行机制。

1 教学现状和存在的问题

多年来,计算机组成原理被认为是一门既难教又难学的课程。而计算机组成与体系结构则包括计算机组成和计算机体系结构,这使得教学内容更多、学习难度更大。因此,很多同行一直在通过各种方式提高这门课程的教学质量[4-7]。结合我校计算机相关专业的具体情况,我们分析发现造成这一问题的因素有三个。

第一,本课程需要有数字电路、数字逻辑知识为基础。但是,由于大一大二两学年我院采用工科通识教育的缺陷,使得计算机和网络工程两个专业的本科生在学习本课程前没有学习过数字电路和模拟电路,也不了解数字逻辑设计的方法。因此,学生基础差,难以跟上教学进度。

第二,本课程涉及的知识面广、概念多,而且计算机内部芯片高度集成化,学生缺乏对计算机各部件的感性认识。因此,理解其物理结构和工作原理比较抽象,学生难以理解。而且,由于该课程讲授的计算机最基本的原理和方法,课程教学内容的直接应用目标也不可能很明确,学生难以理解该课程的直接应用价值,对该课程的重视度不够。

第三,在计算机软件的学习过程中,学生通过编程技术可以获得可见的结果。而对比计算机硬件课程的学习,学生难以把学到的硬件知识马上应用起来,不容易获得类似软件编程的直观感受,学生普遍的认识有偏差。这导致学生误认为本课程学习内容的实用性不强或者误认为软硬件之间的联系不大,以后自己只从事软件编程工作,不需要掌握计算机硬件设计方面的知识。

基于以上对计算机组成与体系结构课程的定位,结合我校人才培养目标和教学现状,下面,我们将从教学内容设置、理论教学方法、实践教学规划、课程考核制度、师资队伍建设和综合教学平台建设六个方面具体提出本课程的建设方案。

2 核心课程创新建设的综合方案

2.1 教学内容设置

教学内容设置方面的建设主要集中在三个方面:第一是补充本课程的基础知识,包括数字电路中的TTL门、MOS管技术等和数字逻辑课程中的逻辑代数基础及组合电路逻辑设计方法;第二是补充《计算机组织与体系结构》教材中缺失的内容,比如增加计算机体系结构中关于指令级并行软硬件设计方法、Cache失效性分析、多处理机同步与通信机制等。在计算机组成原理的教学内容上,尽量补充计算机体系结构量化分析的方法和设计原理;第三是补充多核处理器技术的最新设计方法和工作机制,这部分内容主要提供给对计算机体系结构感兴趣的、学有余力的学生自学之用。

为保证理论教学和实验教学时间的充裕性,我们将理论教学和实验教学单独开课,实验课的进度和理论课的进度相匹配,其中理论教学安排64学时,实验教学16学时,使得理论教学和实验教学的学时比为4:1。此外,对学有余力和参加竞赛的同学另行再组织和指导创新实验,使得理论教学和实验教学环环相扣,逐步深化,并使得培养的学生具有一定的创新设计和实践能力。理论教学计划如表1所示。

这种教学计划使得计算机组成与体系结构课程的教学内容更加丰富,既避免了本课程只讲授计算机组成原理或者只讲授计算机体系结构知识的弊端,又能保证学生将来参加研究生入学考试时对计算机组成原理知识的全面掌握。

2.2 理论教学方法

在讲授基本原理的过程中,我们注意融入计算机硬件技术发展的新技术并作为学生课后自学的内容,注重基础理论与最新技术的融合。由于计算机组成与体系结构知识比较抽象,理论学习比较枯燥,因此教学过程中我们要与学生交流互动,向学生提出启发式和开放式的问题,引导学生深入思考。讲课中注意触类旁通,采用举例、类比的方法,将深奥、难以理解的问题用学生最容易接受的方式和语言表达。理论课程全部采用课堂教学方式,以多媒体课件为主,适当使用一些板书。充分发挥多媒体教学采用动画技术或Flash技术,充分展现基础性方法和原理的动态执行过程。比如:SRAM读写周期的过程、Cache的访问和替换策略、指令流水线的过程等。

然而,多媒体教学方法对运算方法和运算过程的教学效果却不尽人意。经分析,我们发现问题主要是定点数、浮点数进行加减、乘除的计算过程没有采用传统板书教学并按步骤书写,而是采用多媒体教学且放映速度较快,学生来不及仔细体会其中的设计技巧和验证计算结果。

因此,后期涉及到计算相关的教学,我们都尽量采用传统的板书教学方法;而对于简单的控制流程、运行机制、状态更新等内容主要采用多媒体教学方法,这既发挥了多媒体教学生动、信息量大的特点,又体现了传统板书教学的细致和严谨。

此外,理论教学过程中建议采用引导式教学方法,而不能采用填鸭式灌输教学。讲授第二章运算方法和运算器前,先要介绍计算的基本功能就是进行算术逻辑运算,既然是算术逻辑运算,那就有二进制数参与运算,那么就会介绍各种数的机器表示形式;然后介绍数值数据的加减法和乘除法,包括原码、补码和移码的计算,然后介绍计算过程的硬件逻辑实现过程;最后介绍浮点数的加减乘除运算过程和硬件设计框图。

2.3 实践教学规划

在实践教学方面,我们从实验内容和实验方式开展教学革新。在实验内容上,分别针对基础性原理、综合性知识和创新实验有针对性的开展实践教学。针对基础性原理设计了验证性实验,比如采用多功能运算部件74LS181设计16位运算器的实验电路,验证运算器的功能等;对于综合知识,我们组织设计性实验,比如给每组学生分配一张指令表,指令表中包含十余条不同的机器指令(主要包括设计HALT, MOV, ADD, SUB, MUL, DIV, LOAD, STORE, JUMP),要求学生根据实验计算机整机逻辑图来设计指令系统中每条指令的执行流程,设计微操作控制信号和微指令格式,确定初始微地址和后继微地址的形成,然后根据指令流程和微指令格式编写出每条机器指令所对应的微程序,同时还要针对每条机器指令编写相应的测试程序,以测试微程序的正确性。最终,我们要求学生设计出一个支持简单指令级的16位计算机系统;鼓励和挖掘有潜力的学生组织开展创新型实验,以组织兴趣小组或竞赛小组的形式,开展实际的工程应用开发或创新型实验的设计工作,比如通过EDA软件设计计算机系统的存储部件、控制逻辑电路等,通过软件仿真测试并烧录到FPGA器件上,检验实验的正确性;或者采用单片机、ARM处理器或RISC处理器设计一个嵌入式实验系统。由于课程教学和实验教学学时有限,创新型实验主要安排在学期末最后一个月的短学期内实施。

对于实验方式,我们的教改措施主要有:1)要求理论教学的老师亲自带教实验课程,避免理论教学和实验教学老师分开、责任不明确,导致实验课马虎过关的现象;2)具体实验前,由老师讲解实验步骤和注意事项。授权学生将实验设备或器材带回宿舍进行充分的设计和实验,与此同时他们还可以通过实验老师的即时通讯工具或教学平台提供的学生论坛相互交流实验经验和提出问题;3)实验的教学检查采用分组答辩的形式,由学生团队自由组织并分工,撰写实验报告、答辩PPT及回答答辩提问。

2.4 课程考核制度

理论教学和实验教学单独考核并采用量化考核措施。对于理论教学环节主要考核学生的出勤率(10%)、作业完成情况(20%)、期末考试成绩(70%)。

1) 出勤率:按出勤次数计算,每次出勤计2分,总分10分。

2) 作业完成情况:每学期安排5次作业,每次总分计4分。按作业缴纳次数和作业评价结果记分, ,每次缴纳作业 =1,没有缴纳 =0; 表示每次作业的成绩,如表2所示。

3) 期末考试:成绩占理论课程学成绩的70%。

实验教学环节安排5次实验,主要考核学生的出勤率(10%)、组织与团队协作能力(10%)、实验完成情况(30%)、实验报告(25%)和答辩情况(25%)。

1) 出勤率:按出勤次数计算,每次出勤计2分,总分10分。

2) 组织与团队协作能力:根据团队成员分工情况和安排的组织讨论情况记分,每次计2分,总分10分。

3) 实验完成情况:考核每个学生是否按规定完成制定的实验任务,每次实验总分计6分,分四个等级。按规定独立完成实验任务的记6分,在同学帮助下完成任务的记4分,在指导老师帮助下完成任务的记2分,缺席实验的记0分。如表3所示。

4) 实验报告:考核学生总结、归纳实验任务的能力,是否按规定填写和总结实验任务,是否具有详细的实验分工、实验任务、实验步骤、实验结果、实验分析五大要素。每个要素1分,每次实验总分记5分。

5) 答辩情况:每次实验配以答辩环节,每次答辩总分5分,共计25分。能正确回答答辩中提出的问题的记5分,与同学协商后正确回答问题的记3分,其他记2分。

2.5 师资队伍建设

按照建设一流教师队伍的要求,结合学院师资队伍建设,我们增强本课程讲授的师资力量,引进具有国外留学经历的青年教师,建立完善的教师梯队,同时,加强对青年教师的培养,提高教师教学、科研水平,鼓励青年教师参加国内外访问学者计划或者计算机组成原理和体系结构的理论教学或实验教学培训计划。积极参加计算机学会体系结构委员会和计算机教育委员会组织的活动。

2.6 综合教学平台

建设本课程的教学网站,将每一节课讲授内容的电子课件向学生开放,便于学生课后复习和巩固所学知识。同时,进一步完善本课程网站资源,开辟专门的教学论坛、教学QQ和群组供学生讨论问题。

聘请研究生担任助教,负责与实验课的老师一起完成实验项目、回答学生问题、批改习题作业。保证学生能够随时通过电子邮件和即时通讯工具联系到这些助教,在课程学习过程中遇到困难和问题时就能够及时地得到辅导和帮助。助教将收集到的反馈信息汇总,主讲教师根据这些信息及时调整教学方式和教学内容,满足学生求知的欲望和需求。

综合教学平台的总体功能包括介绍教学内容、师资队伍、教学计划、教学进度、课件资源、在线答疑、论坛讨论、习题库、友情链接等,由专人负责管理和更新,真正实现教学平台作为教师与学生沟通的桥梁作用。

3 结语

通过以上措施,我们获得了较为明显的教学效果,实验教学的质量也得到大幅度的提高。学生由以前害怕、拒绝学习计算机组成与体系结构课程转变为对计算机组成和体系结构设计的热爱,并获得了更多直观的体会,进一步正确理解了计算机组成和计算机体系结构的作用和意义,达到了我们建设核心课程的初期目标。

通过前期的规划和初步实践,我们计划将在以下三个方面进一步推进本课程的建设。

第一,进一步了解学生的学习基础和学习兴趣,根据因材施教的思想,把实验内容分成不同的层次,面向不同的对象。保证必做实验的水平和质量,提高选做实验的数量和种类,满足多方面学生的需求。

第二,进一步与硬件设计、生产企业合作,组织学生参加全国性的设计大赛。既让学生接触、应用到最新技术的芯片或者设备,又能提高本校在企业界和教育界的知名度。

第三,根据本校学生的学习基础、课程教学计划,编制一套更适合本校实际情况的、符合计算机组成和体系结构两个方面知识的理论教材和实验手册。

参考文献:

[1] Russel Shackelford,Andrew Mcgettrick,et al. Computing Curricula 2005: the overview report[C]. Proceedings of the 37th SIGCSE technical symposium on computer science education,2006.

[2] 白中英,戴志涛,杨春武,等. 计算机组织与体系结构[M]. 4版. 北京:清华大学出版社,2008.

[3] 教育部高等学校计算机科学与技术教学指导委员会. 高等学校计算机科学与技术专业核心课程教学实施方案[M]. 北京:高等教育出版社,2009.

[4] 李山山,全成斌. 计算机组成原理课程实验教学的调查与研究[J]. 计算机教育,2010(11):127-129.

[5] 胡晓婷,王树梅,任世锦,等. 提高计算机组成原理课程教学效果的途径与方法[J]. 计算机教育,2010(11):97-100.

[6] 郑丽萍,秦杰,王献荣. 计算机组成原理与计算机系统结构的教学内容衔接[J]. 计算机教育,2010(11):52-55.

[7] 何会民,潘雪增.“计算机组成与设计”课程教学创新改革[J]. 高等理科教育,2007(4):74-77.

Educational Innovations of Computer Organization and Architecture

PEI Songwen, WU Chunxue

(Department of Computer Science and Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China)

Abstract: Based on the comparative analysis on the advantages and disadvantages in the teaching process of the course of computer organization and architecture, we proposed innovative approach and educational experience for it aiming at six aspects: instructional content organization, teaching measures for computer theory, organization of experimentations, course assessment, team building of instructors and platform for integrated instruction. Therefore, we finally gained abundant and effective experience to further improve the instruction effect of computer organization and architecture.

Key words: computer organization and architecture; key course; educational innovation;