购物车中还没有商品,赶紧选购吧!
条形条码:
SoC FPGA 嵌入式设计和开发教程
商 城 价
降价通知
市 场 价
累计评价0
累计销量0
手机购买
商品二维码
配送
服务
天添网自营 发货并提供售后服务。
数量
库存  个
温馨提示

·不支持退换货服务

  • 商品详情
手机购买
商品二维码
加入购物车
价格:
数量:
库存  个

商品详情

商品名称:SoC FPGA 嵌入式设计和开发教程
商品编号:Z29748118
店铺:天添网自营
上架时间:2020-09-11 16:23:45

编辑推荐



null


内容简介



本书以Intel Cyclone v SoC FPGA系列器件为例,介绍了SoC FPGA 器件的架构特点、常用电路设计以及软硬件开发流程和开发技巧。内容编排按照开发一个基于SoC FPGA 的应用系统所需掌握的基本的知识路线展开,从基本的Linux系统操作到分析一个基础的应用系统框架,然后基于该应用系统框架,详细讲解应用系统的构建、BSP文件的生成、启动引导文件的更新、Ubuntu虚拟机安装配置、Linux内核配置与编译。接着介绍如何在嵌入式Linux系统环境下,使用虚拟地址映射的方式编写相应的应用程序来实现该应用系统中各个功能IP的编程控制和调试。最后以两个实际的例子展示如何通过HPS和FPGA的片上通信桥实现软硬件联合开发的过程,包括FPGA侧逻辑开发,IP总线封装,Linux驱动程序的编写编译,Linux应用程序的编写与运行等。 本书既可作为工程类应用、电子信息类专业本科生以及相关专业专科生的嵌入式系统基础类课程的教材,也可作为SoC FPGA自学人员以及从事SoC FPGA开发的工程技术人员的培训教材和参考用书。


作者介绍



梅雪松,网名“小梅哥”,拥有多年电子设计经验,擅长知识的总结和传播,有《小梅哥和你一起深入学习FPGA》、《小梅哥FPGA学习笔记》两个系列网络博文;并推出了手把手式视频教程《FPGA设计思想与验证方法视频教程》,该教程在各大视频点击平台备受好评,网友称其为学习FPGA基础与提高教学视频的S选。同时,开设FPGA实地培训班,进行网络和实地FPGA培训,并多次进入高校进行SoC FPGA开发技术的培训。培训课程以其系统的知识讲解和生动的实例分析,得到了学员的一致肯定。


目 录



