目录
第0章FPGA功能与开发简介
0.1电子白板的设计
0.2基于FGPA的人脸识别
第1章FPGA简介
1.1概述
1.1.1PLD器件与开发工具
1.2FPGA结构特点
1.2.1FPGA工作原理
1.2.2FPGA芯片结构
1.3FPGA时序设计与分析
1.4Xilinx公司器件简介
1.4.1Xilinx FPGA芯片介绍
1.4.2Xilinx PROM芯片介绍
第2章Verilog语法介绍
2.1Verilog HDL简介
2.1.1Verilog HDL的发展历史
2.1.2Verilog HDL的主要能力
2.2Verilog HDL基本结构
2.2.1简单的Verilog HDL例子
2.2.2Verilog HDL模块的结构
2.2.3逻辑功能定义
2.3数据类型及常量、变量
2.3.1常量
2.3.2变量
2.3.3标识符
2.4运算符及表达式
2.5语句
2.5.1赋值语句
2.5.2条件语句
2.5.3循环语句
2.5.4结构说明语句
2.5.5编译预处理语句
2.5.6语句的顺序执行与并行执行
2.6不同抽象级别的Verilog HDL模型
2.6.1Vorilog HDL门级描述
2.6.2Vorilog HDL的行为级描述
第3章开发板资源
3.1Atlys FPGA开发板简介
3.2Atlys硬件详细细节
3.2.1主芯片Spartan6 XC6SLX45 CSG324
3.2.2FPGA配置
3.2.3电源
3.2.4FLASH
3.2.5DDR2 SDRAM
3.2.6千兆以太网口
3.2.7HDMI接口
3.2.8AC97 编码器
3.2.9板载100MHz时钟
3.2.10USB PROG
3.2.11USBUART
3.2.12USB HID
3.2.13GPIO外设
3.2.14扩展连接器PMOD
3.2.15扩展连接器VHDC
3.2.16软件工具
第4章FPGA开发工具
4.1ISELED灯点亮实验
4.1.1实验介绍
4.1.2实验步骤
4.1.3设计过程
4.2Vivado逻辑门设计实验
4.2.1流程建立
4.2.2HDL代码设计的步骤
4.2.3电路描述方式: 结构描述语句
4.2.4设计过程
第5章FPGA数字系统综合专题
5.1专题一: 频率计设计与实现
5.1.1明确设计目标
5.1.2顶层模块设计
5.1.3秒信号发生器的设计与实现
5.1.4中断信号产生模块的设计
5.1.5多路器和PicoBlaze的输入端口
5.1.6串口和PicoBlaze的输出端口
5.1.76PicoBlaze的软件设计
5.1.8验证
5.2专题二: Atlys开发板的AC97固件设计
5.2.1设计任务
5.2.2滤波器简述
5.2.3FPGA架构
5.2.4FPGA设计流程
5.3专题三: Linux系统搭建与移植
5.3.1Zedboard简述
5.3.2生成Linux启动引导文件boot.bin
5.3.3编译Linux内核
5.3.4制作ramdisk根文件系统
5.3.5测试系统,控制GPIO
5.3.6为Linaro Ubuntu配置硬件
5.3.7编译Linux内核
5.3.8生成设备树devicetree
5.3.9给SD卡分区
5.3.10拷贝Linaro Ubuntu文件系统
5.3.11连接计算机屏幕,启动测试Ubuntu
参考文献