本发明大体上涉及数字数据处理,并且更特定来说,涉及查找表操作的改进。
背景技术:
1、现代数字信号处理器(dsp)面临多重挑战。工作量继续增加,需要增加带宽。芯片上系统(soc)的大小及复杂性持续增长。存储器系统延时会严重影响某些类别的算法。随着晶体管变得更小,存储器及寄存器的可靠性降低。随着软件堆叠变得更大,潜在的交互作用及错误的数目随之变得更大。甚至线路也日益成为挑战。宽的总线难以路由。线路速度持续落后于晶体管速度。路由拥塞是一个持续挑战。
2、一种对筛选函数有用的技术是表查找。数据表被加载到将对应于输入参数的一组结果存储在存储器位置处的存储器中。为执行函数,使用输入参数来调用预先计算的结果。对于很少使用且难以计算数学函数来说,此技术可能特别有价值。
技术实现思路
1、此描述涉及查找表操作。存储在表中的数据元素的大小可能与数据处理器所需的数据大小不匹配。需要两个精度的相同表数据的算法先前需要存储及采用两个表。基于所需数据大小选择待使用的表,这通常浪费存储器空间。另一问题是查找表的粒度。筛选算法可能要求所存储的输入之间的输入的表值。
2、所描述的实施例可在数字数据处理器中实施。指令存储器存储指定数据处理操作的指令。指令解码器循序地调用指令并确定指定数据处理操作及操作数。操作单元对查找表读取指令的响应是:从具有指令指定数据大小的至少一个表调用数据元素;并将所调用数据元素以连续槽存储在指令指定目的地寄存器中。
3、某些所描述实施例实施两个专用查找表读取操作。第一特殊操作将从表调用的数据元素提升到较大大小。数据元素大小通常是二的整数幂(2n)个位。在一个实例实施例中,查找表读取指令支持不提升、2x提升,4x提升及8x提升。提升为每一所调用数据元素提供扩展位。查找表指令可将数据元素视为无符号整数,并且将数据元素零扩展为扩展位。查找表指令可将数据元素视为带符号整数,并将数据元素符号扩展为扩展位。
4、查找表指令将源操作数指定为存储从表开始地址到存取数据元素的一组向量偏移的寄存器。查找表指令将目的地操作数指定为存储查找表读取指令的结果的寄存器。查找表指令隐含查找表基地址寄存器及查找表配置寄存器。在一个实施例中,查找表读取指令从多个表组当中指定多个表的表组。查找表基地址寄存器及查找表配置寄存器绑定到指定表组。基地址寄存器存储表基地址。从此基地址的偏移来源于源操作数寄存器。配置寄存器设置许多查找表读取操作参数。这些参数包含:提升模式(无、2x、4x及8x);分配到对应表组的存储器量(表大小);所调用数据元素将被视为带符号整数还是不带符号整数;表数据元素的大小;以及表组中的表的数目。
5、根据标题为“包含高速缓存及可直接寻址静态随机存取存储器的统一存储器系统架构(unified memory system architecture including cache and directlyaddressable static randomaccess memory)”的共同指派的第us 6,606,686号专利,可将用于这些查找表读取操作的表映射到一级数据高速缓存可直接寻址存储器中,所述专利以引用的方式并入本文中。这些表可通过正常存储器操作加载。在一个实例实施例中,数据处理器支持至多4组独立的并行查找表。在一组内,可用字节、半字或字元素大小来并行查找至多16个表。根据此实例实施例,专用于直接寻址存储器的一级数据高速缓存的至少部分具有16个库。这允许并行存取16个存储器位置,并且支持每表组至多16个表。
1.一种处理器,其包括:
2.根据权利要求1所述的处理器,其中:
3.根据权利要求2所述的处理器,其中:
4.根据权利要求1所述的处理器,其中:
5.根据权利要求4所述的处理器,其中:
6.根据权利要求1所述的处理器,其进一步包括:
7.根据权利要求6所述的处理器,其进一步包括:
8.根据权利要求6所述的处理器,其进一步包括:
9.根据权利要求8的所述处理器,其中:
10.根据权利要求9所述的处理器,其中:
11.一种方法,其包括:
12.根据权利要求11所述的方法,其中:
13.根据权利要求12所述的方法,其中:
14.根据权利要求11所述的方法,其中:
15.根据权利要求14所述的方法,其中:
16.根据权利要求11所述的方法,其进一步包括:
17.根据权利要求16所述的方法,其进一步包括:
18.根据权利要求16所述的方法,其进一步包括:
19.根据权利要求18的所述方法,其中:
20.根据权利要求19所述的方法,其中: