数字信号处理器内存偏移分配与智能RAID对象存储设备策略研究
1. 数字信号处理器内存偏移分配
在数字信号处理器(DSP)的应用中,内存偏移分配是一个关键问题。研究人员提出了多种解决方法,以优化内存访问和提高性能。
1.1 单偏移分配(SOA)问题
给定一个变量集 $V = {v_0, v_1, \cdots, v_{n - 1}}$,单偏移分配(SOA)问题旨在找到每个变量 $v_i$($0 \leq i \leq n - 1$)的偏移量,以最小化仅用于内存地址操作的指令数量。为实现这一目标,最大化地址寄存器的自动递增/自动递减操作至关重要,因为这可以消除显式使用内存地址指令。
Liao提出了一种启发式方法,通过按访问序列中转换次数的降序选择边来找到访问图 $G(V, E)$ 的路径覆盖,同时避免循环,但未说明如何处理权重相同的边。Leupers和Marwedel引入了一个打破平局的函数来处理此类边,其结果优于Liao的方法。
1.2 带修改寄存器(MR)的SOA算法
- 定义相关概念 :
- 当对应顶点 $v_i$ 和 $v_j$ 的变量在内存中未相邻分配时,边 $e = (v_i, v_j)$ 称为未覆盖边。
- 若变量 $v_i$ 和 $v_j$ 属于同一分区,则未覆盖边 $e = (v_i, v_j)$ 称为内部未覆盖边;否则,称为外部未覆盖边,也分别称为内部边和外部边。
- 每个内部边和外部边都会产生地址操作成本,分别称为内部成本和外部成本。