“系统观”下的计算机组成原理教学探讨

2017-05-02 23:16马辉史小松
新校园·上旬刊 2016年10期
关键词:计算机系统教学内容教学方法

马辉+史小松

摘 要:计算机组成原理是计算机及相关专业的一门核心基础课程,能帮助学生理解计算机硬件的工作原理,构建计算机硬件工作系统。在系统发展观下,本文提出计算机组成原理教学内容的处理方法和有效培养学生系统能力的教学方法。

关键词:系统观;计算机系统;教学内容;教学方法

一、引言

计算机组成原理是计算机专业核心基础课,传统上主要讲述构成计算机硬件系统的各功能部件的基本工作原理以及互连构成整机系统的技术。从2009年至今,在计算机考研统考中,计算机组成原理内容占了约1/3的分值比例。

随着计算机科学内涵和外延的扩展,计算机组成原理传统的教学模式也有了改变,在教学内容、教学方法及实验内容上都有一定的改进。从计算机科学的长远情况来看,未来的计算机设计、应用更需要从系统角度考虑,所以对计算机组成原理进行教學改革很有必要。

二、教学改革原因分析

计算机系统由硬件和软件两大部分组成,但随着计算机结构的复杂化和应用领域的扩大化,通常用层次结构来描述计算机系统。一种计算机系统的层次结构描述如图1所示,传统的计算机组成原理主要讨论传统机器M1和微程序机器M0的组成原理和设计思想。

但这种主要关注硬件部分的教学思想,弊端早就被感知,在国外的教学中也早被摈弃。如Patterson和Hennessy教授曾指出,“软件设计者对软件系统运行环境的硬件技术是否了解、了解多少,会很大程度地影响软件系统的性能。同样,硬件设计者必须了解设计决策将对软件产生怎样的影响”。这种硬件、软件应一起考虑的思想,在我国正逐步推广。如清华大学科教仪器厂所生产的TEC-XP计算机组成原理实验系统,其提供的实验内容既包括对CPU结构的设计、机器指令的设计等,也包括使用Basic语言的软件设计。

从计算机考研统考对一般教师的教学及学生的学习所起的指导性作用来看,也在强化这种软硬件结合,即不能把计算机组成原理只作为一门硬件课程来看待。表1统计了2009~2014年计算机考研统考试卷中软硬件内容相结合的题目。

表1 软硬内容结合题目统计

而从计算机及其应用的发展来看,20世纪80年代,信息技术和通信为互联网打开了大门,到了90年代,一个很重要的革命始于嵌入式系统技术的传播。现在值得期待的是嵌入式和互联网融合的成果——物联网的出现。很难想象未来20年计算机科学会是什么模样,但2007年图灵奖获得者约瑟夫·斯法科思指出:计算机科学的范围正从算法和程序逐渐向系统转移。在这样的系统发展观下,对计算机组成原理这样的基础课程所进行的教学改革就具有非常重要的意义。

三、教学改革探讨

1.教学内容的改革

最初的计算机专业人员对计算机的工作原理和工作方式了如指掌。计算机体系中的硬件、软件、编译器以及操作系统之间的交互既简单又透明。然而,随着现代计算机技术的日趋复杂,这种明晰性不复存在,导致一种无法避免的结果,即领域专业化,使多门计算机科学领域应运而生,每个领域只涵盖学科的某一个方面。如果学生或计算机从业人员不能把多门课程知识融合到一起,他们常会产生不安的感觉,因为他们没有完全透彻地理解计算机硬件系统和软件系统是如何紧紧地关联在一起的。

21世纪的社会结构中,计算机将成为关键支柱。过去的计算机研究以性能作为主要的优化目标,现在必须认识到常规的计算机已经被上下文计算(如传感器、移动终端、客户端、数据中心)所取代。这种转变更强调超越性能的以人为本的设计目标。在这样的背景下,作为基础课程的计算机组成原理的教学内容就应强调多门计算机课程内容的综合理解。比如,计算机运算器部分内容的讲解,既需要基本的数字电路知识,也需要介绍基于FPGA或CPLD的电路设计,因为将来的系统应用可直接采用可重用的IP(知识产权)核。在基于FPGA的电路基础上,可以让学生从基本功能部件设计开始,设计CPU、存储器和外围接口,最终将CPU、存储器和I/0接口通过总线互连为一个完整的计算机硬件系统。

