[活动]

【知识充电站】+我的FPGA学习

[复制链接]
227|0
手机看帖
扫描二维码
随时随地手机跟帖
meiyaolei|  楼主 | 2023-11-13 19:22 | 显示全部楼层 |阅读模式
书籍连接:https://detail.tmall.com/item.htm?spm=a21n57.1.0.0.2694523cHdWS6S&id=613959367862&ns=1&abbucket=15
书籍封面:
1699874311679.jpg
价格:
1699874347459.jpg
目录:
第 1 章 概述
1.1 背景阐述
1.2 FPGA
1.3 RISC-V
1.4 小脚丫 FPGA 开发平台
1.5 C/C++,Make 与工具链
1.6 嵌入式操作系统
1.7 Arduino 集成开发环境
1.8 模块授权方式
1.9 PulseRainRTL库
1.10 资料来源
1.11 代码资源

第 2 章 FPGA
2.1 FPGA 背景概述
2.2 FPGA 与数字芯片的异同
2.2.1 FPGA 与数字芯片在设计流程上的异同
2.2.2 FPGA 与数字芯片在功耗上的区别
2.2.3 FPGA 与数字芯片在性能上的区别
2.2.4 逻辑设计规模的衡量单位
2.2.5 避免使用锁存器
2.3 FPGA 与 CPLD 的区别
2.4 FPGA 开发中硬件设计语言的选择
2.4.1 VHDL?与 System?Verilog?/?Verilog
2.4.2 HLS
2.4.3 System?C
2.4.4 Chisel/SpinalHDL
2.5 FPGA 的片上内存
2.6 用 FPGA 实现双向同步 SRAM 接口
2.7 FPGA 的 DSP?Block
2.8 时钟与复位
2.9 时钟域跨越
2.9.1 单个电平信号的时钟域跨越
2.9.2 单个脉冲信号的时钟域跨越
2.9.3 多比特总线的时钟域跨越
2.10 有限状态机的 System?Verilog 模板
2.11 高速 IO 与源同步总线(Source?Synchronous?Bus)
2.12 FPGA 在数字信号处理中的应用
2.12.1 数字滤波器
2.12.2 4倍频采样
2.12.3 复数乘法
2.12.4 补码,值饱和,负值,绝对值,四舍五入
2.12.5 除法
2.12.6 正弦函数与余弦函数
2.12.7 CORDIC 算法
2.13 其他技巧
2.13.1 寄存器重定时
2.13.2 异或树与多路复用器
2.13.3 虚拟输入输出
2.13.4 迁移路径
2.14 面积与性能的平衡
2.14.1 流水线与并行
2.14.2 小面积设计
2.14.3 AT定律
2.15 数字逻辑与处理器各自适用的领域

第 3 章 RISC-V 指令集
3.1 RISC-V 的历史
3.2 8051的 CISC 指令集与 RISC-V 的比较
3.2.1 8051?指令集简介
3.2.2 8051?指令集对处理器设计的负面影响
3.2.3 RISC-V 指令集对处理器设计的正面影响
3.3 RISC-V 与其他 RISC 指令集的比较
3.4 RISC-V 基础指令集(RV32I 与 RV32E)
3.4.1 RV32I?与 RV32E 基础指令集简介
3.4.2 RISC-V?地址空间
3.4.3 RV32I 通用寄存器与函数调用约定
3.4.4 RV32I 指令格式
3.4.5 RV32I 算术与逻辑指令
3.4.6 控制转移指令
3.4.7 内存载入与存储指令
3.4.8 RV32I 内存同步指令
3.4.9 控制与状态寄存器指令
3.4.10 环境调用与软件断点
3.4.11 基础指令集的面积优化方案
3.5 RISC-V 扩展指令集
3.5.1 乘除法扩展(M?Extension)
3.5.2 压缩指令集扩展
3.6 RISC-V 特权架构
3.6.1 特权层级
3.6.2 控制状态寄存器
3.6.3 定时器
3.6.4 中断与异常
3.6.5 程序的调试

第 4 章 设计基于 RISC-V 指令集的 Soft—CPU
4.1 2018?RISC-V?Soft?CPU?Contest 获奖作品:PulseRain?Reindeer
4.2 适合于 FPGA 的设计目标
4.3 PulseRain?Reindeer 的设计策略
4.4 PulseRain?Reindeer 的 RTL 设计
4.4.1 与 FPGA 平台相关部分
4.4.2 独立于 FPGA 平台部分
4.4.3 通用寄存器的设计
4.4.4 CSR 寄存器的实现
4.4.5 时钟定时器的实现
4.4.6 流水线的设计
4.5 处理器验证的方式
4.5.1 黑盒(Black?Box)测试与白盒(White?Box)测试
4.5.2 用 Verilator 做处理器内核的黑盒验证
4.5.3 用 Modelsim 做处理器的白盒验证

