华科计算机重要实验
教学体系
教学体系
系统能力培养
-
五段流水CPU设计
理解指令集体系结构,设计数据通路,中断异常处理。实现流水线冲突处理,协处理器支持,动态分支预测。
-
自主操作系统设计
基于X86系统结构,实现一个微内核操作系统,实现内存管理模块,实现文件系统模块,实现进程调度模块等。
-
面向对象编译器设计
Decaf语言,词法分析,语法分析,中间代码生成,与组成原理课程实验CPU的融合,复杂数据结构和算法综合。
-
数据库管理系统设计
掌握DBMS设计方法,数据和元数据的组织方法,数据底层存储实现技术,关系操作实现算法,SQL语句实现,查找优化技术。
-
虚拟机系统设计
理解微结构,了解指令集体系结构,了解操作系统,算法及编程语言。
-
系统综合训练
FPGA MIPS CPU软核集成,嵌入式操作系统集成,软硬件应用模块支撑,软硬件性能调优。
五段流水MIPS CPU设计
实验目的
学生掌握MIPS五段流水机制基本原理,能利用数字逻辑、汇编语言程序设计、计算机组成原理、计算机体系结构等课程专业知识解决五段流水CPU设计的复杂工程问题,提升复杂工程问题分析解决能力;能运用正确的逻辑处理MIPS指令流水线的各类冲突冒险,能利用LOGISIM或FPGA平台完成最终的设计与实现,最终设计完成的流水CPU能执行标准测试程序,在此基础上,可进一步增加中断异常处理机制,动态分支预测等扩展功能。
实验要求
- 27条基本MIPS指令
- 4条差异化MIPS指令(一生一任务)
- 5段流水线机制,可处理数据冒险,结构冒险,分支冒险
- 扩展功能(中断机制,FPGA流水,动态分支预测)
操作系统设计实验
实验目的
学生深入理解虚拟内存,内核/用户态、系统调用、进程、中断、进程间通信等操作系统课程中的基本概念,并实际动手实现虚拟内存管理、进程管理、中断机制、文件系统、网络驱动,最终构建一个最小操作系统。
实验要求
二选一
- JOS(MIT 6.828:Operating System Engineering)
- lab1:Booting a PC(如何启动内核,调试内核)
- lab2:Memory management(物理内存管理)
- lab3:User-level environments(用户态进程)
- lab4:Preemptive multitasking(多核抢占,进程间通信)
- lab5:File system,spawn,shell(文件系统,终端与用户态进程启动)
- lab6:Network Driver(网络驱动)
- UCORE(OS experiments from Tsinghua University)
系统能力综合训练——高级语言编译器设计
实验目的
学生掌握形式语言基本概念后,能够自定义或剪裁现成语言,形成一个具有高级程序设计语言基本特征的源语言。能利用数据结构、操作系统、计算机组成原理、汇编语言程序设计等课程专业知识设计并实现具有复杂软件工程特点的系统软件——编译器;能熟练运用编译器前端生成工具设计实现前端,能设计合适的符号表管理程序,能选择合适编译器后端工具实现编译器后端,最终完成高级语言到汇编语言的翻译工作,在此基础上,可进一步增加代码优化,向自定义指令集转换。
实验要求
- 自定义源语言或选择剪裁某语言作为源语言
- 实现词法分析、语法分析
- 实现符号表管理和语义分析
- 生成中间代码
- 生成汇编语言程序
- 完整编译器封装
- 与组成原理实验结果融合
系统能力综合训练——数据库管理系统的设计与实现
实验目的
学生掌握关系数据模型基本理论,并综合运用数据库、操作系统、编译、数据结构等课程专业知识,合作实现一个支持简单SQL语句的数据库管理系统,提升对复杂工程问题的分析解决能力;能设计并实现关系数据库中元数据、表及索引数据的组织和管理,能正确地解析SQL语句,实现基本的数据定义、数据操纵、数据查询功能;在此基础上,能进一步利用索引对查询过程进行优化。
实验要求
- 记录的存储和管理
- 数据库的创建与删除
- 表、索引的创建与删除
- 表的插入、删除、修改与查询
- 索引的维护与查询优化
系统能力综合训练——X86模拟器设计与实现
实验目的
学生在掌握汇编语言设计、高级语言设计、数据结构、计算机组成原理、操作系统等课程专业知识基础上,设计实现一个功能完备的X86模拟器,可解释执行X86执行代码,最终在该模拟器上运行开源游戏“仙剑奇侠传”,让学生探究“程序在计算机上运行”的机理。
实验要求
- 熟悉Linux编程开发环境
- 掌握阅读大型软件代码框架的能力
- 了解模拟器开发基本原理
- 精通X86指令运行机理
- 精通X86存储管理机制
- 精通X86中断实现机制
- 熟悉操作系统进程调度
系统能力综合训练——蓝牙控制智能小车设计
实验目的
学生在掌握计算机组成原理、操作系统、接口技术基本原理的基础上,能进行综合运用,在前序课程采用统一的FPGA开发板平台上,进行系统级的工程实践,采用软硬件协同设计的思路和方法,将MIPS CPU与UCORE操作系统集成,搭建蓝牙只能小车系统,并最终完成智能小车的应用开发。
实验要求
- 基于MIPS处理器的计算机硬件系统的设计与搭建
- 针对MIPS处理器的操作系统UCORE集成
- 设备管理和设备驱动的设计与开发
- 应用系统的设计与实现
- 能够用手机通过蓝牙对小车的运行进行控制
发。
实验要求
- 基于MIPS处理器的计算机硬件系统的设计与搭建
- 针对MIPS处理器的操作系统UCORE集成
- 设备管理和设备驱动的设计与开发
- 应用系统的设计与实现
- 能够用手机通过蓝牙对小车的运行进行控制
- 进行有创意和创新的智能应用开发