DS-VLAB在计算机组成原理实验教学中的应用

2022-04-02 03:32肖凯,李雯
电脑知识与技术 2022年33期
关键词:计算机组成原理实验教学

肖凯,李雯

摘要:实验是计算机组成原理课程教学的重要环节。针对目前传统实验箱存在的不足,将DS-VLAB虚拟实验环境应用于计算机组成原理实验教学,提出了递进性实验设计思路,以总线与微命令实验为例,分析了DS-VLAB的应用过程。教学实践表明,DS-VLAB具有灵活性和良好的互动性,激发了学生学习课程的兴趣,取得了较好的效果。

关键词:计算机组成原理;实验教学;DS-VLAB

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

文章编号:1009-3044(2022)33-0171-03

1 引言

计算机组成原理是计算机类专业的专业基础课。该课程的教学目标是让学生掌握计算机硬件系统各功能部件的组成、工作原理、设计和实现方法,建立计算机硬件系统的整体概念,从系统的角度完整、准确地理解和掌握计算机系统的组成原理与内部运行机理,为后续专业课程学习奠定基础。从教师的授课角度来看,教学内容相对比较抽象,学生不容易理解,而实验可以让学生逐渐领会并掌握如何通过典型的芯片去构建并实现计算机各部件的功能,是非常重要的一个教学环节。

在很多高校,计算机组成原理的实验教学还依赖一些科教仪器厂生产的配套实验箱,但是客观上还存在明显的不足:

(1)硬件投资较大,很难保证一人一台套,而多人一组做实验,效果难以保证,另外配套的实验箱往往只能针对“计算机组成原理”一门课程,或者兼顾一门相关课程,导致实验设备及场地资源的投入效能比较低下。

(2)实验设备维护的时间成本和费用规模不可控。百密一疏,学生的某一次错误地连线,可能导致芯片器件或功能部件的永久损坏,该套实验箱就无法正常工作,维修时间和维修费用等都会明显影响实验教学的实施。

(3)实验箱具有不可重构的特点,功能扩展性较差。计算机组成原理的教学内容不可能是完全一成不变的,当需要增加新的设计或验证实验时,实验箱将会捉襟见肘,无法满足实验的需求。

鉴于以上不足,计算机组成原理实验教学采用虚拟实验系统是一种较好的选择[1-2]。目前计算机组成原理虚拟实验系统主要有两种平台环境,分别是基于Logisim[3-4]和基于DS-VLAB[5-6],两者各有千秋。Logisim需要安装Java运行时环境才可以运行,华中科技大学以及美国的康奈尔大学均采用Logisim作为计算机硬件类课程的仿真教学。采用DS-VLAB不需要安装Java运行时环境,主要基于浏览器客户端来运行,对学生而言,具有比较好的操作度和接受度。

2 DS-VLAB简介

DS-VLAB全称为多思计算机组成原理网络虚拟实验系统[5],是一款开源的网络虚拟实验软件,由湘南学院张雯雰老师设计开发。DS-VLAB有两种运行模式,即单机模式和B/S模式。在单机模式下,只需要Windows操作系统,IE浏览器10.0以上版本即可,因此单机模式是最为便利的运行模式,可以不受实验室时空的限制,方便地实施计算机组成原理的实验教学。

DS-VLAB在某种程度上模拟了真实世界的计算机组成原理实验过程。主要体现在三个方面:

(1)根据实验目的,结合课堂所授知识点,构想实验的原理图;

(2)根据原理图,对照DS-VLAB提供的典型元件库,构造实验的电路图;

(3)基于DS-VLAB提供的虚拟环境,绘制电路,进行设计、测试和验证。

其中的“绘制电路”即可实现了常规实验箱的功能,而且具有灵活性和扩展性。DS-VLAB系统主界面包括菜单栏、工具栏、工具箱和工作区四个部分,学生在实验时,只需要根据电路图,将元器件从工具箱拖到工作区,以连线方式连接相关元器件的引脚,值得注意的是,用鼠标操作连线时,可感知引脚的热点区域,且连线具有一定的方向性,通常是从某个输出连接到某个输入。完成全部连线以后,就可以进入运行模式,进行后续的实验设计和验证。

3 DS-VLAB在實验教学中的应用

DS-VLAB的实验内容包含全加器、运算器、存储器、总线与微命令、累加器、程序计数器、微程序控制器、简单模型机、微程序设计等九个实验和一个模型机课程设计[5],涵盖了计算机组成原理这门课程大多数比较核心的知识点、实验设计和验证点,同时也支持实验的扩展设计。

3.1递进性实验设计

针对DS-VLAB的实验内容进行一定的裁剪,通过以下的分类及组合,可以充分地体现递进性实验设计理念。

(1)初级:验证型实验

包括全加器、运算器、存储器实验。其中全加器实验要求掌握全加器的逻辑结构,构建1位和2位全加器逻辑电路,并进行结果验证;运算器实验要求掌握算术逻辑运算单元的工作原理,以4位算术逻辑运算单元74LS181为对象,验证其算术和逻辑运算功能;存储器实验要求掌握SRAM的工作特性,以2K×8位SRAM芯片6116为对象,验证其读写过程。

(2)中级:设计型实验

包括总线与微命令、程序计数器实验。其中总线与微命令实验要求理解总线、微命令与微操作的概念,在运算器与存储器之间构建数据通路,设计微命令完成所需的运算功能,建立起初步的整机概念;程序计数器实验要求在总线与微命令实验的基础上,掌握使用微命令通过程序计数器从存储器中读取指令和数据的方法。

