高小鹏-XXXX1130-计算机人才系统能力培养教学实践-V2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

高小鹏gxp@buaa.edu.cn北京航空航天大学计算机学院2013年12月1日1第2届高等学校计算机类专业人才培养高峰论坛浙江,杭州计算机人才系统能力培养教学实践北京航空航天大学计算机学院基本思路课程群体系系统能力分级工程化方法汇报提纲2北京航空航天大学计算机学院系统能力培养的基本思路20062007200820092010201120122013系统能力2006:首次工程教育认证后,引发了对毕业生核心能力的思考结论:系统能力系统能力培养的特点:综合性与形成性综合性:综合运用多种知识解决系统级问题形成性:能力不是一蹴而就,需逐步形成基本思路开发“CPU、OS、编译器”计算机系统多门课程联动,逐步达成CPU北京航空航天大学计算机学院计算机系统的3个基石:CPU、OS、编译器CPU:指令集、流水线、调度、存储层次、总线。。。OS:中断、任务切换、存储管理、I/O。。。编译器:循环优化、指令调度。。。三者密切配合、相互影响、互相渗透本科生开发一个功能型计算机系统L1:理解硬件系统的运行原理L2:掌握硬件系统及系统软件构造方法L3:领悟软/硬件相互作用关系为什么选计算机系统作为目标?4CPU北京航空航天大学计算机学院现象:~2006,能力较弱原因:教学以让学生了解知识为目标,不是以学生设计系统为目标过于强调知识的全面性,课时总容量不足,学生难以深入学习虽也重视了课程体系建设,但课程衔接不足当时存在问题分析5对象开发能力CPU自定义指令集;指令规模10+条OS分析代码;系统调用级编程编译器自定义文法;生成虚拟机指令;优化弱北京航空航天大学计算机学院精简课程群62006:计算机系统相关课程(5门)模拟电路、数字逻辑、计算机组成原理、操作系统、编译技术均为必修课:课程总周期过长课程体系衔接:有脱节、有重叠建设:计算机系统课程群(4门)数字逻辑、计算机组成原理、操作系统、编译技术数字逻辑:作为起步课程;从数字电路层面切入模拟电路:选修课(体系结构方向必修课)北京航空航天大学计算机学院课程群改革规划(2006)教学目标:CPU,OS,编译器技术路线课程体系整合重构实验体系物理综合北京航空航天大学计算机学院基本思路课程群体系系统能力分级工程化方法汇报提纲8北京航空航天大学计算机学院数字逻辑结合数理逻辑知识,讲授组合逻辑与时序逻辑原理基于MIPS指令集,设计寄存器、加法器、移位器、控制器、多路选择器、计数器、比较器引入HDL语言、EDA工具计算机组成讲授计算机硬件工作原理在部件设计基础上,实现MIPS指令集的功能型计算机系统深化HDL语言、EDA工具应用操作系统讲授OS的各组成及其机理实现MIPS的功能型OS编译技术讲授编译器的构造技术实现MIPS的C编译器计算机系统课程群体系9北京航空航天大学计算机学院计算机组成数字逻辑课程体系数字逻辑讲授组合逻辑与时序逻辑原理设计寄存器、加法器、移位器、控制器、多路选择器等基础部件计算机组成讲授计算机硬件工作原理在基础部件之上开发计算机硬件系统实现MIPSISA、中断、存储器、I/O等硬件抽象基础部件硬件抽象MIPS指令集中断控制器存储器I/O北京航空航天大学计算机学院编译技术操作系统课程体系中断切换虚实进程管理内存管理设备管理文件系统硬件抽象MIPS指令集中断控制器存储器I/O词法分析语法分析中间代码代码生成代码优化操作系统理解中断、现场切换等核心机制及软硬件依赖关系实现基于MIPS程序的进程管理、内存管理、文件系统、设备管理等编译技术C0生成MIPS汇编强化代码优化11北京航空航天大学计算机学院基础部件电路原理实验体系—数字逻辑目标:掌握数字电路设计方法,开发MIPS处理器的基础部件实验体系第1层次:电路原理组合逻辑、时序逻辑触发器/寄存器、电路特性第2层次:计算与控制加/减、乘/除、有限状态机第3层次:基础部件译码器、ALU、数据选择器、计数器、乘法单元、存储器计算&控制12北京航空航天大学计算机学院实验体系—计算机组成目标:实现MIPS计算机实验体系MIPS各型指令数据通路实验MIPS多周期数据通路实验MIPS多周期控制单元实验13北京航空航天大学计算机学院实验体系—操作系统目标:实现小型MIPS操作系统实验体系围绕MIPS,采用层次化设计原则6个综合型实验,构造一个相对完整的操作系统内核制作与boot存储管理进程与中断系统调用文件系统shell14北京航空航天大学计算机学院综合实验体系—编译技术目标:为MIPS开发C编译器实验体系面向MIPS,生成中间代码实现基本代码优化完成具有现代编译器主要特征的小型编译器提供不同难度的选择从PL/0生成P-CODE从C0生成P-CODE从C0生成MIPS汇编15北京航空航天大学计算机学院统一的硬件实验平台MIPSCPU存储器I/O数字逻辑、计算机组成、操作系统、编译技术16北京航空航天大学计算机学院6年改革历程组建课程群团队顶层设计分布实施先遣小队首次完成MIPS处理器开发数字逻辑首轮实验编译技术首先调整数字逻辑全面调整编译技术全面调整自主开发统一硬件实验平台数字逻辑全面实施编译技术全面实施全面重构硬件代码(特别是MIPS代码)OS调整模拟器OS全面实施模拟器/硬件计组引入HDL计组全面实施20062007200820092010201120122013系统能力2006:启动;2007:规划、小组实施5个轮次迭代;2012年市教学成果一等奖17北京航空航天大学计算机学院CPU设计能力83%42%21%17%58%56%23%0%20%40%60%80%100%2009年2010年2011年示意型一般型完整型比较内容北航(教改前)北航(教改后)BerkeleyMIT指令集自定义MIPS自定义自定义指令规模10+502232处理能力8位32位16位32完整CPUOS支持工业标准的处理器工业标准指令集MIPS应用广泛较完整的CPU设计几乎覆盖定点指令中断/异常支持简单OS运行有力支持后续课程北京航空航天大学计算机学院OS设计能力相对完整的OS学生已可以完成较完整的操作系统设计与开发操作系统与MIPS计算机硬件完整集成与前序课程有序衔接,掌握完整软硬件开发比较内容北航(教改前)北航(教改后)BerkeleyHarvardMITOS选型Linux/WindowsLinux/小OSNACHOSNACHOS小OS能力层次分析/系统编程分析/设计分析/设计分析/设计分析/设计硬件PCMIPS模拟器/MIPS硬件MIPS模拟器MIPS模拟器PC201020112012小OS31430Linux745047Windows2336230%20%40%60%80%100%北京航空航天大学计算机学院编译器设计能力突出编译优化参照国际一流大学课程建设趋势,加大优化部分比重连续5年实施新实验体系选择高难度实验的学生比例稳定在50%以上其中90%以上学生可以完成高难度实验20072008200920102011选择低难度实验11165958990未完成高难度实验30101067完成高难度实验611108595780%20%40%60%80%100%北航(教改前)北航(教改后)BerkeleyCMUPrinston优化实验比重5%35%39%61%58%优化算法重点讲述469109北京航空航天大学计算机学院基本思路课程群体系系统能力分级工程化方法汇报提纲21北京航空航天大学计算机学院如何评价系统能力培养的达成度?22北京航空航天大学计算机学院DO-178B:5级安全机载软件安全等级CMM:5级成熟度软件开发能力分级:标准和尺子有利于量化评估不断提升要求各课独立设置借鉴软件开发23CMM:软件能力成熟度模型系统开发安全等级严重性说明接受频率(发生的风险)LevelA灾难Extremelyimprobable(X10-9)LevelB危险Extremelyremote(10-9X10-7)LevelC重要remote(10-7X10-5)LevelD次要Probable(X10-5)LevelE无AllDO-178B:机载软件安全级模型北京航空航天大学计算机学院CPU开发能力@计算机组成原理24CPU开发能力等级指令集规模CPU特点155较完整定点类指令;支持GCC;支持中断/异常/系统调用245~50较完整定点类指令;支持GCC330~40+常用的运算/存储/分支/置位/函数调用指令;手工汇编;可运行小型程序410~20+基本的运算/存储/分支/函数调用指令;手工汇编;可运行简单程序50~10简单的运算/存储/分支指令;手工汇编;示意型设计北京航空航天大学计算机学院基本思路课程群体系系统能力分级工程化方法汇报提纲25北京航空航天大学计算机学院课程群关键节点:传统的重课/难课承上启下,直接决定整体目标能否高质量达成CPU实验体系具有较大规模和难度实验教学目标:功能型CPU的设计指令集规模:50+条指令可以运行由GCC编译产生的定点类程序支持中断/异常计算机组成原理实验概述26北京航空航天大学计算机学院目的:让多数普通学生达成目标!规模达到一定程度(如30+),须强调方法,否则:少数优秀学生:靠天份能悟出来多数普通学生:盲动失败挫折感工程方法:可能不是最优的,但应该是简单与有效具有普适性简单有效:按照方法可以一步步的开发出复杂系统要让学生拥有巅峰体验:原来我也能达到这个目标!为什么强调工程方法?27北京航空航天大学计算机学院过去的教学方法:图解式案例教学讲解典型指令的数据通路的构造过程建立对指令在数据通路中流动的直观认识建立对数据通路基本组成的基本认识指令存储器AddrDataPC寄存器堆ReadReg1ReadReg2WriteRegWriteDataReadData1ReadData2ADDUSUBUORILWSWBEQJALUZeroOvALU结果16扩展3201数据存储器AddrReadDataWriteDataPC计算PCIMMNPCPC+401226IM[25:21]IM[20:16]1F012M1IM[15:0]M228北京航空航天大学计算机学院效率低下:新增指令导致对图的大量修改复杂度高:指令集规模,图的复杂度图的布局对于开发影响极大错误传递:一条指令的错误会长期存在并产生影响修改错误,往往会导致对图的大量变更难以追朔:大量设计过程难以复现50+指令:会保留50+图吗?跨度过大:从图到HDL,跨度大,缺乏中间层次图解式案例教学方法的不足29北京航空航天大学计算机学院效率低下:新增指令导致对图的大量修改复杂度高:指令集规模,图的复杂度图的布局对于开发影响极大错误传递:一条指令的错误会长期存在并产生影响修改错误,往往会导致对图的大量变更难以追朔:大量设计过程难以复现50+指令:会保留50+图吗?跨度过大:从图到HDL,跨度大,缺乏中间层次图解式案例教学方法的不足30成效:学生可以理解小规模指令集CPU的设计方法困难:学生尚难以将其推广至一般,难以开发更大规模指令集的CPU北京航空航天大学计算机学院目标:普通学生也能开发50+规模CPU工程化方法:3类方法单周期CPU设计工程方法(完成)多周期CPU设计工程方法(完成)流水线CPU设计工程方法(进行中)2012年秋季新探索:工程化方法31北京航空航天大学计算机学院回顾:单周期数据通路PC、NPC计算单元指令存储器、数据存储器寄存器文件运算单元、扩展单元MUX指令存储器AddrDataPC寄存器堆ReadReg1ReadReg2WriteRegWriteDataReadData1ReadData2ADDUSUBUORILWSWBEQJALAL

1 / 52
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功