高级检索结果页
欢迎来到工程科技数字图书馆
登录 | 注册
 
您当前的位置:图书 > 现代SoC设计:基于ARM架构

现代SoC设计:基于ARM架构

本教材的目的是通过Arm Cortex-A技术和相关IP块和接口的例子,让有抱负和实践的SoC设计师了解SoC设计和技术的基本原理和技术发展。详细讨论了整个SoC设计过程,从内存和互连到验证、制造和生产。本教材的特色亮点之一是专注解析低功耗SoC设计,另外还包括Zynq芯片SystemC模型在内的大量补充材料。



这本教科书的目标是在该领域寻求更新知识的本科毕业生、硕士生或工程师。假设读者对RTL、汇编语言和操作系统已有一定的了解。

封面
前折页
书名页
版权
译者序
前言
致谢
作者简介
第1章 SoC
 1.1 Soc概述
  1.1.1 历史回顾
  1.1.2 简单微处理器的网表级连接
  1.1.3 微型计算机的全网表与存储器映射
  1.1.4 分离读写数据总线
 1.2 微控制器
 1.3 后续内容
 1.4 SoC的设计流程
  1.4.1 功能模型
  1.4.2 架构分区
  1.4.3 架构分区和协同设计
  1.4.4 IP块
  1.4.5 综合
  1.4.6 仿真
  1.4.7 后端设计流程
  1.4.8 手机实例
  1.4.9 SoC设计实例——Helium 210项目
 1.5 SoC技术
 1.6 总结
 练习
第2章 处理器、存储器和IP块
 2.1 处理器内核
  2.1.1 指令级架构
  2.1.2 矢量指令
  2.1.3 自定义指令
  2.1.4 经典五级流水线
 2.2 超标量处理器
 2.3 多核处理
 2.4 缓存设计
 2.5 中断和中断控制器
 2.6 存储器技术
  2.6.1 逻辑布局和物理布局
  2.6.2 掩膜编程只读存储器
  2.6.3 静态随机访问存储器
  2.6.4 同步静态随机访问存储器
  2.6.5 双端口SRAM
  2.6.6 动态RAM
  2.6.7 EA-ROM
  2.6.8 浮栅型EA-ROM与闪存
  2.6.9 新兴的存储器技术
  2.6.10 处理器速度与存储器速度
 2.7 SoC I/O功能块
  2.7.1 UART
  2.7.2 使用GPIO的并行端口
  2.7.3GPIO引脚
  2.7.4 计数器/定时器块
  2.7.5 DMA控制器
  2.7.6 网络和流媒体设备
  2.7.7 视频控制器和帧存储器
  2.7.8 门铃和邮箱块
  2.7.9 性能管理单元
 2.8 总结
 练习
 参考文献
第3章 SoC互连
 3.1 互连要求
  3.1.1 协议适配器
  3.1.2 片上协议类别
  3.1.3 简单总线结构
  3.1.4 有序和无序互连
  3.1.5 AMBA AXI互连
  3.1.6 基于目录一致性索引的互连
  3.1.7 深入的总线操作
 3.2 基本互连拓扑结构
  3.2.1 单发起者简易总线
  3.2.2 多发起者共享总线
  3.2.3 桥接总线结构
 3.3 基于数据包交换的简单互连
  3.3.1 SoC多重访问与片内互连
  3.3.2 用于多重访问的折叠总线
 3.4 NoC
  3.4.1 NoC的路由与交换
  3.4.2VC
  3.4.3 NoC死锁
  3.4.4 基于信用的数据流控制
  3.4.5 AMBA 5 CHI
 3.5 高级互连拓扑结构
 3.6 互连构建块
 3.7 远距离互连
  3.7.1 跨域
  3.7.2 亚稳态理论
  3.7.3 CD跨域桥
  3.7.4 谐波时钟
  3.7.5 跨PD
 3.8 串行化和解串
  3.8.1 PCIe和SATA接口协议
  3.8.2 CCIX、CXL和NVLink接口协议
 3.9 自动拓扑综合
  3.9.1 域分配
  3.9.2 确定FIFO缓冲容量
  3.9.3 确定链路宽度
 3.10 总结
 练习
 参考文献
