多媒体信号处理器中的单指令多数据处理方法及其装置制造方法及图纸

技术编号:2889607 阅读:184 留言:0更新日期:2012-04-11 18:40
一种向量处理器结构提供固定长度的一些向量寄存器,它们具有可编程长度和类型的数据元素。数据元素的类型和长度由指令定义,指令操作与向量寄存器相关联的操作数。由指令定义的数据长度确定向量寄存器中数据元素的数量及为完成指令所执行的并行操作的数目。本发明专利技术的一个实施例支持全部长度的8位、9位、16位和32位整型数据元素长度,以及32位数据元素的浮点数据类型。(*该技术在2017年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及数字信号处理技术,特别涉及用于多媒体功能(如视频和音频编码和解码)的对每个指令的多个数据元素进行并行处理的方法及其装置。本专利文件涉及并参考下列同时申请的专利申请美国专利申请顺序号UNKNOWN1,代理人案号M-4354,题为“Multiprocessor Operation in a Multimedia Signal Processor(多媒体信号处理器中的多处理器操作)”;美国专利申请顺序号UNKNOWN3,代理人案号M-4365,题为“Effcient Context Saving and Restoring in Multiprocessors(多处理器中的高效现场保存和恢复)”;美国专利申请顺序号UNKNOWN4,代理人案号M-4366,题为“System and Method for Handling Software Interrupts with Argument Passing(处理具有参数传递的软件中断的系统和方法)”;美国专利申请顺序号UNKNOWN5,代理人案号M-4367,题为“System and Method for Handling Interrupts and Exception Events in anAsymmetric Multiprocessor Architecture(在不对称多处理器结构中处理中断和异常事件的系统和方法)”;美国专利申请顺序号UNKNOWN6,代理人案号M-4368,题为“Methods and Apparatus for Processing Video Data(处理视频数据地方法和装置)”;美国专利申请顺序号UNKNOWN7,代理人案号M-4369,题为“Single-Instruction-Multiple-Data Processing Using Multiple Banks ofVector Registers(采用多个向量寄存器组的单指令多数据处理)”;以及美国专利申请顺序号UNKNOWN8,代理人案号M-4370,题为“Single-Instruction-Multiple-Data Processing with CombinedScalar/Vector Operations(具有组合标量/向量操作的单指令多数据处理)”。用于多媒体应用(例如实时视频编码和解码)的可编程数字信号处理器(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是根据本专利技术一实施例的多本文档来自技高网...

【技术保护点】
一个向量处理器包括: 包含有一些向量寄存器的寄存器文件; 译码器,在译码一指令期间,从寄存器文件中标识所选择的向量寄存器,并标识在指令执行期间所要处理的数据元素的长度;以及 处理电路,被连到向量寄存器,其中处理电路,在执行时,对来自所选择的向量寄存器的数据实现多个并行操作,并行操作的数目由数据元素的长度来控制。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:利T恩格延
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:KR[韩国]

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

1