RISC-V MCU中文社区

【分享】 指令集P扩展的主要内容

发表于 开源蜂鸟E203 2023-05-31 19:58:27
0
1473
1

队伍编号:CICC4901

团队名称:唯唯诺诺搞设计

1. 指令集P扩展的主要内容

新指令的添加,在蜂鸟E203原有指令集的基础上,可以添加一些新的指令,以满足新的应用需求;指令集扩展,在原有指令的基础上,扩展其功能,可以提高指令的效率和灵活性;指令格式的改进,通过改进指令格式,可以使指令更加紧凑、高效,减少指令的数量,提高执行效率;浮点运算扩展,蜂鸟E203原有指令集不支持浮点运算,可以通过添加浮点运算指令,或扩展现有指令的功能,来实现浮点运算的支持;安全扩展,通过添加一些安全指令,可以提高处理器的安全性能,防止攻击;向量指令扩展,向量指令可以同时处理多个数据,可以大大提高处理器的运算速度,通过添加向量指令,可以提高处理器的计算能力;SIMD指令扩展,SIMD指令可以在单个指令中执行多个相同或类似的操作,可以提高处理器的运算速度,通过添加SIMD指令,可以提高处理器的计算能力。

2. 指令集P扩展的主要代码

//添加AES加密指令

define AES_ENC(rd, rs1, rs2) \

asm volatile ("aes.enc %0, %1, %2" : "=r" (rd) : "r" (rs1), "r" (rs2))

//添加RSA加密指令

define RSA_ENC(rd, rs1, rs2) \

asm volatile ("rsa.enc %0, %1, %2" : "=r" (rd) : "r" (rs1), "r" (rs2))

//添加安全存储指令

define SEC_STORE(rs1, rs2, imm) \

asm volatile ("sec.store %0, %1(%2)" : : "r" (rs1), "i" (imm), "r" (rs2))

//添加加密传输指令

define SEC_TRANSPORT(rd, rs1) \

asm volatile ("sec.transport %0, %1" : "=r" (rd) : "r" (rs1))

//添加冗余计算指令

define REDUNDANT_CALC(rd, rs1, rs2) \

asm volatile ("redundant.calc %0, %1, %2" : "=r" (rd) : "r" (rs1), "r" (rs2))

//添加检查指令

define CHECK(rd, rs1, rs2) \

asm volatile ("check %0, %1, %2" : "=r" (rd) : "r" (rs1), "r" (rs2))
喜欢1
用户评论
啥也不会啊

啥也不会啊 实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板