并行提取与并行沉积指令加速位压缩与扩展 - 2006年(hilewitz06)

0 下载量 118 浏览量 更新于2024-08-25 收藏 340KB PDF 举报
"Fast Bit Compression and Expansion with Parallel Extract and Parallel Deposit Instructions - 2006 (hilewitz06)-计算机科学" 当前的微处理器指令集架构主要关注字(word)操作,并提供了一些子字(subword)级别的支持。然而,许多重要的应用程序可以从位(bit)定向的指令中获得显著的性能提升。论文提出了并行提取(pex)和并行存入(pdep)指令,旨在加速位选择的压缩和扩展。这两种指令通过快速的逆蝴蝶(fast inverse butterfly)和蝴蝶网络(butterfly network)电路来实现。 并行提取(pex)指令允许快速地从一个数据字中提取出多个指定位置的位,而并行存入(pdep)指令则能够将这些位插入到另一个数据字的特定位置,从而实现位压缩和位扩展。这两个新指令的引入,对处理位操作密集型的应用如数据编码、解码、位域操作以及在计算机网络、加密算法、数据压缩等领域都有潜在的巨大性能优化作用。 论文中,作者评估了不同功能单元实现高级位操作指令子集的延迟和面积成本。实验结果表明,与基础的精简指令集计算机(RISC)架构相比,这些指令平均可以提供3.41倍的性能提升;对于已经支持提取和存入指令的指令集架构(ISA),平均性能提升也达到了2.48倍。这充分证明了pex和pdep指令的有效性。 1. 引言 传统的微处理器操作通常基于字或更现代的子字操作。然而,许多关键应用受益于位操作,例如,使用基本指令(如与、移位、或等)实现任意n位的排列需要O(n)次操作。通过引入位定向的指令,可以有效地减少这种复杂性,提高计算效率。 2. 指令设计与实现 并行提取和并行存入指令利用了高效的硬件电路设计,如逆蝴蝶和蝴蝶网络,它们可以在并行处理中有效地进行位的提取和存入,大大减少了执行时间。 3. 性能分析 性能评估显示,这些新指令在各种应用场景下都能显著缩短执行时间,这包括但不限于数据编码解码、位操作密集的算法和系统级任务。 4. 应用示例 论文中列举了若干使用pex和pdep指令实现的实例,证明了它们在实际应用中的速度提升,如在数据流处理、压缩算法以及位操作密集的计算任务中。 通过引入并行提取和并行存入指令,不仅优化了微处理器的性能,也为未来指令集架构的设计提供了新的思路,使得硬件可以更好地适应和处理位操作密集型的计算任务,进一步推动了计算机科学领域的技术进步。