Introduction to RISC-V Interrupts

所在平台: Udemy

课程主页: https://www.udemy.com/course/risc-v-interrupts-platform-level-interrupt-controller/

课程评论:没有评论

第一个写评论        关注课程

课程简介

**课程名称:RISC-V 中断入门** **课程概述:** 本课程深入探讨 RISC-V 架构中的中断机制。中断在 RISC-V 中由标准和规范管理,每个 RISC-V 核心的中断生成和处理过程都必须符合规范。课程将带领学习者从中断、异常和陷阱的基础知识出发,逐步深入到 Platform Level Interrupt Controller (PLIC) 规范,讲解其参数、配置方法,以及中断的声明和处理流程。最终,学员将通过编写 RISC-V 汇编代码,使用 GNU 工具链进行汇编、链接、生成 ELF 文件,并在 HiFive1-Rev B 开发板上实现点亮蓝色 LED 的测试应用。 **主要内容包括:** * **RISC-V 特权级别:** 介绍 RISC-V 的不同特权模式。 * **RISC-V 中的陷阱 (Traps):** 讲解中断、异常等陷阱机制。 * **Platform Level Interrupt Controller (PLIC) 规范:** 深入理解 PLIC 的工作原理和标准。 * **PLIC 在 FE310 SoC 上的实现对比:** 将 PLIC 规范与 FE310 SoC 的实际实现进行对比。 * **控制和状态寄存器 (CSRs):** 学习 RISC-V 架构中的 CSRs 及其作用。 * **RISC-V 中读写 CSRs 的指令:** 介绍用于操作 CSRs 的汇编指令。 * **FE310 SoC 中 GPIO 外设的配置:** 学习如何配置 GPIO 以便生成中断。 * **配置 PLIC 以允许 GPIO 中断:** 讲解如何将 GPIO 中断连接到 PLIC。 * **在核心上配置 MIE & MSTATUS CSRs:** 学习如何启用机器模式中断和机器模式外部中断。 * **GNU 工具链的安装:** 指导安装编译器、OpenOCD 等开发工具。 * **测试应用程序:** 编写汇编代码,在 HiFive1-Rev B 开发板上实现蓝色 LED 的闪烁。 **课程重点:** 课程的重点在于 RISC-V 汇编代码的编写、GNU 工具链的集成使用(汇编、链接、生成 ELF),以及将程序烧录到 HiFive1-Rev B 开发板上实现 LED 闪烁的功能。 **更新说明:** 2024 年 9 月 5 日更新:修正了 Context1 阈值、声明和使能寄存器的内存映射地址,并在第 3 部分第 7 讲中提供 PDF 文件。同时提供 PLIC 规范 PDF 作为参考。

课程评论(0条)

课程详情

Interrupts in RISC-V are governed by standards and specification. Each RISC-V core's interrupt generation and handling process should be compliant to the specification. This course discusses the following:a. Privilege Levels in RISC-Vb. Traps in RISC-Vc. Platform Level Interrupt Controller (PLIC) Specificationd. Compares PLIC Implementation on FE310 SoC to Spece. Control and Status Registers (CSRs) f. Instructions to read and write CSRs in RISC-Vg. Configuring GPIO peripheral in FE310 SoCh. Configuring PLIC to allow GPIO interrupti. Configure MIE & MSTATUS CSRs on the core to enable machine mode interrupts and machine mode external interruptsj. Installation of GNU tools (compilers, OpenOCD)k. Test application in assembly to blink blue LED on Hifive1-Rev B board.Students who enrol would be taken through a journey starting from basics of what are interrupts, exceptions and traps in RISC-V, followed by PLIC standard discussing the parameters, how to configure those parameters on PLIC to generate interrupt and claiming and completing the interrupt handling process and finally on writing an test application to blink LED. The major exercise and focus on this course is on writing RISC-V assembly code, assembling & linking with GNU tools, generating ELF, and programming it on Hifive1-RevB board to blink blue LED on board. Update on Sept 5, 2024: Corrected the memory map address for Context1 Threshold, Claim and enable registers and attached as pdf for Section 3, Lecture 7. The PLIC specification pdf too is attached for reference.

课程标签

0人关注该课程

主题相关的课程