f32c 介绍
f32c是可重定向的,标量的,流水线的32位处理器核,其可以执行RISC-
V或MIPS指令集的子集。它在参数化VHDL中实现,其允许具有不同面积/速度权衡的合成,并且包括分支预测器,异常处理控制块和可选的直接映射高速缓存。
RTL代码还包括诸如多端口SDRAM和SRAM控制器,具有复合(PAL),HDMI,DVI和VGA输出的视频帧缓冲器,具有用于精灵和窗口的简单2D加速,浮点向量处理器,SPI,UART,PCM音频,GPIO,PWM输出和定时器,以及为各种制造商的众多流行FPGA开发板定制的胶合逻辑。
在合成整数基准中,内核以存储在片上块RAM中的代码和数据产生3.06 CoreMark / MHz和1.63 DMIPS / MHz(1.81 DMIPS
/ MHz,功能内联)。当配置为16 KB指令和4 KB数据高速缓存,并且代码和数据存储在外部SDRAM中时,内核产生2.78 CoreMark /
MHz和1.31 DMIPS / MHz。
包括定时器和UART的性能优化的f32c
SoC仅占用1048个6输入LUT,同时仍然能够在最紧凑配置(仅消耗697(649个逻辑加48个存储器)LUT)下合成时执行gcc生成的代码。
可配置选项包括:
-
C_arch RISC-V或MIPS ISA
-
C_big_endian总线端
-
C_mult_enable合成乘法单位
-
C_branch_likely支持分支延迟时隙取消
-
C_sign_extend支持符号扩展指令
-
C_movn_movz支持条件移动指令
-
C_branch_prediction合成分支预测器
-
C_bp_global_depth全局分支历史跟踪大小
-
C_result_forwarding合成结果旁路
-
C_load_aligner合成加载对齐器
-
C_full_shifter pipelined而不是迭代移位器
-
C_icache_size指令高速缓存大小(0到64 KB)
-
C_dcache_size数据高速缓存大小(0到64 KB)
-
C_debug综合单步调试模块
f32c 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。