VerilogHDL与计算机硬件课程融合探析

更新时间:2024-01-01 作者:用户投稿原创标记本站原创 点赞:6031 浏览:20491

摘 要:文中分析现代电子产品设计技术,VerilogHDL描述电路系统的方法与特点,依据近年来教学实践,结合计算机专业的特点,总结了VerilogHDL融入“数字逻辑”和“计算机组成原理”课程教学中的方法、经验与体会.

关 键 词:VerilogHDL;数字逻辑;计算机组成原理;计算机硬件

中图分类号:G642文献标识码:A文章编号:1009-3044(2012)07-1682-02

AnalysisonFusioninVerilogHDLandComputerHardewareSubject

CHENGGui-hua,QIXue-mei,LUOYong-long,ZUOKai-zhong

(CollegeofMathematicsandComputerScience,AnhuiNormalUniversity,Wuhu241000,China,EngineeringTechnologyResearchCenterofNetworkandInformationSecurity,AnhuiNormalUniversity,Wuhu241000,China)

Abstract:Inthispaper,itisanalyzedwithmodernelectronicproductdesigntechnologyandDescribingmethodsandcharacteristicsofcircuitsysteminVerilogHDL,accordingrecentyearsteachingpractice,biningthecharacteristicsofputerspeciality,experienceandunderstandingaresummarizedwithverilogHDLinto"digitallogic"and"principlesofputeranization"teachingmethods.

Keywords:VerilogHDL,digitallogic,ComputerOrganizationPrinciple,puterhardware

1概述

随着计算机技术和电子技术的飞速发展,EDA技术的兴起与应用使计算机硬件设计的理念与方法发生了巨大变化.计算机硬件课程的教学应紧随技术前沿,将EDA[1]关键技术和核心内容引入硬件课程教学,有利于学生掌握计算机硬件设计、制造、调试和运行维护等多方面的技能;培养和训练学生的动手能力、创新能力;提高计算机专业毕业生的“硬”功夫.

EDA的关键技术之一是采用硬件描述语言(HDL)描述电路系统,通过开发工具进行功能仿真、综合、优化、布线后可转换为FPGA码流文件[2],通过FPGA实现电路功能.对于FPGA来说,常用的HDL有VHDL和VerilogHDL[3],因VerilogHDL在门级描述的底层具有更强的功能,且具有类似于C语言的表达风格而被广泛选用.

“数字逻辑”是计算机专业的硬件基础课程,“计算机组成原理”是计算机专业的硬件主干课程,起承上启下的作用[4],将VerilogHDL纳入“数字逻辑”和“计算机组成原理”教学计划,并贯穿于整个教学过程,是目前计算机硬件课程教学的主流方向,更有利于提高学生创新能力与综合素质.

2VerilogHDL与“数字逻辑”课程融合

2.1重构数字逻辑教学内容

随着技术的进步,绝大部分电子产品采用了数字技术,电子产品的设计利用VerilogHDL完成.因此,数字逻辑课程应弱化中小规模集成电路芯片内部电路、触发器内部工作原理、状态化简、异步时序内容的教学,精简布尔代数和卡若图传统化简方法的教学;应结合VerilogHDL描述电路系统的方法与特点,重新组织数字逻辑课程教学内容.

VerilogHDL采用系统结构的设计思想、自顶向下的设计方法设计电路,可逐个模块分别描述、仿真与优化,简化整个电子系统的设计与实现.因此,“数字逻辑”课程的教学应突出功能模块设计的特点,强化芯片外部逻辑功能和时序特性的分析,FPGA原理的讲解与应用.在教学中以逻辑代数与VerilogHDL为基础,综合应用“自顶向下”,和“自底向上”的方法设计和实现教学案例.教学案例可选用计算机中的基本逻辑部件[5],如译码器、编码器、数据选择器、比较器、加法器组合逻辑与多功能移位寄存器、计数器、存储器时序逻辑等基础知识.通过课程的学习,初步建立计算机基本逻辑部件设计的概念,为后续硬件课程的学习奠定基础.

为巩固理论知识,可适当安排中小规模集成电路芯片设计应用性实验,如用138译码器设计端口寻址电路,用三态门和寄存器设计数据端口.然后,可安排基于VerilogHDL的功能模块的设计,通过FPGA完成超前进位加法器、串并转换、数码显示控制、优先级管理等计算机计基本模块的功能.实验教学采用开放模式[6],实验时间开放、实验环境开放、实验方案开放,教师重在实验方案上给予个性化的指导、激发学生的学习兴趣、注重学习动机的引导与思维方式的培养;加大实验考核的力度,考核实验方案的灵活性、学员对实验原理理解的深度及实验的可扩展性.

