首页范文计算机组成原理教学十篇计算机组成原理教学十篇

计算机组成原理教学十篇

发布时间:2024-04-25 20:37:14

计算机组成原理教学篇1

关键词:Cp;Ca;教学内容;内容重复

中图分类号:G642 文献标识码:B

1 引言

“计算机组成原理”(Cp)是高校计算机专业学生的一门必修的专业技术基础课,它不仅可使学生剖析和体验计.算机的基本组成和工作原理,掌握计算机系统的基本设计技术,而且可培养学生分析和解决数字系统实际问题的能力,同时也是培养计算机系统分析、系统设计和系统集成技术人员的一个有效的教育环节。它在整个专业课的教学中,起到了承上启下的作用,是“微机接口技术”、“汇编语言程序设计”、“计算机系统结构”等后继课程的基础。该课程以计算机5大部件内容为主线,以内部结构和工作原理为重点,介绍计算机内部各功能部件的结构和工作原理及其构成整机的原理。

“计算机系统结构”(Ca)是计算机领域中的一门重要学科,它强调从总体结构和系统分析这一角度来研究计算机系统。学习本课程,对于培养学生系统地、自上而下地分析和解决问题的能力和抽象思维能力有着非常重要的作用。本课程通过讲解计算机体系结构的新发展,把国内外体系结构方面比较成熟的研究成果和关键技术融入课程当中,并把前续的“数字逻辑”、“计算机组成原理”、“操作系统”、“编译原理”、“数据结构”、“汇编语言程序设计”等课程中所需的软硬件知识有机地结合起来,从而建立起计算机系统的完整概念。

由此可见Cp与Ca有着紧密的联系,在现有的教材中甚至出现了比较多的重复,在学生中引起比较大的反应。本文主要针对这一问题进行研究,拟在理顺这两门课的关系,调整好两门课程的教学内容。

2 教学内容的研究

在cp与Ca系列教材中,两门课程出现重复的内容有:计算机系统的层次结构和计算机系统的性能指标;浮点数据的表示、寻址技术、指令格式的优化设计、复杂指令系统(CiSC)和精简指令系统(RiSC):高速缓冲存储器(Cache)和虚拟存储器工作原理和地址的映像与变换;输入输出系统的原理和方式、中断系统的工作原理:流水线工作原理。重复的结果不仅占用了Ca课程宝贵的课时,而且使学生产生了厌学情绪。Cp与ca两门课程究竟如何分工?该不该重复?又该怎么重复?是教学中值得研究的问题,也是亟待解决的问题。

在课程内容的选择上,以教学大纲为依据,按照学科知识体系的完整性和适时性原则组织课程内容。在内容上做到没有知识的简单重复、没有重要知识的缺失,同时要删除已过时知识,并补充新知识,从内容方面激发、吸引学生的学习兴趣。本文重点研究分析重复内容的必要性、可完善性和创新性。

对于计算机系统的层次结构,在Cp中作为概述来介绍,以了解微程序在计算机系统层次结构中的位置,可以更好地理解软件、硬件、固件的地位和作用;而在Ca里则是从概念和功能上将计算机系统看成多级层次结构,这样有益于理解各种语言的实质和实现途径,探索虚拟机新的实现方法和新的系统设计。所以计算机系统的层次结构的概念在Cp课程和Ca课程中是必需的内容。

关于计算机系统的性能指标,由于在Cp中讲述的是冯・诺依曼体系结构各组成部分的工作原理,所以了解各组成部分的性能指标是必要的;而在Ca课程中用性能指标来衡量计算机系统的标准,所以有必要更深入分析CpU时间、mipS、mFLopS和成本指标。

对浮点数据的表示,在Cp课程中介绍了浮点数据的表示格式和表示范围,在Ca课程中不必再重复,只需介绍浮点数的基数的选择、表数精度和表数效率,然后介绍浮点数的ieee754表示;当然对于高级数据的表示,在Ca课程中是必需的。

对于指令系统,在Cp中介绍指令的格式、寻址方式和操作码的扩展编码方式,最后介绍CiSC和RiSe的概念和示例;在Ca课程中主要介绍指令格式的优化,CiSC和RiSC设计的关键技术。

输入输出系统的原理和方式、中断系统的工作原理在两门课程中是重复最多的一部分,Ca较Cp多出了通道处理机和输入输出处理机简介,可以归入Cp课程。但考虑到中大型计算机的输入输出系统在计算机系统结构中是很重要的部分,所以可以将通道处理机和输入输出处理机在Ca中介绍,同时将Cp中的系统总线简介也归于系统结构,并从系统设计的角度去介绍。

高速缓冲存储器和虚拟存储器工作原理以及地址的映像和变换在两门课程中也是重复较多的。在Cp中可以仅介绍其工作原理;而在Ca课程中重点在于其性能分析,深入学习替换算法及其实现,分析提高存储器系统命中率和性能的方法。

对于流水线工作原理,在Cp中仅介绍了流水线、数据相关和控制相关的概念,但在Ca中要学习流水线处理机、超标量处理机与超流水处理机,其中包括先行控制技术、流水线原理、流水线性能分析、非线性流水线的调度方法、局部数据相关和全局数据相关、超标量超流水超长指令字处理机和向量流水和向量处理机,其内容远多于Cp,因此这部分内容完全归入Ca比较合理的。

在Ca与Cp中的未重复的内容,比如向量处理、SimD并行计算机、SimD计算机的互连网络、多处理机将作为重点内容在Ca中介绍。而在以上分析中,由于Ca课程的内容部分归入了Cp,所以可以在Ca课程中添入新的内容,比如多处理机算法,包括并行搜索算法、串行算法到并行算法的转换、同步并行算法和异步并行算法,并行程序设计语言及其实现方法。最后可以介绍计算机体系结构的新发展,包括数据流计算机、数据库机与知识库机以及面向函数程序设计语言的归纳机。

以上对Cp与Ca两门课程的重复内容进行了分析研究,拟在理清两门课程的关系,合理解决两门课程的内容重复问题。

3 解决方案

解决该两门课程内容重复的宗旨在于把握Cp注重原理介绍,而Ca注重高性能设计和并行处理。通过对两门课程的内容的研究和分析,调整后的内容如表1所示。

将表1中Cp的第2、5章与Ca的第2章、Cp的第7章与Ca的第3章、Cp的第4章与Ca的第4章分别进行比较,虽然在章名上有些类似,但其内容并没有重复。一个注重原理,另一个侧重系统性能、并行处理系统以及进一步提高计算机性能的新技术。Cp是Ca的基础,Ca是Cp的扩展,从提高计算机系统结构性能的角度出发,从单处理机走向并行处理机,走向新型体系结构的计算机,这正是Ca的研究方向,展示了计算机系统结构研究的美好前程。

计算机组成原理教学篇2

关键词:计算机组成原理;教学实验改革

1实验教学存在的问题

《计算机组成原理》是计算机科学与技术的专业一门重要的基础课[1]。理解计算机组成原理会使学生能够更好地学习计算机科学的其他课程。本课程的目标是理解和掌握冯诺依曼结构机器的基本构成原理和基本观念,理解总线、接口、Cache和指令系统是如何决定计算机系统的性能。要求学生对计算机的五大部件有完整清晰的认识,了解硬件结构和对硬件具有一定的分析和设计能力。课程性质偏向于概念性。学生通过学习能够清楚地认识到硬件和软件在计算机系统中的地位和作用以及它们之间的相互依存关系。然而目前的计算机组成原理的实验教学内容混淆了课程性质,用专业课的实验要求取代了基础课的实验要求,一味追求实验内容的复杂性,比如让学生去设计流水技术,甚至解决竞争问题。学习计算机组成原理课程的学生还处于低年级阶段,并不具备计算机系统的完整知识和设计技能,让学生去解决实际的复杂问题,违反了基础与专业循序渐进的教学原则[2-3]。因此,本文针对上述问题,将《计算机组成原理》的实验教学的侧重点放在教学内容的完整实现上,循序渐进提升学生的硬件及软件设计能力,为后续相关课程的学习打下坚实的基础。目前很多院校为了培养学生综合能力,基于eDa技术,使用Quartusii软件进行计算机组成原理的实验[4]。Quartusii是altera提供的FpGa/CpLD开发集成环境。该集成环境完全支持VHDL等硬件描述语言[4-5]。随着越来越多的高校使用FpGa方案来开展计算机组成原理实验,采用这种方案进行实验教学的弊端也逐渐呈现出来:(1)如果希望在计算机组成原理课程中开展FpGa设计实验,就必须在本课程前安排学习《VHDL/VerilogHDL语言程序设计》这门课,然而对计算机专业来说,这门课不宜安排在低年级。(2)FpGa使用硬件逻辑语言将电路进行描述并写进芯片,学生无法对计算机组成电路产生直观性的认识,因此它不适合做基础认识性实验。(3)FpGa的电路调试是非常困难的,而学生设计的程序是否正确,其调试又要靠硬件电路的正确性来保障。如果预先加入调试电路,给定调试程序,那么势必限制学生的设计,这样做实际就变成了验证性的实验。(4)学习计算机组成原理的学生还在低年级阶段,设计真正的CpU和计算机系统对大部分学生来说,是非常有难度的。因此,实验教学不是仅仅靠使用FpGa就能解决的。

2实验教学方案的设计

