![]() |
NEORV32 - Software Framework Documentation
|
CPU Core custom functions unit HW driver header file. More...
Go to the source code of this file.
Macros | |
Low-level CFU custom instructions ("intrinsics") | |
#define | neorv32_cfu_r3_instr(funct7, funct3, rs1, rs2) CUSTOM_INSTR_R3_TYPE(funct7, rs2, rs1, funct3, RISCV_OPCODE_CUSTOM0) |
#define | neorv32_cfu_r4_instr(funct3, rs1, rs2, rs3) CUSTOM_INSTR_R4_TYPE(rs3, rs2, rs1, funct3, RISCV_OPCODE_CUSTOM1) |
#define | neorv32_cfu_r5_instr_a(rs1, rs2, rs3, rs4) CUSTOM_INSTR_R5_TYPE(rs4, rs3, rs2, rs1, RISCV_OPCODE_CUSTOM2) |
#define | neorv32_cfu_r5_instr_b(rs1, rs2, rs3, rs4) CUSTOM_INSTR_R5_TYPE(rs4, rs3, rs2, rs1, RISCV_OPCODE_CUSTOM3) |
Functions | |
int | neorv32_cpu_cfu_available (void) |
CPU Core custom functions unit HW driver header file.
#define neorv32_cfu_r3_instr | ( | funct7, | |
funct3, | |||
rs1, | |||
rs2 | |||
) | CUSTOM_INSTR_R3_TYPE(funct7, rs2, rs1, funct3, RISCV_OPCODE_CUSTOM0) |
R3-type CFU custom instruction prototype
#define neorv32_cfu_r4_instr | ( | funct3, | |
rs1, | |||
rs2, | |||
rs3 | |||
) | CUSTOM_INSTR_R4_TYPE(rs3, rs2, rs1, funct3, RISCV_OPCODE_CUSTOM1) |
R4-type CFU custom instruction prototype
#define neorv32_cfu_r5_instr_a | ( | rs1, | |
rs2, | |||
rs3, | |||
rs4 | |||
) | CUSTOM_INSTR_R5_TYPE(rs4, rs3, rs2, rs1, RISCV_OPCODE_CUSTOM2) |
R5-type CFU custom instruction A prototype
#define neorv32_cfu_r5_instr_b | ( | rs1, | |
rs2, | |||
rs3, | |||
rs4 | |||
) | CUSTOM_INSTR_R5_TYPE(rs4, rs3, rs2, rs1, RISCV_OPCODE_CUSTOM3) |
R5-type CFU custom instruction B prototype
int neorv32_cpu_cfu_available | ( | void | ) |
Check if custom functions unit was synthesized.