计算机系统
逻辑与计算机设计基础
第1章 数字系统与信息
逻辑电路:电路的的操作对象只有两种逻辑量True(1)和False(0)
信息表示
模拟信号(analog signal):连续的电压值
数字信号(digital signal):离散的电压值
数字计算机
其他计算机
- 嵌入式系统(embedded system)
- 数字信号处理器(Digital Signal Procesor, DSP) 量化误差(quantization error):实际值与量化值间的差别
现代计算机系统典型的抽象层次 晶体管电路-->逻辑门-->寄存器传输-->微结构-->指令集结构-->操作系统-->编程语言-->算法
数字设计过程简介
- 功能描述:如果没有现成的描述,则为电路写一个
- 形式化:推导出能够反映所需输入与输出逻辑关系的真值表或初始布尔方程。
- 优化:使用两级或多级优化,使得所需的逻辑门的数量最少。用逻辑门画出逻辑图或给出电路的网表
- 工艺映射:把逻辑图或网表转化成新的可以用工艺实现的新的图或网表。
- 验证:验证最后设计的正确性
学习结构
- 第1-5章讲述有关数字电路逻辑设计的相关知识
- 第4章和第6章主要讨论数字系统中的主要部件的工作机制与设计方法。
- 第7章讲述RAM的工作机理和特性。
- 第8章介绍简单计算机的数据通路与控制。
- 第9-12章讲解计算机的设计基础
- 第9章会给出计算机指令集结构中的典型指令。
- 第10章讲述CPU结构与设计
- 第11章将讨论输入输出设备以及CPU与这些设备进行信息交换的各种方式。
- 第十二章具体介绍与cache和MMU相关的多级存储体系
数制
二、八、十进制:进制转换短除与乘法
数字范围
二进制编码的十进制数(binary-coded decimal)
BCD码转二进制:短除法(右移出一位),如果上一位掉落1则减011(3)变为下一位加5.
二进制转BCD码:逆过程,进位大于0100加011(3)补全
1000111 1101111 0100000 1000011 1100001 1110010 1100100 1101001 1101110 110001 1101100 1110011 0100001 Go Cardinals!
字符编码
ASCII字符编码 - 控制字符 - 格式控制符(format effector) - 信息分隔符(information separator) - 通信控制字符(communication control character)
统一码(Unicode) - 代码点(code point) - UTF-8(UCS(Universal Character Set)变换格式):一种变长的编码,每个代码点使用1-4字节 - UTF-16:一种变长的编码,每个代码点使用2或4字节。 - UTF-32:定长的,每个代码点使用4字节
校验位:奇偶校验
格雷码(还需要在具体的实践中学习)
计数过程中相邻编码之间只有一位不同的编码
组合逻辑电路
二值逻辑和逻辑门
集成电路(integrated circuit):由晶体管及其连接构成的复杂的半导体器件。
二值逻辑:与、或、非
逻辑门:过渡与过渡范围
定时图(timing diagram)
反相器(inverter):非门 门延时(gate delay)
异或(XOR)\异或非(XNOR)
通用门:可以独自实现所有布尔函数的门类型
用硬件描述语言表示逻辑门
结构描述(网表):语言根据原理图来描述电路的实现。
两级电路的优化
卡诺图(Karnaugh map)
成本标准: 门输入成本: 1. 全部文字数 2. 除单个文字之外的全部项数,或者再加上 3. 不同的取反值的单个文字总数
门的传播延迟
从高到低的传播时间:高到低变化时,从输入IN的参考电压到输出OUT的参考电压两者间的时间差
从低到高的传播时间
传播延迟:取两时间中的最大值
传输延迟(transport delay):输出响应输入的变化延迟.
惯性延迟(inertial time):加入拒绝时间筛选
结构化描述:用逻辑门构建
数据描述:根据功能描述
行为描述:使用并发赋值
组合逻辑电路的设计
功能模块(functional block):基本、可重复使用的电路.
Flip-flop:触发器
master-slave flip-flop:主从触发器
Edge-triggered flip-flop:边缘触发器
Pulse-triggered flip-flop:脉冲触发器
The latch Timing Problem:锁定定时问题
时序电路
学习路径
1.时序电路的定义
2.存储二进制信息的基本元件:锁存器和触发器
3.锁存器和触发器的不同类型
4.由锁存器和触发器组成的时序电路
5.用于描述时序电路行为的状态表和状态图
时序电路的定义
时序电路:包含存储元件的电路系统
状态:某一时刻存储在存储元件中的二进制信息称为该时刻存储元件的状态
时序电路的类型
-
同步时序电路(synchronous sequential circuit):其行为可以根据离散时间点上从他的信号中获得信息来定义。
-
异步时序电路(asynchronous sequential circuit):其行为依赖于任意时间点的输入信号以及输入信号在连续的时间内的变化顺序。
触发器是以异步锁存器为模块来构造的
同步时序电路只在离散的时刻采集影响存储元件的信号。 同步过程通过时钟发生器(clock generator) 这种时序器件产生的周期性的时钟脉冲序列来实现
把时钟脉冲作为存储元件输入信号的同步时序电路称为钟控时序电路(clocked sequential circuit)
触发器:一个能够存储1位信息的二进制存储元件。
- 有一个或两个输出端,其中一个存储正常值,另一个存储反值。
触发器仅在响应时钟脉冲时改变其状态。
锁存器
不同类型的锁存器或触发器之间的主要区别在于它们输入信号的个数以及输入信号影响其二进制状态的方式。
\(SR和\overline{S} \overline{R}锁存器\)
D锁存器
触发器
触发:输入信号值的改变可以控制内部锁存器的状态(使能或触发触发器)
所有由单一时钟信号触发的锁存器其输出端均不能直接或者经由组合逻辑连接到自身或者其他锁存器的输入端
锁存器组合成触发器的两种方式:
- 主从式(master-slave)触发器
- 当出现时钟脉冲时,输入信号控制触发器的状态
- 当没有出现时钟脉冲时,触发器的状态才会发生改变
主从式触发器也可称为脉冲触发式(pulse-triggered)触发器,因为它可以响应输入端在时钟脉冲期间任意时刻的变化;其次,设计电路时组合电路延迟要足够短以保证S和R在脉冲变为1之后停止变化
- 边沿触发式(edge-triggered)触发器
- 只有在时钟由0变为1或者由1变为0时触发器被触发,其他时间(包括时钟脉冲维持为1时)。触发器都处于保持状态.
简单地说
触发器是一种条件改变锁存器值得装置.而所谓的D触发器,则是为了消除锁存器不期望存在的未定义状态的一种方法,简单地使得S和R分别取D和D的反.