清华“计算机专业实践”课程的创新与实践

时间:2022-10-13 07:39:39

清华“计算机专业实践”课程的创新与实践

清华大学计算机系于2001年决定开设“计算机专业实践”课程,作为全系本科生的必修课。经过两年的准备,于2003年夏季学期在30多名本科生中进行了试点,2004年在全系185名本科生中授课,2005年在全系195名本科生中正式开课,效果很好。该课程经过4年多的建设,取得了如下主要成果。

一、创建了“计算机专业实践”课程体系

计算机专业是实践性、工程性很强的专业,实践环节十分重要,非常需要计算机软件、硬件和应用技术相结合。计算机专业实践涵盖计算机科学与技术一级学科主要专业方向,是知识面比较宽的教学实践环节。

“计算机专业实践”课程安排在大四整个夏季学期,共5周,200学时,5学分。其中,讲课15学时,方案设计和讨论30学时,方案实施125学时,总结、撰写实验报告、分组表演及答辩30学时。它是本科生中除综合论文训练之外学分最多的一门课程,也是学生相当重视的一门课程。

“计算机专业实践”是本科生在课程学习基本完成之后,综合论文训练之前安排的一个重要的实践教学环节,是一次综合性、创新性、研究型的大型实践教学,同时兼有趣味性和可竞技性等特点。学生在教师指导下,灵活运用所学到的基础知识和主要专业知识,自己设计、制作、调试,完成一个综合性、研究型的大型教学实验,让学生在实践动手能力、创新思维、专业知识、科研能力和团队合作精神等方面得到全面的训练。

学生在推研、考研、申请出国、求职时普遍把“计算机专业实践”作为本科学习阶段的主要成果之一,作为推荐信和简历中的重要内容。

“计算机专业实践”在整个本科阶段的培养过程中起到承上启下的作用,它综合了硬件实习和工程实践的优点,学生在老师的指导下,得到知识和实践的全面提高。本课程有别于低年级的硬件实习,低年级的硬件实习综合性不强;也有别于工程实践,工程实践作为教学环节,教学要求欠规范。另外,本课程与综合论文训练也有明显的不同,在综合论文训练中,学生研究的范围很窄,基本上都是软件课题。“计算机专业实践”有统一的课程要求,以硬件为主,软硬件结合。

二、以国外一流大学为标准,创建研究型大型实践教学环节

与国外一流大学相比,我们的计算机实验教学方法和实验手段相对比较落后,急需改进,本课程在这方面进行了有益的探索。

在课程建设初期,我们到美国的Stanford、Berkeley和CALTECH等三所大学考察了他们的计算机实践教学情况。另外,还通过互联网,访问了美国的Stanford、Princeton、MIT、UIUC、Harvard、Cornell等多所知名大学的实践教学情况。通过对比发现,我们与这些一流大学还存有许多差距。

1. 他们教学内容紧跟计算机技术发展。随着计算机软硬件技术的迅速发展,计算机系统中使用的硬件部件基本上都采用大规模和超大规模集成电路,这些电路的设计、验证和测试必须使用先进的工具,而我们目前的大多数计算机硬件实验采用小规模集成电路和手工布线进行。这种实验方法虽然能够学习计算机的基本原理,但是学生参加实际工作之前需要再培训。

2. 他们研究型实验的比例大,学生对实验有兴趣,有成就感。我们的许多实验,学生兴趣不大,应付和抄袭现象严重。

3. 他们注重创新意识与动手能力的培养,我们的验证实验偏多,研究型大型实验偏少。

4. 在实验方法方面,国外一流大学普遍采用先进的设计与分析工具进行实验,以专业人员的水准来要求。对于实验学时投入,国外大学通常开设3门左右硬件实验课,或以硬件实验为主的课程。在课程成绩的评价体系中,实验所占的比重较大。而我们在师资、实验室面积及TA的数量等方面都投入不足。

在开展“计算机专业实践”课程中,我们特别注重吸取国外一流大学的先进经验,采取了如下措施:

1. 实验内容紧跟计算机技术发展。在新开发的实验系统中,核心器件采用超大规模集成电路,在学生实验过程中采用了先进的设计和验证工具。

2.研究型大型实验教学。为本课程专门研制了多套教学实验系统和实验平台,学生不仅能够学习微处理器的设计、验证和测试原理,还能够学会相关工具软件的使用方法。

3.开放性设计。由于在新研制的教学实验系统采用了独创的实验方法,为学生提供了一个完全开放的实验环境,学生可以自由设计计算机系统的各个方面,这在以往的类似教学实验系统中是无法做到的。

4. 本课程特别强调要有创新性,这一点跟以往的课程实验是完全不同的。凡是得高分的同学都有比较大的创新,这也是学生收获最大的一个方面。

5.采用新的评价体系。改变以往的评分方法,本课程把演示、竞赛、答辩、实验报告作为评价环节,把创新性、系统整体功能作为评价重点。竞赛和演示进一步调动了学生的学习积极性。

6.直接介入国际比赛,激发学生的进取精神。专题二和专题三的实验成果,已经作为参加国际比赛的重要组成部分。同学们热情高涨,他们不惜花费大量精力,采用难度大的新算法,意欲比个高低。

7.收集学生的意见和建议,将教学推向新高度。对课程提出改进意见,是对学生专业实践总结的要求之一。我们将认真研究学生提出的建议,进一步改善课程条件,改进教学方法,将课程推向新高度。

三、创建了四个计算机专业实践专题

按照计算机科学与技术一级学科不同的专业方向,“计算机专业实践”课程分为四个专题。

专题1:开放式微处理机设计与测试。要求学生自己设计并用FPGA实现一个CPU芯片,用VHDL硬件描述语言进行设计,采用先进的工具进行模拟、验证和测试,在测试通过之后制作成CPU芯片,并在测试系统上通过规定测试程序和自编测试程序的测试。

采用了我们独创的实验方法,学生可以自由设计计算机系统结构,包括指令系统、寻址方式、数据表示、寄存器结构、存储系统、中断系统和流水线结构等。该实验方法已经申请了国家发明专利,按照这种实验方法研制的教学实验装置“开放式CPU设计与测试系统”,已经在国内高校中推广,获得广泛的好评。

专题2:多模态身份验证系统。要求学生集成人脸检测和识别、语音识别与合成、指纹采集和比对进行身份验证,并进一步实现如门禁、注册与考勤、留言及查询等系统。

采购了指纹获取芯片,学生们参与了印刷电路板的制作,指纹仪的研制、调试,编写驱动程序等。同时还购置了摄像头、麦克风等必要的设备,保证每组都有一套软硬件完整的实验环境。

将专题分解成多个子课题,提供专备的源程序和参考文献,让学生在高的起点上开始实验,激发学生的创造性。

专题3:机器人足球及机器人足球赛。要求学生设计机器人的视觉识别与定位、多传感器融合、系统决策、任务规划、轨迹规划等功能模块,实现对足球的跟踪、带球和射门,最后进行演示和比赛。

研制了足球机器人实验平台,在平台上可以进行机器人视觉、系统决策、任务规划、轨迹规划、运动控制、信息融合以及多机器人协调等方面的研究与实验工作。制作了支持机器人足球赛的支撑设备。中型组在起步阶段,进行单个球员的技术演示和比赛,仿真组进行球队间比赛。

为了支持足球机器人各部分算法和各个功能模块的调试,教学组开发了仿真验证系统,可以通过可视化界面观察并验证算法和程序的执行结果。

专题4:基于FPGA的微机接口设计。要求完成几个微机接口芯片的设计,编写微机接口程序,通过用自己设计的芯片实现与微机总线的通讯。同时,学习EDA设计工具的使用方法,并学习SoC设计和验证方法。

上一篇:一本面向中高级读者的数据挖掘好书 下一篇:信号与系统精品课程的建设与实践