第 5 章 外围设备接口
5.1 UART
5.2 I 2 C 和 SMBus
5.3 SPI
5.4 PWM
5.5 microSD 存储卡
5.6 PS/2 接口
5.7 旋转编码器
5.8 7段数码管显示器
5.9 USB
5.10 以太网

第 6 章 嵌入式软件开发基础
6.1 目标文件格式
6.2 Link?Script(编译用链接脚本)
6.3 工具链
6.3.1 readelf
6.3.2 objdump
6.3.3 objcopy
6.4 嵌入式系统中高级编程语言的选择
6.5 C 语言在嵌入式系统中的应用
6.5.1 C 语言的模块封装
6.5.2 C 语言的内存对齐访问
6.5.3 C 语言的静态编译检查
6.5.4 volatile 与 const
6.6 C++ 语言在嵌入式系统中的应用
6.6.1 C++ 语言的口水仗
6.6.2 C++ 语言对 C 的改进
6.6.3 C++ 语言引入的新概念和新方法
6.7 MAKE
6.7.1 支持增量编译的 Makefile(Makefile?for?Incremental?Build)
6.7.2 支持内核配置语言的 Makefile

第 7 章 嵌入式操作系统的移植
7.1 嵌入式操作系统的分类
7.1.1 裸金属系统
7.1.2 实时操作系统
7.1.3 通用操作系统
7.2 Zephyr 操作系统的 RISC-V 移植
7.2.1 Zephyr 操作系统简介
7.2.2 串行口的支持
7.2.3 定时器的支持
7.2.4 中断的设置
7.2.5 修改编译链接选项
7.2.6 样本应用程序

第 8 章 Arduino开发系统
8.1 Arduino 的历史
8.2 Arduino 的技术贡献
8.3 Arduino 开发板
8.4 Arduino IDE 集成开发环境和 Arduino Language
8.4.1 Arduino IDE 集成开发环境的工作原理
8.4.2 Arduino Language
8.5 Arduino IDE 集成开发环境下第三方开发包的使用和制作
8.5.1 Arduino IDE 第三方开发包的使用
8.5.2 Arduino IDE 第三方开发包的制作
8.6 Arduino IDE 集成开发环境下第三方支持库的使用和制作
8.6.1 Arduino IDE 第三方支持库的使用
8.6.2 Arduino IDE 第三方支持库的制作

第 9 章 综合实验平台:小脚丫 STEP FPGA开发板
9.1 STEP?CYC10?开发板简介
9.2 RISC-V?for?Step?FPGA
9.3 动态内存的访问与时序约束
9.3.1 动态内存的仿真
9.3.2 动态内存的时钟设置
9.3.3 动态内存的时序约束
9.3.4 动态内存的读写测试
9.4 处理器仿真
9.4.1 用 Verilator 做仿真
9.4.2 用 Modelsim 做仿真
9.5 外围设备与中断
9.5.1 外围设备(RTL 模块)与物理设备
9.5.2 中断映射
9.5.3 中断处理程序
9.6 外围设备寄存器地址列表
9.7 串行口
9.8 GPIO
9.9 5 向按键
9.10 7 段管显示器
9.11 三轴加速度传感器 (ADXL345)
9.12 开发板示范 Sketch

第 10 章 知识产权保护
10.1 知识产权保护的方式
10.2 计算机指令集的知识产权保护
10.3 逆向工程
10.4 协议授权
10.4.1 GPL
10.4.2 LGPL
10.4.3 Apache
10.4.4 知识共享
10.4.5 双授权协议


我的充电计划,学习这本书的建议:
  • 先了解FPGA和RISC-V的基本概念和特点。通过学习这本书中的知识,FPGA是一种可编程逻辑器件,能够根据设计者的需求进行配置,实现各种数字逻辑功能。RISC-V是一种开源的指令集架构(ISA),具有精简、高效、灵活和易于定制的特点。
  • 熟悉书中Arduino开发系统的使用方法。Arduino是一款基于开源硬件平台的开发板,具有易于使用、灵活多样的特点,适用于各种嵌入式应用开发。通过阅读本书,可以学习到如何使用Arduino进行系统开发和编程。
  • 掌握FARM软硬件开发模式。FARM是一种基于FPGA的软硬件协同设计方法,将硬件描述语言(HDL)和高级综合工具(HLS)相结合,实现硬件和软件的协同优化。通过学习本书,可以了解如何使用FARM进行嵌入式系统的设计和实现。
  • 学习嵌入式软件开发基础。嵌入式系统开发需要掌握一定的软件编程技能,包括C/C++语言、汇编语言、操作系统基础等。通过学习本书,可以了解到嵌入式软件开发的基础知识和常用工具。
  • 参考本书的例子进行实践。本书提供了多个实例,包括FPGA与RISC-V的嵌入式系统设计、Arduino开发系统的使用、FARM软硬件开发模式的实践等。通过参考这些例子进行实践,可以加深对本书内容的理解和掌握。


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:工程师
简介:超越自我,为设计激发灵感和想象。

79

主题

445

帖子

2

粉丝