您好,欢迎光临有路网!
RISC-V处理器与片上系统设计----基于FPGA与云平台的实验教程
QQ咨询:
有路璐璐:

RISC-V处理器与片上系统设计----基于FPGA与云平台的实验教程

  • 作者:陈宏铭
  • 出版社:电子工业出版社
  • ISBN:9787121401411
  • 出版日期:2020年12月01日
  • 页数:0
  • 定价:¥98.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    本书将线下的FPGA开发板与线上的云平台结合,完成基于开源RISC-V处理器的SiFive Freedom E300片上系统,以及E21处理器配合云平台设计方法的相关实验教程。并用Chisel编程的方式与FPGA硬件,完成国产RT-Thread操作系统验证的移植。全书包含三大部分内容:首先讲述了基于实验所用Digilent Nexys板级硬件设计平台和Vivado开发工具。其次是介绍Verilog HDL、Chisel HCL和一种由国内自主开发的Coffee-HDL这三种硬件描述语言。*后是三种实验教程的设计与实现方法,包含开源的SiFive Freedom E300片上系统的实验;以英伟达开源的深度学习硬件架构NVDLA为例,介绍如何在Freedom E300平台上集成Verilog IP的方法及介绍SiFive E21处理器IP的使用方式与国内自主开发云端SoC开发平台的实验;移植国内自主开发RT-Thread实时多任务操作系统的原理与应用到SiFive Freedom E300片上系统的实验。
    目录
    第1章 RISC-V的历史和机遇 1 1.1 RISC-V发明团队与历史 1 1.1.1 商业公司的指令集架构载浮载沉 4 1.1.2 RISC-V指令集架构有什么不同 6 1.1.3 RISC-V发展史及其标志性事件 7 1.2 RISC-V基金会成长的历史 8 1.2.1 RISC-V基金会的成员介绍 9 1.2.2 RISC-V基金会推动20个**领域的技术 11 1.2.3 RISC-V基金会标准制定过程及工作群组机制 12 1.2.4 RISC-V国际协会的诞生 13 1.3 RISC-V的生态系统 13 1.3.1 RISC-V的开发板和生态系统 14 1.3.2 部分RISC-V社区生态的支持厂商 18 1.3.3 芯片设计业界的RISC-V产品进展 22 1.4 SiFive研发团队技术沿革 24 1.4.1 Rocket Chip SoC生成器 24 1.4.2 使用Chisel语言编写Rocket Chip生成器 26 1.4.3 Rocket标量处理器 27 1.4.4 SiFive**推动RISC-V生态发展 28 第2章 RISC-V指令集体系架构介绍 32 2.1 引言 32 2.2 RISC-V架构特性 32 2.2.1 简洁性 33 2.2.2 模块化 33 2.3 指令格式 35 2.3.1 指令长度编码 35 2.3.2 指令格式 36 2.4 寄存器列表 37 2.4.1 通用寄存器 37 2.4.2 控制和状态寄存器 38 2.4.3 程序计数器 39 2.5 地址空间与寻址模式 39 2.5.1 地址空间 39 2.5.2 小端格式 40 2.5.3 寻址模式 40 2.6 内存模型 40 2.7 特权模式 41 2.8 中断和异常 42 2.8.1 中断和异常概述 42 2.8.2 RISC-V机器模式下的中断架构 42 2.8.3 机器模式下中断和异常的处理过程 43 2.9 调试规范 44 2.10 RISC-V未来的扩展子集 45 2.10.1 B标准扩展:位操作 45 2.10.2 H特权态架构扩展:支持管理程序(Hypervisor) 45 2.10.3 J标准扩展:动态翻译语言 45 2.10.4 L标准扩展:十进制浮点 46 2.10.5 N标准扩展:用户态中断 46 2.10.6 P标准扩展:封装的单指令多数据(Packed-SIMD)指令 46 2.10.7 Q标准扩展:四精度浮点 46 2.10.8 V标准扩展:基本矢量扩展 46 2.11 RISC-V指令列表 46 2.11.1 I指令子集 47 2.11.2 M指令子集 52 2.11.3 A指令子集 53 2.11.4 F指令子集 55 2.11.5 D指令子集 56 2.11.6 C指令子集 57 第3章 现场可编程逻辑门阵列(FPGA)设计流程 60 3.1 Xilinx FPGA概述与设计流程 60 3.1.1 Xilinx FPGA的基本结构 61 3.1.2 Diligent Nexys A7 FPGA开发平台介绍 63 3.1.3 FPGA的设计流程 64 3.2 Xilinx Vivado集成环境安装与开发流程 67 3.2.1 Vivado集成环境的安装 68 3.2.2 Vivado集成环境的开发流程 76 第4章 SiFive Freedom E300 SoC的原理与实验 92 4.1 Verilog HDL语言简介 92 4.1.1 数据类型 93 4.1.2 数据表示 95 4.1.3 运算符及表达式 96 4.1.4 Verilog HDL常用语法 101 4.1.5 系统函数和任务 106 4.1.6 Verilog HDL语言规范 111 4.1.7 用于Verilog HDL设计的Xilinx 7系列 FPGA原语使用方法 118 4.1.8 小结 128 4.2 Chisel HCL语言简介 129 4.2.1 环境安装 130 4.2.2 Scala编程语言快训 132 4.2.3 Chisel硬件构造语言快训 138 4.2.4 小结 162 4.3 SiFive Freedom E300平台架构介绍 162 4.3.1 E31 RISC-V内核概述 164 4.3.2 中断架构 170 4.3.3 内核本地中断器(CLINT) 175 4.3.4 调试支持 176 4.3.5 SiFive TileLink总线介绍 181 4.4 SiFive Freedom E300在Nexys A7上的开发流程 204 4.4.1 SiFive Freedom SoC生成器简介 204 4.4.2 Verilog IP集成方法与开发流程 210 4.4.3 Freedom E300在Nexys A7上的开发流程 215 第5章 SiFive E21处理器和SoC设计云平台的原理与实验 222 5.1 SiFive E21处理器 222 5.1.1 缩略语和术语列表 223 5.1.2 E21 RISC-V内核概述 224 5.1.3 内存映射 229 5.1.4 中断架构 229 5.1.5 内核本地中断器 236 5.1.6 调试支持 240 5.1.7 使用E21内核评估套件 245 5.2 Coffee-HDL语言简介 258 5.2.1 开发Coffee-HDL语言的动机 258 5.2.2 文件和模块 259 5.2.3 语言要素 261 5.2.4 数据类型 262 5.2.5 操作符 263 5.2.6 位选择和部分选择 264 5.2.7 表达式 264 5.2.8 语句 265 5.2.9 函数 267 5.2.10 LRU算法模块设计示例 267 5.2.11 E21_SOC_FPGA集成模块设计示例 269 5.3 ezchip? SoC在线设计云平台 271 5.3.1 IC Studio主界面布局 272 5.3.2 IC Studio的使用 276 5.3.3 ezchip?可配置制模块 277 5.3.4 生成代码 279 5.3.5 基于SiFive E21 处理器的SoC设计实验 280 5.3.6 基于SiFive E21 处理器的FPGA验证实验 285 第6章 RT-Thread实时多任务操作系统的原理与应用 298 6.1 SiFive Freedom Studio集成开发调试环境安装与介绍 298 6.1.1 Freedom Studio简介与安装 298 6.1.2 启动Freedom Studio 300 6.1.3 创建sifive-welcome项目 301 6.1.4 配置sifive-welcome项目 303 6.1.5 编译sifive-welcome项目 305 6.1.6 运行sifive-welcome项目 306 6.1.7 调试程序 312 6.2 移植RT-Thread实时多任务操作系统的原理 313 6.2.1 嵌入式操作系统概述 313 6.2.2 RT-Thread实时多任务操作系统介绍 315 6.2.3 RT-Thread的底层结构与移植 317 6.3 RT-Tread的UART驱动结构分析、移植及应用 322 6.3.1 RT-Tread外设驱动 322 6.3.2 UART驱动结构分析 323 6.3.3 UART的移植与应用 330 6.4 完成RT-Thread实时操作系统的编译与运行 330 6.4.1 工具准备 331 6.4.2 修改路径与代码 331 6.4.3 文件编译 333 6.4.4 文件烧录 333 附录A 虚拟机与Ubuntu Linux操作系统的安装 335 A.1 虚拟机的安装 335 A.1.1 虚拟机简介 335 A.1.2 VMware安装(以VMware15版本为例) 336 A.2 Ubuntu Linux操作系统安装 337 A.2.1 Ubuntu简介 337 A.2.2 Ubuntu虚拟机的下载和安装 337 A.2.3 虚拟机信息 339 附录B 基于Nexys A7贪吃蛇游戏的设计与实现 341 B.1 硬件设备概述 341 B.2 设计要求 342 B.3 硬件设计 342 B.4 任务设计 344 B.4.1 程序结构 344 B.4.2 任务的数据结构设计 345 B.4.3 全局变量的使用 345 B.4.4 状态机的使用 345 B.5 程序设计详解 346 B.5.1 top模块的使用 346 B.5.2 display模块的使用 346 B.5.3 snake模块的使用 349 B.5.4 fsm模块的使用 351 B.5.5 turn模块的使用 352 B.5.6 apple模块的使用 353 B.5.7 score模块的使用 354 B.6 测试数据 355 参考文献

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外