第1章 SoC FPGA软硬件系统开发概述 1.1 Intel SoC FPGA系列 1.1.1 Cyclone Ⅴ SoC FPGA 1.1.2 Arria Ⅴ SoC FPGA 1.1.3 Arria 10 SoC FPGA 1.1.4 Stratix 10 SoC FPGA 1.1.5 SoC FPGA应用领域与前景 1.2 Intel Cyclone Ⅴ SoC FPGA介绍 1.2.1 什么是SoC FPGA 1.2.2 SOPC 1.2.3 SoC FPGA与SOPC之间的差异 1.2.4 SoC FPGA架构的优势 1.3 Cyclone Ⅴ SoC FPGA器件硬件设计概述 1.3.1 FPGA I/O和时钟 1.3.2 SoC FPGA JTAG电路设计 1.4 AC501-SoC开发板介绍 1.4.1 布局及组件 1.4.2 轻触按键 1.4.3 用户LED 1.4.4 时钟输入 1.4.5 GPIO接口 1.4.6 DDR3SDRAM 1.4.7 通用显示扩展接口 1.4.8 USB转 UART 1.4.9 以太网收发器 1.5 本章小结 第2章 SoC FPGA开发板的使用 2.1 安装SoC FPGA开发工具 2.2 SoC FPGA的配置数据烧写与固化 2.2.1 SoC FPGA启动配置方式介绍 2.2.2 sof文件的烧写方式 2.2.3 Jic文件的生成和烧写 2.3 在SoC FPGA上运行Linux操作系统 2.3.1 SoC FPGA中的 HPS启动流程介绍 2.3.2 HPS启动方式介绍 2.3.3 制作启动镜像SD卡 2.3.4 准备硬件板卡 2.3.5 开机测试 2.4 开发板Linux系统常用操作 2.4.1 查看目录 2.4.2 设置和修改用户密码 2.4.3 查看和编辑文件 2.4.4 设置IP地址 2.4.5 挂载SD卡的FAT32分区 2.4.6 挂载 U盘 2.4.7 文件操作 2.4.8 目录操作 2.4.9 停止某个进程 2.4.10 重启和关机 2.5 本章小结 第3章 SoC FPGA开发概述 3.1 SoC FPGA开发流程 3.1.1 硬件开发 3.1.2 软件开发 3.2 AC501-SoC FPGA开发板的黄金参考设计说明 3.2.1 GHRD 3.2.2 打开和查看GHRD 3.2.3 组件参数配置详解 3.3 本章小结 第4章 手把手修改GHRD系统 4.1 修改GHRD工程 4.1.1 打开GHRD工程 4.1.2 添加UART IP 4.1.3 关于 HPS与FPGA数据交互 4.1.4 连接UART IP信号端口 4.1.5 分配组件基地址 4.1.6 生成Qsys系统的HDL文件 4.1.7 添加uart_1的端口到 Quartus工程中 4.1.8 分配FPGA引脚 4.1.9 生成配置数据二进制文件 4.2 制作Preloader Image 4.2.1 打开SoC EDS工具 4.2.2 生成bsp文件 4.2.3 编译Preloader和 U-Boot 4.2.4 更新Preloader和 U-Boot 4.2.5 Win 10下更新失败问题 4.2.6 使用新的 U-Boot启动SoC 4.3 制作设备树 4.3.1 设备树制作流程 4.3.2 准备所需文件 4.3.3 生成.dts文件 4.3.4 生成.dtb文件 4.4 运行修改后的工程 4.5 本章小结 第5章 使用DS-5编写和调试SoC的Linux应用程序 5.1 启动DS 5.2 创建C工程 5.3 编译工程 5.4 建立SSH远程连接 5.4.1 创建远程连接 5.4.2 复制文件到目标板 5.4.3 运行应用程序 5.5 远程调试 5.5.1 GDB设置 5.5.2 GDB连接和调试 5.6 使用 WinSCP实现多系统传输文件 5.6.1 为什么要使用 WinSCP 5.6.2 安装 WinSCP 5.6.3 建立远程主机连接 5.6.4 新建远程连接 5.6.5 调用PuTTY终端 5.7 本章小结 第6章 基于虚拟地址映射的Linux硬件编程 6.1 什么是虚拟地址映射 6.2 虚拟地址映射的实现 6.3 基于虚拟地址映射的PIO编程应用 6.3.1 PIO外设的虚拟地址映射 6.3.2 在DS-5中建立PIO应用工程 6.3.3 添加和包含 HPS库文件 6.3.4 添加FPGA侧外设硬件信息 6.3.5 PIO IP核介绍 6.3.6 PIO核寄存器映射 6.3.7 PIO IP核应用实例 6.3.8 合理的程序退出机制 6.3.9 关于按键消抖 6.4 基于虚拟地址映射的 UART编程应用 6.4.1 UART核介绍 6.4.2 UART寄存器映射 6.4.3 UART IP核应用实例 6.4.4 UART IP核板级调试 6.4.5 小 结 6.5 基于虚拟地址映射的I2C编程应用 6.5.1 OpenCores I2C IP简介 6.5.2 OpenCores I2C IP寄存器映射 6.5.3 I2C IP核应用实例 6.5.4 小 结 6.6 本章小结 第7章 基于Linux应用程序的HPS配置FPGA 7.1 制作 Quartus工程 7.2 生成rbf格式配置数据 7.3 编译Linux配置FPGA应用程序 7.4 在系统重配置FPGA实验 7.5 本章小结 第8章 编译嵌入式Linux系统内核 8.1 安装 VMware 8.2 安装 Ubuntu系统 8.2.1 使用现成的 Ubuntu系统镜像 8.2.2 安装全新的 Ubuntu系统 8.3 下载Linux系统源码 8.4 设置交叉编译环境 8.5 配置和编译内核 8.5.1 快速配置内核 8.5.2 保存内核配置文件 8.5.3 编译内核 8.5.4 使用内核启动开发板 8.6 本章小结 第9章 Linux设备树的原理与应用实例 9.1 什么是设备树 9.2 设备树基本格式 9.3 设备树加载设备驱动原理 9.4 编写I2C控制器设备节点 9.5 加载 OC_I2C驱动 9.6 使用RTC 9.7 使用EEPROM 9.8 编写SPI控制器设备节点 9.9 本章小结 第10章 基于Linux标准文件I/O 的设备读/写 10.1 什么是文件I/O 10.2 基于文件I/O操作的一般方法 10.2.1 文件描述符 10.2.2 打开设备(open) 10.2.3 向设备写入数据(write) 10.2.4 读取设备数据(read) 10.2.5 杂项操作(ioctl) 10.2.6 关闭设备(close) 10.2.7 其他操作 10.3 使用文件I/O实现I2C编程 10.4 本章小结 第11章 FPGA与HPS高速数据交互应用 11.1 FPGA与 HPS通信介绍 11.1.1 H2F_LW_AXI_Master桥 11.1.2 H2F_AXI_Master桥 11.1.3 F2H_AXI_Slave桥 11.2 AXI与 Avalon-MM 总线的互联 11.3 Avalon-MM 总线 11.4 Avalon-MM Slave接口 11.5 基本Avalon-MM Slave IP设计框架 11.5.1 端口定义 11.5.2 寄存器和线网定义 11.5.3 Avalon总线对寄存器的读/写 11.5.4 用户逻辑使用寄存器 11.6 PWM 控制器设计 11.6.1 PWM IP核端口设计 11.6.2 PWM IP核寄存器定义 11.6.3 读/写PWM 寄存器 11.6.4 Platform Designer中封装PWM IP 11.7 Avalon-MM Master接口 11.7.1 常见的通用Avalon-MM Master主机 11.7.2 DMA Controller 11.7.3 Scatter-Gather DMA Controller 11.7.4 Modular Scatter-Gather DMA 11.7.5 Avalon-MM Master模板 11.8 高速数据采集系统 11.8.1 安装Avalon-MM Master模板 11.8.2 完善 Qsys系统 11.8.3 修改 Quartus中的 Qsys例化 11.8.4 测试逻辑设计 11.9 本章小结 第12章 Linux驱动编写与编译 12.1 基本字符型设备驱动 12.1.1 字符型设备驱动框架 12.1.2 PWM 控制器驱动的完整源码 12.1.3 驱动编译 Makefile 12.1.4 Ubuntu下编译设备驱动 12.1.5 字符型设备驱动验证 12.2 基于DMA的字符型设备驱动 12.2.1 Avalon-MM Master Write驱动 12.2.2 Avalon-MM Master Write测试 12.3 本章小结 附录A 外设地址映射 附录B HPS GPIO映射 参考文献


媒体评论



null


对比栏

1

您还可以继续添加

2

您还可以继续添加

3

您还可以继续添加

4

您还可以继续添加