近五年来教学改革、教学研究成果:   

   计算机组织与系统结构涉及的内容位于软件和硬件的交界处,不仅与下层的数字逻辑电路设计密切相关,还和上层的操作系统、编译器等软件技术紧密关联。此外,数据的表示、Cache 的局部性、虚拟存储器的实现、过程调用以及寄存器使用约定等内容与程序设计也密切相关。它在整个专业教学中,起着重要的承上启下的作用,对于学生全面地理解计算机系统层次结构、建立整机概念、掌握计算机硬件和软件之间的接口、培养对计算机系统的分析、应用、设计及开发能力,都起着非常重要的作用。

  由于该课程涉及知识面广、内容多而繁杂;课程难度大、概念抽象,导致不少学生觉得课程内容枯燥无味,学习兴趣下降,大部分学生学习时似懂非懂,考试时死记硬背,考完后一切全忘。因此,该课程被大多数学生看成是最难学的课程之一。

  基于本课程的重要地位和课程内容的特点,我们在多个方面进行了教学研究和教学改革,达到了较好的教学效果,并取得了多方面的教学成果。

  近五年来,我们针对以下问题开展了教学研究和教学改革。

  1.本课程的教学目标和教学理念是什么?

  基于本课程在整个计算机系统中的重要核心地位,我们认为,在培养学生的计算机系统设计能力方面,本课程具有非常重要的作用。因此,我们提出“以培养学生现代计算机系统设计能力为核心”的全新教学理念,它主要在三个方面有别于传统的教学理念:一是立足“现代”,二是强调“系统”,三是注重“设计能力”的培养。 立足“现代”就是指教学内容要提升,不能仅仅停留在基本原理层面,而是要在基本原理的基础上,向学生展示现代技术的发展;强调“系统”就是指教学思路要延伸,不能仅仅局限在系统结构和硬件知识方面,也要包含相关的软件知识,要站在计算机系统的高度来阐述硬件和软件之间的接口和关联,以提高学生对于整个计算机系统的认识水平;注重“设计能力”培养就是要让学生不仅知其然,而且知其所以然,不仅了解和掌握知识,而且会运用知识进行设计,使学生将学到的知识转化为一种运用能力

  2.怎样的教学内容及其组织结构能体现教学目标和教学理念?

  根据提出的教学目标和教学理念,我们全面系统地进行了教学内容的改革。由于本课程处于软件和硬件的交界处,因此,我们以“高级语言程序→汇编语言程序→机器指令→CPU设计”为主线组织教学内容,使学生建立 “从程序员视角理解计算机系统结构和硬件设计,从系统结构和硬件设计者的视角理解程序执行”的软硬件密切相关的计算机系统设计思想

  3.如何贯彻实施本课程的教学内容及其组织思路?

  根据我们提出的教学理念和规划的教学内容,在国内找现成的教材比较困难,国外教材和其他课程内容衔接又不好,为此,我们针对提出的教学改革思路进行了教材规划和建设,经过多年的讲义编写和试用,编著出版了“十一五”国家级规划教材《计算机组成与系统结构》。本教材借鉴了国内外著名教材和UC Berkeley、Stanford、CMU、MIT、UIUC等国际一流大学相关课程内容,在使用过程中得到了良好的效果。

  4. 如何增强实验教学在实现本课程教学目标中的作用? 

  根据本课程内容抽象、概念枯燥,以及实践性强的特点,我们采用了“编程实验”、“硬件设计实验”和“创新实验”三阶段递进式的创新型实验教学方案。

  一方面,通过编程实验使学生能从程序员角度深刻理解数据的表示、异常、cache、系统性能评测等重要内容,使得课程内容对学生来说不再是抽象、枯燥的概念,而是能通过程序的执行和调试,变成容易理解的看得见的具体数据。

  另一方面,硬件设计实验要求学生用硬件描述语言在FPGA板上实现一个实际的流水线CPU,通过亲自体验从设计、实现到验证的整个过程,使学生将所学知识转化成运用知识的能力。

  此外,我们意识到,国家迫切需要一批能掌握先进的CPU和系统软件等计算机核心技术的尖端人才,这是高校计算机人才培养的重要任务之一。基于本课程在计算机系统中的重要核心地位和在计算机人才培养中应起的作用,我们为少数对计算机底层软硬件设计感兴趣的同学开设了创新实验课程,为这些学生提供全方位的实验支持。

  经过多年努力,创新实验课程取得了一系列成果。由俞建新老师负责指导的创新课程小组远赴美国,参加了美国微软公司举办的2006年国际嵌入式系统大奖赛,入围前30名,荣获微软多媒体奖,并参加了IEEE ?CSIDC2006全球设计比赛,入围前10名,荣获IEEE荣誉提名奖;由张泽生老师负责指导的一个创新课程小组完成的“基于FPGA的MIPS32流水线处理器的设计与实现”获得了2009年美国Altera公司组织的亚洲创新设计大赛中国大陆赛区二等奖

  5.如何将教学活动延伸到课堂之外?

  由于本课程涉及的知识面广、内容多而繁杂,有限的课时无法容纳全部课程内容,因此,需要在课堂之外提供一个有效的方便师生互动和交流的教学支撑平台,并向学生提供在课堂和教材中未能包括的、供学生进行自我深入学习的丰富资料。为此,我们投入很大精力建设了课程网站,使教学过程和教学活动延伸到课堂以外。

  课程网站中不仅包含了每一章的教案、配音动画、视频讲解、中/英文术语解释、常问问题、即时练习、例题分析、作业参考答案,还提供了能够交互的虚拟实验和模拟装机实践,以及丰富的最新相关参考资料;特别是课程公告和课程讨论区的设置为师生之间、学生之间提供了一个方便有效的交流平台。本课程网站在2009年江苏省高等学校优秀多媒体教学课件遴选中获特等奖。

  6.如何培养学生对学习本课程的兴趣?

  除了实施以上各种教学改革措施以外,课程组老师还积极鼓励和指导学生组织兴趣小组并进行各种创新实践研究。项目内容包括: ISA设计,ISA模拟器软件开发,课程教学课件设计等。此外,还积极引导兴趣小组申报本科生的创新项目。目前已有三个兴趣小组的创新项目被分别入选为省重点、校重点和校一般项目。这三个项目分别是流水线CPU设计、ISA模拟器设计和课程教学课件的设计开发。

  7.如何合理有效地与其他相关课程进行衔接?

  本课程与计算机系统概论、数字电路设计、微机原理与接口技术、嵌入式系统与技术、操作系统等相关课程关系非常密切。近年来,在张福炎教授的倡议和指导下,我们对相关课程进行了重新调整和规划,经过多次交流和协调,确立了以“计算机组织与系统结构”为核心、上述相关课程为主体的课程群建设方案。内容包括:制定课程群知识框架体系;将每个知识点定位到相应课程中并规划知识点衔接方式;根据知识框架体系,调整教材内容并重编教材;完善各课程实验教学内容并最终构建课程群的公共实验平台。经过建设,以本课程为核心的“计算机系统与设计”课程群被评选为江苏省优秀课程群。

  8.如何提高学生专业英语水平?

  为培养学生成为具有国际视野和良好英语交流水平的计算机专业人才,在教学过程和活动中,我们鼓励学生积极阅读和使用英文原著,注重学生的专业英语水平的培养。大约有一半左右的学生使用John L.Hennessy & David A.Patterson编写的《 Computer Organization & Design (The Hardware/Software Interface》英文教材作为参考。同时,在教案、教材、网站等教学资源中给出中英文对照,并提供大量课外原版参考资料,还通过公共邮箱将下载的国外大学的教案发给学生,积极鼓励学生用英文或中/英文双语完成作业。本课程双语教学建设被列为南京大学985二期工程建设项目,经过多年努力,学生们的专业英文阅读水平普遍有了长足的提高。

   经过多年的教学研究和改革实践,本课程在教材建设、实验教学建设、课程网站建设、双语教学,以及课程群建设等方面都取得了一些成绩,被先后遴选为教育部-微软精品课程和江苏省精品课程。