机械工业出版社旗舰店店铺主页二维码
机械工业出版社旗舰店 微信认证
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

FPGA设计实例 VHDL实战指南 曲邦平 FPGA设计 VHDL实战 PicoBlaze微控制器 硬件描述语言 FPGA设计教程书籍

101.30
运费: 免运费
FPGA设计实例 VHDL实战指南 曲邦平 FPGA设计 VHDL实战 PicoBlaze微控制器 硬件描述语言 FPGA设计教程书籍 商品图0
FPGA设计实例 VHDL实战指南 曲邦平 FPGA设计 VHDL实战 PicoBlaze微控制器 硬件描述语言 FPGA设计教程书籍 商品缩略图0

商品详情

书名:FPGA设计实例:VHDL实战指南
定价:149.0
ISBN:9787111798163
作者:[美]曲邦平(Pong P. Chu)
版次:1
出版时间:2026-01

内容提要:


本书主要包括三部分内容:基本数字电路、I/O模块和PicoBlaze微控制器。第一部分介绍了基础的HDL结构和对应硬件,并且示范如何用这些结构来搭建基本的数字电路;第二部分是应用第一部分的技术为原型板设计一系列外围模块,介绍了外设的开发、实现和验证,可以将这些模块组成一个更大的复杂系统;第三部分介绍了基于FPGA的软核微控制器,即PicoBlaze,展示了如何通过处理器和定制电路进行集成。

本书不仅介绍了HDL的语法,还重点介绍了对可编程逻辑器件的设计方法,提供了一系列使用VHDL对可编程逻辑器件进行设计的实例,书中的实例均可运行于Xilinx公司Spartan-3开发板中,使读者能够边动手实践边学习,达到快速入门并掌握要领的目的。

本书可作为可编程逻辑器件的学习指导书,通过书中的案例,初学者最终可以完全掌握可编程逻辑器件的设计方法。同时,也可作为工程实践的指导用书,对提高可编程逻辑器件开发人员的设计水平有借鉴价值。






目录:


译者序

原书前言

致谢

第一部分基本数字电路

第1章门级组合电路3

1.1简介3

1.2一般描述3

1.2.1基本词汇规则4

1.2.2库和包4

1.2.3实体声明4

1.2.4数据类型与操作符5

1.2.5结构体5

1.2.62位比较器代码6

1.3结构描述7

1.4testbench8

1.5参考书目10

1.6参考实验10

1.6.1门级大于电路代码11

1.6.2门级二进制译码器代码11

第2章FPGA及EDA软件概述12

2.1简介12

2.2FPGA12

2.2.1通用FPGA器件概述12

2.2.2Xilinx Spartan-3器件概述13

2.3Digilent S3开发板概述14

2.4开发流程16

2.5Xilinx ISE Project Navigator概述17

2.6ISE Project Navigator简明教程19

2.6.1创建工程和HDL代码20

2.6.2创建testbench及执行RTL仿真22

2.6.3添加约束文件综合和实现代码22

2.6.4生成并下载配置文件至FPGA芯片23

2.7ModelSim HDL仿真器简明教程26

2.8参考书目30

2.9参考实验30

2.9.1门级大于电路30

2.9.2门级二进制译码器31

FPGA设计实例:VHDL实战指南

目录

第3章寄存器传输级组合逻辑电路32

3.1简介32

3.2寄存器传输级元件32

3.2.1关系运算符33

3.2.2算术运算符33

3.2.3其他相关综合的VHDL结构35

3.2.4总结36

3.3并发赋值语句的分布电路37

3.3.1条件信号赋值语句37

3.3.2选择信号赋值语句39

3.4行为建模41

3.4.1进程41

3.4.2时序信号赋值语句42

3.5if语句和case语句的布线电路42

3.5.1if语句42

3.5.2case语句44

3.5.3并发语句的比较45

3.5.4意外生成的存储器47

3.6常量和属性48

3.6.1常量48

3.6.2属性49

3.7设计实例51

3.7.1十六进制七段LED译码器51