针对以上问题,本文采用FpGa与基础实验电路相结合的实验教学方式。首先通过基础实验电路来学习和掌握计算机组成和工作的基本原理。这些实验放在相应的理论内容结束之后的实验课中完成,作为计算机组成原理课堂教学的一个重要补充。在此基础上,使用FpGa实现各部件电路,并将FpGa实现的电路代入到基础电路平台中,取代平台上某个基础部件,以实现所设计的该部件电路的调试。各部件电路调试成功后,再将各局部电路连接成整机,完成整机的调试。这种采用FpGa与基础实验电路平台相结合的方法,是循序渐进提升学生设计模型计算机能力的最有利的方法。在实验中,要求学生设计一个具有少量指令(如5条)的8位模型计算机。软件上,学生需要设计所有的程序和微程序;硬件上,在电路结构开放的基础上,学生自己操作各信号线。该设计过程包括通过内部总线连接各功能单元模块构成数据通路,用微指令设计计算机指令系统。学生在该模型计算机设计过程中要经历总体结构方案设计、指令系统设计包括指令格式和寻址方式、控制器的选择、编写微程序等过程。还需详细说明部件中数据和控制信号的来源、去向、功能、时序。模型计算机设计完成后,学生将更加深刻地掌握模型计算机特别是CpU的基本工作原理。采用FpGa与基础实验电路相结合的实验教学方式使学生们对运算器、控制器、存储器以及输入输出各个模块的内部结构有了更深入的了解,锻炼了学生的实验动手能力,也培养了他们认真的科学态度和团队合作精神。比如有一组同学在刚做计算机组成原理实验的时候,由于粗心大意没有正确地设置开关和连好导线,导致存入的数据不正确。然后整组同学一起讨论避免连线出错的方法,最后通过在接线图上将已经连接好的部分作记号的方法来避免出错。改进的过程中不仅增进了同学之间的交流互动,还培养了认真做事的态度。在试验成绩评定方面,根据实验内容的难易程度,5个实验的分值比例分别设置为15%、15%、15%、15%和40%。为了积极提高学生的学习兴趣,还将硬件设计大赛与课程教学相结合,鼓励学生根据自己参赛的题目制定自己综合实验的内容。根据该方案进行实验改革以来,大部分同学纠正了以前厌学的态度,树立了学习的信心,动手能力与之前相比大幅提高。迟到早退的现象也消失了,学生能够主动参与实验并认真完成。在实验中通过认真思考,自行设计实验方案并记录分析数据,加深了对理论知识的理解。在掌握知识的同时,还增强了克服困难的信心。实验成果反馈如表1。

计算机组成原理教学篇3

关键词:计算机组成原理教学大纲实验内容

《计算机组成原理》是计算机科学与技术专业的一门专业核心课程,在整个专业课的教学中起到了承上启下的作用。通过对这门课的学习可以使学生掌握计算机硬件的基本设计与分析方法,建立起计算机整机工作的概念。

随着计算机技术快速发展,计算机的硬件不断更新换代,《计算机组成原理》课程呈现知识面广、内容多、更新快的特点,学生普遍感到这门课程难学、概念抽象、感性认识差。学生在学习上表现为一是兴趣不足,二是方法不当,三是自控能力弱。本文就如何开展计算机组成原理的教学与实践,进行一些粗浅的尝试与探讨。

一、因材施教,制定特色的教学大纲

教学大纲是规范教学工作、科学严谨地指导教学的一个重要依据。教学大纲制定的好坏,直接关系到教学执行情况和教学质量的优劣。制定出切实可行的教学大纲,是课程建设的重要工作之一。在教学过程中,笔者尝试从教学内容的改革、课程时间的分配、实践内容的修改三个方面来制定合适的大纲。

1.教学内容的改革

本课程的基本教学内容主要讨论了计算机单机系统的组成原理及其内部工作机制,包括各大部件的工作原理、逻辑实现、设计方法及其互连构成计算机整机的技术。主要强调计算机的基本原理、基本知识和基本技巧的训练。通过本课程的学习,要求学生掌握计算机硬件的设计与分析方法,建立起计算机整机工作概念。要实现教学内容改革要以基本教学内容为基础,针对本课程的特点和学生特点来进行。

由于课时从80学时减少为56学时,这就要求教师以课程的基本要求和课程的重难点为出发点,在有限的时间内精炼教学内容,从而完成教学大纲的要求。例如:两位乘法运算和除法运算可以根据教学进度少讲或不讲。由于计算机组成原理和计算机网络两门课程都有循环冗余校验码的内容,在教学时,循环冗余校验码的内容重点可放在计算机网络课程中,计算机组成原理在课程中可少讲。

2.课程时间的分配

课程时间的安排要体现一些原则,重点、难点内容应该加大时间和比重,尤其对习题课比重需加大。加重习题课的比重,一方面能够提高学生理解能力和创新能力,另一方面能够提供丰富的教学反馈信息。

在习题课上主要针对理论课教学过程中学生尚未理解透彻、容易混淆的概念及学生自学中没有解决的问题,进行分析和讨论。通过一题多解和分析,加深学生对基本概念和基本理论的理解,起到了举一反三、触类旁通的作用,有助于学生在以后的课程设计中结合实际进行具体应用。在讨论问题的同时,学生又会提出新的问题,如此良性循环,学生的独立思考能力可得到培养和锻炼。

3.实践内容的修改

实践内容对于培养应用型人才至关重要,是培养动手能力的主要手段。主要从三个方面着手:精心选择实践项目,合理设置实践思考,增加实践预习环节。

首先,精心选择实践项目,对实践内容合理调整。例如:减少复杂模型机的实践项目,加重基本模型机的实践项目,虽然总体上降低了难度,但是通过巧妙设计实验内容,加重实践设计能力,提高学生动手能力的培养,引导学生在实验中创新能力的培养。

其次,在实验中合理设置实践思考,要求学生在实验过程中对实践思考点做出回答。通过回答这些思考点,培养学生独立思考能力和创新能力,拓展学生的知识面。带着问题做实验并且鼓励学生自己发现问题,能够调动学生的积极性,激发他们的学习兴趣,让他们自己学会解决问题。

再次,增加实验预习环节,在预习环节中设置一些与实验内容相关的基础问题。这些问题的设置,能加深他们对实验内容的理解。在实验过程中,既加深了感性认识,又理解了抽象的概念,对理论教学也起到了一定的促进作用。

二、多样化的教学方式,提高教学效果

1.充分利用类比方法,培养学生理解能力。

类比法是以相似比较为基础的一种科学研究方法,是利用两种事物之间某种相似关系而进行的推理。运用类比的方法,能将抽象、难以理解的模型的某个特性的理解转换为对比较具体、形象的容易理解的模型的对应特性的理解,可以使学生加强对内容的理解,也是培养学生学习方法的一种重要手段。通过类比方法可以发现它们的共性和异性,这会使学生更好地加深对教学内容的理解和掌握。

讲授CpU章节过程中,为了帮助学生建立数据通路的概念,可借助于城市自来水管网模型,它们之间有很多共性:水流通路和数据通路之间有很多类似的地方。

讲解轮询和中断两种程序控制方式时,借助于教师依次收作业和科代表收齐作业的事例来帮助学生理解这两种方式的特点。

2.适当介绍本学科新技术,拓展学生的知识面。

因为计算机发展迅速,课本知识更新速度不快,所以有必要在课堂上补充新技术。例如:组织学生讨论如何购买计算机,需要考虑哪些因素,在他们讨论中适当引导,将硬件新技术融入到讨论中。然后,布置学生查找计算机硬件发展状况的文章。通过这次作业,学生查找文献的能力提高了,对计算机硬件的兴趣提高了,对当前新技术也有所了解了。

讲解校验码时,引入eCC(errorCheckingandCorrecting,错误检查和纠正)内存新技术的应用。讲到CiSC(complexinstructionsetcomputer,复杂指令集计算机)和RiSC(reducedinstructionsetcomputer,精简指令集计算机)指令风格时,注意介绍两个技术的最新应用,指出技术发展是交替发展的。

3.采用多媒体技术,激发学生的兴趣。

多媒体教学方式能够使教学形象化、生动化。《计算机组成原理》课程的教学内容具有较强的抽象性和技术性,相当一部分内容是用传统教学手段无法直观、形象地描述的。例如:计算机内部组成的工作过程和原理,这些内容难以通过课堂讲授完全让学生理解和掌握。所以,在教学准备过程中应精心制作多媒体动画,从而更好地提高教学效果。在指令执行的过程这一教学环节中,可以利用Flas形式让学生更清楚地看到读取指令、分析指令到执行指令的各种信息流的流动过程。

讲解ieee754单精度浮点数标准时,课堂上利用多媒体演示在VisualC++6.0环境下单精度浮点数在计算机中的表现形式,如:floatnum=5.0/32,查看反汇编结果。从而让学生切身感受到ieee754的应用。

讲解海明校验码的编码规则和校验时,先通过讲解一个8位二进制海明校验码的C语言实现的程序,然后让学生编制出一个7位二进制海明校验程序,不光将前后学过的知识融会贯通,又加深了对海明校验码这个知识点的理解。

多媒体手段可以运用精确、逼真、动态的图像、视频、声音等多种媒体全方位调动学生的积极性,激发学生的学习兴趣,强化学习效果。

4.借助网络技术,提高学生自学能力。

现代的社会是信息化社会,网络无所不在,已经融入到社会的各个方面。采用网络技术,组织教学自学延伸了教学活动。由于网络中有丰富的教学资源,在教学过程中,积极推荐学生课后上部级精品课程网站,开展课后学习。在自学的过程中,学生的困惑可以通过电子邮件、QQ等形式与教师进行有效的交流。通过网络途径,不仅丰富了教学内容,而且弥补了教学的不足,提高了学生的自学能力。

三、多层次的实验内容设置,注重学生动手能力的培养

在实验进度安排上采用循序渐进的学习方式,形成三个层次的实验内容。将实验内容分为验证性实验、综合性实验、设计性实验,形成从部分到整体、从接受知识型到综合能力型逐级提高的实验内容。

1.验证性实验

验证性实验主要学习基本实验仪器的使用,掌握基本的实验方法和技术,了解实验机系统结构的组成。通过设计一系列小实验的验证和应用,要求学生掌握实验系统单元模块的内部结构及相关电子芯片的基本逻辑,理解单元模块的工作原理及该单元模块在整机系统中的应用。

2.综合性实验

综合性实验让学生建立整机思想,在掌握单元模块工作原理的基础上,掌握计算机整机系统地协调运行。为了达到这一教学目的,我们在教学内容中安排一定量的综合设计实验,要求学生通过一系列此类实验,掌握整机运行模式,让学生通过实践,建立牢固的整机思想,进一步深刻理论知识。

3.设计性实验

设计性实验是原理应用能力的培养阶段。通过这一阶段的系列实验,要求学生能利用在第二阶段建立的整机思想,对指导教师提出的课题任务,提出解决方案,陈述原理的应用,自主设计实验所用的单元模块以及实验步骤,进而通过实践得出实验结论。学生在这一阶段,通过自主实验的设计,从成功与失败交替中受到训练,得到整体素质提高。比如:指令系统的设计,要求学生根据设计中对计算机功能和组成的要求来完成对指令系统的设计。

总结

本文主要从教学大纲的制订、多种教学方式的融合、多层次实验内容设置三个方面进行了计算机组成原理教学与实践一些初步尝试。在教学过程中,应从培养学生的学习兴趣入手,加强学生学习动机的培养,以学生为中心,发挥教师和学生的积极性,提高计算机组成原理的教学质量,努力培养应用型、创新型人才。同时,我们也清楚认识到教学改革是一个逐步深化的长期过程,广大学生和教师自身的素质有待发展和提高。

参考文献:

[1]张功萱,顾一禾,邹建伟,王晓峰.计算机组成原理[m].清华大学出版社,2005,(9).

[2]刘芳,戴葵,刘芸,王志英.“计算机组成原理”中设计性环节的教学探讨[J].计算机教育,2007,(4).

计算机组成原理教学篇4

关键词:计算机组成原理;教学方法;教学改革

中图分类号:G642.0文献标志码:a文章编号:1674-9324(2017)10-0205-02

《计算机组成原理》是计算机专业区别于其他专业的一门非常重要的课程,课程教学具有知识面广、内容多、难度大、更新快等特点[1]。其前导课程包括“模电”、“数电”,后续课程包括“微机原理及接口”、“单片机原理及应用”,等等,本课程在先导课与后续课之间起着重要的承上启下作用[2]。因此如何充分利用计算机组成原理课堂教学的有限学时,更加高效地帮助学生理解计算机硬件组成知识,激发学生的主动学习能力非常值得探讨。本文从教学方法的角度进行了探讨。

一、教学中面临的问题

计算机组成原理课程是偏向硬件的一门专业课,其内容主要包括CpU、存储器、运算器、外设等硬件的组成和工作原理。由于其内部结构很难分解给学生一个直观的实物,学生会觉得课程知识比较抽象,学习难度很大;另外计算机中的运算方法与平时的运算方法有所不同,学生接受起来比较困难,以上都可能导致学生学习兴趣不高,学习效果达不到要求。所以有必要针对这门课程的特点,在教学中引入与此相对应的教学方法,有目的的展开教学改革,帮助学生更好的掌握这门课程。现结合多年的教学经验,浅谈该课程中的教学思路和基本方法。

二、教学方法探讨

1.启发式方法。计算机组成原理的知识相对来说会比较抽象,所以学生在理解的时候会有些困难,因此可以在教学过程中,采用启发式教学方法,由浅入深的掌握知识。比如在讲解外设如何与主C进行数据交换时,可以对程序查询方式、中断方式和直接存储器访问方式辅以比喻。将教师比作CpU,学生比作外设,教师布置作业并要求学生完成。程序查询方式就可以理解为是以下场景:教师布置一道作业后,就一直站在学生旁边问:作业写完了没有。等学生写完一道作业,继续布置下条作业。这样教师大多数的时间都花在等待和询问上,效率低下。所以可以考虑以下方案:教师布置完一道作业后,自己去备课,学生完成一个作业后主动通知教师过来收作业并且布置下一个作业。这个方案就是中断的思想。或者教师太忙了,可以聘用一个教学助理,教师只布置作业总量,其他作业的细节事情都交由教学助理来打理,最后来检查总体作业就行。通过这样的比喻,学生对这三种数据交换方式的理解会更加深刻,也可以激发学生学习的兴趣。

2.串联式方法。计算机组成原理课程中的一些知识点相对零散,学生在学习时会觉得没有头绪,所以在教学过程中可以采用串联式教学方法,将这些零散的知识点用一根知识主线串起来,帮助学生去记忆。比如在讲半导体存储器时,可以先讲一个基本存储器元的构成及其读写方式,而后扩展到存储器单元,并以存储单元作为编址单位。存储器单元只够一个字符类型的数据存放,如果需要存放其他数据,需要多个存储单元,在此引入编址规则并同时讲解地址译码过程。将若干个存储单元及其读写电路等封装就构成了相应的芯片,随即引出芯片引脚的定义。而芯片的容量有限,一般都需要将芯片通过并联、串联、混联的方式构成最终的存储器。通过这样一条主线,可以将所有共性的知识串联在一起,且前后联系,一环扣着一环,这样学生对知识的掌握就会比较透彻,会觉得知识的学习是连贯的。

3.设置陷阱法。在传统的教学中,一般都是教师先讲解知识点,然后给出相应例题,并强调易错点。但是对于易错点,学生接受效果甚微。如果将错误故意设置在教学中,则可以引起学生的好奇心,从而全身心的投入到错误中。例如,在讲解补码加减法运算时,假设机器字长为4位二进制,让学生应用补码规则分别计算“4+6”和“1-7”。学生计算完会发现两个结果都一样,会感到疑问和好奇,从而再去验算结果。这时再让学生把结果转化为真值,学生就会发现第一个计算的结果为负值,在此引入溢出的原因和说法,学生会对这个知识点掌握的非常扎实,而且在以后遇到类似的知识点时,会特别注意计算机数据的表示范围。

4.与其他课程结合。课程之间的知识点绝对不是独立的,所以可以结合其他课程的知识点,辅助计算机组成原理的教学。例如在C语言课程中,标准tC环境下int数据类型的表示范围是-32768~32767,学生对这个数据表示范围比较熟悉,但对为什么是这个范围一般不清楚,这个内容就与计算机组成原理课程中的机器数相关。所以在课堂上可以先抛出这个问题,吸引学生注意力,而后用补码的知识求解int数据类型的范围。这样做既可以说明数据范围与分配的存储空间相关,也可以通过范围的不对称性解释清楚补码的表示规则,从而对比原码得出范围不对称的根本原因就是0的表示方法是唯一的。在讲解大端次序和小端次序时,为了加深学生印象,可以在教师机上编写一段C语言代码,测试机器上的存储数据方法。程序如下所示:

#include

voidmain()

{

intx=1;

if(*(char*)&x==1)

printf("小端\n");

else

printf("大端\n");

}

5.与实际应用结合。现在电子产品越来越普及,所以在实际生活中,人们会发现计算机组成原理中学到的知识应用到了生活的各个角落。将这些实际应用与课程中的知识点相结合,会极大地提起学生的学习兴趣,从而更加激发学生的学习主动性。比如在讲解进制之间的转换时,首先问一个问题:马路上的红灯,你等过最长的时间是多少秒?如果超过100秒,两个LeD显示灯会怎么表示?这个问题会引起学生的极大兴趣,能够让学生主动的思考,进而自然的引出十六进制,之后就可以告诉学生,如果显示灯上为a9,那要等多少秒,问题就又转化为进制之间的转化了。

讲解存储器章节时,就可以问学生:你们平常用的U盘是多大空间?属于Rom还是属于Ram?另外还可以结合手机SD卡,与Rom和Ram相结合。手机这个话题学生比较感兴趣,大多数同学不会再等着教师给出答案,而会自己主动查找答案,那学习效果就会明显提高。

6.课上线下互动。课堂的主人应该是学生,所以在课堂上的互动非常关键,且互动对教学的推进非常重要。互动式教学给教师提出了更高的要求,要求教师有渊博的知识和课堂的控制力,但是对于增强学生的学习效果非常好。例如在讲解精简指令集RiSC和复杂指令集CiSC知识点时,以性别分组提前布置预习任务,让学生分别从概念、优缺点、适用场合、编程等角度准备资料,然后针对这两个知识开展课堂辩论。辩论的主题就是“RiSC和CiSC谁更优?”教师就是这场辩论的主席,在辩论中需要仔细倾听学生观点的表述是否正确,内容是否全面,同时还要能够调控辩论的顺序和气氛,在结束总结中也要对不足进行补充;学生就是辩论选手,需要将事先准备的内容在辩论中有针对性的展开。通过这样的形式,教学就从课堂之内扩展到了课堂之外,学生们的学习方式也转化为部分自学的方式,且是带着目的去学习。

7.加强实物和动画展示。课程中主要讲述的是计算机五大硬件的组织结构和工作原理,如CpU、存储器等,教学内容相对比较抽象,学生对各部件缺乏直观认识,因此不容易理解课堂教学内容。如果学生因长时间不理解课堂教学内容而处于消极学习状态,就会使学习积极性和自信心大大降低[3]。为此可以在课堂上加强对组成部件的实物和动画展示。例如在讲到内存相关内容时,教师可以主动向学生展示几款存储器,并让每个学生近距离观察,引导学生思考:Rom和Ram最主要的区别是什么?Ram上的芯片是怎么排列的?问题结合实物演示,可以帮助学生理解硬件内部的工作原理,同时也可以提高学生的学习兴趣。

三、结语

计算机组成原理内容抽象、知识点多、与多门课程存在内容交叉,根据不同的内容采用灵活多变的教学方式,才能激发学生学习兴趣[4],发挥主观能动性,提高课堂教学效果。在今后的工作中,将继续探讨教学改革方法,进一步提高学习效果。

参考文献:

[1]王昊.计算机组成原理教学改革和实践[J].辽宁工业大学学报(社会科学版),2015,(3):117-119.

[2]u红文,聂雅琳.计算机组成原理教学设计研究与实践[J].洛阳理工学院学报(自然科学版),2008,(1):87-90.

[3]纪禄平,罗克露.计算机组成原理创新型教学方法设计[J].计算机教育,2011,(4):85-87.

[4]刘怀愚,葛方振,李Z,宋文.计算机组成原理教学方法探讨[J].牡丹江师范学院学报(自然科学版),2015,(2):61-63.

