CN1104695C - 半导体集成电路 - Google Patents
半导体集成电路 Download PDFInfo
- Publication number
- CN1104695C CN1104695C CN95104392A CN95104392A CN1104695C CN 1104695 C CN1104695 C CN 1104695C CN 95104392 A CN95104392 A CN 95104392A CN 95104392 A CN95104392 A CN 95104392A CN 1104695 C CN1104695 C CN 1104695C
- Authority
- CN
- China
- Prior art keywords
- data
- data line
- circuit
- memory cell
- cell array
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
Abstract
能以高并行度高速进行使用了二维数据运算处理的半导体集成电路,该集成电路具有二维存储阵列(MAR)、通过选择二维存储阵列的字线经数据线并行传送数据的并行数据传送电路(TRC),用从TRC传送的数据并行进行运算处理的运算电路群(PE),各运算电路能通过TRC存取上述二维存储阵列中连续的多条字线和数据线,多个相邻的运算电路具有重迭的二维存储阵列的数据线范围,故能对存储在二维存储阵列中的二维数据并行地进行卷积等运算。
Description
本发明涉及使用了二维存储单元阵列的半导体集成电路,特别是,给出了适于实时进行卷积运算等数字滤波处理或实时进行动态图象的动态矢量搜索运算等使用了二维数据运算的半导体集成电路。
使用二维数据的信息处理有多种形式,特别是,在图象处理中,由于CRT画面上的象素排列为二维,因而要频繁进行二维数据的运算。具有代表性的有二维滤波处理。
图2示出了现有技术的进行图象处理的半导体集成电路。该器件适合进行二维滤波处理。Yoshiki Kobayashi在1987年2月的ISSCCDigest of Technical Papers第182—183页上刊登的题为“A BiCMOSImage Processor with Line Memories”的论文中记述了该装置。
下面,说明图2的半导体集成电路的概要。图2(a)是在半导体芯片上形成的上述半导体集成电路的框图。如图2(a)所示,该半导体集成电路由下列电路构成:对输入的图象数据进行阈值处理等前置处理的前置处理运算电路PPU;存储1行图象并产生1行延迟的行存储器LM1、LM2;移位寄存器SR;存储滤波加权系数的数据存储器DM;运算电路PE;含有加法电路的连接单元LU1、LU2等。图2(b)是表示把图2(a)的半导体集成电路用于3×3的空间滤波运算时运算方法的示例框图。图2(b)中,F32,F(x+i)(y+j)分别表示输入的一帧图象中第3行第2列象素的值(灰白值)和第(x+i)行第(y+j)列象素的值。另外,Wij、W-1-1…W11表示滤波系数,Rxy表示运算输出的一帧图象中第x第行、第y列象素的值。用该图说明图2(a)的半导体集成电路的动作。如所熟知的,3×3的空间滤波计算中,Rxy的值如图2(b)所示的公式,表示为输入图象的象素值与滤波系数的积和运算。为求出Rxy的值,需要以输入帧图象的第x行、第y列的象素为中心的9个输入图象的象素值。被输入的图象数据首先输入到前置处理运算电路PPU中。由于滤波处理中没有必要实施阈值处理,因此,输入的图象数据被原样不变地传送到移位寄存器SR和行存储器LM1中。行存储器LM1的输出信号是被延迟了1行后的输出信号。由于行存储器LM1的输出被输入到行存储器LM2中,所以再次延迟1行后输出。这样,3×3的空间滤波(filter)计算中必要的输入图象的象素值就按行存入不同的移位寄存器中。图2(b)中,示出了以F22为中心的9个输入图象的象素存入移位寄存器的状态。存入移位寄存器中的9个象素值顺序地输入运算电路PE1、PE2、PE3,计算与对应系数之积。把乘法运算的结果输入到连接单元LU1、LU2中进行加法运算,这时就求出Rxy的值。这样,在图2所示的现有技术的半导体集成电路中利用基于行存储器的延迟,把全部3行的象素值输入到3个运算电路,并行处理3个乘法运算。由此能够实行空间滤波的高速处理。若根据上述文献用基于1.8微米的加工技术的BiCMOS设备进行了试制,其结果表明对于512×512象素构成的电视图象能够实时地处理3×3的空间滤波的计算。
本发明要解决的第1个任务是给出以高并行度进行使用了二维数据的运算的半导体集成电路,第2个任务是以高集成度把能够存储大量二维数据的二维存储单元阵列以及以高并行度进行使用了二维数据的运算的多个运算电路集成在半导体芯片上。
如上所述,图2所示的现有技术的半导体集成电路内,在空间滤波的计算中通过3个3个并行地进行1个输出象素的计算中所必要的9个乘法运算而实现高速处理。然而,若考虑到将来就有必要进一步提高并行度且高速化。
若使电视、工作站、个人计算机、游戏机等的图象进一步高品质化,则就要增加1帧的象素数,使象素的频率更高。另外,以更高的画质为目标就要求复杂的处理,因而运算量增大,就要求运算速度越来越高。还有,预计在不久的将来,将广泛使用具有通信功能,图象显示功能的便携机。可以设想,在这样的机器中有必要对由通信功能所接收的动态图象的数据进行各种处理,进行鲜明的画面显示。在这样的机器中,作为电源装置搭载了低电压电池,由此驱动机器。然而,一般若降低电源电压,则半导体集成电路的速度大致与此成比例地下降,所以,在现有技术的半导体集成电路中就存在运算速度不够高的可能性。因而,期望有并行度更高、能够高速进行二维数据运算的半导体集成电路。
另外,在处理图象的装置中,为同时进行用CPU生成、加工图象和向CRT描绘图象,则要使用至少存储一个画面的数据的所谓图象存储器。把该图象存储器和高度并行地进行二维数据运算的装置集成在同一块半导体芯片上有助于处理图象装置的小型化,所以,对便携机来说是特别期望的。
如果根据本发明代表性的实施例,则本发明的半导体集成电路的特征在于:具有存储单元阵列(MAR)、并行数据传送电路(TRC)和多个运算电路(PE1-PEn),其中,存储单元阵列具备多条数据线(DG)、与该多条数据线(DG)相交叉的多条字线(W1-W3)以及设在上述多条数据线(DG)和多条字线(W1-W3)所需的交点上的多个存储单元;并行数据传送电路并行地传送来自上述多条数据线(DG)的多个数据;多个运算电路以由该并行数据传送电路(TRC)传送的上述多个数据作为输入信号;
对于上述多个运算电路的各个运算电路,通过顺序选择地连接上述多条数据线(DG)中两条以上的数据线,上述并行数据传送电路(TRC)能把上述多个数据中的两上以上的数据传送到上述多个运算电路(PE1-PEn)的各运算电路,与此同时,上述多个运算电路(PE1-PEn)的相邻运算电路也能够从同一条数据线输入相同的数据。
由于能够存取的二维存储阵列的数据具有重迭的范围,所以,相邻的运算电路能够进行用某象素近傍的象素值计算该象素值的图象滤波运算。例如,3×3的滤波器中,为得到1个输出象素的结果就需要输入二维分布的周围的3×3个象素,而把同一行的相邻象素输入到1个运算电路就能够进行行方向的滤波运算。另外,如果运算电路被设计为:使用通过选择多条字线中2条以上的字线读出上述多个数据线群中1个数据线群这样的多个数据群,进行运算,则把3×3个输入象素中垂直于行方向的象素输入到1个运算电路就能够进行滤波运算。从而,把3×3的象素输入到1个运算电路中,就能够进行滤波运算。进而,相邻的运算电路由于通过并行数据传送电路其能够存取的数据线范围具有重迭,所以,多个运算电路能够并行处理卷积运算和使用了3×3滤波等的二维数据的运算。
图1是示出基于本发明的半导体集成电路(3×3空间滤波器)结构的实施例。
图2是现有技术的使用了行存储器的半导体集成电路。
图3是示出基于本发明的半导体集成电路(5×5空间滤波器)结构的实施例。
图4是表示在图1的实施例中,为缓和运算电路的布图间距的第1结构的实施例。
图5是示出图4的实施例中并行数据传送电路结构的实施例。
图6是示出图4、5实施例中并行数据传送电路控制方法的实施例。
图7是示出图1的实施例中,为缓和运算电路的布图间距的第2结构的实施例。
图8是示出图7的实施例中并行数据传送电路结构的实施例。
图9是示出图7、8的实施例中并行数据传送电路控制方法的实施例。
图10是示出应用了本发明的动态矢量运算装置结构的实施例。
图11是示出图10的实施例中最小距离运算部件结构的实施例。
<实施例>
图1是表示基于本发明的半导体器件的实施例,示出了对于实时输入的图象数据进行3×3空间滤波运算的器件的结构。图1中示出了本实施例的结构、图象帧的象素、器件内存储单元,并由此说明了并行数据传送电路的控制方法。若根据本实施例,则能够并行进行输出图象帧的每行的空间滤波运算。如图所示,本实施例的构成如下:用于逐行存入输入象素Fxy并且并行写入到二维存储阵列MAR的串行存取存储器SAM1,用于把从串行存取存储器SAM1输出的象素值存储为3行的二维存储阵列MAR,用于并行读出二维存储阵列MAR中1行象素的值并锁存的读出放大器SA,把读出的值并行地传送到运算电路群的并行数据传送电路TRC,存储滤波系数的数据存储器DM以及并行进行积和运算的运算电路群PE1、PE2、…PEn。下面,用图1说明本实施例。
首先,由P位构成的输入图象顺序地输入到串行存取存储器SAM1中。输入图象的第1行象素值F11、F12、…,F1k一旦存入就被并行地写入到二维存储阵列MAR的字线W1。接着,同样地,输入图象的第2、第3行象素值,每存入串行存取存储器SAM1就被写入到字线W2、W3。按上述过程,为计算输出图象帧的1行象素值所必需的3行数据就已在二维存储阵列中准备完毕。这时,输入图象帧和二维存储阵列MAR的字线上数据之间的对应关系如左下方所示。
在下1行的数据被写入串行存取存储器SAM1期间,并行计算输出象素帧的第2行象素值R11、R12、…R1k。这时,并行数据传送电路的控制如图1右下方所示执行9个运算周期。首先,在第1周期,读出存储在二维存储阵列MAR的字线W1上的1行输入图象,通过数据线群DG,锁存在读出放大器SA中。在这里,构成并行传送电路TRC的选择器SEL的开关L、C、R中,接通开关L。由此,通过并行传送电路TRC把输入象素F11传送到运算电路PE1,输入象素F12传送到运算电路PE2,…,输入象素F1k-2传送到运算电路PEn中。同时,从数据存储器DM读出加权系数C-1-1,进行和输入到运算电路中的输入象素相乘的运算。接着,在第2个周期,闭合选择器SEL中的开关C,通过并行传送电路把输入象素F12传送到运算电路PE1中,把输入象素F13传送到运算电路PE2,…,把输入象素F1k-1传送到运算电路PEn中,进行加权系数C-10和输入象素间的相乘运算。在第3个周期,选择器SEL内的开关R闭合,同样地通过并行传送电路,把输入象素F13、F14…F1k分别输入到运算电路PE1、PE2、…,PEn中,进行加权系数C-11和输入象素之间的相乘运算。这样,在使用了存储在二维存储阵列MAR的字线W1的输入图象后,再选择字线W2读出1行输入图象,锁存在读出放大器SA中。而且,在第4个周期,闭合选择器SEL中的开关L,把输入象素F21、F22、…,F2k-2分别传送到运算电路PE1、PE2、…,PEn中,进行和加权系数C0-1的相乘运算并加上前面已计算出的值。接着,在第5个周期,闭合选择器SEL中的开关C,把输入象素F22、F23、…,F2k-1分别输入到运算电路PE1、PE2、…、PEn中,进行和加权系数C00的相乘运算并加上前面已计算出的值。同样,在第6个周期,闭合选择器SEL中的开关R,把输入象素F23、F24、…,F2k分别输入到运算电路PE1、PE2、…,PEn中,进行和加权系数C01的相乘运算并加上前面已计算出的值。进而,在第7到第9周期中,若选择字线3进行同样的计算,则运算电路PE1、PE2、…,PEn中就求出了输出帧中第2行象素的值R22、R23、…,R2k-1。把这些值并行传送到串行存取存储器SAM2,顺序输出。另外,对于端部的象素,由于没有所需的输入象素,故可如图示那样传送。为进行输出图象下一行的运算则重复同样的动作即可。即,一旦在串行存取存储器SAM1中存入1行的象素信息,则就把这1行的象素信息传送到二维存储阵列中最先重写的字线,在下行象素信息写入到串行存取存储器SAM1的期间进行输出图象1行的运算。这样,根据本实施例就能够并行地实时处理输出帧中同一行上多个图象的二维3×3空间滤波运算。各运算电路最好在输入1行图象的时间内结束运算和数据传送。这样,与在每次输入1个象素的时间内进行运算的现有技术相比,加长了可用于运算的时间。换言之,在输入象素的频率很高时也能够进行实时处理。
另外,如上述所说明的,本实施例中,能够通过并行数据传送电路TRC把锁存在1个读出放大器中的信息传送到不同的运算电路。这样,在运算中就不使锁存在读出放大器中的数据在读出放大器之间移动或在运算电路间传送数据,从而能够并行处理二维空间滤波或卷积运算。这样,由于不需要用于读出放大器之间及运算电路之间传送动作的多余电路,因此能够实现高集成度低功耗的器件。如图1所示,本实施例中,把运算电路配置在二维存储阵列MAR的正下方。这样,从二维存储阵列到运算电路间的数据传送距离就几乎一定,而且能够非常短。这样,就有参与传送的延迟时间较短的优点,还有运算电路间的分散性小从而易于得到运算电路之间同步的优点。还有,由于并行数据传送电路和运算电路紧靠存储阵列的正下方配置,因此,能够高集成化,还能够抑制伴随象素传送的功耗。
图1的实施例是进行3×3的滤波计算的器件。为此,并行数据传送电路连接1个运算电路和3象素的数据线,连接读出放大器和运算电路并使相邻的运算电路之间具有2个象素的重迭。显而易见,在图1的实施例中,通过变更并行数据传送电路和存储阵列的结构,能够进行3×3以上任意大小的滤波的计算。图3是示出了能够进行5×5的滤波计算的运算器件结构例的实施例。本实施例是在图1的实施例中分别把二维存储阵列MAR的字线数增加为5条,把并行数据传送电路TRC的重迭增加为4象素。作为构成并行数据传送电路TRC的选择器SEL,使用从5p位数据选择P位数据的5比1的选择器,还增加了数据存储器的容量,使得能够存储5×5的滤波所必要的25个系数。本实施例中,1个运算电路能够从相应于5个象素的读出放大器中接受数据,在相邻的运算电路中共用数据线群DG中4个象素的数据线。这样,和图1的实施例相同,在顺序选择二维存储阵列的字线的同时,能够并行进行5×5的滤波计算。还有,本实施例中,不仅能进行5×5的滤波运算,显而易见,通过使用5条字线中的4条以及连接在1个传送电路TRC上的5组配线中的4组能够构成4×4的滤波器。同样,也能够进行3×3和2×2的滤波运算。
在图1、3的实施例中,若用P位表示象素的值,则最好每P条数据线配置1个运算电路。例如,象素的值用8位的精度表示时,运算电路可以配置为收纳8条数据线的间距。然而,在运算电路的规模较大或者二维存储阵列的数据线的间距较狭小时,也要考虑到配置运算电路困难的情况。
在这种情况下,能够使用图4的实施例。图4是在进行3×3的滤波计算的图1器件中,为缓和运算电路的布图间距的1个实施例。本实施例中,把输入到串行存取存储器SAM1中的1行输入图象通过由分配器DIS构成的并行数据传送电路TRC1传送到具有3行容量的寄存器RG1,把1行的运算电路配置在3倍布图宽度的范围。这样,运算电路的布图间距就成为图1的实施例的3倍。在图1的实施例中,1个运算电路能传送来自3个象素的数据线的数据,相邻的运算电路中的传送通路各重迭2条。与此相对,本实施例中,1个运算电路能够传送来自9个象素的数据线的数据,相邻的运算电路之间共有6条数据线而构成并行数据传送电路。下面,用图4说明本实施例的动作。
首先,输入图象的第1行若存储到串行存储器SAM1,则导通全部分配器DIS内的开关L,并行写入到寄存器RG1中。接着,如果输入图象的第2行存储到串行存储器SAM1中,则这次导通全部分配器DIS内的开关C,并行写入到寄存器RG1中。进而,如果输入图象的第3行存储到串行存取存储器SAM1中,则导通全部分配器DIS内的开关R,并行写入到寄存器RG1中。这样,一旦通过数据线群DG从寄存器RG1把写入寄存器RG1中的连续的第1、2、3行图象并行传送到RG2中,则寄存器RG2中就备齐了进行输出图象第2行的运算所必须的3行输入图象的象素。通过并行数据传送电路TRC2,把这些数据传送到运算电路求出输出图象第2行象素的值。还有,数据的传送和运算要在输入图象的第4行被写入串行存取存储器SAM1期间进行。如果对输出图象第2行象素值的计算结束,并且输入图象的第4行已被写入到串行存取存储器SAM1中,就导通分配器DIS中的开关L,重写寄存器RG1的1/3内容。这时,由于寄存器RG1中备齐了输入图象的第2、3、4行的图象,因而从寄存器RG1并行地把这些数据传送到RG2,进行输出图象第3行的计算。如果在每次把1行输入图象存入串行存取存储器SAM1时都继续这样的操作,就能够连续地并行进行3×3的滤波计算。另外,用图5、6说明在上述的动作中,如何从寄存器RG2向运算电路传送数据进行运算。
图5(a)、(b)示出用于图4的实施例的并行数据传送电路TRC2的结构例。如图5(a)所示,并行数据传送电路TRC2的选择器SEL排成两层连接,每个选择器SEL中输入3个控制信号Li、Ci、Ri。选择器SEL如图5(b)的左图所示由3个开关L、C、R构成。若用控制信号Li导通开关L,则输出左侧的输入信号INL,若用控制信号Ci导通开关C,用控制信号Ri导通开关R,则分别输出中间的输入信号INC和右侧的输入信号INR。这些开关如图5(b)的右方所示能够由并联的MOS晶体管构成。在图5(a)中示出了把输入图象的第1、2、3行传送到寄存器RG2的状态。如前述,在这种状态下,要把用于并行计算输出图象第2行的象素数据传送到运算电路。在图6中示出了用于上述动作的控制信号的时序。图6中,L1、C1、R1以及L2、C2、R2分别是构成图5(a)的并行数据传送电路TRC2的选择器SEL的控制信号。图6中还示出在各时刻,并行数据传送电路TRC2的输出中的左端所示的4个TNO0、TNO1、TNO2、TNO3的哪一个象素数据被输出的状况。如图5(a)所示,运算电路PE1上接有并行数据传送电路TRC的输出TNO1。从而,由图6可知,运算电路PE1中输入F11、F12、F13、F21、F22、…,等是以F22为中心的3×3个象素数据。同样,运算电路PE2中输入以F23为中心的3×3个象素数据,运算电路PE3中输入以F24为中心的3×3个象素数据。从而,使用运算电路PE1、PE2、PE3,…,就能够并行进行输出图象第2行的运算。输出图象第3行以后的运算也能够同样地进行。另外,对于左端所示的TNO0由于不能够进行3×3的滤波运算,因而和图1相同,不通过运算电路而直接输出。如上所述,如果用图4、5、6所示的实施例,则在缓和了运算电路布图间距的情况下,还能够在输出图象的每1行并行地进行二维空间滤波运算。还有,这里示出了关于3×3滤波器的情况,然而也能够容易地扩展到用于更大的滤波器的运算。
图7是在表示进行3×3滤波器计算的图1所示器件中用于缓和运算电路的布图间距的第2个实施例。图4中,通过把和图1的器件数量相同的运算电路配置在3倍的布图宽度上面实现了布图间距的缓和。与此相反,本实施例中通过把运算电路的数量取为1/3,把这些运算电路配置在和图1的实施例相同的布图宽度谋求布图间距的缓和。图8(a)、(b)示出用于图7实施例的并行数据传送电路TRC1的结构例。图8(a)中,读出放大器SA上示出输入图象的第1行象素值F11、F12、…,被传送的状态。并行数据传送电路TRC1如图7所示由从5P位中选择P位的一种5比1的选择器SEL构成。图8(b)中,示出了用从2P位选择P位的一种2比1的选择器SEL2—1构成图7的选择器SEL的实施例。选择器排列成3层连接,各选择器SEL2-1上输入两个控制信号Li、Ri。选择器SEL2-1如图8(b)的左方所示,由2个开关L、R构成。若用控制信号Li导通开关L,就输出左侧的输入信号INL,若用控制信号Ri导通开关R,就输出右侧的输入信号INR。这些开关如图8(b)的右方所示可以通过并联MOS晶体管构成。
下面,用图9说明图7、8所示的实施例的动作。图9中,(L1、R1)、(L2、R2)、(L3、R3)分别是构成图8所示并行数据传送电路TRC1的选择器SEL的控制信号。图9中示出了字线的选择及上述控制信号的时序,还示出了并行数据传送电路TRC1的输出中从左端的4个TNO0、TNO1、TNO2、TNO3输出的象素数据以及使并行数据传送电路TRC2内分配器的开关L、C、R导通的时序。本实施例中,由于把运算电路数取为1/3,所以,用1个运算电路进行连续3个输出象素的运算。首先,输入图象的第1行存入图7的串行存储器SAM1后,就把这些数据传送到二维存储阵列MAR的字线W1。在第2、第3行也同样地传送到字线W2、W3之后,开始输出图象第2行的运算。通过数据线群DG读出字线W1上的输入图象的第1行。如图8所示,读出放大器从左端开始锁存了输入图象的象素F11、F12、F13、…,之后。就如图9的周期t1栏中所示,切换并行数据传送电路TRC1内选择器SEL的控制信号。于是,由于并行数据传送电路TRC的输出通过TNO1、TNO2、TNO3把F11、F14、F17,…分别传送到运算电路PE1、PE2、PE3中,因而,用乘法器MT1、MT2、…进行和从数据存储器读出的加权系数之间的相乘运算,把结果存入寄存器RG1、RG2、…中。接着,如图9的周期t2栏所示,一旦切换了选择器SEL的控制信号,则这次把F1 2、F15、F18、…,分别传送到PE1、PE2、PE3、…,进行这些数据和加权系数之间的相乘运算,然后加上已存入寄存器中前面的结果再存入寄存器。进而,如图9的周期t3栏所示,切换控制信号,把F1 3、F16、F19、…,分别传送到PE1、PE2、PE3、…,进行乘法运算再加上前面的结果。通过图7的并行数据传送电路TRC2内分配器DIS的开关L,把至此为止的结果写入串行存取存储器SAM2中。串行存取存储器SAM2被间断地写入数据。
接着,在把第1行输入象素锁存在读出放大器的状态下,进行如图9的周期t4到t6所示数据的传送,导通分配器DIS的开关C,把运算结果间断地写入串行存取存储器SAM2中。
进而,在把第1行输入象素锁存在读出放大器的状态下,继续进行如图9的周期t7到t9所示数据的传送,导通分配器DIS的开关R,把运算结果间断地写入串行存取存储器SAM2中。然后,选择字线W2,把第2行的输入象素锁存在读出放大器中,进行同样的运算。其中,在周期t1、t4、t7的初始,把用第1行输入象素所得到的结果从串行存取存储器SAM2送入图7所示的寄存器RG1、RG2…,而且加上新求出的乘法结果。选择字线W3,把第3行的输入象素锁存到读出放大器中并进行同样的动作,则SAM2中就求出输出图象第2行的所有象素的值。如果在每1行的输入图象存在串行存取存储器中时都继续这样的操作,就能够不断地进行3×3滤波计算。本实施例中,和图4的实施例相同,具有能把运算电路的布图间距扩展为图1实施例3倍的优点。本实施例中,由于1个运算电路进行连续3个输出象素的运算,因此,可以只用1/3的运算电路,从而适用于不能在一片芯片上集成众多运算电路的情况。还有,显而易见,为进一步缓和运算电路的间距,可以构成用1个运算电路做连续3个象素以上的运算。显而易见,为实现这一点,可以构成在把相邻运算电路中传送路径的重迭取为2条的状态下,能够把来自更多的读出放大器的数据传送到1个运算电路的传送网。
以上,在至第9图为止所说明的实施例中,以二维线性滤波器为例进行了说明。如果使用这些实施例,则通过改变滤波器的大小、系数就能够高速处理图象中的线和边缘的上升,或者平滑等。还有,通过改变运算电路的功能,还能够高速地进行特定参数的提取,或者中位滤波器等非线性滤波器的运算。进而,如果上述的实施例是使用二维分布的近傍单元的信息进行输出的运算的形式,当然也能够利用上述之外的各种运算,例如,单元自动控制器以及仅与近傍的神经细胞相结合的神经网络的计算等。另外,在说明上述实施例的图中,二维存储单元阵列内仅存入了处理所必需的数行象素数据。而通过增加二维存储单元阵列中字线数,还很容易存入更多行的象素数据。例如,如果要存储1帧的数据,就可以作为所谓帧存储器使用。这时,仅在二维存储单元阵列的一部分上施加运算,其余部分照原样通过直接从串行存储器读出而输出,这样就能够仅对画面的一部分施行滤波等的处理。另外,通过只变更对字线的控制还能容易地移动施行运算的区域。
以下,把本发明用于滤波器之外的例子,示出了用于动态矢量检测的实施例。动态矢量的检测在数字动态图象的压缩、扩张方面是有用的处理,而由于运算量很多,故期望有进行高速检测动态矢量的器件。如所熟知的,动态矢量的检测用以下方法进行:把输入图象分解为由多个象素构成的象素块,对各个块与参考图象对应位置的象素块以及在其近傍的多个象素块进行比较,求出距离最小的块,并求出和输入图象的象素块之间的坐标差。
图10和图11所示的是应用本发明进行动态图象的动态矢量运算的器件的实施例。以下,为简单说明,取象素块的大小为3×3个象素,取搜索范围为上下左右2个象素,而本实施例不限定于这些数字,能够容易地扩展。图10示出了进行动态矢量的运算的器件,图11示出了求在图10中得出的象素块之间距离的最小值并表示了输出动态矢量的最小距离运算单元的结构。下面,说明本实施例的结构和动作。
在图10的器件中,输入图象的象素Fxy和用于比较的参考图象的象素REFxy分别实时输入到串行存取存储器SAM2和SAM1中。输入到串行存取存储器后,再分别传送到3行的二维缓冲阵列BAF2、BAF1,进而向用于比较的二维存储阵列MAR2、MAR1传送。二维存储阵列MAR2能够存储3行的输入图象,所以,3×3象素大小的象素块能够存储为1列。另一方面,二维存储阵列MAR1中,与MAR2内的输入图象的象素块相应的位置再加入上下各2行共能够存储7行输入图象。另外,输入到串行存取存储器SAM2中的输入图象比输入到SAM1的参考图象迟输入2行,每存入1行数据,就从SAM1、SAM2中分别向BAF1、2、MAR1、2传送数据。由此,MAR1内的图象就成为在与MAR2内的输入图象的象素块相当的位置上再加入上下2行。3行的二维缓冲阵列BAF2、BAF1是为了在求1列象素块的动态矢量期间,暂时存储用于求下一列象素块的动态矢量的数据。每结束一列象素块动态矢量的运算,这些二维缓冲阵列BAF1、BAF2的数据就向MAR1、MAR2传送。进行下一列象素块动态矢量的运算。为了像上述那样求动态矢量,要计算输入图象的象素块和在其上下左右错开了位置的参考图象象素块之间的距离。象素块之间的距离能够通过合计构成1个象素块的象素和构成一方象素块的象素的值差获得。图10的实施例中,用运算电路PE1、…,PEn并行计算从存储阵列MAR2和MAR1中读出的象素间的距离。若在每次各选择1条存储阵列MAR2的字线时切换并行数据传送电路TRC2的控制信号L、C、R,则就能够把不同象素块的象素传送到每个运算电路。另一方面,存储阵列MAR1中,在与MAR2内输入图象的象素块相当的位置再加上其上下多出的2行上面有参考图象的数据。从而,通过切换字线,就能够在与输入图象的象素块相当位置及其上下2象素的范围内改变传送象素的y坐标。进而,通过切换并行数据传送电路TRC1的控制信号,沿x方向也能够把在与输入图象的象素块相当的位置及其左右2象素合计共7个象素的范围内错开了位置的象素传送到各运算电路。从而,输入到运算电路中的参考图象的象素块的坐标对于输入图象就有可能沿x、y方向在两个象素的范围内偏移。另外,并行数据传送电路TRC1的信号线中需要各重迭4条,而TN1的信号线中不需要重迭。
把输入图象的象素块和参考图象的象素块之间的距离求出如下。首先,固定坐标的偏移量,把输入图象的象素块和参考图象的象素块的象素传送到各运算电路PE1,…,PEn。在运算电路中求出的象素之间的距离被传送到累加器Acc1、…,Accn,加上1个象素块的值。这样求出的象素块之间的距离传送到最小距离运算单元MIN1,…,MINn。在最小距离运算单元求象素块之间的距离为最小的坐标的偏移量。最小距离运算部件的结构示于图11。用图11说明动作。如图11所示,最小距离运算部件MINi由比较电路COM、寄存器REG1、REG2以及开关SWB1、SWB2构成。如果对于特定的偏移量Δx、Δy求出象素块间的距离BLDi(Δx、Δy),则输入到比较电路。用比较电路COM对新求出的象素块间距BLDi(Δx、Δy)和已求出并存在寄存器REG1中的关于其它偏移量Δx′、Δy′的象素块间距BLDi(Δx′、Δy′)进行比较。其结果,如果BLDi(Δx、Δy)小则导通开关SWB1,寄存器REG1的内容被更新为BLDi(Δx、Δy)。寄存器REG2中存储着偏移量(Δx′、Δy′),而这时也导通开关SWB2更新为(Δx、Δy)。反之,BLDi(Δx、Δy)大时,开关SWB1、SWB2不导通,不更新寄存器的内容。通过用所有的偏移量进行以上的动作,在寄存器REG2中就求出象素块间距为最小的偏移量,即动态矢量MC。图10中,由于并行求出1列象素块的动态矢量,因此,把这些数据传送到串行存取存储器SAM3并顺序输出到芯片之外。
如以上所说明的,若根据图10、11的实施例。则能够对于输入图象实时地并行求出1列象素块的动态矢量。从而,如果在利用动态矢量的动态图象压缩、扩张系统中搭载基于本发明的半导体集成电路,就能够进行高速处理。另外,在图10的结构中,当然也能够用图4、图7的方法缓和运算电路的间距。
至此,说明了应用本发明的实施例。在已说明的实施例中,使用的是具有能够存储1行以上象素数据的字线的二维存储阵列。然而,如果字线长度过长则增大配线容量和电阻,有时难于高速驱动。在这种情况下,可以分割阵列。然而,在该情况下,如果单纯地分割,则配置在子阵列端部的运算电路中所需要的象素就存在于相邻的子阵列中。从而产生了特别设置存取通道的必要性。为避开这一点,可以在相邻的子阵列之间双重地具有子阵列端部的象素数据。另外,在为说明实施例的图中,对于二维存储阵列的详细结构、或者控制信号的产生方法省略了说明,而这些用一般的LSI中所使用的技术就能够容易地构成。例如,二维存储阵列中能够使用由1个晶体管单元构成的DRAM阵列。这种情况下,由于能够高集成地制做二维存储阵列,所以与使用了SRAM阵列的情况相比,能够在相同尺寸的芯片上更多地集成运算电路,由此,能够进行更高速的处理。还有,如以上所说明的,本发明的实施例中,很多情况下是在短时间内使用存储阵列中的全部信息。从而,即使应用DRAM阵列时运算中也能自动地进行更新。从而,具有不必中断运算进行更新的优点。
如果用基于本发明的半导体集成电路,就能并行处理使用了二维数据的运算,这些运算包括二维空间滤波、卷积运算,或者为搜索图象间动态矢量的运算等,从而,能够实时高速处理上述运算。
Claims (23)
1.一种半导体集成电路,其特征在于包括:
存储单元阵列,具有多条数据线、和该多条数据线相交叉的多条字线,以及设在上述多条数据线和多条字线的所希望的交点处的多个存储单元;
从所述多条数据线并行传送多个数据的并行数据传送电路;以及
用于接收来自所述并行数据传送电路的所述多个数据作为其输入信号的多个运算电路;
其中,由所述并行数据传送电路按下列顺序把所述数据线连接到所述运算电路:
1)第一连接方式,各数据线连接到第一相应运算电路;和
2)第二连接方式,各数据线连接到第二相应运算电路;
各数据线的所述第一和第二相应运算电路是相邻的,而且各运算电路按第一和第二连接方式连接到其上的各个数据线是相邻的数据线。
2.如权利要求1所述的半导体集成电路,其特征在于:
上述多个运算电路中的各运算电路,通过选择上述多条字线中两条或两条以上的字线、使用被读出到多条数据线中的一条数据线的多个数据来进行运算操作。
3.如权利要求1所述的半导体集成电路,其特征在于还包括:
第1串行存取存储器,用于储存从外部输入的串行数据,并把上述串行数据并行输出到上述多条数据线;
第2串行存取存储器,用于把上述多个运算电路的输出数据转换为串行数据并将其输出到外部。
4.如权利要求2所述的半导体集成电路,其特征在于还包括:
第1串行存取存储器,用于存储从外部输入的串行数据,并把上述串行数据并行输出到上述多条数据线;
第2串行存取存储器,用于把上述多个运算电路的输出数据变换为串行数据并将其输出到外部。
5.如权利要求1~4中任一项的半导体集成电路,其特征在于:所述多个运算电路中的各运算电路通过使用来自所述存储单元阵列的多个数据和一预定常数进行运算操作。
6.如权利要求3或4所述的半导体集成电路,其特征在于:所述输入到所述第一串行存取存储器的串行数据是一个图象的象素数据。
7.如权利要求6所述的半导体集成电路,其特征在于还包括:
一个用于存储滤波系数的数据存储器,
其中,各所述多个运算电路根据所述象素数据和滤波系数进行图象的滤波运算。
8.如权利要求7所述的半导体集成电路,其特征在于:所述滤波运算操作使用存储在所述第一存储单元阵列中的两维数据。
9.一种半导体集成电路,其特征在于包括:
存储单元阵列,具有多个数据线组、与该多个数据线组相交叉的多条字线,以及设在上述多个数据线组和上述多条字线的所需交叉点处的多个存储单元;
并行数据传送电路,用于并行传送来自上述多个数据线组的多个数据组;以及
多个运算电路,用于接收由所述并行数据传送电路传送来的所述多个数据组,作为它们的输入信号;
其中,所述并行数据传送电路按下列顺序把所述数据线组连接到所述运算电路:
1)第一连接方式,各数据线组连接到第一相应运算电路;和
2)第二连接方式,各数据线组连接到第二相应运算电路;
各数据线组的所述第一和第二相应运算电路是相邻的,而且
其上连接有按第一和第二连接方式连接的各运算电路的各个数据线是相邻的数据线。
10.如权利要求9所述的半导体集成电路,其特征在于:
上述多个运算电路中的各个运算电路通过选择上述多条字线中两条或两条以上的字线、使用被读出到所述多个数据线组中的一个数据线组的多个数据组进行运算操作。
11.如权利要求9或10所述的半导体集成电路,其特征在于还包括:
第1串行存取存储器,用于存储从外部输入的串行数据,并把该串行数据并行输出到所述多个数据线组;以及
第2串行存取存储器,用于把上述多个运算电路的输出数据变换为串行数据并将其输出到外部。
12.如权利要求9所述的半导体集成电路,其特征在于:
所述多个运算电路中的各个运算电路用来自所述存储单元阵列的所述多个数据组和一个预定常数进行运算操作。
13.如权利要求11所述的半导体集成电路,其特征在于:
所述多个运算电路中的各个运算电路用来自所述存储单元阵列的所述多个数据组和一个预定常数进行运算操作。
14.一种半导体集成电路,其特征在于包括:
第一和第二存储单元阵列,它们各具有多条数据线、与多条数据线相交的多条字线,以及设在所述多条数据线和所述多条字线所需交点处的存储单元;
第一并行数据传送电路,用于并行传送来自所述第一存储单元阵列的所述多条数据线的多个第一数据;
第二并行数据传送电路,用于并行传送来自所述第二存储单元阵列的所述多条数据线的多个第二数据;以及
多个运算电路,用于接收来自所述第一和第二并行数据传送电路的多个所述第一数据和多个所述第二数据;
其中,所述第一并行数据传送电路按下列顺序把所述第一存储单元阵列的所述数据线连接到所述运算电路:
1)第一连接方式,所述第一存储单元阵列的各数据线与一个相应的运算电路相连;以及
2)第二连接方式,所述第一存储单元阵列的各数据线与另一个相应的运算电路相连;
其中,所述第一存储单元阵列的各数据线的一个和另一个运算电路是相邻的运算电路,而其上按第一和第二连接方式连接着各运算电路的各个数据线是相邻的数据线;以及
所述第二并行数据传送电路按下列顺序把所述第二存储单元阵列的所述数据线连接到所述运算电路:
1)第三连接方式,所述第二存储单元阵列的各数据线与一个相应的运算电路相连;
2)第四连接方式,所述第二存储单元阵列的各数据线与另一个相应的运算电路相连;
其中,所述第二存储单元阵列的各数据线的一个和另一个运算电路是相邻的运算电路,而其上按第三和第四连接方式连接着各运算电路的各个数据线是相邻的数据线。
15.一种半导体集成电路,其特征在于包括:
第一和第二存储单元阵列,各具有多个数据线组、多条与所述多个数据线组相交的字线,以及设在所述多个数据线组和所述多个字线的所希望的交点处的多个存储单元;
第一并行数据传送电路,用于从所述第一存储单元阵列的所述多个数据线组并行传送多个第一数据组;
第二并行数据传送电路,用于从所述第二存储单元阵列的所述多个数据线组并行传送多个第二数据组;
多个运算电路,用于接收从所述第一和第二并行数据传送电路传送来的所述多个第一和第二数据组;
其中,所述第一并行数据传送电路按下列顺序把所述第一存储单元阵列的所述数据线组连接到所述运算电路:
1)第一连接方式,所述第一存储单元阵列的各数据线组连接到一个相应的运算电路;
2)第二连接方式,所述第一存储单元阵列的各数据线组连接到另一个相应的运算电路;
其中,所述第一存储单元阵列的各数据线组的一个和另一个运算电路是相邻的,而其上按第一和第二连接方式连接着各运算电路的各条数据线是相邻的数据线组,以及
所述第二并行数据传送电路按下列顺序把所述第二存储单元阵列的所述数据线组连接到所述运算电路:
1)第三连接方式,所述第二存储单元阵列的各数据线组连接到一个相应的运算电路;
2)第四连接方式,所述第二存储单元阵列的各数据线组连接到另一个相应的运算电路;
其中,所述第二存储单元阵列的各数据线组的一个和另一个运算电路是相邻的运算电路,而其上按第三和第四连接方式连接着各运算电路的各条数据线是相邻的数据线。
16.如权利要求14所述的半导体集成电路,其特征在于还包括:
第1串行存取存储器,用于储存从外部输入的串行数据,并把上述串行数据并行输出到所述第一存储单元阵列的所述多条数据线;
第2串行存取存储器,用于储存从外部输入的串行数据,并把上述串行数据并行输出到所述第二存储单元阵列的所述多条数据线;以及
第3串行存取存储器,用于把所述多个运算电路的输出数据变换为串行数据并将其输出到外部。
17.如权利要求16所述的半导体集成电路,其特征在于:所述输入到所述第1串行存取存储器的串行数据是一参考图象的象素数据,而所述输入到所述第2串行存取存储器的串行数据是一输入图象的象素数据。
18.如权利要求17所述的半导体集成电路,其特征在于还包括:
第三和第四存储单元阵列,各包括多条数据线、与该多条数据线相交叉的多条字线,以及设在上述多条数据线和多条字线之间所希望的交点处的多个存储单元;
其中,所述第三存储单元阵列的多条数据线的各条与所述第一存储单元阵列的多条数据线的各条相耦连;
所述第四存储单元阵列的多条数据线的各条与所述第二存储单元阵列的多条数据线的各条相耦连;以及
所述多个运算电路在所述第三和第四存储单元阵列为随后的操作存储数据时执行运算操作。
19.如权利要求18所述的半导体集成电路,其特征在于:所述多个运算电路利用输入图象和参考图象的象素数据处理一个运动图象的运动矢量。
20.如权利要求15所述的半导体集成电路,其特征在于还包括:
第1串行存取存储器,用于储存从外部输入的串行数据,并把上述串行数据并行输出到所述第一存储单元阵列的所述多条数据线组;
第2串行存取存储器,用于储存从外部输入的串行数据,并把上述串行数据并行输出到所述第二存储单元阵列的所述多条数据线组;以及
第3串行存取存储器,用于把所述多个运算电路的输出数据变换为串行数据并将其输出到外部。
21.如权利要求20所述的半导体集成电路,其特征在于:所述输入到所述第1串行存取存储器的串行数据是一参考图象的象素数据,而所述输入到所述第2串行存取存储器的串行数据是一个输入图象的象素数据。
22.如权利要求21所述的半导体集成电路,其特征在于还包括:
第三和第四存储单元阵列,各包括多个数据线组、与该多个数据线组相交叉的多条字线,以及设在上述多个数据线组和多条字线之间所希望的交点处的多个存储单元;
其中,所述第三存储单元阵列的多个数据线组中的各个与所述第一存储单元阵列的多个数据线组中的各个相耦连;
所述第四存储单元阵列的多个数据线组中的各个与所述第二存储单元阵列的多个数据线组中的各个相耦连;以及
所述多个运算电路在所述第三和第四存储单元阵列为随后的操作存储数据时执行运算操作。
23.如权利要求22所述的半导体集成电路,其特征在于:所述多个运算电路利用输入图象和参考图象的象素数据处理一个运动图象的运动矢量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07182194A JP3251421B2 (ja) | 1994-04-11 | 1994-04-11 | 半導体集積回路 |
JP071821/94 | 1994-04-11 | ||
JP071821/1994 | 1994-04-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1126860A CN1126860A (zh) | 1996-07-17 |
CN1104695C true CN1104695C (zh) | 2003-04-02 |
Family
ID=13471611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN95104392A Expired - Fee Related CN1104695C (zh) | 1994-04-11 | 1995-04-10 | 半导体集成电路 |
Country Status (7)
Country | Link |
---|---|
US (1) | US5854636A (zh) |
EP (1) | EP0676764B1 (zh) |
JP (1) | JP3251421B2 (zh) |
KR (1) | KR100373222B1 (zh) |
CN (1) | CN1104695C (zh) |
DE (1) | DE69520974T2 (zh) |
TW (1) | TW447192B (zh) |
Families Citing this family (158)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3524250B2 (ja) * | 1995-11-27 | 2004-05-10 | キヤノン株式会社 | デジタル画像処理プロセッサ |
DE59705713D1 (de) | 1997-01-08 | 2002-01-17 | Stuttgart Mikroelektronik | Verfahren und vorrichtung zur analogen signalverarbeitung |
JP3650519B2 (ja) * | 1997-12-17 | 2005-05-18 | 株式会社ルネサステクノロジ | マイクロコンピュータ |
JP3283040B2 (ja) * | 1997-12-19 | 2002-05-20 | ビーエイイー システムズ パブリック リミテッド カンパニー | 重み付けなしニューラル技術を利用したデジタル信号フィルタ |
US6587158B1 (en) * | 1998-07-23 | 2003-07-01 | Dvdo, Inc. | Method and apparatus for reducing on-chip memory in vertical video processing |
US6990058B1 (en) | 2000-04-03 | 2006-01-24 | Dphi Acquisitions, Inc. | Structure and method for storing data on optical disks |
WO2001093035A2 (en) | 2000-05-30 | 2001-12-06 | Dataplay, Inc. | Defect management system for write-once storage disk |
US6738333B1 (en) | 2000-05-30 | 2004-05-18 | Dphi Acquisitions, Inc. | Format for recording data in a storage disk |
CN100385460C (zh) * | 2001-03-13 | 2008-04-30 | 伊强德斯股份有限公司 | 联动式计数器及联动装置 |
JP2003280982A (ja) * | 2002-03-20 | 2003-10-03 | Seiko Epson Corp | 多次元メモリのデータ転送装置及び多次元メモリのデータ転送プログラム、並びに多次元メモリのデータ転送方法 |
US8122227B2 (en) | 2004-11-03 | 2012-02-21 | Silicon Hive B.V. | SIMD processor for performing data filtering and/or interpolation |
US7423642B2 (en) * | 2005-12-14 | 2008-09-09 | Winbond Electronics Corporation | Efficient video frame capturing |
CN100409259C (zh) * | 2006-08-29 | 2008-08-06 | 中国航天时代电子公司第七七一研究所 | 可缩放大规模二维卷积电路 |
US7529149B2 (en) * | 2006-12-12 | 2009-05-05 | Mosaid Technologies Incorporated | Memory system and method with serial and parallel modes |
JP5522890B2 (ja) * | 2007-07-31 | 2014-06-18 | キヤノン株式会社 | 画像処理装置及び方法 |
US8181003B2 (en) * | 2008-05-29 | 2012-05-15 | Axis Semiconductor, Inc. | Instruction set design, control and communication in programmable microprocessor cores and the like |
CN102169717B (zh) * | 2011-05-06 | 2013-03-13 | 西安华芯半导体有限公司 | 一种具有数据处理功能的存储器装置 |
JP6044240B2 (ja) * | 2012-10-01 | 2016-12-14 | 株式会社ソシオネクスト | 半導体装置及び半導体装置の設計方法 |
US9158667B2 (en) | 2013-03-04 | 2015-10-13 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US8964496B2 (en) | 2013-07-26 | 2015-02-24 | Micron Technology, Inc. | Apparatuses and methods for performing compare operations using sensing circuitry |
US8971124B1 (en) | 2013-08-08 | 2015-03-03 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9153305B2 (en) | 2013-08-30 | 2015-10-06 | Micron Technology, Inc. | Independently addressable memory array address spaces |
US9019785B2 (en) | 2013-09-19 | 2015-04-28 | Micron Technology, Inc. | Data shifting via a number of isolation devices |
US9449675B2 (en) | 2013-10-31 | 2016-09-20 | Micron Technology, Inc. | Apparatuses and methods for identifying an extremum value stored in an array of memory cells |
US9430191B2 (en) | 2013-11-08 | 2016-08-30 | Micron Technology, Inc. | Division operations for memory |
US9934856B2 (en) | 2014-03-31 | 2018-04-03 | Micron Technology, Inc. | Apparatuses and methods for comparing data patterns in memory |
US9830999B2 (en) | 2014-06-05 | 2017-11-28 | Micron Technology, Inc. | Comparison operations in memory |
US10074407B2 (en) | 2014-06-05 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for performing invert operations using sensing circuitry |
US9779019B2 (en) | 2014-06-05 | 2017-10-03 | Micron Technology, Inc. | Data storage layout |
US9711207B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9496023B2 (en) | 2014-06-05 | 2016-11-15 | Micron Technology, Inc. | Comparison operations on logical representations of values in memory |
US9704540B2 (en) | 2014-06-05 | 2017-07-11 | Micron Technology, Inc. | Apparatuses and methods for parity determination using sensing circuitry |
US9455020B2 (en) | 2014-06-05 | 2016-09-27 | Micron Technology, Inc. | Apparatuses and methods for performing an exclusive or operation using sensing circuitry |
US9711206B2 (en) | 2014-06-05 | 2017-07-18 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9910787B2 (en) | 2014-06-05 | 2018-03-06 | Micron Technology, Inc. | Virtual address table |
US9786335B2 (en) | 2014-06-05 | 2017-10-10 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9449674B2 (en) | 2014-06-05 | 2016-09-20 | Micron Technology, Inc. | Performing logical operations using sensing circuitry |
US9904515B2 (en) | 2014-09-03 | 2018-02-27 | Micron Technology, Inc. | Multiplication operations in memory |
US9740607B2 (en) | 2014-09-03 | 2017-08-22 | Micron Technology, Inc. | Swap operations in memory |
US9747961B2 (en) | 2014-09-03 | 2017-08-29 | Micron Technology, Inc. | Division operations in memory |
US9847110B2 (en) | 2014-09-03 | 2017-12-19 | Micron Technology, Inc. | Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector |
US9589602B2 (en) | 2014-09-03 | 2017-03-07 | Micron Technology, Inc. | Comparison operations in memory |
US10068652B2 (en) | 2014-09-03 | 2018-09-04 | Micron Technology, Inc. | Apparatuses and methods for determining population count |
US9898252B2 (en) | 2014-09-03 | 2018-02-20 | Micron Technology, Inc. | Multiplication operations in memory |
US9836218B2 (en) | 2014-10-03 | 2017-12-05 | Micron Technology, Inc. | Computing reduction and prefix sum operations in memory |
US9940026B2 (en) | 2014-10-03 | 2018-04-10 | Micron Technology, Inc. | Multidimensional contiguous memory allocation |
US10163467B2 (en) | 2014-10-16 | 2018-12-25 | Micron Technology, Inc. | Multiple endianness compatibility |
US10147480B2 (en) | 2014-10-24 | 2018-12-04 | Micron Technology, Inc. | Sort operation in memory |
US9779784B2 (en) | 2014-10-29 | 2017-10-03 | Micron Technology, Inc. | Apparatuses and methods for performing logical operations using sensing circuitry |
US9747960B2 (en) | 2014-12-01 | 2017-08-29 | Micron Technology, Inc. | Apparatuses and methods for converting a mask to an index |
US10073635B2 (en) | 2014-12-01 | 2018-09-11 | Micron Technology, Inc. | Multiple endianness compatibility |
US10032493B2 (en) | 2015-01-07 | 2018-07-24 | Micron Technology, Inc. | Longest element length determination in memory |
US10061590B2 (en) | 2015-01-07 | 2018-08-28 | Micron Technology, Inc. | Generating and executing a control flow |
US9583163B2 (en) | 2015-02-03 | 2017-02-28 | Micron Technology, Inc. | Loop structure for operations in memory |
EP3254286B1 (en) | 2015-02-06 | 2019-09-11 | Micron Technology, INC. | Apparatuses and methods for parallel writing to multiple memory device locations |
WO2016126472A1 (en) | 2015-02-06 | 2016-08-11 | Micron Technology, Inc. | Apparatuses and methods for scatter and gather |
EP3254287A4 (en) | 2015-02-06 | 2018-08-08 | Micron Technology, INC. | Apparatuses and methods for memory device as a store for program instructions |
WO2016144724A1 (en) | 2015-03-10 | 2016-09-15 | Micron Technology, Inc. | Apparatuses and methods for shift decisions |
US9898253B2 (en) | 2015-03-11 | 2018-02-20 | Micron Technology, Inc. | Division operations on variable length elements in memory |
US9741399B2 (en) | 2015-03-11 | 2017-08-22 | Micron Technology, Inc. | Data shift by elements of a vector in memory |
US10365851B2 (en) | 2015-03-12 | 2019-07-30 | Micron Technology, Inc. | Apparatuses and methods for data movement |
US10146537B2 (en) | 2015-03-13 | 2018-12-04 | Micron Technology, Inc. | Vector population count determination in memory |
US10049054B2 (en) | 2015-04-01 | 2018-08-14 | Micron Technology, Inc. | Virtual register file |
US10140104B2 (en) | 2015-04-14 | 2018-11-27 | Micron Technology, Inc. | Target architecture determination |
US9959923B2 (en) | 2015-04-16 | 2018-05-01 | Micron Technology, Inc. | Apparatuses and methods to reverse data stored in memory |
US10073786B2 (en) | 2015-05-28 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for compute enabled cache |
US9704541B2 (en) | 2015-06-12 | 2017-07-11 | Micron Technology, Inc. | Simulating access lines |
US9921777B2 (en) | 2015-06-22 | 2018-03-20 | Micron Technology, Inc. | Apparatuses and methods for data transfer from sensing circuitry to a controller |
US9996479B2 (en) | 2015-08-17 | 2018-06-12 | Micron Technology, Inc. | Encryption of executables in computational memory |
US9905276B2 (en) | 2015-12-21 | 2018-02-27 | Micron Technology, Inc. | Control of sensing components in association with performing operations |
US9952925B2 (en) | 2016-01-06 | 2018-04-24 | Micron Technology, Inc. | Error code calculation on sensing circuitry |
US10048888B2 (en) | 2016-02-10 | 2018-08-14 | Micron Technology, Inc. | Apparatuses and methods for partitioned parallel data movement |
US9892767B2 (en) | 2016-02-12 | 2018-02-13 | Micron Technology, Inc. | Data gathering in memory |
US9971541B2 (en) | 2016-02-17 | 2018-05-15 | Micron Technology, Inc. | Apparatuses and methods for data movement |
US9899070B2 (en) | 2016-02-19 | 2018-02-20 | Micron Technology, Inc. | Modified decode for corner turn |
US10956439B2 (en) | 2016-02-19 | 2021-03-23 | Micron Technology, Inc. | Data transfer with a bit vector operation device |
US9697876B1 (en) | 2016-03-01 | 2017-07-04 | Micron Technology, Inc. | Vertical bit vector shift in memory |
US10262721B2 (en) | 2016-03-10 | 2019-04-16 | Micron Technology, Inc. | Apparatuses and methods for cache invalidate |
US9997232B2 (en) | 2016-03-10 | 2018-06-12 | Micron Technology, Inc. | Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations |
US10379772B2 (en) | 2016-03-16 | 2019-08-13 | Micron Technology, Inc. | Apparatuses and methods for operations using compressed and decompressed data |
US9910637B2 (en) | 2016-03-17 | 2018-03-06 | Micron Technology, Inc. | Signed division in memory |
US11074988B2 (en) | 2016-03-22 | 2021-07-27 | Micron Technology, Inc. | Apparatus and methods for debugging on a host and memory device |
US10120740B2 (en) | 2016-03-22 | 2018-11-06 | Micron Technology, Inc. | Apparatus and methods for debugging on a memory device |
US10388393B2 (en) | 2016-03-22 | 2019-08-20 | Micron Technology, Inc. | Apparatus and methods for debugging on a host and memory device |
US10474581B2 (en) | 2016-03-25 | 2019-11-12 | Micron Technology, Inc. | Apparatuses and methods for cache operations |
US10977033B2 (en) | 2016-03-25 | 2021-04-13 | Micron Technology, Inc. | Mask patterns generated in memory from seed vectors |
US10430244B2 (en) | 2016-03-28 | 2019-10-01 | Micron Technology, Inc. | Apparatuses and methods to determine timing of operations |
US10074416B2 (en) | 2016-03-28 | 2018-09-11 | Micron Technology, Inc. | Apparatuses and methods for data movement |
US10453502B2 (en) | 2016-04-04 | 2019-10-22 | Micron Technology, Inc. | Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions |
US10607665B2 (en) | 2016-04-07 | 2020-03-31 | Micron Technology, Inc. | Span mask generation |
US9818459B2 (en) | 2016-04-19 | 2017-11-14 | Micron Technology, Inc. | Invert operations using sensing circuitry |
US9659605B1 (en) | 2016-04-20 | 2017-05-23 | Micron Technology, Inc. | Apparatuses and methods for performing corner turn operations using sensing circuitry |
US10153008B2 (en) | 2016-04-20 | 2018-12-11 | Micron Technology, Inc. | Apparatuses and methods for performing corner turn operations using sensing circuitry |
US10042608B2 (en) | 2016-05-11 | 2018-08-07 | Micron Technology, Inc. | Signed division in memory |
US9659610B1 (en) | 2016-05-18 | 2017-05-23 | Micron Technology, Inc. | Apparatuses and methods for shifting data |
US10049707B2 (en) | 2016-06-03 | 2018-08-14 | Micron Technology, Inc. | Shifting data |
US10387046B2 (en) | 2016-06-22 | 2019-08-20 | Micron Technology, Inc. | Bank to bank data transfer |
US10037785B2 (en) | 2016-07-08 | 2018-07-31 | Micron Technology, Inc. | Scan chain operation in sensing circuitry |
US10388360B2 (en) | 2016-07-19 | 2019-08-20 | Micron Technology, Inc. | Utilization of data stored in an edge section of an array |
US10387299B2 (en) | 2016-07-20 | 2019-08-20 | Micron Technology, Inc. | Apparatuses and methods for transferring data |
US10733089B2 (en) | 2016-07-20 | 2020-08-04 | Micron Technology, Inc. | Apparatuses and methods for write address tracking |
US9767864B1 (en) | 2016-07-21 | 2017-09-19 | Micron Technology, Inc. | Apparatuses and methods for storing a data value in a sensing circuitry element |
US9972367B2 (en) | 2016-07-21 | 2018-05-15 | Micron Technology, Inc. | Shifting data in sensing circuitry |
US10303632B2 (en) | 2016-07-26 | 2019-05-28 | Micron Technology, Inc. | Accessing status information |
US10468087B2 (en) | 2016-07-28 | 2019-11-05 | Micron Technology, Inc. | Apparatuses and methods for operations in a self-refresh state |
US9990181B2 (en) | 2016-08-03 | 2018-06-05 | Micron Technology, Inc. | Apparatuses and methods for random number generation |
US11029951B2 (en) | 2016-08-15 | 2021-06-08 | Micron Technology, Inc. | Smallest or largest value element determination |
US10606587B2 (en) | 2016-08-24 | 2020-03-31 | Micron Technology, Inc. | Apparatus and methods related to microcode instructions indicating instruction types |
US10466928B2 (en) | 2016-09-15 | 2019-11-05 | Micron Technology, Inc. | Updating a register in memory |
US10387058B2 (en) | 2016-09-29 | 2019-08-20 | Micron Technology, Inc. | Apparatuses and methods to change data category values |
US10014034B2 (en) | 2016-10-06 | 2018-07-03 | Micron Technology, Inc. | Shifting data in sensing circuitry |
US10529409B2 (en) | 2016-10-13 | 2020-01-07 | Micron Technology, Inc. | Apparatuses and methods to perform logical operations using sensing circuitry |
US9805772B1 (en) | 2016-10-20 | 2017-10-31 | Micron Technology, Inc. | Apparatuses and methods to selectively perform logical operations |
CN207637499U (zh) | 2016-11-08 | 2018-07-20 | 美光科技公司 | 用于形成在存储器单元阵列上方的计算组件的设备 |
US10423353B2 (en) | 2016-11-11 | 2019-09-24 | Micron Technology, Inc. | Apparatuses and methods for memory alignment |
US9761300B1 (en) | 2016-11-22 | 2017-09-12 | Micron Technology, Inc. | Data shift apparatuses and methods |
CN106843809B (zh) * | 2017-01-25 | 2019-04-30 | 北京大学 | 一种基于nor flash阵列的卷积运算方法 |
WO2018138603A1 (en) * | 2017-01-26 | 2018-08-02 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device and electronic device including the semiconductor device |
US10402340B2 (en) | 2017-02-21 | 2019-09-03 | Micron Technology, Inc. | Memory array page table walk |
US10403352B2 (en) | 2017-02-22 | 2019-09-03 | Micron Technology, Inc. | Apparatuses and methods for compute in data path |
US10268389B2 (en) | 2017-02-22 | 2019-04-23 | Micron Technology, Inc. | Apparatuses and methods for in-memory operations |
US10838899B2 (en) | 2017-03-21 | 2020-11-17 | Micron Technology, Inc. | Apparatuses and methods for in-memory data switching networks |
US11222260B2 (en) | 2017-03-22 | 2022-01-11 | Micron Technology, Inc. | Apparatuses and methods for operating neural networks |
US10185674B2 (en) | 2017-03-22 | 2019-01-22 | Micron Technology, Inc. | Apparatus and methods for in data path compute operations |
US10049721B1 (en) | 2017-03-27 | 2018-08-14 | Micron Technology, Inc. | Apparatuses and methods for in-memory operations |
US10147467B2 (en) | 2017-04-17 | 2018-12-04 | Micron Technology, Inc. | Element value comparison in memory |
US10043570B1 (en) | 2017-04-17 | 2018-08-07 | Micron Technology, Inc. | Signed element compare in memory |
US9997212B1 (en) | 2017-04-24 | 2018-06-12 | Micron Technology, Inc. | Accessing data in memory |
US10942843B2 (en) | 2017-04-25 | 2021-03-09 | Micron Technology, Inc. | Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes |
US10236038B2 (en) | 2017-05-15 | 2019-03-19 | Micron Technology, Inc. | Bank to bank data transfer |
US10068664B1 (en) | 2017-05-19 | 2018-09-04 | Micron Technology, Inc. | Column repair in memory |
US10013197B1 (en) | 2017-06-01 | 2018-07-03 | Micron Technology, Inc. | Shift skip |
US10152271B1 (en) | 2017-06-07 | 2018-12-11 | Micron Technology, Inc. | Data replication |
US10262701B2 (en) | 2017-06-07 | 2019-04-16 | Micron Technology, Inc. | Data transfer between subarrays in memory |
US10318168B2 (en) | 2017-06-19 | 2019-06-11 | Micron Technology, Inc. | Apparatuses and methods for simultaneous in data path compute operations |
JP6958027B2 (ja) | 2017-07-03 | 2021-11-02 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
US10162005B1 (en) | 2017-08-09 | 2018-12-25 | Micron Technology, Inc. | Scan chain operations |
US10534553B2 (en) | 2017-08-30 | 2020-01-14 | Micron Technology, Inc. | Memory array accessibility |
US10346092B2 (en) | 2017-08-31 | 2019-07-09 | Micron Technology, Inc. | Apparatuses and methods for in-memory operations using timing circuitry |
US10741239B2 (en) | 2017-08-31 | 2020-08-11 | Micron Technology, Inc. | Processing in memory device including a row address strobe manager |
US10416927B2 (en) | 2017-08-31 | 2019-09-17 | Micron Technology, Inc. | Processing in memory |
US10409739B2 (en) | 2017-10-24 | 2019-09-10 | Micron Technology, Inc. | Command selection policy |
US10522210B2 (en) | 2017-12-14 | 2019-12-31 | Micron Technology, Inc. | Apparatuses and methods for subarray addressing |
US10332586B1 (en) | 2017-12-19 | 2019-06-25 | Micron Technology, Inc. | Apparatuses and methods for subrow addressing |
US10614875B2 (en) | 2018-01-30 | 2020-04-07 | Micron Technology, Inc. | Logical operations using memory cells |
US10437557B2 (en) | 2018-01-31 | 2019-10-08 | Micron Technology, Inc. | Determination of a match between data values stored by several arrays |
US11194477B2 (en) | 2018-01-31 | 2021-12-07 | Micron Technology, Inc. | Determination of a match between data values stored by three or more arrays |
US10725696B2 (en) | 2018-04-12 | 2020-07-28 | Micron Technology, Inc. | Command selection policy with read priority |
US10440341B1 (en) | 2018-06-07 | 2019-10-08 | Micron Technology, Inc. | Image processor formed in an array of memory cells |
US10769071B2 (en) | 2018-10-10 | 2020-09-08 | Micron Technology, Inc. | Coherent memory access |
US11175915B2 (en) | 2018-10-10 | 2021-11-16 | Micron Technology, Inc. | Vector registers implemented in memory |
US10483978B1 (en) | 2018-10-16 | 2019-11-19 | Micron Technology, Inc. | Memory device processing |
US11184446B2 (en) | 2018-12-05 | 2021-11-23 | Micron Technology, Inc. | Methods and apparatus for incentivizing participation in fog networks |
US10867655B1 (en) | 2019-07-08 | 2020-12-15 | Micron Technology, Inc. | Methods and apparatus for dynamically adjusting performance of partitioned memory |
US11360768B2 (en) | 2019-08-14 | 2022-06-14 | Micron Technolgy, Inc. | Bit string operations in memory |
US11449577B2 (en) | 2019-11-20 | 2022-09-20 | Micron Technology, Inc. | Methods and apparatus for performing video processing matrix operations within a memory array |
US11853385B2 (en) | 2019-12-05 | 2023-12-26 | Micron Technology, Inc. | Methods and apparatus for performing diversity matrix operations within a memory array |
US11227641B1 (en) | 2020-07-21 | 2022-01-18 | Micron Technology, Inc. | Arithmetic operations in memory |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4298950A (en) * | 1979-10-12 | 1981-11-03 | Westinghouse Electric Corp. | Multipoint pipeline processor for computing the discrete fourier transform |
US4460958A (en) * | 1981-01-26 | 1984-07-17 | Rca Corporation | Window-scanned memory |
JPS6053349B2 (ja) * | 1981-06-19 | 1985-11-25 | 株式会社日立製作所 | 画像処理プロセツサ |
US4635292A (en) * | 1983-12-19 | 1987-01-06 | Matsushita Electric Industrial Co., Ltd. | Image processor |
EP0179605B1 (en) * | 1984-10-17 | 1992-08-19 | Fujitsu Limited | Semiconductor memory device having a serial data input circuit and a serial data output circuit |
GB2184316B (en) * | 1985-12-17 | 1989-10-11 | Sony Corp | Two-dimensional finite impulse response filter arrangements. |
US4860373A (en) * | 1986-03-31 | 1989-08-22 | General Electric Company | Location dependent signal processor |
US4845664A (en) * | 1986-09-15 | 1989-07-04 | International Business Machines Corp. | On-chip bit reordering structure |
JPH06101039B2 (ja) * | 1988-05-11 | 1994-12-12 | 富士通株式会社 | ウインドウ画像データの読出処理方式 |
FR2634084A1 (fr) * | 1988-07-08 | 1990-01-12 | Labo Electronique Physique | Circuit integre et dispositif de traitement d'images |
JPH0736163B2 (ja) * | 1988-08-26 | 1995-04-19 | 株式会社東芝 | 塗潰しパターン発生装置 |
US5321510A (en) * | 1989-11-13 | 1994-06-14 | Texas Instruments Incorporated | Serial video processor |
JP2753129B2 (ja) * | 1990-10-02 | 1998-05-18 | 株式会社東芝 | 半導体記憶装置 |
US5276641A (en) * | 1991-12-12 | 1994-01-04 | International Business Machines Corporation | Hybrid open folded sense amplifier architecture for a memory device |
GB9202613D0 (en) * | 1992-02-07 | 1992-03-25 | Questech Ltd | Improvements in and relating to digital filters |
EP0626661A1 (en) * | 1993-05-24 | 1994-11-30 | Societe D'applications Generales D'electricite Et De Mecanique Sagem | Digital image processing circuitry |
US5671296A (en) * | 1994-02-15 | 1997-09-23 | Unisys Corporation | Method of electronically processing a quantized image |
-
1994
- 1994-04-11 JP JP07182194A patent/JP3251421B2/ja not_active Expired - Fee Related
-
1995
- 1995-03-27 TW TW084102953A patent/TW447192B/zh active
- 1995-03-29 DE DE69520974T patent/DE69520974T2/de not_active Expired - Fee Related
- 1995-03-29 EP EP95302121A patent/EP0676764B1/en not_active Expired - Lifetime
- 1995-04-04 KR KR1019950007778A patent/KR100373222B1/ko not_active IP Right Cessation
- 1995-04-10 CN CN95104392A patent/CN1104695C/zh not_active Expired - Fee Related
-
1997
- 1997-09-16 US US08/931,776 patent/US5854636A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE69520974T2 (de) | 2002-03-28 |
US5854636A (en) | 1998-12-29 |
KR100373222B1 (ko) | 2003-04-26 |
JPH07282237A (ja) | 1995-10-27 |
TW447192B (en) | 2001-07-21 |
EP0676764B1 (en) | 2001-05-23 |
CN1126860A (zh) | 1996-07-17 |
KR950033952A (ko) | 1995-12-26 |
DE69520974D1 (de) | 2001-06-28 |
EP0676764A3 (en) | 1998-05-06 |
EP0676764A2 (en) | 1995-10-11 |
JP3251421B2 (ja) | 2002-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1104695C (zh) | 半导体集成电路 | |
JP2620423B2 (ja) | 2次元高速フーリエ変換コンバータ | |
CA1277036C (en) | Orthogonal transform processor | |
US6298162B1 (en) | Image compression/expansion using parallel decomposition/recomposition | |
Nielsen et al. | Parallel performance of fast wavelet transforms | |
CA2221243A1 (en) | A system and method for color recovery using discrete cosine transforms | |
Wilson | Chapter Nine One Dimensional SIMD Architectures—The AIS-5000 | |
Wills et al. | Processing architectures for smart pixel systems | |
Karube | On the local cross-sections in locally compact groups | |
González et al. | Parallel computation of wavelet transforms using the lifting scheme | |
US5410362A (en) | Two-dimensional digital i×j filter of rang, r<i, implemented as degenerated r×j digital filter | |
Yalamanchili et al. | A system organization for parallel image processing | |
Nielsen et al. | A scalable parallel 2D wavelet transform algorithm | |
Cantoni | IP hierarchical systems: architectural features | |
Komarek et al. | VLSI architectures for block matching algorithms | |
Weeks et al. | On block architectures for discrete wavelet transform | |
Wojtek Przytula et al. | Parallel implementation of neural networks | |
Raffo et al. | A programmable VLSI architecture based on multilayer CNN paradigms for real‐time visual processing | |
JPH09259206A (ja) | 離散コサイン変換回路 | |
Drori et al. | Wavelet warping | |
Voorhees et al. | Exploiting data parallelism in vision on the connection machine system | |
CN1061190C (zh) | 二维反离散余弦转换装置 | |
Manniesing et al. | Power analysis of a general convolution algorithm mapped on a linear processor array | |
Hancock et al. | Track one: computer vision with associated theme: machine vision applications | |
Tarmaster et al. | Accelerating image filters using a custom computing machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |