《AMD FPGA设计优化宝典:面向Vivado/VHDL》[41M]百度网盘|pdf下载|亲测有效
《AMD FPGA设计优化宝典:面向Vivado/VHDL》[41M]百度网盘|pdf下载|亲测有效
《AMD FPGA设计优化宝典:面向Vivado/VHDL》[41M]百度网盘|pdf下载|亲测有效

AMD FPGA设计优化宝典:面向Vivado/VHDL pdf下载

isbn:9787121450983
出版社 电子工业出版社
出版年 2023-03-01
页数 444页
ISBN 9787121450983
装帧 精装
评分 9.4(豆瓣)
8.90¥ 10.90¥

内容简介

本篇主要提供AMD FPGA设计优化宝典:面向Vivado/VHDL电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

内容简介

本书以Xilinx公司(目前已被AMD公司收购)的7系列FPGA、UltraScale/UltraScale+ FPGA和Versal ACAP内部架构为基础,介绍与之匹配的RTL代码的风格(采用VHDL语言)和基于Vivado的设计分析方法。全书共10章,包括时钟网络、组合逻辑、触发器、移位寄存器、存储器、乘加运算单元和状态机的代码风格和优化方法,也包含扇出和布线拥塞的优化方法。本书可供电子工程领域的本科生和研究生学习参考,也可供FPGA工程师和自学者参考使用。

作者简介

高亚军,FPGA技术分享者,设计优化和时序收敛专家,Vivado工具使用专家,数字信号处理专家,现任Xilinx资深战略应用工程师,多年来使用Xilinx FPGA实现数字信号处理算法,对Xilinx FPGA器件架构、开发工具Vivado/Vitis HLS/Model Composer及其设计理念有深厚的理论和实战经验。

目录

