ARMed解决方案对DSP的战争
ARM体系结构简化了数字信号处理
ARM与数字信号处理(DSP)有什么关系?
但这仍然不能回答问题,为什么要使用ARM处理器来完成这项工作?
Piccolo的这种协处理器情况如何更好地适合DSP?
答案是,在许多方面都有帮助。首先,ARM微处理器与Piccolo的集成通过最小化片上代码存储量并有效利用芯片存储器来减少总硅片面积。如果使用两个独立的处理器,通常不会发现这种情况。
通过结合单周期算术运算和维持该性能所需的数据吞吐量,可以通过指令集集成来提高性能。
阐明为什么Piccolo DSP解决方案具有优势的另一点是,其独立运行的处理器通常基于“传统”技术,这不一定是最好的实现,而与ARM集成则不依赖于不足之处标准。
其重要的优势是可以提高功耗效率,这有助于延长电池寿命并减少热量产生,当然,可以通过集成实现成本节省。两者都有利于支持小型便携式无线产品的强劲趋势。
这种系统是什么样的?
好吧-Piccolo体系结构
左上方显示的是通用寄存器集,所有这些寄存器都可供程序员访问,并包含32个16位寄存器或16个32位寄存器,以最大化piccolo处理器本地的数据存储以及四个扩展精度48位寄存器。在底部是用于输入和输出的缓冲区,以最大程度地减少内存访问以及由于ARM协处理器接口遇到的结构性危害而导致的停顿。
其值得注意的硬件是用于数据快速缩放的32位桶形移位器,16 * 16单周期乘法器,内置对扩展精度算术的支持,以及用于单周期双16位算术和逻辑运算的拆分式ALU。指令字或一个32位数据项算术或逻辑运算。
寄存器具有用于代码优化和灵活性的重新映射方案,并且有四个可嵌套的零开销硬件循环结构用于执行DSP算法。
看起来很简单,不是吗。但是,可能会问一个好问题:ARM协处理器接口如何工作?共享数据的处理器之间不会有很多争论吗?
让从描述协处理器架构本身开始。通过添加硬件协处理器,ARM支持其指令集的通用扩展。
现在让看一下界面。
1. Cpi(从ARM到所有协处理器)。
“协处理器指令”的信号,该信号表示ARM已识别出协处理器指令并希望执行。
2. Cpa(从协处理器到ARM)。
“不存在协处理器”的信号,该信号向ARM指示没有可用的协处理器来执行当前指令。
3. Cpb(从协处理器到ARM)。
“协处理器繁忙”信号,该信号告诉ARM协处理器尚未开始执行指令。
握手产生了什么结果?这是有趣的部分!
一旦协处理器接收到指令,并且指令正在坐着并等待执行,则根据发生的握手情况有四种可能的结果。
1. ARM可能不选择执行此指令(不声明cpi),可能是因为落在分支影子内或某些条件测试失败(所有ARM指令均按条件执行)。结果-所有协处理器都放弃指令。
2. ARM决定执行(声明cpi),但是任何协处理器都无法执行,因此cpa保持活动状态,ARM将采用未定义的指令陷阱并使用软件进行恢复。
3. ARM决定执行,协处理器接受,但还不能执行。协处理器将CPA调低,但将CPB调高;同时,ARM“忙-等待”直到协处理器将cpb调低,从而使指令流停滞。但是,ARM会中断中断。
4. ARM决定执行,协处理器接受立即执行。Cpi,cpa和cpb均被拉低,并且双方均致力于完成指令。
特别说明:抢先执行。
只要在握手未完成的情况下协处理器可以恢复状态,协处理器就可以在流水线中接收到指令后立即开始执行指令。
毕竟能说什么?
手机无处不在。而且,为什么呢?因为是如此的便宜,并且很方便携带。但是,这还不是DSP的终结。汽车,电视,微波炉,立体声音响,手表,PDA(等等)都在使用此技术。ARM的Piccolo及其协处理器思想是朝着正确方向迈出的一步。提供了一种在性能,成本和功耗之间取得平衡的架构。在计算机领域,ARM已成为该类别的当前领导者,并取得了短暂的成就。但是,还有更多的事情要来。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章