3.7.2“符号-幅值”加法器54

3.7.3桶式移位器56

3.7.4简化的浮点加法器58

3.8参考书目63

3.9参考实验63

3.9.1多功能桶式移位器63

3.9.2双优先级编码器63

3.9.3BCD码增量器63

3.9.4浮点数大于比较电路64

3.9.5浮点数和有符号整型转换电路64

3.9.6增强型浮点数加法器64

第4章常规时序电路65

4.1简介65

4.1.1D触发器和寄存器65

4.1.2同步系统66

4.1.3代码开发67

4.2触发器和寄存器的HDL代码67

4.2.1D触发器67

4.2.2寄存器70

4.2.3寄存器文件71

4.2.4Xilinx Spartan-3器件的存储元件72

4.3简单的设计举例72

4.3.1移位寄存器72

4.3.2二进制计数器及其转换形式74

4.4时序电路的testbench77

4.5案例学习81

4.5.1LED时分复用电路81

4.5.2秒表87

4.5.3FIFO缓冲器91

4.6参考书目96

4.7参考实验96

4.7.1可编程的方波生成器96

4.7.2PWM和LED调节器96

4.7.3旋转的方形图案电路96

4.7.4心跳电路96

4.7.5可轮换的LED标语电路97

4.7.6增强的秒表97

4.7.7栈(Stack)97

第5章有限状态机98

5.1简介98

5.1.1Mealy输出和Moore输出98

5.1.2有限状态机表示方法98

5.2有限状态机编码设计100

5.3设计举例103

5.3.1上升沿检测器103

5.3.2去抖电路108

5.3.3测试电路111

5.4参考书目113

5.5参考实验113

5.5.1双沿检测器113

5.5.2另一种去抖电路113

5.5.3停车场占用计数器114

第6章FSMD115

6.1简介115

6.1.1单个RT操作115

6.1.2ASMD图115

6.1.3带寄存器的判决盒117

6.2FSMD的代码开发118

6.2.1基于RT理论的去抖电路118

6.2.2带有数据路径元件的编码120

6.2.3带有隐含数据路径元件的编码122

6.2.4对比123

6.2.5测试电路124

6.3设计实例126

6.3.1斐波那契电路126

6.3.2除法电路128

6.3.3二进制数向BCD码转换电路131

6.3.4周期计数器134

6.3.5精确的低频计数器137

6.4参考书目140

6.5参考实验140

6.5.1另一种去抖电路140

6.5.2BCD码向二进制数转换电路141

6.5.3带有BCD I/O的斐波那契电路:设计方法1141

6.5.4带有BCD I/O的斐波那契电路:设计方法2141

6.5.5尺度自适应的低频计数器142

6.5.6反应定时器142

6.5.7巴贝奇差分机模拟电路143

第二部分I/O模块

第7章UART147

7.1简介147

7.2UART接收子系统147

7.2.1过采样步骤148

7.2.2波特率发生器148

7.2.3UART接收器149

7.2.4接口电路151

7.3UART发送子系统154

7.4UART总系统简述156

7.4.1完备的UART核156

7.4.2UART验证配置158

7.5定制一个UART162

7.6参考书目162

7.7参考实验162

7.7.1全功能UART162

7.7.2带波特率自动检测功能的UART163

7.7.3带有波特率及校验位自动检测电路的UART164

7.7.4UART控制的秒表164

7.7.5UART控制的LED标语164

第8章PS2键盘165

8.1简介165

8.2PS2接收子系统165

8.2.1PS2端口的物理接口165

8.2.2设备到主机的通信协议165

8.2.3设计与代码166

8.3PS2键盘扫描码169

8.3.1扫描码概述169

8.3.2扫描码监测电路170

8.4PS2键盘接口电路172

8.4.1基本设计与HDL代码172

8.4.2验证电路174

8.5参考书目177

8.6参考实验177

8.6.1键盘接口转化Ⅰ177

8.6.2键盘接口转化Ⅱ177

8.6.3带看门狗定时器的PS2接收子系统177

8.6.4键盘控制的秒表177

