ZHCU881D May 2020 – May 2024
以下方框图显示 C7100 DSP CPU 上的分离式数据路径。图中有 A 端数据路径和 B 端数据路径。图中显示了功能单元和多个异构寄存器文件。A 端数据路径负责标量计算,从存储器加载和在存储器中存储标量与矢量,以及控制流(分支、调用)。B 端数据路径处理矢量数学运算、数据排列和矢量谓词运算。
为了简化上图,此图中未显示某些数据移动功能和数据路径。
C7100 和 C7120 器件具有 512 位向量宽度。C7504 和 C7524 器件具有 256 位向量宽度。寄存器每个寄存器有 64 位(“标量”)或每个寄存器有“向量宽度”位数。因此,C7100 和 C7120 器件具有 512 位向量寄存器,而 C7504 和 C7524 器件具有 256 位向量寄存器。
在给定的数据路径上,有若干不同类型的寄存器文件。在给定的数据路径上,每个功能单元都可以写入该数据路径上的全局寄存器文件以及该数据路径上的大部分“本地”寄存器文件。然而,只有一些功能单元可以从“本地”寄存器文件中读取。
除了提供对存储器层次结构进行 CPU 访问的 D1 和 D2 单元之外,C7100 DSP 还有两个“流引擎”,便于快速从存储器获取数据。流引擎 是一种硬件特性,允许您(或编译器)指定存储器地址模式,以便从存储器中获取数据。流引擎尽力将数据从存储器层次结构预取到靠近 CPU 的暂存存储器,以最大限度地减少由于冷缓存未命中而导致的 CPU 停顿。