第4章 系统设计
 4.1 设计目标
 4.2 并行加速理论
 4.3 FIFO队列理论和QoS
  4.3.1 经典单任务模型和开放队列模型
  4.3.2 加急服务队列
  4.3.3 统计复用增益
  4.3.4 QoS监管
 4.4 设计权衡
  4.4.1 散热设计
  4.4.2 折叠、重构时序和重编码
 4.5 存储器系统的设计权衡
 4.6 SoC能耗最小化
  4.6.1 电源、电阻和电容
  4.6.2 动态能量和动态功耗
  4.6.3 静态功耗
  4.6.4 布线和电容建模
  4.6.5 兰道尔极限与可逆计算
  4.6.6 门延迟时间与供电电压的函数关系
  4.6.7 反相器的SPICE仿真
  4.6.8 动态电压和频率调整
  4.6.9 动态时钟门控
  4.6.10 动态电源门控
  4.6.11 能源使用的趋势
 4.7 可测性和调试集成设计
  4.7.1 应用程序调试
  4.7.2 多核调试集成
  4.7.3 调试导航和JTAG
  4.7.4 其他DAP设施
  4.7.5 边界和通用路径扫描
  4.7.6 用于SRAM存储器的BIST(MBIST)
 4.8 可靠性和安全性
 4.9 基于硬件的安全性
  4.9.1 可信平台及核心计算机模块
  4.9.2 可信执行模式
  4.9.3 基于能力的保护
  4.9.4 时钟源
  4.9.5 锁相环和时钟树
  4.9.6 时钟偏斜和多周期路径
 4.10 总结
 练习
 参考文献
第5章 电子系统级建模
 5.1 建模抽象
 5.2 互连建模
  5.2.1 随机互连建模
  5.2.2 周期精准互连建模
 5.3 SystemC建模库
  5.3.1 SystemC结构网表
  5.3.2 SystemC线程和方法
  5.3.3 SystemC绘图功能及其图形界面
  5.3.4 提高建模效率
 5.4 TLM
  5.4.1 OSCI TLM 1.0标准
  5.4.2 OSCI TLM 2.0标准
  5.4.3 TLM时序模型(TLM+T)
  5.4.4 TLM的松散时序建模
  5.4.5 松散时序TLM下的建模冲突
  5.4.6 非阻塞式TLM编码
  5.4.7 具有松散时序和时间解耦下的典型ISS设置
  5.4.8 用于桥接不同建模风格的TLM事务处理器
  5.4.9 LocalLink协议的ESL模型
 5.5 不同抽象级别的处理器建模
  5.5.1 ISS的形式和其变体
  5.5.2 使用C预处理器适配固件
  5.5.3 ESL缓存建模和DMI(直接存储器接口)
 5.6 功耗、性能和面积的ESL建模
  5.6.1 使用RTL估算操作频率和功耗
  5.6.2 典型的宏观性能方程:SRAM实例
  5.6.3 典型的宏观性能方程:DRAM实例
  5.6.4 宏观相位和模式功耗估算公式
  5.6.5 基于电子表格的能量核算
  5.6.6 估算布线长度的Rent法则
  5.6.7 TLM中的动态能量建模
  5.6.8 DVFS和电源门控的ESL建模
 5.7 学习案例:使用Zynq平台(Prazor)建模
 5.8 总结
 练习
 参考文献
第6章 架构设计探索
 6.1 硬件和软件设计分区
 6.2 设计空间探索
  6.2.1 DSE工作流程
  6.2.2 基于C语言的功能模型
  6.2.3 功能模型重构为ESL
  6.2.4 子系统的微架构
  6.2.5 互连优化
 6.3 冒险
  6.3.1 数组存储冒险
  6.3.2 使用保持寄存器来克服结构性冒险
  6.3.3 别名冒险
  6.3.4 FIFO缓冲区和双端口IP块
 6.4 自定义加速器
  6.4.1 加速器通信
  6.4.2 多个子任务
  6.4.3 自定义加速器实例1——CRC加速器
  6.4.4 自定义加速器实例2——FPGA云加速器
 6.5 超级FPGA
 6.6 渐近分析
  6.6.1 示例1——层级缓存
  6.6.2 示例2——big.LITTLE
  6.6.3 示例3——NoC拓扑结构权衡
  6.6.4 示例4——静态功耗和动态功耗的权衡
 6.7 虚拟平台实例
  6.7.1 Prazor/Zynq虚拟平台
  6.7.2 协同设计实例——MPEG视频压缩
 6.8 设计输入语言
  6.8.1 功能单元
  6.8.2 Accellera IP-XACT
  6.8.3 硬件构造语言
  6.8.4 Handel-C
  6.8.5 Bluespec System Verilog
 6.9 高层次综合
  6.9.1 HLS可综合子集和流程
  6.9.2 迭代中利用并行操作共享变量优化逻辑
 6.10 总结
 练习
 参考文献