ResearchontheteachingmodeofprincipleofComputerComposition

penGYa-qin,wanGwan-sheng

(DepartmentofinformationScienceandengineering,SanjiangUniversity,nanjing,Jiangsu210012,China)

计算机组成原理教学篇5

关键词:mipS;计算机组成原理;CpU实验;教学改革;FpGa

中图分类号:tp3文献标识码:a文章编号:1009-3044(2014)28-6704-03

1概述

计算机学科是一门与实践结合非常紧密的课程,纯理论化的教学已经无法满足学生掌握计算机知识以及培养实践能力的需求了。因此,计算机实验课程在现有的计算机教学体系中所占的比例越来越高。该文针对所关注的计算机组成原理课程的教学方法,结合我们自己所开设的组成原理实践课程,针对目前教学中所存在的一些问题,对组成原理的实验课程方法作进一步的改进,使其更符合现在国内教学现状的需求,提高学生的实验效率。

2CpU实验课程简介

我们的CpU实验课程主要目标为:指导学生设计出一个符合mipS标准的CpU。从设计初级的数字逻辑器件出发,到实现一个完整的CpU,然后学生们可以围绕自己设计的CpU编写汇编器、高级语言编译器甚至简单的操作系统[1,2]。让学生可以完整地了解计算机的运行原理。

参与本课程的学生所要实现的CpU使用如表1所示的31条指令,可以覆盖大部分简单程序的需求,其具体功能可以参考mipS指令手册[3-5]。

前两个实验比较简单,主要为了让学生能够熟悉整个的开发环境与流程,而且译码器和选择器也是将来在其他实验中所需要使用到的部件。从第三个实验开始,学生们将从简到难地一步步实现CpU中的各个部件的设计,并在第七个实验中最终完成一个完整的CpU。

3实验教学存在的问题

3.1testbench用例不完善

我们的CpU实验课程主要是对于硬件的设计,在硬件设计的过程中,testbench的编写占有着举足轻重的地位。而参与我们课程的学生绝大多数都是第一次接触硬件的设计,并且对于CpU的各个部件并没有一个良好的认识。所以对于这些参与到我们课程的学生来说,有相当一部分学生没有编写完备的testbench的能力与意识。在遇到相对复杂的模块时,学生们可能无法发现自己设计中的缺陷,这为以后的设计留下了一定的隐患。而且随着工程越来越大时,初期的错误就越来越难被发现。

3.2学生开发机器运行缓慢

我们这门实验课是“口袋实验室”,参与到我们这项课程的同学都会将实验板带回宿舍作实验,由于,学生各自的计算机性能并不能完全满足CpU实验的设计需求。特别是随着工程的增大,在生成CpU后仿真的模型以及生成开发板所需的电路文件时,往往需要相当长的时间,并且这个过程在CpU的开发过程中往往需要执行很多次。而在此期间,学生往往只能等待而无法进行课程的学习,这会造成极大的时间浪费,降低学习效率的同时也很有可能增加学生的挫败感。

3.3应用开发效率低下

CpU要执行有一定功能的程序才会显得有意义,我们的课程会鼓励学生在自己设计的CpU上开发一些小应用来显示CpU的实用性。我们目前的课程只提供了基于我们课程所涉及指令的汇编器,但对于参加我们课程的学生而言,使用汇编程序编写应用所需要的技巧与经验往往他们都不具备,这增加了小应用程序开发的难度,不利于学生们创意与想法的拓展。在我们的课程实践中,学生们往往都会选择开发一些类似的容易实现的应用程序,造成了应用程序的同质化。

3.4没有统一的评分体系

任何课程都要面临的一个考核的问题。如何能够公平客观的评价学生在整个课程中的表现不仅对于参与课程的学生,对于此课程未来的发展都至关重要。目前我们的课程主要依赖学生的自行演示以及助教的手工查看。此方法不仅效率低下,每周都要花大量的时间在实验结果的检查上,而且由于参与检查的人数较多不容易保持评价标准的一致性。

目前我们的课程仍处于试验性阶段,参与的学生人数较少,若未来将此课程推广,手工检查的方式将无法满足课程的需求。

4针对目前教学中的问题的解决方法

4.1统一的部件接口和测试平台

通过给学生提供统一的部件接口,我们可以为学生提供统一的测试平台。在完成每个部件的编写后,学生们首先可以使用自己编写的testbench来验证自己设计的正确性,随后再由统一的测试平台来进一步确认部件的设计。这样就可以有效地避免由于testbench的不完善而造成的部件设计缺陷,提高了每次部件实验结果的可靠性,从而为接下来的实验进程打下良好的基础。

4.2实验结果验证平台

统一的部件接口使得自动化测试以及自动评分成为了可能。学生们可以将自己编写的代码提交到我们的测试平台,运行统一的testbench,通过对比学生代码的运行结果和标准的测试结果就可以为学生们编写的部件提供一个客观合理的评价。

我们可以根据学生每次提交的正确率以及最终通过测试所用的提交次数来作为学生每次实验的评价参考。通过这种方法,我们可以不再逐个检查学生的实验结果,不仅可以免去每次人工检查实验结果的时间,也大大提高了每次实验评价的客观性。

4.3CpU模拟器

我们的课程设计了一个基于部分mipS指令集CpU的模拟器,其输入可以为自行编写的汇编程序,模拟器的运行的结果可以作为我们CpU运行结果的参照。同时我们课程中还拥有一个31条指令的汇编器,其输入同样为学生自行编写的汇编程序,而输出是二进制或十六进制的机器码文件,该文件可以导入到学生自己的CpU中运行。然后学生可以通过对比modelsim的仿真结果与模拟器的运行结果来验证自己所设计的CpU的正确性。我们的课程也提供了一些小程序来帮助学生进行CpU的验证。

4.4综合任务服务器

大多数情况下,学生们所使用的pC的性能进行完整的综合与布线任务时往往都会花费很长的时间。我们可以为他们提供一个专门进行繁重计算任务的服务器。

学生们可以提交自己的设计到服务器上,通过服务器来生成所需的电路文件,将此文件下载到本地后载入FpGa,完成下板工作。鉴于服务器相对学生pC有着更出色的性能以及统一的工作环境,可以大大节省学生们完成一次设计修改的时间,提高学生们的开发效率。

4.5合理使用C语言开发环境

高级语言可以大大降低程序的开发难度,而且通过完善的iDe(集成开发环境)可以更方便的确保程序的正确性。目前大部分学生所编写的小程序都不会超出我们课程所使用的指令集。GCC编译器在默认的配置下其编译出的mipS指令集不会超出mipS-i中的所有指令。经过多次测试,在多数情况下编译出的指令多并不会超出我们目前所使用的31条指令。对于那些不在我们31条指令集范围内的mipS-i指令,其中有相当一部分指令是可以使用现有的指令组合来完成其功能的,我们仅需对GCC所编译出的汇编程序进行一定的修改即可使用。这为我们使用C语言编写开发板程序提供了很好的前提。

学生们可以首先使用C语言在现有的成熟iDe上进行编程,在验证了程序的正确性后使用GCC将C语言编译为mipS-i的汇编程序,在对编译完成的汇编程序进行一些修改后可以使用我们课程提供的汇编器生成机器码来运行在学生自己设计的CpU上。

由于学生们对于C语言的熟悉程度要远高于mipS的汇编指令,通过合理使用C语言进行编程,可以大大降低学生们编写应用程序的难度。

5总结

对实验进行了诸多改进后,学生们在课程实验中的开发效率得到了明显的提升,这也使得学生们更有兴趣将精力投入到实验课程中。同时,在线平台的引入也减小了开展试验课程的人力投入,打下了推广该实验的基础。该文结合了我们现有CpU实验课程开展情况,针对实验课程中所出现的问题,提出了针对性的解决方案。这一系列的改进方案将学生从一些不必要的负担中解放出来,从而使得学生能够将更多的精力投入到计算机组成原理的学习中。这些方案的引入将会使得我们现有的课程变得更加具有可持续性,有利于将来此课程的进一步拓展。

参考文献:

[1]王力生,黄仁智.面向计算机专业的递进式综合实验教学方案[J].计算机教育,2013(12):15-18.

[2]LuS,LiG,wangY.CpUDesignforComputerintegratedexperiment[J].FeCS12,2012(8):594-600.

[3]mipStechnologies,mipS32tmarchitectureforprogrammersVolumei:introductiontothemipS32tmarchitecture[Z].Revision1.00,2002.

计算机组成原理教学篇6

关键词:医学信息;计算机组成原理;教学改革

中图分类号:G642文献标识码:a文章编号:1009-3044(2010)04-0924-02

teachingDiscussionoftheCourseofprinciplesofComputerorganizationintheSpecialtyofmedicineandinformation

YULei,wanGZong-dian,YanGSong-tao,KanHong-xing,DUChun-min

(instituteofmedicineandinformationtechnology,anhuiUniversityoftraditionalChinesemedicine,Hefei230031,China)

abstract:Combinedwiththesituationofhighmedicalcollege,aimedatthecharacteristicofthespecialtyofmedicineandinformation,theteachingexperienceofthecourseofprinciplesofcomputerorganizationhasbeendiscussedandithasbeenelaboratedintheaspectsoftheselectionofteachingcontents,theimprovementofteachingmethodandthereformofteachingpractice.

Keywords:medicineandinformation;principlesofcomputerorganization;teachingreform

随着科学技术的发展,交叉性学科日益增多,医学信息学就是一门涵盖生物、计算机和医学的交叉性学科。随着计算机技术在医疗行业应用的日益广泛,目前国内很多医科类院校相继开设了医学信息类的相关专业。就我校安徽中医学院而言,相继开设了医药信息管理、医药软件开发和医药信息工程监理三个方向的本科专业。由于是培养医药信息的复合型人才,在课程的设置上,除了计算机专业的主干课程外,还有一些医药类及管理类课程,再加上三个方向的本科专业各有侧重点,所以医学信息类专业的课程设置不像工科院校计算机专业那样很深很细。但在我校的教学计划中,三个方向的专业均开设了《计算机组成原理》课程,是三个方向专业中均开设的唯一一门硬件类课。可见,搞好《计算机组成原理》课程教学,对于我校医学信息类专业整体教学质量的提高有着举足轻重的作用。下面,笔者结合本人的实际教学体会,就医科院校医学信息类专业这门课程的教学问题和大家作一下探讨。

