猜你喜欢
FPGA开发及应用——基于紫光同创Logos系列器件及Verilog HDL(微课视频版)(信息

FPGA开发及应用——基于紫光同创Logos系列器件及Verilog HDL(微课视频版)(信息

书籍作者:龙海军 ISBN:9787302610373
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:7686
创建日期:2023-05-07 发布日期:2023-05-07
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

《FPGA开发及应用——基于紫光同创Logos系列器件及Verilog HDL(微课视频版)》以紫光同创公司的FPGA为例,全面系统地讲述了基于可编程逻辑器件的设计方法,结合实践讲解了大量的典型实例,便于读者理解和演练。书中从国内企业生产的EDA工具的使用到FPGA应用设计,再到Cortex-M1软核处理器的设计与应用,几乎涉及FPGA开发设计的所有知识,具体内容包括紫光同创FPGA芯片介绍、Pango Design Suite开发工具概述、Verilog语言、基本逻辑电路设计、ModelSim仿真、IP介绍、大量实例讲解、Cortex-M1设计开发等。

《FPGA开发及应用——基于紫光同创Logos系列器件及Verilog HDL(微课视频版)》可作为FPGA开发初学者及工程技术人员的参考用书,也可作为电子信息工程、计算机科学与技术等相关专业本科生、研究生的教材。


前言


前言



在中国FPGA市场中,早已形成Xilinx(现已被AMD公司收购)和Altera(现已被Intel公司收购)主导的局面,两者市场占比高达52%和28%,从技术到知识产权等方面,国内企业生产的FPGA厂商都面临着不小的挑战。正如一位专业人士表示:“国内企业生产的FPGA目前仍处于起步阶段,企业在判断FPGA器件性能时,重点不在于看FPGA器件有多少LUT(查找表),这种硬件堆砌的模板设计难度并不大,配套的EDA软件和相应的IP才是选择FPGA性能的重要参数。如LUT可以达到多少利用率,时钟网络能否很好地适配,器件对应的IP是否稳定,兼容性如何,等等,这些方面才是国内企业的FPGA需要提升的重点。”

紫光同创公司的产品拥有独立自主、完整可控的产业链。在通信、工业和消费等领域的FPGA、CPLD芯片实现了量产发货,并且与多家行业内的知名企业建立了合作关系,包括推出ARM CortexM1软核解决方案、专业的低成本评估和学习开发板卡套件、针对各垂直领域的IP解决方案等。同时,紫光同创也在积极推动与新兴市场,比如人工智能和数据中心加速器等领域的专业方案商的战略合作,推进大学计划培育国内企业的FPGA开发生态,扩展与高校的产学研合作模式,与客户和合作伙伴携手推动基于国内企业FPGA方案的创新,并逐步得到国内FPGA应用生态的认可。

在挑战中寻求机遇,在封锁中突破重围。国内企业的FPGA想要立足,必须搭建完整的生态系统,其中EDA软件、丰富的IP库、材料、设备等缺一不可。只有建设完善的生态系统,才能灵活应对不同的应用场景和市场环境。

本书以紫光同创公司的FPGA为例,全面系统地讲述了基于可编程逻辑器件的设计方法。本书讲解了大量的典型实例,便于读者理解和演练。

【本书特色】

(1) 提供大量源代码,学习效果好。本书分享了大量的程序源代码并附有详细的注解,有助于读者的理解,提高学习效率。这些源代码可以在配套资源中下载。



视频讲解



(2) 内容全面,由浅入深。本书从FPGA技术的基础开始讲解,如语法、仿真、IP介绍等,然后逐步深入到大量的设计实例,最后深入到CortexM1软核处理器的高级开发技术及应用。内容由易到难,讲解由浅入深,循序渐进。

(3) 实例丰富,源于工程。本书从应用的角度出发,通过大量的工程实例,帮助读者更好地理解各种概念和开发技术,体验实际编程,迅速提高开发水平。


【本书内容及结构】

第1~6章为FPGA基础知识,主要内容包括Pango Design Suite 软件的基础知识和使用方法、Verilog语言的基础知识、使用Verilog语言描述基本逻辑电路的方法、简单实验、ModelSim仿真以及国内企业自主IP介绍。

第7~9章为FPGA实例开发,由基础实验、进阶实验及综合实验组成,主要内容包括串口、HDMI显示、DDR读写、ADC采集、摄像头采集显示、数码相框、千兆以太网通信、光纤通信、简易逻辑分析仪设计、摄像头采集传输显示系统设计,设计实例由浅入深,便于读者学习。

第10章为FPGA软核应用开发,主要内容包括CortexM1软核处理器的基础知识、基于Pango CortexM1软核的程序设计、基于Keil5的CortexM1应用工程设计以及串口、中断、I2C、SPI及数据采集等设计实例。

【配套资源】

 程序代码、原理图、开发软件及驱动、用户手册等,扫描下方二维码或者到清华大学出版社官方网站本书页面下载。



资源下载



 微课视频(600分钟,40集),扫描正文中各章节相应位置的二维码观看。

本书能够顺利出版要感谢FPGA厂家紫光同创公司给予的关心和大力支持;感谢徐志武、刘东辉等同志在此书上付出的努力;感谢编辑部同志默默无闻的工作,他们均提出了宝贵的意见和建议,在此表示衷心的感谢!

由于编者水平有限,时间比较仓促,书中难免有错误和疏漏之处,恳请读者指正。

编者

2022年6月于上海






目录




目录

第1章FPGA芯片及板卡介绍


1.1FPGA技术发展及基本架构


1.1.1FPGA的发展


1.1.2FPGA内部结构


1.2国内FPGA技术发展情况


1.3紫光同创FPGA芯片介绍


1.3.1Logos系列FPGA概述


1.3.2Logos系列FPGA产品特性


1.3.3Logos系列FPGA资源规模与封装信息


1.3.4Logos系列FPGA模块介绍


1.3.5Logos系列FPGA参考资料


1.4ALINX FPGA板卡介绍


第2章Pango Design Suite开发环境


2.1安装Pango Design Suite软件


2.1.1安装步骤


2.1.2License关联


2.2PDS工程


2.2.1创建工程


2.2.2Verilog代码编写


2.2.3添加UCE约束


2.2.4生成位流文件


2.3菜单栏介绍


2.4User Constraint Editor简介


2.4.1UCE启动


2.4.2UCE主界面功能


2.4.3Timing Constraints界面


2.4.4Attribute表格界面


2.4.5Device界面


2.5ADS综合工具简介


2.5.1ADS Flow概述


2.5.2ADS综合的基本操作


2.5.3ADS综合网表分析


2.6PDS软件中的IP调用


2.6.1启动IPC


2.6.2主控窗口


2.6.3参数配置窗口


2.7在线分析仪的使用


2.7.1下载电缆


2.7.2Debugger连接


2.7.3Fabric Debugger说明


2.8PDS软件技巧与经验总结


2.8.1Synthesize 参数设置


2.8.2PNR参数设置


2.8.3常见报错分析与处理方法


第3章Verilog HDL 语法


3.1Verilog简介


3.2数据类型


3.2.1常量


3.2.2变量


3.3运算符


3.3.1算术运算符


3.3.2赋值运算符


3.3.3关系运算符


3.3.4逻辑运算符


3.3.5条件运算符


3.3.6位运算符


3.3.7移位运算符


3.3.8拼接运算符


3.3.9优先级


3.4组合逻辑


3.4.1与门


3.4.2或门


3.4.3非门


3.4.4异或


3.4.5比较器


3.4.6半加器


3.4.7全加器


3.4.8乘法器


3.4.9数据选择器


3.4.1038译码器


3.4.11三态门


3.5时序逻辑


3.5.1D触发器


3.5.2两级D触发器


3.5.3带异步复位D触发器


3.5.4带异步复位同步清零D触发器


3.5.5移位寄存器


3.5.6单口RAM


3.5.7伪双口RAM


3.5.8真双口RAM


3.5.9单口ROM


3.5.10有限状态机


3.6总结


第4章Verilog HDL数字电路设计


4.1基于格雷码编码器的设计


4.1.1简介


4.1.2实验原理


4.1.3程序代码


4.1.4验证结果


4.2异步清零加法器设计


4.2.1简介


4.2.2实验原理


4.2.3程序代码


4.2.4验证结果


4.3七段数码管显示电路的设计


4.3.1简介


4.3.2实验原理


4.3.3程序代码


4.3.4验证结果


4.4四位并行乘法器的设计


4.4.1简介


4.4.2实验原理


4.4.3程序代码


4.4.4验证结果


4.5基本触发器的设计


4.5.1简介


4.5.2实验原理


4.5.3程序代码


4.5.4验证结果


4.6四位全加器设计


4.6.1简介


4.6.2实验原理


4.6.3程序代码


4.6.4验证结果


4.7表决器的设计


4.7.1简介


4.7.2实验原理


4.7.3程序代码


4.7.4验证结果


4.8抢答器的设计


4.8.1简介


4.8.2实验原理


4.8.3程序代码


4.8.4验证结果


4.9序列检测器的设计


4.9.1简介


4.9.2实验原理


4.9.3程序代码


4.9.4验证结果


4.10数字频率计的设计


4.10.1简介


4.10.2实验原理


4.10.3程序代码


4.10.4验证结果


4.11数字钟的设计


4.11.1简介


4.11.2实验原理


4.11.3程序代码


4.11.4验证结果


第5章Testbench及其仿真


5.1Testbench设计


5.1.1Testbench简介


5.1.2Testbench的搭建


5.2ModelSim 介绍及仿真


5.2.1ModelSim简介


5.2.2ModelSim仿真


5.3PDS与ModelSim联合仿真


第6章Logos的常用IP


6.1RAM说明


6.1.1RAM简介


6.1.2RAM IP介绍


6.1.3RAM I/O框图


6.1.4RAM I/O引脚说明


6.1.5RAM时序模型


6.1.6RAM IP配置


6.1.7RAM IP例化


6.2ROM说明


6.2.1ROM简介


6.2.2ROM IP介绍


6.2.3ROM I/O框图


6.2.4ROM I/O引脚说明


6.2.5ROM 时序模型


6.2.6ROM IP配置


6.2.7ROM IP例化


6.3FIFO说明


6.3.1FIFO简介


6.3.2FIFO IP介绍


6.3.3FIFO I/O框图


6.3.4FIFO I/O引脚说明


6.3.5FIFO 时序模型


6.3.6FIFO IP配置


6.3.7FIFO IP例化


6.4PLL锁相环


6.4.1PLL简介


6.4.2PLL IP介绍


6.4.3PLL I/O框图


6.4.4PLL I/O引脚说明


6.4.5PLL IP配置


6.4.6PLL IP例化


6.5IP的导入与更新


6.6DDR IP 介绍


6.6.1DDR IP简介


6.6.2DDR IP系统框图


6.6.3DDR I/O框图


6.6.4DDR I/O引脚说明


6.6.5DDR IP配置


6.6.6DDR IP例化


6.7HSST IP介绍


6.7.1HSST IP简介


6.7.2HSST I/O接口


第7章基础实验


7.1LED流水灯


7.1.1实验原理


7.1.2程序解读


7.1.3Flash程序固化


7.2按键消抖程序设计


7.2.1简介


7.2.2实验原理


7.2.3程序解读


7.3串口程序设计


7.3.1简介


7.3.2实验原理


7.3.3程序解读


7.4HDMI显示程序设计


7.4.1简介


7.4.2实验原理


7.4.3程序解读


7.5DDR3存储程序设计


7.5.1简介


7.5.2实验原理


7.5.3程序解读


第8章进阶实验


8.1摄像头采集显示设计


8.1.1简介


8.1.2实验原理


8.1.3程序解读


8.2数码相框显示设计


8.2.1简介


8.2.2实验原理


8.2.3程序解读


8.3模数采集设计


8.3.1简介


8.3.2实验原理


8.3.3程序解读


8.4千兆以太网通信设计


8.4.1简介


8.4.2实验原理


8.4.3程序解读


8.5HSST通信设计


8.5.1简介


8.5.2实验原理


8.5.3程序解读


第9章综合实验


9.1基于FPGA的逻辑分析仪设计


9.1.1简介


9.1.2实验原理


9.1.3程序解读


9.2摄像头采集传输显示系统设计


9.2.1简介


9.2.2实验原理


9.2.3程序解读


第10章基于Pango CortexM1软核的程序开发


10.1CortexM1软核简介


10.2Pango CortexM1软核设计


10.2.1简介


10.2.2功能描述


10.2.3接口列表


10.2.4接口时序


10.2.5参考设计


10.2.6参考设计文件目录


10.2.7参考设计仿真


10.2.8参考设计上板验证


10.3CortexM1应用工程设计


10.3.1简介


10.3.2工程模板


10.4Hello World


10.4.1简介


10.4.2实验原理


10.5LED流水灯实验


10.5.1简介


10.5.2实验原理


10.6用户中断实验


10.6.1简介


10.6.2实验原理


10.7SPI接口读写实验


10.7.1简介


10.7.2实验原理


10.8串口收发实验


10.8.1简介


10.8.2实验原理


10.9I2C实验


10.9.1简介


10.9.2实验原理


10.10综合实验


10.10.1简介


10.10.2实验原理


参考文献





微课视频清单





视频名称时长/min书中位置

1书籍内容简介和开发板硬件介绍5前言

2PDS和Modelsim安装72.1节节首

3LED流水灯工程设计242.2节节首

4Verilog基础语法1173.1节节首

5Verilog基础语法2153.3节节首

6Verilog基础语法3253.4节节首

7格雷码编码器84.1节节首

8异步清零加法器94.2节节首

9数码管显示104.3节节首

10乘法器94.4节节首

11基本触发器74.5节节首

12四位全加器104.6节节首

13表决器74.7节节首

14抢答器94.8节节首

15序列检测器94.9节节首

16数字频率计174.10节节首

17数字时钟144.11节节首

18RAM介绍196.1节节首

19ROM介绍136.2节节首

20FIFO介绍176.3节节首

21PLL介绍106.4节节首

22添加IP116.5节节首

23按键消抖137.2节节首

24串口通信167.3节节首

25HDMI显示287.4节节首

26DDR读写测试227.5节节首

27摄像头采集显示188.1节节首

28数码相框显示358.2节节首

29模数采集显示188.3节节首

30千兆以太网通信468.4节节首

31逻辑分析仪设计239.1节节首

32软核介绍2310.2节节首

33应用工程创建2110.3节节首





续表



视频名称时长/min书中位置

34Hello World810.4节节首

35LED流水灯810.5节节首

36用户中断610.6节节首

37SPI读写实验810.7节节首

38串口收发实验810.8节节首

39I2C实验1010.9节节首

40综合实验1710.10节节首


产品特色