我们进行分析的目标是要找到和模拟此类架构参数,从而使电脑系统以最有效的方式对 MPEG-2 高清晰度电视(HDTV)视频进行编码。
我们选择了以下应用进行试验:
MPEG-2 视频编码器、高清晰度电视分辨率(1920x1088)、1 秒持续时间、30 帧、采用对数运动估算(Logarithmic Motion Estimation)算法。
在试验期间,要对以下架构参数进行评估:
高速缓存分级参数:
- 高速缓存等级数量(L1 + L2);
- 各高速缓存的相关性(4 到 32);
- 各高速缓存的大小(1K 到 128M);
- 高速缓存行大小(64 字节)。
寄存器文件:
- 寄存器数量(16、32、64);
- 寄存器长度(8、16、32 字节)。
分支预测单元:
使用高速缓存可以最大限度减少处理器到内存的流量。
在图 4 中,内存流量图中有两个平坦区。它们对应一级和二级高速缓存的有效容量。选择 64K-4M 和 32M-128M 内的任何高速缓存大小,保持内存流量的稳定和预测等级。
图4. 模拟高速缓存系统参数为了评估寄存器文件参数,有关所有内存操作信息的保存和处理都应支持有效使用特定寄存器集。寄存器集的寄存器长度和数量不尽相同。在各处理算法点分析一段时间(window)的内存运算,并在寄存器中存储该时间段内访问最频繁的内存地址。这一方法将可减少内存流量,从而支持更高效的寄存器利用。因此,类似于高速缓存分析情况,能够最大限度降低流量的寄存器文件参数是最高效的。
图5. 模拟寄存器文件参数如图 5 所示,寄存器越多对 MPEG 编码器越有利,尽管增加寄存器大小不一定能产生积极的效果。
模拟的目标是找到编码器误预测最严重的部分,并检查新预测算法是否有帮助。
图 6 提供了预测分支的比例。静态预测算法效果较好,但未来仍有约 10% 的改进空间。这可通过编译器进行优化得到解释,编译器会依照静态预测方法生成分支指令。
图6. 模拟分支预测结果