1联系医药背景阐述课程的重要性

目前,有不少学生对硬件类的课程不太重视,认为硬件类课程与他们将来的就业联系不太紧密,可有可无。在一些工科类院校中“重软件、轻硬件”的现象比较普遍,在医学信息类专业中尤为明显。作为该类课程的授课教师,在上课的整个过程中,就应该根据自己的经历告知此类课程的重要性:硬件知识与软件知识如同计算机学科知识的两条手,缺一不可,任何一样学不好,对将来的发展都会有影响。学习计算机,不光要知道“是什么”,还要知道“为什么”。对于医学信息类专业的学生,考虑到他们学习和将来就业的医学背景,特别要联系医药环境说一说:比如作为一个医学信息类专业的学生,将来除了要和医院信息系统HiS打交道外,可能还要接触一些医疗设备,而现在医院的很多检查设备如Ct、B超实际上都是计算机,只不过与日常的pC机相比,就是输入设备换了一下。还有在一些沿海城市的医院,医生的处方一开过,护士拿的pDa(实际上就是计算机的一个输出终端)上就显示处方的详细信息,以便护士更好的服务病人。所以,要了解现代化的医疗设备,就必须学习一些计算机的硬件知识,掌握计算机的组成原理。这样比泛泛讲述学生的印象会更深刻。

2教学内容的选择

就我校而言,医药信息管理、医药软件开发和医药信息工程监理三个方向的本科专业均开设《计算机组成原理》课程,但由于各专业的侧重点不一样,所以在授课的内容和深度上有着不小的区别。

2.1医药软件开发专业

医药软件开发方向是挂靠在计算机科学与技术专业下,在我校开设的医学信息类的三个专业中,对《计算机组成原理》这门课程要求是最高的,属于专业必修课。

由于本专业的学生在学习这门课程时,已系统学习过《大学物理》、《模拟电子》、《数字电路》、《汇编语言程序设计》等硬件类基础课程,并且在后继课程中将继续学习《微型计算机原理及接口技术》、《计算机系统结构》等硬件类专业课程。而硬件类课程中有些教材上的内容是重复的,所以在上《计算机组成原理》这门课时,要与相关课程的教师沟通,对于前面课程中已系统讲述过和后继课程中将详细讲述的内容可以省略不讲或者一笔带过,而把有限的课时用在《计算机组成原理》这门课本身侧重的内容上。比如:在上第二章运算器时,对于“原码、反码和补码”就可以一笔带过,这部分知识在《汇编语言程序设计》中就已详细讲过;对于“基本逻辑元件”就可以不讲,这部分知识在《数字逻辑》中就已详细讲过;在上第三章存储器时,对于“存储器芯片的扩展”就可以省略不讲,因为在后继课程《微型计算机原理及接口技术》将会详细阐述;在上第四章指令系统时,对于“指令的格式和种类”以及“寻址方式”就省略不讲,这部分知识在《汇编语言程序设计》中就已详细讲过;在上第八章外部设备时,对于每种外设的原理就可以一笔带过,因为后面选修课程《多媒体技术》中会详细阐述。

2.2医药信息管理方向专业和医药信息工程监理方向专业

医药信息管理方向专业和医药信息工程监理方向专业都是挂靠在信息管理和信息系统专业之下,《计算机组成原理》这门课程在这两个专业中都属专业限选课。在这两个专业中,侧重点与医药软件开发专业不太一样,其开设的计算机类课程主要是软件类的相关课程,而相关的硬件类基础课程没有开设或者要求很低。所以在授课过程中对于所涉及到的硬件基础知识都要讲述,如前面提到的医药软件开发方向专业所省略的内容,而对于一些难度较大的内容,如几种存储器的各自电路组成与结构、硬布线控制器的设计等,就可以不占用上课时间,让有兴趣的学生课下自学。这样,让学生在有限的课时中掌握计算机学科更多的硬件知识,以达到专业选修的目的。

3教学方法的改进

3.1运用类比方法帮助学生理解

《计算机组成原理》这门课涉及到的概念较多,非常抽象枯燥。运用类比方法,将难懂的概念和原理类比成他们可理解并接受的事件,然后再扩展成书本上的内容,这样教学效果非常好。

例如,在讲解“总线的仲裁部分”中的“链式查询”方式时,可类比成“学生在食堂排队等着吃午餐”这个情境。餐点是一样一样的出来,每次只能有一个同学吃到(只能有一个部件获得总线的控制权),谁吃到由老师判定(中央仲裁器判定总线的授权)。第一次出来一个包子,因为并不是所有的同学都喜欢吃包子,谁想吃就向老师提出申请(同一时刻,可能有几个部件向总线仲裁器提出总线请求)。在这种方式下,老师会将包子传递给离他最近的同学(链式仲裁优先级最高的部件离仲裁器最近)。如果这个同学刚才没有发出要吃包子的申请,就会传给他的下面同学,依次类推,直到传到刚才第一个发出吃包子请求的同学为止,那么他得到了吃包子的权利(离仲裁器最近的刚才发出请求的部件获得总线的控制权,某个部件只有在它前面所有的部件都没有提出申请的情况下才会获得总线控制权)。这样一来,学生在轻松快乐中就理解了这个原理。

类似的例子还有很多:在讲述“补码”时就可用钟表校准的方法来类比;在讲“总线”时用城市的道路来类比,在讲“CpU内部数据通路”时可用城市自来水管网进行类比[1]等等。这里就不再一一举例了。

3.2充分利用多媒体课件

《计算机组成原理》课程中很多内容比较抽象、难以理解,如果采用单纯的板书讲述,教学难度很大。为此可充分的利用多媒体课件,将所讲述的内容通过动画并辅以文字解释的形式展现出来,以便学生的理解。如在讲解“指令的执行过程”时,首先将控制器各部分的组成及功能以图解的形式分步显示,然后再以分步动画的形式展示五条典型指令的执行过程,使学生对此内容有更加感性的认识,增强了学习效果。

4实践环节的改革

在目前很多工科类院校中,《计算机组成原理》的实践环节分为课内实验和课程设计两部分,而由于医学信息类专业的要求不同和课时限制,我校目前仅开设课内实验部分。

首先,为使学生更直观、更全面的理解将要学习的知识,可在讲述该门课程正式内容之前(即在第二章之前)进行2到4个课时的计算机组装实验[2-3]。这个实验是让学生自己动手把计算机的硬件如CpU、内存、硬盘、光驱、主板等进行拆卸及组装,使学生在锻炼实际操作能力的同时也对目前pC机的内部结构建立起初步的感性认识,为顺利进行后续教学做好铺垫。

接下来的是基于组成原理实验箱的验证性实验,以便学生及时的巩固所学的理论知识。但由于现在的组成原理实验箱元件都是集成好的,无须学生自己动手安装,只要按照原理图正确连线便可看到结果,所以学生对硬件系统组成的理解基本停留在原理图层面。为此,可对实践环节做些改进,引导学生根据原理图和实际使用的器件查阅其实际电气参数及封状等工程说明文档,并要求在实验箱中找出具体的芯片位置,说明实际的数据通路等[4]。这样,在一定程度上改善了医学信息类专业多数学生“偏软怕硬”的状况。

特别提出的是,针对医学信息类专业学生就业的医药背景,可让他们在学习完该课程后参观一下目前医院的几种主要的医疗设备,如Ct、B超等,并请相关医技人员讲一下各种设备的原理及操作方法,以使学生对这门课程的学习意义有更加深刻的认识,真正做到“理论联系实际”。这一点我校正在积极探索中。

参考文献:

[1]黎慧,刘旭明.计算机组成原理课程教学探讨[J].信息技术,2007(15):85-86.

[2]穆晓芳,阴桂梅计算机组成原理在师范院校教学改革的探讨[J].科技信息.2008(35):29-30.

计算机组成原理教学篇7

关键词:计算机组成原理;教学改革;启发式教学

“计算机组成原理”是计算机专业的专业基础课,学生通过本课程的学习,可以从层次的观点掌握计算机组成和运行机制方面的基本概念、基本原理、基本设计和分析方法等系统知识,奠定必要的专业知识基础;可以从系统的观点,理解提高计算机整机的软硬件性能的各种可行途径,了解计算机系统中软件、硬件的功能划分和相互配合关系;从计算机系统结构的角度初步了解进一步提高系统性能的主体思想,能站在更高层次上思考和解决工作中遇到的问题。

本课程是计算机专业的核心课程之一,在整个计算机专业课教学中起着承上启下的作用,为后续课程的学习打下重要的基础。但是在实际教学过程中,往往不能达到预期的理想教学效果。主要包括以下一些问题:

一是课程内容比较抽象,学生不易理解,且课程的内容比较死板,往往无法激发学生的学习兴趣。

二是与其他相关课程联系紧密,在教学中往往会较多涉及其他相关课程的内容,而受到课时限制不可能讲授所有知识点。

三是课程有些内容相对陈旧,跟不上计算机技术发展的最新趋势,尤其实践教学环节薄弱。

对“计算机组成原理”课程教学进行改革,提高课程的教学质量、达到预期的教学效果是当前急需解决的问题。

1.合理安排教学内容

一方面,“计算机组成原理”课程的特点是内容较多、概念抽象,难学,难懂。为了搞好“计算机组成原理”的课程建设,教师必须与时俱进,改进教学内容,对于教材的内容做适当删减和补充。比如在“指令格式”举例中,教材所介绍的机型目前已经很少使用了,可以适当缩减内容;而对于一些应用比较多的机型的指令格式可以适当增加,这样学生既了解了不同机器指令格式设计上的差别,也对当前应用较多的机器指令格式有所认识,具有更好的实用效果。

