数据处理硬件制造技术

技术编号:3035571 阅读:198 留言:0更新日期:2012-04-11 18:40
本发明专利技术通常涉及数据处理硬件,更具体地,涉及硬件加速器和用于矩阵因式分解、尤其是非负矩阵因式分解(NMF)的相关方法。本发明专利技术的实施例对于驱动诸如OLED(有机发光二极管)显示器的电致发光显示器尤其有用。一种矩阵因式分解硬件加速器,用于确定当相乘时逼近目标矩阵的一对因式矩阵(R;C),所述硬件加速器包括:输入端,用于接收表示所述目标矩阵的输入数据矩阵;第一因式矩阵存储器,用于存储第一因式矩阵(R)的行和列数据,所述第一因式矩阵存储器具有多个第一数据总线,每个第一数据总线都与所述第一因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第一因式矩阵列数据;第二因式矩阵存储器,用于存储第二因式矩阵(C)的行和列数据,所述第二因式矩阵存储器具有多个第二数据总线,每个第二数据总线都与所述第二因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第二因式矩阵行数据;处理器块矩阵,每个处理器块均具有:与所述第一数据总线之一耦合的第一处理器块数据总线,与所述第二数据总线之一耦合的第二处理器块数据总线,以及结果数据输出端;处理器存储块,用于存储表示所述一对因式矩阵的乘积和所述目标矩阵之间的差的矩阵(Q)的一部分;以及数据处理器,包括至少一个乘加单元,所述数据处理器具有与所述处理器存储块耦合的第一输入端,以及与所述第一和第二处理器块数据总线之一或二者耦合的第二输入端,并具有与所述结果数据输出端耦合的输出端;以及控制电路,用于控制将数据从所述输入端写入所述处理器块矩阵的所述处理器存储块中,控制从所述第一和第二因式矩阵存储器中读取数据,以提供给所述处理器块矩阵,以及控制将从所述结果数据输出端得到的数据写回至所述第一和第二因式矩阵存储器,以执行所述矩阵因式分解。

Data processing hardware

The present invention relates generally to data processing hardware, more specifically, to a hardware accelerator and a related method for matrix factorization, in particular nonnegative matrix factorization (NMF). Embodiments of the present invention are particularly useful for driving electroluminescent displays such as OLED (organic light emitting diode) displays. A matrix factorization of the hardware accelerator is used to determine when a pair of factor matrix multiplication when the approximation of the target matrix (R; C), the hardware accelerator includes an input for receiving the input data representation of the target matrix matrix; the first factor matrix memory, for storing the first row matrix factorization (R) and the list of data, the first factor matrix memory having a plurality of first data bus, each of the first data bus and the first factor matrix corresponding memory block is used to access the stored data in the column, the first factor matrix of the corresponding blocks; second factor matrix memory, for storing second factor matrix (C) the rows and columns of data, the second factor matrix memory has a plurality of second data bus, each of the second data bus and the second moment equation The memory array used to access the corresponding block associated, stored in the second factor matrix line data of the corresponding blocks; the processor block matrix, each processor block is provided with a first processor block data bus the first data bus coupling, and second processor block data bus of the second data bus coupling. The results of data and the output end of the processor; memory blocks for storing the difference between the product of a matrix factorization matrix and the target matrix (Q) part; and a data processor comprises at least one multiplier unit, the data processor has a first input end of the processor and storage block coupling, second input and one of the first and second processor block data bus or two coupling, and has the data and the result output Output end coupling; and a control circuit for controlling the data from the input end is written in the memory of the processor processor block matrix and control data read from the first and second factor matrix in the memory, in order to provide the processor block matrix, and control will be obtained from the results the data output data are written back to the first and second factor matrix memory, to perform the matrix factorization.

