杨 军,孙欣欣,张 坤,田粉仙
(云南大学 信息学院,云南 昆明 650091)
我国正在全面实施创新驱动发展及“互联网+”“一带一路”倡议等一系列重大举措,目的是为了让学生把理论与实践相结合,掌握相关实验科学的基本理论、方法和技能[1];培养学生实事求是、严肃认真的科学态度,灵活多变、敢于创新的科学思维和刻苦钻研、坚韧不拔、团队协作的科研作风。建设与发展“新工科”是提高人才竞争力和深化工程教育范式改革、满足国家产业经济发展的现实需求[2]。云南大学在“新工科”背景下也注重加强学生在实践教学中自主学习能力和创新能力的培养。
2017 年2 月以来,教育部积极推进“新工科”建设,先后形成了“复旦共识”“天大行动”和“北京指南”[3]。目前,云南大学信息学院所涉及的新工科专业有计算机科学与技术,其中主要包括数据挖掘、深度学习、机器学习、云计算、人工智能、图像处理等相关方向的研究。为响应教育部的号召,云南大学信息学院将在这些基础上探索实验教学的内容和方法,提高实验教学质量,发挥实验课程培养创新人才的作用[4-6];同时,根据培养目标和人才理念,建立科学、多样的评价标准。可见,对实验课程教学质量和效果进行正确的评价,顺应国家教育改革和发展的整体趋势,对加强实验室建设、深化实验教学改革、完善实验课程教学理念与方法,最终提升实验教学水平、提高人才培养质量具有重大意义。
基于FPGA 的SOPC 系统是以硬件描述语言为基础进行相关电路的设计与开发[7-8],图1所示为基于FPGA 的SOPC 嵌入式系统知识体系。该课程以电子、计算机编程等技术为基础,在学习SOPC 实验课程的过程中,除了必备一定量的理论课程基础和熟悉以FPGA 为基础的硬件结构以及开发软件外,还要求能够将软、硬件结合,在实际的编程设计中掌握硬件电路的开发技巧。
传统的基于FPGA 的SOPC 实验教学方法是以理论教学为主,先讲解硬件描述语言和FPGA芯片的内部结构和逻辑关系,在此基础上进行开发软件的学习,最后基于开发软件生成的系统,在实验箱上完成一些验证实验[9-11]。这种教学方法主要有以下几个问题。
图1 基于FPGA 的SOPC 嵌入式系统知识体系
(1)传统的计算机专业很少将软硬件结合起来进行一个项目的设计,FPGA 的并行性也仅仅用于硬件实现。传统的基于FPGA 的SOPC 实验课程教学以课本理论为主,教师在理论授课时通常只注重讲解基本原理,内容枯燥抽象,而且其实验课程教学是以验证性实验为主,学生只需按照实验要求操作得到正确的实验结果即可,不注重实验设计的原理,也不注重学生创新思维的培养。例如,在讲解基本的乘法器实验时,采用图2 所示的教学方式,学生往往一知半解,很难激发学生的兴趣,也无法让学生体会到学习硬件设计的乐趣,更难以发挥学生学习的主动性。
(2)在实验过程中学生过分依赖老师的指导,在乎实验的结果而忽略实验的过程,做SOPC 实验时,使用Verilog 语言编写乘法器,不验证实验数据结果的正确性。学生即使产生了比较有创意的电路设计方法,也无法通过有效的实验手段去验证,在实验过程中只能掌握最基本的软件使用方法,无法深入地理解电路编程的编写思想和实践思路。同时,由于实验教学学时安排分散,导致一些用时较久、规模较大、设计较先进的综合性实验无法有效地展开,进一步降低了学生的学习成果。
(3)最后,传统的基于FPGA 的SOPC 实验课程教学考核分为期末考试和平时实验成绩,且实验部分注重实验完成的数量,不注重实验完成的质量,使得一部分学生对于平时的学习过程和实践环节不够重视;期末考试注重考前突击复习,为了考试而学习,达不到培养应用型人才的教学目的。
因此,需要研究在“新工科”背景下的SOPC 课程的改革,从而培养一批创新型、实践型人才[12]。
案例式教学与传统的课堂理论授课方式不同,它是通过对实验项目的讲解和适当拓展,将课堂知识点整合到其中,以降低理论知识的抽象性,同时要求学生在教师讲授案例的同时,边学习边实践,在工程实例的实践中学习到各种知识,这样不仅能加深学生对知识点的理解,还能锻炼学生在实际操作中发现问题、分析问题、解决问题的能力,真正达到学以致用的目的。
以FPGA 实现乘法器为例,讲解案例式教学的具体实施方案如图3 所示。用案例式教学方法讲授乘法器实验时,应首先让学生单独思考乘法器的构成,结合自己的知识储备,设计出自己认为最合理的乘法器原始电路;其次将学生以小组为单位分为若干组,进行组内讨论,学习其他学生的设计思想;最后指导老师对该实验进行权威讲解,并根据学生设计的优秀思路或误区,针对性地进行乘法器实验的扩展指导,同时在指导老师的讲解过程中,要求学生边听课边实践,在项目实践中学习乘法器的理论知识。
图3 基于案例式的乘法器实验教学
案例式教学方式也对教材有特定的要求,开课前不仅需要根据教学大纲精选实验案例,优化整合课程教学内容,选择合适且经典的工程应用案例,还需结合学生的知识储备基础,针对不同地区、不同学校的学生选择合适的教材来设计案例,做到因材施教。
实验内容方面,在原有的实验基础上增加与工程案例相关的设计型和综合型实验内容,将实验环节设计为4 个等级:验证型实验、设计型实验、综合设计实验和创新型实验。验证型实验的实验内容较为简单,旨在锻炼学生能够熟练使用SOPC 系统开发软件和培养正确的SOPC 系统开发思维。设计型实验有一定的难度,要求学生有足够扎实的理论基础,且设计方法并非唯一,可充分锻炼学生的思维创造能力,使其能够设计出更合理、占用硬件资源更少的SOPC 系统。综合设计实验较为复杂,为确保能在有限的时间内完成此部分实验,可将学生分为两人一组,在学生熟练使用SOPC 开发软件的基础上,综合运用所学知识和查阅相关资料完成实验项目,初步培养学生的自主学习能力和团队协作能力。创新型实验是在综合设计实验的基础上展开的,要求学生自主学习FPGA 及其相关技术,设计出高效且实用的SOPC 系统。
实验方法手段方面,改进和设计实验课件,针对同一个实验使用不同的技术,让学生全面地掌握基于FPGA 的SOPC 系统设计方法。例如,在乘法器的实验教学中,采用图4 所示的流程实施教学。
图4 改进的乘法器实验教学流程
首先通过验证型的实验理解乘法器的硬件原理,再通过自学SOPC Building 和Qsys 组件,综合运用不同的技术实现乘法器,达到全面掌握乘法器的设计目的;进而以乘法器为基础,通过综合设计型实验,设计出算术逻辑部件ALU;接下来通过自学FPGA 及其相关技术,在ALU 的基础上创新设计出并行运算器,并以此并行运算器为基础,设计出高效且实用的科技作品;最后可将自己的科技作品申报国家创新项目、参加电子设计大赛、发表论文等。
以上实验内容和方法手段的改革紧紧围绕实验、设计、创新3 条主线,可以有效地锻炼学生运用科学知识与方法解决实际问题的能力以及团队协作能力、独立学习能力,将学生的学习成果转变为科技作品,极大地提升学生的学习兴趣。
为了进一步激发学生学习的积极性和主动性,需对实验成绩考核进行改革。实验成绩考核的改革包括平时成绩、实验操作成绩、实验报告成绩和综合实验成绩,其改革的核心是在实验课上推行座位实名登记表及现场检查验证制度。
实验课采用按实验台编号登记学号、姓名,实验完成后由实验指导老师现场检查实验系统的运行情况及实验结果正确与否,再根据具体情况现场打分(A、A+、B、B+、C、C+)。学生的考勤也以登记表为准,总计占实验成绩的70%~80%。
在“新工科”背景下,云南大学信息学院开设了新的专业以及新的研究方向。基于FPGA 的SOPC 系统设计是电子类和计算机类专业的一门必修课程,未来电子行业对FPGA 嵌入式人才的需求主要集中在SOPC 系统设计工程师上,目前我国高校开设的基于FPGA 的SOPC 实验课程存在过于注重理论教学、实验部分以验证性实验为主、缺乏创新思维培训等问题,导致学生失去学习兴趣,达不到培养应用技术型人才的要求。因此,一套科学的实验教学方法就显得尤为重要。
基于FPGA 的SOPC 实验课程自2015 年改革以来成果显著。云南大学系统结构实验室指导的学生课外科技小组本硕学生共发表EI 检索科技论文26 篇,其中,研究生18 篇,本科生8 篇;获得软件著作权8 项。2016 年指导本科课外科技小组获得全国大学生电子设计竞赛全国二等奖和云南赛区一等奖,指导硕士生连续3 年获得研究生电子竞赛优胜奖,在学校组织的“互联网+”比赛获得一等奖等。
通过采用案例式的教学方法、合理地选择和设计教学内容、改变课程考核方式等措施,不断完善实验教学环节:验证型实验、设计型实验、综合设计实验和创新型实验,旨在激发学生的学习兴趣,提高学习效率,充分调动学生学习的自主性和培养学生的创新创造能力,达到培养应用型人才的目标。