第1章 FPGA技术分析 1
1.1 芯片架构的演变 1
1.2 设计方法的演变 15
1.3 面临的挑战 20
1.4 四大基本原则 22
1.4.1 硬件原则 23
1.4.2 同步原则 24
1.4.3 流水原则 25
1.4.4 面积与速度的平衡与互换原则 27
1.5 性能指标 29
1.6 思考空间 31
第2章 优化时钟网络 32
2.1 时钟资源 32
2.1.1 7系列FPGA中的时钟资源 32
2.1.2 UlatraScale/UltraScale+ FPGA中的时钟资源 42
2.1.3 Versal ACAP中的时钟资源 47
2.2 时钟偏移 52
2.3 时钟抖动 64
2.4 安全的时钟启动方式 71
2.5 时钟规划 75
2.6 创建输出时钟 79
2.7 思考空间 80
第3章 优化组合逻辑 81
3.1 组合逻辑资源 81
3.2 译码器与编码器 82
3.2.1 译码器代码风格 82
3.2.2 编码器代码风格 93
3.3 多路复用器与多路解复用器 104
3.3.1 多路复用器代码风格 104
3.3.2 多路解复用器代码风格 117
3.4 加法器与累加器 119
3.4.1 加法器代码风格 119
3.4.2 累加器代码风格 134
3.5 其他组合逻辑电路 149
3.5.1 移位器代码风格 149
3.5.2 比较器代码风格 153
3.5.3 奇偶校验电路代码风格 166
3.5.4 二进制码与格雷码互转电路代码风格 167
3.6 避免组合逻辑环路 170
3.7 思考空间 171
第4章 优化触发器 172
4.1 触发器资源 172
4.1.1 7系列FPGA中的触发器资源 172
4.1.2 UltraScale/UltraScale+ FPGA中的触发器资源 174
4.1.3 Versal ACAP中的触发器资源 175
4.2 建立时间和保持时间 179
4.3 亚稳态 181
4.4 控制集 184
4.5 复位信号的代码风格 189
4.5.1 异步复位还是同步复位 189
4.5.2 全局复位还是局部复位 192
4.5.3 是否需要上电复位 195
4.6 同步边沿检测电路代码风格 199
4.7 串并互转电路代码风格 201
4.8 避免意外生成的锁存器 206
4.9 思考空间 209
第5章 优化移位寄存器 211
5.1 移位寄存器资源 211
5.1.1 7系列FPGA中的移位寄存器资源 211
5.1.2 UltraScale/UltraScale+ FPGA中的移位寄存器资源 212
5.1.3 Versal ACAP中的移位寄存器资源 212
5.2 移位寄存器的代码风格 216
5.3 移位寄存器的应用场景 227
5.4 管理时序路径上的移位寄存器 228
5.5 思考空间 232
第6章 优化存储器 234
6.1 存储器资源 234
6.1.1 分布式RAM 234
6.1.2 BRAM 235
6.1.3 UltraRAM 242
6.2 单端口RAM代码风格 246
6.3 简单双端口RAM代码风格 266
6.4 真双端口RAM代码风格 276
6.5 RAM的初始化与ROM代码风格 284
6.6 同步FIFO代码风格 287
6.7 异步FIFO代码风格 301
6.8 平衡BlockRAM的功耗与性能 310
6.9 异构RAM 312
6.10 以IP方式使用RAM和FIFO 312
6.11 以XPM方式使用RAM或FIFO 319
6.12 管理时序路径上的BRAM和UltraRAM 322
6.13 思考空间 328
第7章 优化乘加运算单元 329
7.1 乘加器资源 329
7.1.1 7系列FPGA中的乘加器资源 329
7.1.2 UltraScale/UltraScale+ FPGA中的乘加器资源 332
7.1.3 Versal ACAP中的乘加器资源 332
7.2 以乘法为核心运算的代码风格 335
7.3 复数乘法运算代码风格 363
7.4 向量内积代码风格 378
7.5 以加法为核心运算的电路结构 380
7.6 管理时序路径上的乘加器 386
7.7 思考空间 387
第8章 优化状态机 388
8.1 基本概念 388
8.2 状态机代码风格 390
8.3 状态编码方式 410
8.4 基于ROM的控制器 413
8.5 思考空间 416
第9章 优化扇出 417
9.1 生成扇出报告 417
9.2 利用设计流程降低扇出 419
9.3 利用约束降低扇出 421
9.4 从代码层面降低扇出 424
9.5 改善扇出的正确流程 424
9.6 思考空间 425
第10章 优化布线拥塞 426
10.1 布线拥塞的三种类型 426
10.2 利用设计流程改善布线拥塞 428
10.3 利用约束缓解布线拥塞 429
10.4 从代码层面降低布线拥塞程度 430
10.5 缓解布线拥塞的正确流程 430
10.6 思考空间 432

前言/序言

设计收敛是FPGA工程师面临的一个重要课题:既要保证功耗收敛,又要保证时序收敛。两者均与设计自身有很大关系。笔者在多年的工程实践和技术支持过程中发现,很多设计未能收敛都与代码风格或对Vivado工具的理解有很大关系。
就代码风格而言,目前已有越来越多的工程师意识到其重要性。往往“良好的代码风格”能起到事半功倍的效果。“良好的代码风格”的一个重要指标就是代码风格与FPGA内部结构相匹配,保证综合工具能够完美地推断出期望结果,而这一点被很多工程师忽略。例如,7系列FPGA内部的DSP48E1是不支持异步复位的,如果乘法器使用了异步复位,那么相应的触发器是无法被吸收到DSP48E1内部的,不仅消耗了额外的触发器(SLICE内部的触发器),还会导致时序恶化。鉴于此,本书以FPGA内部结构为基础,以VHDL语言为描述方式,结合大量实际案例,力求帮助读者深入理解两者之间的对应关系。Vivado从2015.3版本开始支持VHDL-2008,随着版本的不断升级,对VHDL-2008的支持力度也不断增大,并引入VHDL-2008的更多特性。相比于VHDL-93版本和VHDL-87版本,VHDL-2008版本更灵活、更易用。因此,本书采用VHDL-2008版本,同时列出所用到的VHDL-2008新特性。
就工具而言,Vivado的功能越来越强大,自身越来越智能,分析手段越来越多。这就需要工程师深入理解工具在各个阶段所提供的选项含义,能够在工程实践中正确、合理地使用这些选项对应的功能,同时,面对未能收敛的设计,能够找到其中的根本原因。为此,本书也介绍了什么是有缺陷的设计、如何借助Tcl脚本找到这些缺陷,以及如何解决这些缺陷。
全书共10章。第1章从FPGA发展历程的角度对FPGA技术进行了分析。第2章以时钟网络架构为基础阐述了优化时钟网络的经典方法,涉及改善时钟偏移和降低时钟抖动。第3章~第7章分别介绍了优化组合逻辑、优化触发器、优化移位寄存器、优化存储器和优化乘加运算单元的经典方法。每章第1节均重点介绍优化对象的基本结构,包含目前主流的FPGA(7系列FPGA、UltraScale/UltraScale+ FPGA和Versal ACAP)。每章最后1节均重点介绍如何发现缺陷单元及如何处理这些缺陷。第8章介绍了优化状态机的经典方法,包括状态机的“两段式”和“三段式”描述方法、状态机编码方式、Vivado提供的状态机编码选项等。第9章阐述了优化扇出的经典方法。第10章阐述了优化布线拥塞的经典方法。这两章以Vivado工具为核心,给出了相应的Tcl脚本。
全书既阐述了FPGA内部结构,又阐述了RTL代码风格(采用VHDL语言);既介绍了以Vivado图形界面为主的分析手段,又介绍了以Tcl脚本为主的分析手段。力求帮助读者从设计输入和设计分析两个维度理解设计。
为便于读者阅读和理解书中内容,本书给出了469张图片、85个表格、189个VHDL代码片段、56个Tcl脚本片段、65条设计规则和29个应用案例。同时,为加深印象,本书在每章结束之后还列出一些常见问题留给读者思考,共有101个问题。
FPGA设计收敛不是一蹴而就的,既需要依靠大脑智慧,又需要工具协同,两者缺一不可。希望您阅读本书之后对FPGA架构和RTL代码风格的理解能够更上一层楼。

高亚军
2022/9/12


内容简介

本书以Xilinx公司(目前已被AMD公司收购)的7系列FPGA、UltraScale/UltraScale+ FPGA和Versal ACAP内部架构为基础,介绍与之匹配的RTL代码的风格(采用VHDL语言)和基于Vivado的设计分析方法。全书共10章,包括时钟网络、组合逻辑、触发器、移位寄存器、存储器、乘加运算单元和状态机的代码风格和优化方法,也包含扇出和布线拥塞的优化方法。本书可供电子工程领域的本科生和研究生学习参考,也可供FPGA工程师和自学者参考使用。

作者简介

高亚军,FPGA技术分享者,设计优化和时序收敛专家,Vivado工具使用专家,数字信号处理专家,现任Xilinx资深战略应用工程师,多年来使用Xilinx FPGA实现数字信号处理算法,对Xilinx FPGA器件架构、开发工具Vivado/Vitis HLS/Model Composer及其设计理念有深厚的理论和实战经验。

目录

第1章 FPGA技术分析 1
1.1 芯片架构的演变 1
1.2 设计方法的演变 15
1.3 面临的挑战 20
1.4 四大基本原则 22
1.4.1 硬件原则 23
1.4.2 同步原则 24
1.4.3 流水原则 25
1.4.4 面积与速度的平衡与互换原则 27
1.5 性能指标 29
1.6 思考空间 31
第2章 优化时钟网络 32
2.1 时钟资源 32
2.1.1 7系列FPGA中的时钟资源 32
2.1.2 UlatraScale/UltraScale+ FPGA中的时钟资源 42
2.1.3 Versal ACAP中的时钟资源 47
2.2 时钟偏移 52
2.3 时钟抖动 64
2.4 安全的时钟启动方式 71
2.5 时钟规划 75
2.6 创建输出时钟 79
2.7 思考空间 80
第3章 优化组合逻辑 81
3.1 组合逻辑资源 81
3.2 译码器与编码器 82
3.2.1 译码器代码风格 82
3.2.2 编码器代码风格 93
3.3 多路复用器与多路解复用器 104
3.3.1 多路复用器代码风格 104
3.3.2 多路解复用器代码风格 117
3.4 加法器与累加器 119
3.4.1 加法器代码风格 119
3.4.2 累加器代码风格 134
3.5 其他组合逻辑电路 149
3.5.1 移位器代码风格 149
3.5.2 比较器代码风格 153
3.5.3 奇偶校验电路代码风格 166
3.5.4 二进制码与格雷码互转电路代码风格 167
3.6 避免组合逻辑环路 170
3.7 思考空间 171
第4章 优化触发器 172
4.1 触发器资源 172
4.1.1 7系列FPGA中的触发器资源 172
4.1.2 UltraScale/UltraScale+ FPGA中的触发器资源 174
4.1.3 Versal ACAP中的触发器资源 175
4.2 建立时间和保持时间 179
4.3 亚稳态 181
4.4 控制集 184
4.5 复位信号的代码风格 189
4.5.1 异步复位还是同步复位 189
4.5.2 全局复位还是局部复位 192
4.5.3 是否需要上电复位 195
4.6 同步边沿检测电路代码风格 199
4.7 串并互转电路代码风格 201
4.8 避免意外生成的锁存器 206
4.9 思考空间 209
第5章 优化移位寄存器 211
5.1 移位寄存器资源 211
5.1.1 7系列FPGA中的移位寄存器资源 211
5.1.2 UltraScale/UltraScale+ FPGA中的移位寄存器资源 212
5.1.3 Versal ACAP中的移位寄存器资源 212
5.2 移位寄存器的代码风格 216
5.3 移位寄存器的应用场景 227
5.4 管理时序路径上的移位寄存器 228
5.5 思考空间 232
第6章 优化存储器 234
6.1 存储器资源 234
6.1.1 分布式RAM 234
6.1.2 BRAM 235
6.1.3 UltraRAM 242
6.2 单端口RAM代码风格 246
6.3 简单双端口RAM代码风格 266
6.4 真双端口RAM代码风格 276
6.5 RAM的初始化与ROM代码风格 284
6.6 同步FIFO代码风格 287
6.7 异步FIFO代码风格 301
6.8 平衡BlockRAM的功耗与性能 310
6.9 异构RAM 312
6.10 以IP方式使用RAM和FIFO 312
6.11 以XPM方式使用RAM或FIFO 319
6.12 管理时序路径上的BRAM和UltraRAM 322
6.13 思考空间 328
第7章 优化乘加运算单元 329
7.1 乘加器资源 329
7.1.1 7系列FPGA中的乘加器资源 329
7.1.2 UltraScale/UltraScale+ FPGA中的乘加器资源 332
7.1.3 Versal ACAP中的乘加器资源 332
7.2 以乘法为核心运算的代码风格 335
7.3 复数乘法运算代码风格 363
7.4 向量内积代码风格 378
7.5 以加法为核心运算的电路结构 380
7.6 管理时序路径上的乘加器 386
7.7 思考空间 387
第8章 优化状态机 388
8.1 基本概念 388
8.2 状态机代码风格 390
8.3 状态编码方式 410
8.4 基于ROM的控制器 413
8.5 思考空间 416
第9章 优化扇出 417
9.1 生成扇出报告 417
9.2 利用设计流程降低扇出 419
9.3 利用约束降低扇出 421
9.4 从代码层面降低扇出 424
9.5 改善扇出的正确流程 424
9.6 思考空间 425
第10章 优化布线拥塞 426
10.1 布线拥塞的三种类型 426
10.2 利用设计流程改善布线拥塞 428
10.3 利用约束缓解布线拥塞 429
10.4 从代码层面降低布线拥塞程度 430
10.5 缓解布线拥塞的正确流程 430
10.6 思考空间 432

前言/序言

设计收敛是FPGA工程师面临的一个重要课题:既要保证功耗收敛,又要保证时序收敛。两者均与设计自身有很大关系。笔者在多年的工程实践和技术支持过程中发现,很多设计未能收敛都与代码风格或对Vivado工具的理解有很大关系。
就代码风格而言,目前已有越来越多的工程师意识到其重要性。往往“良好的代码风格”能起到事半功倍的效果。“良好的代码风格”的一个重要指标就是代码风格与FPGA内部结构相匹配,保证综合工具能够完美地推断出期望结果,而这一点被很多工程师忽略。例如,7系列FPGA内部的DSP48E1是不支持异步复位的,如果乘法器使用了异步复位,那么相应的触发器是无法被吸收到DSP48E1内部的,不仅消耗了额外的触发器(SLICE内部的触发器),还会导致时序恶化。鉴于此,本书以FPGA内部结构为基础,以VHDL语言为描述方式,结合大量实际案例,力求帮助读者深入理解两者之间的对应关系。Vivado从2015.3版本开始支持VHDL-2008,随着版本的不断升级,对VHDL-2008的支持力度也不断增大,并引入VHDL-2008的更多特性。相比于VHDL-93版本和VHDL-87版本,VHDL-2008版本更灵活、更易用。因此,本书采用VHDL-2008版本,同时列出所用到的VHDL-2008新特性。
就工具而言,Vivado的功能越来越强大,自身越来越智能,分析手段越来越多。这就需要工程师深入理解工具在各个阶段所提供的选项含义,能够在工程实践中正确、合理地使用这些选项对应的功能,同时,面对未能收敛的设计,能够找到其中的根本原因。为此,本书也介绍了什么是有缺陷的设计、如何借助Tcl脚本找到这些缺陷,以及如何解决这些缺陷。
全书共10章。第1章从FPGA发展历程的角度对FPGA技术进行了分析。第2章以时钟网络架构为基础阐述了优化时钟网络的经典方法,涉及改善时钟偏移和降低时钟抖动。第3章~第7章分别介绍了优化组合逻辑、优化触发器、优化移位寄存器、优化存储器和优化乘加运算单元的经典方法。每章第1节均重点介绍优化对象的基本结构,包含目前主流的FPGA(7系列FPGA、UltraScale/UltraScale+ FPGA和Versal ACAP)。每章最后1节均重点介绍如何发现缺陷单元及如何处理这些缺陷。第8章介绍了优化状态机的经典方法,包括状态机的“两段式”和“三段式”描述方法、状态机编码方式、Vivado提供的状态机编码选项等。第9章阐述了优化扇出的经典方法。第10章阐述了优化布线拥塞的经典方法。这两章以Vivado工具为核心,给出了相应的Tcl脚本。
全书既阐述了FPGA内部结构,又阐述了RTL代码风格(采用VHDL语言);既介绍了以Vivado图形界面为主的分析手段,又介绍了以Tcl脚本为主的分析手段。力求帮助读者从设计输入和设计分析两个维度理解设计。
为便于读者阅读和理解书中内容,本书给出了469张图片、85个表格、189个VHDL代码片段、56个Tcl脚本片段、65条设计规则和29个应用案例。同时,为加深印象,本书在每章结束之后还列出一些常见问题留给读者思考,共有101个问题。
FPGA设计收敛不是一蹴而就的,既需要依靠大脑智慧,又需要工具协同,两者缺一不可。希望您阅读本书之后对FPGA架构和RTL代码风格的理解能够更上一层楼。

高亚军
2022/9/12

用户名:风***然
内容:非常好,非常满意,效果特别棒,十分感谢
评分:9.04
用户名:r***x
内容:内容丰富,很多技术点讲的不错
评分:9.47
用户名:z***u
内容:客服服务态度很好,快递也不赖,希望老板生意越来越好!!!很精致,质量非常好,很满意的一次购物。谢谢店家!质量非常好,客服态度非常非常赞,有问题及时给解决了
评分:8.75
用户名:凌***2
内容:这个作者很有名么?不知道哦,网上推荐的买的,不知道内容咋样,希望是针对最新的fpga出的书,里边有最新的业界实际。快递很给力
评分:8.85
用户名:鸣***嫣
内容:囤书瘾一直没有办法停下来,家里的书已堆成综合性的图书馆了,每次看见推荐的书单,都忍不住在京东搜索,赶上活动买下了,相比其他来最优惠了。书很棒,纸张和印刷很好
评分:9.50