【技术实现步骤摘要】
【国外来华专利技术】
一般地,本专利技术涉及数据处理硬件,更具体地,涉及硬件加速器和用于矩阵因式分解、尤其是非负矩阵因式分解(NMF)的相关方法。本专利技术 的实施例对于驱动诸如OLED (有机发光二极管)显示器的电致发光显示 器尤其有用。
技术介绍
先前描述了如何在驱动OLED显示器中有利地采用针对非负矩阵分 解(NMF )的技术(参见一并引入作为参考的国际申请 PCT/GB2005/050219)。现描述实现这些技术、特别是解决执行足够快产生 实时显示所需的非常大量的计算的问题的硬件实施例。将参考显示驱动描 述优选实施例,但技术人员将理解,可以采用所描述的硬件和方法用于实 质上任何类型的数据的快速因式分解,所述数据包括但不限于图像数据(例如用于面部识别)、计算机网络数据(例如用于安全监视的用户活动 数据)、存储在数据库中的多变数据(例如,用于数据挖掘)、传感器数据(例如用于确定组成整体组合谱的一组组件谱)、生物序列数据和/或微阵 列数据(例如用于序列分析)、对象描述符数据(例如用于机器学习/识别 技术)、以及搜索结果数据(用于分析和/或模式识别)。这些和其它应用的 其它细节可以在申请人的先前国际专利申请(同上)中找到。可以在US 5692210; US 4739474; US2002/0186311; US 5690211: EP 0293700和US 2004/0268080中找到
技术介绍
。为了便于理解本专利技术的实施例,首先回顾多线寻址(MLA)技术,该 技术的优选特定情况包括整体矩阵寻址(TMA)技术。优选地,采用这些 技术用于无源矩阵OLED显示器,即针对每个像素(或彩色子像素)不包 括存储器元件并因此必须不断刷新的显示器。在该说明书中,OLED显示 器包括使用聚合物、所谓的小分子(例如US4,539,507)、树状高分子、以及有机金属材料制成的显示器;该显示器可以是单色的或彩色的。在传统的无源矩阵显示器中,逐条线地驱动显示器,因而针对每条线路需要高位驱动器(因为仅被照亮帧时段的一部分)。MLA技术一次驱动 多条线,以及在TMA技术中同时驱动所有的线,并根据当在观察者的眼 中整合时给出所期望的图像的印象的多个连续显示的子帧构建图像。问题 在于确定针对子帧的行和列驱动信号组,使得子帧组逼近所期望的图像。 先前在国际专利申请号GB2005/050167-9中描述了对该问题的解决方案 (所有三个申请一并引入作为参考)。优选技术采用描述所期望图像的矩 阵的非负矩阵分解。因式矩阵(由于OLED显示器元件提供正(或零)发 光,所以所述因式矩阵的元素为正)实质上定义了针对子帧的行和列驱动 信号。以下描述一个优选的NMF技术,尽管也可以采用其它技术。以下 还将描述适合实现NMF技术和其它NMF过程的硬件加速器的细节。为了便于理解本专利技术,参考图la,将首先描述包括显示驱动数据处理 器150的整个OLED显示系统100,可以使用本专利技术的实施例实现所述显 示驱动数据处理器150以执行TMA。在图la中,无源矩阵OLED显示器120具有行驱动器电路112驱动 的行电极124,以及列驱动110驱动的列电极128。这些行和列驱动器的 细节在图lb中示出。列驱动器110具有列数据输入109,用于为列电极的 一个或更多设置电流驱动;类似地,行驱动器112具有行数据输入111, 用于为两个或更多行设置电流驱动比率。优选地,输入109和111是易于 接口的数字输入;优选地,列数据输入109针对显示器120的所有U列设 置电流驱动。在可以是串行或并行的数据和控制总线102上提供用于显示的数据。 总线102向帧存储器103提供输入,该存储器存储针对显示器的每个像素 的亮度数据,或者在彩色显示器中存储针对每个子像素的亮度信息(该信 息可以编码为单独的RGB彩色信号或亮度和色度信号或其它)。存储在帧 存储器103中的数据确定针对显示器的每个像素(或子像素)的所期望的 视亮度,并可以通过显示器驱动数据处理器150经由第二读取总线105读 取该信息。显示器驱动数据处理器150优选地执行输入数据预处理、NMF、 以及后处理。图lb示出了适合驱动具有因式分解(factorisation)图像矩阵的显示 器的行和列驱动器。列驱动器110包括一起汇集成组、并具有用于将电流 设置给每个列电极的可变参考电流Iref的一组可调整实质恒定的电流源。 该参考电流通过针对从NMF因式矩阵的行导出的每个列的不同值进行脉 冲宽度调制。行驱动器112包括可编程的电流镜像,优选地针对显示器的 每行(或针对同时被驱动的行块的每行)有一个输出。从NMF因式矩阵 的列导出行驱动信号,并且行驱动器112针对每行分布总列电流,从而针 对行的电流按照比率控制输入(R)设置的比率。可以在申请人的PCT申 请GB2005/010168中(一并引入作为参考)找到适合驱动器的其它细节。OLED具有二次伏安相关性,限制行和列驱动变量的独立控制。由于 PWM允许列和行驱动变量互相去耦,所以PWM是有用的。此外,利用 上述驱动设置,因为电流在行之间共享,所以如果一个行中的电流增加, 则残余行中的电流减少。优选地,因而縮放参考电流和子帧时间以进行补 偿。例如,可以为了使每个子帧中的峰值像素亮度相等(同时降低最坏情 况/峰值亮度老化),调整子帧时间。在实践中,这受最短可选择子帧时间 以及最大列驱动电流的限制,但是由于调整是二阶优化,所以这不必成为 一个问题。以下给出优选的NMF计算的一个示例通过具有元素Vq的矩阵V给出输入图像,R表示电流行矩阵,C表 示电流列矩阵,Q表示V和R.C之间的残余误差,p表示子帧的数量, average表示平均值,以及表示可选的伽马修正函数。变量初始化为如下av =■ average(gamma(V、v) Qxy =gamma(Vxy)-flv然后针对p=7至总子帧数,NMF系统的实施例执行下列计算 赠Q =Q +R C ^对每个x浙少= Q -RpyC印伊^每个x ,少变量防止被0除,以及R和C的值向该值逼近。可以通过/m'to/i C X权重X列数确定6/氾的值,其中列数是x,以及例如,权重在64至128之间。一般来说,上述计算可以以最小二乘法拟合为特征。由于通常将行R 和列C矩阵初始化,所以矩阵Q起初以目标矩阵的形式开始,从而它们 所有的元素都相同,并且等于平均值/mW汉C。然而,从那时起,矩阵Q 表示图像和组合子帧的结果之间的余量差一理想地Q=0。这样, 一般来说, 该过程通过添加针对子帧p的基值(contribution)开始,然后针对每行找 出最佳列值,之后针对每列找出最佳行值。然后从Q中减去更新的行和列 值,该过程继续至下一个子帧。典型地,执行多次迭代(例如1到100次), 从而针对子帧组的R和C向最佳拟合收敛。所采用的子帧数p是经验选择, 但可以是例如1到1000之间。在该说明书中,技术人员将理解对行和列的参考是可互换的,以及例 如在以上方程系统中,处理确定更新的R^和C^值的顺序可以交换。在上述方程集中,优选地采用所有整数运算,以及优选地R和C值包 括8位值以及Q包括带符号的16位值。然后,尽管R和C的值的确定可 以涉及舍入,但是由于Q利用所舍入的值进行更本文档来自技高网...

【技术保护点】
一种矩阵因式分解硬件加速器,用于确定当相乘时逼近目标矩阵的一对因式矩阵(R;C),所述硬件加速器包括: 输入端,用于接收表示所述目标矩阵的输入数据矩阵; 第一因式矩阵存储器,用于存储第一因式矩阵(R)的行和列数据,所述第一因式矩 阵存储器具有多个第一数据总线,每个第一数据总线都与所述第一因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第一因式矩阵列数据; 第二因式矩阵存储器,用于存储第二因式矩阵(C)的行和列数据,所述第二因式矩阵存储器具有多个第二数 据总线,每个第二数据总线都与所述第二因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第二因式矩阵行数据; 处理器块矩阵,每个处理器块均具有:与所述第一数据总线之一耦合的第一处理器块数据总线,与所述第二数据总线之一耦合的第二处 理器块数据总线,以及结果数据输出端;处理器存储块,用于存储表示所述一对因式矩阵的乘积和所述目标矩阵之间的差的矩阵(Q)的一部分;以及数据处理器,包括至少一个乘加单元,所述数据处理器具有与所述处理器存储块耦合的第一输入端,以及与所述第一和第二处理器块数据总线之一或二者耦合的第二输入端,并具有与所述结果数据输出端耦合的输出端;以及 控制电路,用于控制将数据从所述输入端写入所述处理器块矩阵的所述处理器存储块中,控制从所述第一和第二因式矩阵存储器中读取数据,以提供给所述处理器块 矩阵,以及控制将从所述结果数据输出端得到的数据写回至所述第一和第二因式矩阵存储器,以执行所述矩阵因式分解。...

【技术特征摘要】
【国外来华专利技术】GB 2006-3-23 0605748.31. 一种矩阵因式分解硬件加速器,用于确定当相乘时逼近目标矩阵的一对因式矩阵(R;C),所述硬件加速器包括输入端,用于接收表示所述目标矩阵的输入数据矩阵;第一因式矩阵存储器,用于存储第一因式矩阵(R)的行和列数据,所述第一因式矩阵存储器具有多个第一数据总线,每个第一数据总线都与所述第一因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第一因式矩阵列数据;第二因式矩阵存储器,用于存储第二因式矩阵(C)的行和列数据,所述第二因式矩阵存储器具有多个第二数据总线,每个第二数据总线都与所述第二因式矩阵存储器的相应块相关联,用于访问存储在所述相应块中的第二因式矩阵行数据;处理器块矩阵,每个处理器块均具有与所述第一数据总线之一耦合的第一处理器块数据总线,与所述第二数据总线之一耦合的第二处理器块数据总线,以及结果数据输出端;处理器存储块,用于存储表示所述一对因式矩阵的乘积和所述目标矩阵之间的差的矩阵(Q)的一部分;以及数据处理器,包括至少一个乘加单元,所述数据处理器具有与所述处理器存储块耦合的第一输入端,以及与所述第一和第二处理器块数据总线之一或二者耦合的第二输入端,并具有与所述结果数据输出端耦合的输出端;以及控制电路,用于控制将数据从所述输入端写入所述处理器块矩阵的所述处理器存储块中,控制从所述第一和第二因式矩阵存储器中读取数据,以提供给所述处理器块矩阵,以及控制将从所述结果数据输出端得到的数据写回至所述第一和第二因式矩阵存储器,以执行所述矩阵因式分解。2.如权利要求1所述的矩阵因式分解硬件加速器,其中每个所述处 理器块具有与所述处理器存储块耦合的第三处理器块数据总线,且所述处 理器存储块配置用于存储所述矩阵(Q)的一部分,所述矩阵(Q)的一 部分具有与由所述第一数据总线访问的所述第一因式存储器列数据的行 数据项的数目相对应的第一尺寸,并且具有与由所述第二数据总线访问的所述第二因式存储器行数据的列数据项的数目相对应的第二尺寸。3. 如权利要求2所述的矩阵因式分解硬件加速器,其中所述处理器 块具有一对所述第三处理器块数据总线,用于分别向所述处理器存储块写 入数据和从所述处理器存储块读取数据,并且通过所述第三处理器块数据 总线使所述处理器块形成菊花链。4. 如权利要求l、 2或3所述的矩阵因式分解硬件加速器,其中所述 处理器块具有两个所述结果数据输出端和两个结果数据输入端;且所述处 理器块矩阵包括经由所述结果数据输入端和输出端,沿两个方向形成菊花 链的处理器块矩形矩阵。5. 如前述任一权利要求所述的矩阵因式分解硬件加速器,还包括与 所述第一和第二因式矩阵存储器相关联的第一和第二数学块,用于累加从 所述处理器块矩阵接收的数据,以写回至相应的所述第一和第二因式矩阵 存储器中。6. 如权利要求5所述的矩阵因式分解硬件加速器,其中所述第一和 第二数学块中的每一个均包括主数学块和一个或多个从数学块,并且所述 主数学块包括具有至所述一个或多个从数学块的输出端的除法器单元,且 所述一个或多个从数学块中的每一个均包括具有与所述除法器单元输出 端耦合的输入端的乘法器单元。7. 如权利要求5或6所述的矩阵因式分解硬件加速器,其中所述第 -一和第二因式矩阵存储器包括双端口存储器,以同时允许针对所述处理器 块的读访问和针对所述数学块的写访问。8. 如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 处理器块包括主处理器块和多个从处理器块,并且所述主块配置用于在所 述从处理器块中控制所述处理器块存储器的地址和所述从处理器块中的 所述数据处理器的操作之一或二者。9. 如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 乘加单元具有与所述第一和第二处理器块数据总线耦合的第一和第二乘 法输入端,与所述处理器存储块的读输出端耦合的加法输入端,以及与所 述处理器存储块的写输入端耦合的输出端,且所述数据处理器还包括配置 作为乘-累加单元的乘加单元,具有与所述乘加输出端耦合的第一乘法输入端和与所述第一和第二处理器块数据总线之一选择性耦合的第二乘法输 入端,且具有与所述数据处理器输出端耦合的输出端。10.如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 处理器存储块包括用于存储所存储的矩阵(Q)的所述部分的副本的缓冲 器,且所述数据处理器同时以所存储的矩阵部分的两个不同版本进行操11. 如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 数据处理器配置用于以第一位长的变量进行整数运算,且所述处理器存储 块配置用于存储所述第一位长两倍的整数变量。12. 如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 数据处理器配置用于针对与所存储的矩阵(Q)部分相对应的数据执行以 下操作其中xy、 py和xp分别标记Q、 R和C的列和行。13. 如前述任一权利要求所述的矩阵因式分解硬件加速器,其中所述 矩阵因式分解包括非负矩阵因式分解(NMF)。14. 一种集成电路,包括如前述任一权利要求所述的矩阵因式分解硬 件加速器。15. —种O...

【专利技术属性】
技术研发人员:尤安克里斯托弗史密斯尼古拉斯劳伦斯
申请(专利权)人:剑桥显示技术公司
类型:发明
国别省市:GB[英国]

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

1