采用多个向量寄存器组的单指令多数据处理方法及其装置制造方法及图纸

技术编号:2889867 阅读:332 留言:0更新日期:2012-04-11 18:40
一种具有合适价格、高计算能力、及熟悉的编程环境的多媒体信号处理器,其中向量处理器包括由可存储多个数据元素的向量寄存器构成的两个组、及具有表示缺省组的字段的控制寄存器。所述向量处理器指令集包括:使用识别位于所述缺省组内的向量寄存器所用的寄存器号的指令;使用识别包含第一组中的寄存器及第二组中的寄存器的双倍长度向量寄存器所用的寄存器号的指令;以及包含访问某个组中的向量寄存器所用的组位及寄存器号的指令。(*该技术在2017年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及数字信号处理技术,特别涉及用于多媒体功能(如视频和音频编码和解码)地对每个指令的多个数据元素进行并行处理的方法及其装置。用于多媒体应用(例如实时视频编码和解码)的可编程数字信号处理器(DSPs)需要相当强的处理能力,以便在有限时间内处理大量的数据。数字信号处理器的几种结构是众所周知的。大多数微处理器采用的通用结构一般需要高工作频率,以提供具有足以进行实时视频编码或解码的计算能力的DSP。这使这种DSP价格昂贵。超长指令字(VLIW)处理器是具有很多功能单元的一种DSP,这些功能单元中的大部分执行不同的、相对简单的任务。VLIW DSP的单个指令可以是128字节或更长,并具有多个独立的被独立的功能单元并行执行的部分。VLIW DSPs具有很强的计算能力,因为许多功能单元能并行工作。VLIWDSPs还具有相对低的成本,因为每个功能单元相对小而简单。VLIW DSPs存在的一个问题是在处理输入/输出控制、同主计算机通信及其它不宜于用VLIW DSP的多个功能单元并行执行的功能方面效率低下。另外,VLIW的软件不同于传统的软件且开发困难,因为缺乏编程工具和熟悉VLIW软件结构的程序员。因此,能提供合理成本、高计算能力和熟悉的编程环境的DSP是多媒体应用所寻求的。本专利技术的目的是提供一种单指令多数据处理方法及其装置。根据本专利技术一个方面,一个多媒体数字信号处理器(DSP)包括一个向量处理器,该向量处理器操作向量数据(即每操作数有多个数据元素)以提供高处理能力。该处理器使用RISC类型指令集的单指令多数据结构。程序员可以很容易地适应向量处理器的编程环境,因为它类似于大部分程序员熟悉的通用处理器的编程环境。DSP包括一套通用向量寄存器。每个向量寄存器具有固定长度,但是分成多个用户可以选择长度的独立数据元素。因此,存储在向量寄存器中的数据元素数取决于为该元素所选择的长度。例如32字节寄存器可以分成32个8位的数据元素、16个16位的数据元素,或8个32位的数据元素。数据长度和类型的选择通过处理与向量寄存器有关的数据的指令来确定,而指令的一个执行数据通路执行多个并行操作,这取决于指令所指示的数据长度。向量处理器的指令可以有向量寄存器或标量寄存器作为操作数,并且并行地操作多个向量寄存器的多个数据元素,以便提高计算能力。本专利技术的向量处理器的一个示例性的指令集包括协处理器接口操作;流控制操作加载/存储操作;及逻辑/算术操作。逻辑/算术操作包括的操作,把一个向量寄存器的多个数据元素同一个或多个别的向量寄存器中相应的多个数据元素相结合,产生结果数据向量的多个数据元素。其他的逻辑/算术操作混合一个或多个向量寄存器的各种数据元素,或把向量寄存器的数据元素同标量结合起来。该向量处理器的一种结构扩展,加上了标量寄存器,每个标量寄存器都包括一个标量数据元素。标量和向量寄存器的结合方便了将向量处理器的指令集进行扩充以包括并行地把一个向量的每个数据元素同一个标量值结合的操作。例如,一条指令把一个向量的多个数据元素乘以一个标量值。标量寄存器亦提供一个位置,用于存储要从向量寄存器中提取或存入向量寄存器的单个数据元素。标量寄存器对在向量处理器和协处理器(该协处理器的结构仅提供标量寄存器)之间传送信息、以及对计算加载/存储操作所用的有效地址也很方便。根据本专利技术的另一方面,向量处理器中的多个向量寄存器被组织为多个组。每个组能被选择为“当前(current)”组,而另一个组则是“替代(alternative)”组。在向量处理器的控制寄存器中“当前组”位指示当前组。为了减少标识向量寄存器所需的位数,有些指令只提供标识当前组中的一个向量寄存器的寄存器号。加载/存储指令有一个附加位来标识任何一个组的向量寄存器。因此,加载/存储操作能在操作当前组中的数据的期间取出数据送到替代组。这有助于图象处理和图形过程的软件流水线作业,且当取数据时降低处理器的延迟,因为用访问替代寄存器组的加载/存储操作,逻辑/算术操作可不按次序执行。在其它指令中,替代组允许使用双倍长度向量寄存器,这种寄存器包括一个来自当前组的向量寄存器,和一个来自替代组的相应的向量寄存器。这种双倍长度寄存器可根据指令句法来鉴别。向量处理器中的控制位可以被设定,以使缺省向量长度是一个或两个向量寄存器。替代组亦允许在复杂指令句法中使用更少的显式标识的操作数,如混洗(shuffle)、去混洗(unshuffle)、饱和(saturate)、及具有两个源和两个目的寄存器的条件转移。向量处理器还实现新颖的指令,如四平均(average quad)、混洗、去混洗、成对方式最大(pair-wise maximum)和交换(exchange)以及饱和。这些指令执行的操作在多媒体功能(例如视频编码和解码)中是常见的,并代替在其它指令集中实现同样功能所需的2个或更多个指令。因而,向量处理器指令集改进了多媒体应用中程序的效率和速度。以下结合附图详细说明本专利技术的优选实施例,其中,附图说明图1是根据本专利技术一实施例的多媒体处理器的方框图。图2是图1的多媒体处理器的向量处理器的方框图。图3是图2的向量处理器的取指单元的方框图。图4是图2的向量处理器的取指单元的方框图。图5A、5B和5C示出了图2的向量处理器的寄存器到寄存器指令、加载指令及存储指令所用的执行流水线的步骤。图6A是图2的向量处理器的执行数据通路的方框图。图6B是图6A执行数据通路的寄存器文件(register file)的方框图。图6C是图6A执行数据通路的并行处理逻辑单元的方框图。图7是图2的向量处理器的加载/存储单元的方框图。图8是本专利技术一实施例的向量处理器指令集的格式。在不同图中所用的相同参考符号表示相似的或相同的项。图1示出了本专利技术一实施例的多媒体信号处理器(MSP)100的实施例的方块图。多媒体处理器100包括通用处理器110和向量处理器120组成的处理核心105。处理核心105通过高速缓冲存储器(以下称为高速缓存)子系统130连到多媒体处理器100的剩余部分,高速缓存子系统包括SRAM160和190,ROM170及高速缓存控制器180。高速缓存控制器180可将SRAM160配置为处理器110的指令高速缓存162和数据高速缓存164,而将SRAM190配置为向量处理器120的指令高速缓存192和数据高速缓存194。片内ROM170包含处理器110和120的数据和指令,并能配置为高速缓存。在本实施例中,ROM170包括复位和初始化过程;自测试诊断过程;中断和异常处理程序;及声霸卡仿真子例程;V.34调制解调器信号处理子例程;一般电话功能;2-D和3-D图形子例程库;以及用于音频和视频标准如MPEG-1,MPEG-2,H.261,H.263,G.728和G.723的子例程库。高速缓存子系统130把处理器110和120连接到两个系统总线140和150,并作为处理器110和120及耦合到总线140和150的设备的高速缓存和切换站(switching station)。系统总线150用比总线140更高的时钟频率工作,并连接到存储器控制器158、局部总线接口156、DMA控制器154和设备接口152,它们分别为外部局部存储器、主计算机的局部总线、本文档来自技高网...

【技术保护点】
一种向量处理器,其特征在于,在所述向量处理器中配有:向量寄存器的第一组、向量寄存器的第二组、包含缺省组字段的控制寄存器、以及向量寄存器的所述第一及第二组所用的选择电路; 所述第一组内的各个向量寄存器分配有与分配给所述第一组内的其他向量寄存器的寄存器号相区别的寄存器号; 所述第二组内的各个向量寄存器分配有与分配给所述第二组内的其他向量寄存器的寄存器号相区别、且与分配给所述第一组内相应的向量寄存器的寄存器号相同的寄存器号; 所述选择电路以第一模式工作,并可访问根据从所述向量处理器执行的指令所得到的寄存器号和通过来自所述缺省组字段的数值的组合来识别的向量寄存器。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:利T恩格延森甬P桑莫塔兹A穆罕默德朴宪哲罗尼SD旺
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:KR[韩国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1