第7章 形式化方法和基于断言的设计
 7.1 形式语言与工具
  7.1.1 验证覆盖
  7.1.2 属性完整性
  7.1.3 形式化规范的完成条件
 7.2 断言
  7.2.1 谓词和属性的语法形式
  7.2.2 ABD
  7.2.3 回归测试
 7.3 使用断言的仿真
  7.3.1 仿真和动态验证
  7.3.2 自动激励生成——定向与约束随机验证
  7.3.3 仿真与形式化验证的比较
 7.4 属性规范语言
  7.4.1 PSL四级语法结构
  7.4.2 扩展正则表达式和SERES
  7.4.3 System Verilog断言
 7.5 形式化接口协议检查器
 7.6 等效性检查
  7.6.1 布尔等效性检查
  7.6.2 顺序等效性检查
  7.6.3 X态传播检查
  7.6.4 对数据路径中的元素进行模型检查
 7.7 连接性检查
 7.8 安全检查策略
 7.9 总结
 练习
 参考文献
第8章 SoC后端流程
 8.1 设计收敛的演变
 8.2VLSI版图结构
  8.2.1VLSI的发展
  8.2.2 未来工艺参数的预测
 8.3 RTL
  8.3.1 RTL结构阐述
  8.3.2 不可综合RTL
  8.3.3 RTL仿真算法
  8.3.4 EDS
  8.3.5 惯性延迟和传输延迟
  8.3.6 基于最小时间隙的计算/提交建模方法
  8.3.7 数模混合仿真
  8.3.8 逻辑综合
  8.3.9 RTL中的阵列和RAM实现
  8.3.10 存储宏单元编译器
  8.3.11 传统RTL编码与软件工具生成代码的比较
  8.3.12 综合目标
 8.4 芯片类型和分类
  8.4.1 基于标准单元库的半定制设计
  8.4.2 标准单元数据
  8.4.3 SPICE特性描述
  8.4.4 工艺、电压和温度变量
  8.4.5 电迁移
  8.4.6 基于波形的标准单元属性
  8.4.7 噪声特性分析
 8.5 门阵列
  8.5.1 传输晶体管多路复用器
  8.5.2 FPGA
  8.5.3 结构化ASIC
  8.5.4 FPGA SoC仿真工具
 8.6 布局和电源规划
 8.7 流程步骤
  8.7.1 布局
  8.7.2 时钟树插入
  8.7.3 布线
  8.7.4 时序和功耗验证
  8.7.5 布线后优化
  8.7.6 版图一致性检查
  8.7.7 最终确认和流片
 8.8 生产测试
  8.8.1 通用验证方法学和开放验证方法学
  8.8.2 测试程序生成
  8.8.3 晶圆探针检测
  8.8.4 封装器件测试
 8.9 芯片封装和MCM
 8.10 工程变更指令
 8.11 ASIC成本——RE和NRE
 8.12 STA和时序最终确认
  8.12.1 STA类型——最大时序分析和最小时序分析
  8.12.2 最大时序分析
  8.12.3 最小时序分析
  8.12.4 工艺角
  8.12.5 提前到达和延迟到达
  8.12.6 时序模型——库文件
  8.12.7 多模式多工艺角分析
  8.12.8 信号完整性
  8.12.9 耦合电容
  8.12.10 串扰分析
  8.12.11 转换时间约束
  8.12.12 片上差异
  8.12.13 线延迟差异
  8.12.14 电压波动
  8.12.15 先进STA技术
  8.12.16 时序收敛
 8.13 总结
 练习
 参考文献
第9章 系统集成
 9.1 固件
 9.2 上电启动
 9.3 成败评价
 参考文献
缩写词汇表
推荐阅读
后折页
封底

机工科技数字图书馆