图书目录

目录

Contents

第1章FPGA、USB与LVDS概述

1.1FPGA发展概述

1.2FPGA的优势

1.3FPGA应用领域

1.4FPGA开发流程

1.5USB接口概述

1.5.1USB发展史

1.5.2USB 3.0概述

1.6LVDS接口概述

第2章实验平台板级电路详解

2.1板级电路整体架构

2.2电源电路

2.3FPGA时钟与复位电路

2.3.1FPGA时钟晶振电路

2.3.2FPGA复位电路

2.4FPGA配置电路

2.5FPGA供电电路

2.6DDR2芯片电路

2.7UART芯片电路

2.8LVDS接口与液晶屏背光接口电路

2.8.1差分走线

2.8.2阻抗匹配

2.8.3LVDS和单端信号间的串扰

2.8.4电磁干扰

2.8.5LVDS线缆选型

2.8.6LVDS连接器定义

2.9USB 3.0控制器FX3电路

2.10扩展接口电路

2.11FPGA引脚定义

第3章软件安装与配置

3.1软件下载和许可证申请

3.2Quartus Ⅱ与ModelSimAltera的安装

3.3文本编辑器Notepad++安装

3.4QuartusⅡ中使用Notepad++的关联设置

3.5USBBlaster的驱动安装

3.5.1Windows XP系统的USBBlaster安装

3.5.2在Windows 7系统安装USBBlaster

3.5.3在Windows 8系统安装USBBlaster

3.6串口芯片驱动安装

3.6.1驱动安装

3.6.2设备识别

3.7USB 3.0控制器FX3的SDK安装

3.8USB 3.0控制器FX3的驱动安装

Altera FPGA伴你玩转USB 3.0与LVDS

第4章第一个例程与FPGA下载配置概述

4.1LED闪烁与PLL配置实例

4.1.1功能概述

4.1.2新建Quartus Ⅱ工程

4.1.3IP核配置——PLL

4.1.4引脚分配

4.1.5闲置引脚设置

4.1.6Verilog代码解析

4.2Altera FPGA配置方式概述

4.2.1AS配置方式

4.2.2PS配置方式

4.2.3JTAG配置方式

4.3基于JTAG的sof文件FPGA在线烧录

4.4基于JTAG的jic文件SPI Flash固化

第5章DDR2、UART以及Nios Ⅱ实例

5.1DDR2控制器集成与读/写测试

5.1.1功能概述

5.1.2IP核配置——片内RAM

5.1.3IP核配置——DDR2控制器

5.1.4DDR2引脚电平设置

5.1.5Verilog代码解析

5.1.6板级调试

5.2UART2USB的Loopback收发实例

5.2.1功能概述

5.2.2Verilog代码解析

5.2.3板级调试

5.3基于最小Nios Ⅱ系统的System ID打印实例

5.3.1Qsys系统概述

5.3.2Qsys工具基本使用

5.3.3Qsys组件添加与互连

5.3.4Qsys系统生成

5.3.5Quartus Ⅱ工程设计实现

5.3.6软件开发工具EDS

5.3.7System ID外设寄存器

5.3.8板级调试

第6章USB 3.0控制器FX3实例

6.1基于FX3内部DMA的USB传输Loopback实例

6.1.1功能概述

6.1.2固件编译与固化文件生成

6.1.3硬件连接与设备识别

6.1.4FX3的USB Boot加载

6.1.5板级调试

6.2FX3的SPI Flash代码固化

6.2.1启动设置

6.2.2SPI Flash固化

6.3基于FX3内部DMA的USB数据吞吐量测试

6.3.1硬件连接

6.3.2FX3的USB Boot加载

6.3.3FX3的基本Streamer功能演示

6.4基于FX3的UVC传输协议实例

6.4.1硬件连接

6.4.2FX3的USB Boot加载

6.4.3UVC设备识别

6.5FX3固件 SlaveFIFO配置修改说明

6.5.1功能概述

6.5.2GPIF Ⅱ Designer开启与工程加载

6.5.3GPIF Ⅱ接口配置与工程编译

6.5.4IDE下固件工程加载

6.5.5IDE下固件工程编译

6.6基于FPGAFX3 SlaveFIFO接口的Loopback实例

6.6.1功能概述

6.6.2固件下载

6.6.3FPGA代码解析

6.6.4SignalTap Ⅱ在线逻辑分析仪查看接口时序

6.7基于FPGAFX3 SlaveFIFO接口的StreamOUT实例

6.7.1功能概述

6.7.2固件下载

6.7.3FPGA代码解析

6.7.4SignalTap Ⅱ在线逻辑分析仪查看接口时序

6.7.5在Streamer中查看数据吞吐量

6.8基于FPGAFX3 SlaveFIFO接口的StreamIN实例

6.8.1功能概述

6.8.2固件下载

6.8.3FPGA代码解析

6.8.4SignalTap Ⅱ在线逻辑分析仪查看接口时序

6.8.5Streamer工具测试数据吞吐量

第7章LVDS收发传输实例

7.1LVDS液晶屏驱动实例

7.1.1功能概述

7.1.2IP核ALTLVDS_TX创建与配置

7.1.3IP核ALTLVDS_TX功能与接口说明

7.1.4代码解析

7.1.5板级调试

7.2基于串口命令帧的LVDS液晶屏测试界面设计

7.2.1设计概述

7.2.2串口控制协议

7.2.3代码解析

7.2.4板级调试

7.3LVDS数据收发实例

7.3.1功能概述

7.3.2IP核ALTLVDS_TX创建与配置

7.3.3IP核ALTLVDS_RX创建与配置

7.3.4位对齐处理

7.3.5代码解析

7.3.6装配说明

7.3.7板级调试

7.4带CRC校验的LVDS数据收发实例

7.4.1功能概述

7.4.2CRC校验基本原理

7.4.3CRC8校验代码生成

7.4.4代码解析

7.4.5装配说明

7.4.6板级调试

参考文献