岳珂娟 谢东 洪伟
摘 要:在新工科建设的背景下,为了培养适应未来新经济和智能时代需求的计算机专业人才,“计算机组成原理与体系结构”的实践教学需要培养学生的系统能力,使其能够胜任新型计算机系统的设计与开发任务。因此,本文分析了实践教学中存在的问题,基于仿真软件重新对教学方案和教学内容进行了设计,并在具体教学班级中实施,教学改革效果良好。
关键词:实践教学;系统能力;仿真软件;新工科
中图分类号:G642.0
一、研究背景
随着人工智能、云计算、大数据、物联网等新技术的高速发展和广泛应用,计算理论和方法也不断发展,并呈现出新的特征,形成了嵌入式计算、边缘计算、并行计算、智能计算、移动计算等多计算平台并存和融合的计算模式,处理对象的需求也表现出大数据化、智能化、多媒体化、网络化等特征,在此形势下,对计算机相关专业人员的培养也发生了重大变化[1]。教育部提出建设新工科,旨在使当前的工科教育更好地适应这些变化,培养具有持续竞争力的人才。为了适应未来新经济和智能时代的需求,计算机类专业人员需要深入了解和掌握计算机系统各个部件的工作原理,具有比以往更多、更深入的系统级的设计、实现和应用能力,才能胜任新型计算机系统的设计与开发任务。在工科专业类中,信息类的专业、在校生数量、毕业生数量都约占30%,而在信息类专业中计算机相关专业又占比近半,所以计算机类专业是新工科建设中数量最多、影响最大的专业。在信息技术快速发展和新工科建设的新形势下,在计算机类专业的建设和教育提升中,系统能力培养是最为迫切和重要的内容,系统能力的提升对未来计算机专业学生的理论和实践培养水平和质量具有重要意义和影响。
二、课程实践教学的特点和存在的问题
(一)课程实践教学的特点
“计算机组成原理与体系结构”是应用型本科计算机专业的专业基础课,该课程的教学内容涵盖了“计算机组成原理”和“计算机体系结构”两门课程的大部分内容,是计算机硬件与结构方向非常重要的一门课程[23]。其实践课的教学目的是让学生深入理解计算机基本工作原理,建立计算机的整机概念,掌握计算机系统性能的评测方法,最终具备计算机系统的分析能力、应用能力、设计和开发能力。实践教学的特点如下:
(1)内容抽象。实验内容涉及计算机五大部件的基本工作原理,包含的知识点范围非常广,且通常都只能用文字和静态的原理圖来表示,学生理解起来困难,难以将学到的知识具体化、形象化。例如控制器内部结构的构成,它是如何生成控制信号,如何产生时序信号,并控制其他各个部件协调一致工作等问题。
(2)学习难度大。实践教学中涉及的概念繁多,学生学习时容易发生混淆,例如微程序控制器的概念包括微命令、微指令、微程序、微周期等,同时运算器、存储器还需要学生掌握前导课程数字电子技术的相关知识,这些因素都会导致学生觉得实验课程的内容比较难。
(二)课程实践教学中存在的问题
目前大多数高校由于实验设备的限制,以及实验内容的设置不合理,导致“计算机组成原理与体系结构”课程的实践环节远远不能满足系统能力培养的要求。导致这个现象的主要原因有以下几个:
(1)在实验方式方面,大多数高校一直采用传统的实验箱的方法。实验课上,学生要将分离的器件通过导线连接构成小系统,通过拨动开关、观察信号灯检测验证系统的功能。由于芯片及电路在实验箱上是完全固定的,所以在实验过程中,学生只能照着实验指导书上的连线图连线,按照指导书的步骤完成实验,即不能看到各个部件之间的硬件逻辑,也不能观察到硬件在每一个节拍的工作状态,对知识点的理解的帮助微乎其微,无法培养学生的设计和分析能力。并且,如果实验箱出现线路故障,导致实验结果不正确,我们也很难检测出故障的位置和原因,只能更换设备重新开始实验,使得实验效率低下,也给学生的学习兴趣带来很大的负面影响。为了避免用实验箱进行实验带来的这些缺点,部分高校采用了FPGA开发板的形式,该实验方式是让学生先用硬件描述语言完成硬件设计的仿真,然后下载到开发板上进行调试和运行。其优点是有助于激发学生的学习兴趣,提高学生的硬件设计能力。但缺点是学习时间长,难度大,教师和学生都需要熟练地掌握一门硬件设计语言;另一个缺点是用程序来描述硬件设计,学生总感觉是在做编程实验而不是设计硬件,容易照搬软件编程的思维,很难建立起系统设计与底层电路的对应关系,数字电路设计方法难以很好地应用到实验中,对计算机系统的整体设计和实现方法体会不深。
(2)在实验内容设置方面,只注重单元部件的工作原理,忽视整机系统的设计和开发。结果就是,学生完成单元部件的实验后,却无法建立起整机系统的概念,不能从系统层面理解计算机各个部件是如何协调一致完成工作的。
(3)在实验结果的评价方面,由教师人工检查实验结果是否正确,检查耗时,难以准确定位实验出错的原因,不能科学地反映学生对实验的掌握程度。
因此,本文将从系统能力培养的角度研究和探讨新的实践教学方法,培养计算机科学与技术专业学生的系统分析、设计和开发能力,提升计算机专业学生的培养质量。
三、确立实践教学的目标
(一)知识目标
理解计算机中的数据表示方法,掌握定点数和浮点数的运算方法;理解指令格式、指令寻址、数据寻址等基本概念,掌握常用的指令寻址和数据寻址的方法;理解计算机的运算器、存储器、中央处理器、输入输出设备等部件的工作原理、工作过程;理解流水线的基本概念,掌握流水线性能的分析方法。
(二)能力目标
具有完整的计算机系统的整机概念,能够综合运用计算机组成与体系结构的基本原理和基本方法,完成存储器、运算器、控制器、直至一个简单模型计算机的搭建,利用精简指令系统设计并实现一个具体算法;具备对流水线中的各种冲突进行分析和解决的能力。
四、教学设计的关键点
结合教学内容,选择合适的仿真平台,将系统能力的培养目标分解为层次递进、由易到难的多个单元实验,在单元实验中构建功能部件,最终将各单元实验的多个成果集成为完整的CPU,直至计算机整机系统。实验的设计要按照基本部件的工作原理、简单设计、综合实现的三个层次依次递进,在递进的学习过程中让学生养成系统观,使学生具备一定的计算机系统的分析能力、应用能力、设计和开发能力[4],这是本课程实践教学设计的第一个关键点。
由于课内的实验课时有限,为了保证实践教学的教学效果,教师在教学设计时需要考虑课内课外的协同教学模式,包括课前、课中、课后三个阶段的课时安排、教学内容和教学形式,以及相关教学资源的建设,在完成基本教学目的前提下,提高学生的自主学习能力和创新能力,这是本课程实践教学设计的第二个关键点。
五、教学内容
本课程实践教学围绕计算机的五大部件展开,包括运算器实验、存储器实验、指令系统、简单模型机实验和流水线实验五个实验项目。具体要求如下所示:
(一)运算器实验
要求学生掌握一位全加器的实现逻辑,掌握多位可控加减法电路的实现逻辑(图1),利用仿真软件实现多位可控加减法电路,并在此基础上构造一个完整的运算器,实验加减法和乘除法等算术运算,与、或、非等逻辑运算,以及移位运算,并且能够判断是否溢出。
(二)存储器实验
要求学生理解存储系统进行位扩展、字扩展的基本原理,进而完成存储器扩展的设计和实现。例如,利用1M×4位的DRAM芯片设计2M×8位的DRAM存储器,存储器的设计如图2所示。
(三)指令系统
要求学生了解一个典型精简指令系统MIPS32的指令格式,通过执行一段指令代码,观察并记录寄存器和存储器内容的变化,理解常用指令的含义及使用方法。MIPS32三种指令的格式如表1所示。
(四)简单模型机实验
要求学生设计指令译码器、时序发生器、组合逻辑控制单元,构造一个单总线CPU,实现一个简单模型机并运行指定的程序。
(五)流水线实验
要求学生在流水线模型机上执行不同的机器指令,分析流水线中存在的冲突,并提出解决冲突的方案,比较解决冲突前后流水线的性能变化。
此外,仿真软件的学习要求学生在课外自学完成,教师只负责提供相应的教学资源,包括软件安装包、慕课视频等。
六、课程实施和效果分析
改革之后的实践教学内容已在本校的20级、21级和22级计算机科学与技术专业的10个班级实施。仿真软件使用Logisim,实验平台采用头歌实践教学平台和阿里云平台,我们在这两个平台上建立了相应的教学课堂并部署实验,学生通过注册账号加入相应的教学课堂,就可以在线完成相应的实验内容。运算器实验、存储器实验和简单模型机实验部署在头歌平台上,每个实验包含多个关卡内容,学生按照要求完成指定的关卡,由系统自动给出评分。我们以22级计算机科学与技术专业3个班级149个学生的成绩为例,对其实验成绩进行分析,结果如表2所示。从表2可以看出,运算器实验、存储器实验和简单模型机实验的完成情况和优秀率都比较好,尤其是存储器实验的优秀率达到了91%。三个实验的良好率都超过了90%,不及格率都没有超过5%,说明学生对整机设计的概念掌握得比较好,可以较好地将计算机五大部件通过总线和其他辅助电路连接在一起并实现指定的功能,具备一定的系统分析、设计和开发能力。
实验通关率如图3所示,从图3中可以看到学生没有开启实验的比例很低,说明大部分学生可以在规定的时间内完成实验内容,非常适应这样的实验方式。
改革之后的实践教学模式具有如下优点:
(1)不再依赖实验箱,完全通过软件仿真来实现硬件逻辑的设计,很好地解决了实验箱故障不可控、实验流程不可观察的问题。
(2)可以很方便地进行实验分层设计,使学生可以完成单元部件工作原理的验证实验,到CPU的设计实验,直至整机系统的综合实验,迅速提高系统层面的开发和设计能力。
(3)可以利用第三方的网络实践教学平台,通过设计测试用例,实现实验结果的自动评价,减轻教师的工作强度,使实验评价标准化。
在教学的过程中,仿真软件的使用主要依靠学生的自学,从实验结果看,大多数学生都可以较好地完成教师布置的自学任务。
结语
在计算机专业系统能力培养的框架下,采用实验箱或者FPGA进行“计算机组成原理与体系结构”实践教学的方案已经无法適应计算机专业人才的培养要求。我们尝试引入仿真实验平台,对现有的实践方式进行改革,使本课程的实践教学效果取得了显著的提升,同时实验平台的自动评分机制也保证了评分的科学性,为系统能力培养背景下的计算机专业硬件类课程的实践教学提供了重要的借鉴。
参考文献:
[1]杨志奇,何颖,李春阁.新工科背景下民办大学微机接口课程改革与实践[J].创新创业理论研究与实践,2023,6(7):5658.
[2]冯永政,郑坤.计算机组成原理实验混合式教学探索[J].电脑知识与技术:学术版,2022,18(30):125127.
[3]曹旨昊,刘三荣,张强,等.面向工程教育专业认证的《计算机组成原理》实验教学改革探索[J].电脑知识与技术:学术版,2020,16(29):2.
[4]刘彩虹,林强,满正行,等.基于慕课的计算机组成原理实验教学改革探索[J].产业与科技论坛,2021(12):133134.
项目基金:湖南省教育厅普通高校教学改革研究项目“面向系统能力培养的《计算机组成原理与体系结构》课程实践教学改革研究”,项目编号:湘教通〔2019〕291号1057
作者简介:岳珂娟(1977— ),女,汉族,湖南人,博士,副教授,研究方向:图像处理。