8.6.5键盘控制的移动LED标语178

第9章PS2鼠标179

9.1简介179

9.2PS2鼠标协议179

9.2.1基本操作179

9.2.2基本的初始化程序180

9.3PS2传输子系统181

9.3.1主机到PS2设备的通信协议181

9.3.2设计和代码182

9.4双向的PS2接口185

9.4.1基本设计和代码185

9.4.2验证电路186

9.5PS2鼠标接口189

9.5.1基本设计189

9.5.2测试电路191

9.6参考书目192

9.7参考实验192

9.7.1键盘控制电路193

9.7.2增强的鼠标接口193

9.7.3鼠标控制七段LED显示器193

第10章外部SRAM194

10.1简介194

10.2IS61LV25616AL SRAM的说明194

10.2.1框图和I/O信号194

10.2.2时序参数196

10.3基础存储控制器198

10.3.1框图198

10.3.2时序需求199

10.3.3寄存器文件与SRAM200

10.4安全设计200

10.4.1ASMD图200

10.4.2时序分析201

10.4.3HDL编码(执行)202

10.4.4基础测试电路204

10.4.5全面的SRAM测试电路206

10.5更主流的设计211

10.5.1时序问题211

10.5.2可选设计Ⅰ211

10.5.3可选设计Ⅱ213

10.5.4可选设计Ⅲ214

10.5.5Xilinx公司的高级FPGA特点215

10.6参考书目216

10.7参考实验216

10.7.1512K×16位配置的存储器216

10.7.21M×8位配置的存储器216

10.7.38M×1位配置的存储器217

10.7.4扩展存储器实验电路217

10.7.5可选设计Ⅰ的测试电路和存储控制器217

10.7.6可选设计Ⅱ的测试电路和存储控制器217

10.7.7可选设计Ⅲ的测试电路和存储控制器217

10.7.8DCM的存储控制器217

10.7.9高性能存储控制器217

第11章Xilinx Spartan-3专用存储器218

11.1简介218

11.2Spartan-3器件的内部存储器218

11.2.1概述218

11.2.2对比219

11.3添加存储器模块的方法219

11.3.1通过HDL元件实例化产生存储器模块219

11.3.2通过核生成器产生存储器模块220

11.3.3通过HDL模型产生存储器模块220

11.4存储器HDL模板221

11.4.1单端口RAM221

11.4.2双端口RAM223

11.4.3ROM225

11.5参考书目228

11.6参考实验228

11.6.1基于块RAM的FIFO228

11.6.2基于块RAM的堆栈228

11.6.3基于ROM的原码加法器228

11.6.4基于ROM的sin(x)函数229

11.6.5基于ROM的sin(x)与cos(x)函数229

第12章VGA控制器Ⅰ:图形230

12.1简介230

12.1.1CRT的基本工作方式230

12.1.2S3板上的VGA端口231

12.1.3视频控制器232

12.2VGA同步232

12.2.1水平同步233

12.2.2垂直同步234

12.2.3VGA同步信号的时序计算235

12.2.4HDL实现235

12.2.5测试电路237

12.3像素生成电路概述238

12.4对象图方案图形生成239

12.4.1矩形对象240

12.4.2非矩形对象244

12.4.3动态对象246

12.5位图方案图形生成252

12.5.1双口RAM实现253

12.5.2单端口RAM实现257

12.6参考书目258

12.7参考实验258

12.7.1VGA测试图案生成器258

12.7.2SVGA模式同步电路258

12.7.3显示屏幕调节电路258

12.7.4盒中球电路259

12.7.5盒中双球电路259

12.7.6双人乒乓球游戏259

12.7.7突出重围游戏259

12.7.8全屏点轨迹260

12.7.9鼠标指针电路260

12.7.10小屏鼠标涂鸦电路260

12.7.11全屏鼠标涂鸦电路260

第13章VGA控制器Ⅱ:示例261

13.1简介261

13.2举例261

13.2.1点阵的特性261

13.2.2字型ROM262

13.2.3基本文本生成电路263

