WO2016101359A1 - 基于忆阻器实现计算与存储融合的处理器及其操作方法 - Google Patents
基于忆阻器实现计算与存储融合的处理器及其操作方法 Download PDFInfo
- Publication number
- WO2016101359A1 WO2016101359A1 PCT/CN2015/070572 CN2015070572W WO2016101359A1 WO 2016101359 A1 WO2016101359 A1 WO 2016101359A1 CN 2015070572 W CN2015070572 W CN 2015070572W WO 2016101359 A1 WO2016101359 A1 WO 2016101359A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- cmu
- voltage
- fusion unit
- imp
- group
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0007—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0097—Erasing, e.g. resetting, circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/77—Array wherein the memory element being directly connected to the bit lines and word lines without any access device being used
Definitions
- Memristor is the next generation of highly promising non-volatile memory, which can realize the reversible transition between high resistance and low resistance under the action of electric pulse.
- High and low resistance can be used to represent and store “0” and “1”.
- “High resistance represents “0” and low resistance means “1”.
- the “level” logic is used to indicate “0” and “1” with high and low voltages. This "level” logic often cannot be saved after the power is turned off.
- a state of storage is required. Our state here is the resistance of the resistor.
- an object of the present invention is to provide a processor and a method for operating the same that integrates computation and storage based on a memristor, and aims to solve the problem of frequently reading and writing data from a memory during calculation.
- one fusion unit includes M bit units and M-1 column switches, and M bit lines of M bit units are connected to one communication unit, adjacent to two A column switch is connected between the bit line ends of the bit unit;
- a bit unit includes a resistor, a row switch and N memristors, one end of the first memristor is used as the first selection line, and the other end is connected in series by the row The switch and the resistor are grounded;
- one end of the second memristor serves as a second selection line, and the other end is connected to the other end of the first memristor;
- Three select lines the other end is connected to the other end of the second memristor; ...
- the resistance of the resistor is a high resistance state of the memristor and a low resistance state The square root of the product of the resistance.
- Figure 6 is a calculation storage component
- the A-CMU is connected to the B-CMU through the communication network, and the D-CMU is connected to the H-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1,i , H 2,i , and at B
- the third voltage V SET is simultaneously applied to the selection line of 2, i , D 2, i .
- the first voltage V CLEAR is simultaneously applied by the selection lines of A 2 , E 1 , B 2 , F 1 , and C 1 . Let A 2 , E 1 , B 2 , F 1 , and C 1 be in a high resistance state.
- the A-CMU is connected to the H-CMU through the communication network, the B-CMU is connected to the G-CMU, and the second voltage V COND is simultaneously applied on the selection lines of H 2 and G 2 , and at A 2 and B 2 The third voltage V SET is simultaneously applied to the selection line.
- the A-CMU is connected to the D-CMU through the communication network, and the B-CMU is connected to the C-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1 and B 1 , and at C 2 , D 2 The third voltage V SET is simultaneously applied to the selection line.
- the E-CMU is connected to the G-CMU through the communication network, the F-CMU is connected to the H-CMU, and the second voltage V COND is simultaneously applied on the selection lines of G 2 and H 2 , and at E 1 , F 1 The third voltage V SET is simultaneously applied to the selection line.
- the A-CMU is connected to the E-CMU through the communication network, the B-CMU is connected to the F-CMU, and the second voltage V COND is simultaneously applied on the selection lines of E 1 and F 1 , and at A 2 and B 2 The third voltage V SET is simultaneously applied to the selection line.
- the A-CMU is connected to the H-CMU through the communication network, the B-CMU is connected to the G-CMU, and the second voltage V COND is simultaneously applied on the selection lines of H 2 and G 2 , and at A 2 and B 2 The third voltage V SET is simultaneously applied to the selection line.
- the B-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of B 2 , and the third voltage V SET is applied to the selection line of C 1 .
- the implementation implies the operation C 1 ⁇ B 2 IMP C 1 .
- the immediate addition in the present invention can not read data from the memory, and then save it to the memory through the data bus after the operation, and only needs to find the position of the operand in the module. And the location where the result needs to be stored. After the operation is completed, the result is saved in the corresponding position in the module.
- the immediate addition in the present invention does not require an arithmetic unit, and can perform a plurality of other operations at the same time, and has better parallelism.
- the A-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of A 1 , and the third voltage V SET is applied to the selection line of C 2 .
- the implementation implies the operation C 2 ⁇ A 1 IMP C 2 .
- the B-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of B 1 , and the third voltage V SET is applied to the selection line of C 2 .
- the implementation implies the operation C 2 ⁇ B 1 IMP C 2 .
- the A-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of A 2 , and the third voltage V SET is applied to the selection line of C 1 .
- the logic in the present invention may not read data from the memory, and then save the data to the memory through the data bus after the operation, and only need to find the position and result of the operand in the module. The location to be stored, after the operation is completed, the result is saved in the corresponding position in the module.
- logic does not need to pass through an arithmetic unit, and a plurality of other operations can be performed as long as it has better parallelism.
- the data x is stored in A 1 of the A-CMU.
- the above processor is used to logically store the data x into the A 2 of the A-CMU.
- the specific operations are as follows:
- the logic in the present invention may not read data from the memory, and then save the data to the memory through the data bus after the operation, and only need to find the position and result of the operand in the module. The location to be stored, after the operation is completed, the result is saved in the corresponding position in the module.
- the logic in the present invention does not need to pass through the arithmetic unit, and can perform a plurality of other operations at the same time, and has better parallelism.
- the first voltage V CLEAR is simultaneously applied by a selection line of C 1 , C 2 , A 2 , D 1 , D 2 . Let C 1 , C 2 , A 2 , D 1 , D 2 be in a high resistance state.
- the A-CMU is connected to the C-CMU through the communication network, the second voltage V COND is simultaneously applied on the selection lines of A 2 and D 2 , and the third voltage is simultaneously applied on the selection lines of C 2 and D 1 V SET .
- the A-CMU is connected to the D-CMU through the communication network, and the B-CMU is connected to the C-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1 and B 1 , and at C 2 , D 1
- the third voltage V SET is simultaneously applied to the selection line.
- the C-CMU is connected to the D-CMU through the communication network, the second voltage V COND is applied on the selection line of D 1 , and the third voltage V SET is applied on the selection line of C 1 .
- the B-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of B 1 , and the third voltage V SET is applied to the selection line of C 2 .
- the implementation implies the operation C 2 ⁇ B 1 IMP C 2 .
- the B-CMU is connected to the C-CMU through the communication network, the second voltage V COND is applied to the selection line of C 2 , and the third voltage V SET is applied to the selection line of B 2 .
- the implementation implies the operation B 2 ⁇ C 2 IMP B 2 .
- the logic in the present invention may not read the data from the memory, and then save the data to the memory through the data bus after the operation, and only need to find the position of the operand in the module. And the location where the result needs to be stored. After the operation is completed, the result is saved in the corresponding position in the module.
- Data x stored in the A 1 A-CMU, using said processor, and the data x 128 or immediate operation, stored in the C-CMU C 1, do the following:
- the first voltage V CLEAR is simultaneously applied by the selection line of C 1 , C 2 , A 2 . Let C 1 , C 2 , A 2 be in a high resistance state.
- the A-CMU is connected to the D-CMU through the communication network, and the B-CMU is connected to the C-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1 and B 1 , and at C 2 , D 1
- the third voltage V SET is simultaneously applied to the selection line.
- the C-CMU is connected to the D-CMU via a communication network, a second voltage V COND is applied to the select line of D 1 , and a third voltage V SET is applied to the select line of C 1 .
- a second voltage V COND is applied to the select line of D 1
- a third voltage V SET is applied to the select line of C 1 .
- the switch CK 1 is turned off , the second voltage V COND is applied to the selection line of C 2 , and the third voltage V SET is applied to the selection line of C 1 .
- the implementation implies the operation C 1 ⁇ C 2 IMP C 1 .
- the left shift m bit in the present invention can not read data from the memory, and is saved to the memory through the data bus after the operation, and only needs to find the operand in the module. The location and the location where the result needs to be stored. After the operation is completed, the result is saved in the corresponding location in the module.
- the left shift of m bits does not need to pass through an arithmetic unit, and at the same time, a plurality of other operations can be performed with better parallelism.
- the switch CK 1 is turned off , a second voltage V COND is applied to the select line of A 1 , and a third voltage V SET is applied to the select line of C 2 .
- the implementation implies the operation C 2 ⁇ A 1 IMP C 2 .
- the first voltage V CLEAR is simultaneously applied by a selection line on C 1 , C 2 , D 1 , D 2 . Let C 1 , C 2 , D 1 , D 2 be in a high resistance state.
- the A-CMU is connected to the C-CMU through the communication network, the B-CMU is connected to the D-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1 and B 1 , and at C 3 , D 3 The third voltage V SET is simultaneously applied to the selection line.
- the B-CMU is connected to the C-CMU through a communication network, the second voltage V COND is applied to the selection line of B 1 , and the third voltage V SET is applied to the selection line of C 2 .
- the implementation implies the operation C 2 ⁇ B 1 IMP C 2 .
- the A-CMU is connected to the C-CMU via a communication network, a second voltage V COND is applied to the select line of A 1 , and a third voltage V SET is applied to the select line of A 2 .
- a second voltage V COND is applied to the select line of A 1
- a third voltage V SET is applied to the select line of A 2 .
- the A-CMU is connected to the D-CMU through the communication network, and the B-CMU is connected to the C-CMU, and the second voltage V COND is simultaneously applied on the selection lines of A 1 and B 1 , and at C 2 , D 1
- the third voltage V SET is simultaneously applied to the selection line.
- the C-CMU is connected to the D-CMU via a communication network, a second voltage V COND is applied to the select line of D 1 , and a third voltage V SET is applied to the select line of C 1 .
- a second voltage V COND is applied to the select line of D 1
- a third voltage V SET is applied to the select line of C 1 .
- the switch CK 1 is turned off , a second voltage V COND is applied to the select line of A 1 , and a third voltage V SET is applied to the select line of C 2 .
- the implementation implies the operation C 2 ⁇ A 1 IMP C 2 .
Landscapes
- Chemical & Material Sciences (AREA)
- Engineering & Computer Science (AREA)
- Materials Engineering (AREA)
- Telephonic Communication Services (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
一种基于忆阻器实质蕴涵操作的计算与存储融合的处理器及其操作方法;该处理器由多个计算与存储融合单元(Computing&Memory Unit,CMU)通过通信网络相连接。使用一种能记忆电阻的器件,即忆阻器。在设计电路时,忆阻器的阻变特性已参与完成相应的计算,并将计算结果用忆阻器的阻态来保存,省去了传统计算机系统中将计算结果输出到存储器的步骤,实现计算与存储的融合。通过通信网络,使得任意CMU中数据都能作为操作数进行计算,并存储在指定的CMU内。CMU既可以存储数据,也可以当作计算单元使用,这将不同于现有的计算机系统必须使用专门的运算器和存储器,可以极其方便进行并行计算与并行存储。
Description
本发明属于微电子器件领域,更具体地,涉及一种基于忆阻器实质蕴涵操作的计算与存储融合的处理器及其操作方法。
传统计算机采用冯诺依曼结构,此结构的存储和计算单元分离,分别由存储器和中央处理器(处理器)中的运算器完成。随着半导体工艺水平的不断提高,处理器和存储器的性能都有了很大的提升。根据Moore定律,微处理器内晶体管数目每18个月翻1番,处理器性能的年增长速度曾一度超过50%,而存储器性能的年增长速度平均只有7%,大约每10年增加1倍。以Intel处理器为例,从1980年到2006年,处理器的时钟频率提高了约3500倍,而DRAM的存取时间却只减少了约6倍。存储技术与处理器技术发展速度的不平衡,致使两者速度差距不断增大,使得处理器需要相当多的时间在等待内存数据的读取,导致存储墙(Memory Wall)问题的出现,这一问题已成为进一步提高计算机系统整体性能的瓶颈之一。
处理器和存储器之间的性能差距是短期内无法解决的问题,降低存储访问对处理器性能的影响,是当前处理器体系结构设计的主要挑战之一。随着单芯片晶体管集成度越来越高,芯片功耗、线传输延迟、漏电流等问题日益严重,单纯依靠提高主频来提高处理器性能已非常困难,而采用传统的超标量和前瞻技术开发指令级并行的投资回报率也越来越低,因此,开发更高层次的线程级并行和任务级并行已成为持续提升处理器性能的必然趋势,以多核处理器为代表的先进体系结构已成为当前处理器发展的主流。多核设计是当前高性能计算领域的主导思想,已应用于服务器、笔记本到游戏平台以及高性能多媒体应用等多个领域。将多个微处理器核心集成于同一芯片内的片上多核体系结构,以及结合多线程技术的多核多线程体系结构,均有效利用片上晶体管资源,为用户提供多线程执行能力和高产出率计算。多核体系结构是维持Moore定律、利用有限的芯片面积进一
步提升处理器性能的有效方法。如何实现并进一步优化多核处理器的设计已成为近期学术界和工业界研究的重点。
传统的单处理器芯片的存储器只需为一个处理器核提供数据;而在多核情况下,存储器需要同时为多个处理器核提供数据。目前,多核处理器核的数量按照Moore定律在增长,而处理器的存储器带宽却受芯片引脚数目的限制,几乎没有增长,并且多核处理器线程间访存的相互干扰进一步导致了访存请求延迟的增加。这些变化严重地加剧原已存在的“存储墙”问题。在访存带宽不变情况下,问题规模随着时间而增大,程序的执行时间随时间成指数增长。因此,在未来可预测的时间范围内,存储系统仍将是困扰计算机系统设计人员的最大问题。
面对这一问题,我们希望通过改变计算机的硬件组织来解决这一问题。忆阻器是下一代极具潜力的非易失性存储器,它能在电脉冲的作用下实现高电阻和低电阻之间的可逆转变,高低电阻可以用来表示和存储“0”和“1”,用高电阻表示“0”,低电阻表示“1”。这与传统的“电平”逻辑不同,传统的“电平”逻辑是以高低电压来表示“0”和“1”,这种“电平”逻辑往往断电后电路状态无法保存。要保证非易失的存储,需要采用一种状态的存储,我们这里的状态就是电阻的阻态。这样我们在设计电路时,考虑到忆阻器的阻变特性参与完成逻辑计算,并将计算结果用忆阻器的阻态来保存,即使在断电情况下仍然保存着信息,这就省去的将传统架构将计算结果输出到存储器的步骤,实现计算与存储的融合。
2010年,惠普实验室在Nature杂志上发表文章,提出未来非易失性的状态逻辑运算替代现有的电平逻辑运算。它使用两个忆阻器和一个电阻来实现Material Implication(IMP)实质蕴含((NOT p)OR q)逻辑,逻辑状态都以电阻形式非易失性地存储在忆阻器中,存储和运算的融合首次在忆阻器器件中实现。
蕴含操作需要使用一个电阻RG(RON<<RG<<ROFF),它与两个并联的忆阻器P,Q相连。p,q的初始值分别保存在忆阻器P,Q中,在P,Q上分别同时施加VCOND,VSET电压,P上施加的电压VCOND小于阈值电压,因此P的状态不会被改变。当P处于高阻态(逻辑0)时,由于ROFF>>RG,所
以RG上的电压几乎为0,于是Q两端的电压VQ≈VSET,此时,无论Q之前处于何种状态,都会被置为低阻态(逻辑1)。当P的状态处于低阻态(逻辑1)时,RG>>RON,所以RG上的电压几乎为VCONG,于是Q两端的电压VQ≈VSET—VCOND,这个电压小于阈值电压,不会使忆阻器状态改变,所以Q保持原状态。即q’←pIMPq,如图1所示。
解决存储墙问题主要有两种技术途径:一种是从根本上提高存储器性能,但短期内尚没有有效技术和手段;另一种是依赖微电子技术的快速发展,改变计算机体系结构,优化计算机硬件组织来解决存储墙问题。
[发明内容]
针对现有技术的缺陷,本发明的目的在于提供一种基于忆阻器实现计算与存储融合的处理器及其操作方法,旨在解决计算时需要频繁地从存储器中读、写数据的问题。
本发明提供了一种基于忆阻器实现计算与存储融合的处理器,包括:计算存储部件,包括X个融合单元和X个通信单元,每一个融合单元连接一个通信单元,各个通信单元相互连接构成一个通信网络,以及控制部件,用于根据指令产生相应控制信号,连接CMU之间的通信网络,选择操作数地址、结果存放地址,当操作需要用到其他CMU时,其能寻找空闲的一个或多个CMU,用以实现所做的操作;其中,一个融合单元包括M个位单元和M-1个列开关,M个位单元的M条位线均连接一个通信单元,相邻两个位单元的位线端之间连接一个列开关;一个位单元包括一个电阻、一个行开关和N个忆阻器,第一忆阻器的一端作为第一选择线,另一端通过依次串联的行开关和电阻接地;第二忆阻器的一端作为第二选择线,另一端连接至第一忆阻器的另一端;第三忆阻器的一端作为第三选择线,另一端连接至第二忆阻器的另一端;……第N忆阻器的一端作为第N选择线,另一端连接至第N-1忆阻器的另一端;X为大于等于2的正整数,M为大于等于2的正整数,N为大于等于2的正整数。
更进一步地,一个位单元中的电阻的阻值远大于忆阻器低阻态时的阻值且远小于忆阻器高阻态时的阻值。
更进一步地,所述电阻的阻值为忆阻器的高阻态的阻值与低阻态时的
阻值的乘积的开平方。
本发明还提供了一种基于上述的处理器的数据传输、算术运算、逻辑运算和移位等操作方法,数据传输操作包括下述步骤:
(1.1)通过在第二融合单元B-CMU中的第1组忆阻器B1和第2组忆阻器B2的选择线上同时施加第一电压VCLEAR,使得所述第1组忆阻器B1和所述第2组忆阻器B2均处于高阻状态,该状态记为0;
第一电压VCLEAR为负向且值大于阈值电压;所述阈值电压为使得忆阻器的状态发生改变的电压;
(1.2)通过通信网络将第一融合单元A-CMU和第二融合单元B-CMU连通,通过在第一融合单元A-CMU的第1组忆阻器A1的选择线上施加第二电压VCOND,并在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第三电压VSET,将((NOT A1)OR B2)保存在B2中实现蕴含操作,
其中第二电压VCOND正向且值小于阈值电压;第三电压VSET为正向且值大于阈值电压;且所述第三电压VSET与所述第二电压VCOND的差值小于所述阈值电压;
(1.3)在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第二电压VCOND,并在第二融合单元B-CMU中的第1组忆阻器B1上施加第三电压VSET,将数据保存在B1中实现蕴含操作B1←B2IMP B1,从而实现将存储于第一融合单元A-CMU中第1组忆阻器A1中的数据x传输至第二融合单元B-CMU中的第1组忆阻器B1中。
本发明由多个计算与存储融合单元通过通信网络相连接;目前处理器相连的存储器均以高低电平表示“0”和“1”,这种往往断电后电路状态无法保存。要保证非易失的存储,需要采用一种状态的存储,本发明中使用的是电阻的阻态;在设计电路时,考虑到忆阻器的阻变特性已参与完成相应的计算,将计算结果用忆阻器的阻态来保存,省去了传统计算机系统中将计算结果输出到存储器的步骤,实现计算与存储的融合。通过通信网络,使得任意CMU中数据都能当作操作数进行计算,并存储在指定的CMU内。CMU既可以存储数据,也可以当作计算单元使用,这将不同于现有的计算机系统必须使用专门的运算器和存储器,本发明极其方便进行并行计算与
并行存储,并实现大多数现有计算机系统中与计算和存储有关的操作。
图1为蕴含操作原理,其中(a)蕴含操作电路,(b)蕴含操作p IMP q真值表;
图2为N=4的位单元;
图3为M=8,N=4的CMU;
图4为由M=8,N=4的处理器中加法器的逻辑结构示意图;
图5为M=8的A-CMU与B-CMU相连的逻辑结构;
图6为计算存储部件;
图7为计算与存储融合的处理器结构;
图8为控制部件的控制流程。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
由于现有技术中的忆阻器用来做计算,并没有说明计算所需的数据是如何得到的,计算结果往往也是保存在临近的单元内,这样下一次对计算结果进行操作会比较困难。而本发明公开了基于忆阻器的非易失性的一套数据传输、算术运算、逻辑运算和移位操作的实现方案,并公开了一种计算和存储融合的处理器阵列结构。由于本发明具有计算和存储功能,在其他一些既需要计算也需要存储功能的部件中均可以使用本发明。例如图像处理器(GPU)、路由器等等。
本发明实施例中,基于忆阻器的计算与存储融合的处理器结构,包括计算存储部件和控制部件;计算存储部件包括X个融合单元和X个通信单元,每一个融合单元连接一个通信单元,各个通信单元相互连接构成一个通信网络,X为大于等于2的正整数。控制部件用于根据指令产生相应控制信号,连接CMU之间的通信网络,选择操作数地址、结果存放地址,当操作需要用到其他CMU时,其能寻找空闲的一个或多个CMU,用以实现所做的操作。
其中融合单元具体是指计算与存储融合单元(Computing&Memory Unit,CMU),X个所述CMU中,执行单个指令时,使用Y个上述CMU单元,通过通信网络相互连接,执行后结果保存在这Y个单元里的任意一个之中,其中X≥Y>0。
一个融合单元包括M个位单元和M-1个列开关,M个位单元的M条位线均连接一个通信单元,相邻两个位单元的位线端之间连接一个列开关;M为大于等于1的正整数。
一个位单元包括包括一个电阻、一个行开关和N个忆阻器,第一忆阻器的一端作为第一选择线,另一端通过依次串联的行开关和电阻接地;第二忆阻器的一端作为第二选择线,另一端连接至第一忆阻器的另一端;第三忆阻器的一端作为第三选择线,另一端连接至第二忆阻器的另一端;……第N忆阻器的一端作为第N选择线,另一端连接至第N-1忆阻器的另一端;N为大于等于1的正整数。
作为本发明的一个实施例,电阻的阻值需远大于忆阻器低阻态时的阻值且远小于忆阻器高阻态时的阻值,优选为:忆阻器的高阻态的阻值与低阻态时的阻值的乘积的开平方。
上述基于忆阻器的计算与存储融合的新型处理器单元结构,其一个位单元结构包括第1忆阻器、第2忆阻器、第3忆阻器……第N忆阻器、第1选择线、第2选择线、第3选择线……第N选择线、1条位线、1个行开关、1个电阻,其中N≥1。当N=1时,单个的CMU不能进行蕴含操作,N=2时,单个CMU才可以做蕴含操作,N越大,单个CMU能进行的操作越多。
第1忆阻器的输入端作为电路的第1选择线输入端,所述的第2忆阻器的输入端作为电路的第2选择线输入端,所述的第3忆阻器的输入端作为电路的第3选择线输入端……所述的第N忆阻器的输入端作为电路的第N选择线输入端;所述第1忆阻器、第2忆阻器、第3忆阻器……第N忆阻器的另一端连接在所述的位线上,连接在所述行开关一侧;所述行开关另一侧与所述电阻串联,所述电阻另一侧接地。
其CMU的结构以M个位(bit)进行设计,包括M个位单元、M-1个列
开关,由M个位单元中的第1忆阻器构成第1组忆阻器、M个1位单元中的第2忆阻器构成第2组忆阻器、M个位单元中的第3忆阻器构成第3组忆阻器……M个位单元中的第N忆阻器构成第N组忆阻器,每一组有M个忆阻器,其中M≥1。当总的忆阻器个数相同,M也相同时,N越大,CMU单元数越少,网络的开销越小。
其中第1组忆阻器选择线相连,构成第1组选择线;第2组忆阻器选择线相连,构成第2组选择线;第3组忆阻器选择线相连,构成第3组选择线……第N组忆阻器选择线相连,构成第N组选择线,其中通过一组选择线,可在这一组内选择一个或多个忆阻器。有M条位线,相邻两条位线通过一个列开关相连,第1位线与第2位线之间连接一个列开关,第2位线与第3位线之间连接一个列开关,依此类推。
上述计算与存储融合的新型处理器结构,其特征在于,包括X个通信单元,每个通信单元连接一个CMU,各个CMU间通过通信网络连接,当CMU两两相连时,其连接特点是根据控制信号将A-CMU的第一位线可以与B-CMU的第一位线相连,A-CMU的第二位线可以与B-CMU的第二位线相连,……A-CMU的第M位线可以与B-CMU的第M位线相连;也可以将A-CMU和单元B-CMU错一位或错多位相连,如A-CMU的第一到M-1位线与B-CMU的第二到M位线相连,或者A-CMU的第三到M位线与B-CMU的第一到M-2位线相连,等等。
每个忆阻器数据都有固定的地址,先选择到该忆阻器所在的CMU,再在CMU内通过选择线找到该忆阻器。
该选择线能够选择到该数据的具体某一位或某几位忆阻器。
选择线选择需要写“1”的某一位或某几位,在选择线上施加第三电压VSET,再选择需要写“0”的某一位或某几位,在选择线上加电压VCLEAR。
在本发明实施例中,一个计算与存储融合单元,N=4时位单元参见图2所示,当M=8时,每字节数据用一个选择线来选中这一字节数据,一字节数据由8个忆阻器表示,每个忆阻器表示一位数据。全加器结构由4个CMU组成,其中两两CMU经通信网络相连,具体组成如图3、图4和图5所示。计算存储部件的结构设计如图6所示,计算与存储融合的新型处理器结构
如图7所示,可以通过控制部件确定数据存储的CMU位置,再通过选择线确定数据的具体位置;控制部件流程图如图8所示。
(一)N小于4时,M为任意正整数,具体操作方法相同,为了便于说明,现以N=2,M=8为例详述如下:
第一融合单元A-CMU中有8个位单元,一个位单元中有2个忆阻器,8个位单元中的第一忆阻器构成了第1组忆阻器A1,第1组忆阻器A1中各个第一忆阻器分别记为:A1,1、A1,2、A1,3、A1,4、A1,5、A1,6、A1,7、A1,8,8个位单元中的第二忆阻器构成了第2组忆阻器A2,第2组忆阻器A2中各个第二忆阻器分别记为:A2,1、A2,2、A2,3、A2,4、A2,5、A2,6、A2,7、A2,8。
第二融合单元B-CMU中有8个位单元,一个位单元中有2个忆阻器,8个位单元中的第一忆阻器构成了第1组忆阻器,第1组忆阻器中各个第一忆阻器分别记为:B1,1、B1,2、B1,3、B1,4、B1,5、B1,6、B1,7、B1,8,8个位单元中的第二忆阻器构成了第2组忆阻器,第2组忆阻器中各个第二忆阻器分别记为:B2,1、B2,2、B2,3、B2,4、B2,5、B2,6、B2,7、B2,8。
同理,第三融合单元C-CMU、第四融合单元D-CMU、第五个融合单元E-CMU、第六个融合单元F-CMU、第七个融合单元G-CMU和第八个融合单元H-CMU,每一个CMU均有8个位单元,一个位单元有2个忆阻器,8个位单元中的第一忆阻器构成了第1组忆阻器,分别为C1、D1、E1、F1、G1、H1;8个位单元中的第二忆阻器构成了第2组忆阻器,分别为C2、D2、E2、F2、G2、H2。
(1)数据传输
数据x存储于第一融合单元A-CMU中的第1组忆阻器A1中,采用上述处理器将数据x传输至第二融合单元B-CMU中的第1组忆阻器B1中,具体操作如下:
(1.1)通过在第二融合单元B-CMU中的第1组忆阻器B1和第2组忆阻器B2的选择线上同时施加第一电压VCLEAR,使得忆阻器处于高阻状态,该状态记为0;电压VCLEAR为负向且值大于第一阈值电压;所述第一阈值电压为使得忆阻器的状态发生改变的电压;第一阈值电压为已知值;
(1.2)通过通信网络将A-CMU和B-CMU连通,通过在第一融合单元
A-CMU的第1组忆阻器A1的选择线上施加第二电压VCOND,并在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第三电压VSET实现蕴含操作将((NOT A1)OR B2)保存在B2中,即B2←A1IMP B2。其中第二电压VCOND正向且值小于阈值电压;第三电压VSET为正向且值大于阈值电压;
(1.3)在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第二电压VCOND,并在第二融合单元B-CMU中的第1组忆阻器B1上施加第三电压VSET,实现蕴含操作B1←B2IMP B1,将数据保存在B1中。
对比现有的计算机中的数据传输操作,本发明的数据传输操作不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(2)数据交换
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x与数据y交换位置,具体操作如下:
(2.1)通过在C1,C2,D1,D2的选择线上同时施加第一电压VCLEAR。使得C1,C2,D1,D2处于高阻状态,该状态记为0。
(2.2)通过通信网络将A-CMU与C-CMU连通,将B-CMU与D-CMU连通,在A1,B1的选择线上同时施加第二电压VCOND,并在C2,D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←A1IMP C2,D2←B1IMP D2。
(2.3)在C2,D2的选择线上同时施加第二电压VCOND,并在C1,D1的选择线上同时施加第三电压VSET。实现蕴含操作C1←C2IMP C1,D1←D2IMP D1。
(2.4)在A1,A2,B1,B2的选择线上同时施加第一电压VCLEAR。使得A1,A2,B1,B2处于高阻状态。
(2.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在C1,D1的选择线上同时施加第二电压VCOND,并在A2,B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←D1IMP A2,B2←C1IMP B2。
(2.6)在A2,B2的选择线上同时施加第二电压VCOND,并在A1,B1的选择线上同时施加第三电压VSET。实现蕴含操作A1←A2IMP A1,B1←B2IMP B1,将数据x存储于B-CMU中的B1中,数据y存储于A-CMU中的
A1中。
对比现有的计算机中的数据传输操作,本发明的数据传输操作不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(3)加法
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x与数据y相加,存储到C-CMU的C1中,具体操作如下:
(3.1)通过在C2、G1、G2、D2、H1的选择线上同时施加第一电压VCLEAR。使得C2、G1、G2、D2、H1处于高阻状态。
(3.2)通过通信网络将A-CMU与G-CMU连通,B-CMU与H-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在G1、H1的选择线上同时施加第三电压VSET。实现蕴含操作G1←A1IMP G1,H1←B1IMP H1。
(3.3)通过通信网络将C-CMU与G-CMU连通,D-CMU与H-CMU连通,在G1、H1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←G1IMP C2,D2←H1IMP D2。
(3.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作D2←A1IMP D2,C2←B1IMP C2。
(3.5)通过通信网络将C-CMU与G-CMU连通,在C2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET。实现蕴含操作G2←C2IMP G2。
(3.6)通过通信网络将D-CMU与G-CMU连通,在D2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET。实现蕴含操作G2←D2IMP G2。
(3.7)通过在B2,i、D2,i、H2,i+1的选择线上同时施加第一电压VCLEAR。使得B2,i、D2,i、H2,i+1处于高阻状态。(初始i=1)
(3.8)通过通信网络将D-CMU与G-CMU连通,在B1,i、G2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←G2,i IMP D2,i。
(3.9)通过通信网络将A-CMU与B-CMU连通,D-CMU与H-CMU连通,在A1,i、H2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,
i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←H2,i IMP D2,i。
(3.10)通过通信网络将D-CMU与H-CMU连通,断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,并在H2,i+1的选择线上施加第三电压VSET。实现蕴含操作H2,i+1←D2,i IMP H2,i+1。
(3.11)通过通信网络将B-CMU与H-CMU连通,断开开关BKi、HKi、HKi+1、BKi,i+1,闭合开关HKi,i+1,在B2,i的选择线上同时施加第二电压VCOND,并在H2,i+1的选择线上同时施加第三电压VSET。实现蕴含操作H2,
i+1←B2,i IMP H2,i+1。(若i小于8,则i+1,返回3.7,若i≥8,则做3.12)
(3.12)通过在A2、E1、B2、F1、C1的选择线上同时施加第一电压VCLEAR。使得A2、E1、B2、F1、C1处于高阻状态。
(3.13)通过通信网络将E-CMU与G-CMU连通,F-CMU与H-CMU连通,在G2、H2的选择线上同时施加第二电压VCOND,并在E1、F1的选择线上同时施加第三电压VSET。实现蕴含操作E1←G2IMP E1,F1←H2IMP F1。
(3.14)通过通信网络将A-CMU与E-CMU连通,B-CMU与F-CMU连通,在E1、F1的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←E1IMP A2,B2←F1IMP B2。
(3.15)通过通信网络将A-CMU与H-CMU连通,B-CMU与G-CMU连通,在H2、G2的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←H2IMP A2,B2←G2IMP B2。
(3.16)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
(3.17)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施
加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←B2IMP C1。
对比现有的计算机中的加法操作,本发明中的加法没有“从存储器中读取数据,运算完后通过数据总线再保存到存储器中”这些频繁访问存储器的步骤,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置上;并且本发明中加法不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(4)立即数加法
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x与立即数128相加,存储到C-CMU的C1中,具体操作如下:
(4.1)通过在选择线B1,1上加电压VSET,在选择线B1,2-B1,8上加电压VCLEAR,将128写入B1中。
(4.2)通过在C2、G1、G2、D2、H1的选择线上同时施加第一电压VCLEAR。使得C2、G1、G2、D2、H1处于高阻状态。
(4.3)通过通信网络将A-CMU与G-CMU连通,B-CMU与H-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在G1、H1的选择线上同时施加第三电压VSET。实现蕴含操作G1←A1IMP G1,H1←B1IMP H1。
(4.4)通过通信网络将C-CMU与G-CMU连通,D-CMU与H-CMU连通,在G1、H1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←G1IMP C2,D2←H1IMP D2。
(4.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作D2←A1IMP D2,C2←B1IMP C2。
(4.6)通过通信网络将C-CMU与G-CMU连通,在C2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET。实现蕴含操作G2←C2IMP G2。
(4.7)通过通信网络将D-CMU与G-CMU连通,在D2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET。实现蕴含操作G2←D2IMP G2。
(4.8)通过在B2,i、D2,i、H2,i+1的选择线上同时施加第一电压VCLEAR。使得B2,i、D2,i、H2,i+1处于高阻状态。(初始i=1)
(4.9)通过通信网络将D-CMU与G-CMU连通,在B1,i、G2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←G2,i IMP D2,i。
(4.10)通过通信网络将A-CMU与B-CMU连通,D-CMU与H-CMU连通,在A1,i、H2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,
i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←H2,i IMP D2,i。
(4.11)通过通信网络将D-CMU与H-CMU连通,断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,并在H2,i+1的选择线上施加第三电压VSET。实现蕴含操作H2,i+1←D2,i IMP H2,i+1。
(4.12)通过通信网络将B-CMU与H-CMU连通,断开开关BKi、HKi、HKi+1、BKi,i+1,闭合开关HKi,i+1,在B2,i的选择线上施加第二电压VCOND,并在H2,i+1的选择线上施加第三电压VSET。实现蕴含操作H2,i+1←B2,i IMP H2,
i+1。(若i小于8,则i+1,返回4.8,若i≥8,则做4.13)
(4.13)通过在A2、E1、B2、F1、C1的选择线上同时施加第一电压VCLEAR。使得A2、E1、B2、F1、C1处于高阻状态。
(4.14)通过通信网络将E-CMU与G-CMU连通,F-CMU与H-CMU连通,在G2、H2的选择线上同时施加第二电压VCOND,并在E1、F1的选择线上同时施加第三电压VSET。实现蕴含操作E1←G2IMP E1,F1←H2IMP F1。
(4.15)通过通信网络将A-CMU与E-CMU连通,B-CMU与F-CMU连通,在E1、F1的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←E1IMP A2,B2←F1IMP B2。
(4.16)通过通信网络将A-CMU与H-CMU连通,B-CMU与G-CMU连通,在H2、G2的选择线上同时施加第二电压VCOND,并在A2、B2的选择
线上同时施加第三电压VSET。实现蕴含操作A2←H2IMP A2,B2←G2IMP B2。
(4.17)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
(4.18)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←B2IMP C1。
对比现有的计算机中的立即数加法操作,本发明中的立即数加法可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且本发明中立即数加法不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(5)逻辑与
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑与操作,存储到C-CMU的C1中,具体操作如下:
(5.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR。使得C1,C2处于高阻状态。
(5.2)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(5.3)通过通信网络将A-CMU与C-CMU连通,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(5.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
对比现有的计算机中的逻辑与操作,本发明中的逻辑与可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存
在模块内相应的位置。并且,本发明中逻辑与不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(6)逻辑或
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑或操作,存储到C-CMU的C1中,具体操作如下:
(6.1)通过在C1,C2,A2的选择线上同时施加第一电压VCLEAR。使得C1,C2,A2处于高阻状态。
(6.2)通过通信网络将B-CMU与C-CMU连通,B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(6.3)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(6.4)在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作A2←A1IMP A2。
(6.5)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
对比现有的计算机中的逻辑或操作,本发明中的逻辑或可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中逻辑或不需要通过运算器,同可以时进行多个其他操作,拥有更好的并行性。
(7)逻辑非
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x做逻辑非操作,存储到A-CMU的A2中,具体操作如下:
(7.1)通过在A2的选择线上施加第一电压VCLEAR。使得A2处于高阻状态。
(7.2)通过在A1的选择线上施加第二电压VCOND,并在A2的选择线
上施加第三电压VSET。实现蕴含操作A2←A1IMP A2。
对比现有的计算机中的逻辑非操作,本发明中的逻辑非可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中逻辑非不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(8)逻辑异或
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑异或操作,存储到C-CMU的C1中,具体操作如下:
(8.1)通过在C1、C2、A2、D1、D2的选择线上同时施加第一电压VCLEAR。使得C1、C2、A2、D1、D2处于高阻状态。
(8.2)通过通信网络将B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在A2、D2的选择线上同时施加第三电压VSET。实现蕴含操作A2←A1IMP A2,D2←B1IMP D2。
(8.3)通过通信网络将A-CMU与C-CMU连通,在A2、D2的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作C2←A2IMP C2,D2←D1IMP D2。
(8.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作D1←A1IMP D1,C2←B1IMP C2。
(8.5)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(8.6)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←D1IMP C1。
对比现有的计算机中的逻辑异或操作,本发明中的逻辑异或可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在
模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中逻辑异或不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(9)逻辑或非
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑或非操作,存储到C-CMU的C1中,具体操作如下:
(9.1)通过在C1,C2,A2,B2的选择线上同时施加第一电压VCLEAR。使得C1,C2,A2,B2处于高阻状态。
(9.2)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(9.3)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在B2的选择线上施加第三电压VSET。实现蕴含操作B2←C2IMP B2。
(9.4)在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作A2←A1IMP A2。
(9.5)通过通信网络将A-CMU与B-CMU相连,在A2的选择线上施加第二电压VCOND,并在B2的选择线上施加第三电压VSET。实现蕴含操作B2←A2IMP B2。
(9.6)通过通信网络将B-CMU与C-CMU相连,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←B2IMP C1。
对比现有的计算机中的逻辑或非操作,本发明中的逻辑或非可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中逻辑或非不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(10)立即数与
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行与操作,存储到C-CMU的C1中,具体操作如下:
(10.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(10.2)通过在C1,C2的选择线上同时施加第一电压VCLEAR。使得C1,C2处于高阻状态。
(10.3)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(10.4)通过通信网络将A-CMU与C-CMU连通,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(10.5)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
对比现有的计算机中的立即数与操作,本发明中的立即数与可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中立即数与不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(11)立即数或
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行或操作,存储到C-CMU的C1中,具体操作如下:
(11.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(11.2)通过在C1,C2,A2的选择线上同时施加第一电压VCLEAR。使得C1,C2,A2处于高阻状态。
(11.3)通过通信网络将B-CMU与C-CMU连通,B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(11.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(11.5)在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作A2←A1IMP A2。
(11.6)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
对比现有的计算机中的立即数或操作,本发明中的立即数或可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中立即数或不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(12)立即数异或
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行异或操作,存储到C-CMU的C1中,具体操作如下:
(12.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(12.2)通过在C1、C2、A2、D1、D2的选择线上同时施加第一电压VCLEAR。使得C1、C2、A2、D1、D2处于高阻状态。
(12.3)通过通信网络将B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在A2、D2的选择线上同时施加第三电压VSET。实现蕴含操作A2←A1IMP A2,D2←B1IMP D2。
(12.4)通过通信网络将A-CMU与C-CMU连通,在A2、D2的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作C2←A2IMP C2,D2←D1IMP D2。
(12.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作D1←A1IMP D1,C2←B1IMP C2。
(12.6)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施
加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(12.7)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←D1IMP C1。
对比现有的计算机中的立即数异或操作,本发明中的立即数异或可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中立即数异或不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(13)左移m位
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x左移一位,存储到C-CMU的C1中,具体操作如下:
(13.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态。
(13.2)通过通信网络将A-CMU与C-CMU连通,其中,A1,i+m=C1,i。断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(13.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
对比现有的计算机中的左移m位操作,本发明中的左移m位可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中左移m位不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(14)右移m位
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x左移一位,存储到C-CMU的C1中,具体操作如下:
(14.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR,使得C1,
C2处于高阻状态。
(14.2)通过通信网络将A-CMU与C-CMU连通,其中,A1,i=C1,i+m。断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(14.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
对比现有的计算机中的右移m位操作,本发明中的右移m位可以不从存储器中读取数据,运算完后通过数据总线再保存到存储器中,只需要在模块内找到操作数的位置和结果需要存放的位置,在运算完成后,结果就保存在模块内相应的位置。并且,本发明中右移m位不需要通过运算器,同时可以进行多个其他操作,拥有更好的并行性。
(二)N≥4时,M为任意正整数,具体操作方法相同,为了便于说明,现以N=4,M=8为例详述如下:
(1)数据传输
数据x存储于A-CMU中的A1中,将数据x存储到B-CMU的B1中,具体操作如下:
(1.1)通过在B1和B2的选择线上同时施加第一电压VCLEAR,使得B1,B2处于高阻状态。
(1.2)通过通信网络将A-CMU与B-CMU连通,在A1的选择线上施加第二电压VCOND,并在B2的选择线上施加第三电压VSET,实现蕴含操作B2←A1IMP B2。
(1.3)在B2的选择线上施加第二电压VCOND,并在B1的选择先上施加第三电压VSET,实现蕴含操作B1←B2IMP B1。
(2)数据交换
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x与数据y交换位置,具体操作如下:
(2.1)通过在C1,C2,D1,D2的选择线上同时施加第一电压VCLEAR。使得C1,C2,D1,D2处于高阻状态。
(2.2)通过通信网络将A-CMU与C-CMU连通,将B-CMU与D-CMU
连通,在A1,B1的选择线上同时施加第二电压VCOND,并在C2,D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←A1IMP C2,D2←B1IMP D2。
(2.3)在C2,D2的选择线上同时施加第二电压VCOND,并在C1,D1的选择线上同时施加第三电压VSET。实现蕴含操作C1←C2IMP C1,D1←D2IMP D1。
(2.4)在A1,A2,B1,B2的选择线上同时施加第一电压VCLEAR。使得A1,A2,B1,B2处于高阻状态。
(2.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在C1,D1的选择线上同时施加第二电压VCOND,并在A2,B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←D1IMP A2,B2←C1IMP B2。
(2.6)在A2,B2的选择线上同时施加第二电压VCOND,并在A1,B1的选择线上同时施加第三电压VSET。实现蕴含操作A1←A2IMP A1,B1←B2IMP B1。
(3)加法
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x与数据y相加,存储到C-CMU的C1中,具体操作如下:
(3.1)通过在C2、C3、C4、D2、D3的选择线上同时施加第一电压VCLEAR。使得C2、C3、C4、D2、D3处于高阻状态。
(3.2)通过通信网络将A-CMU与C-CMU连通,B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C3、D3的选择线上同时施加第三电压VSET。实现蕴含操作C3←A1IMP C3,D3←B1IMP D3。
(3.3)通过通信网络将C-CMU与D-CMU连通,在C3、D3的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←C3IMP C2,D2←D3IMP D2。
(3.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择
线上同时施加第三电压VSET。实现蕴含操作D2←A1IMP D2,C2←B1IMP C2。
(3.5)在C2的选择线上施加第二电压VCOND,并在C4的选择线上施加第三电压VSET。实现蕴含操作C4←C2IMP C4。
(3.6)通过通信网络将C-CMU与D-CMU连通,在D2的选择线上施加第二电压VCOND,并在C4的选择线上施加第三电压VSET。实现蕴含操作G2←D2IMP G2。
(3.7)通过在B2,i、D2,i、D4,i+1的选择线上同时施加第一电压VCLEAR。使得B2,i、D2,i、D4,i+1处于高阻状态。(初始i=1)
(3.8)通过通信网络将C-CMU与D-CMU连通,在B1,i、C4,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←C4,i IMP D2,i。
(3.9)通过通信网络将A-CMU与B-CMU连通,在A1,i、D4,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←D4,i IMP D2,i。
(3.10)断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,在D4,i+1的选择线上施加第三电压VSET。实现蕴含操作D4,
i+1←D2,i IMP D4,i+1。
(3.11)通过通信网络将B-CMU与D-CMU连通,断开开关BKi、DKi、DKi+1、BKi,i+1,闭合开关DKi,i+1,在B2,i的选择线上施加第二电压VCOND,并在D4,i+1的选择线上施加第三电压VSET。实现蕴含操作D4,i+1←B2,i IMP D4,
i+1。(若i小于8,则i+1,返回3.7,若i≥8,则做3.12)
(3.12)通过在A2、A3、B2、B3、C1的选择线上同时施加第一电压VCLEAR。使得A2、A3、B2、B3、C1处于高阻状态。
(3.13)通过通信网络将A-CMU与C-CMU连通,B-CMU与D-CMU连通,在C4、D4的选择线上同时施加第二电压VCOND,并在A3、B3的选择线上同时施加第三电压VSET。实现蕴含操作A3←C4IMP A3,B3←D4IMP B3。
(3.14)在A3、B3的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←A3IMP A2,B2←B3
IMP B2。
(3.15)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在D4、C4的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←D4IMP A2,B2←C4IMP B2。
(3.16)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
(3.17)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←B2IMP C1。
(4)立即数加法
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x与立即数128相加,存储到C-CMU的C1中,具体操作如下:
(4.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(4.2)通过在C2、C3、C4、D2、D3的选择线上同时施加第一电压VCLEAR。使得C2、C3、C4、D2、D3处于高阻状态。
(4.3)通过通信网络将A-CMU与C-CMU连通,B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C3、D3的选择线上同时施加第三电压VSET。实现蕴含操作C3←A1IMP C3,D3←B1IMP D3。
(4.4)通过通信网络将C-CMU与D-CMU连通,在C3、D3的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作C2←C3IMP C2,D2←D3IMP D2。
(4.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET。实现蕴含操作D2←A1IMP D2,C2←B1IMP C2。
(4.6)在C2的选择线上施加第二电压VCOND,并在C4的选择线上施加
第三电压VSET。实现蕴含操作C4←C2IMP C4。
(4.7)通过通信网络将C-CMU与D-CMU连通,在D2的选择线上施加第二电压VCOND,并在C4的选择线上施加第三电压VSET。实现蕴含操作G2←D2IMP G2。
(4.8)通过在B2,i、D2,i、D4,i+1的选择线上同时施加第一电压VCLEAR。使得B2,i、D2,i、D4,i+1处于高阻状态。(初始i=1)
(4.9)通过通信网络将C-CMU与D-CMU连通,在B1,i、C4,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←C4,i IMP D2,i。
(4.10)通过通信网络将A-CMU与B-CMU连通,在A1,i、D4,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET。实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←D4,i IMP D2,i。
(4.11)断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,并在D4,i+1的选择线上施加第三电压VSET。实现蕴含操作D4,i+1←D2,i IMP D4,i+1。
(4.12)通过通信网络将B-CMU与D-CMU连通,断开开关BKi、DKi、DKi+1、BKi,i+1,闭合开关DKi,i+1,在B2,i的选择线上施加第二电压VCOND,并在D4,i+1的选择线上施加第三电压VSET。实现蕴含操作D4,i+1←B2,i IMP D4,
i+1。(若i小于8,则i+1,返回4.8,若i≥8,则做4.13)
(4.13)通过在A2、A3、B2、B3、C1的选择线上同时施加第一电压VCLEAR。使得A2、A3、B2、B3、C1处于高阻状态。
(4.14)通过通信网络将A-CMU与C-CMU连通,B-CMU与D-CMU连通,在C4、D4的选择线上同时施加第二电压VCOND,并在A3、B3的选择线上同时施加第三电压VSET。实现蕴含操作A3←C4IMP A3,B3←D4IMP B3。
(4.15)在A3、B3的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET。实现蕴含操作A2←A3IMP A2,B2←B3IMP B2。
(4.16)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在D4、C4的选择线上同时施加第二电压VCOND,并在A2、B2的选择
线上同时施加第三电压VSET。实现蕴含操作A2←D4IMP A2,B2←C4IMP B2。
(4.17)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←A2IMP C1。
(4.18)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←B2IMP C1。
(5)逻辑与
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑与操作,存储到C-CMU的C1中,具体操作如下:
(5.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR。使得C1,C2处于高阻状态。
(5.2)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(5.3)通过通信网络将A-CMU与C-CMU连通,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(5.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(6)逻辑或
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑或操作,存储到C-CMU的C1中,具体操作如下:
(6.1)通过在C1,C2,C3的选择线上同时施加第一电压VCLEAR。使得C1,C2,C3处于高阻状态。
(6.2)通过通信网络将B-CMU与C-CMU连通,B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1
IMP C2。
(6.3)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(6.4)在A1的选择线上施加第二电压VCOND,并在C3的选择线上施加第三电压VSET。实现蕴含操作C3←A1IMP C3。
(6.5)通过通信网络将A-CMU与C-CMU连通,在C3的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C3IMP C1。
(7)逻辑非
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x做逻辑非操作,存储到A-CMU的A2中,具体操作如下:
(7.1)通过在A2的选择线上施加第一电压VCLEAR。使得A2处于高阻状态。
(7.2)通过在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作A2←A1IMP A2。
(8)逻辑异或
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑异或操作,存储到C-CMU的C1中,具体操作如下:
(8.1)通过在C1、C2、A2、D1、D2的选择线上同时施加第一电压VCLEAR。使得C1、C2、A2、D1、D2处于高阻状态。
(8.2)通过通信网络将B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在A2、D2的选择线上同时施加第三电压VSET。实现蕴含操作A2←A1IMP A2,D2←B1IMP D2。
(8.3)通过通信网络将A-CMU与C-CMU连通,在A2、D2的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作C2←A2IMP C2,D2←D1IMP D2。
(8.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择
线上同时施加第三电压VSET。实现蕴含操作D1←A1IMP D1,C2←B1IMP C2。
(8.5)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上同时施加第二电压VCOND,并在C1的选择线上同时施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(8.6)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上同时施加第二电压VCOND,并在C1的选择线上同时施加第三电压VSET。实现蕴含操作C1←D1IMP C1。
(9)逻辑或非
数据x存储于A-CMU中的A1中,数据y存储于B-CMU中的B1中,采用上述处理器,将数据x和数据y做逻辑或非操作,存储到C-CMU的C1中,具体操作如下:
(9.1)通过在C1,C2,C3,C4的选择线上同时施加第一电压VCLEAR。使得C1,C2,C3,C4处于高阻状态。
(9.2)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(9.3)在C2的选择线上施加第二电压VCOND,并在C4的选择线上施加第三电压VSET。实现蕴含操作C4←C2IMP C4。
(9.4)通过通信网络将A-CMU与C-CMU相连,在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作C3←A1IMP C3。
(9.5)在C3的选择线上施加第二电压VCOND,并在C4的选择线上施加第三电压VSET。实现蕴含操作C4←C3IMP C4。
(9.6)在C4的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C4IMP C1。
(10)立即数与
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行与操作,存储到C-CMU的C1中,具体操作如下:
(10.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(10.2)通过在C1,C2的选择线上同时施加第一电压VCLEAR。使得C1,C2处于高阻状态。
(10.3)通过通信网络将B-CMU与C-CMU连通,在B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(10.4)通过通信网络将A-CMU与C-CMU连通,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(10.5)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(11)立即数或
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行或操作,存储到C-CMU的C1中,具体操作如下:
(11.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(11.2)通过在C1,C2,C3的选择线上同时施加第一电压VCLEAR。使得C1,C2,C3处于高阻状态。
(11.3)通过通信网络将B-CMU与C-CMU连通,B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET。实现蕴含操作C2←B1IMP C2。
(11.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(11.5)通过通信网络将A-CMU与C-CMU连通,在A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET。实现蕴含操作C3←A1IMP C3。
(11.6)在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C3IMP C1。
(12)立即数异或
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行异或操作,存储到C-CMU的C1中,具体操作如下:
(12.1)通过在选择线B1,1上同时施加第三电压VSET,在选择线B1,2-B1,
8上同时施加第一电压VCLEAR,将128写入B1中。
(12.2)通过在C1、C2、C3、D1、D2的选择线上同时施加第一电压VCLEAR。使得C1、C2、A2、D1、D2处于高阻状态。
(12.3)通过通信网络将B-CMU与D-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C3、D2的选择线上同时施加第三电压VSET。实现蕴含操作C3←A1IMP C3,D2←B1IMP D2。
(12.4)在C3、D2的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作C2←C3IMP C2,D2←D1IMP D2。
(12.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET。实现蕴含操作D1←A1IMP D1,C2←B1IMP C2。
(12.6)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(12.7)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←D1IMP C1。
(13)左移m位
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x左移一位,存储到C-CMU的C1中,具体操作如下:
(13.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态。
(13.2)通过通信网络将A-CMU与C-CMU连通,其中,A1,i+m=C1,i。断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(13.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
(14)右移m位
数据x存储于A-CMU中的A1中,采用上述处理器,将数据x左移一位,存储到C-CMU的C1中,具体操作如下:
(14.1)通过在C1,C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态。
(4.2)通过通信网络将A-CMU与C-CMU连通,其中,A1,i=C1,i+m。断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET。实现蕴含操作C2←A1IMP C2。
(14.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET。实现蕴含操作C1←C2IMP C1。
其中,Φα表示Φ-CMU的第α组忆阻器,例如A1表示A-CMU的第1组忆阻器;Φλ,μ表示Φ-CMU的第λ组忆阻器中的第μ个忆阻器,例如A1,1表示A-CMU中的第1组忆阻器中的第1个忆阻器;ΦKβ表示Φ-CMU的第β个行开关,例如AK1表示A-CMU的第1个行开关;ΦKγ,γ+1表示Φ-CMU的第γ个列开关,例如AK1,2表示A-CMU的第1个列开关。如果没有特别说明,所有行开关都处于闭合状态,所有列开关都处于断开状态。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (16)
- 一种基于忆阻器实现计算与存储融合的处理器,其特征在于,包括:计算存储部件,包括X个融合单元和X个通信单元,每一个融合单元连接一个通信单元,各个通信单元相互连接构成一个通信网络,以及控制部件,用于根据指令产生相应控制信号,连接CMU之间的通信网络,选择操作数地址、结果存放地址,当操作需要用到其他CMU时,其能寻找空闲的一个或多个CMU,用以实现所做的操作;其中,一个融合单元包括M个位单元和M-1个列开关,M个位单元的M条位线均连接一个通信单元,相邻两个位单元的位线端之间连接一个列开关;一个位单元包括一个电阻、一个行开关和N个忆阻器,第一忆阻器的一端作为第一选择线,另一端通过依次串联的行开关和电阻接地;第二忆阻器的一端作为第二选择线,另一端连接至第一忆阻器的另一端;第三忆阻器的一端作为第三选择线,另一端连接至第二忆阻器的另一端;……第N忆阻器的一端作为第N选择线,另一端连接至第N-1忆阻器的另一端;X为大于等于2的正整数,M为大于等于1的正整数,N为大于等于1的正整数。
- 如权利要求1所述的处理器,其特征在于,一个位单元中的电阻的阻值远大于忆阻器低阻态时的阻值且远小于忆阻器高阻态时的阻值。
- 一种基于权利要求1-2任一项所述的处理器的数据传输操作方法,其特征在于,包括下述步骤:(1.1)通过在第二融合单元B-CMU中的第1组忆阻器B1和第2组忆阻器B2的选择线上同时施加第一电压VCLEAR,使得所述第1组忆阻器B1和所述第2组忆阻器B2均处于高阻状态,该状态记为0;第一电压VCLEAR为负向且值大于阈值电压;所述阈值电压为使得忆阻 器的状态发生改变的电压;(1.2)通过通信网络将第一融合单元A-CMU和第二融合单元B-CMU连通,通过在第一融合单元A-CMU的第1组忆阻器A1的选择线上施加第二电压VCOND,并在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第三电压VSET,将((NOT A1)OR B2)保存在B2中实现蕴含操作,其中第二电压VCOND正向且值小于阈值电压;第三电压VSET为正向且值大于阈值电压;且所述第三电压VSET与所述第二电压VCOND的差值小于所述阈值电压;(1.3)在第二融合单元B-CMU的第2组忆阻器B2的选择线上施加第二电压VCOND,并在第二融合单元B-CMU中的第1组忆阻器B1上施加第三电压VSET,将数据保存在B1中实现蕴含操作B1←B2IMP B1,从而实现将存储于第一融合单元A-CMU中第1组忆阻器A1中的数据x传输至第二融合单元B-CMU中的第1组忆阻器B1中。
- 一种基于权利要求1-2任一项所述的处理器的数据交换操作方法,其特征在于,包括下述步骤:(2.1)通过在第三融合单元C-CMU中第1组忆阻器C1、第三融合单元C-CMU中第2组忆阻器C2、第四融合单元D-CMU中第1组忆阻器D1和第四融合单元D-CMU中第2组忆阻器D2的选择线上同时施加第一电压VCLEAR,使得C1,C2,D1,D2均处于高阻状态,该状态记为0;(2.2)通过通信网络将第一融合单元A-CMU与第三融合单元C-CMU连通,将第二融合单元B-CMU与第四融合单元D-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1和第二融合单元B-CMU中第1组忆阻器B1的选择线上同时施加第二电压VCOND,并在C2和D2的选择线上同时施加第三电压VSET,实现蕴含操作C2←A1IMP C2,D2←B1IMP D2;(2.3)在C2,D2的选择线上同时施加第二电压VCOND,并在C1,D1的选择线上同时施加第三电压VSET,实现蕴含操作C1←C2IMP C1,D1←D2 IMP D1;(2.4)在第一融合单元A-CMU中第1组忆阻器A1,第一融合单元A-CMU中第2组忆阻器A2,第二融合单元B-CMU中第1组忆阻器B1,第二融合单元B-CMU中第二组忆阻器B2的选择线上同时施加第一电压VCLEAR,使得A1,A2,B1,B2处于高阻状态;(2.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在C1,D1的选择线上同时施加第二电压VCOND,并在A2,B2的选择线上同时施加第三电压VSET,实现蕴含操作A2←D1IMP A2,B2←C1IMP B2;(2.6)在A2,B2的选择线上同时施加第二电压VCOND,并在A1,B1的选择线上同时施加第三电压VSET,实现蕴含操作A1←A2IMP A1,B1←B2IMP B1,将原存储于第一融合单元A-CMU中的A1中的数据x存储于第二融合单元B-CMU中的B1中,且将原存储于B-CMU的B1中的数据y存储于A-CMU中的A1中。
- 一种基于权利要求1-2任一项所述的处理器的加法操作方法,其特征在于,包括下述步骤:(3.1)通过在第三融合单元C-CMU中第2组忆阻器C2、第七融合单元G-CMU中第1组忆阻器G1、第七融合单元G-CMU中第2组忆阻器G2、第四融合单元D-CMU中第2组忆阻器D2、第八融合单元H-CMU中第1组忆阻器H1的选择线上同时施加第一电压VCLEAR,使得C2、G1、G2、D2、H1处于高阻状态;(3.2)通过通信网络将第一融合单元A-CMU与第七融合单元G-CMU连通,第二融合单元B-CMU与第八融合单元H-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1、第二融合单元B-CMU中第1组忆阻器B1的选择线上同时施加第二电压VCOND,并在G1、H1的选择线上同时施加第三电压VSET,实现蕴含操作G1←A1IMP G1,H1←B1IMP H1;(3.3)通过通信网络将C-CMU与G-CMU连通,D-CMU与H-CMU 连通,在G1、H1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET,实现蕴含操作C2←G1IMP C2,D2←H1IMPD2;(3.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET,实现蕴含操作D2←A1IMP D2,C2←B1IMPC2;(3.5)通过通信网络将C-CMU与G-CMU连通,在C2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET,实现蕴含操作G2←C2IMP G2;(3.6)通过通信网络将D-CMU与G-CMU连通,在D2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET,实现蕴含操作G2←D2IMP G2;(3.7)通过在第二融合单元B-CMU中第2组忆阻器的第i个忆阻器B2,i、第四融合单元D-CMU中第2组忆阻器的第i个忆阻器D2,i、第八融合单元H-CMU中第2组忆阻器的第i+1个忆阻器H2,i+1的选择线上同时施加第一电压VCLEAR,使得B2,i、D2,i、H2,i+1处于高阻状态,初始i=1;(3.8)通过通信网络将D-CMU与G-CMU连通,在B1,i、G2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET,实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←G2,i IMP D2,i;(3.9)通过通信网络将A-CMU与B-CMU连通,D-CMU与H-CMU连通,在A1,i、H2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2, i的选择线上同时施加第三电压VSET,实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←H2,i IMP D2,i;(3.10)通过通信网络将D-CMU与H-CMU连通,断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,并在H2,i+1的选 择线上施加第三电压VSET,实现蕴含操作H2,i+1←D2,i IMP H2,i+1;(3.11)通过通信网络将B-CMU与H-CMU连通,断开开关BKi、HKi、HKi+1、BKi,i+1,闭合开关HKi,i+1,在B2,i的选择线上同时施加第二电压VCOND,并在H2,i+1的选择线上同时施加第三电压VSET,实现蕴含操作H2, i+1←B2,i IMP H2,i+1;(3.12)若i小于8,则i+1,并返回至步骤(3.7),若i≥8,则进入步骤(3.13);(3.13)通过在第一融合单元A-CMU中第二组忆阻器A2、第五融合单元E-CMU中第1组忆阻器E1、第二融合单元B-CMU中第2组忆阻器B2、第六融合单元F-CMU中第1组忆阻器F1、第三融合单元C-CMU中第1组忆阻器C1的选择线上同时施加第一电压VCLEAR,使得A2、E1、B2、F1、C1处于高阻状态;(3.14)通过通信网络将E-CMU与G-CMU连通,F-CMU与H-CMU连通,在G2、H2的选择线上同时施加第二电压VCOND,并在E1、F1的选择线上同时施加第三电压VSET。实现蕴含操作E1←G2IMP E1,F1←H2IMP F1;(3.15)通过通信网络将A-CMU与E-CMU连通,B-CMU与F-CMU连通,在E1、F1的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET,实现蕴含操作A2←E1IMP A2,B2←F1IMP B2;(3.16)通过通信网络将A-CMU与H-CMU连通,B-CMU与G-CMU连通,在H2、G2的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET,实现蕴含操作A2←H2IMP A2,B2←G2IMP B2;(3.17)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←A2IMP C1;(3.18)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作 C1←B2IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中数据y相加后存储于C-CMU的C1中;
- 一种基于权利要求1-2任一项所述的处理器的立即数加法操作方法,立即数为128,其特征在于,包括下述步骤:(4.1)通过在第二融合单元B-CMU中第一组忆阻器的第一个忆阻器B1,1的选择线上加第三电压VSET,在第二融合单元B-CMU中第一组忆阻器的第2-8个忆阻器B1,2-B1,8的选择线上加第一电压VCLEAR,将128写入B1中;(4.2)通过在第三融合单元C-CMU中第2组忆阻器C2、第七融合单元G-CMU中第1组忆阻器G1、第七融合单元G-CMU中第2组忆阻器G2、第四融合单元D-CMU中第2组忆阻器D2、第八融合单元H-CMU中第1组忆阻器H1的选择线上同时施加第一电压VCLEAR,使得C2、G1、G2、D2、H1处于高阻状态;(4.3)通过通信网络将第一融合单元A-CMU与第七融合单元G-CMU连通,第二融合单元B-CMU与第八融合单元H-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1、第二融合单元B-CMU中第1组忆阻器B1的选择线上同时施加第二电压VCOND,并在G1、H1的选择线上同时施加第三电压VSET,实现蕴含操作G1←A1IMP G1,H1←B1IMP H1;(4.4)通过通信网络将C-CMU与G-CMU连通,D-CMU与H-CMU连通,在G1、H1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET,实现蕴含操作C2←G1IMP C2,D2←H1IMPD2;(4.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D2的选择线上同时施加第三电压VSET,实现蕴含操作D2←A1IMP D2,C2←B1IMPC2;(4.6)通过通信网络将C-CMU与G-CMU连通,在C2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET,实现蕴含操作G2←C2IMP G2;(4.7)通过通信网络将D-CMU与G-CMU连通,在D2的选择线上施加第二电压VCOND,并在G2的选择线上施加第三电压VSET,实现蕴含操作G2←D2IMP G2;(4.8)通过在第二融合单元B-CMU中第2组忆阻器的第i个忆阻器B2,i、第四融合单元D-CMU中第2组忆阻器的第i个忆阻器D2,i、第八融合单元H-CMU中第2组忆阻器的第i+1个忆阻器H2,i+1的选择线上同时施加第一电压VCLEAR,使得B2,i、D2,i、H2,i+1处于高阻状态,初始i=1;(4.9)通过通信网络将D-CMU与G-CMU连通,在B1,i、G2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2,i的选择线上同时施加第三电压VSET,实现蕴含操作B2,i←B1,i IMP B2,i,D2,i←G2,i IMP D2,i;(4.10)通过通信网络将A-CMU与B-CMU连通,D-CMU与H-CMU连通,在A1,i、H2,i的选择线上同时施加第二电压VCOND,并在B2,i、D2, i的选择线上同时施加第三电压VSET,实现蕴含操作B2,i←A1,i IMP B2,i,D2,i←H2,i IMP D2,i;(4.11)通过通信网络将D-CMU与H-CMU连通,断开开关DKi,闭合开关DKi,i+1,在D2,i的选择线上施加第二电压VCOND,并在H2,i+1的选择线上施加第三电压VSET,实现蕴含操作H2,i+1←D2,i IMP H2,i+1;(4.12)通过通信网络将B-CMU与H-CMU连通,断开开关BKi、HKi、HKi+1、BKi,i+1,闭合开关HKi,i+1,在B2,i的选择线上同时施加第二电压VCOND,并在H2,i+1的选择线上同时施加第三电压VSET,实现蕴含操作H2, i+1←B2,i IMP H2,i+1;(4.13)若i小于8,则i+1,并返回至步骤(4.8),若i≥8,则进入步骤(4.14);(4.14)通过在第一融合单元A-CMU中第二组忆阻器A2、第五融合单元E-CMU中第1组忆阻器E1、第二融合单元B-CMU中第2组忆阻器B2、第六融合单元F-CMU中第1组忆阻器F1、第三融合单元C-CMU中第1组忆阻器C1的选择线上同时施加第一电压VCLEAR,使得A2、E1、B2、F1、C1处于高阻状态;(4.15)通过通信网络将E-CMU与G-CMU连通,F-CMU与H-CMU连通,在G2、H2的选择线上同时施加第二电压VCOND,并在E1、F1的选择线上同时施加第三电压VSET,实现蕴含操作E1←G2IMP E1,F1←H2IMP F1;(4.16)通过通信网络将A-CMU与E-CMU连通,B-CMU与F-CMU连通,在E1、F1的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET,实现蕴含操作A2←E1IMP A2,B2←F1IMP B2;(4.17)通过通信网络将A-CMU与H-CMU连通,B-CMU与G-CMU连通,在H2、G2的选择线上同时施加第二电压VCOND,并在A2、B2的选择线上同时施加第三电压VSET,实现蕴含操作A2←H2IMP A2,B2←G2IMP B2;(4.18)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←A2IMP C1;(4.19)通过通信网络将B-CMU与C-CMU连通,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←B2IMP C1;将存储于A-CMU中的A1中的数据x与立即数128相加后存储于C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的逻辑与操作方法,其特征在于,包括下述步骤:(5.1)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第2组忆阻器C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态;(5.2)通过通信网络将第二融合单元B-CMU与第三融合单元C-CMU连通,在第二融合单元B-CMU中第1组忆阻器B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET,实现蕴含操作C2←B1IMPC2;(5.3)通过通信网络将第一融合单元A-CMU与第三融合单元C-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1的选择线上施加第二电压VCOND,并在第三融合单元C-CMU中第2组忆阻器C2的选择线上施加第三电压VSET,实现蕴含操作C2←A1IMP C2;(5.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中的数据y做逻辑与操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的逻辑或操作方法,其特征在于,包括下述步骤:(6.1)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第2组忆阻器C2,第一融合单元A-CMU中第2组忆阻器A2的选择线上同时施加第一电压VCLEAR,使得C1,C2,A2处于高阻状态;(6.2)通过通信网络将第三融合单元B-CMU与第三融合单元C-CMU连通,在第二融合单元B-CMU中第1组忆阻器B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET,实现蕴含操作C2←B1IMPC2;(6.3)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;(6.4)在第一融合单元A-CMU中第1组忆阻器A1的选择线上施加第二电压VCOND,并在第一融合单元A-CMU中第2组忆阻器A2的选择线上施加第三电压VSET,实现蕴含操作A2←A1IMP A2;(6.5)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←A2IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中的数据y做逻辑或操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的逻辑非操作方法,其特征在于,包括下述步骤:(7.1)通过在第一融合单元A-CMU中第2组忆阻器A2的选择线上加电压VCLEAR,使得A2处于高阻状态;(7.2)通过在第一融合单元A-CMU中第1组忆阻器A1的选择线上施加第二电压VCOND,并在A2的选择线上施加第三电压VSET,实现蕴含操作A2←A1IMP A2;将存储于A-CMU中的A1中的数据x做逻辑非操作后存储到A-CMU的A2中。
- 一种基于权利要求1-2任一项所述的处理器的逻辑异或操作方法,其特征在于,包括下述步骤:(8.1)通过在第三融合单元C-CMU中第1组忆阻器C1、第一融合单元A-CMU中第2组忆阻器C2、第一融合单元A-CMU中第2组忆阻器A2、第四融合单元D-CMU中第1组忆阻器D1、第四融合单元D-CMU中第2组忆阻器D2的选择线上同时施加第一电压VCLEAR,使得C1、C2、A2、D1、D2处于高阻状态;(8.2)通过通信网络将第二融合单元B-CMU与第四融合单元D-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1、第二融合单元B-CMU中第1组忆阻器B1的选择线上同时施加第二电压VCOND,并在第一融合单元A-CMU中第1组忆阻器A2、第四融合单元D-CMU中第2组忆阻器D2的选择线上同时施加第三电压VSET,实现蕴含操作A2←A1IMP A2,D2←B1IMP D2;(8.3)通过通信网络将A-CMU与C-CMU连通,在A2、D2的选择线 上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET,实现蕴含操作C2←A2IMP C2,D2←D1IMP D2;(8.4)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET,实现蕴含操作D1←A1IMP D1,C2←B1IMP C2;(8.5)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;(8.6)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←D1IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中的数据y做逻辑异或操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的逻辑或非操作方法,其特征在于,包括下述步骤:(9.1)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第2组忆阻器C2,第一融合单元A-CMU中第2组忆阻器A2,第二融合单元B-CMU中第2组忆阻器B2的选择线上同时施加第一电压VCLEAR,使得C1,C2,A2,B2处于高阻状态;(9.2)通过通信网络将第二融合单元B-CMU与第三融合单元C-CMU连通,在第二融合单元B-CMU中第1组忆阻器B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET,实现蕴含操作C2←B1IMPC2;(9.3)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在B2的选择线上施加第三电压VSET,实现蕴含操作B2←C2IMP B2;(9.4)在A1的选择线上施加第二电压VCOND,并在A2的选择线上施 加第三电压VSET,实现蕴含操作A2←A1IMP A2;(9.5)通过通信网络将A-CMU与B-CMU相连,在A2的选择线上施加第二电压VCOND,并在B2的选择线上施加第三电压VSET,实现蕴含操作B2←A2IMP B2;(9.6)通过通信网络将B-CMU与C-CMU相连,在B2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←B2IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中的数据y做逻辑或非操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的立即数与操作方法,立即数为128,其特征在于,包括下述步骤:(10.1)通过在第二融合单元B-CMU中第一组忆阻器的第一个忆阻器B1,1的选择线上加第三电压VSET,在第二融合单元B-CMU中第一组忆阻器的第2-8个忆阻器B1,2-B1,8的选择线上加第一电压VCLEAR,将128写入B1中;(10.2)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第2组忆阻器C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态;(10.3)通过通信网络将第二融合单元B-CMU与第三融合单元C-CMU连通,在第二融合单元B-CMU中第1组忆阻器B1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET,实现蕴含操作C2←B1IMPC2;(10.4)通过通信网络将第一融合单元A-CMU与第三融合单元C-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1的选择线上施加第二电压VCOND,并在第三融合单元C-CMU中第2组忆阻器C2的选择线上施加第三电压VSET,实现蕴含操作C2←A1IMP C2;(10.5)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施 加第三电压VSET,实现蕴含操作C1←C2IMP C1;将存储于A-CMU中的A1中的数据x与立即数128做逻辑与操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的立即数或操作方法,立即数为128,其特征在于,包括下述步骤:数据x存储于A-CMU中的A1中,采用上述处理器,将数据x和立即数128进行或操作,存储到C-CMU的C1中,具体操作如下:(11.1)通过在第二融合单元B-CMU中第一组忆阻器的第一个忆阻器B1,1的选择线上加第三电压VSET,在第二融合单元B-CMU中第一组忆阻器的第2-8个忆阻器B1,2-B1,8的选择线上加第一电压VCLEAR,将128写入B1中;(11.2)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第2组忆阻器C2,第一融合单元A-CMU中第2组忆阻器A2的选择线上同时施加第一电压VCLEAR,使得C1,C2,A2处于高阻状态;(11.3)通过通信网络将第三融合单元B-CMU与第三融合单元C-CMU连通,在第二融合单元B-CMU中第1组忆阻器B1的选择线上施加第二电压VCOND,并C2的选择线上施加第三电压VSET,实现蕴含操作C2←B1IMPC2;(11.4)在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;(11.5)在第一融合单元A-CMU中第1组忆阻器A1的选择线上施加第二电压VCOND,并在第一融合单元A-CMU中第2组忆阻器A2的选择线上施加第三电压VSET,实现蕴含操作A2←A1IMP A2;(11.6)通过通信网络将A-CMU与C-CMU连通,在A2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←A2IMP C1;将存储于A-CMU中的A1中的数据x与立即数128做逻辑或操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的立即数异或操作方法,立即数为128,其特征在于,包括下述步骤:(12.1)通过在第二融合单元B-CMU中第一组忆阻器的第一个忆阻器B1,1的选择线上加第三电压VSET,在第二融合单元B-CMU中第一组忆阻器的第2-8个忆阻器B1,2-B1,8的选择线上加第一电压VCLEAR,将128写入B1中;(12.2)通过在第三融合单元C-CMU中第1组忆阻器C1、第一融合单元A-CMU中第2组忆阻器C2、第一融合单元A-CMU中第2组忆阻器A2、第四融合单元D-CMU中第1组忆阻器D1、第四融合单元D-CMU中第2组忆阻器D2的选择线上同时施加第一电压VCLEAR,使得C1、C2、A2、D1、D2处于高阻状态;(12.3)通过通信网络将第二融合单元B-CMU与第四融合单元D-CMU连通,在第一融合单元A-CMU中第1组忆阻器A1、第二融合单元B-CMU中第1组忆阻器B1的选择线上同时施加第二电压VCOND,并在第一融合单元A-CMU中第1组忆阻器A2、第四融合单元D-CMU中第2组忆阻器D2的选择线上同时施加第三电压VSET,实现蕴含操作A2←A1IMP A2,D2←B1IMP D2;(12.4)通过通信网络将A-CMU与C-CMU连通,在A2、D2的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET,实现蕴含操作C2←A2IMP C2,D2←D1IMP D2;(12.5)通过通信网络将A-CMU与D-CMU连通,B-CMU与C-CMU连通,在A1、B1的选择线上同时施加第二电压VCOND,并在C2、D1的选择线上同时施加第三电压VSET,实现蕴含操作D1←A1IMP D1,C2←B1IMP C2;(12.6)通过通信网络将B-CMU与C-CMU连通,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;(12.7)通过通信网络将C-CMU与D-CMU连通,在D1的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←D1IMP C1;将存储于A-CMU中的A1中的数据x与存储于B-CMU中的B1中的数据y做逻辑异或操作后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的左移m位操作方法,其特征在于,包括下述步骤:(13.1)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第二组忆阻器C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态;(13.2)通过通信网络将第一融合单元A-CMU与第三融合单元C-CMU连通,其中,A1,i+m连接C1,i,其中i=1,2……8-m,断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET,实现蕴含操作C2←A1IMP C2;(13.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;将存储于A-CMU中的A1中的数据x左移一位后存储到C-CMU的C1中。
- 一种基于权利要求1-2任一项所述的处理器的右移m位操作方法,其特征在于,包括下述步骤:……(14.1)通过在第三融合单元C-CMU中第1组忆阻器C1,第三融合单元C-CMU中第二组忆阻器C2的选择线上同时施加第一电压VCLEAR,使得C1,C2处于高阻状态;(14.2)通过通信网络将第一融合单元A-CMU与第三融合单元C-CMU连通,其中,A1,i连接C1,i+m,其中i=1,2……8-m,断开开关CK1,在A1的选择线上施加第二电压VCOND,并在C2的选择线上施加第三电压VSET,实现蕴含操作C2←A1IMP C2;(14.3)断开开关CK1,在C2的选择线上施加第二电压VCOND,并在 C1的选择线上施加第三电压VSET,实现蕴含操作C1←C2IMP C1;将存储于A-CMU中的A1中的数据x左移一位后存储到C-CMU的C1中。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15/629,714 US10020054B2 (en) | 2014-12-22 | 2017-06-21 | Memristor-based processor integrating computing and memory and method for using the processor |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2014108033408 | 2014-12-22 | ||
| CN201410803340.8A CN104571949B (zh) | 2014-12-22 | 2014-12-22 | 基于忆阻器实现计算与存储融合的处理器及其操作方法 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US15/629,714 Continuation-In-Part US10020054B2 (en) | 2014-12-22 | 2017-06-21 | Memristor-based processor integrating computing and memory and method for using the processor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2016101359A1 true WO2016101359A1 (zh) | 2016-06-30 |
Family
ID=53088134
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2015/070572 Ceased WO2016101359A1 (zh) | 2014-12-22 | 2015-01-13 | 基于忆阻器实现计算与存储融合的处理器及其操作方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US10020054B2 (zh) |
| CN (1) | CN104571949B (zh) |
| WO (1) | WO2016101359A1 (zh) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104898990A (zh) * | 2015-06-05 | 2015-09-09 | 北京大学 | 运算存储阵列及其操作方法 |
| EP3378066A4 (en) * | 2016-01-27 | 2019-07-31 | Hewlett-Packard Enterprise Development LP | MEMRISTIVE ARRANGEMENT WITH PARALLEL RESET CONTROL DEVICES |
| KR20180110080A (ko) * | 2016-02-08 | 2018-10-08 | 스페로 디바이시즈 인코포레이티드 | 아날로그 코-프로세서 |
| CN106128503B (zh) * | 2016-06-20 | 2019-07-16 | 北京大学 | 基于忆阻器的运算存储阵列设备及其操作方法 |
| CN106158017B (zh) * | 2016-06-20 | 2019-05-17 | 北京大学 | 阻变运算存储设备 |
| CN106297876B (zh) * | 2016-08-09 | 2019-04-16 | 北京大学 | 基于忆阻器阵列的操作方法 |
| US10424376B2 (en) * | 2017-12-24 | 2019-09-24 | Micron Technology, Inc. | Material implication operations in memory |
| US11475951B2 (en) | 2017-12-24 | 2022-10-18 | Micron Technology, Inc. | Material implication operations in memory |
| US11189345B2 (en) * | 2018-01-22 | 2021-11-30 | Institute of Microelectronics, Chinese Academy of Sciences | Method for implementing logic calculation based on a crossbar array structure of resistive switching device |
| CN109582364B (zh) * | 2018-10-29 | 2020-07-28 | 华中科技大学 | 基于忆阻器的精简指令集处理器 |
| CN109521995B (zh) * | 2018-11-02 | 2023-05-12 | 上海交通大学 | 一种内嵌于忆阻器阵列的逻辑运算装置的计算方法 |
| CN109814837B (zh) * | 2019-01-15 | 2020-11-27 | 北京大学深圳研究生院 | 基于阻变式存储器的lfsr电路及其伪随机数据序列产生方法 |
| CN109885279B (zh) * | 2019-03-01 | 2021-05-04 | 山东大学 | 一种水下传感器及定位系统 |
| CN112331247A (zh) * | 2020-11-06 | 2021-02-05 | 苏州大学 | 基于忆阻元件和蕴含逻辑的非易失性存储器 |
| CN114614865B (zh) * | 2022-03-08 | 2023-07-25 | 清华大学 | 基于忆阻器阵列的预编码装置和信号处理方法 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102811051A (zh) * | 2012-07-09 | 2012-12-05 | 华中科技大学 | 一种基于忆阻器的逻辑门电路 |
| CN103051307A (zh) * | 2012-12-26 | 2013-04-17 | 华中科技大学 | 一种基于忆阻器的非挥发d触发器 |
| CN103580668A (zh) * | 2013-10-28 | 2014-02-12 | 华中科技大学 | 一种基于忆阻器的联想记忆电路 |
| CN103731123A (zh) * | 2013-12-24 | 2014-04-16 | 华中科技大学 | 一种基于忆阻器的超宽带脉冲信号产生装置 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB9223226D0 (en) * | 1992-11-05 | 1992-12-16 | Algotronix Ltd | Improved configurable cellular array (cal ii) |
| KR20040097212A (ko) * | 2002-03-27 | 2004-11-17 | 소니 가부시끼 가이샤 | 연산 처리 장치, 그 구축 방법, 연산 처리 시스템 및 연산처리 방법 |
| US9268746B2 (en) * | 2008-03-07 | 2016-02-23 | St Ericsson Sa | Architecture for vector memory array transposition using a block transposition accelerator |
| WO2013118378A1 (ja) * | 2012-02-08 | 2013-08-15 | 太陽誘電株式会社 | 不揮発性メモリを内蔵する半導体装置 |
| JP5890733B2 (ja) * | 2012-04-09 | 2016-03-22 | 太陽誘電株式会社 | 再構成可能な半導体装置の配置配線方法、そのプログラム、及び配置配線装置 |
| CN104124961B (zh) * | 2012-07-09 | 2017-01-11 | 华中科技大学 | 一种基于忆阻器的逻辑非门电路 |
| US9350357B2 (en) * | 2012-10-28 | 2016-05-24 | Taiyo Yuden Co., Ltd. | Reconfigurable semiconductor device |
| CN103811058B (zh) * | 2014-01-28 | 2016-09-07 | 华中科技大学 | 基于忆阻的非易失性存储器、读写擦除操作方法及测试电路 |
| CN104124960B (zh) * | 2014-06-20 | 2018-02-23 | 华中科技大学 | 一种非易失性布尔逻辑运算电路及其操作方法 |
| CN203942512U (zh) * | 2014-06-20 | 2014-11-12 | 华中科技大学 | 一种非易失性布尔逻辑运算电路 |
| US10417064B2 (en) * | 2016-09-07 | 2019-09-17 | Military Industry—Telecommunication Group (Viettel) | Method of randomly distributing data in distributed multi-core processor systems |
-
2014
- 2014-12-22 CN CN201410803340.8A patent/CN104571949B/zh active Active
-
2015
- 2015-01-13 WO PCT/CN2015/070572 patent/WO2016101359A1/zh not_active Ceased
-
2017
- 2017-06-21 US US15/629,714 patent/US10020054B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102811051A (zh) * | 2012-07-09 | 2012-12-05 | 华中科技大学 | 一种基于忆阻器的逻辑门电路 |
| CN103051307A (zh) * | 2012-12-26 | 2013-04-17 | 华中科技大学 | 一种基于忆阻器的非挥发d触发器 |
| CN103580668A (zh) * | 2013-10-28 | 2014-02-12 | 华中科技大学 | 一种基于忆阻器的联想记忆电路 |
| CN103731123A (zh) * | 2013-12-24 | 2014-04-16 | 华中科技大学 | 一种基于忆阻器的超宽带脉冲信号产生装置 |
Non-Patent Citations (1)
| Title |
|---|
| ZHANG, NA: "An Efficient Design and Simulation of Adder and Multiplier Based on Memristors", CHINA MASTER'S THESES FULL-TEXT DATABASE, 31 July 2012 (2012-07-31) * |
Also Published As
| Publication number | Publication date |
|---|---|
| US10020054B2 (en) | 2018-07-10 |
| CN104571949B (zh) | 2017-07-07 |
| US20170287558A1 (en) | 2017-10-05 |
| CN104571949A (zh) | 2015-04-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2016101359A1 (zh) | 基于忆阻器实现计算与存储融合的处理器及其操作方法 | |
| US12230354B2 (en) | Apparatuses and methods for scatter and gather | |
| US11468944B2 (en) | Utilization of data stored in an edge section of an array | |
| US10929023B2 (en) | Bank to bank data transfer | |
| US10482948B2 (en) | Apparatuses and methods for data movement | |
| CN109766309B (zh) | 自旋存算一体芯片 | |
| US20190294380A1 (en) | Apparatuses and methods for in-memory operations | |
| EP2457155B1 (en) | A lower energy comsumption and high speed computer without the memory bottleneck | |
| US10262701B2 (en) | Data transfer between subarrays in memory | |
| US20250095697A1 (en) | Bank to bank data transfer | |
| CN110597484B (zh) | 基于存内计算的多比特全加器、多比特全加运算控制方法 | |
| KR20190110154A (ko) | 데이터 경로에서의 컴퓨팅 장치 및 방법 | |
| KR20220045480A (ko) | 인-메모리 프로세싱을 수행하는 메모리 디바이스 | |
| CN110737612A (zh) | 一种含有存储内计算的处理器 | |
| US12210456B2 (en) | Dynamic random access memory (DRAM) with scalable meta data | |
| CN109521995B (zh) | 一种内嵌于忆阻器阵列的逻辑运算装置的计算方法 | |
| US20200192675A1 (en) | Memristor based multithreading | |
| US10496310B2 (en) | Shift skip | |
| CN112951290B (zh) | 一种基于非易失性随机存储器的内存计算电路及装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15871438 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 15871438 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 15871438 Country of ref document: EP Kind code of ref document: A1 |