2.2适时引入VerilogHDL

在计算机专业领域,基于FPGA设计实现运算器、控制器、存储器、I/O接口、甚至整个计算机已很常见,因此在“数字逻辑”教学过程适时引入VerilogHDL,使两者融为一体至关重要.

首先,合理安排讲课顺序.将VerilogHDL的讲解安排在时序逻辑之后,结合基本逻辑电路图的分析与设计讲解VerilogHDL的相关知识,以便学生首先建立逻辑电路的概念,然后再将VerilogHDL与逻辑电路建立关联,深入了解VerilogHDL描述电路的必要性与优越性.

其次,重点讲解VerilogHDL与C语言的区别与联系.计算机专业的学生在一年级开始学习C语言,经过训练已具备良好的C语言编程经验与能力,而VerilogHDL具有C语言的表达风格,对于VerilogHDL的语法知识,学生容易掌握和理解,同时也容易混淆.

VerilogHDL与C语言的本质区别:一是VerilogHDL的描述必须与逻辑电路紧密联系,要求学生对所要描述的电路的功能、输入、输出、时序、状态转换等信息要有全面透彻的了解,通过分析与VerilogHDL程序对应的电路图讲解输入变量的赋值方法、解读输出变量、时序及状态转移等信息;二是语句执行机制不同,C语言完全是顺序执行机制,VerilogHDL的语句有顺序和并行机制之分,并行机制中语句描述的电路功能模块同时运行、与语句的先后顺序无关.

VerilogHDL与C语言的关联性:VerilogHDL主要针对硬件电路进行描述,算法表达不方便,而C语言因使用广泛,相应C语言的开发环境也就更加完善.因此,C语言与VerilogHDL可以互相配合使用,即利用VerilogHDL对硬件描述的精准性,借助C语言开发环境的完整性,快速高效设计电路系统.利用C语言的灵活性、查错功能强的特点设计功能正确的模块,然后将程序改为并行结构的程序段,调试正确后,再用VerilogHDL关键字替换C语言关键字,进入VerilogHDL环境,进行编译、仿真,并比较两种模块的输出结果,以便及时发现错误,重复上述过程直到正确为止.


最后,精心设计教学案例.教学案例的选择应综合考虑学生的兴起和课程的延续性.为激发学生的学习兴趣,可用VerilogHDL设计控制器使布置在圆周上的若干个发光二极管逆时针、顺时针或闪烁点亮且其时间间隔是可调的;为保持课程的延续性,可用VerilogHDL设计ALU、寄存器堆、多功能移位寄存器、单脉冲发生器等计算机计本逻辑功能部件,为“计算机组成原理”课程的学习奠定基础.

3VerilogHDL与“计算机组成原理”课程融合

计算机组成原理是计算机专业硬件主干课程,在整个课程体系中起着承上启下的作用,课程中涉及的知识面广,有些理论抽象难懂,将课程中难点与重点整合为教学案例,利用VerilogHDL进行描述,通过设计、调试、仿真与模块功能的实现可使学生深入理解课程中的重点难点,为后续课程的学习打下基础.

在计算机组成原理课程中融入VerilogHDL,重点是教学案例的设计,难易适中兼具渐进性和系统性.首先,利用VerilogHDL描述运算器,综合ALU、寄存器堆、多功能移位寄存器功能模块,再增加少量的状态寄存器即可完成,难度适中,同时充分利用数字逻辑课程中已实现的案例,通过调试、仿真使学生更好地理解运算器的工作原理;其次,利用VerilogHDL描述存储器;最后,利用VerilogHDL描述微程序控制器,微程序控制器是计算机组成原理课程的一个难点,由于微程序控制单元看不见、摸不着,涉及许多概念,如:微程序入口地址、微指令格式、下址等概念难以理解,通过设计、调试、下载和验证过程,可以深刻理解微程序控制计算机的本质,了解软硬件协同工作的原理,建立整机的概念.

4结束语

近年来,计算机硬件设计的理念与方法变化巨大,对计算机硬件课程的教学提出了更高的要求.实践证明,将VerilogHDL融入计“数字逻辑”和“计算机组成原理”课程教学过程,可以培养了学生理论联系实际的的能力,通过训练使学生掌握计算机硬件设计、制造、调试和运行维护方面的技能,提高学社实践与创新的能力.

随着计算机和电子技术的进步,计算机硬件课程的教学仍然还有很多工作值得我们去研究和实践,只有不断探索与总结才能有效地提高实验教学质量,使计算机硬件课程教学紧跟技术前沿.