EDA技术教学探索

2014-04-29 07:41胡刚毅曹涌
中国信息技术教育 2014年23期
关键词:探索教学

胡刚毅 曹涌

摘要:EDA技术有很强的综合性和实践性,有其特殊性和要求。本文分析了目前EDA技术教学的现状和存在的问题,指出了硬件语言教学学时过多的弊端,以学生真正系统地掌握该技术入手,从组建兴趣小组、不同梯队配备实验平台、Verilog语言与VHDL语言并重讲授、SOPC的重要性等方面讨论了EDA技术教学的改革思路。

关键词:EDA;教学;探索

● 引言

随着信息技术的发展,EDA技术(EDA即电子设计自动化的缩写,EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作)已经普及到各个领域。当今国内各大高校电子信息类专业都开设了EDA技术课程,它因理论性和实践性强而迅速取代了传统的电子设计方法,是当今电子技术设计的趋势,但其面临的最大问题是技术更新速度快,需要教学内容、教学思想和教学资源都不断更新。如何将新技术有效传输,如何让EDA技术与现实生产生活中的例子结合起来,让学生能够从认识技术到理解技术转变,使学生能够很快利用该技术解决现实生活中的问题这些都值得我们思考。

● EDA技术的教学现状及存在的问题

长期以来,由于各高校对本科生实验投入有限,教师无法做到手把手带领学生进行一个完整的项目,学生在学习的过程中大多是应付学习,缺乏寻找硬件进行实训的主动性,以致学生学完以后仍然无法独立进行FPGA项目的开发。同时,学生在学习关于可编程逻辑阵列的结构特点、相互交叉点可编程内容时,往往不知道从何下手,但这些内容对硬件电路设计,以软件语言的思维去改变硬件电路结构至关重要。可因为在理论课上一般是使用国内高校流行的教学硬件语言VHDL语言进行教学,会使学生错以为前后两个部分没有联系,进而感觉索然乏味,造成学习兴趣缺乏。

EDA教学主要是利用现代电子系统的设计方法,使用可编程逻辑器件实现逻辑设计,同时也会讲授一些电路制作软件的使用以及仿真工具的使用。而因在市面上流行的硬件开发语言还有Verilog语言,加之各高校的教师掌握语言的熟练程度不一,也缺乏统一的教学指导,就导致各高校在讲授该门课程的时候,使用的平台各异,学生在学该门课程的时候往往满怀信心去学,结果到实际工作中却是面对另外一门语言。后续课程中,如SOPC系统设计,对学生和教师的要求很高,一般EDA课堂上也较少涉及SOPC的知识。学生在学习了EDA课程以后,往往感觉知道了一些,也会完成一些实训的小项目,但牵涉到如IP核等方面的技能时却不知从何下手。另外,由于FPGA设计的教学涉及方面很多,有理论学习部分,有实践应用环节,需要掌握新的计算机语言,熟练使用专业的软件平台,了解FPGA硬件内部结构,熟悉FPGA与外围电路的硬件设计,对理论教学、软硬件实验都有较高要求。除此以外,可编程逻辑器件的基础结构、FPGA芯片内部硬件结构等内容的教学难度大,硬件程序语言的语法规则较多,而所有的这些都是为了硬件开发能更快上手,可是,高校现今往往在讲述这些前述基础知识后课时也基本完了,这样就使得学生少了一些时间进行系统的开发,也没有时间深入理解软核知识对FPGA开发的重大作用。

● 改进EDA技术教学的方法

EDA技术教学主要依托的器件是可编程逻辑阵列,其课程结构可以分为:芯片内部结构演变发展及原理;硬件描述性语言;可编程片上系统设计。这三部分在EDA课程中有不同的比例。有的高校将这三个部分合为一门课程讲授,在笔者所在学校,是将前两个部分归为一门课程,后一部分归为一门课程。不论采用哪一种课程归属方式,这三部分都是相互联系、相互依存的。其目标是要让学生快速理解可编程器件的基本原理,从而能够自主完成系统设计。这就需要一个又一个系统的真实的实训案例教学,让学生能从原理理解、程序设计、系统分析等方面得到训练。使学生从孤立的设计到系统设计的转变,利用“逐项引导+项目驱动”的教学模式,培养学生的自主学习能力、系统设计能力和语言表达能力。

