CN1198206C - 时分型矩阵计算器 - Google Patents

时分型矩阵计算器 Download PDF

Info

Publication number
CN1198206C
CN1198206C CNB021035253A CN02103525A CN1198206C CN 1198206 C CN1198206 C CN 1198206C CN B021035253 A CNB021035253 A CN B021035253A CN 02103525 A CN02103525 A CN 02103525A CN 1198206 C CN1198206 C CN 1198206C
Authority
CN
China
Prior art keywords
matrix
output
signal
memory
matrix element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB021035253A
Other languages
English (en)
Other versions
CN1369777A (zh
Inventor
张根植
姜凤淳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1369777A publication Critical patent/CN1369777A/zh
Application granted granted Critical
Publication of CN1198206C publication Critical patent/CN1198206C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Complex Calculations (AREA)

Abstract

矩阵计算器计算两个矩阵的乘积。该矩阵计算器包括矩阵元选择部分,用于从将构成相乘结果矩阵的每个矩阵元的子元的、两个矩阵的矩阵元中选择矩阵元,和依次输出所选矩阵元;计算部分,用于相加来自矩阵元选择部分的输出的乘积,和依次输出结果矩阵的矩阵元;和控制信号生成部分,用于生成控制计算部分和存储部分操作定时的控制信号。由于两个矩阵的各个矩阵元被依次选来相乘和相加,因此,可以依次计算作为子元之和的、相乘结果矩阵的矩阵元。于是,由于矩阵计算器可以由一个加法器和一个乘法器,以及一个控制电路构成,因此,电路的尺寸缩小了。

Description

时分型矩阵计算器
                         技术领域
本发明涉及时分型矩阵计算器,尤其涉及通过依次选择矩阵元和对所选矩阵元进行相乘和相加运算,相乘两个矩阵的矩阵计算器。本发明是基于2001年2月5日提出的韩国专利申请第2001-5334号的,把这个专利申请列在这里以供参考。
                         背景技术
一般来说,在象图像信号处理那样的领域中,往往需要将矩阵相乘。为了进行矩阵的相乘运算,矩阵计算器利用数个乘法器和数个加法器获得相乘运算结果的数学表达式。
图1是传统矩阵计算器的方块图,具体显示了对两个3×3方阵进行相乘运算的矩阵计算器。图2显示了图1所示的每个模块的详细结构。
当第一矩阵是X矩阵,和第二矩阵是Y矩阵,X矩阵是
X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 ,
和Y矩阵是
Y 1 Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 Y 8 Y 9
时,X和Y矩阵的乘积是
Z 1 Z 2 Z 3 Z 4 Z 5 Z 6 Z 7 Z 8 Z 9 = X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 Y 1 Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 Y 8 Y 9 =
X 1 Y 1 + X 2 Y 4 + X 3 Y 7 X 1 Y 2 + X 2 Y 5 + X 3 Y 8 X 1 Y 3 + X 2 Y 6 + X 3 Y 9 X 4 Y 1 + X 5 Y 4 + X 6 Y 7 X 4 Y 2 + X 5 Y 5 + X 6 Y 8 X 4 Y 3 + X 5 Y 6 + X 6 Y 9 X 7 Y 1 + X 8 Y 4 + X 9 Y 7 X 7 Y 2 + X 8 Y 5 + X 9 Y 8 X 7 Y 3 + X 8 Y 6 + X 9 Y 9 .
如图1所示,处理上述运算的传统矩阵计算器包括三个模块10、20和30。把X1、X2、X3输入给第一模块10,把X4、X5、X6输入给第二模块20和把X7、X8、X9输入给第三模块30。并且,把Y1至Y9输入给模块10、20和30的每一个。
如图2所示,第一模块10包括分别把Y1至Y9输入给它的九(9)个乘法器11、存储来自乘法器11的输出的九(9)个D触发器13(三(3)组三(3)个为一组的D触发器-上部三个触发器、中部三个触发器和下部三个触发器)、和分别把来自九(9)个D触发器13的三个的输出输入给它的三(3)个加法器15。把X1输入给上部三个乘法器11,把X2输入给中部三个乘法器11,和把X3输入给下部三个乘法器11。把来自各个乘法器11的输出存储在D触发器13中,然后输入到加法器15。加法器15相加输入值,并且分别输出结果Z1、Z2、Z3。
第二和第三模块20和30的结构与图2所示的第一模块10的结构相同。也就是说,第二模块20输出Z4、Z5、Z6,和第三模块30输出Z7、Z8、Z9。
但是,传统矩阵计算器的缺点在于,由于它需要数个乘法器11和加法器15,因此电路体积宠大。也就是说,模块10、20、30总共需要二十七(27)个乘法器11,同时,模块10、20、30总共需要十八(18)个加法器15(因为加法器15相加三个输入,每个加法器15实际上由二个加法器组成,其中的每一个相加两个输入)。
                         发明内容
本发明就是为了克服上述现有技术的问题而作出的。因此,本发明的目的是提供一种通过依次计算相乘结果矩阵的矩阵元,能够减小加法器个数和电路尺寸的矩阵计算器。
上述目的是通过根据本发明对第一矩阵和第二矩阵进行相乘运算的矩阵计算器实现的,该矩阵计算器包括:矩阵元选择装置,第一和第二矩阵的矩阵元将被输入其中,该矩阵元选择装置用于依次选择第一和第二矩阵的输入矩阵元的每一个,所述第一和第二矩阵的输入矩阵元将构成相乘结果矩阵的每个矩阵元的每个子元的乘数和被乘数,和用于依次输出所选第一和第二矩阵的输入矩阵元的所述每一个;计算装置,用于通过依次相加来自矩阵元选择装置的输出的乘积,依次计算相乘结果矩阵的所述每个矩阵元;存储装置,用于存储来自计算装置的输出;和控制信号生成装置,用于生成控制计算装置和存储装置操作定时的控制信号,其中,该计算装置包括:一个乘法器,用于相乘来自矩阵元选择装置的输出;第一存储器,用于临时存储来自乘法器的输出;第二存储器;和一个加法器,用于将存储在第一存储器中的值与存储在第二存储器中的值相加,并且把相加运算的结果值输入到第二存储器。
矩阵元选择装置包括把第一和第二矩阵的各个矩阵元并行地输入给它的多路复用器;和控制装置,用于生成选择来自多路复用器的输出的选择信号。
控制信号生成装置包括数个触发器,用于生成把从控制装置输出的所述选择信号分别延迟预定时钟脉冲个数的信号,然后把生成的信号输入到计算装置和存储装置。存储装置包括数个寄存器,用于依次存储来自计算装置的输出。
根据本发明,通过依次选择、相乘和相加两个被乘矩阵的矩阵元,依次计算出组成相乘结果矩阵的子元的和的矩阵元。因此,矩阵计算器可以用一个加法器、一个乘法器、和用于控制该加法器和该乘法器的一个控制电路构成,从而使电路尺寸变小。
                         附图说明
通过参照附图详细描述本发明的优选实施例,本发明的上述目的和特征将更加清楚,在附图中,
图1是传统矩阵计算器的方块图;
图2是更详细地显示图1所示的第一模块的结构的方块图;
图3是显示根据本发明的矩阵计算器的方块图;
图4是更详细地显示图3所示的矩阵元选择部分的方块图;
图5是更详细地显示图3所示的控制信号生成部分的方块图;
图6是更详细地显示图3所示的计算部分的方块图;和
图7是更详细地显示图3所示的存储部分的方块图。
                       具体实施方式
下面参照附图给出根据本发明优选实施例的详细描述。
首先,为了说明根据本发明的矩阵计算器的计算原理,下面描述将矩阵相乘的结果矩阵分解成各个矩阵元的的方法。
如上所述,作为X矩阵和Y矩阵相乘的结果矩阵的Z矩阵是
Z 1 Z 2 Z 3 Z 4 Z 5 Z 6 Z 7 Z 8 Z 9 = X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 Y 1 Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 Y 8 Y 9 =
X 1 Y 1 + X 2 Y 4 + X 3 Y 7 X 1 Y 2 + X 2 Y 5 + X 3 Y 8 X 1 Y 3 + X 2 Y 6 + X 3 Y 9 X 4 Y 1 + X 5 Y 4 + X 6 Y 7 X 4 Y 2 + X 5 Y 5 + X 6 Y 8 X 4 Y 3 + X 5 Y 6 + X 6 Y 9 X 7 Y 1 + X 8 Y 4 + X 9 Y 7 X 7 Y 2 + X 8 Y 5 + X 9 Y 8 X 7 Y 3 + X 8 Y 6 + X 9 Y 9 .
正如上面表达式所显示的,获得结果矩阵的各个矩阵元如下:
Z1=X1Y1+X2Y4+X3Y7
Z2=X1Y2+X2Y5+X3Y8
Z3=X1Y3+X2Y6+X3Y9
Z4=X4Y1+X5Y4+X6Y7
Z5=X4Y2+X5Y5+X6Y8
Z6=X4Y3+X5Y6+X6Y9
Z7=X7Y1+X8Y4+X9Y7
Z8=X7Y2+X8Y5+X9Y8
Z9=X7Y3+X8Y6+X9Y9
正如上面表达式所显示的,结果矩阵的每个矩阵元(Z1至Z9)是三个子元的和(例如,矩阵元Z1是子元X1Y1、X2Y4、和X3Y7的和)。并且,每个子元是X矩阵的一个矩阵元和Y矩阵的一个矩阵元的乘积。考虑到这种情况,在本发明中,依次计算矩阵元Z1至Z9的子元,然后,通过累加子元计算矩阵元Z1至Z9。
图3是根据本发明的矩阵计算器的方块图。根据本发明的矩阵计算器包括把被乘数,即X和Y矩阵的矩阵元X1至X9和矩阵元Y1至Y9同时输入给它的矩阵元选择部分70,用于依次选择和输出必要的矩阵元;计算部分40,用于对矩阵元选择部分70选择的矩阵元进行某种运算;存储部分60,用于存储计算部分40的计算结果,和最后输出结果矩阵的矩阵元;和控制信号生成部分50,用于生成控制计算部分40和存储部分60的控制信号。
图4是更详细地显示图3所示的矩阵元选择部分70的结构的方块图。矩阵元选择部分70包括多路复用器73,用于从输入矩阵元中选择和输出两个矩阵元;和控制模块71,用于生成控制多路复用器73的选择操作的选择信号sel_l和sel_h。
把第一和第二矩阵(即X和Y矩阵)的所有矩阵元X1至X9和矩阵元Y1至Y9同时输入给多路复用器73。多路复用器73受控制模块71生成的选择信号sel_l和sel_h驱动,并且根据选择信号sel_l和sel_h从第一矩阵的矩阵元X1至X9中选择一个矩阵元和从第二矩阵的矩阵元Y1至Y9中选择一个矩阵元。选择信号sel_l和sel_h在来自时钟(未示出)的每个脉冲上发生改变,可以把时钟安装在控制模块71中,也可以单独配备时钟,以控制控制模块71的顺序操作。因此,多路复用器73在每个时钟脉冲上选择不同的矩阵元,并且输出所选的矩阵元。把来自多路复用器73的两个输出分别输入到D触发器76,D触发器76把多路复用器73的输出延迟一个时钟脉冲,然后输出它。
驱动多路复用器73的两个选择信号sel_h和sel_l由高选择信号sel_h和低选择信号sel_l组成。高选择信号sel_h是指示作为相乘结果矩阵的矩阵Z的矩阵元之一的信号。低选择信号sel_l是指示高选择信号sel_h所指示的矩阵元的子元之一的信号。例如,如果高选择信号sel_h是2,和低选择信号sel-l是3,那么,驱动多路复用器73输出Z2的第三个子元,即X3Y8,因此,矩阵元选择部分70选择和输出X3和Y8。
作为开始驱动控制模块71的开始信号,例如,可以使用每半帧图像信号生成一次的垂直同步信号(sync)生成的开始信号。当把开始信号输入到控制模块71时,高选择信号sel_h在第一时钟脉冲上递增一(1)(高选择信号的初始值是0),同时,低选择信号sel_l也递增一(1)(低选择信号的初始值也是0)。低选择信号sel_l每个时钟脉冲都递增一(1),于是,每个时钟脉冲依次选择和输出第一矩阵元Z1的每个子元。高选择信号sel_l每三个时钟脉冲递增一(1)。于是,当完成有关第一矩阵元Z1的三个子元X1Y1、X2Y4、X3Y7的依次输出时,高选择信号sel_1增加到指示第二矩阵元Z2的二(2)。随着上面处理不断重复,依次输出用在计算矩阵Z的矩阵元的子元过程中的、第一和第二矩阵的矩阵元。
同时,除了选择信号sel_h和sel_l之外,控制模块71还生成控制控制信号生成部分50的控制信号(flag,stop)。‘flag’信号在每次计算矩阵Z的一个矩阵元结束时为一个时钟脉冲生成‘高’脉冲,以便指示计算一个矩阵元已经完成。‘stop’信号在计算矩阵Z的九(9)个矩阵元结束时为一个时钟脉冲生成一个‘高’脉冲,以便指示计算矩阵Z已经完成。并且,把‘stop’信号反馈到控制模块71,以通过‘高’脉冲初始化控制模块71。把控制信号(flag,stop)和高选择信号sel_h输入到控制信号生成部分50。
图5是更详细地显示图3所示的控制信号生成部分50的结构的方块图。控制信号生成部分50包括第一延迟部分51,用于延迟高选择信号sel_h;第二延迟部分53,用于延迟‘flag’信号;和第三和第四延迟部分55和57,用于延迟‘stop’信号(图3至6中的参考字母‘d’表示延迟信号,和‘d’前面的数字表示延迟时钟脉冲的个数。例如,‘_3d’表示将信号延迟了三个时钟脉冲)。
第一延迟部分51包括三个D触发器和生成把高选择信号sel_h延迟了三个时钟脉冲的信号sel_h_3d。第二延迟部分53包括二个D触发器和生成把‘flag’信号延迟了二个时钟脉冲的信号flag_2d。第三延迟部分55包括三个D触发器和生成把‘stop’信号延迟了三个时钟脉冲的信号stop_3d。第四延迟部分57包括一个与第三延迟部分55串联的D触发器,和生成把来自第三延迟部分55的输出信号stop_3d延迟了一个时钟脉冲的信号stop_4d。
图6是更详细地显示图3所示的计算部分40的结构的方块图。计算部分40包括把来自矩阵元选择部分70的多路复用器73的两个输出输入给它乘法器41;第一存储器43,用于存储来自乘法器41的输出;与第一存储器相邻地安装着的第二存储器47;和加法器45,用于相加来自第一和第二存储器43和47的输出,并且把所得的和输入到第二存储器47。第一和第二存储器43和47包括D触发器DFF,存储一个时钟脉冲的输入值,并且输出它。
在来自控制信号生成部分50的输出信号当中,信号stop_3d输入到第一存储器43,并且,当信号stop_3d成为‘高’脉冲时,初始化第一存储器43(把存储在D触发器中的值复位成0)。并且,在从控制信号生成部分50输出的信号当中,信号flag_2d和stop_4d输入到第二存储器47,并且,当这两个信号之一成为‘高’脉冲时,初始化第二存储器47(把存储在D触发器中的值复位成0)。
图7是显示图3所示的存储部分60的结构的图形。存储部分60包括9×1寄存器。在来自控制信号生成部分50的输出当中,信号sel_h_3d和flag_2d输入到存储部分60,和存储部分60受作为输入的信号sel_h_3d和flag_2d控制。来自计算部分40的输出Z依次输入到存储部分60,并且在来自控制信号生成部分50的信号sel_h_3d和flag_2d的控制下,存储部分60每隔二个时钟脉冲就移位矩阵元Z1至Z9,存储结果,和在完成了存储之后并行地输出同一结果。
下面描述根据本发明的矩阵计算器的运算。
把第一和第二矩阵(即,X和Y矩阵)的各个矩阵元X1至X9和Y1至Y9同时输入到矩阵元选择部分70的多路复用器73。当把开始信号输入到控制时钟71时,控制时钟71把原来都设为‘零’的高选择信号和低选择信号sel_h和sel_l递增一。因此,选择了计算矩阵Z的第一矩阵元Z1的第一子元所需的矩阵元,和多路复用器73输出所选的矩阵元X1和Y1。
伴随着每个时钟脉冲,低选择信号sel_l都递增一,于是,多路复用器73依次输出构成第一矩阵元Z1的子元的被乘数的、矩阵X和Y的矩阵元。当输出了第一矩阵元Z1的三个子元时,高选择信号sel_h递增一,和低选择信号sel_l再次从值‘一’开始递增。结果是,在每个时钟脉冲中依次输出构成第二矩阵元Z2的子元的被乘数的、矩阵X和Y的矩阵元。如上所述,低选择信号sel_l的值每个时钟脉冲都递增一,并且从一到三重复变化,而高选择信号sel_h的值每隔二个时钟脉冲递增一,并且从一变化到九。因此,依次输出了计算矩阵Z所需的矩阵元。
每当完成矩阵Z的一个矩阵元的子元的输出时,‘flag’信号在一个时钟脉冲内生成‘高’脉冲,而每当完成矩阵Z的所有矩阵元Z1至Z9的计算时,‘ stop’信号在一个时钟脉冲内生成‘高’脉冲。
把来自多路复用器73的输出依次输入到计算部分40的乘法器41,乘法器41相乘来自多路复用器73的输出,和依次计算矩阵Z的矩阵元Z1至Z9的子元X1Y1,......。把从乘法器41输出的子元存储在第一存储器43中。然后,通过加法器45把存储在第一存储器43中的值存储在第二存储器47中。这里,第二存储器47的初始值被设置成零。由于把来自第一存储器43的输出和来自本身的输出的和输入给第二存储器47,因此,乘法器41依次计算的子元的总和存储在第二存储器47中。
由于来自多路复用器73的输出通过D触发器76和第一存储器73输入到第二存储器47,因此,在从输出矩阵X和Y的矩阵元开始延迟了两个时钟脉冲之后,把乘法器41计算的子元输入给第二存储器47。由于只有在完成了矩阵Z的一个矩阵元(例如,Z1)的所有子元(例如,X1Y1、X2Y4、X3Y7)的输出之后,‘flag’信号才生成‘高’信号,因此,在存储了三个子元之和的一个矩阵元之后,复位把flag’信号延迟了二个时钟脉冲的信号flag_2d。于是,每当完成矩阵Z的一个矩阵元的计算时,把存储在第二存储器47中的值复位成零,为计算下一个矩阵元作好准备,此时,在复位第二存储器47之前把存储在第二存储器74中的值输入到存储部分60。
当上面处理重复九次时,所有矩阵元Z1至Z9的值都被计算部分依次计算出来,在完成了计算之后,‘stop’信号变成‘高’脉冲。于是,在生成‘stop’信号时复位控制模块71,并且,在延迟三个和四个时钟脉冲之后,分别把第一和第二存储器43和47复位成零。于是,实现了初始化,以便对矩阵的下一个输入进行相乘运算。
从计算部分40依次输出的矩阵元Z1至Z9的值输入到由9×1寄存器组成的存储部分60。把把高选择信号sel_h延迟三个时钟脉冲得到的信号sel_h_3d和把‘flag’信号延迟二个时钟脉冲得到的信号flag_2d输入给存储部分60。
信号flag_2d移位存储部分60中的每个寄存器的值。于是,随着计算部分40的第二存储器47的值被输入到存储部分60的寄存器的最前部,存储部分60中的每个寄存器的值同时被移位。并且,随着这种处理不断重复,存储在第二存储器47中的各个矩阵元的值被依次存储在寄存器中。
信号sel_h_3d输出存储在存储部分60的寄存器中的值。此时,当信号sel_h_3d成为1001(2),即9时,输出存储部分60的寄存器的值。于是,当所有依次输入的矩阵元Z1至Z9的值被存储在寄存器中时,并行地输出Z1至Z9的值。结果是,矩阵Z,即矩阵X和Y的相乘结果被计算出来。这里,高选择信号sel_h被延迟了三个时钟脉冲,和‘flag’信号被延迟二个时钟脉冲,以便使依次输入的矩阵元Z1至Z9的移位时间与矩阵元Z1至Z9的输出时间同步。
尽管图3至7示范性地显示了对两个3×3方阵进行相乘运算的矩阵计算器,但是,应该明白,本发明可以应用于其它类型矩阵的计算。例如,通过把到矩阵元选择部分70的多路复用器73的输入的个数设置成八(8),和调整适合于4×4矩阵相乘的、控制信号的延迟时钟脉冲个数,可以实现相乘4×4矩阵的矩阵计算器。借助于适当的应用和对延迟时钟脉冲个数作必要调整,也可以容易地实现计算非方阵的矩阵计算器。
根据本发明,通过依次输出和相加作为被乘数的各个矩阵元的子元,可以依次进行两个矩阵的相乘。于是,借助于由一个乘法器和一个加法器组成的计算部分,以及选择和控制输入到计算部分的值的控制电路,可以构造硬件简单和尺寸小的矩阵计算器。
虽然已经对本发明的优选实施例进行了描述,但本领域的普通技术人员应该明白,本发明不应该仅限于所述的优选实施例,而是在所附权利要求书所限定的本发明的精神和范围中,可以进行各种各样的改变和改进。

Claims (4)

1.一种对第一矩阵和第二矩阵进行相乘运算的矩阵计算器,包括:
矩阵元选择装置,第一和第二矩阵的矩阵元将被输入其中,该矩阵元选择装置用于依次选择第一和第二矩阵的输入矩阵元的每一个,所述第一和第二矩阵的输入矩阵元将构成相乘结果矩阵的每个矩阵元的每个子元的乘数和被乘数,和用于依次输出所选第一和第二矩阵的输入矩阵元的所述每一个;
计算装置,用于通过依次相加来自矩阵元选择装置的输出的乘积,依次计算相乘结果矩阵的所述每个矩阵元;
存储装置,用于存储来自计算装置的输出;和
控制信号生成装置,用于生成控制计算装置和存储装置操作定时的控制信号,
其中,该计算装置包括:
一个乘法器,用于相乘来自矩阵元选择装置的输出;
第一存储器,用于临时存储来自乘法器的输出;
第二存储器;和
一个加法器,用于将存储在第一存储器中的值与存储在第二存储器中的值相加,并且把相加运算的结果值输入到第二存储器。
2.根据权利要求1所述的矩阵计算器,其中,矩阵元选择装置包括:
多路复用器,第一和第二矩阵的各个矩阵元将并行地被输入其中;和
控制装置,用于生成选择来自多路复用器的输出的选择信号。
3.根据权利要求2所述的矩阵计算器,其中,控制信号生成装置包括数个触发器,用于生成把从控制装置输出的所述选择信号分别延迟预定个时钟脉冲的信号,然后把生成的信号输入到计算装置和存储装置。
4.根据权利要求3所述的矩阵计算器,其中,存储装置包括数个寄存器,用于依次存储来自计算装置的输出。
CNB021035253A 2001-02-05 2002-02-05 时分型矩阵计算器 Expired - Fee Related CN1198206C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR5334/01 2001-02-05
KR5334/2001 2001-02-05
KR10-2001-0005334A KR100416250B1 (ko) 2001-02-05 2001-02-05 시분할 방식의 행렬연산기

Publications (2)

Publication Number Publication Date
CN1369777A CN1369777A (zh) 2002-09-18
CN1198206C true CN1198206C (zh) 2005-04-20

Family

ID=19705325

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021035253A Expired - Fee Related CN1198206C (zh) 2001-02-05 2002-02-05 时分型矩阵计算器

Country Status (6)

Country Link
US (1) US6965909B2 (zh)
JP (1) JP2002328915A (zh)
KR (1) KR100416250B1 (zh)
CN (1) CN1198206C (zh)
DE (1) DE10204647A1 (zh)
GB (1) GB2377292B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006032941A1 (en) * 2004-09-22 2006-03-30 Nokia Corporation Method and apparatus for generating pseudo random numbers
US7441599B2 (en) 2005-11-18 2008-10-28 Chevron U.S.A. Inc. Controlling the pressure within an annular volume of a wellbore
GB0618921D0 (en) * 2006-09-26 2006-11-08 Trw Ltd Matrix multiplication
CN100465876C (zh) * 2007-07-12 2009-03-04 浙江大学 基于单fpga的矩阵乘法器装置
CN100449522C (zh) * 2007-07-12 2009-01-07 浙江大学 基于多fpga的矩阵乘法并行计算系统
US7697233B1 (en) 2008-10-21 2010-04-13 Western Digital Technologies, Inc. Disk drive comprising a servo accelerator implementing state space equations for a plurality of task objects
US7656607B1 (en) 2008-10-21 2010-02-02 Western Digital Technologies, Inc. Disk drive comprising a servo accelerator employing a dual state variable memory
JP5840994B2 (ja) * 2012-03-27 2016-01-06 富士通株式会社 行列演算装置
US9558156B1 (en) * 2015-11-24 2017-01-31 International Business Machines Corporation Sparse matrix multiplication using a single field programmable gate array module
US10169298B1 (en) 2017-05-11 2019-01-01 NovuMind Limited Native tensor processor, using outer product unit
KR102356708B1 (ko) * 2017-09-28 2022-01-27 삼성전자주식회사 컨볼루션 연산을 수행하는 연산 장치 및 연산 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5058630U (zh) * 1973-09-27 1975-05-31
JPS51141552A (en) * 1975-05-31 1976-12-06 Toshiba Corp Multi-dimension parallel processor
JPH0738217B2 (ja) * 1985-04-18 1995-04-26 ファナック株式会社 空間積和演算装置
JPS61296473A (ja) * 1985-06-25 1986-12-27 Mitsubishi Electric Corp 行列演算回路
JPH0277967A (ja) * 1988-09-14 1990-03-19 Matsushita Electric Ind Co Ltd マトリックス乗算器
JPH0298777A (ja) * 1988-10-05 1990-04-11 Nec Corp 並列積和演算回路及びベクトル行列積演算方法
US5038312A (en) * 1988-11-14 1991-08-06 Nec Corporation Data processing system capable of performing vector/matrix processing and arithmetic processing unit incorporated therein
US5021987A (en) * 1989-08-31 1991-06-04 General Electric Company Chain-serial matrix multipliers
JPH03167664A (ja) * 1989-11-28 1991-07-19 Nec Corp マトリクス演算回路
JP2945487B2 (ja) * 1990-12-26 1999-09-06 株式会社日立製作所 行列乗算器
US5206822A (en) * 1991-11-15 1993-04-27 Regents Of The University Of California Method and apparatus for optimized processing of sparse matrices
JPH05266060A (ja) * 1992-03-19 1993-10-15 Fujitsu Ltd マトリクス演算回路
US5311459A (en) * 1992-09-17 1994-05-10 Eastman Kodak Company Selectively configurable integrated circuit device for performing multiple digital signal processing functions
US5867414A (en) * 1994-08-17 1999-02-02 Industrial Technology Research Institute Compact pipelined matrix multiplier utilizing encoding and shifting circuit configurations
JP3652018B2 (ja) * 1996-07-22 2005-05-25 シャープ株式会社 行列演算装置

Also Published As

Publication number Publication date
JP2002328915A (ja) 2002-11-15
GB2377292A (en) 2003-01-08
GB0202641D0 (en) 2002-03-20
CN1369777A (zh) 2002-09-18
GB2377292B (en) 2003-06-25
DE10204647A1 (de) 2002-09-26
KR100416250B1 (ko) 2004-01-24
KR20020065017A (ko) 2002-08-13
US6965909B2 (en) 2005-11-15
US20020138536A1 (en) 2002-09-26

Similar Documents

Publication Publication Date Title
US11537687B2 (en) Spatial locality transform of matrices
US20210049463A1 (en) Low precision efficient convolutional neural network inference device that avoids multiplication without loss of accuracy
CN1198206C (zh) 时分型矩阵计算器
US8051124B2 (en) High speed and efficient matrix multiplication hardware module
CN109144469B (zh) 流水线结构神经网络矩阵运算架构及方法
JP2018508797A (ja) データ取得モジュール及び方法、データ処理ユニット、駆動器と表示装置
WO2021120711A8 (zh) 一种矩阵乘法器、数据处理方法、集成电路器件及处理器
Gong et al. High-throughput FPGA implementation of 256-bit Montgomery modular multiplier
CN1685309A (zh) 计算上高效数学引擎
US7680872B2 (en) Canonical signed digit (CSD) coefficient multiplier with optimization
CN113032723A (zh) 一种矩阵乘法器的实现方法及矩阵乘法器装置
US20080228845A1 (en) Apparatus for calculating an n-point discrete fourier transform by utilizing cooley-tukey algorithm
JPS6226723B2 (zh)
TWI841631B (zh) 用於矩陣的空間地域轉換之方法及處理器電路
CN1553310A (zh) 高速低功耗乘法器的对称分割算法及电路结构
JPH0535867A (ja) 画像処理装置
Manikandababu et al. Integration of a Full Wavelet-Based Image Compression System on a Field-Programmable Gate Array
US6584483B1 (en) System and method for efficient hardware implementation of a perfect precision blending function
Kumar et al. Implementation and Performance Analysis of Reconfigurable Montgomery Modular Multiplier
JP3230354B2 (ja) 高速10進乗算器
JP3226823B2 (ja) 高精度高桁乗算装置
ROLKO et al. APLIKACE ZPRACOVÁNÍ DIGITÁLNÍCH SIGNÁLŮ VYUŽÍVAJÍCÍ SYSTÉM ZBYTKOVÝCH TŘÍD
CN1254988A (zh) 用于对有限输入数据进行滤波的数字滤波器
KR20040100044A (ko) 고속의 저전력 이산 코사인 변환 장치 및 방법
Valenzano FAST AND ACCURATE MATRIX TRIANGULARIZATION USING AN ITERATIVE STRUCTURE

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050420

Termination date: 20100205