当前位置:
文档之家› 中科大计算机组成原理课件ppt
中科大计算机组成原理课件ppt
– – – –
操作系统 编译原理 体系结构 。。。。。。
USTC的有关课程
• 数电、电子系统设计(VerilogHDL):大X • 计算机组成原理:大2下
– 对计算机系统的基本组成结构和工作机制有比较透彻的理解
• 微型计算机原理:大3
– 突出应用,详细讲述微处理器编程结构、汇编语言、接口技术和 应用编程方法
MIT
• 我在这里的第一学期上了一门叫 《计算机系统设计》得 本科课程,其辛苦程度真实一言难尽。十五个星期内交了 十次作业,作了六次课程设计。有的设计还分几个部分, 分开交设计报告。所以设计报告大概也交了有十次左右。 最恐怖的是有一次,十天内要交六份作业或设计报告,而 且当时正值其他几门课正在期中考试。抱怨是没有用的, 老师说:"我很抱歉。但这门课很重要,请大家不停的工 作。"学生从一般的逻辑时序电路开始设计(数电都已忘 得差不多了);核心是自行设计"麻雀虽小五脏俱全"得 ALU,单指令周期CPU(single cycle CPU);多指令 CPU(Multi-cycle CPU);以直到最后实现流水线(pipe line)32位MIPS CPU和Cache。一门课下来,所有与计 算机CPU有关的知识全部融会贯通。硬件设计水平也有了 很大提高(就是太累)。
– 中央处理器(CPU)
• • • • 计算机的运算方法 指令系统 CPU的结构 控制单元设计
本课程的作用
• “为今后学习操作系统、编译原理、计算机体系 结构、计算机网络、计算机容错、并行计算、分 布式系统等课程打好基础”。 • 相关课程
– 数据结构 – 算法设计 – 组成原理
• 重点“单核单处理器”计算机系统 • 强调软硬件接口
计算机组成原理 第一章 概论
李曦 llxx@
《计算机组成》:what, how, why
硬盘 电源 导线和电缆 软驱
内存 扩展槽 扩展卡 主板 微处理器 (CPU CPU) )
各种外设接口, 包括:键盘、鼠 标、显示器、 USB、声卡、网 卡、并行口等 CPU风扇 支架 PCI 扩展槽 IDE 硬 CPU 内存 盘接 插槽 条插 口 槽
• 唐本(William Stallings)
– 农村包围城市:总线、存储、I/O、ALU、CPU
• llxx
– 目标:理解构建计算机系统的过程
• 十字箴言:“功能、组织、过程、定时、度量”
– China-ring:快速原型法(prototype)
• 总线、RAM、CPU,存储系统(Cache、辅存)、I/O、ALU
Course Schedule
1. 2. 3. 4. 5. 6.
•
概论(4) 总线(4) RAM/ROM(4) ISA(4) CPU (4)
功能、组成、时序、中断系统
A模型CPU控制器设计(6)
组合逻辑、微程序
7.
•
MIPS处理器设计(6)
指令集、单周期、多周期、流水线
8. 9.
•
Cache(4) 辅存(5)
• 计算机体系结构:大3
– 论述计算机系统的设计优化技术和性能定量分析方法
• 本课程的目的
– 深入理解计算机系统的硬件组成和工作原理
• 系统构成、总线、存储器、I/O系统等
– 深入理解处理器的内部结构和工作原理 – 了解理解各个功能部件的系统级设计过程
MIT’09: Computation Structures
• 强调完整的计算机系统的工作原理和分析,注重 系统功能部件的设计方法。 • 课程体系教学内容划分比较清晰、合理。
– 如虚存的讨论,主要放在体系结构(性能分析)、操 作系统(页表定义和MMU管理)和微机原理(相关寄 存器组织和使用)中,组成原理中基本不涉及。
教材
• Textbook:
– 唐朔飞,《计算机组成原理》 高教社
P4S533-MX主板 华硕 P4S533
BOOT过程
算盘=计算器 ≠ 计算机?
Layers and Views of a Computer System
“计算机在干啥”?
课程内容
• 课堂教学
– 外围部件结构
• 系统总线(总线性能、总线结 构、总线控制) • 存储器(主存储器、高速缓存、 辅助存储器) • 输入输出系统(I/O接口、I/O 控制方式、外设)
Basic computer organization, first look at pipelines + caches 从C语言程序的执行 角度讨论计算机组成 原理,但重点关注 MIPS处理器和存储系 统,其他关注很少
Computer Architecture, First look at parallel architectures
EECS@UCB Related Courses
MIPS处理器的实现和“并行” 技术,以及层次化存储系统, Parallel Architectures, I/O几乎忽略 Languages, Systems
CS 258
CS61C
Strong Prerequisite
CS 152
CS 252
Graduate Computer Architecture, Advanced Topics
教材选用说明
• 以唐本为主
– 从教学内容看
• 唐本仅介绍了流水 线处理器的概念, 没有讨论其实现, 因此以Patterson本 第2、5、6三章为 补充
Patterson: 1. 计算机概念和技术
– 概述
2.
– – –
计算机指令(70页)
指令 编译器 面向对象语言
3. 4. 5. 6. 7.
–
计算机的算术运算(50页) 评估和理解性能(30页) 处理器(100页) 利用流水线提高性能(70页) 层次结构的存储器(60页)
• Load/Store架构,但采用微程序实现
– Verilog HDL设计描述 – 逻辑仿真 – FPGA平台验证
• 计划
– 5-7周讲课
• 部分针对性内容在这里讲 • 课外作业为部件实验(含指令寄存器的 程序计数器、时序、运算器、存贮器)
– 8-15周设计LC-3。
课程成绩考核
• 课堂教学:70%
– MOS transistors, logic gates, combinational and sequential circuits, finite-state machines – Computers both hardware and software mechanisms – each student completes a gate-level design for a reduced instruction set computer (RISC) processor during the semester.
• Each Kele(刚果语)word is spoken by the drums as a sequence of low and high beats.
本章教学内容
• 计算机系统概述
– 计算机软硬件 – 计算机系统的层次结构 – 计算机组成 VS. 计算机体系结构
• 计算机的基本组成
– Von Neumann机的特征 – 计算机的硬件构成 – 计算机的工作过程
• 计算机硬件的性能指标
信息?
• 语言、文字、信息?
– Meaning,Language,Messages, Information? – The story of the drum language
外存、虚存管理、冗余编码
10.
•
I/O系统(6)
接口、程序控制I/O、中断I/O、DMA
11. 12.
运算器设计(6)
机器数编码与表示、算逻运算,浮点运算、ALU
前沿(4)
数据流计算机、功耗、多核等
Perspective:软硬件接口
• David A. Patterson@CS.UCB
– “软件系统性能取决于软件设计者对系统硬件 的理解程度。操作系统设计者、更多的软件工 程师需要有较强的计算机组织与设计的背景知 识”
Cache和虚存
– 强调系统的完整性
8.
–
存储器、网络和其他外围设备(30页)
磁盘、I/O接口(内容少)
• 考研
9.
多处理器和集群(30页)
推荐参考书
• 计算机系统概论
– (美)Yale N.Patt,Sanjay J.Patel – 包括两方面的内容:计算机底层结构,高级语 言编程(编程方法学)
CS 150
Digital Logic Design
CS 194??
New FPGA-based Architecture Lab Class
强调微处理器和存储系统,忽视I/O(不知是否有其他课程);另外,强调CE!
USTC的相关课程特点
• 主干:组成原理、微机原理和体系结构三门课
– 组成原理:完整讲解总线、存储器(系统)、I/O、运 算器、控制器几大部件的工作原理,以及处理器的实 现(包括高教社教科书中的A模型和补充的MIPS模型 的基本内容)。一般不涉及具体机型。 – 微机原理:以x86系统为例,讨论计算机应用系统的工 作原理和实现; – 体系结构:讨论系统的量化分析和优化。
CS:科学、技术or工程?
学习思路
• Yale Patt@ece.utexas
– Top-down:适于“设计”
• 从高级语言开始入手 • 前提是对底层有很好的理解
– Bottom-up :“适于学习“!
• 《计算机系统概论》
– 从最底层的MOS晶体管开关器件开始,然后是逻辑门、锁存器、逻辑结构 (开关 MUX、译码器、全加器、门锁存器等) ,使用这些单元来实现内存。之后,转至 有限状态机控制、顺序电路的实现、冯·诺伊曼体系结构、一个简单的计算机 (LC3),LC-3的机器和汇编语言、C高级语言、递归等,最后是基本数据结构。