13.2.4字型显示电路264

13.2.5字型缩放比例266

13.3全屏文本显示266

13.4完整的乒乓球游戏设计271

13.4.1文本子系统271

13.4.2修正图像子系统277

13.4.3辅助计数器278

13.4.4顶层系统280

13.5参考书目284

13.6参考实验284

13.6.1旋转旗帜284

13.6.2指针的下划线285

13.6.3双模式文本显示285

13.6.4键盘文本输入285

13.6.5UART终端285

13.6.6方波显示285

13.6.7简单的四路逻辑分析器286

13.6.8完整的双人乒乓球游戏286

13.6.9完整的通关游戏286

ⅩⅧ

ⅩⅦ

第三部分PicoBlaze微控制器

第14章PicoBlaze概述289

14.1简介289

14.2定制硬件和软件289

14.2.1从专用FSMD到通用微控制器289

14.2.2微控制器的应用291

14.3PicoBlaze概述291

14.3.1基本组成291

14.3.2顶层HDL模块293

14.4开发流程293

14.5指令集294

14.5.1编程模式295

14.5.2指令格式296

14.5.3逻辑指令296

14.5.4算术指令297

14.5.5比较和检验指令298

14.5.6移位和循环指令299

14.5.7数据传输指令300

14.5.8程序控制指令302

14.5.9中断指令305

14.6伪指令声明指令306

14.6.1KCPSM3汇编伪指令306

14.6.2pBlaze IDE汇编伪指令306

14.7参考书目307

第15章PicoBlaze汇编语言开发308

15.1简介308

15.2有效的代码段308

15.2.1KCPSM3协议308

15.2.2位操作308

15.2.3多字节操作309

15.2.4控制结构310

15.3子程序开发312

15.4编程的发展313

15.4.1示例314

15.4.2程序文件318

15.5汇编代码处理320

15.5.1KCSPM3编译320

15.5.2pBlaze IDE仿真321

15.5.3JTAG重载323

15.5.4pBlaze IDE编译323

15.6PicoBlaze综合323

15.7参考书目325

15.8参考实验325

15.8.1符号乘法325

15.8.2多字节乘法运算325

15.8.3循环移位功能326

15.8.4高低位互置功能326

15.8.5二进制数至BCD码转换326

15.8.6BCD码至二进制数转换326

15.8.7心跳电路326

15.8.8顺序循环LED电路326

15.8.9离散LED调光器326

第16章PicoBlaze I/O接口327

16.1简介327

16.2输出端口327

16.2.1output指令及时序327

16.2.2输出接口328

16.3输入端口330

16.3.1input指令和时序330

16.3.2输入接口331

16.4包含开关输入和七段LED显示接口的平方计算程序332

16.4.1输出接口332

16.4.2输入接口333

16.4.3汇编代码开发335

16.4.4VHDL代码开发342

16.5结合组合乘法器和UART控制器的乘法程序345

16.5.1乘法器接口345

16.5.2UART接口345

16.5.3汇编代码开发347

16.5.4VHDL代码开发355

16.6参考书目359

ⅩⅩ

ⅩⅨ

16.7参考实验359

16.7.1低频计数器Ⅰ359

16.7.2低频计数器Ⅱ359

16.7.3自适应低频计数器359

16.7.4用软件计时器的基础反应计时器359

16.7.5用硬件计时器的基础反应计时器360

16.7.6增强型反应计时器360

16.7.7小屏幕鼠标跟踪电路360

16.7.8全屏幕鼠标跟踪电路360

16.7.9增强型跑马灯字幕360

16.7.10乒乓球游戏361

16.7.11文本编辑器361

第17章PicoBlaze中断接口362

17.1简介362

17.2PicoBlaze里的中断操作362<

机械工业出版社旗舰店店铺主页二维码
机械工业出版社旗舰店 微信公众号认证
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

FPGA设计实例 VHDL实战指南 曲邦平 FPGA设计 VHDL实战 PicoBlaze微控制器 硬件描述语言 FPGA设计教程书籍

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:cmp1952
机工书院官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