再比如在讲解“存储器”这部分内容时,软盘存储器、磁带存储器等也已经很少被使用,对这些内容也可以适当删减,而补充闪存的存储原理,这样学生在学习理论知识的同时也学到与实践和应用相关的知识。

另一方面,“计算机组成原理”课程与其他一些专业课程密切相关,在安排教学内容时要尽量考虑与其先修及后续课程的融合。“计算机组成原理”课程的先修课程包括模拟电子技术、数字逻辑、汇编语言程序设计等;后续课为程操作系统、计算机网络、计算机体系结构,各专业课程知识之间是密切联系的,如果教学只局限于本课程,就会造成学生知识结构过于单一,不能很好地融会贯通,形成完整的科学体系,因此,讲授中应重视与其他相关课程的衔接与融合。比如讲解“虚拟存储器”时,可以与操作系统课程中的多任务管理相结合;讲解“指令系统”时,可以引用汇编程序设计课程中的一些80×86中的指令实例等。

2.采用启发式教学方法

启发式教学是教师启发学生积极思维,使学生主动掌握知识的教学方法。启发式教学应做到内容突出,通过问题引出重点和难点内容,然后分析问题并启发学生解决问题,达到更好的效果。比如在讲解“溢出”这部分内容时,如果只是简单介绍溢出的概念,学生就不容易理解。我们可以通过实际补码加减运算时两个正数相加结果为负数,以及两个负数相加结果却为正数来引入溢出的概念,引导学生分析溢出产生的原因是什么,这样就会收到更好的教学效果。

教师在授课时应与学生互动,避免教师一味讲解的情况发生,充分激发学生的主动性。对一些重点内容,教师可以多提出一些问题让学生思考,这样当教师再讲解答案时,学生可以有更深刻的印象。比如讲解“寻址方式”这部分内容时,可以让学生比较各种寻址方式的特点,然后再讲解各种寻址方式的主要应用领域,如此就容易记忆了。

“计算机组成原理”课程理论性强,概念比较多且比较抽象,由于计算机设计与实现的很多方法和技术就是来源于日常生活,因此,在讲解时可以尽量拿日常生活中的一些例子来进行类比,帮助学生理解概念。比如可以用钟表的时间校准来类比补码的实现;用宾馆的房间来类比存储器单元的编址;用交通道路来类比总线;用员工职务高低来类比优先级别等。教师对课程的内容做到充分掌握,讲课时就可以用一些通俗易懂的实例来解释复杂的概念,真正提高教学质量。

3.采用多媒体与黑板相结合的教学手段

充分采用多媒体的手段来授课是必要的,因为通过多媒体课件的演示,可以给学生一个感性、直观的认识,使学生集中注意力加深对内容的理解。比如在讲解“指令周期”的数据流时,通过一个工作流程动画的演示,从取指到分析译码到最后指令的执行过程一目了然,学生很容易理解整个过程。但是教师并不能完全依赖于多媒体手段,而是要与黑板讲授方式结合起来。因为某些推导过程如果通过多媒体课件来放映,不利于学生理解结果是如何推导出来的。比如Booth法,它是由校正法推导得来的,因此最好在黑板上讲解整个推导过程,学生才能有深刻的印象。

4.实验教学注重实用性

“计算机组成原理”这门课属于工程性、技术性和实践性都特别强的一门课。因此,在开展好课堂教学的同时,必须对实验教学环节给以足够的重视,要有充足的实验学时,提供实验性能良好的实验计算机系统或实验装置,能进行反映主要教学内容的、水平较高的实验项目。教学的整个过程中,在深化计算机各功能部件实验的同时,加强对计算机整机硬件系统组成与运行原理有关内容的实验;在坚持以硬件知识为主的同时,加深对计算机系统中软硬件的联系与配合的认识。因此,在实践教学中要注重做到:

(1)及时更新实验设备,实验设备的选择要考虑是否能利用计算机新的技术,是否能开发学生的实践能力。

(2)设置合理的实验项目,实验的内容应与课程重点内容相对应,除了运算器、存储器、数据通路等基本验证性实验外。还应适当增加设计性实验,以增强学生的实际动手能力。

(3)从根本上改变学生“重理论,轻实验”的态度,要求大家必须完整记录并整理实验数据,认真完成实验报告。

改进后的计算机组成原理实验教学将应用性、技术的前沿性和趣味性很好地结合在一起,与课程内容完全对应,使学生更容易理解相关理论知识。

计算机技术的发展日新月异,计算机教育也应该与时俱进,跟上计算机发展的步伐。作为一名教师,应该从课程的内容,授课方法,教学手段等多方面积极进行改革,从而提高教学质量,培养出优秀的计算机人才。

参考文献:

[1]唐朔飞.计算机组成原理(第2版)[m].北京:高等教育出版社,2008.

计算机组成原理教学篇8

关键词:计算机组成原理;教学手段;主存

中图分类号:tp3文献标识码:a文章编号:1009-3044(2013)16-3767-03

1概述

发展计算机的技术,硬件设计的人才培养不可或缺。若要设计某个部件,首先得了解该部件存在的目的,然后掌握该部件的工作原理,才能设计出来,或改进得更好。学生想要掌握这些知识,需要学习多门课程,计算机组成原理就是其中典型的一门。计算机组成原理需要给学生讲述计算机的各种主要组成部件以及它们的工作原理。为计算机类专业的后继课程学习打下基础,也是学生以后从事计算机设计的必修知识。

计算机从诞生到现在,经过了几十年,根据不同的需要,产生的部件和理论都是多种多样。而且计算机仍然在迅速发展中。这些导致了计算机组成原理课程的内容繁多。而且由于计算机的设计更倾向于系统工程,课程的理论讲解若不结合实践设计,将使学生理解肤浅,很难应用于实际。这些情况都给授课教师提出更高的要求。教师如何能够通过课程教学,把原理讲清楚,包括整体系统开发的概念,是一个值得探讨的问题。

现在大多数计算机组成原理课程教学采用冯·诺依曼计算机结构的部件划分方式[1]。不可否认,运算器、控制器、存储器、输入设备和输出设备等五大部件仍然覆盖了现在大多数的计算机部件。从模块来看,如果能够掌握各个模块的工作原理及其相互作用关系,对课程掌握是达到目的的。但是对刚开始了解计算机内部的学生来说,在听讲各个模块孤立的内部工作原理时,将会觉得枯燥、不知所措,“学这些内容有什么用”会一直萦绕心中。

对五大部件的介绍,需要不断地提及系统性,关注各部件之间的关系。这种讲述方式可以以某个部件为中心或主线。冯·诺依曼计算机结构是受限于当时计算机发展的情况,以运算器为中心。现代的计算机已转化为以存储器为中心[2]。从没有存储器的第一台计算机eniaC到现在的以存储器为中心的体系结构的计算机,得益于存储器的不断发展。而现在的学生,如果以后想设计出更加先进的计算机,从存储器的理解开始,不失为一种可行途径。唐朔飞老师著的教材[2]就把存储器放在了中心的位置,但是从内容分布来看,仍然是介绍完一个部件,再介绍另一个,而很少显式地体现出它们之间的关系,需要教师在介绍的时候讲述、强调。

本文提出一种以数据为主线的计算机组成原理课程讲述方法,以供大家探讨。该方法主要以主存的工作原理、读写操作、数据解析等数据操作为主线,以数据为中心的软件模拟为辅助手段,模拟硬件设计流程,从而让学生由熟知的硬件单元开始,不断逐步扩展,了解新的内容,直至掌握计算机的各个主要组成部件的工作原理。

2教学模式改革

在一个学期的一门课的课时里,需要讲述计算机许多部件的组成、工作原理。由于时间的限制,不可能引入太多新颖的、时髦的具体器件介绍来吸引学生[3],因此还是应该由浅入深,讲清楚各个部件的基本工作原理,并留下问题,抛砖引玉。让学生有了一定基础后,可以对自己感兴趣的内容继续探索和研究。

基本工作原理是基础,是学习与理解计算机组成与运行机制的核心知识,其特点是稳定性(不随时间变迁而改变)和通用性(不随具体机型而变化),是学生一定要掌握的重要部分[4]。现在计算机的基本功能就是保存数据、处理数据和表现数据。这些功能都要依赖于数据。而学生在学习计算机组成原理时,一般已经掌握至少1门程序语言,对数据已经有一定的了解。如果从数据入手,将可使学生由熟悉的内容开始学习,更容易接受。

另外,现在在很多学校里,由于经费等原因,计算机组成原理教学缺乏一个能让教师和学生运用工程实践理念进行设计和实现计算机系统的实验平台[4]。从产业界来看,由于硬件设计的成本昂贵,很多硬件设计的前期都是要经过软件模拟的验证的,所以软件模拟也是让学生逐步熟悉设计的过程。硬件成本比较高,但简单软件模拟应该是可以做到的。

对于计算机组成原理这样系统性课程,软件模拟又不能一蹴而就,所以需要形成一个可以把课程内容逐步加进去且方便软件模拟实现的教学方式。从软件模拟的角度,由数据入手,可以逐个讲解以下几个内容:数据的存储模拟、数据的读写、数据的数值解析、数据的指令解析等。

2.1数据的存储模拟

2.2主存数据读出、写入

图3给出了两种主要的读数据方式,其中“(H)”代表十六进制数,“(B)”代表二进制数。地址分配方式可以选择大端或小端的方式。从该模拟中,学生可以了解的读数据必须提供地址,而所读得的数据就可以通过可视化的主存观察到。特别是当从同一地址读出多字节字数据时,采用不同地址分配方式,将组成不同的字。通过可视化的主存,让学生直接比对所读得的数据和主存中保存的数据,将能够让他们更能掌握这方面知识。另外,还可以加入多个层次的存储器,在读取过程中,人为地为各存储器构造一些不同长度延时,从而讲述存储器速度、容量和位价,还有高速缓冲器的作用等。

2.3主存数据解析