进一步考虑我们培养的学生,大多数人没有机会构造计算机系统,他们未来主要的工作只是使用计算机或编写计算机程序,所以在教学中对内容的选取也应从程序员的角度来讲解。比如,数据的表示与运算内容的讲解,应该考虑在实际语言程序中的执行情况,分析实际程序中常见的问题与误解。针对流水线等处理技术与编译优化相关,可以以MIPS为模型机进行介绍,利用MIPS模拟器为编译技术的实验提供可验证实验环境。

2.教学方法的改革

在教学内容改革的基础上,重视多门计算机课程内容的综合理解,增加了很多教学内容,这无疑会加重教师和学生的负担,所以此时的教学方法也应进行相应的改革。

(1)采用启发式教学方法。启发式教学方法是教师启发学生积极思维,使他们主动掌握知识的一种教学方法。在较多的教学内容下,教师不可能进行知识的详细讲解、分析,所以应该深刻理解课程的重点,了解计算机科学的最新发展和知识的应用情况,在必要时抛出一些问题,引导学生进行积极思考,主动探究问题的解决方法。如针对无符号数据的表示与运算,可启发学生分析C语言下和JAVA语言下的不同处理,最终理解计算机对数据运算的处理本质。

(2)突出理论知识的实际应用。计算机组成原理的教学内容多较抽象,学生理解的难度较大。教学中要注意理论知识的实现环节,针对一个理论知识点,给出其在实际系统中的应用情况,这会引起学生的兴趣。如浮点数的IEEE754表示,单纯通过讲授来掌握其表示特点非常困难,如果在实际语言环境中(比如C语言)让学生看到浮点数在机器中的二进制表示,就会非常直观。

(3)重视实验与实践教学环节。实验和实践是计算机组成原理教学过程的一个重要环节。一方面,可以进一步深化学生对理论知识的理解和掌握;另一方面,可以培养学生的实际动手能力,提高学生的学习兴趣,增强学生的创新意识。如利用一套承上启下的基于FPGA开发板的综合实验平台,不仅能完成计算机各功能部件的设计验证,也能创新性地设计CPU及整机系统。但现阶段的计算机组成原理实验设备和实验内容还有不完善的地方,在现有的教学模式下,实验和实践的课时是受限的,能突破课时限制的开放式实验环境比较匮乏。

四、小结

计算机系统是软件和硬件的组合,但未来的系统设计不应只考虑系统软件和硬件的交互,还要考虑系统和它的受控环境。目前的计算机科学教师常忽略对学科的宏观描绘,这也限制了课程的教学内容、教学方法及教学效果。本文立足于计算机组成原理,探讨了系统观下的教学改革情况。

参考文献:

[1]马辉,王丁磊.计算机组成原理[M].北京:中国水利水电出版社,2010:10-11.

[2]王丁磊.统考下的“计算机组成原理”教学方法探讨[J].计算机教育,2010(6):91-93.

[3]王志英.计算机专业学生系统能力培养和系统课程体系设置研究[J].计算机教育,2013(9):1-6.

基金项目:河南省综合改革试点专业“计算机科学与技术”(2012 -859-14)。

作者简介:马辉(1977— ),男,河南遂平人,讲师,研究方向:计算机教学与研究。

猜你喜欢
计算机系统教学内容教学方法
初中英语写作教学方法初探
教学方法与知识类型的适宜
IBM推出可与人类“辩论”的计算机系统
挖掘数学教学内容所固有的美
“启蒙运动”一课教学内容分析
分布处理计算机系统研究
MIMD 并行计算机系统结构与定量分析
“清末新政”也可作为重要的教学内容
基于国产CPU的立方星星载计算机系统设计
我的教学方法