APP下载

EDA技术在《计算机组成原理》实验教学中的应用

2011-07-13戚梅张鹏

电子设计工程 2011年17期
关键词:计算机组成原理原理逻辑

戚梅,张鹏

(山东科技大学 信息学院,山东 青岛 266510)

《计算机组成原理》是计算机科学与工程技术类专业的一门核心课程,是学习计算机硬件系统的关键课程。计算机组成原理涉及的知识面宽、跨度大、概念抽象,对实验教学提出很高的要求[1]。提高该课程的实验教学水平,加深学生对课程的理解,培养学生设计能力和创新能力具有重要的意义。随着电子技术的不断发展,数字系统的设计方法也在不断地进步,传统的手工设计过程已经被先进的EDA工具所替代。计算机作为一个典型的复杂数字系统,其设计方法发生了根本性的变革,因此,应用EDA技术是计算机组成原理课程实验改革的方向。

1 “计算机组成原理”课程实验的现状

“计算机组成原理”课程实验一般采用的是现成的计算机模型实验系统,这类实验系统已将CPU的各个组成部件全部做好,学生按要求连线、拨动开关或编写微程序就能完成实验。该类系统对提高学生的动手能力、提高学生对计算机整体和各组成部分的理解、提高学生的计算机综合设计能力有很大帮助。但是在实验过程中,也发现这种实验方法局限性较大,器件的扩展相对困难,学生的设计难以突破实验项的限制[2]。有些学生对实验过程不求甚解,缺乏对实验的主动思考能力,仅关心尽快完成电路连接,对原理电路中功能和工作逻辑并不深究,只是按老师安排好的实验步骤完成实验,而对于步骤的原因及电路结构根本不加思索。这样做实验,无法真正做到理论与实际的结合,有时结果出来还不知道是怎么回事,也就很难培养出动手能力强、有创新能力的学生。

2 EDA技术的引入

EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。在“计算机组成原理”课程中引入先进的数字系统设计方法EDA,可以在一定程度上解决上述难题。EDA技术的出现,使计算机组成原理实验可以通过可编程逻辑器件进行修改和重构,实现系统编程和硬件逻辑设计的软件化,设计方法较灵活,极大地提高了电路设计的效率和可靠性。

3 利用EDA技术进行实验的步骤

本实验系统中使用的大规模可编程逻辑器件是Lattice公司的ispLSI1032芯片。CPLD芯片具有 “在系统可编程功能”,这种功能可随时对系统进行逻辑重构和修改。实验系统中采用ispDesignEXPERT软件来对可编程逻辑器件进行编程设计实现,在该编译器中可采用原理图或硬件描述语言或这2种方法的混合输入共3种方式来进行设计输入,并能对所设计的数字电子系统进行功能仿真和时序仿真,其编译器是软件所需要的熔丝图文件。 该软件支持所有Lattice公司的 ispLSI器件[3]。

EDA技术在计算机组成原理实验中不仅可以进行运算器、存储器、总线传输、组合逻辑控制器等部件单元实验设计,还可以进行综合实验设计,包括CPU设计、基本模型机设计等,充分体现了自主和自动设计风格。由于EDA设计非常灵活,考虑到计算机组成原理实验课不同于EDA设计课程,没有更多的学时讲授EDA设计方法,所以采用层次教学和开放教学手段。实验在PLD综合开发工具ispDesignEXPERT软件环境下进行,只用少量学时进行软件基本功能使用培训,如对大多数学生要求采用画电路图的方法进行部件设计,并不要求一定要学习ABEL语言和编程设计电路,对有能力的学生鼓励采用ABEL语言编程设计[4]。

4 EDA技术在计算机组成原理实验教学实例中的应用

下面以“基于EDA技术设计CPU控制器”为例,通过设计五条机器指令(MOV、ADD、JMP、LOAD、STORE),利用大规模可编程逻辑器件CPLD设计CPU的组合逻辑控制器,在编译器中可采用原理图与硬件描述语言混合输入的方法来介绍EDA设计的过程[5]。

1)组合逻辑控制器原理图

组合逻辑控制器本质上就是一个组合电路,它将输入逻辑信号转换成一组输出逻辑信号,即控制信号。它是根据指令系统的操作时间表用组合逻辑线路形成的微命令序列。组合逻辑控制器的输入信号有:指令译码器的输出、时序信号和运算结果标志状态信号等。输出的就是所有各部件需要的各种微操作信号[6]。组合逻辑控制器结构如图1所示。

图1 组合逻辑控制器Fig.1 Combinational logic controller

2)指令格式及指令的寻址方式