主存数据除了能够被解析成数值,还能够被解析成机器指令。这同样需要从主存里读出数据并解析,但是就不像数值那样固定,因为它跟具体的指令系统有关。不同指令系统,对于相同的主存数据的解释可能是不一样的。而提供一个模拟,让学生自己设计指令系统,从而解析从主存里读出的数据,将可以使他们更能理解指令系统内容。类似指令系统,可以定义指令周期、流水线、微指令、控制形成等内容。

2.4学生的自主模拟实现

学生在学习计算机组成原理的时候,应该已经学习过编程语言,已经可以根据一些逻辑要求编写和运行程序,并得到正确的结果。那么,教师可以给定《电子技术》、《数字逻辑》等在计算机组成原理模拟中会用到的基本模块,比如存储单元,然后鼓励学生主动实现各个知识点的模拟。产业界的硬件设计也是从软件模拟检验开始。当学生对模块进行模拟时,肯定是建立在掌握其工作原理的基础之上。当实现了模拟,对学生来说是完成了自己独有的设计,会产生成就感,不断推进学习。那么再让他们设计硬件模块,将能够更容易上手。

3结论

本文提出了一种以数据为主线的计算机组成原理教学方法。该方法提出把理论讲解和实践相结合,实践除了硬件实验外,还包括教师提供的模拟平台的实验,通过不同值的输入来了解工作原理,也可以让学生进行工作原理的自主模拟,加深理解。该方法从学生熟悉的数据开始,从存储、读写到解析,通过主存可视化,让学生在学习时更加直观、易懂。

参考文献:

[1]岳珂娟.冯·诺依曼体系结构在计算机组成原理教学中的重要性[J].计算机教育,2012(24):99-101.

[2]唐朔飞.计算机组成原理[m].第2版.北京:高等教育出版社,2008.

计算机组成原理教学篇9

计算机组成原理在我院的软件工程系被定为专业基础课,在学科体系中起着基础性和准备指导性的作用。目标是通过该课程的学习,使学生掌握计算机各功能部件及整机运行的工作原理和方法,并为学生建立起整机的概念。为后期的系统开发的理论、实践的学习奠定基础。但该门课程具有概念多、知识点多、内容抽象等特点,加上学生思想上有“偏软”现象,使该课程的组织教学有一定难度。本文将对计算机组成原理的教学现状、教学方法、教学内容、及通过实践等辅助教学手段来改进教学等方面进行阐述,以期对一般本科院校的计算机组成原理教学有一定借鉴促进作用。

一、计算机组成原理的课程的教学现状

(一)课程本身的特点决定这门课程教学难度大

1、基础概念多的特点

计算机组成原理这门课程由于内容较多,所涉及的基础概念也较多。在cpu模块有微程序、微指令及流水线等系统类概念,其中alu部分有原码、补码等与编码相关的概念;在存储器部分,与存储器单元相关的有ram、sram、dram、rom及各种rom设备,与存储系统相关的有cache存储器、虚拟存储器等概念;外设部分有中断等信息的各种传送方法。对整个计算机系统,有计算机的各种性能指标。对各个概念,靠单本文由收集整理纯记忆的方法很难掌握,必须放在系统中学习。

2、理论性强的特点

计算机组成原理这门课程首先要考虑其原理性,现在仍然采用冯.诺依曼式计算机模型作为基本模型,但也要考虑现代计算机的发展,以融入实际的需要。如何对内容进行合理的安排、衔接,对任课教师来说,是一不小的挑战。

3、内容抽象的特点

要让学生明白计算机的工作原理、方法和实现,需弄清数据和信号在计算机各部件件间的流动情况,对学生来说,这看不见也摸不着,如何将信息流动的复杂情况形象、生动地向学生展示、讲解,教师对此需要作出相当的努力。

(二)学生对该们课程的认识误区

大部分的学生认为,我们学的专业是软件工程,专业是“偏软”的,而计算机组成原理这门课程是“偏硬”的,对其转为实际能力表示怀疑。由于对这门课程在学科中的作用认识不明确,在学生中就有一种印象,学习这门课程主要目的是修学分的需要,另外还有考研的需要,但考研的学生比例较小,再加上这门课程本身的学习难度,因此认真学习且能学好这门课程的人数就不多了。

二、对组成原理教学的几点建议

(一)对学生对该门课程的认识进行相应正确引导

由于是一门基础理论课,加上本身的教学内容特点,可能内容较为枯燥,因此学生可能会因为课程内容本身而不感兴趣。因此我们要在思想上要对学生加以引导,使学生认识到,学习这门课程不仅对计算机本身的运转有更深刻的认识,更对与硬件相关的嵌入式系统设计,软件的设计实现有基础指导作用。并为学生在计算机领域的进一步研究和发展奠定基础。因此,学生不能因为这门课程“偏硬”,而自己的专业和就业方向“偏软”就否定这门课程的重要性。

(二)根据课程设置需要对教学学时进行相应调整

根据不同的专业,学生的不同层次,及大部分学生的就业方向对该课时设置不同的教学学时。报告[3]中指出,对于多数调查对象为毕业生的调查结果,多数人认为这门课开设为64、48或32学时。而48学时的人稍多些。这与本人想法基本一致,对于非计算机专业,作为导论型的,32学时足矣;对于软件专业,其目的主要是通过掌握其基本原理,能更好的为软件系统的设计服务,开设48学时,其中8学时实验较合理。而对于偏硬件的计算机专业,可以根据需要,开设56或64学时。

(三)根据专业要求及课程设置对教学内容作出调整

计算机组成原理在学科中的地位被定为专业基础课,在学科中具有承上启下的作用,希望通过本门课程的学习,使学生对计算机硬件的组成、各部件及各部件之间运转情况进行了解。对于软件专业的学生来说,为硬件相关的嵌入式系统设计及其他软件的设计奠定基础。计算机组成原理从内容上主要分为三部分:cpu、存储器、外设。但由于学时的限制及课程的安排(本专业开设了微机原理课,外设是其讲授重点),重点讲授cpu和存储器两部分。存储器内容分为主存储器和存储体系两部分内容。前者讲述存储元器件的基本原理,而后者则是cache、主存和辅存之间的区别与联系,如果开设了计算机体系结构这么课程,这存储体系的内容可简略介绍,具体内容由计算机体系结构讲解。cpu部分与存储器一样,在详细介绍完其核心部件alu后,重点即是中央处理器章节,即指令的运行,而指令的运行需要访问存储器,这就将cpu与存储体系联系起来了。故这两部分又是有联系的。由此有关硬件的内容就脉络清晰、分工明确了。

(四)对实验内容进行合理的学时分配

实验课对于一门课程来说,主要目的是加深对知识点认识,使抽象的理论变得形象、具体。因此,对本身理论性强,内容抽象的计算机组成原理课程,实验课就显得尤为重要。我们采用的是西安唐都科教仪器公司生产的实验箱作为实验设备。与其相配套的实验有9个,其中主要包括与cpu中的与alu相关的3个实验、静态存储器存取实验、微程序控制实验及4个模型机的设计类实验。根据实验学时的设置,只有8个学时的实验课。8个学时全部完成这些实验有一定难度,因此,可将这些试验进行合理的学时分配,如第1、2个学时完成第一、二个实验,因为刚开始做硬件实验不熟悉,但第二个运算器进位实验教简单,可顺便完成;有了前面的基础,完成第三个运算器移位控制实验就简单多了,因此和第四个稍麻烦的静态存储器存取试验合并在第3、4学时完成;第5个实验内容较复杂,可单独安排2个学时完成;这样就留出了2学时来研究后面的模型及设计与实现的实验了。

(五)以实践为手段带动学生的学习积极性

为了提高学生的学习积极性,加深对知识的掌握,实践就显得尤为重要。对软件专业的学生来说,利用软件对所学知识进行模拟不失为一种好的办法。对于计算机组成原理这门课程,实验内容较为抽象,不易被理解,因此,采用“硬件软化”的方法,对课程的实验内容等进行模拟,既可加深对知识的掌握,又可提高大家的软件设计、编程能力。本系为了提高大家参与的积极性,采用了学生科技立项的办法,系里拿出一部分资金,将“计算机组成原理虚拟实验系统的设计与实现”作为一学生科技项目,鼓励学生组队参加,和其他项目一起参加评比,并进行奖励的办法,在学生中得到了良好的响应。学生做出的项目教师可拿来作为课堂教学用,并可鼓励学生在此基础上进行改进,进一步完善。以后甚至可以将系统分块,让学生分组做,并作为课后作业的一部分,计入学生平时成绩。以此提高学生的学习兴趣和动力。

三、结语

计算机组成原理教学篇10

关键词:计算机组成原理;综合设计性实验;教学实践

中图分类号:G642.0文献标志码:a文章编号:1674-9324(2014)22-0216-03

aBriefanalysisofteachingpracticeonComprehensiveDesigningexperimentofComputerCompositionprinciple

Xiaomin

(DepartmentofComputerScienceandtechnology,GuizhouUniversity,Guiyang550025China)

abstract:accordingtothefeaturesofComputerCompositionprinciplecourse,thisarticleanalyzesthenecessityofcarryingoutcomprehensivedesigningexperiment.takedesigningabasicmodelcomputer,forexample,theteachingmethodofcomprehensivedesigningexperimentisdescribedinthispaper.ithasacertaindirectingmeaningtotheexperimentteachingofcomputercompositionprinciple.

Keywords:ComputerCompositionprinciple;comprehensivedesigningexperiment;teachingpractice

计算机组成原理是计算机专业及其相关专业的一门专业基础课程,在计算机硬件课程体系中起着承前启后的作用,具有举足轻重的地位。该门课程理论性强、较为抽象、内容繁杂,学生在学习过程中容易感到枯燥、乏味、难于理解,对所学的知识较难有一个感性的认识。实验教学有助于对抽象理论的理解,增强学生对计算机各部件的感性认识,因此对整个课程的教学效果具有决定性作用。

一、计算机组成原理课程特点