1.结合项目开发的课堂引导教学

笔者在多年的教学过程中,发现从可编程逻辑阵列的原理入手,引导学生进入FPGA的教学中,效果甚微,学生感觉无法理解,也不知这些原理究竟有何妙用,无法真正熟知FPGA的强大魅力所在。为此,后续教学中,我们试图引入案例教学,因为在学习EDA课程之时,学生基本上都有单片机学习的经验和过程。在给出案例的时候,有意识地让学生去思考,如果这个项目用单片机开发该如何进行?何处需要改进?耗费资源多少?速度多快?当学生已经进入硬件设计的殿堂之后,让学生首先观察同一个项目,用FPGA开发有何精妙之处。第一个项目一般是由教师给出,引导学生逐步讨论,然后自学、归纳、找出与单片机的相同与不同。让学生在有一个感性的认识后,变被动学习为主动学习。这样可以激发学生主动思考、发现问题、解决问题、归纳和总结问题经验的能力。例如,在学生的第一次课中,教师给出多路彩灯的实际案例,先让学生以单片机的思维去解决问题,他们一般能够很快入手。当换成FPGA的思维后,学生突然之间就能感觉到FPGA的强大,花样彩灯在变换过程中,利用硬件描述性语言并行思维的好处。教师可鼓励学生多提方案,并对方案论证辩论和反驳,得出最优方案。通过这样的一个简单但是却完整的过程,学生对FPGA的设计有了一个深刻的认识,同时也加深了理解。再来学习FPGA的原理、相互交叉逻辑点的编程组合,学生就会非常有兴趣,也不会望而生畏,这样就很好地解决了入门引导的学习问题。

2.组建兴趣小组,进行以学生为主的项目实践教学

我校的FPGA教学配备了Altera公司的实验套件,同时,也为每五人一个兴趣小组配备了简易的FPGA开发板,实验室同时也配备了SOPC实验平台。这些成梯队的实验设备的配备,不论从性能上还是拓展学习上,已能完全满足学生学习FPGA的需要,学生平时在课堂上学习理论知识,课下兴趣小组进行实践开发验证,笔者鼓励他们扩展外围应用,解决一些学科方面的问题,如林业物联网监控系统、数据处理等。学习之余,优秀团队提前进入毕业设计以及参与到教师的科研团队中,收到了很好的教学效果。学生也真正感受到FPGA的魅力所在,自觉钻研,动手能力得到了很大提高。对于动手能力特强的学生来说,简易的FPGA开发板已不能满足其需求,学生就会转移学习兴趣到SOPC实训中去。学生在一年多的训练中,已俨然达到了对一个初级工程师的要求,工作也是得心应手。这种课下兴趣小组以及我校本科生创新基地的教学模式,不仅能很好地训练学生,同时,也可有效激发不同层次学生的学习热情,带动一大批学生积极学习,培养了学生的团队精神、动手能力和创新能力,也能带动整个专业良好的学习风气。

3.建立网络教学体系,弥补学时不足的问题

当前,全球正流行MOOC教学模式,我校在探讨MOOC模式教学过程中,也根据自身的特点,开设了第二课堂。平时课堂上的讲授,学生都会产生很多问题,在课下通过实验验证中,也还会有一些不同问题。针对这个特点,我校充分利用网络资源,鼓励学生创建FPGA的QQ讨论群,让教师也加入其中,这样能够最大限度地解决问题,同时,要求教师将关键知识点、设计过程中的重要之处,都放在网络教学平台上,供学生下载查看,并提供讨论区供师生交流互动。另外,为了弥补教师工程实训经验不足的问题,我们广泛联系,邀请了很多FPGA企业中的工程师加入这个平台讨论。这种网络形式的教学,在很大程度上提高了教学效率,也使教学质量有了很大的提升。

4.引导学生逐渐掌握Verilog语言

目前,电子技术的飞速发展,各大公司也相继转型使用Verilog语言,而纵观国内高校的教学,很大一部分高校还在使用VHDL语言。究竟是选择VHDL还是Verilog语言,笔者认为都是可以的,但是,如果高校在教授VHDL语言中,引导学生形成正确的硬件开发思维后,也应该要讲授Verilog语言,毕竟从主流发展来说,Verilog语言已有逐渐上升的趋势。同时,因Verilog语言是以C语言为基础,学生也很容易接受,这样,语言教学学时就会减少很多,可以将更多的精力放到其他实践中去。同时,EDA的后续课程中如SOPC设计也有很多是从Verilog语言的角度去讲授的。我们的思路是语言是载体,不要花大力气去讲授,而应多花时间去引导学生如何进行硬件开发。VHDL和Verilog语言都应该花些时间告知学生,让学生能有一个全方位的认识,以后走上工作岗位,才不会感觉到对某门语言非常陌生而不知从何下手,能极大地提高学生工作的上手能力和应聘的成功率。

5.将SOPC教学引入到EDA教学中

SOPC技术是当今电子设计的主流方向,很多计算机类学生,他们没有电路基础的知识,也无法理解CMOS、TTL等原理,但是他们的强项是计算机语言编程,而SOPC正好提供了这样一个平台,可以将软件思维编程以硬件结构实现,这是以后硬件电路设计发展的一个方向。没有SOPC的体系,EDA就会逊色不少。随着FPGA技术的成熟,SOPC教学也逐渐引入到本科教学中,教学重点也不再关注基础性知识学习,而应该将重心放在系统设计领域,从硬件语言的设计转移到C/C++语言设计,使SOPC的功能能够以C/C++语言的形式体现,使功能更具体化。在这个阶段的教学中,要力求使学生体会到各个专业课程之间的联系与融合,进而感受到FPGA的强大魅力,自觉产生学习的兴趣和意愿。只有这样,才能真正学习好EDA。

● 结束语

EDA技术是一门技术性很强的学科,有它自身的系统性和要求,目前,很大一部分高校在教学过程中都将精力放在语言教学上,容易使学生认为这是一门硬件语言课程。我们要改变这种思维,合理安排语言教学学时,以案例教学为出发点,引导学生理解FPGA的原理和特点,并在此基础上,完成一个又一个的项目实训,而后,将学生引入到SOPC的体系和思维中,让学生深刻理解一个系统不仅有“器官”,而更重要的是有“心脏”。真正达到锻炼学生动手能力的目的,让学生身临项目实训之中,更好更快地掌握技能。同时,教师也要改变以往总是讲授VHDL的思维定势,逐渐引导学生掌握Verilog语言,这样,学生在以后的工作中,才不会对自己没有见过的语言产生陌生感。EDA技术课程,前沿性很强,待学习待掌握的方面还有很多,学生要学习,教师更要学习,只有这样,才能把这门专业课程讲授好,才能使学生学有所用。

参考文献:

[1]张玉叶.《EDA技术》课程教学思路与创新方向探索[J].太原师范学院学报,2013(3):142-144.

[2]晏伯武,田嵩.EDA技术及其教学相关问题的探讨[J].黄石理工学院学报,2010(2):63-67.

[3]高飞.EDA技术课程改革与实践[J].大学教育,2013(11):85-86.

[4]贾佳.EDA技术课程教学改革研究[J].大众科技,2011(4):168-169.

[5]周莉莉,周淑阁,井娥林.FPGA课程教学方法的探讨与研究[J]. 实验室科学,2013(6):65-66.

[6]余能辉.关于FPGA课程教学的实践及其探索[J].南昌教育学院学报,2012(11):49-50.

[7]邱欣寅,袁志骞.应用型本科FPGA课程教学模式的探索[J].教育教学论坛,2014(1):210-211.

猜你喜欢
探索教学
微课让高中数学教学更高效
如何让高中生物教学变得生动有趣
“自我诊断表”在高中数学教学中的应用
对外汉语教学中“想”和“要”的比较
创设探索情境,让学生在“探”中“学”
面向小学课堂教学的智能闯关游戏设计思路
社会转型期行政权控制的路径探索
房地产项目策划课程案例教学探索与实施
“创新人才培养模式”下的实验教学改革探索
跨越式跳高的教学绝招