基于FPGA技术的课程教学改革探索
2015-04-24胡靖,杜西亮
胡靖,杜西亮
摘 要:文章从FPGA技术的内涵与开展FPGA技术相关课程教学改革的现实意义出发,阐述了俄式电路专业基于FPGA技术的课程教学改革目标,并提出了基于FPGA技术的课程教学改革策略,旨在提高集成电路专业学生的就业竞争力。
关键词:集成电路;FPGA技术;教学改革
中图分类号:G642.3 文献标识码:A 文章编号:1002-4107(2015)03-0035-02
FPGA(Field Programmable Gate Array)即现场可编程门阵列,是1985年美国Xilinx公司率先推出的一种新型的可编程逻辑器件,其规模大、集成高、灵活性强,实现逻辑功能广。这为集成电路设计迈上了一个新的台阶,既克服了原有可编程器件门电路只能实现小规模电路,又解决了专用集成电路设计流程中需要反复验证反复调整设计的不足,可以作为专用集成电路设计的原型验证,及早发现错误及早更改,避免重复工作。随着FPGA技术的快速发展,新型号的产品层出不穷,其在通信、数据处理、网络、工业控制、军事和航空航天等领域得到广泛应用。FPGA技术已经成为从事集成电路设计工程师必须掌握的技术之一。目前,基于FPGA技术的集成电路设计已被许多高校集成电路专业作为主要的授课及实践课程。
近年来,社会对熟练掌握FPGA技术的高素质高校毕业生的需求逐年增加。国内外知名企业每年都会到高校高薪招聘FPGA验证工程师、FPGA数字设计工程师和SOPC设计工程师。为满足社会需求,各高校相关专业开设了包含FPGA技术内容的课程,如黑龙江大学集成电路与集成系统专业,从2011年开始开设了“FPGA原理与应用”“硬件描述语言”和“SOPC设计技术”等相关课程。但是,由于学生基础课程掌握不牢,同时受实验条件及师资的限制,一些高校在FPGA相关课程教学中偏重讲授硬件描述语言,而在FPGA应用方面涉及得很少,直接导致学生的实践技能较差,就业时难以满足企业需求。面临就业压力,为了提高自身竞争力,一部分学生花费金钱和时间自费到社会培训机构进行FPGA技术方面的学习。因此,开展FPGA技术相关课程教学改革研究具有重要的现实意义。
项目组成员针对FPGA技术在集成电路设计领域中的应用进行了详细的调查与分析,得出了可靠的调研结果,提出了初步的课程设置整合方案,重新设计教学内容,修改部分实践教学内容,制定了FPGA技术的应用技能评价标准。
本学期对FPGA相关的课程体系进行改革,主要包括“FPGA原理与应用”“硬件描述语言”“SOPC设计技术”“数字集成电路设计”这四门课程,通过设置教学试点,取得了一定的成效。
一、基于FPGA技术的课程教学改革目标
针对课堂教学的局限性,鼓励学生养成课外积极收集相关专业知识的主动自学能力;鼓励学生积极参加各种设计竞赛,将所学知识灵活应用于实践,并使学生逐渐形成创新性思维,具有较高的工程素质和实践能力。
二、基于FPGA技术的课程教学改革策略
1.明确教学目标,即通过对集成电路相关企业进行调研,了解企业对集成电路专业学生在FPGA技术方面所需的应用技能,进一步明确FPGA技术的教学目标。往往每个企业的研究方向不同,所用的开发环境、仿真工具都各不相同。为了满足学生就业需求,教学目标应该重基础、求延伸。在基础扎实的基础上,在应用方向上寻求延伸,使学生多接触各种常用的典型开发环境。
2.整合与FPGA技术相关的课程,设计教学内容。由于几门相关的课程由不同的教师在不同学期授课,同时存在着有些知识点重复讲授,而有些重要知识点又在课程中没有涉及到的现象。再加上对于硬件描述语言的学习仅仅通过课堂教学是远远不够的,应该边学边练。根据专业特色、企业需求及修订后的教学目标,对原FPGA技术相关的多门课程的教学内容进行深入分析,依据教学内容的关联程度,制定课程整合方案,调整教学计划,合理安排授课内容,做好衔接,充分利用教学资源。主要包括“硬件描述语言”增设相应实验课(modelsim仿真);原“数字集成电路设计”的实验内容改为quartus ii开发工具综合项目设计实验;“FPGA原理与应用”除了介绍原理应用方面外,另增设针对FPGA实验箱的实验项目(Xilinx的ise开发工具);“SOPC设计技术”课程中要求学生熟练掌握sopc builder 和 Xilinx EDK开发环境,使学生同时掌握并比较两大公司的典型开发环境,以及系统级设计方法。
3.增设“ASIC综合与时序分析”课程。现有的一部分FPGA教学实验,仅仅停留在让学生熟悉FPGA的设计流程、设计步骤,这远远不够。综合时序分析在电路设计中起着至关重要的作用,应进一步加强综合时序分析环节,数字集成电路实验不能仅停留在将RTL级代码映射为电路结构的表面工作,应深入分析电路的时序、面积及功耗,让学生具体体会各种约束在电路具体实现中的意义。因此,增设“ASIC综合与时序分析”课程,针对ASIC设计购置了Synopsys软件并建立了相应机房,使学生熟练掌握不同的设计软件,以满足设计需求。
4.调整实验计划,提高学生的动手能力。数字集成电路实验通常以Modelsim仿真为主,学生只有在最后一个综合实验中才能用到FPGA开发板,开发板利用率不高,而且学生对开发板的熟悉程度根本不够。应该增加FPGA开发实验项目,让学生熟悉开发板结构、核心器件及外设结构、连接方式,真正能熟悉开发工具,熟练掌握开发流程,鼓励学生多动手、多实践,真正做到活学活用。
5.加强师资队伍建设。由于行业技术更新快,新技术、新工具层出不穷,而学校又存在讲授知识老旧,教师技术参差不齐等诸多问题。因此必须加强师资队伍建设,进行定期技术培训,及时更新知识结构。通过定期培训,可以为课程中实验授课做较好的技术支持。同时支持教师参加培训,使一线教师能有机会直接与各地从事集成电路数字设计的一线工程师(包括清华微电子所、中芯国际、华纳电子、大唐微电子等知名单位的一线工程师)进行交流。及时了解行业新动态、新趋势、新技术以及主流工具,更好地将最新的知识及相关信息传授给学生,紧跟时代步伐。
6.变革教学方法。传统的教学方法强调以课堂为中心、以教师为中心、以教材为中心,主要以讲授为主,而忽视学生的积极性、主动性及创造性的发挥,这将影响FPGA技术的教学效果。而且这种方式过于枯燥,对FPGA技术教学远远不足。在FPGA技术的教学中,根据讲授的内容,采用不同的教学方法。除了课堂讲授外,在讲解具体实例时应采用演示法。FPGA技术的实践性和应用性很强,设置相关课内实验应分为基础性实验、提高性实验和综合性实验。在实践教学中要坚持“重基础与技能、求综合与创新”的改革思路,加强学生工程思维训练、调试和分析能力,提高实践教学体系的创新性、综合性。除课堂讲授外,督促学生在教师指导下自学、自讲,以讨论为主的教学方式,并根据合作程序及自愿原则进行分组。针对“集成电路设计方法”课程教学内容,建立课外创新小组,为每个小组的阶段性成果在课堂上进行成果发布,锻炼学生的语言表达能力,建立自信心。同时,由教师引导,对创新小组遇到的问题进行课堂讨论、分析,调动每个学生的积极性,提高学生自行发现问题、分析问题及解决问题的能力,取得了很好的效果。教师通过与学生互动了解学生的兴趣、难点所在,有目的地调整教学内容,使课堂更灵活、更有效地解决学生在学习过程中的各种问题,
7.与企业合作,建立实训基地,培养学生的团队精神。有些能力较强的学生习惯于独立完成某个项目,这违背了企业需要具有团队协作精神成员的培养方针。实训基地以分组形式分配项目,对每个学生进行明确分工,让学生在每个项目中分别担任项目团队中的不同角色,承担各自的任务,以团队形式完成所分配的项目,并且每个学生在课程结业时必须完成项目团队中不同角色的任务,得到相应学分。以实际项目为基础,领着学生从立项到着手设计再到最终完成设计,让学生熟练掌握项目完成的各个过程。在进行综合项目实现的过程中,学生能体会到课堂知识用于实践是远远不足的,这将促进学生查找相关资料进行自主学习,培养学生的自学能力、发现问题、分析问题及解决问题的能力。
8.制定FPGA应用能力评价标准。以教师通过每个学生在项目中完成任务比重、创新性思维,加上教师对学生宣讲内容及表现,以及学生互评的结果作为学生FPGA应用能力的综合评价结果。从合作意识、动手能力、沟通能力、分析解决问题的能力等方面进行综合评价。
经过教学试点评估,通过课程改革,一些参加创新项目的学生能顺利通过就业招聘单位的笔试面试考核,就业率明显提高。进入创新小组学习的学生中有1/3能独立编写程序,1/4能独立完成小型创新设计,全部学生能够掌握FPGA设计流程。
参考文献:
[1]倪晓明.FPGA课程教学的实践与探索[J].中国电力教育,2011,(35).
[2]叶波.FPGA课程教学改革探索[J].中国电力教育,2010,(24).
[3]马志强.FPGA课程教学改革研究[J].中国校外教育,2009,(S1).
[4]李立凯,杨宁.高职院校FPGA课程教学探索[J].科技信息,2014,(4).