浙江大学计算机硬件课程改革 浙江大学计算机学院 施敏华 (smh@cs.zju.edu.cn)
基本情况 计算机专业是目前高校规模最大的专业。截至2005年底,全国共771个学校开设计算机本科专业,共有在校生44万多人。 同其他专业相比,学校数和人数这两个数字都是第一。
问题 学校定位不同,但是课程体系依然一样。职高、专科、本科和硕士的课程重复严重,几乎是一样的。 硬件不硬、软件不软。软件学院的硬件课程?如何与其他专业竞争? 刻舟求剑。时代变化了,课程内容变化不大。例如OS、DB。 教师从课本到课本,缺乏工业界的经验。实验课程完全依赖通过实验板销售盈利的公司所准备的实验内容。 双语教学的实验环节。 课程之间缺乏衔接,内容重复。例如,运算器结构,虚拟存储器。
各种努力。。。 MaxPlus II 数字电路设计 Quartus II 计算机组成实验 8051 mcu Open Core 计算机组成实验 nnARM 。。。
改革思路 以硬件描述语言(Verilog)为基础、Xilinx FPGA板卡及配套辅助设计软件工具为主线,贯穿整个计算机硬件设计技术。 将计算机硬件系统的实验教学体系分成一组相互关联和相互作用的活动,每一门实验课程就是一个过程。一个过程的输出会直接成为下一个过程的输入。 也就是强调各门实验课程内容前后相继,各门课程实验与课堂教学内容紧密结合并前后相贯。 在学生完成硬件课程体系学习并完成相应实验后,能掌握计算机系统设计的原理和方法,具有熟练应用相关软硬件工具的技能。
我们的尝试 《逻辑与计算机设计基础》课程教学和实验重点放在器件设计这一级,要求学生能够用Verilog设计组合电路设计和时序电路设计。实验设计完成的基本器件可以直接为后续《计算机组成》课程实验所用。 《计算机组成》课程实验重点放在部件设计这一级。要求学生能够用Verilog设计单周期和多周期实现的简单(十几条指令)的32位RISC的CPU,并写一段使有这些指令的测试程序,利用相应的汇编语言及其编译程序,翻译成二进制代码,并能将CPU软核和测试程序代码写入FPGA开发板,进行实际测试和验证。 《计算机体系结构》课程主要完成前面设计的计算机的流水线设计,要求学生能够用Verilog设计流水线实现的简单(十几条指令)的32位RISC的CPU,并能写入FPGA做测试验证。 再利用FPGA板卡,学习一些常用的输入输出设备接口设计方法。如:总线、键盘、鼠标、USB口等等,扩展前面设计的计算机的接口。然后在《嵌入式系统》课程里面增加嵌入式系统设计内容,今后还可以和《操作系统》课程结合,将自己设计的系统装上Linux。
VHDL vs. Verilog HDL 已经学过的基础课程:C语言程序设计 VHDL 善于描述一些高层的设计。易于模块化。
挑战 技术的循序渐进。实际电路实验、原理图、Verilog HDL。 SoPC时代的嵌入式课程。后XScale时代的嵌入式课程。 数字电路课程信息学院开设还是计算机学院开设? X86汇编、微机原理与接口、操作系统之间的依赖关系。 课时问题,学生该学的蜻蜓点水,不该学的占了大量学时。实验的前后衔接只解决了小部分课时问题。 一步不行,步步不行。 教师素质和稳定。 研究生课程和本科生课程的衔接和深入。 硬件课程和软件课程的衔接和集成。 硬件课程和网络课程的衔接和集成。
NetFPGA平台
NetFPGA实验板 http://yuba.stanford.edu/NetFPGA/
欢迎各位专家指导!!