1.理论性强。计算机组成原理着重讲述了单处理机系统的组成和工作原理,其中涉及了较多的理论性研究内容,例如计算机系统的层次结构、运算器、存储器、中央处理器、输入/输出设备、总线等部件的基本构成及其工作原理[1],从而造成学生对所学的知识容易感到枯燥、乏味,提不起学习的兴趣,影响相应的教学效果。

2.内容抽象。课程中所讲述的内容涉及的是各部件的内部结构,但这些部件均被高度集成化或进行了封装,学生无法获取一个直观的印象,只能靠书本上的一些原理图和老师的讲解来理解所学内容,这就造成学生常常反映所学内容较为抽象,理解困难,无法将所学的知识具体化、形象化。例如CpU内部具体的构成,它是如何进行指令的执行和数据的处理,存储单元具体又是如何寻址、如何组成相应的存储器等问题。

3.内容繁杂。该门课程中每个章节涉及到的各种概念及原理繁多且复杂,使得学生对一些基本概念容易混淆,如对CpU周期、指令周期、存储周期、总线周期等概念的区分[2];另外在学习该门课程前还必须先修一些其他相关课程,增加了学生学习的难度。如在学习运算器章节前应先学习数字电子技术课程,在学习存储器记忆原理时还需先学习模拟电路课程,在学习磁表面存储器的读写原理时对相关的物理学知识也需有所掌握[3],因此造成学生对所学知识的理解困难,不易记忆。

二、设置综合设计性实验的必要性

传统的实验教学一般是作为理论教学的补充和辅助,大多以验证为目的[4],使得学生的动手能力没有得到充分的发挥,通常学生只是按照实验书上列出的步骤进行按部就班的操作,没有对所做的实验进行深层次的思考和认识,限制了学生的创造力。另外验证性实验通常是各单元部件的实验,这样就使得学生在完成实验后,还是无法将所学知识进行系统性的整合,从而清晰地建立一个计算机整机的概念,造成了学生对整个知识体系掌握的片面性和模糊性。本课程的教学目标是要培养学生对计算机硬件结构的分析、应用、设计能力,并在此基础上培养其创新能力。要完成这样的教学目标,显然传统的验证性实验教学是无法达到的,因此在验证性实验的基础上开设综合设计性实验,将运算器、存储器、微程序控制器等各单元部件实验内容进行有机的结合,就显得尤为必要。

三、实验教学模式的改革

要想激发学生的学习兴趣,培养学生分析、设计、调试、创新能力,较好地完成综合设计性实验的教学,采用传统的“教师主讲式”教学模式无法达到这样的要求,必须采用以“教师为主导、学生为主体”的教学模式。教师作为教学的设计者及组织者要最大限度地引导学生参与到整个教学过程中,让每个学生都积极参与学习的全过程并有所发展,成为学习的主体。还要将多种教学方法灵活运用到整个实验教学过程中的不同阶段,这样才能激发学生学习的兴趣,将理论教学和实践教学相结合,帮助学生建立计算机整机概念,培养学生的创新思维和意识,使其具有相应的设计和动手能力。以下就以设计一台基本模型计算机为例讲述综合设计性实验的教学实践方法。

四、基本模型计算机实验的教学实例

1.实验目的及内容。CpU的组成及微指令的执行是计算机组成原理课程中的重点和难点,学生通常会对微指令与机器指令如何存储和执行感到困惑,CpU如何正确地从主存中取得机器指令?微指令序列如何“解释”相应的机器指令并正确执行?微指令的执行顺序如何确定?要解决这些问题,光靠理论课的讲解还不足以使学生有深刻的认识和理解,各单元部件的验证性实验也无法很好地解决学生的这些疑问。必须是将运算器、存储器、微程序控制器等单元部件组合成一台基本模型计算机,通过为其设计几条机器指令,并编写相应的微程序,上机进行调试、验证等一系列的操作,才能使学生通过完成这样的综合设计性实验,清晰地建立一个整机的概念。

2.具体实践方法。要很好地完成这样一个实验,指导教师必须对学生进行正确的引导,可将启发式、任务式[5]、讨论式[5]几种教学方法融合进这个实验的教学中,在实验的不同阶段使用不同的教学方法,调动学生的积极性,发挥其创造性,让学生积极思考,动脑设计,动手操作,从而达到提高教学效果的目的。①设计阶段。该阶段主要是帮助学生对所要完成的实验内容进行相应的分解,分析所要解决的关键问题、寻找合理的解决方案、协助其理清思路,此阶段可以运用启发式和讨论式教学法。教师首先应启发学生将复杂的实验内容进行合理的步骤分解,找出完成实验的关键点,并让学生以小组为单位讨论实现关键步骤的合理解决方案,从旁点拨和引导学生主动思考和进行设计。关键步骤包括:首先让学生分析要完成这个实验,必须使用到哪些相关单元部件、有哪些关键步骤,这样还能使学生重新回忆曾经做过的单元部件的相关实验,增强学生对已学知识的记忆;确定需要用到的相关部件后,还得确定这些部件如何进行数据的传递,它们之间需要有哪些连接线用以控制它们正确的进行工作;让学生讨论、分析所要执行的指令都完成了哪些功能,指令和数据应该如何进行存储,指令的字长是多少,需要占用多少存储空间;启发学生根据所给的指令助记符写下正确的机器指令代码,确定相应的指令和操作数在存储器中的地址;引导学生根据指令助记符的要求设计数据通路框图,画出相应的微程序流程图,并确定相应微指令的微地址。这部分属于实验中较为重要和困难的部分,是考验学生对该部分知识掌握情况和设计、思维能力的一个重要环节;结合已知的该实验机的微程序控制器原理图和微指令格式,将设计出来的微程序流程图转化为相应的微指令序列,并以列表的方式将所用到的微指令列出,要求具体到每个微命令信号。这个环节较为复杂,需要学生有很强的逻辑思维能力和设计能力,并且对相关的微指令中各微命令信号较为熟悉。在此还应让学生弄清相应的微指令在控制存储器中对应存储位置的分布情况。②调试测试阶段。该阶段主要是锻炼学生的动手能力,以及对问题的分析能力,可检验学生对之前所做的存储器单元和微程序控制单元实验的掌握情况。其关键步骤包括:指导学生将相应的机器指令代码写入存储器中并检验写入存储器的数据是否正确;指导学生将相应的微指令代码写入控制存储器中并检验写入控制存储器的数据是否正确;让学生按照单步微程序、单步机器程序、程序运行与暂停三种不同的方式来运行写入的机器程序和微程序,并记录下相应的结果;让学生分析实验所得结果是否与理论设计相符,如果不相符时,可引导学生讨论分析每一条微指令运行的结果中其微地址部分、pC地址部分、存储器地址部分、当前总线内容部分是否正确,是否与相应的微程序流程图吻合。引导学生逐步找出未能正确完成实验的原因,并改正设计中的错误或遗漏之处,助其顺利完成实验,培养其分析问题、解决问题的能力,增强其自信心。③提高阶段。该阶段主要目的是检验学生在前两个阶段是否已正确掌握所学的知识,并能将所学知识较好地进行融会贯通、灵活运用。此阶段可通过任务式教学法完成该环节的实验教学,关键步骤包括:教师根据学生之前完成基础实验内容的具体情况,进一步设置不同难度的附加实验任务,比如增加机器指令的条数、更改操作数的寻址方式、增加中断功能等,针对不同难度的任务设置不同的奖励分数,学生可根据自己的能力选择不同难度的任务,完成低难度任务后可挑战更高难度的任务。这样不同能力层次的学生都可以得到充分的锻炼,不会因为任务过难或过易而失去学习的兴趣,使各能力层次学生的创新设计能力都得到了提高;对于难度较大的任务,可给予学生关键点的提示,让学生能根据所给提示,按任务要求正确分析出应该如何分解任务、画出微程序流程图、编写相应的微程序代码;学生再次上机实验,验证自己设计的微程序运行结果是否正确;教师验收实验结果,并对学生进行简单答辩,考核学生对实验内容掌握的真实程度,并记录下相应的成绩以备成绩评定时所用。

通过以上几个阶段的实践教学后,学生对模型机内各部件如何传递数据、CpU如何执行指令序列就有了较为清晰的认识,从而达到了帮助学生建立整机概念的目的,有效提高了教学效果。本方法经过实际运用到实验教学中,取得了不错的教学效果。

3.成绩的考核。综合设计性实验以激发学生学习兴趣、帮助其内化知识、运用所学知识解决问题、培养其创新能力为目的,实验考核注重的是对分析能力、设计能力、创新能力的考核,不能单纯以是否完成实验内容为考核标准,应综合考虑学生在实验过程中有无较强的分析能力、设计中是否有巧妙之处、完成任务的方法是否有创新点、实验报告中的错误分析和自我总结处是否有自己独特的见解。综合设计性实验的成绩按实验的完成水平和难度占40%、答辩成绩占30%、实验报告的质量(包括其规范度和创新性)占30%进行配比。这样的成绩考核方式既增强了学生进行实验的自觉性又鼓励了学生进行创新的积极性。

实验教学是让学生在理论学习之后进行知识巩固的重要手段,在实验教学中重视综合设计性实验的开展,使其和验证性实验进行紧密的配合,才能让学生在熟悉单元部件之后正确地建立起整机的概念,从而提高计算机组成原理实验课的教学效果,培养出具有分析能力、设计能力、创新能力的学生。

参考文献:

[1]白中英.计算机组成原理(第五版・立体化教材)[m].北京:科学出版社,2013:354.

[2]唐朔飞.计算机组成原理(第二版)[m].北京:高等教育出版社,2008:428.

[3]蒋本珊.计算机组成原理(第三版)[m].北京:清华大学出版社,2013:325.

[4]杨新宇.计算机组成原理实验教学改革探索[J].计算机教育,2013,(18):45-57.

[5]徐爱萍,许先斌,蔡朝晖等.信息化时代“计算机组成原理”课程的教学研究[J].计算机教育,2009,(10):42-44.