目录
第一章 数值和码制
常用编码
- 压缩状态编码:
- 二进制码Binary Code:有0,1两种状态,逢二进一。
- 格雷码Gray Code:相邻两个状态只有一个bit不同的二进制编码。
- 非压缩状态编码:
- 独热码One Hot:N位状态寄存器来对N个状态进行编码。
- 优点:状态译码简单,可以减少组合逻辑且速度较快;修改简单,增减状态可以在不影响状态机其他部分的情况下实现;速度独立于状态数量。
- 缺点:消耗寄存器资源。
- 独冷码One Cold:独热码取反得到。
- 独热码One Hot:N位状态寄存器来对N个状态进行编码。
格雷码应用
常应用于异步FIFO地址编码
- 只有以为变化,降低多bit信号同步失败的概率,降低空满判断失败的概率
- 因为每次地址发生变化时,由于格雷码的性质(只有一个比特位发生变化),使得数据在跨时钟域传送时可以不存在竞争冒险现象,减少毛刺。
- 只有一个比特位进行翻转,可以降低switching power
二进制码与格雷码转换
二进制转格雷码
- Gray[N]=Bin[N];
- Gray[i]=Bin[i+1]^Bin[i];
格雷码转二进制
- Bin[N]=Gray[N];
- Bin[i]=Bin[i+1]^Gray[i];
第二章 逻辑代数基础
常用门级结构
逻辑代数基本公式
逻辑函数及描述方法
逻辑函数表达式:Y=F(A,B,C,...)
描述方法:
- 逻辑真值表
- 逻辑函数式
- 电路函数图
- 波形图
最大项与最小项
最小项:在n变量逻辑函数中,若m为包含n个因子的乘积项,而且这n个变量均为原变量或者反变量的形式在m中出现一次,则称m为该组变量的最小项。
最小项性质:
- 在输入变量的任何取值下必须有一个最小项,而且仅有一个最小值的值为1
- 全体最小项之和为1
- 任意两个最小项的乘积为0
- 具有相邻性的两个最小项之和可以合并成一项并消去一对因子
最大项:在n变量逻辑函数中,若M为n个变量之和,而且这n个变量均以原变量或者反变量的形式在M中出现一次,则称M为该组变量的最大项
最大项性质:
- 在输入变量的任何取值下必有一个最大项,而且只有一个最大项的值为0
- 全体最大项之积为0
- 任意两个最大项之积为1
- 只有一个变量不同的两个最大项的乘积等于各相同变量之和
逻辑函数的化简方法
- 公式化简法
- 卡诺图法Karnaugh Map
- 奎恩-麦克拉斯基化简法(Q-M法)
第三章 门电路
第四章 组合逻辑电路
组合逻辑电路特点:
- 功能上:任意时刻的输出仅取决于该时刻的输入
- 电路结构上:不含记忆(存储)元件
常用组合逻辑电路
- 编码器
- 普通编码器:
输 入
输 出
I0
I1
I2
I3
I4
I5
I6
I7
Y2
Y1
Y0
1
0
0
0
0
0
0
0
- 普通编码器: