国际信息工程先进技术译丛 FPGA设计 基于团队的最佳实践作者:何春 译出版时间:2014内容简介 FPGA设计——基于团队的最佳实践根据FPGA设计实践中的经验总结,介绍了一套适用于FPGA设计的最佳实用设计方法学。该方法学涉及了整个FPGA设计流程,从编写设计规范到RTL代码设计,再到设计验证,几乎涵盖了从基本到高级的所有技巧。全书共分为14章,主要包括设计初期的项目管理、设计说明书、FPGA器件选择、团队设计环境,以及设计过程中的电路板布局、功耗、RTL设计、IP重用、功能验证、时序收敛,设计完成后的在线调试和设计签收等内容,并针对设计中常见的问题和设计优化提供了具体的指导。FPGA设计——基于团队的最佳实践主要讲述了FPGA设计过程中的经验、方法及技巧,有助于客户解决复杂FPGA设计中的各类问题,对获得高性能设计及缩短设计周期有很大的帮助。FPGA设计——基于团队的最佳实践可以作为电子工程类、自动控制类、计算机类本科高年级及研究生教学用书,也可供其他工程人员自学与参考。目录译者序原书序第1章 FPGA设计成功的最佳实践 1.1引言 第2章 项目管理 2.1 项目管理的作用2.1.1 项目管理的阶段2.1.2 项目持续时间的估算2.1.3 计划 第3章 设计说明书 3.1 设计说明书:沟通是成功的关键3.1.1 高级功能说明书 3.1.2 功能设计说明书 第4章 资源调查 4.1 引言4.2 工程资源4.3 第三方IP 4.4 FPGA器件选择 4.4.1 FPGA器件的特殊功能4.4.2 FPGA的规模选型 4.4.3 速度需求 4.4.4 引脚 4.4.5 功耗4.4.6 IP的可用性 4.4.7 器件的可用性4.4.8 小结 第5章 设计环境 5.1 引言5.2 脚本化环境5.3 与版本控制软件的交互 5.4 问题跟踪系统的使用 5.5 回归测试系5.6 如何升级FPGA设计工具的版本 5.7 FPGA设计环境中常用的工具 第6章 电路板设计 6.1 FPGA器件给电路板设计带来的挑战6.2 工程师的角色和职责 6.2.1 FPGA工程师6.2.2 PCB设计工程师6.2.3 信号完整性设计工程师 6.3 功耗和散热问题 6.3.1 滤除电源噪声 6.3.2 电源分配 6.4 信号的完整性6.4.1 信号完整性问题的类型6.4.2 电磁干扰 6.5 FPGA引脚分配的设计流程 6.5.1 流程1:由FPGA设计师主动6.5.2 流程2:由电路板设计师主动 6.5.3 FPGA设计师和电路板设计师如何进行引脚改动的沟通 6.6 电路板设计的审查要点 第7章 功耗和热分析 7.1 引言7.2 功耗的基本要素7.2.1 静态功耗7.2.2 动态功耗7.2.3 输入/输出功耗 7.2.4 浪涌电流7.2.5 配置功耗7.3 准确估计功耗的关键因素7.3.1 FPGA电路的准确功耗模型 7.3.2 每个信号的准确数据切换率7.3.3 准确的运行条7.3.4 资源利用 7.4 设计周期早期的功耗估计(电源规划) 7.5 基于仿真的功耗估计(设计的功耗验证) 7.5.1 局部仿真 7.6 功耗估计的最佳实践方法 第8章 RTL代码设计 8.1 介绍8.2 常用术语8.3 对有ASIC设计背景的工程师的建议 8.4 推荐的FPGA设计规范 8.4.1 同步与异步8.4.2 全局信号8.4.3 专用硬件组件 8.4.4 低层次设计原语的使用 8.4.5 亚稳态的管理 8.5 编写高效的HDL代码 8.5.1 什么事最好的硬件设计语言 8.5.2 良好的设计习惯 8.5.3 可综合的HDL 8.6 RTL设计的分析 8.6.1 综合报告8.6.2 综合警告 8.6.3 电路方块图的浏览 8.7 RTL设计要点总结 第9章 IP及设计重用 9.1 引言 9.2 IP重用的需求9.2.1 IP重用的好处9.2.2 开发可重用设计方法学面临的困难 9.3 设计还是购买 9.4 构建可重用的IP 9.4.1 设计说明书9.4.2 实施方法9.4.3 标准接口的使用 9.5 IP组件库软件包 9.5.1 IP说明书9.5.2 用户接口 9.5.3 与系统集成工具的兼容性 9.5.4 IP的安全性 9.6 IP重用的检查清单 第10章 硬件到软件的接口 10.1 软件接口10.2 寄存器地址映射表的定义10.3 寄存器地址映射表的使用10.3.1 IP的选择10.3.2 软件工程师的接口10.3.3 RTL工程师的接口 10.3.4 接口的验证10.3.5 文档 10.4 小结 第11章 功能验证 11.1 简介11.2 功能验证面临的挑战11.3 有关验证的术语 11.4 RTL仿真和门级仿真的对比 11.5 验证方法学11.6 克服复杂性11.6.1 设计和测试的模块化11.6.2 规划预期操作 11.6.3 应对意外状态的计划11.7 功能覆盖11.7.1 定向测试 11.7.2 随机动态仿真11.7.3 受约束的随机测试 11.7.4 SystemVerilog用于设计和验证 11.7.5 通用测试平台方法 11.7.6 自验证测试平台 11.7.7 形式化等价性验证 11.8 代码覆盖度 11.9 质量评价(QA)测试11.9.1 功能回归测试11.9.2 可重用IP的图形界面(GUI)测试 11.10 硬件互操作性测试 11.11 软/硬件协同验证11.11.1 加快投片的准备11.12 功能验证清单 第12章 时序收敛 12.1 时序收敛的难点12.2 时序分配和时序分析的重要性12.2.1 时序分析的背景 12.2.2 时序分析的基础12.3 实现时序收敛目标的方法学 12.3.1 制定FPGA器件系列 12.3.2 设计规划 12.3.3 早期时序估计 12.3.4 CAD工具设置 12.4 常见的时序收敛问题 12.4.1 缺失时序约束12.4.2 时序约束发生冲突 12.4.3 高扇出寄存器12.4.4 只差一点就能满足时序12.4.5 不宜过早设置位置约束12.4.6 冗长的编译时间 12.5 设计规划、实现、优化和时序收敛清单 第13章 系统在线调试 13.1 系统在线调试的难点13.2 规划13.3 调试方法 13.3.1 利用引脚调试13.3.2 片内逻辑分析仪 13.3.3 调试逻辑的使用 13.3.4 外部逻辑分析仪 13.3.5 编辑存储器的内容 13.3.6 利用软核处理器进行调试 13.4 使用举例13.4.1 上电调试13.4.2 收发接口调13.4.3 系统性能报告 13.4.4 软核处理器调试 13.5 系统在线调试核对清单 第14章 设计的签收 14.1 设计签收过程14.2 设计签收之后 审校者后记 索引 上一篇: 国际信息工程先进技术译丛 绿色网络 下一篇: 国际信息工程先进技术译丛 无线神经接口的超低功耗集成电路设计