位置:51电子网 » 技术资料 » D S P

ADSP2106x中并行处理指令的应用技巧

发布时间:2007/8/20 0:00:00 访问次数:446

    摘要:ADSP2106x是AD公司推出的一款性能优秀的高速DSP处理芯片,具有多个并行的内部处理单元和丰富的并行指令,本文主要介绍该DSP芯片中并行运算处理指令的应用技巧。

    关键词:DSP 并行处理指令 ADSP2106x

引言

    根据处理器芯片的指令及其实现形式,我们可以把处理器芯片分为复杂指令系统(CISC)和精简指令系统(RISC),前者追求单条指令的强大功能以简化编程;后者强调指令的简化以提高硬件效率。由于RISC具有指令长度一致、单周期执行时间、易于并行和流水线处理等优点,绝大多数的DSP处理芯片都采用了RISC。另外,根据计算机的存储器结构及其总线连接形式,计算机系统可以被分为冯诺依曼结构和哈佛结构,前者共用数据存储空间和程序存储空间,共用存储器总线;后者具有分离的数据和程序空间及分离的访问总线。由于哈佛结构在指令执行时,取指和取数可以并行,因此具有更高的执行效率,所以大多数的DSP芯片都采用了哈佛结构。

    ADSP2106x就是一款采用超级哈佛结构和RISC的DSP处理芯片,其强大的浮点、定点运算功能和大容量的片内存储器,使其可以胜任苛刻的实时信号处理任务;而它丰富的外部接口和10个通道的DMA可以使所处理数据的畅通无阻[1];再加上片内的仲裁逻辑,6个ADSP2106x和一个主机可以很容易连在一起构成一个并行处理系统。利用ADSP2106x可以开发出功能很强的信号处理系统[2]。

    虽然ADSP2106x芯片本身提供了优异的性能,但该性能的发挥离不开软件编程的支持。比如,ADSP2106x的峰值运算速度可达120MFLOPS(主频40MHz),即在一个时钟周期内可以完成一次乘法、一次加法和一次减法,但这三个并行运算指令是需要合理安排才能实现的。另外,由于芯片内部采用了超级哈佛结构,因此可以在一定条件下同时存取两个数据,但这也需要合理安排数据在数据存储器和程序存储器中的放置,才能使并行的存取指令有效。

    本文主要介绍ADSP2106x中并行指令的一些应用技巧,重点针对并行运算指令和数据存取指令。通过这些技巧的应用,可以提高编程效率,充分发挥硬件潜力,同时对ADSP2106x的内部结构有更为深入的了解。

ADSP2106x中的运算处理单元

    ADSP2106x中的核心处理部分包含了三个运算单元:ALU、乘法器和移位器,它们与寄存器组间的连接关系如图1所示[3]。三个运算单元的功能如下:

    (1)ALU单元:定点、浮点加减法和求平均;逻辑运算;求绝对值、最大值、最小值、限幅、比较;定点<-->浮点转换。

    (2)乘法器:浮点乘法;定点乘法及乘法累加。

    (3)移位器:移位操作;位操作;位场(bit field)提取和存储。

    ADSP2106x中三个运算处理单元的数据通道只与寄存器组相连,而不能直接从存储器中存取操作数,这是典型的RISC结构,这种结构往往需要大量的寄存器来存储和交换中间结果,ADSP2106x中具有32个寄存器,其中16个工作于前台,16个工作于后台。乘法器从两个寄存器输入操作数,把结果存入另一个寄存器;移位器从3个寄存器输入数据,把一个结果存入另一个寄存器;ALU从两个寄存器输入操作数,把两个运算结果分别存入另两个寄存器。

    寄存器可以在一个时钟周期内从数据存储器和程序存储器中各存取1个数据,这正是ADSP2106x超级哈佛结构的优势。另外,运算单元的运算与寄存器的存取可以并行不悖,但在编程时,这种并行往往伴随一个流水线的过程。

 &

    摘要:ADSP2106x是AD公司推出的一款性能优秀的高速DSP处理芯片,具有多个并行的内部处理单元和丰富的并行指令,本文主要介绍该DSP芯片中并行运算处理指令的应用技巧。

    关键词:DSP 并行处理指令 ADSP2106x