MOV、ADD、JMP 3条单字长指令为单周期执行完成,STORE、LOAD两条双字长指令为两周期执行完成,A为存数或取数的直接地址,寻址方式采用寄存器寻址及直接寻址两种方式。

3)顶层电路及程序描述

根据以上指令格式,在ispDesignEXPERT软件设计环境下,组合逻辑控制器可由一个顶层模块电路原理图2来描述。用ABEL语言设计PLD子模块的功能描述程序,编译所设计的程序,将生成的JED文件下载至CPLD芯片ispLSI1032中。

图2 CPLD顶层模块电路原理图Fig.2 The top module circuit principle of CPLD

根据控制信号时间安排,对每个控制信号进行逻辑综合和化简,得到控制信号的最简逻辑表达式,用ABEL语言设计PLD子模块的功能描述程序如下:

4)在该CPU的指令存储器中设置以下程序

连接实验电路,联上PC机,将上述程序写入相应的地址单元中。单步执行机器指令,可通过地址显示灯检查指令执行的地址,运行完成后通过PC机联机软件测试模型机的逻辑功能。

从以上例子可以看到,在EDA软件的辅助下,可以从指令设计开始,非常容易的设计出自己的CPU,并验证正确性。如果在教学过程中,融入EDA设计过程,将使学生对CPU的组成及工作原理有非常透彻的理解和领悟,同时也巩固了逻辑电路的相关知识。EDA工具提供的是虚拟器件和仪器,学生在实验中就不存在损坏实验器件和仪器的可能,使学生可以放开手脚大胆地进行实验;另一方面,由于EDA技术的引入,学生在课堂上完不成的实验,可以存盘后利用课余时间继续在自己的计算机上完成[7]。因此,利用EDA技术,学生可很方便地开展综合性、设计性、自主性的实验,进而可完成大型硬件的原型设计,或进行创新性课题的研究,提高学生硬件设计能力,从而改变目前学生硬件动手能力差的弱势。

5 结束语

基于EDA技术的实验教学,在巩固学生计算机组成原理课程理论的学习,熟悉CPU各个功能部件的工作情况,促进学生的感性认识,培养学生计算机应用能力和创新能力等方面起了积极的作用。采用EDA技术将为学生进行自主实验、综合实验和创新实验提供广阔的发展空间的同时,还全面提高了学生工程实践能力和学习硬件设计的兴趣。

[1]陈媛,黄贤英.基于EDA技术的计算机组成原理实验教学探索[J].重庆工学院学报:自然科学版,2007,21(2):136-138.

CHEN Yuan,HUANG Xian-ying.Exploration on experimental teaching of “principle of computer organization”based on EDA technology[J].JournalofChongqing Institute of Technology,2007,21(2):136-138.

[2]李丽萍,盛琳阳.基于EDA技术的计算机组成原理实验课开放性教学模式研究[J].计算机教育,2010(10):55-57.

LI Li-ping,SHENG Lin-yang.Research on open educational model of technology computer composition principle experiment class based on EDA[J].Computer Education,2010(10):55-57.

[3]戚梅,张鹏,东野长磊.基于CPLD组合逻辑控制器模型机的设计与实现[J].实验室研究与探索,2010,29(7):64-66.

QI Mei,ZHANG Peng,DONGYE Chang-lei.Design and realization of model machine based on CPLD combinational logic controller[J].Research and Exploration in Laboratory,2010,29(7):64-66.

[4]刘文英,李克文,纪友芳.基于EDA技术的计算机硬件体系实践教学探索[J].计算机教育, 2008(14):160-162.

LIU Wen-ying,LI Ke-wen, JI You-fang.The study of practice teaching on computer hardware system B computer education[J].Computer Education,2008(14):160-162.

[5]戚梅,程勇.计算机组成原理实验教程[M].北京:北京航空航天大学出版社,2008:73-84.

[6]白中英.计算机组成原理[M].4版.北京:科学出版社,2008.

[7]郭连喜,王美妮.基于EDA技术实验教学环节的改革探讨[J].高等农业教育, 2005(3):55-56.

GUO Lian-xi, WANG Mei-ni.The reform study on experiment teaching base on EDA[J].Higher Agricultural Education, 2005(3):55-56.

猜你喜欢

计算机组成原理原理逻辑
刑事印证证明准确达成的逻辑反思
逻辑
创新的逻辑
了解咳嗽祛痰原理,有效维护健康
平均场正倒向随机控制系统的最大值原理
女人买买买的神逻辑
化学反应原理全解读
《计算机组成原理》综合教学辅助平台的设计与实现
面向计算机系统能力培养的计算机组成原理实验教学
用“工程思维”引领《计算机组成原理》课程教学