(3)高级:综合型实验

包括简单模型机、微程序设计实验。其中简单模型机实验要求掌握微指令与机器指令的关系,建立较全面的整机概念;微程序设计实验要求深入理解微程序控制器的电路组成和工作原理,在简单模型机的基础上,设计并调试4条机器指令的微程序,验证每条指令的功能。

上述三种比较典型的实验类型和七个典型的实验内容,在制定实验课程计划时,可按照初级、中级、高级三种类型兼顾,根据实验学时灵活组合,通过递进性实验,由基本的元器件构造成计算机组成部件,由计算机组成部件构建成系统,有利于培养学生独立思考和实践能力,通过这种循序渐进和潜移默化的过程,让学生逐渐建立起计算机硬件系统的整体概念。

3.2典型实验案例分析

现代CPU的两大核心部件为运算器、控制器,而操作控制器是CPU控制器的重要组成部分。控制器在实现一条指令的功能时,把每条指令分解为一系列时间上先后有序的最基本、最简单的微操作,即微操作序列。指令操作流程与相应微操作序列的安排,主要取决于数据通路的结构,不同的数据通路有不同的微操作序列。

数据通路是许多寄存器之间传送信息的通路,用来实现CPU内部的运算器与寄存器,以及寄存器之间的数据交换。在各寄存器之间建立数据通路的任务,正是由操作控制器来完成的。操作控制器的功能就是根据指令操作码和时序信号,产生各种操作控制信号,以便正确地建立数据通路,从而完成取指令和执行指令的控制。

以中级类型的总线与微命令实验为例,该实验属于设计型实验,有利于让学生深入理解总线的作用,通过数据通路分析与时序控制,构造出微操作序列,熟悉并掌握CPU指令的执行过程,通过运算器,控制器(手工模拟)、内存储器之间的相互作用,初步建立计算机硬件系统的整体概念,有利于开展后续的简单模型机、微程序设计实验等综合型实验。

如图1所示[5],其中ALU由2片74LS181构成,寄存器DR1、DR2和AR均为一片74LS273,RAM为一片6116芯片,Δ表示三态门74LS245,时序发生器为虚拟实验系统提供的虚拟组件,因此学生在准备实验时,需要熟悉4位算术逻辑运算单元74LS181,8位数据锁存器74LS273,三态输出的总线收发器74LS245,2K×8静态随机存储器6116等芯片器件的功能特性、管脚定义和连接方式。

在图1中,包括ALU、DR1、DR2、RAM在内,几乎所有的器件都连接在单一的总线上,数据或地址信息的传送均是通过总线来完成的。本实验用人工设置数据开关的方法来模拟控制器生成微命令,完成一系列操作和任务。对照单总线数据通路原理图,绘制出实验原理图,通过协调各芯片器件工作状态来确定微命令,正是学生的核心设计任务。

该实验电路如图2所示,上部中间的13个数据開关用来连接控制信号,这个需要学生在深刻理解图1所示的数据通路原理图的基础上,正确地与相应的芯片引脚相连。数据开关的不同状态组合代表不同的微命令,可执行相应的微操作。在图2中,由2片74LS181构成的ALU可以实现多种算术逻辑运算,可以进行多种微命令的设计和验证,比较典型的有:

(1)求A⊕B

A从数据开关输入,B是存储器操作数,需要从指定的存储单元取操作数,B的地址也从数据开关输入,运算结果通过数据显示灯显示。

(2)计算A-B→存储单元C

A和B都是存储器操作数,A、B的地址以及地址C都从数据开关输入。

总线与微命令实验作为一个典型实验,在实验过程中,微命令的设计可以通过可视化数据开关操作,结果的验证很容易从特定存储单元读取或者通过数据显示灯显示,通过这种虚拟仿真,学生能够有很直观的印象,有效加深对课堂所授内容的理解。

4 结束语

DS-VLAB作为一种虚拟实验系统,可以弥补固定实验箱的不足,借助于虚拟仿真手段,非常适合计算机组成原理的实验教学。我们的教学实践证明,将DS-VLAB应用于实验教学,递进式开展实验,可以充分体现实验的灵活性和直观互动性,激发学生的学习兴趣,达到较好的实验教学效果,有利于学生充分理解计算机各功能部件的工作原理与整机的工作过程。

参考文献:

[1] 吴继明,钟群锋,曾碧卿.虚拟仿真技术在计算机组成原理实验教学中的应用[J].计算机教育,2019(3):34-38.

[2] 许海杰,刘升.计算机组成原理实验平台改进研究[J].通化师范学院学报,2019,40(4):82-86.

[3] 何苑,张剑妹.Logisim在计算机组成原理实验教学中的应用[J].忻州师范学院学报,2021,37(5):31-34.

[4] 刘跃华,梁英,何静.虚拟仿真实验在《计算机组成原理与汇编语言》课程中的应用[J].电脑知识与技术,2020,16(11):138-140.

[5] 张雯雰.计算机组成原理实验教程[M].北京:中国水利水电出版社,2016.

[6] 王莉.基于多思虚拟平台的计算机组成原理实验仿真[J].山西大同大学学报(自然科学版),2021,37(6):30-32,35.

【通联编辑:王力】

猜你喜欢
计算机组成原理实验教学
关于基础教育阶段实验教学的几点看法
电容器的实验教学
几何体在高中数学实验教学中的应用
面向计算机系统能力培养的计算机组成原理实验教学
用“工程思维”引领《计算机组成原理》课程教学
《计算机组成原理》课程建设的改革与探索
基于云计算的计算机实验教学探讨