引言

    根据处理器芯片的指令及其实现形式,我们可以把处理器芯片分为复杂指令系统(CISC)和精简指令系统(RISC),前者追求单条指令的强大功能以简化编程;后者强调指令的简化以提高硬件效率。由于RISC具有指令长度一致、单周期执行时间、易于并行和流水线处理等优点,绝大多数的DSP处理芯片都采用了RISC。另外,根据计算机的存储器结构及其总线连接形式,计算机系统可以被分为冯诺依曼结构和哈佛结构,前者共用数据存储空间和程序存储空间,共用存储器总线;后者具有分离的数据和程序空间及分离的访问总线。由于哈佛结构在指令执行时,取指和取数可以并行,因此具有更高的执行效率,所以大多数的DSP芯片都采用了哈佛结构。

    ADSP2106x就是一款采用超级哈佛结构和RISC的DSP处理芯片,其强大的浮点、定点运算功能和大容量的片内存储器,使其可以胜任苛刻的实时信号处理任务;而它丰富的外部接口和10个通道的DMA可以使所处理数据的畅通无阻[1];再加上片内的仲裁逻辑,6个ADSP2106x和一个主机可以很容易连在一起构成一个并行处理系统。利用ADSP2106x可以开发出功能很强的信号处理系统[2]。

    虽然ADSP2106x芯片本身提供了优异的性能,但该性能的发挥离不开软件编程的支持。比如,ADSP2106x的峰值运算速度可达120MFLOPS(主频40MHz),即在一个时钟周期内可以完成一次乘法、一次加法和一次减法,但这三个并行运算指令是需要合理安排才能实现的。另外,由于芯片内部采用了超级哈佛结构,因此可以在一定条件下同时存取两个数据,但这也需要合理安排数据在数据存储器和程序存储器中的放置,才能使并行的存取指令有效。

    本文主要介绍ADSP2106x中并行指令的一些应用技巧,重点针对并行运算指令和数据存取指令。通过这些技巧的应用,可以提高编程效率,充分发挥硬件潜力,同时对ADSP2106x的内部结构有更为深入的了解。

ADSP2106x中的运算处理单元

    ADSP2106x中的核心处理部分包含了三个运算单元:ALU、乘法器和移位器,它们与寄存器组间的连接关系如图1所示[3]。三个运算单元的功能如下:

    (1)ALU单元:定点、浮点加减法和求平均;逻辑运算;求绝对值、最大值、最小值、限幅、比较;定点<-->浮点转换。

    (2)乘法器:浮点乘法;定点乘法及乘法累加。

    (3)移位器:移位操作;位操作;位场(bit field)提取和存储。

    ADSP2106x中三个运算处理单元的数据通道只与寄存器组相连,而不能直接从存储器中存取操作数,这是典型的RISC结构,这种结构往往需要大量的寄存器来存储和交换中间结果,ADSP2106x中具有32个寄存器,其中16个工作于前台,16个工作于后台。乘法器从两个寄存器输入操作数,把结果存入另一个寄存器;移位器从3个寄存器输入数据,把一个结果存入另一个寄存器;ALU从两个寄存器输入操作数,把两个运算结果分别存入另两个寄存器。

    寄存器可以在一个时钟周期内从数据存储器和程序存储器中各存取1个数据,这正是ADSP2106x超级哈佛结构的优势。另外,运算单元的运算与寄存器的存取可以并行不悖,但在编程时,这种并行往往伴随一个流水线的过程。

 &

相关IC型号

热门点击

 

推荐技术资料

业余条件下PCM2702
    PGM2702采用SSOP28封装,引脚小而密,EP3... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!