硬件架构的艺术 数字电路的设计方法与技术

硬件架构的艺术 数字电路的设计方法与技术

作者: 
Mohit Arora
ISBN: 
9787111449393
出版日期: 
星期六, 三月 1, 2014

简介

  本书揭示硬件架构的设计艺术,涵盖作者从事芯片设计行业十多年的经验和研究成果。本书共分9章,第1章介绍亚稳态的概念、量化方法和减少其影响的技术;第2章介绍同步设计的时钟技术,并提出可行的时钟方案以及系统复位策略。第3章介绍在设计中使用异步时钟或“处理多个时钟”时会出现的问题及解决方法。第4章介绍时钟分频器的各个方面和实现方法。第5章讲述低功耗设计技术,以减少动态和静态功耗。第6章介绍如何把流水线技术应用在处理器的设计中,从而提高性能;第7章讨论使用字节顺序的方法;第8章阐述去抖动技术,以消除毛刺和噪声。第9章介绍电磁干扰的原理、规程、标准和认证,以及电磁干扰的影响因素和减少电磁干扰的方法。

目录

译者序
前 言
第1章 亚稳态的世界1
1.1 简介1
1.2 亚稳态理论1
1.3 亚稳态窗口3
1.4 计算MTBF4
1.5 避免亚稳态5
1.5.1 使用多级同步器6
1.5.2 使用时钟倍频电路的多级同步器6
1.6 亚稳态测试电路7
1.7 同步器的类型8
1.8 亚稳态/综合性建议10
第2章 时钟和复位11
2.1 概述11
2.2 同步设计12
2.2.1 避免使用行波计数器12
2.2.2 门控时钟12
2.2.3 双边沿或混合边沿时钟13
2.2.4 用触发器驱动另一个触发器的异步复位端13
2.3 推荐的设计技术14
2.3.1 避免在设计中出现组合环路14
2.3.2 避免数字设计中的延迟链16
2.3.3 避免使用异步脉冲产生器16
2.3.4 避免使用锁存器17
2.3.5 避免使用双沿时钟20
2.4 时钟方案22
2.4.1 内部产生的时钟22
2.4.2 分频时钟24
2.4.3 行波计数器25
2.4.4 多路时钟25
2.4.5 同步时钟使能和门控时钟26
2.5 门控时钟方法学28
2.5.1 不含锁存器的门控时钟电路28
2.5.2 基于锁存器的门控时钟电路30
2.5.3 门控信号32
2.5.4 重组数据路径以减少转换传播32
2.6 复位信号的设计策略32
2.6.1 用同步复位进行设计33
2.6.2 使用异步复位进行设计36
2.6.3 带异步复位和异步置位的触发器38
2.6.4 移除异步复位的问题39
2.6.5 复位同步器40
2.6.6 过滤复位毛刺41
2.7 控制时钟偏移42
2.7.1 短路径问题43
2.7.2 时钟偏移和短路径分析43
2.7.3 使时钟偏移最小化45
参考文献49
第3章 处理多个时钟50
3.1 介绍50
3.2 多时钟域50
3.3 多时钟域设计的难题51
3.3.1 违背建立时间和保持时间52
3.3.2 亚稳态53
3.4 多时钟设计的处理技术53
3.4.1 时钟命名法53
3.4.2 分块化设计54
3.4.3 跨时钟域54
3.5 跨时钟域57
3.5.1 同频零相位差时钟57
3.5.2 同频恒定相位差时钟58
3.5.3 非同频、可变相位差时钟59
3.6 握手信号方法63
3.6.1 握手信号的要求64
3.6.2 握手信号的缺点64
3.7 使用同步FIFO传输数据65
3.7.1 同步FIFO架构65
3.7.2 同步FIFO的工作方式66
3.8 异步FIFO(或双时钟FIFO)68
3.8.1 避免用二进制计数器实现指针69
3.8.2 使用格雷码取代二进制计数69
3.8.3 用格雷码实现FIFO指针72
3.8.4 FIFO满和FIFO空的产生76
3.8.5 双时钟FIFO设计79
参考文献82
第4章 时钟分频器83
4.1 介绍83
4.2 同步整数分频器83
4.3 具有50%占空比的奇数整数分频84
4.4 非整数分频(非50%占分比)86
4.4.1 具有非50%占空比的1.5倍分频86
4.4.2 4.5倍分频计数器的实现(非50%占空比)87
4.5 N分频的替换方法88
参考文献89
第5章 低功耗设计90
5.1 介绍90
5.2 功耗源90
5.3 在各设计抽象层次降低功耗91
5.4 系统级低功耗技术93
5.4.1 片上系统方法93
5.4.2 硬件/软件划分93
5.4.3 低功耗软件95
5.4.4 选择处理器96
5.5 体系结构级降低功耗技术97
5.5.1 高级门控时钟97
5.5.2 动态电压频率调节99
5.5.3 基于缓存的系统体系结构100
5.5.4 对数FFT体系结构100
5.5.5 异步(无时钟)设计100
5.5.6 电源门控102
5.5.7 多阈值电压105
5.5.8 多电压供电106
5.5.9 存储器电源门控106
5.6 在寄存器传输级降低功耗107
5.6.1 状态机编码和解码107
5.6.2 二进制数表示法108
5.6.3 门控时钟基础109
5.6.4 独热码多路器111
5.6.5 除掉多余的转换112
5.6.6 资源共享114
5.6.7 使用行波计数器来降低功耗114
5.6.8 总线反转117
5.6.9 高活跃度网络118
5.6.10 启用和禁用逻辑云119
5.7 寄存器级低功耗技术120
5.7.1 技术水平120
5.7.2 版图优化120
5.7.3 衬底偏压120
5.7.4 减少氧化层厚度121
5.7.5 多氧化层器件121
5.7.6 利用定制设计减小电容121
参考文献122
第6章 流水线的艺术123
6.1 介绍123
6.2 影响最大时钟频率的因素124
6.2.1 时钟偏移125
6.2.2 时钟抖动125
6.3 流水线127
6.4 解释流水线——一个真实的例子129
6.5 来自于流水线的性能提高130
6.6 DLX指令集的实现133
6.7 流水线对吞吐率的影响137
6.8 流水线原理138
6.9 流水线冒险138
6.9.1 结构冒险139
6.9.2 数据冒险140
6.9.3 控制冒险143
6.9.4 其他风险144
6.10 ADC中的流水线——一个例子145
参考文献146
第7章 处理字节顺序147
7.1 介绍147
7.2 定义147
7.3 小端模式或大端模式:哪个更好149
7.4 处理字节顺序不匹配的问题151
7.5 访问32位存储器152
7.6 处理字节顺序不匹配153
7.6.1 保持数据完整性(数据不变)154
7.6.2 地址不变156
7.6.3 软件字节交换158
7.7 字节顺序中性代码159
7.8 字节顺序中性编码指南159
参考文献160
第8章 消抖技术161
8.1 简介161
8.2 开关行为162
8.3 开关种类163
8.4 消抖164
8.4.1 RC消抖164
8.4.2 硬件消抖电路168
8.4.3 软件消抖电路169
8.4.4 消抖指南171
8.4.5 在多重输入下消抖172
8.5 现有的解决方案173
第9章 电磁兼容性能设计指南175
9.1 简介175
9.2 定义175
9.3 电磁干扰理论及与电流和频率之关系177
9.4 电磁干扰的规程、标准和认证178
9.5 影响集成电路抗干扰性能的几个因素179
9.5.1 作为噪声源的微控制器179
9.5.2 影响电磁兼容性的其他因素180
9.5.3 噪声载体181
9.6 减少EMC/EMI的技术181
9.6.1 系统级技术182
9.6.2 板级技术184
9.6.3 微控制器级技术193
9.6.4 软件层级技术196
9.6.5 其他技术203
9.7 总结204