前言:中文期刊网精心挑选了计算机组成原理知识点范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
计算机组成原理知识点范文1
[分类号]G642
一、《计算机组成原理》简介
《计算机组成原理》是计算机科学与技术专业的核心专业基础课,也是一门难度大、内容多、难理解的课程[1]。目前,国内大多数高校的教学目标基本都是定位在计算机模型机认知的层面上[2],以冯诺依曼机为模型,较系统地讨论计算机各大部件的基本组成原理,各大部件互连构成整机系统的技术[3],使学生掌握计算机硬件的相关知识,了解计算机的基本组成和工作原理,帮助学生建立整机系统的概念。
在实际教学中,经过和学生的多次交流,我发现学生对《计算机组成原理》课程的知识点不易理解的原因主要有几个方面:其一、课程里涉及的知识点范围很广,既有计算机硬件系统的基本知识,又有指令系统的介绍,同时在硬件结构学习的基础上要求学生能把各个硬件联系起来,建立整机系统的概念。这对学生来说空洞而抽象,而理解就更谈不上了;其二、计算机的相关技术是迅速发展中的技术之一,很多新的技术不断出现比如CPU的多核系统技术等。学生往往更愿意去追求新鲜技术的要点而放弃学习基本的理论;其三、课程设计的诸多硬件既看不见又摸不到,大家都慢慢地失去了探索的兴趣,自然也就不乐意花时间去理解了;最后,再加上这门课程前后联系紧密,往往需要不断的整理,不断的思考才能理清头绪。这些原因都直接导致了《计算机组成原理》被大部分学生看作是枯燥、难学的课程。学生们往往学习兴趣不高,教学效果不理想。本文试图通过新的教学模式探索,培养学生的学习兴趣,强化知识点,提高学习效率。
二、教学模式的探索
课堂教学是实施教学过程的主体,其效果直接决定了授课目的的完成度;而教学模式是课堂教学的具体实施方法,模式选择的成败在很大程度上决定了课堂教学的效果。传统的教学模式就像填鸭,教师一味主讲,忽视学生的主动性,往往达不到理想的教学效果。本文试图结合实际教学采用新的教学模式调动学生的主动性,增强学习兴趣,提高教学效果。
(一)课件+板书
随着教学手段的不断发展,现在高校的大多数课程都采用多媒体教学模式,教师利用课件辅助教学,而传统的板书逐渐退出课堂。多媒体的好处显而易见,方便,授课内容可以较之前有很大的扩充空间,但在实际教学的实施过程中,我发现对于我们理工科的课程来说课件并不能解决某些实际问题。理工科的专业课程或多或少都要进行一定的计算或推理,纯粹的课件讲解很难长时间地把学生的注意力吸引在每一步的计算或推导里,起不到很好的教学效果;而板书教学在这方面却具有明显的优势,教师在每一步的计算或推导时可以加以解释,写一步讲一步,边讲边写,充分调动学生的思维和注意力,提高教学效果。
例如,在讲解二进制原码、补码乘法运算时,先通过课件,介绍清楚运算的原理和规则,在进行实例练习的时候,边用课件作复习,边在另一边的黑板上遵照规则解释一步写一步,写上几步,观察学生基本掌握运算方法后就交由学生自己完成剩余的部分。通过实际教学比较,“课件+板书”的教学模式应用在《计算机组成原理》教学里能提高学生的学习效率。
(二)讲解+任务
《计算机组成原理》是学生公认的枯燥、难学的课程之一,学生们大都对其学习兴趣不高,上课走神,学习效率低。传统的教学模式常常难以达到理想的教学目的,为了激发学生们学习的兴趣和主动性,本文提出“讲解+任务”的教学模式以期改变学生学习不主动的状态。所谓“讲解+任务”教学模式指的是“基本理论讲解+具体知识任务驱动”的方法,即对于某知识点的基本原理或理论由教师详细讲解,而后具体知识点的理解和讲解由任务的形式分配给学生们,让他们自行商量、讨论、得出结论的方法。这种教学模式能够很好地调动学生们的学习兴趣,从某种意义上真正变成课堂的主人,知识的主人,改变被动接受的状态,成为主动发现问题,解决问题的主体。
例如,指令类型的讲解往往就是“学生难学,教师难教”的典型知识点。每一类型的指令包含哪些,具体指令格式如何,完成怎样的功能,要注意什么问题等等,全是枯燥又难于记忆和理解的部分,常常没讲几分钟,学生们就难以集中注意力了。对于这部分知识的学习,我采用的就是“讲解+任务”的模式,先以最基本的数据传送指令MOV为例,详细地介绍指令的格式、功能、注意事项等,把学习指令的方法介绍给学生,其余的指令就交由学生们自己来学习、掌握并相互分享学习心得,取长补短。在大家分享的过程中,如果发现确实有某些指令大家掌握的还不全面,再给大家补充介绍。
对两个教学班,我分别采用了传统的教学模式和“讲解+任务”的教学模式讲解指令类型的知识。通过练习的形式考查学生们的学习效果,结果显示“讲解+任务”模式学习下的学生们对各指令的掌握和应用情况优于传统模式。
三、总结
“教学”就是教与学的有效结合,应该是一个互动的过程,其最终目的是期望学生能从“教”中有所“学”。在多年《计算机组成原理》课程的教学过程中,本着激发学生兴趣的原则,我经常有目的地和学生们进行交流,了解他们最新的学习状况,及时地调整和优化教学内容,改变教学模式,提高学生们的学习积极性和主动性,期望能够进一步提高教学效果。经过实践证明,“课件+板书”和“讲解+任务”的教学模式较传统模式更能调动学生学习的主动性,激发学生的学习兴趣,提高学习效率。随着计算机技术的不断发展,教学手段的不断多样化,《计算机组成原理》课程的教学仍然还有很多问题值得我们去研究和证明,只有不断探索和实践才能促进教学质量的不断提高。
[参考文献]
[1]王勇,黄贤英.“计算机组成原理”的教育方法[J].重庆工学院学报(自然科学).2008,V22(3):167-170.
[2]邹红文,聂雅琳.《计算机组成原理》教学设计研究与实践.洛阳理工学院学报(自然科学版).2008.9.第18卷,第1期.
计算机组成原理知识点范文2
关键词:计算机组成原理;汇编语言;互动式教学
中图分类号:G642 文献标识码:B
1 引言
计算机组成与汇编语言课程包括两部分内容:计算机组成原理与汇编语言程序设计。计算机组成原理课程是硬件设计的基础,而汇编语言程序设计是进行硬件设计所使用的开发语言,二者在计算机专业课程体系中都是十分重要的课程。由于我校计算机专业的人才培养方案的定位是培养软件人才,因此硬件课程相对薄弱。针对目前学生在专业课的学习上“重软件,轻硬件”的思想,怎样使学生能够喜欢上这门课的学习是任课教师应该研究和进行教学改革应该探讨的问题。
2 教学过程中存在的问题
(1)课程本身的特点造成学习困难
计算机组成与汇编语言是一门非常抽象的课程,学生在日常生活中很少接触到利用汇编语言编写的程序,也很少对一台计算机进行硬件设计,对于课程中所讲授的内容,例如寻址方式、芯片内部结构、汇编语言语句等,看不见摸不着,难以理解,很容易感到枯燥、厌烦,从而产生厌学情绪,导致学习困难。
(2)传统教学模式不利于调动学生学习的主动性
采用传统的教学模式(课堂教授为主、作业和实验为辅),学生往往是被动接受知识,容易养成依赖教师的心理,另外大部分学生对硬件课程不感兴趣,不能发挥学生学习的主动性和积极性。
3 激发学生的学习兴趣
(1)与后续课相联系
教师要告知学生,计算机组成与汇编语言是某些专业课的先修课,如操作系统、计算机接口技术、单片机原理等,学好本课程对学习后面专业课的帮助很大。
(2)与就业相联系
教师要告知学生汇编语言是进行硬件设计的开发语言,有些芯片设计公司还在使用汇编语言进行编程,从而激发学生学习这门课的热情。
(3)与热点问题相联系
教师在授课过程中利用适当的机会就本课程与社会热点问题相联系,有助于引导学生牢固树立为探求技术发展而努力学习的信心和决心。
4 教学内容的改革
(1)合理安排教学内容
在教学内容的安排上,一定要抓重点内容进行讲解。例如模型机的指令流程是重点也是难点,对于这部分内容就要详细讲解,直到学生完全理解。再如,因为计算机组成原理与汇编语言合成一门课程,汇编语言是在微机80×86机型上进行编程的,所以在讲解寻址方式时重点讲解80×86机型的寻址方式。
(2)加强实验课的练习
该课程的实验只有利用汇编语言进行程序设计的实验,而缺少计算机组成原理的实验。鉴于这种情况,为了使学生更好地理解计算机的组成原理,设想构建一个计算机组成原理实验系统,进行仿真实验。教师应该精心选取一些实验放在教学系统上,要求学生在网上做实验,通过这些实验加深对课堂内容的理解。
汇编语言程序设计是一门实践性很强的课程,既要掌握概念,又要动手编程,还要上机调试运行,因此培养学生的实际动手能力尤为重要。在实验课的教学过程中应该做到:
①教师应为每次上机精心设计实验内容,在实验内容的设置上应顾全验证性、综合性和设计性实验的比例,尽量将所学的知识综合,达到系统化。
②将上机情况与期末成绩挂钩,调动学生的上机兴趣。
③在上机过程中,教师经常会发现有的学生在电脑前并不是编写程序,而是看上课的课件。问其原因,告知这部分内容还没有掌握,不会编写程序。针对这种情况,要求学生在课下先将算法的流程图画出来,写出完整的上机程序,在上实验课时只是进行调试,从而提高学生上实验课的效率。
(3)教材的选取
目前书店里有很多关于计算机组成原理与汇编语言程序设计的教材,但是将两门课程衔接在一起的教材比较少。对于计算机本科专业的学生来说,徐洁、俸远祯主编,电子工业出版社出版的《计算机组成原理与汇编语言程序设计》(第2版)是一本不错的教材。但是由于这是一本将两门课程组合在一起的教材,因此这两门课有的内容就不能在教材里完全体现出来,所以在上课时除了指定这本书作为教材外,还需要另外指定一些辅导教材。例如针对本专业没有开设计算机系统结构课程的情况,选择了王爱英的《计算机组成与结构》,汇编语言程序设计的参考书选择了沈美明、温冬婵编著的《IBM-PC汇编语言程序设计》(第2版)。因为计算机组成原理是某些高校考研的课程,所以对于将来要考研的同学,建议他们平时看一些计算机组成原理的习题书。
5 教学方法的改革
(1)采用互动式教学,提高学生的学习积极性
互动教学法可以使学生参与到教学过程中,活跃课堂气氛,激发学生学习的兴趣,提高学习质量。互动教学法的方式多样,例如课堂提问、课堂练习等。教师在上课过程中应该设计一些有意义的提问,利用提问将要讲的知识点引出来,避免平铺直叙地讲解知识点,这样让学生带着问题来学习知识点,会起到事半功倍的作用。例如在讲解计算机的5大硬件组成时,计算机是由控制器、运算器、存储器、输入设备和输出设备组成。在此可以提出这样一个问题:你们知道平时人们说的主机是由哪些部件组成的吗?在提问的时候暗示他们想一下自己的电脑,有的同学马上就能反映出主机是由控制器、运算器和存储器组成。通过这样的学习方式,可以加深学生的印象。
课堂练习也是互动式教学一个非常重要的方法。在讲解完某一个例题后,出一道类似的习题让学生在课上完成,请学生上讲台在黑板上写出解题步骤并进行讲解,然后再请另一个学生上来对此进行讲评。这样可以检验学生的掌握情况,找到学生理解错误的地方,从而对症下药,就学生理解错误的知识点再进行讲解,除了能让学生当堂能够掌握所学的知识点,还能举一反三地理解知识点。
(2)在教学过程中多举例,便于学生理解相对抽象的内容
由于本课程基本概念多、专业术语多,是一门比较抽象的课程。因此教师在课堂讲授中应该尽量用一些通俗易懂的例子进行教学。
例如在讲解指令流水线的时候,为了便于学生理解,借助学生们日常生活中爱喝的饮料进行举例。将饮料的制作过程分为三步:生产瓶子、罐饮料、密闭,恰好与指令的执行过程:取指令、分析指令、执行指令相对应。为了提高饮料的生产速度,当第一瓶饮料进行到罐饮料的步骤时,开始生产第二瓶饮料的瓶子;当第一瓶饮料进行到密闭的步骤时,第二瓶饮料开始罐饮料而第三瓶饮料的瓶子开始生产。通过这个例子,使学生易于理解指令流水线的原理。
再如在讲解模型机的数据通路时,CPU与主存和外设之间的数据传送是通过三条系统总线(地址总线、数据总线和控制总线)来实现的。传送地址信号的是地址总线;传送数据信号的是数据总线;传送控制信号的是控制总线。但是当CPU发送数据的地址到总线时,总是有学生将地址发送到数据总线上。为了学生更好地理解这个问题,特将三种总线与城市交通相联系进行讲解。三种总线就好比机动车道、非机动车道和人行道,自行车只能上非机动车道,人只能上人行道,汽车只能上机动车道。通过类比,将难理解的知识点与日常生活中的小事相联系,从而既使学生学到扎实的理论知识,又不会使学生学得吃力。
(3)寓教于乐,学生在游戏中轻松掌握知识
为了便于学生掌握抽象的内容,可以在课堂上做一些小游戏,通过游戏学生在玩乐中轻松掌握知识。
例如在讲解cache的地址映像时,可以通过小游戏使学生轻松掌握地址映像的原理。cache的地址映像有直接映像、全相联映像和组相联映像3种。请两组学生到讲台上,一组学生表示cache的字块,另一组学生代表主存的字块,要求表示主存字块的学生在3种不同的地址映像方式下分别与哪个表示cache字块的学生配成一对。学生在这个游戏中轻松地掌握了cache地址映像的原理。
计算机组成原理知识点范文3
关键词:精品课程;课程建设;教学方法
2007年6月,教育部高等学校计算机科学与技术教学指导委员会计算机专业规范研究小组在对计算机科学、计算机工程、软件工程和信息技术知识体系和CC2005核心课程进行研究的基础上,结合我国的实际情况,确定了我国计算机科学专业的15门核心课程、计算机工程专业的16门核心课程、软件工程专业的24门核心课程和信息技术专业的15门核心课程,并给出了各专业包括的知识领域及知识单元。按照各个专业方向核心知识体系的要求,给出了程序设计、离散结构、数据结构、计算机组成原理、计算机网络、操作系统和数据库系统等7门课程作为这四个专业的公共核心基础课程。2008年4月国家教育部公布,从2009年起,计算机专业考研中的专业基础课实行全国统一命题,专业基础课由数据结构(占45分)、计算机组成原理(占45分)、操作系统(占35分)、计算机网络(占25分)四个部分组成,并于2008年8月公布了统一的考试大纲。
计算机组成原理是计算机科学与技术的核心专业基础课,是学生接触的第一门较全面地介绍计算机组成及工作原理的硬件课程,它与数据结构、汇编语言程序设计、微机接口技术、计算机体系结构、嵌入式系统、计算机控制技术等计算机学科核心课程关系紧密。要建设一门既符合CC2005核心课程知识体系,又符合研究生入学考试全国统考大纲要求的计算机组成原理精品课程就显得格外重要。为此,本文从课程建设的定位与目标出发,从精品教材建设、教学内容规划、实践创新能力培养、教学方法与手段改革和教学团队建设等方面进行了探索与实践。
1 课程的定位与目标
计算机组成原理课程的定位是以基础理论知识为本、实践以及应用并重、反映学科最新成果、兼顾不同层次对象,培养学生科学思维、工程应用以及创新能力的精品课程。
课程的教学目标是通过该课程的学习,使学生理解计算机的组成和工作原理,掌握计算机整机设计的思想和方法,以及提高计算机整机性能所采用的核心技术,培养学生整机调试、故障分析、故障检测与故障排除的能力,为今后学习微机接口技术、计算机体系结构、计算机网络、并行与分布式处理等课程及计算机系统的硬件研究打下坚实的基础。
2 课程的内容和过程
2.1 建设精品教材,满足专业规范和考研大纲要求
通过分析CC2005、高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)和计算机科学与技术专业研究生入学考试专业基础课全国统一命题考试大纲对计算机组成原理知识点的要求,我们新编了《计算机组成原理》教材,并于2009年2月由西安电子科技大学出版社正式出版。该教材在系统地讲述计算机最基本的组成和工作原理、分析方法和设计技术的同时,还介绍了有关的先进技术在计算机组成方面的最新进展。教材具有基础性强、内容组织合理、取材先进、注重实践、便于自学等特色。实践证明,新教材的使用加深了学生对计算机组成和工作原理的理解,提高了学生的学习兴趣和独立思考的能力,收到了良好的学习效果。
2.2 合理规划教学内容,注重基础理论知识与新技术的结合
根据计算机组成原理的定位和教学目标,以及计算机科学与技术专业教学指导委员会给出的专业规范和研究生全国统考大纲的要求,我院将此课程规划为72学时,其中实验占12学时,讲授占60学时,课程设计单独占32学时。基础理论知识及讲授学时规划如下。
1)计算机系统概论部分占4学时,主要讲授计算机的发展历程,计算机系统层次结构,计算机系统的组成,计算机的工作过程,计算机性能,计算机的典型分类方式。
2)运算方法和运算器部分占12学时,主要讲授数值数据和非数值数据的表示方法,定点数的运算方法和运算器,浮点数的运算方法和运算器,数据校验码。
3)存储系统部分占10学时,主要讲授存储器的基本概念,半导体随机读写存储器和半导体只读存储器的组成及工作原理,半导体存储器的容量扩展,双端口RAM,多模块交叉存储器,相联存储器,Cache存储器,虚拟存储器。
4)指令系统部分占8学时,主要讲授指令系统的发展与性能要求,指令格式,指令和数据的寻址方式,指令格式的分析与设计,CISC、RISC、退耦CISC/RISC和后RISC的基本概念。
5)中央处理器部分占12学时,主要讲授CPU的功能和组成,指令周期,时序产生器,微程序控制器,硬连线控制器,流水线技术。
6)总线结构部分占6学时,主要讲授总线的基本概念,总线标准,总线仲裁和总线通信。
7)输入/输出设备部分占4学时,主要讲授典型输入/输出设备的工作原理和常见的性能指标。
8)输入/输出系统部分占4学时,主要讲授I/O系统的基本概念,I/O接口的功能和基本结构,I/O端口及其编址,以及I/O设备数据传送控制方式。
为了让学生了解理论知识在新一代计算机系统中的应用,我们在计算机的发展趋势、计算机的典型应用、指令系统的发展、提高单机系统指令级并行性的措施、总线标准举例等知识点中引入了近几年来较新的计算机技术。例如在“提高单机系统指令级并行性的措施”这一知识点中,我们分别补充介绍了在单机系统中目前比较广泛使用的五种技术,即超标量、VLIW、超流水、超标量超流水、EPIC技术,并简要介绍了这些技术在现代微处理器中的具体应用。
2.3 加强综合性和创新性实践环节,培养学生的实践创新能力
计算机组成原理课程不仅是一门理论性很强的专业基础课,而且也是一门实践性很强的实践课程。要清楚地理解计算机组成原理的精髓,亲自动手进行计算机各部件和模型机设计是相当重要的。我们通过加强综合性和创新性实践环节,不仅让学生理解了抽象的概念及原理,而且也提高了学生分析问题、解决问题的能力,以及实际动手的能力。
这门课程的综合性实验项目包括数据通路实验、操作控制器实验、高速ALU设计实验和浮点运算器设计实验,其目的是为了让学生掌握计算机运算部件、控制部件的组成和工作原理,加深学生对理论知识的融会贯通与理解,锻炼运用EDA技术进行计算机硬件设计的能力和硬件调试的能力。
创新性实践环节单独安排为一个课程设计,其内容是运用理论知识、硬件描述语言和EDA软件QuartusII进行模型机的设计。尽管在理论教学时,已分章节介绍了计算机的组成、指令的解释过程、指令周期、微指令格式、微程序的设计方法,以及时序控制方式和微处理器的设计步骤,但是实现相同的功 能,在微处理器的内部结构设计时方法也是多种多样,比如微处理器内部寄存器的个数设置、是否采用片内指令Cache和数据Cache,采用什么样的指令格式和寻址方式、设计哪些指令、指令如何解释、采用微程序操作控制器还是硬连线控制器、是否采用流水线技术等。创新性实践环节涉及的知识面广、设计方案多样、设计方法灵活,有利于提高学生分析问题、解决问题的能力和实践创新能力。
2.4 科学合理地改进教学方法,提高教学质量和教学效果
教学内容的组织采用了整体“自顶向下”、细节“自底向上”的教学方法,从计算机硬件系统入手到分别介绍计算机硬件的五大部件及相互联系,再将内容的展开,分别讲授每一个部分的组成和工作原理。在涉及到各组成部分具体细节的知识点时,采用了“自底向上”的教学方法,讲授内容由浅入深、循序渐进、由简单到复杂,在讲清基本概念和基本原理的基础上,再进行分析和设计。这种教学方法既让学生正确理解和掌握了各部件的组成及工作原理,让学生掌握了计算机中各部件的设计方法和相互之间的联系,建立了整机的概念。
教学任务的安排是将不同的专业分别定为一个教学班,以小班上课的方式进行,促进了讲授、提问、讨论、练习等多种教学方式的开展。同时要求每个教学班的主讲教师必须参加理论课的辅导工作,并要求每个实验必须参加一批实验辅导。青年教师必须先经过实验辅导和理论课辅导两年后,才能根据试讲情况确定其是否能胜任主讲教师资格。理论课辅导教师主要负责作业批阅、答疑、上习题课、网上教学交流等工作,实验课辅导教师主要负责讲授实验目的、实验要求、实验内容、实验步骤,并指导学生完成实验的全过程。
教学方法的改进,有助于各专业主讲教师根据本专业的课程结构和学生能力水平,以及课堂交流、作业和辅导、实验操作等情况的反馈信息,及时将出现的问题与所有学生沟通,以便随时调整教学方法、教学进度和补充教学内容,提高了教学质量和教学效果。
2.5 利用现代化教学手段,提高学生的学习兴趣和学习主动性
利用课件教学,使得计算机各部件抽象的工作原理直观地展示在学生面前,大大地增加了课堂教学的信息量,提高了学生的学习兴趣。例如通过动画模拟机器指令的取指和执行过程,来解释中央处理器的组成和工作原理,让学生更直观地了解CPU内部控制信号的产生、指令和数据的流动过程、在指令执行过程中CPU内部各寄存器的变化情况等。通过使用QuartusII仿真软件进行实践教学,可以清楚地理解CPU的组成和详细设计,可以将CPU的顶层电路图逐层解剖,看到CPU内部的各组成部分及VHDL描述。通过微处理器执行某一个具体功能的机器语言程序,调出仿真波形,可以让学生清楚地看到CPU内部程序计数器、地址寄存器、指令寄存器、微地址寄存器、通用寄存器、数据暂存器、状态条件寄存器、主存储器、输出总线的内容随着时间的推移而发生变化的情况,将理论教学与实际设计充分结合,提高了学生的学习兴趣。
通过课程网站辅助教学,丰富的教学资源和交互式教学平台提高了学生的学生主动性,促进了师生之问的互动。课程网站采用Dreamweaver MX、Flash MX、Photoshop、ASP和SQL Server等软件开发,为学生提供了全方位的学习辅导支持,包括教学大纲、学习指导、教学视频、课件下载、在线测试、难点解析、动画演示、虚拟实验室、在线答疑、学生论坛等。这些内容可以帮助学生全面地理解和掌握计算机组成原理课程的教学内容,了解该课程涉及的新知识和新技术。
2.6 建设合理的教学团队,重视对青年教师的培养
建设由课程负责人、主讲教师、辅导老师和实验指导教师组成的教学团队是极其必要的。我们的计算机组成原理课程教学团队由8名教师组成,主要成员均长期从事本课程及相关课程教学和相关课程的教学和学术研究,其中教授1人、副教授3人、博士1人、硕士6人;35~45岁年龄段的中青年教师占75%,具有计算机相关专业教育背景7人、通信相关专业教育背景1人,所学专业涵盖了计算机应用技术、通信与信息工程、自动控制等。教学团队成员分别来自上海理工大学、中山大学、桂林电子科技大学。在知识结构、年龄结构、职称结构、学缘结构等方面形成了较合理的结构配置,教师队伍在理论教学、教学研究和学术研究等方面已开展了较多卓有成效的工作。
课程教学团队充分发挥高学术水平和高教学水平骨干成员的传、帮、带作用,通过合理规划、创造条件、培育环境、严格要求等多种机制,实施青年教师的培养,具体措施包括选派青年教师到国内知名大学参加培训、实行骨干成员为核心的导师制、组织开展教研讨论和科研活动。
通过以上措施,青年教师得到迅速成长、能够很好地胜任本课程的教学任务。在近几年的学生评教中,教学团队的学生评教成绩一直保持在优良以上,深受学生欢迎。近五年来,课程组承担和完成了国家自然科学基金、广西自然科学基金和横向科研项目16项,发表学术论文24篇(EI、ISTP收录10篇),出版专著/教材4部,获得计算机软件著作权4个;承担教学改革与教学研究项目10项,发表教学研究论文16篇,获得教学改革与研究成果7项。
计算机组成原理知识点范文4
关键词:计算机组成;计算机系统结构;课程群建设;教学改革
随着多核/众核处理器以及可重构计算技术的出现,计算机体系结构技术面临重大改变,给相关课程的教学提出了新的问题和新的挑战。如何在教学内容中体现技术的发展?如何利用FPGA技术提升实验水平?如何统一规划相关课程的教学?特别是在不久的将来,计算机体系结构可能发生重大变革的情况下,如何为那些将要在新型体系架构下从事计算机科学和技术研究和开发的学生打下良好的专业基础?这些都是我们近年来一直考虑的问题。带着这些问题,我们跟踪了美国几个一流大学近几年来相关课程的教学内容及实验方法。对照国际一流大学的先进做法,结合我校计算机人才的培养目标,我们提出了“计算机组成与体系结构”课程群建设思路,并根据实际情况对相关课程进行了教学改革实践。
1国外一流大学相关课程教学情况
通过对UC Berkeley、Stanford和MIT等多个美国一流大学在相关课程方面教学情况[1-5]的跟踪,我们发现,这些大学对相关课程教学都进行了调整,通过开设新课程或调整相关课程教学内容加入了多核/多线程处理器的相关内容,特别强调学生对HDL、FPGA、SOC、并行体系结构、并行程序设计等技术的掌握。这些大学在相关课程教学内容和实验内容方面基本相同,都是以典型的四段或五段流水线CPU设计技术和存储器层次化结构为核心内容,教学理念和教学思路也非常相似,都是站在计算机系统的高度阐述计算机硬件系统的结构和设计思想,强调软件与硬件的关联,使学生能很好地在高级语言程序、汇编语言程序、机器指令代码和硬件机器结构之间建立相互的对应转换关系,以建立对计算机系统的整体认识。
图1给出了美国UC Berkeley大学2009年相关课程的设置概况,图中箭头反映课程开设先后关系。
图1UC Berkeley大学相关课程设置[2]
CS61C(Machine Structure)主要包括C语言程序设计、指令流水线和存储器层次结构等方面的基础内容,以“C语言MIPS汇编MIPS目标代码MIPS处理器设计”为主线组织内容,以“高级语言程序设计”实验和“模拟器”实验为手段,使学生建立单处理器计算机系统的整机概念。
CS 150(Components and Design Techniques for Digital System)主要介绍数字逻辑电路基础知识和EDA设计技术,2009年以前的实验主要是在FPGA开发板上进行视频解码及播放电路设计开发,从2009年开始改为“流水线CPU设计”,要求学生采用流水线方式设计实现16条MIPS指令,以串行接口方式从PC上装入程序到FPGA开发板,并通过PC调试程序,最终通过VGA接口,将FPGA板连接到一个显示器上,在该显示器上显示由所设计的CPU执行的一个游戏程序的执行结果,如图2所示。
图2UC Berkeley大学CS150课程综合实验内容[3]
CS 152(Computer Architecture & Engineering)着重介绍多处理器并行计算机体系结构,包括多核/众核处理器、多处理器计算机系统以及各类并行处理机制等。
CS194为新开设的本科生课程,是一门基于FPGA的以计算机系统结构实验为主的课程。在开设新课程的同时,该校还对相关课程内容进行了调整,从2009年开始,将CS152中基于FPGA的流水线CPU设计实验移到了CS150课程中,把原来研究生课程CS252中的很多内容移到了CS152。
由此可见,在这类课程的教学中,UC Berkeley近两年有一个明显变化,就是在保留传统课程内容的同时加强了基于FPGA的硬件设计能力的培养。此外,在本科教学中加深了并行体系结构方面的教学内容,而且教学内容的调整是在对相关几门课的统筹规划下进行的。
2课程群建设思想
随着多核/众核处理器技术的出现,我们意识到,必须对计算机组成与体系结构方面的教学内容进行调整。我们首先对本系开设的所有课程的教学内容进行了梳理。结果发现,由于课程间缺乏统一规划和协调,教学存在内容大量重复或缺失、课堂教学和实验内容不匹配、课程之间内容脱节等问题。有必要将相关课程组成一个课程群,以便在一个完整的框架体系下统一规划、相互协调,构建科学合理的计算机组织与体系结构相关课程教学体系。为此,从2007年开始,我们提出并实施了“计算机组成与体系结构”课程群建设方案。
2.1课程群教学目标
根据本课程群在计算机系统中的重要位置,结合我系的生源情况和培养目标,我们提出课程群的基本教学目标为:提高学生对计算机系统的全面认识水平和系统设计能力,建立计算机整机概念,全面理解计算机系统的层次结构。具体包括以下几个方面:了解计算机指令集体系结构的设计原则和设计原理;具备使用HDL进行计算机硬件设计的基本能力;深刻理解OS和硬件之间的分工和衔接关系;掌握从硬件角度出发进行编译优化的基本技术;深刻理解从硬件角度出发编制高效程序的基本原理;提高利用硬件知识进行程序调试的能力。
2.2课程群建设思路
课程群建设的总体思路为:1)根据课程群建设总体目标,规划好课程群涵盖的知识结构和框架体系,合理定位各门课程的教学目标,把每个知识点落实到具体课程中。2)根据课程群知识点总体框架,拟定课程之间知识点衔接方案,并在教学过程中明确各知识点在不同课程之间的关系。3)根据规划分头编写或修订教材及教案,并在统一的框架下建设相关课程网站。4)在保留各课程独立实验平台的同时,构建一个课程群公共实验平台,并使各课程实验内容按照一定的关系有机联系起来。
3课程群教学改革实践
我们首先对现有课程进行了调整。将原先模拟电子技术部分内容合并到数字逻辑电路设计中,形成数字逻辑与数字系统课程;将原先的计算机组成原理和计算机系统结构内容合并,形成计算机组织与系统结构课程;同时建设一门新课高级并行体系结构。通过对相关课程的调整,我们构建了以“计算机组织与系统结构”为核心的课程群,如图3所示。
图中箭头表示课程前后关系,其中计算机系统概论、数字逻辑和数字系统、计算机组织与系统结构为必修课;微机原理与接口技术、嵌入式系统原理、高级并行体系结构为选修课。此外,为了加强对学生FPGA、EDA、数字系统和流水线CPU等方面设计和实践能力的培养,课程群教学规划中专门设置了数字逻辑电路设计和计算机组成原理必修实验课。
3.1各课程在课程群教学中的定位
围绕课程群教学目标,根据课程之间的相互关系,我们确立了各课程在课程群教学目标中的定位:1)计算机系统概论从宏观上介绍计算机系统涉及到的各个层次的内容,让学生从整体上了解计算机系统的全貌和相关知识体系。2)数字逻辑与数字系统围绕组合逻辑设计和时序逻辑设计两大核心内容,在逻辑门到功能部件这两个层次展开。以后续课程中用到的功能部件作为设计实例,采用“实例化”教学思路组织教学内容。3)计算机组织与系统结构从寄存器传送级以上层次介绍单处理器计算机系统设计的基本原理,实验重点在CPU设计和存储器方面。该课程处于课程群中核心地位,一方面,先行课程中学生感到似是而非的问题在此要明确;另一方面,需要运用先行课程的基本功能部件构建更大规模和更强功能的部件;此外,本课程中提出的设计原则和实现原理要在后继课程的计算机系统实例中得到体现。4)微机原理与接口技术定位为计算机组织与系统结构的基本原理在PC上的实例化教学课程,主要以目前流行的基于IA-32体系结构的PC为实例,实验重点内容在PC的I/O接口技术。5)嵌入式系统原理定位为计算机组织与系统结构的基本原理在嵌入式系统方面的实例化教学课程。实验教学重点是基于ARM处理器和VxWorks及 COS-Ⅱ操作系统的简单嵌入式软件开发技术。6)高级并行体系结构主要在更高层次上介绍多核/众核CPU、多处理机系统、集群系统等不同粒度和规模的多处理器并行计算机系统的工作原理、实现方式及其应用领域。
3.2各课程教学内容的关联和衔接
课程群中的课程之间有很多关联,必须合理处理好关联内容,使课程之间能有机衔接。对于关联内容,我们的主要处理思路如下:
1) 数据的表示。
对于进位计数制及其相互之间的转换、ASCII码
表示、逻辑数据表示、汉字编码、无符号数表示、带符号数表示,要求学生在计算机系统概论课程中掌握,而在后继课程中作为“回顾”内容;各种BCD码的介绍和相关电路设计内容在数字逻辑与数字系统中讲解;补码特性和浮点数的表示则在计算机组织与系统结构中详细介绍。
2) 功能部件。
逻辑门电路、半加器、全加器、加法器、比较器、编码器、译码器、触发器、寄存器、移位器、内存储器的实现技术由数字逻辑和数字系统详细介绍;计算机系统概论课程仅作概要性的功能说明和解释;计算机组织与系统结构课程则运用这些基本电路来构建更大的功能部件。
3) 外存储器。
有关磁盘信息的存储、磁盘存储器的构造、磁盘驱动器和磁盘控制器的接口、磁盘存储器的性能指标等内容主要在计算机组织与系统结构中详细介绍;计算机系统概论课程仅作概要性说明;微机原理和接口技术中不再讲解。
4)I/O设备及其接口。
计算机系统概论课程从计算机硬件系统组成的角度简单提一下常用的外部设备的功能;计算机组织与系统结构主要介绍各种外设抽象出来的一个通用结构,以及外设控制器的通用结构,并着重解释清楚“外设―I/O接口(外设控制器)―I/O总线―主机”的连接关系;微机原理与接口技术则具体介绍PC机所用的一些接口电路、I/O总线及其互连。
5) 虚拟存储器。
计算机组织与系统结构主要介绍虚拟存储器的基本概念和MMU中涉及的地址变换、页表和段表结构、快表,以及如何发现“缺页”和发生“缺页”时处理器中进行的一系列处理步骤;微机原理与接口技术具体介绍Pentium系列处理器对虚拟存储器的支持,包括段选择子、段描述符/描述符表、逻辑地址―线性地址―物理地址的转换等。对于“缺页”处理过程中涉及的问题,操作系统课程将会作详细介绍。
3.3课程实验内容的规划和实施
课程群的实验教学思路是,将各课程中相关实验内容规划在统一平台上实现,使得实验内容相互依托、避免重复,由低层逐步向高层过渡,最终使学生全面建立计算机系统的整机概念。
统一实验平台是Altera DE2/70开发板,其上拥有70000个逻辑单元的Cyclone® II 系列2C70型FPGA 芯片,并配有软核处理器NiosII和相应的开发软件:Quartus II、SOPC Builder、NiosII IDE、DSP Builder等,可以开展以下五个层次的实验:功能部件CPU+存储器软核处理器+存储器+总线+I/O软核处理器系统+OS软核处理器系统+OS+多媒体编码等应用。
在Altera DE2/70统一实验平台上开展的实验主要有以下几个方面:
1) 数字逻辑电路实验。
利用Quartus II实现基于HDL和FPGA的组合电路、时序电路和简单数字系统设计实验。
2) 计算机组成原理实验。
利用Quartus II实现基于HDL和FPGA的ALU、寄存器组、桶型移位器、乘/除法器,单周期CPU、多周期CPU和流水线CPU的设计实验。
3) 微机原理与接口实验。
基于软核处理器和SOPC开展总线、存储器和I/O接口实验。例如,通过总线实现外设和SRAM相连;利用UART实现轮询、中断和DMA方式I/O。
4) 嵌入式系统原理实验。
主要包括两类实验:(1)基于NiosII+μCOS操作系统的实验,例如七段数码管显示实验、小型GUI
移植实验和文件系统读写实验等;(2)基于NiosII IDE的简单应用系统开发实验,例如简单C语言编程实验、简单DSP处理实验等。
有些课程除了在以上统一实验平台上开展实验以外,还要求完成其他实验,如计算机组织与系统结构的编程实验,微机原理与接口的汇编程序设计实验,嵌入式系统原理的基于ARM处理器的实验等。
4结语
经过近年来的课程群教学改革实践,我校相关课程的教学内容在广度和深度上都有提高;课程间知识点的衔接更加合理,减少了重复,弥补了缺失。通过统一规划,课堂教学内容和实验内容相得益彰;在对课程群统一的教学实验平台和统一实验内容的规划下,我们实现了各课程间实验内容的有机衔接。
由于课程群的建设时间较短,需要开展的工作还有很多,今后几年,我们主要在以下几个方面继续进行课程群教学改革实践:编写相关课程教材以开展课程群系列化教材建设;加强实验教学内容,增加和完善各类模拟器实验;开设计算机系统综合设计实验课程。
相信通过以上一系列的教学改革措施,一定会改变学生“喜软怕硬”的心理。学生对计算机组织与体系结构方面知识的掌握水平和运用能力将会有较大提高,为后续课程的学习打下坚实基础。
参考文献:
[1]UC Berkeley.Machine Structure[EB/OL].[2008-07-09].inst.eecs.berkeley.edu/-cs61c/su08/.
[2]UC Berkeley. Computer Architecture and Engineering[EB/OL]. [2009-05-07]. inst.eecs.berkeley.edu/-cs152/sp09/.
[3]UC ponents and Design Techniques for Digital Systems[EB/OL].[2009-02-16]. inst.eecs.berkeley.edu/ -cs150/sp09/.
[4]Stanford University. Computer Organization & Systems[EB/OL].[2009-06-15]. stanford.edu/class/cs107/.
[5]MIT. Computation Structures[EB/OL].[2009-05-08]. 6004.csail.mit.edu.
Construction and Reform of “Computer Organization and Architecture” Courses Group
YUAN Chun-feng, HUANG Yi-hua, WU Gang-shan, YU Jian-xin, WU Hai-jun
(Department of Computer Science and Technology, Nanjing University,Nanjing 210093, China)
计算机组成原理知识点范文5
关键词:计算机组成原理;教学改革;教学方法;教学模式
文章编号:1672-5913(2013)07-0046-04
中图分类号:G642
计算机组成原理是计算机科学与技术专业的核心硬件基础课程,是全国计算机专业硕士研究生入学考试的重点专业考试课程之一。它在计算机及其相关专业本科教学课程体系中起着承前启后的作用。该课程内容涵盖计算机系统的基本硬件部件构成和组成方式,包括基本的运算操作原理和单元设计思想、操作方式及其實现等。
通过对该课程的学习,不仅可以帮助学生理解单处理器计算机硬件系统的基本组织结构和工作原理,掌握单处理器计算机硬件系统的基本分析和设计方法及相互关系,还使学生了解计算机系统的层次化结构概念,明晰硬件与软件之间的接口界面,建立起一个完整的计算机系统的整机概念,为后续相关硬件课程如计算机体系结构、微型计算机系统原理与接口等课程的学习打下良好的基础。
1 课程教学现状
1.1教材建设问题
计算机组成原理课程教学课时相对较少,但是其理论性强、知识面广、内容多且更新快,教师难教,学生难学。现有计算机系统内部都是由超大规模集成电路组成,缺乏和书本相一致的硬件电路帮助学生加深认识。如果在没有相关基础知识的前提下,直接介绍现有的较复杂的新技术、新方法和新知识,学生熟悉和掌握有一定困难。
1.2教学方法存在的问题
由于“计算机组成原理”课程的知识点较多,现有的教学课时数较少,所以教师在教学过程中基本采用传统的“填鸭灌输式”教学方法,虽然教学工具从“粉笔+黑板”逐渐转变为“黑板+课件”,提高了教学效率,使教学内容更加紧凑,但仍然存在许多弊端,比如因为内容较多,学生在听课时没有充分思考的时间,缺乏足够的课堂交互,过分依赖拷贝教师的课件,不注重课堂理解,使教学效果较差。
1.3實践教学问题
计算机组成原理课程的實践教学在整个课程教学中有着重要作用,其主要實验内容包括运算器、存储器、控制器等各部件實验以及基本模型机的课程设计實验。但在现有的實践教学过程中,基本是由老师给出實验步骤,学生负责验证完成實验,对其中用到的相关知识及工作原理学生不能完全理解,缺乏对實验过程中出现错误的分析和解决能力。如果改用FPGA平台采用VHDL或Verilog语言进行设计型實验,虽然相对验证型實验而言,實验内容得到了改进,但由于学生个体差异较大,有的学生在相对有限的實验时间内无法完成,實际效果大打折扣。
2 教学改革
针对以上问题,笔者所在的课程教研组从教材建设、教学内容组织、教学模式、教学方法、實践教学等几个角度出发,进行了一系列教学改革和實践。
2.1教材建设
通过分析CC2005教程体系、《高等学校计算机科学与技术专业发展战略研究报告暨专业规范和计算机科学与技术专业研究生入学考试专业基础课全国统一命题考试大纲》对计算机组成原理课程知识点的要求,笔者所在的教研组重新编写了课程教材,将重点放在讲述一般性原理,不针对任何具体的商业机型,综合国内外计算机类型中较为成熟的先进技术,兼顾计算机发展的新技术、新成果,力求做到深入浅出。同时,为了避免一般性的抽象原理不利于分析理解,该教材即反映了不同的典型结构,也有深入的分析,点面结合;通过一个模型机的實例将相关章节联系起来,最终形成一个整机的概念,系统性较强。新教材紧密联系實践环节,加深了学生对所学知识的理解深度和应用能力,提高了学生的学习兴趣,取得了良好的学习效果。
2.2教学内容组织
计算机组成原理课程教材的内容覆盖范围广、知识点多、理论性强,但是在当前课时日益减少的情况下,不适合不加取舍地照本宣科,如何站在计算机硬件系统课程群的角度对课程内容进行适当取舍,对前导课程计算机基础、数字逻辑电路已经讲过的相关内容可以略过,以习题或课堂提问的方式引导学生回忆曾经学习的内容。对于将在后继课程中讲到的内容,比如流水线技术、虚拟存储技术、通道输入输出方式等,只提及基本概念、结构和工作原理,不需要精讲分析,将相关内容留给后继课程去讲解。
2.3教学模式选择
改革现有的以课堂教学为主的教学模式,辅以多媒体、网络教学。在多媒体课件设计的过程中,竭力避免大段抄袭教材内容的课件,强调概括突出章节知识要点,针对课程内容抽象、實物演示存在难度的特点,课件主要内容以动态演示为主,生动形象地描述地址流、数据流、指令流在计算机内部的操作过程,让学生能以更直观的方式理解计算机内部的信息处理过程,提升课堂教学效果。此外,在网络上提供一个以学生为中心的网上学习环境,除了實现课程相关资源上网以外,针对每个章节设置试题库,考核学生对相关知识点的掌握情况,并设置板块对历年考研试题进行解答分析,安排任课教师轮流在网络上对学生反馈的相关学习问题进行答疑解析,使学生与老师的互动不受时间和地点的限制。
2.4教学方法改革
传统的教学方法是灌输式的,笔者在对中西方教学方法进行了解和比较后,探索将启发式教学、类比式教学、案例教学等多种教学方法综合应用到计算机组成原理课程教学当中。
现有的情境教学、启发式教学强调创设适合问题的情境。所谓问题的情境是指不能直接使用自身已有的知识处理,但可以间接利用已有知识处理的情境。这就需要教师根据本课程的教学内容,围绕特定的课程主题,设计合适的问题,激发学生的求知欲,强化其学习兴趣,引导其主动探求更多的新知识。在教学过程中,教师需要鼓励学生敢于质疑,敢于提问,而且要从不同角度提出问题、思考问题。例如在讲解运算器ALU的时候,可以先提出问题,为什么衡量计算机运算速度可以采用每秒钟多少次加法这个性能指标?加减乘除四则运算之间是否可以合并化简?从而让学生思考计算机的算术运算功能的實现主要依靠什么部件,是否存在同一个部件能够同时完成所有的四则运算功能?这就可以引申出加法器的基本概念,使学生明白在计算机中用来實现运算的核心部件是加法器。在實际教学过程中,还需要尊重学生的个性思维,给予他们开放式的答案,这对于提升学生的学习兴趣,保持学生持续的学习动机非常有帮助。
类比教学是指在讲授过程中将一些概念、策略和思想等比较抽象的内容与现實生活中的生动事例进行关联、类比,从而将学生可能认为抽象的概念、理论形象化、生动化,使其掌握知识更牢固。例如,将日常生活中最简单的接电话与中断处理过程相联系起来,在日常的工作过程中,突然出现的手机铃声就是中断请求信号,打进电话的呼叫者就是发送请求的中断源,因为被呼叫者无法预知呼叫的时间,所以打进电话的过程是个随机事件,具有和中断相同的特征——随机性。手机的分组铃声和来电显示可以用来区分呼叫者的身份,是用来识别不同中断来源的标志,这个过程是个中断识别的过程。而被呼叫者中止当前正在执行的工作,选择接听或者挂断电话的过程是中断响应的问题,接听是响应中断,挂断则是不响应。如果设置了来电过滤的黑名单和白名单属于中断屏蔽的问题,黑名单上的呼叫者将会被屏蔽掉,白名单上的则不会受影响。被呼叫者接听电话回应呼叫者的过程属于中断处理过程。接听完毕,挂断电话,重新开始原来被中断的日常工作属于中断返回。整个过程和中断处理过程如出一辙,通过这样一件简单的日常事例,学生可以由此及彼的掌握整个中断过程。
案例教学法在一些法学、管理类教学中早已广泛运用,它是通过實际案例来反映教学内容中的一些基本原理和方法,提高学生思考问题、分析问题和解决问题的能力,重视培养学生学习兴趣的一种教学方法。案例教学法关键在于选择合适的案例,案例必须具有典型性,具有普遍意义,这样的實例在教学过程中值得花费精力讨论和设计。计算机组成原理课程内容比较抽象,案例教学对CPU数据通路的教学非常有效,特别是指令执行过程部分,通过对模型机案例的信息流分析以及和现代计算机硬件系统结构的直观对比,介绍计算机系统的新理论和新技术,加深学生对计算机硬件系统各功能部件的基本原理、基本结构的理解和掌握。
2.5實践教学改革
2.5.1實验内容改革
学院从过去的固定结构實验平台下的验证性實验,过渡到FPGA實验平台下的设计性實验,使實验项目更加灵活,實验内容与教材内容保持一致,避免實验与课堂教学脱节的问题,做到课堂教学与實践环节的统一,巩固教学效果。
2.5.2實践教学方法改革
从2004年开始,笔者所在的教研组针对不同类型的学生,采用了层次化教学法,并在后续的實践中,陆续采用了任务驱动式實践教学,建立實践教学平台等多种方法提高教学效果。层次化教学法是针对学生的个体差异,在教学大纲允许的范围内,将實践任务分成基本、常规、提高3个层次,基本层次完成原理验证型實验,常规层次完成给定框架内的设计并进行验证,提高层次鼓励学生综合所学知识,實践自己的创新设计。课程组在编写指导书时就对不同层次分别指导,如课程设计指导书中基本层次完成CPU的微程序设计,着重于理解指令的實现过程,常规层次还要完成CPU的硬件设计,从设计的角度理解计算机的工作原理。在實施中采用学生申请、指导老师审核的方式选择层次,层次的选择不影响成绩的档次,保证每个学生都能通过實验有所收获。
任务驱动式教学就是把所要学习的知识转化为对应的任务,教师通过引导学生分析任务、通过主动探求完成任务来實现所要达到的教学目标。它符合探究教学模式,强调知识和技能的传授应以完成典型“任务”为主,强调学生在密切联系学习、生活和社会實践的有意义的“任务”情境中,通过完成任务来学习知识、获得技能、形成能力。在计算机组成原理课程的實践教学过程中,以模型机CPU的设计作为實践教学的核心任务。之所以选择CPU,主要是由于CPU对大多数计算机专业学生而言,是既陌生又熟悉的一个具有神秘感的硬件,能够充分调动学生的学习兴趣;同时CPU又是整个计算机系统的控制处理中心,负责指令的解释执行,實现了对计算机系统中各个功能部件的管理控制,可以帮助学生深入理解计算机的工作原理。在整个實践教学过程中,这个核心任务被分解成若干个环环相扣的子任务,如伴随课堂教学进度进行的运算器、高速缓存、控制器等部件设计,由浅入深、循序渐进,在期末课程设计的时候,由学生设计實现各种不同结构和功能的CPU。学生可以将所学知识融会贯通、综合运用到CPU设计过程中,给有潜力的同学留下了足够的创新空间,对于培养学生的创新能力、创新思维有着较大帮助。
计算机组成原理知识点范文6
关键词:计算机组成原理;汇编语言;教学改革
中图分类号:G642.3 文献标识码:A 文章编号:1002-4107(2016)07-0014-02
一、“计算机组成原理”课程的特点
“计算机组成原理”是研究生入学考试的必考科目。该课程以冯・诺依曼型计算机为基础,围绕计算机的运算器、控制器、存储器和输入输出设备等五大部件详细介绍它们的工作原理与算法以及具体实现的电路结构。通过学习本课程,要求学生熟练掌握单总线结构CPU的工作原理和设计实现的方法,同时要求学生初步掌握精简指令系统、流水线结构、多体并行存储器、中断的工作原理等知识,为后续课程“微机原理与接口技术”、“计算机系统结构”做好准备。该课程首先讲授了8086CPU的编程结构,然后引申出8086汇编语言的寻址方式和指令系统,学生在掌握上述知识的基础上,进行汇编语言程序设计。汇编语言程序设计可以让学生加深对程序设计方法的理解,同时程序的编写和调试使学生对计算机硬件有一个感性的认识, 为以后他们学习“微机原理与接口技术”、“操作系统”等课程做准备。
根据国家教育部高教教执委的新的教学改革精神,结合我院的具体情况,我院将“计算机组成原理”与“汇编语言”两门课程合并成一门全新的“计算机组成原理”课程。在新的教学体系中,我们将两门课程有效地结合起来去糟取精删繁就简,舍去了两门课程中的重叠部分而突出重点,形成了一套新的教学体系。
二、“计算机组成原理”与“汇编语言”教学内
容的融合
在传统的“计算机组成原理”课程中,教师始终围绕着计算机的五大部件按照运算器、存储器、控制器、输入输出系统这个顺序进行讲解,在讲授过程中经常会用到一些实例进行说明,而很多时候是以汇编语言做例子讲解的,两门课程融合在一起的最大好处就是教师在讲授“汇编语言”的部分时,可以更好地兼顾“计算机组成原理”,让这两门课程做到无缝对接。
在基础知识部分,我们首先要介绍冯・诺依曼型计算机的特点。冯・诺依曼型计算机是串行计算机的始祖,所有的串行计算机都要符合冯・诺依曼型计算机的特点,这是“计算机组成原理”基础知识部分的重点。在课程讲授过程中,教师都会画一幅五大部件的关系图,通过图形示意来表示一条指令是如何在五大部件之间流动的,从而使用户从外部观察到计算机处于运行状态。我们考虑从这里引入8086CPU的编程结构,从计算机组成原理过渡到汇编语言,让指令举例更加具体化,再结合指令的寻址方式,借机说明8086的汇编语言指令是如何在CPU中执行的。
在接下来的讲授过程中,我们将介绍8086汇编语言的寻址方式和指令系统。由于在计算机组成原理课程中也有一章介绍指令系统,我们可以把这个部分与汇编语言的内容合并,以计算机组成原理的部分强调基本概念,以汇编语言的内容来强调具体应用,把内容更加具体化,举例更具有针对性,可以使学生更好地理解寻址方式和指令系统。在这里我们在教学上做了一点改变,我们考虑到汇编语言指令数目较多的特点将指令分类,每类指令选出一到两个具有代表性的指令进行详细说明,其他略讲,然后采用写出指令执行结果的方式进行大量练习,从而巩固这部分知识。
在讲授了汇编语言的程序设计方法之后,再讲授计算机组成原理部分的运算器与运算方法部分。在这部分我们可以利用学过的汇编语言知识,结合布斯算法和加减交替法编写定点数乘除法的汇编语言程序,还可以编写浮点数运算的模拟程序。在讲授控制器的部分时,我们可以设计一个类8086的CPU,把它作为课堂上的CPU设计举例,这样把一条8086汇编语言指令放在这个CPU中运行,可以更直观地反映指令的工作细节,促进学生对控制器的工作原理和汇编语言的理解。
三、“计算机组成原理”与“汇编语言”实验内
容的融合
“计算机组成原理”与“汇编语言”都有实验课,由于在讲授上先讲“汇编语言”的内容,因此相关实验先进行,然后进行“计算机组成原理”的实验。我院的“计算机组成原理”实验课程使用的是由清华大学计算机学院研制开发的TH-union+教学实验系统,该系统主要用于“计算机组成原理”课程的硬件教学实验,还支持监控程序、汇编语言程序设计。在硬件上同时实现了硬布线方式和微程序方式两种控制器结构,既支持用中小集成度的芯片实现CPU的方案,又支持用高集成度的FPGA门阵列实现CPU的方案。在软件上可实现指令级模拟,也可以软件模拟硬布线和微程序的操作,为学生学习硬件理论知识起到了重要的辅助作用。但是该实验系统的汇编语言指令与8086汇编语言是不兼容的,这使学生在短期内很难快速掌握实验系统的汇编语言指令,因此经课程组全体教师研究决定,另外开发一款新的汇编语言转换软件,用来实现两种不同种类的汇编语言互相转换。
该软件是利用linux模拟环境Cygwin开发实现的。Cygwin是cygnus solutions公司开发的一个在windows平台上运行的类UNIX模拟环境。在这里我们主要使用了Cygwin开发环境里的flex和gcc两个工具软件。利用flex工具软件编写的源代码必须转换成c语言代码格式,然后由linux下的c语言编译器gcc编译成可执行文件,完成最后的开发。
由于TH-union+教学实验系统的汇编语言指令共48条,采用精简指令系统,每条指令的寻址方式是固定的,因此不单独设置关于寻址方式的标志位,当指令进行译码操作的时候,实验系统电路通过分析指令的操作码既了解了指令的操作功能也了解了指令操作数的寻址方式。而8086汇编语言指令是一个复杂的指令系统,每条指令对应着多种不同的寻址方式,因此我们把教学实验系统的汇编语言看成是8086汇编指令系统的子集。通过对转换程序my的使用,帮助学生对比两种汇编语言之间的相同点和不同点,通过对比学习,学生可以更快速地熟悉实验系统汇编语言。
在这里对于不可转换的汇编语言指令可采取两种处理方式:方式一,发出警告提示并忽略此条指令;方式二,发出错误提示并强行结束程序转换。转换程序your分析了操作码之后开始分析操作数的寻址方式。在这里,我们假设所有指令都采用双操作数,因此在结构体中设置了两个对应寻址方式的变量。具体操作时,如果分析出该操作数的寻址方式可以被实验平台支持,那么就将对应数值保存在结构体的对应变量中以便转换,如果不是实验平台支持的寻址方式,系统将提示用户:“你的程序中使用了不可转换的寻址方式”,并强行结束转换。在寻址方式转换过程中,有一些特殊情况需要系统自动追加指令。
最后,要对输入输出指令单独处理。输入输出操作是后续课程“微机原理与接口技术”的重要知识点。在编写汇编语言程序过程中,当遇到输入和输出操作都是直接调用DOS中断或BIOS中断来实现的。但是教学实验系统没有任何中断程序辅助操作,遇到输入和输出操作只能由学生自己编写。在编写8086汇编语言程序过程中,凡是遇到输入和输出操作都通过调用这两个宏来实现。每次进行输入输出操作时必须先对指定的状态寄存器的标志位进行判断,以确定硬件是否准备好,是否可以进行输入输出操作。具体做法是使标号由英文字母和数字构成,每次产生新的标号,后面的数字部分就加1,保证新标号与旧标号不同。
“计算机组成原理”和“汇编语言”是计算机科学与技术、软件工程专业的专业课程,这两门课程存在着很多联系同时也有一些区别,把这两门课程合并成一门全新的“计算机组成原理”课是我院一项新的教学改革方案。如何把两门课程很好地融合在一起就成了课程组面临的一个新的挑战,本文结合课程组全体教师的多年教学经验,抛砖引玉,初步提出了一些在教学和实验上的改革方案,希望各界同人多提宝贵意见。
参考文献:
[1]唐朔飞.计算机组成原理:第二版[M].北京:高等教育
出版社,2008.
[2]王诚,刘卫东,宋佳兴.计算机组成与设计:第三版
[M].北京:清华大学出版社,2008.
[3]沈美明,温冬婵.IBM PC汇编语言程序设计:第二版
[M].北京:清华大学出版社,2001.