FPGA项目开发实战讲解

副标题:无

作   者:李宪强 编著

分类号:

ISBN:9787121256400

微信扫一扫,移动浏览光盘

简介

本书立足于工程实践经验,首先介绍FPGA的原理、语法、设计技巧,然后详细介绍了7项常用技术的实现。每项技术从以下几方面介绍:相关技术介绍、FPGA方案框图设计、子模块设计、仿真和测试、项目开发过程中遇到的问题、定位和解决措施,其中插入了大量的状态机转换图和关键代码,方便读者学习。

目录

第1章 FPGA介绍1
1.1 FPGA的优势1
1.2 FPGA典型结构图2
1.3 LUT原理6
1.4 FPGA上电配置过程时序图7
1.5 FPGA基本开发流程10
第2章 Verilog语法介绍13
2.1 Verilog HDL语言简介13
2.1.1 什么是Verilog HDL13
2.1.2 Verilog HLC的历史13
2.2 Verilog HDL和VHDL语言比较14
2.3 Verilog语法介绍15
2.3.1 模块15
2.3.2 常量16
2.3.3 parameter与define的区别18
2.3.4 reg和wire19
2.3.5 操作符21
2.3.6 assign和always语句21
2.3.7 if和case语句23
2.3.8 循环语句25
2.3.9 模块实例化25
2.3.10 预处理指令26
2.3.11 系统任务26
2.3.12 task和function语句的区别29
2.3.13 文件操作30
第3章 FPGA开发必要的技术积累33
3.1 锁存器、触发器33
3.2 时序的基本概念34
3.2.1 建立和保持时间34
3.2.2 同步系统中时序分析34
3.3 异步时钟域和亚稳态37
3.3.1 什么是亚稳态37
3.3.2 亚稳态发生场合37
3.3.3 亚稳态危害38
3.3.4 怎么减少亚稳态的发生38
3.3.5 案例:亚稳态导致通信异常39
3.4 状态机的设计39
3.5 复位信号40
3.5.1 同步复位和异步复位比较40
3.5.2 案例:和复位信号相关的项目41
3.6 串并转换和并串转换42
3.7 流水技术42
3.7.1 流水技术原理42
3.7.2 案例:NAND FLASH流水实现高速存储43
3.8 乒乓操作44
3.9 双向端口使用45
3.9.1 数据总线的设计45
3.9.2 程序设计45
3.9.3 案例:MCU接口程序46
3.10 Xilinx原语介绍49
3.10.1 时钟组件49
3.10.2 吉比特收发器组件50
3.10.3 I/O端口组件50
3.10.4 IBUFDS51
3.10.5 IDELAY52
3.10.6 OBUFDS53
3.11 DCM原理54
3.12 RAM核的使用56
3.13 FPGA时序约束60
3.13.1 FPGA约束介绍60
3.13.2 案例:500MSPS的A/D转换器63
3.14 生成IP核70
3.14.1 生成IP核的方法70
3.14.2 案例:生成IP核的具体操作过程71
3.15 保持层次关系73
3.16 Chipscope ICON和ILA75
3.16.1 Chipscope介绍75
3.16.2 案例:以DSP接口程序为例介绍使用流程77
3.17 Verilog编码风格注意事项总结79
3.18 FPGA学习步骤80
3.19 FPGA工作方式81
第4章 FIFO控制器设计83
4.1 FIFO相关的概念83
4.2 设计指标84
4.3 同步FIFO设计84
4.3.1 双端口RAM介绍84
4.3.2 同步FIFO设计85
4.4 异步FIFO设计88
4.4.1 空/满标志的产生88
4.4.2 亚稳态问题88
4.4.3 格雷码89
4.4.4 异步FIFO设计及结果90
第5章 串口通信模块设计95
5.1 串口通信概述95
5.1.1 串口介绍95
5.1.2 串口帧格式96
5.2 设计指标97
5.3 串口通信模块方案97
5.3.1 原理框图97
5.3.2 FPGA方案98
5.4 串口通信各个模块设计99
5.4.1 MCU配置模块设计99
5.4.2 发送模块设计106
5.4.3 接收模块设计114
5.4.4 顶层模块123
5.5 串口通信模块调试注意事项126
第6章 数/模及模/数转换控制模块设计127
6.1 相关技术介绍127
6.1.1 数/模转换器(DAC)介绍127
6.1.2 模/数转换器(ADC)介绍129
6.1.3 数/模转换芯片AD5641介绍131
6.1.4 模/数转换芯片ADS7230介绍132
6.2 技术指标要求135
6.3 D/A模块设计136
6.4 AD模块设计141
6.5 遇到的问题、排查及定位148
第7章 HDLC总线控制器设计149
7.1 HDLC协议介绍149
7.2 CRC校验150
7.3 设计技术指标150
7.4 HDLC电路图150
7.5 HDLC总线控制器模块划分151
7.6 HDLC总线控制器各个模块设计152
7.6.1 CRC模块设计152
7.6.2 发送编码设计及结果152
7.6.3 接收解码设计及结果163
7.7 遇到的问题及解决办法174
第8章 SDRAM控制器设计175
8.1 SDRAM简介175
8.2 SDRAM芯片介绍176
8.3 SDRAM设计方案178
8.3.1 刷新周期的问题180
8.3.2 初始化模块183
8.3.3 定时刷新请求信号产生模块184
8.3.4 读/写请求产生模块185
8.3.5 读/写状态机187
第9章 NAND FLASH控制器设计195
9.1 NAND FLASH介绍195
9.1.1 NAND FLASH信号功能介绍195
9.1.2 芯片存储阵列结构和地址寻址196
9.1.3 NAND FLASH时序图介绍197
9.2 设计技术指标201
9.3 原理图介绍202
9.4 NAND FLASH控制器方案202
9.5 NAND FLASH各个模块设计203
9.5.1 MCU接口模块203
9.5.2 FLASH管理模块205
9.5.3 NAND FLASH坏块表查找模块设计209
9.5.4 NAND FLASH页查找模块设计210
9.5.5 NAND FLASH读模块设计211
9.5.6 NAND FLASH写模块设计212
9.5.7 NAND FLASH块擦除模块设计214
9.6 遇到的问题及解决办法217
9.6.1 对FLASH的读/写不能完成217
9.6.2 读/写不稳定217
第10章 1553B总线控制器设计218
10.1 1553B总线介绍218
10.1.1 总线拓扑结构219
10.1.2 编码方式220
10.1.3 1553B数据格式220
10.1.4 总线数据传输过程说明223
10.2 设计技术指标224
10.3 原理图介绍224
10.4 收发器芯片介绍224
10.5 1553B总线控制器方案225
10.6 1553B总线控制器各个模块设计226
10.6.1 曼彻斯特编码模块设计226
10.6.2 曼彻斯特解码模块设计230
10.6.3 协议处理模块设计231
10.6.4 RT接收模块设计238
10.6.5 RT发送模块设计242
10.6.6 RT-RT模块设计243
10.6.7 Broadcast模块设计243
10.7 测试结果245
10.8 遇到的问题及解决办法246
参考文献247
后记248

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

FPGA项目开发实战讲解
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon