CN107078740A - 可重构设备 - Google Patents
可重构设备 Download PDFInfo
- Publication number
- CN107078740A CN107078740A CN201580056708.1A CN201580056708A CN107078740A CN 107078740 A CN107078740 A CN 107078740A CN 201580056708 A CN201580056708 A CN 201580056708A CN 107078740 A CN107078740 A CN 107078740A
- Authority
- CN
- China
- Prior art keywords
- address
- data
- wire
- memory cell
- logic
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/418—Address circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/417—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
- G11C11/419—Read-write [R-W] circuits
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/10—Decoders
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17736—Structural details of routing resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17736—Structural details of routing resources
- H03K19/17744—Structural details of routing resources for input/output signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Abstract
本发明减少从CPU的主存储器存取,谋求数据处理的高速化。本发明提供可重构设备(20),它与主存储器(600)连接,且可重构设备(20)具备利用地址线或数据线相互连接的多个逻辑部,各逻辑部具有:多条地址线;多条数据线;地址解码器,将从多条地址线的一部分输入的地址解码;以及存储单元阵列组件,具有由地址解码器的解码线所特定出的多个存储单元,且将从所特定出的存储单元读取的数据输出至数据线;存储单元阵列组件的地址线与主存储器的数据输出线(RD1)连接。
Description
技术领域
本发明涉及一种可重构设备及包含该可重构设备的半导体装置。
背景技术
虽基于摩尔定律,伴随半导体微细化的CPU(Central Processing Unit,中央处理器)的运算速度不断提高,但该摩尔定律仍逐渐走向消亡。其原因在于微细化的极限。将10nm设为该极限,而当前的半导体制造技术已接近该极限,通过CPU性能提升而实现的数据处理的高速化也逐渐放缓。
CPU对保存在寄存器内的数据进行运算处理,将运算对象的数据从高速缓存预取至寄存器内,在高速缓存内的数据并非对象数据的情况下,视为“高速缓存未中”,并进行从主存储器读取数据的处理。
尤其,在数据中心等必须进行大量数据处理的情况下,相比于运算处理,向主存储器的存取的时间增加,其成为数据处理的瓶颈,从而招致延迟化。另外,数据传送的消耗电力也因高速化的需求而增加,也有必要冷却服务器,数据中心的电力削减成为课题。此外,这种CPU架构例如在专利文献1的图1中示出。
背景技术文献
专利文献
专利文献1:日本专利特表2013-513139号公报
发明内容
[发明要解决的问题]
尽管运算处理本身为简单的重复运算,但当有大量数据时,如上所述的数据处理延迟的倾向较强。因此,不需要处理器所进行程度的高度处理。因此,不将数据传送至CPU,而在存储器侧进行数据处理,且在需要更高度运算处理时使用CPU,由此谋求数据处理的高速化。
本实施方式的半导体装置配置在主存储器侧,负责简单的重复运算,由此减少从CPU的主存储器存取,谋求数据处理的高速化。解决所述课题的方式是如以下的项目组所示,实现半导体装置。
1.一种可重构设备,与主存储器连接;且
所述可重构设备具备利用地址线或数据线相互连接的多个逻辑部;
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线一部分输入的地址解码;以及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的地址线与所述主存储器的数据输出线连接。
2.根据项目1所述的可重构设备,其中所述存储单元组件为多查找表。
本半导体装置由于利用多查找表进行作为逻辑元件及/或连接元件的动作,因此明显不同于利用选择电路实现配线连接的FPGA(Field Programmable Gate Array,现场可编程门阵列)。
3.根据项目1或2所述的可重构设备,其中所述各逻辑部具备:
第1地址解码器,将从所述多条地址线的一部分输入的地址解码;
第2地址解码器,将从所述多条地址线的另一部分输入的地址解码;
第1存储单元组件,具有由所述第1地址解码器的解码线所特定出的多个存储单元;以及
第2存储单元组件,具有由所述第2地址解码器的解码线所特定出的多个存储单元。
4.根据项目3所述的半导体装置,其中所述第1存储单元组件及第2存储单元组件存储多个真值表数据,且与输出能特定出所述多个真值表数据的任一个的数据的第2多条地址线连接。
能够提供一种可重构半导体装置,活用大容量存储器而能够将剩余地址以页面切换控制的方式进行控制。
5.一种半导体装置,其具备:
主存储器及可重构设备;
所述可重构设备与所述主存储器连接,
所述可重构设备具备利用地址线或数据线相互连接的多个逻辑部,
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线的一部分输入的地址解码;及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的数据输出与所述主存储器的地址线连接。
6.根据项目6所述的半导体装置,其还具备第2可重构设备,
所述第2可重构设备具备利用地址线或数据线相互连接的多个逻辑部,
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线的一部分输入的地址解码;及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的数据输出与所述主存储器的地址线连接。
7.根据项目5或6所述的半导体装置,其还具备规模调整电路,所述规模调整电路在所述主存储器与所述可重构设备之间,对两者的电路规模进行调整。
[发明效果]
本实施方式减少从CPU的主存储器存取,能够实现数据处理的高速化。
附图说明
图1是表示本实施方式的计算机装置的整体构成的第1例的图。
图2是表示本实施方式的计算机装置的整体构成的第2例的图。
图3是表示所构成的运算器的一例的图。
图4是表示MRLD(Memory based Reconfigurable Logic Device,基于存储器的可重构逻辑设备)的一例的图。
图5是本实施方式的地址转换检测部的电路图。
图6是图5所示的地址转换检测的信号的时序图。
图7是概略性地表示将包含两个存储单元组件的MLUT(Multi Look up Table,多查找表)横向堆积而构成的MLUT的图。
图8是表示使用大容量存储器的MLUT的一例的图。
图9是表示图8所示的MLUT的电路例的图。
图10是对使用图8所示的MLUT的MRLD进行说明的图。
图11是表示第2实施方式的可进行同步/非同步切换的MLUT的电路例的图。
图12是表示规模调整电路的一例的图。
图13是表示MLUT的一例的图。
图14是表示作为逻辑电路而动作的MLUT的一例的图。
图15是表示图14所示的逻辑电路的真值表的图。
图16是表示作为连接元件而动作的MLUT的一例的图。
图17是表示图16所示的连接元件的真值表的图。
图18是表示通过具有4个AD对的MLUT而实现的连接元件的一例的图。
图19是表示1个MLUT作为逻辑元件及连接元件动作的一例的图。
图20表示图19所示的逻辑元件及连接元件的真值表。
图21是表示通过具有AD对的MLUT而实现的逻辑动作及连接元件的一例的图。
具体实施方式
以下,参照附图,依次对1.计算机装置及半导体装置、2.MRLD、3.MLUT、4.MLUT的逻辑动作、5.真值表数据的产生方法进行说明。
1.计算机装置及半导体装置
对于处理器来说,主存储器上的数据是一边逐次对照地址,一边执行信息搜索,因此成为伴有极多时间及极大负担的处理。因此,为了有效率地进行信息处理,通常事先对存储器上的哪个地址存在哪种信息等进行整理加工,且准备元数据以便能够减轻处理器信息搜索的负担。该元数据例如为散列表。然而,由于准备元数据需要大量时间,因此必须重复进行数据维护,必须使处理器并列化等,使装置大型化而赋予大电力。以下所示的计算机装置或半导体装置无需元数据,而能够在存储器实现各种功能。
1.1计算机装置
图1是表示本实施方式的计算机装置的整体构成的第1例的图。如图1所示,计算机装置10具有处理器510、主存储器600、通信部530、外部存储装置540、驱动装置550及I/O(input/output,输入/输出)控制器560。
处理器510具有处理器内核511、L2高速缓存控制器512、L2高速缓存存储器514及存储器控制器516。另外,处理器510经由I/O控制器560连接于通信部530、及外部存储装置540。处理器510是如下装置:通过执行主存储器600中所存储的程序,而从主存储器600下载数据,对所下载的数据进行运算,并将运算结果存储至主存储器600。
存储器控制器516在计算机装置10上进行对主存储器600的数据的读取、写出,如果主存储器600为DRAM(Dynamic Random Access Memory,动态随机存取存储器),那么进行其更新等主存储器的接口处理(interface)。例如,进行从主存储器600向L2高速缓存存储器514下载数据、从L2高速缓存控制器512向主存储器600存储数据等。
L2高速缓存存储器514保存主存储器600所存储的数据的一部分。另外,L2高速缓存存储器514包含处理器内核511所具有的L1高速缓存存储器(L1Cache Memory)所保存的数据。
L2高速缓存控制器512以如下方式动作:将从处理器内核511的存取频度高的数据存储至L2高速缓存存储器514,将存取频度低的数据从L2高速缓存存储器514逐出至主存储器600。
处理器内核511例如为处理器内核,具有所述处理器510的运算功能。此外,图1所示的处理器内核的个数为1个,但也可为多个。在处理器510具有多个处理器内核的情况下,以如下方式动作:1个处理器内核作为主控装置(master)而动作,执行程序,并且使作为从动装置(slave)的其他处理器内核分担执行程序。这种主控装置的动作也可在程序内描述为命令串,且通过执行该命令串而实现。
I/O控制器560是控制处理器510与其他组件的连接的输入输出控制装置。I/O控制器560是例如依照PCI Express(Peripheral Component Interconnect Express,周边元件互连高速)等标准而动作。
主存储器600是存储数据或程序的装置。处理器510能够不经由I/O控制器560而对主存储器600进行存取。主存储器600例如为DRAM(Dynamic Random Access Memory)。
外部存储装置540是存储主存储器600中所存的程序及数据的非易失性的存储装置。外部存储装置540是使用磁盘的磁盘阵列或使用闪速存储器的SSD(Solid StateDrive,固体状态驱动机)等。
通信部530与作为通信路径的网络1100连接,在连接于网络1100的其他计算机装置与计算机装置10之间收发数据。通信部530例如为NIC(Network Interface Controller,网络接口控制器)。
驱动装置550例如为读写FLOPPY(注册商标)磁盘或CD-ROM(Compact Disc ReadOnly Memory,光盘只读存储器)、DVD(Digital Versatile Disc,数字多功能盘)等存储媒体1200的装置。驱动装置550包含使存储媒体1200旋转的马达或在存储媒体1200上读写数据的头等。此外,存储媒体1200能够存储程序。例如,存储媒体1200除了规定运算处理的程序以外,还能存储用来设计集成电路的C语言描述或硬件描述语言(HDL)等电路描述语言1210、用来产生真值表数据1230的逻辑构成用程序1220。真值表数据1230是利用处理器内核511产生,如图所示存储在存储媒体1200,也可被输送。在该情况下,真值表数据1230是利用未图示的其他计算机装置产生。驱动装置550从设置在驱动装置550的存储媒体1200读取程序。处理器510将由驱动装置550所读取的程序存储在主存储器600或外部存储装置540。此外,将真值表数据1230写入至可重构设备20,使可重构设备20执行所需的运算处理,而其他程序则是由处理器内核执行,在这一点上区别两者。
1.1半导体装置
16是至少包含主存储器及可重构设备的半导体装置。在主存储器600的数据输出,连接有可重构设备20。可重构设备实现了进行简单运算的电路。例如为序列比较机或自动机。
如果存储器控制器516根据地址AD进行特定的地址空间的读取,那么可重构设备20对从主存储器600的地址空间输出的数据RD1进行运算,将需要的数据RD2输出至存储器控制器516。这时,对数据RD1实施运算处理所得的数据RD2的数据量为实施以往的处理器所进行的数据处理后的数据,因此能够减轻处理器510的处理负荷。
处理器内核511依照从未图示的L1高速缓存存储器读取的命令,对保存在未图示的寄存器的数据执行根据命令所特定出的处理。在命令中有浮动小数点运算、整数运算、地址产生、分支命令执行以及存储或下载动作等。也就是说,处理器内核511能够依照程序,动态地执行任一种命令。另一方面,如下所述,可重构设备20包含MLUT(Multi Look upTable),在重构上需要存储器的重写处理,因此无法依照特定的命令由电路构成的处理器内核511高速地执行多个运算处理。然而,例如,通过进行利用图像处理的数据检索处理或数据检索处理的并行动作,能够显著地减少从处理器510的主存储器存取,大幅提高计算机装置10的处理量。
主存储器600的数据输出线与可重构设备20的地址输入线连接。由于主存储器600被高集成化,因此优选为可重构设备20也同样地被高集成化。因此,优选为可重构设备20的存储器也包含构成主存储器的DRAM。
图2是表示本实施方式的计算机装置的整体构成的第2例的图。不同于图1,在主存储器600的地址输入的前段搭载有可重构设备20A。
如果存储器控制器516根据地址AD1进行特定的地址空间的读取,那么可重构设备20A将地址AD1转换为地址AD2。根据地址AD2,可重构设备20B对从主存储器600的地址空间输出的数据RD1进行运算,将数据RD2输出至存储器控制器516。
可重构设备20A及20B实现存储器缺陷补救或CAM(Content Addressable Memory,内容可寻址存储器)等。所谓存储器缺陷补救,是为了提高良率,将不良位替换为冗余位而将不良变为良品。主存储器一般来说具有固定的补救电路,可重构设备20A也可实现该存储器缺陷补救。由此,能够进行测试,将不良切换至其他地址,自立地进行补救。
图3表示所构成的运算器的一例。可重构设备20可针对每一数据输出并列地构成图3的运算器。它是如下构成:将从主存储器600选择并读取的字地址的存储器数据直接代入触发器,自由地选择与触发器的过去旗标的“与”、“或”、“异或”以及存储器数据及触发器输出的过去数据的两者的逻辑非,且能够n比特并列地进行任意的1比特运算。例如在对8比特的数据进行运算的情况下,通过重复特定次1比特运算而实施。只要当前的信息处理的数据是1比特数据的集合体、即定义了各1比特的信息,便可按该运算方式进行全部的信息处理。
另外,如下所述,可重构设备包含MLUT这一逻辑单元,它们通过存储真值表数据,而构成为逻辑元件及/或连接元件,因此,可构成的电路并不限定于图3所示的运算器。
另外,可重构设备20A及20B能够实现CAM。由于CAM在每一个存储单元具有符合电路,因此电路构成变得规模极大,必须通过特殊的存储器根据电路设计来制作,无法使用存储器IP(Intellectual Property,知识产权)。然而,可重构设备20A在主存储器600登记数据时,只要以如索引的形式登记,便也可输出存储数据字的主存储器600的地址。
2.MRLD
以下,将可重构逻辑设备也称为MRLD(Memory based Reconfigurable LogicDevice)(注册商标),使用同一参照符号20进行说明。MRLD的各MLUT间不介置配线元件而直接连接,并且有效地活用以存储器IP形式所供给的同步SRAM(Static Random AccessMemory,静态随机存取存储器)的功能。此外,以下记载中的MLUT中虽未图示,但其具备地址转换检测部,即便为同步SRAM也进行非同步化。由此,在进行非同步化的同时,不将输入信号输入至未构成逻辑的区块,不引起地址转换,从而能够削减电力。由于构成逻辑的区块被输入有输入信号,因此进行时钟产生,可输出特定的逻辑值。
图4所示的20为MRLD的一例。MRLD20具有多个利用同步SRAM的MLUT30、配置为阵列状的MLUT阵列60、特定出成为MLUT30的存储器读取动作、写入动作对象的存储单元的行解码器61及列解码器62。
MLUT30包含同步SRAM。在存储器的存储元件中分别存储被视为真值表的数据,由此,MLUT30进行作为逻辑元件、或连接元件、或逻辑元件及连接元件而动作的逻辑动作。
在MRLD20的逻辑动作中,使用以实线所示的逻辑用地址LA及逻辑用数据LD的信号。逻辑用地址LA作为逻辑电路的输入信号而使用。并且,逻辑用数据LD作为逻辑电路的输出信号而使用。MLUT30的逻辑用地址LA与邻接的MLUT的逻辑动作用数据LD的数据线连接。
通过MRLD20的逻辑动作所实现的逻辑是根据存储在MLUT30的真值表数据来实现。若干MLUT30以作为AND(与)电路、加算器等的组合电路的逻辑元件动作。其他MLUT以连接实现组合电路的MLUT30间的连接元件动作。MLUT30用来实现逻辑元件及连接元件的真值表数据的重写是通过对存储器的写入动作来进行。
MRLD20的写入动作是根据写入用地址AD及写入用数据WD来进行,读取动作是根据写入用地址AD及读取用数据RD来进行。
写入用地址AD是特定出MLUT30内的存储单元的地址。写入用地址AD通过m条信号线,特定出2的m次方的数值即n个存储单元。行解码器61经由m条信号线接收MLUT地址,并且将MLUT地址解码,选择并特定出成为存储器动作对象的MLUT30。存储器动作用地址是在存储器的读取动作、写入动作该两者的情况下使用,且经由m条信号线而通过行解码器61、列解码器62进行解码,选择成为对象的存储单元。此外,在本实施方式中,如下所述,逻辑用地址LA的解码是通过MLUT内的解码器进行。
行解码器61依照读取使能信号re、写入使能信号we等控制信号,将写入用地址AD的m比特中的x比特解码,并对MLUT30输出解码地址n。解码地址n是作为特定出MLUT30内的存储单元的地址而使用。
列解码器62将写入用地址AD的m比特中的y比特解码,具有与行解码器61同样的功能,对MLUT30输出解码地址n,并且输出写入用数据WD,并输入读取用数据RD。
此外,在MLUT的阵列为s行t列的情况下,将n×t比特的数据从MLUT阵列60输入至行解码器61。此处,为了选择各行各自的MLUT,行解码器输出o行量的re、we。也就是说,o行相当于MLUT的s行。此处,通过将o比特中的仅1比特设为主动,而选择特定存储单元的字线。并且,为了使t个MLUT输出n比特的数据,从MLUT阵列60选择n×t比特的数据,在选择其中的1列时使用列解码器62。
在图1所示的可重构设备20的情况下,图4的AD相当于图1的RD1,图4的RD相当于图1的RD2。
在图2所示的20A的情况下,图4的AD相当于图2的AD1,图4的RD相当于图2的AD2。在图2所示的20B的情况下,图4的AD相当于图2的RD1,图4的RD相当于图2的RD2。
3.MLUT
图7是概略性地表示将图9所示的包含两个存储单元组件的MLUT横向堆积而构成的MRLD的图。图8是表示MLUT的输入输出线的图。图7所示的MLUT30从左方向有图8所示的地址A0L~A7L的输入,以及,从右方向有图8所示的地址A0R~A7R的输入,另外,向左方向有图8所示的数据D0L~D7L的输出,向右方向有图8所示的数据D0R~D7R的输出。n值=8的MLUT在以往方式中成为1M比特,CLB(Configurable Logic Block,可配置逻辑块)相当为4M比特而大规模化。相对于此,本申请中如下所述,包含8K(256字×16比特×MLUT2个)比特。
图9是表示图8所示的MLUT的电路例的图。图9所示的MLUT30具有存储单元组件31A、31B。存储单元组件例如为SRAM。
如图9所示,存储单元组件31A具有由来自一边的第1多条地址线所特定且对第1多条地址线的两倍数量的第1多条数据线进行输出的多个存储单元,存储单元组件31B具有由来自另一边的第2多条地址线所特定且对第2多条地址线的两倍数量的第2多条数据线进行输出的多个存储单元,MLUT30将第1多条数据线及第2多条数据线的一部分输出至一边,并且将第1多条数据线及第2多条数据线的另一部分输出至另一边。
各存储单元组件朝每一方向将真值表数据存储在存储单元。因此,在存储单元组件31A及31B,分别存储从右向左方向用真值表数据以及从左向右方向用真值表数据。也就是说,MLUT存储分别规定特定的数据输出方向的两个真值表数据。
使各存储单元组件的数据数相比于地址数增加,并且将从各存储单元组件进行数据输出的方向设为双向,由此,能够减少需要的存储单元的数量,且能够进行向双向的数据输出。
图10是表示比图9所示的MLUT更详细的电路例。图10所示的MLUT30具有存储单元组件31A、31B、地址解码器11A、11B、地址选择器15A、15B、I/O(输入输出)缓冲器12A、12B以及数据选择器13A、13B。MLUT30的存储单元组件31A、31B分别具有地址解码器、地址选择器、以及I/O缓冲器及数据选择器。向存储单元组件31A、31B的输入地址分别成为地址A0L~A7L、A8~A15以及地址A0R~A7R、A8~A15。因此,存储单元组件31A、31B成为2的16次方(65,536)字×8比特的512K的大容量。
在图9中,存储单元组件31A、31B分别具有地址A0L~A7L、A8~A15以及地址地址A0R~A7R、A8~A15的输入。
此外,图9是概略图,未示出作为存储单元组件的周边电路的解码器等,关于解码器是在各存储单元组件的每一个准备图10中所说明的地址解码器11A、11B,且这些地址解码器11A、11B配置在地址选择器15A、15B与存储单元组件31A、31B之间。由此,地址解码器也可将从地址选择器15A、15B输出的全部地址解码。
地址选择器15A、15B是用来切换逻辑动作用地址线或写入用地址的选择电路,在存储单元为单端口的情况下,需要这些地址选择器15A、15B。在将存储单元设为双端口的情况下,不需要这些地址选择器。数据选择器13A、13B是切换输出数据或写入数据WD的选择电路。
即便MRLD不经过专用的小型SRAM的相关半导体设计试制、制造,也可利用以往的大容量的存储器元件。在利用芯片构成MRLD时,使用存储器IP(Intellectual Property),但在以往的MLUT所谋求的微小存储器容量中,地址解码器或读出放大器的面积大而存储器本身的构成比率成为50%以下。该情况也成为MRLD的负担,导致效率差。如果成为大容量存储器,那么地址解码器或读出放大器的比率降低,存储器使用效率提高。因此,大容量存储器的本申请在MRLD芯片的情况下有效。
3.2具有同步/非同步动作用存储单元组件的MLUT
此处所说明的MLUT是双向配置MLUT,具有与图7及图8中所说明的MLUT相同的功能构成。然而,不同于所述双向配置MLUT,具备同步动作用存储单元组件与非同步动作用存储单元组件。同步动作用存储单元组件或同步动作用存储单元组件构成对,而作为逻辑元件及/或连接元件动作的存储单元组件为任一个。由于将两者的数据输出进行线或(wiredOR)连接,或通过OR(或)电路进行连接,因此在不动作的存储单元组件存储全部“0”的数据。
图11是表示能够进行同步与非同步切换的MLUT的电路例的图。图11所示的MLUT30具有存储单元组件31A~31D、地址解码器11A~11D、I/O(输入输出)缓冲器13A~13D、选择电路32A~32D、数据选择电路33以及地址转换检测部35。地址转换检测部35包含ATD(Address Transition Detector,地址转换检测器)电路,将时钟及所发送的逻辑地址与上次发送的逻辑地址进行比较,从而检测地址转换。
图5是表示地址转换检测部的一例的电路图。图6是地址转换检测部的时序图。地址转换检测部35具有或非(NOR)电路110A、110B、或(OR)电路120、异或(EOR)电路130、延迟电路140A~140C、触发器(FF)150、反相器160A、160B以及D锁存器170。
信号S1是从处理器输出的地址输入信号。信号S2是D锁存器的输出。D锁存器170在信号S1发生变化的情况下,以固定期间内不变化的方式进行锁存。其原因在于,因噪音等而忽视后续的地址转换。
信号S3是从D锁存器170输出的延迟信号。延迟信号是如图5所示,通过上升及下降制作时钟,且为了产生信号S4的时钟宽度,而通过延迟电路140B使之延迟。
作为时钟信号而产生的信号S4检测变化,并从EOR130输出。EOR130中,由于被输入延迟电路140B的输入与输出,因此如果两者的信号电平不同,那么输出信号电平“高”。由此,能够检测地址转换。图6所示的S4的时间T1表示从逻辑地址的变化检测起至FF取入为止的时间,时间T2表示从逻辑地址变化检测起至存储单元组件读取为止的时间。
在OR电路120中,被输入信号S4及其他地址转换的信号,且输出OR运算值。通过延迟电路140C使OR电路120的输出延迟,输出信号S5。
信号S5是从延迟电路140C输出的延迟信号,等待D锁存器170的使能信号并进行时钟输入。
信号S6是信号S5的信号延长,使能信号的脉冲产生。NOR电路110A将作为信号S5与S6的NOR运算值的信号S7输出。并且,信号S7成为D锁存器170的使能信号。信号S8是通过反相器160A将信号S5反转所得的信号,在FF150中作为地址信号的锁存的时钟而使用。信号S9是作为处于后段的存储单元组件31的使能而被利用,信号S10是作为存储单元组件31的时钟(atd_clk)而被利用,信号S11是作为存储单元组件31的地址而被利用。图5的信号S10表示自逻辑地址的变化检测起至从存储器读取为止的时间。
如此,例如在图1或图2所示的处理器内核511进行数据要求的情况下,由于具有成为该数据要求对象的地址的变化而产生时钟,驱动存储器,因此在需要时存储器动作,在不需要时不驱动存储器,而能够自主地实现低耗电化。
A.信号线
在下述表1对图11所示的信号线进行说明。
[表1]
信号名 | 位长 | IO | 说明 |
mad | <5:0> | I | 存储器地址 |
lad | I | I | 逻辑地址 |
clk | I | I | 时钟 |
ce | I | I | SRAM芯片使能 |
we | I | I | SRAM写入使能 |
i_data | <7:0> | I | SRAM写入数据 |
odata | <7:0> | O | SRAM数据输出(×4) |
o_mdata | <7:0> | O | SRAM数据输出 |
o_ldata | <7:0> | O | 逻辑数据输出 |
atd_ck | - | - | ATD产生时钟 |
atd_ce | - | - | ATD产生芯片选择 |
atd_address | - | - | ATD lad锁存地址 |
sram_ck(sync) | - | - | 实时SRAM时钟(同步) |
sram_ck(async) | - | - | 实时SRAM时钟(非同步) |
sram_ce(sync) | - | - | SRAM芯片选择(同步) |
sram_ce(async) | - | - | SRAM芯片选择(非同步) |
sram_address(sync) | <3:0> | - | SRAM地址输入(同步) |
sram_address(async) | <3:0> | - | SRAM地址输入(非同步) |
SELECT | - | - | 选择信号 |
B.同步/非同步存储单元组件
存储单元组件31A~31D为同步SRAM。存储单元组件31A~31D分别存储用来向左方向及右方向连接的真值表数据。存储单元组件31B及31D与系统时钟同步地动作。另一方面,存储单元组件31A及31C由于与下述地址转换电路35所产生的ATD产生时钟(也称为“内部时钟信号”)同步地动作,因此相对于时钟(系统时钟)非同步地动作。由于ATD产生时钟比系统时钟信号以高频率动作,因此存储单元组件31A、31C从MLUT30外部看似非同步动作,由此提供非同步的功能。
除了同步的功能要件,存储单元组件31A及31C具有与图9及图10所示的存储单元组件31A及31B相同的功能。存储单元组件31B及31D也同样。
地址解码器11A及11B均是将从左侧输入的地址A0~A3解码,并将解码信号分别输出至存储单元组件31A及31B,将存储单元组件31A及31B的字线设为主动。
地址解码器11C及11D对从右侧输入的地址A4~A7解码,分别将解码信号输出至存储单元组件31C及31D,将存储单元组件31C及31D的字线设为主动。
另外,地址解码器11A及11C将SRAM地址非同步信号(sram_address(async))解码,地址解码器11A及11C将SRAM地址同步信号(sram_address(sync))解码,并将由解码信号所特定出的存储单元组件的字线活化。
在图11所示的例中,各存储单元组件为16word×8bit的存储器区块。存储单元组件31A及31B可在同步模式下使用16word×8bit×2,在非同步模式下使用16word×8bit×2。同步与非同步无法同时动作,例如在将逻辑数据写入至同步动作存储单元组件的情况下,对非同步动作存储单元组件必须全部写入“0”。
此外,如图所示,存储单元组件的数据输出可设为线或(wired OR),也可设为或(OR)逻辑电路。
C.选择电路
将选择电路的选择条件表示在下表。
[表2]
*mlctrl=0/.1:逻辑模式/配置模式
sram_ck
sram_ce
*reset=0时读取全部SRAM的address=0,暂时先确定输出。
sram_address
选择电路32A~32D是选择非同步动作用存储单元组件31A及31C或者同步动作用存储单元组件31B及31D的动作的电路。
选择电路32A如果根据选择信号(Select)选择非同步动作,那么选择在地址转换电路35所产生的atd_ad锁存地址(图3所示的S11),并作为SRAM地址非同步信号(sram_address(async))输出。在未选择非同步动作的情况下,直接输出逻辑地址。
选择电路32B如果根据选择信号(Select)选择非同步动作,那么选择在地址转换电路35所产生的ATD产生时钟并输出。在未选择非同步动作的情况下,直接输出时钟。
选择电路32C如果根据选择信号(Select)选择非同步动作,那么选择在地址转换电路35所产生的ATD产生芯片选择并输出。在未选择非同步动作的情况下,直接输出SRAM芯片使能。
选择电路32D如果根据选择信号(Select)选择同步动作,那么直接输出逻辑地址。
D.禁止逻辑
另外,作为存储器分割的特性,有禁止逻辑构成。使用表2所示的两个真值表,对禁止逻辑的必要性进行说明。
[表3]
在真值表1中,表示有使用A0、A1构成AND电路且输出至D0的真值表。在真值表2中,表示有使用A0、A4构成AND电路且输出至D0的真值表。由于真值表1时的逻辑仅可在使用A3-A0的存储单元组件31A进行逻辑运算,因此只要将“0”写入至其他存储单元组件,那么通过OR运算,不受其他存储单元组件的输出值的影响,从而不会产生禁止逻辑的问题。
另一方面,在真值表2的逻辑的情况下,使用A3-A0的存储单元组件无法识别c、d。使用A7-A4的SRAM无法识别b、d。如此,跨及两个存储单元组件的逻辑运算在两个真值表中无法获得正确的值,因此将跨及两个存储单元组件的逻辑运算作为禁止逻辑。由此,在逻辑构成的情况下,必须在各存储单元组件内部实现逻辑。因此,在本实施方式的真值表数据中,以不产生所述禁止逻辑的方式产生逻辑。
E.I/O缓冲器
I/O(输入输出)缓冲器13A~13D与时钟以及ATD产生时钟的任一个同步地,从存储单元组件的数据线读取数据,由此提供FF的功能。此外,I/O(输入输出)缓冲器13A~13D包含将从存储单元的位线输出的电压放大的读出放大器。
选择电路32将SRAM数据输出(O_mdata)依照选择信号作为SRAM数据输出以及逻辑数据输出的任一个输出。
3.3电路规模调整电路
由于MRLD20包含小存储单元组件,因此与主存储器600相比,集成电路的规模变大,不相匹配。图12是表示规模调整电路的一例的图。规模调整电路21A配置在主存储器600与MRLD20A之间,电路规模调整电路21B配置在主存储器600与MRLD20B之间。
4.MLUT的逻辑动作
A.逻辑元件
图13是表示MLUT的一例的图。在图13中,为了对逻辑动作进行说明,省略对地址选择器、I/O缓冲器及数据选择器的记载。图13所示的MLUT30a、30b分别具有4个逻辑用地址输入LA线A0~A3、4个逻辑动作用数据线D0~D3、4×16=64个存储元件40以及地址解码器9。逻辑动作用数据线D0~D3将16个存储元件40分别串联连接。地址解码器9是以基于输入至逻辑用地址输入LA线A0~A3的信号,选择连接于16条字线的任一条的4个存储元件的方式而构成。该4个存储元件分别连接于逻辑动作用数据线D0~D3,将存储在存储元件的数据输出至逻辑动作用数据线D0~D3。例如,在将适当的信号输入至逻辑用地址输入LA线A0~A3的情况下,能够以选择4个存储元件40A、40B、40C及40D的方式而构成。此处,存储元件40A连接于逻辑动作用数据线D0,存储元件40B连接于逻辑动作用数据线D1,存储元件40D连接于逻辑动作用数据线D2,存储元件40D连接于逻辑动作用数据线D3。并且,存储在存储元件40A~40D的信号输出至逻辑动作用数据线D0~D3。如此,MLUT30A、30B从逻辑用地址输入LA线A0~A3接收逻辑用地址输入LA,通过该逻辑用地址输入LA将地址解码器9所选择的4个存储元件40中所存储的值作为逻辑动作用数据分别输出至逻辑动作用数据线D0~D3。此外,MLUT30A的逻辑用地址输入LA线A2与邻接的MLUT30B的逻辑动作用数据线D0连接,MLUT30A将从MLUT30B输出的逻辑动作用数据作为逻辑用地址输入LA而接收。另外,MLUT30A的逻辑动作用数据线D2与MLUT30B的逻辑用地址输入LA线A0连接,MLUT30A所输出的逻辑动作用数据作为逻辑用地址输入LA而被MLUT30B接收。例如,MLUT30A的逻辑动作用数据线D2基于输入至MLUT30A的逻辑用地址输入LA线A0~A3的信号,将连接于逻辑动作用数据线D2的16个存储元件的任一个中所存储的信号输出至MLUT30B的逻辑用地址输入LA线A0。同样地,MLUT30B的逻辑动作用数据线D0基于输入至MLUT30B的逻辑用地址输入LA线A0~A3的信号,将连接于逻辑动作用数据线D0的16个存储元件的任一个中所存储的信号输出至MLUT30A的逻辑用地址输入LA线A2。如此,MLUT彼此的连结是使用1对地址线及数据线。以下,如MLUT30A的逻辑用地址输入LA线A2与逻辑动作用数据线D2,将用于MLUT的连结的地址线及数据线的对称为“AD对”。
此外,在图13中,MLUT30A、30B所具有的AD对为4,AD对的数量如下所述,并不特别限定于4。
图14是表示作为逻辑电路动作的MLUT的一例的图。在本例中,将逻辑用地址输入LA线A0及A1设为2输入NOR电路701的输入,将逻辑用地址输入LA线A2及A3设为2输入NAND(与非)电路702的输入。并且,构成如下逻辑电路:将2输入NOR电路701的输出与2输入NAND电路702的输出向2输入NAND电路703输入,将2输入NAND电路703的输出向逻辑动作用数据线D0输出。
图15是表示图14所示的逻辑电路的真值表的图。图14的逻辑电路由于为4输入,因此使用输入A0~A3的全部输入作为输入。另一方面,由于输出仅为1个,因此仅使用输出D0作为输出。在真值表的输出D1~D3栏记载有“*”。其表示可为“0”或“1”的任一值。然而,实际上为了重构而将真值表数据写入至MLUT时,必须在这些栏中写入“0”或“1”的任一值。
B.连接元件
图16是表示作为连接元件而动作的MLUT的一例的图。图16中,作为连接元件的MLUT以如下的方式动作:将逻辑用地址输入LA线A0的信号输出至逻辑动作用数据线D1,将逻辑用地址输入LA线A1的信号输出至逻辑动作用数据线D2,将逻辑用地址输入LA线A2的信号输出至逻辑动作用数据线D3。作为连接元件的MLUT进而以将逻辑用地址输入LA线A3的信号输出至逻辑动作用数据线D0的方式动作。
图17是表示图16所示的连接元件的真值表的图。图16所示的连接元件为4输入4输出。因此,使用输入A0~A3的全部输入与输出D0~D3的全部输出。根据图17所示的真值表,MLUT作为连接元件而动作,该连接元件是将输入A0的信号输出至输出D1,将输入A1的信号输出至输出D2,将输入A2的信号输出至输出D3,将输入A3的信号输出至输出D0。
图18是表示通过具有AD对0、AD对1、AD对2以及AD对3的4个AD对的MLUT而实现的连接元件的一例的图。AD0具有逻辑用地址输入LA线A0及逻辑动作用数据线D0。AD1具有逻辑用地址输入LA线A1及逻辑动作用数据线D1。AD2具有逻辑用地址输入LA线A2及逻辑动作用数据线D2。并且,AD3具有逻辑用地址输入LA线A3及逻辑动作用数据线D3。在图18中,二点链线表示将输入至AD对0的逻辑用地址输入LA线A0的信号输出至AD对1的逻辑动作用数据线D1的信号的流向。虚线表示将输入至AD对1的逻辑用地址输入LA线A1的信号输出至AD对2的逻辑动作用数据线D2的信号的流向。实线表示将输入至AD对2的逻辑用地址输入LA线A2的信号输出至AD对3的逻辑动作用数据线D3的信号的流向。单点链线表示将输入至AD对3的逻辑用地址输入LA线A3的信号输出至AD对0的逻辑动作用数据线D0的信号的流向。
此外,在图18中,MLUT30所具有的AD对为4,但AD对的数量并不特别限定于4。
C.逻辑元件及连接元件的组合功能
图19是表示1个MLUT作为逻辑元件及连接元件而动作的一例的图。在图19所示的例中,构成如下的逻辑电路:将逻辑用地址输入LA线A0及A1作为2输入NOR电路121的输入,将2输入NOR电路121的输出以及逻辑用地址输入LA线A2作为2输入NAND电路122的输入,将2输入NAND电路122的输出向逻辑动作用数据线D0输出。另外,与此同时,构成将逻辑用地址输入LA线A3的信号输出至逻辑动作用数据线D2的连接元件。
图20表示图19所示的逻辑元件及连接元件的真值表。图19的逻辑动作使用输入D0~D3的3个输入,使用1个输出D0作为输出。另一方面,图20的连接元件构成将输入A3的信号输出至输出D2的连接元件。
图21是表示通过具有AD0、AD1、AD2及AD3的4个AD对的MLUT而实现的逻辑动作及连接元件的一例的图。与图18所示的MLUT同样地,AD0具有逻辑用地址输入LA线A0及逻辑动作用数据线D0。AD1具有逻辑用地址输入LA线A1及逻辑动作用数据线D1。AD2具有逻辑用地址输入LA线A2及逻辑动作用数据线D2。并且,AD3具有逻辑用地址输入LA线A3及逻辑动作用数据线D3。如上所述,MLUT30通过1个MLUT30而实现3输入1输出的逻辑动作、1输入1输出的连接元件的两个动作。具体来说,逻辑动作使用AD对0的逻辑用地址输入LA线A0、AD对1的逻辑用地址输入LA线A1、AD对2的逻辑用地址输入LA线A2作为输入。并且,使用AD对0的逻辑动作用数据线D0的地址线作为输出。另外,连接元件如虚线所示将输入至AD对3的逻辑用地址输入LA线A3的信号输出至AD对2的逻辑动作用数据线D2。
5.真值表数据的产生方法
应用在利用第1及第2实施方式所说明的可重构半导体装置的真值表数据是通过执行逻辑构成用软件程序的信息处理装置而产生。例如,该信息处理装置可为计算机装置10,另外,也可为具有与计算机装置10同样的硬件资源,且连接于网络1100的其他计算机装置。
参照图1或图2,对产生真值表数据的计算机装置的一例进行说明。计算机装置10具有处理器510、主存储器600及驱动装置550。处理器510执行从通信部530或驱动装置550下载的逻辑构成用软件1210后,从用来设计集成电路的C语言描述或硬件描述语言(HDL)等电路描述语言1220产生真值表数据1230,并存储在主存储器600。处理器510将所产生的真值表数据1230写入至可重构设备20。
驱动装置550是例如对DVD(Digital Versatile Disc)、闪速存储器等存储媒体1200进行读写的装置。驱动装置550包含使存储媒体1200旋转的马达或在存储媒体1200上读写数据的头等。驱动装置550从所设置的存储媒体1200读取程序。处理器510将通过驱动装置550所读取的程序或真值表数据存储至主存储器600。
将真值表数据1230读入至可重构设备20,由此使真值表数据及硬件资源协动,通过该具体方法,构建作为逻辑元件及/或连接元件的功能。另外,真值表数据也可称为具有表示真值表的逻辑构造的构造的数据。
以上所说明的实施方式仅作为典型例而列举,对于业者来说,该各实施方式的构成要素的组合、变化及变更显而易见,只要为业者便可明确,能够不脱离本发明的原理及权利要求书所述的发明的范围,而进行所述实施方式的各种变化。
[符号的说明]
10 计算机装置
11 地址解码器
12 I/O缓冲器
13 数据选择器
20 可重构设备
30 MLUT
31 存储单元组件
32 选择电路
35 地址转换检测部
60 MLUT阵列
61 行解码器
62 列解码器
510 处理器
530 通信部
540 外部存储装置
550 驱动装置
600 主存储器
1100 网络
1200 存储媒体
Claims (7)
1.一种可重构设备,与主存储器连接;且
所述可重构设备具备利用地址线或数据线相互连接的多个逻辑部;
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线的一部分输入的地址解码;以及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的地址线与所述主存储器的数据输出线连接。
2.根据权利要求1所述的可重构设备,其中所述存储单元组件为多查找表。
3.根据权利要求1或2所述的可重构设备,其中所述各逻辑部具备:
第1地址解码器,将从所述多条地址线的一部分输入的地址解码;
第2地址解码器,将从所述多条地址线的另一部分输入的地址解码;
第1存储单元组件,具有由所述第1地址解码器的解码线所特定出的多个存储单元;以及
第2存储单元组件,具有由所述第2地址解码器的解码线所特定出的多个存储单元。
4.根据权利要求3所述的半导体装置,其中所述第1存储单元组件及第2存储单元组件存储多个真值表数据,且与输出特定出所述多个真值表数据的任一个的数据的第2多条地址线连接。
5.一种半导体装置,具备:
主存储器及可重构设备;
该可重构设备与所述主存储器连接,
所述可重构设备具备利用地址线或数据线而相互连接的多个逻辑部,
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线的一部分输入的地址解码;以及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的数据输出与所述主存储器的地址线连接。
6.根据权利要求6所述的半导体装置,其还具备第2可重构设备,
所述第2可重构设备具备利用地址线或数据线相互连接的多个逻辑部,
所述各逻辑部具有:
多条地址线;
多条数据线;
地址解码器,将从所述多条地址线的一部分输入的地址解码;以及
存储单元阵列组件,具有由所述地址解码器的解码线所特定出的多个存储单元,且将从所述特定出的存储单元读取的数据输出至所述数据线;
所述存储单元阵列组件的数据输出与所述主存储器的地址线连接。
7.根据权利要求5或6所述的半导体装置,其还具备规模调整电路,所述规模调整电路在所述主存储器与所述可重构设备之间,对两者的电路规模进行调整。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014-215160 | 2014-10-22 | ||
JP2014215160 | 2014-10-22 | ||
PCT/JP2015/076610 WO2016063667A1 (ja) | 2014-10-22 | 2015-09-18 | 再構成可能デバイス |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107078740A true CN107078740A (zh) | 2017-08-18 |
Family
ID=55760712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580056708.1A Pending CN107078740A (zh) | 2014-10-22 | 2015-09-18 | 可重构设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9923561B2 (zh) |
EP (1) | EP3211795A4 (zh) |
JP (1) | JP6378775B2 (zh) |
CN (1) | CN107078740A (zh) |
TW (1) | TWI618357B (zh) |
WO (1) | WO2016063667A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112735493A (zh) * | 2019-10-28 | 2021-04-30 | 敦泰电子股份有限公司 | 静态随机存取内存系统及其数据读写方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10074493B2 (en) * | 2016-11-21 | 2018-09-11 | Aeroflex Colorado Springs Inc. | Radiation-hardened break before make circuit |
US10312918B2 (en) * | 2017-02-13 | 2019-06-04 | High Performance Data Storage And Processing Corporation | Programmable logic design |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5726584A (en) * | 1996-03-18 | 1998-03-10 | Xilinx, Inc. | Virtual high density programmable integrated circuit having addressable shared memory cells |
US6172521B1 (en) * | 1997-04-11 | 2001-01-09 | Nec Corporation | Programmable logic IC having memories for previously storing a plurality of configuration data and a method of reconfigurating same |
CN1387262A (zh) * | 2001-04-26 | 2002-12-25 | 株式会社东芝 | 半导体集成电路 |
WO2004093445A1 (ja) * | 2003-04-16 | 2004-10-28 | Fujitsu Limited | Ip画像伝送装置 |
CN1643792A (zh) * | 2002-03-18 | 2005-07-20 | 皇家飞利浦电子股份有限公司 | 基于lut可重配置逻辑体系结构的配置存储器实现 |
CN1716453A (zh) * | 2004-01-30 | 2006-01-04 | 三星电子株式会社 | 在主机和非易失性存储设备间进行缓冲的多端口存储设备 |
CN1823390A (zh) * | 2003-07-14 | 2006-08-23 | 兹莫斯技术有限公司 | 1t1c sram |
CN101189797A (zh) * | 2005-05-31 | 2008-05-28 | Ip菲力股份有限公司 | 可重构的装置 |
CN101689858A (zh) * | 2007-06-25 | 2010-03-31 | 太阳诱电株式会社 | 半导体器件 |
US20120007635A1 (en) * | 2009-03-30 | 2012-01-12 | Taiyo Yuden Co., Ltd. | Semiconductor device |
CN102857213A (zh) * | 2011-07-01 | 2013-01-02 | 阿尔特拉公司 | 可重构逻辑块 |
CN102948077A (zh) * | 2010-06-24 | 2013-02-27 | 太阳诱电株式会社 | 半导体装置 |
WO2014065424A1 (ja) * | 2012-10-28 | 2014-05-01 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
WO2014163098A2 (ja) * | 2013-04-02 | 2014-10-09 | 太陽誘電株式会社 | 半導体装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6765408B2 (en) * | 2002-02-11 | 2004-07-20 | Lattice Semiconductor Corporation | Device and method with generic logic blocks |
US20110137805A1 (en) | 2009-12-03 | 2011-06-09 | International Business Machines Corporation | Inter-cloud resource sharing within a cloud computing environment |
JP5822772B2 (ja) * | 2012-04-11 | 2015-11-24 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
JP5927012B2 (ja) * | 2012-04-11 | 2016-05-25 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
US8767501B2 (en) * | 2012-07-17 | 2014-07-01 | International Business Machines Corporation | Self-reconfigurable address decoder for associative index extended caches |
WO2014080872A2 (ja) * | 2012-11-20 | 2014-05-30 | 太陽誘電株式会社 | 再構成可能な半導体装置の論理構成方法 |
JPWO2014163099A1 (ja) * | 2013-04-02 | 2017-02-16 | 太陽誘電株式会社 | 再構成可能な論理デバイス |
JP6306846B2 (ja) * | 2013-09-16 | 2018-04-04 | 太陽誘電株式会社 | 再構成可能な論理デバイス |
JP6517626B2 (ja) * | 2015-08-11 | 2019-05-22 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
-
2015
- 2015-09-18 EP EP15852793.7A patent/EP3211795A4/en not_active Withdrawn
- 2015-09-18 JP JP2016555138A patent/JP6378775B2/ja not_active Expired - Fee Related
- 2015-09-18 WO PCT/JP2015/076610 patent/WO2016063667A1/ja active Application Filing
- 2015-09-18 CN CN201580056708.1A patent/CN107078740A/zh active Pending
- 2015-09-18 US US15/514,179 patent/US9923561B2/en not_active Expired - Fee Related
- 2015-09-25 TW TW104131918A patent/TWI618357B/zh not_active IP Right Cessation
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5726584A (en) * | 1996-03-18 | 1998-03-10 | Xilinx, Inc. | Virtual high density programmable integrated circuit having addressable shared memory cells |
US6172521B1 (en) * | 1997-04-11 | 2001-01-09 | Nec Corporation | Programmable logic IC having memories for previously storing a plurality of configuration data and a method of reconfigurating same |
CN1387262A (zh) * | 2001-04-26 | 2002-12-25 | 株式会社东芝 | 半导体集成电路 |
CN1643792A (zh) * | 2002-03-18 | 2005-07-20 | 皇家飞利浦电子股份有限公司 | 基于lut可重配置逻辑体系结构的配置存储器实现 |
WO2004093445A1 (ja) * | 2003-04-16 | 2004-10-28 | Fujitsu Limited | Ip画像伝送装置 |
CN1823390A (zh) * | 2003-07-14 | 2006-08-23 | 兹莫斯技术有限公司 | 1t1c sram |
CN1716453A (zh) * | 2004-01-30 | 2006-01-04 | 三星电子株式会社 | 在主机和非易失性存储设备间进行缓冲的多端口存储设备 |
CN101189797A (zh) * | 2005-05-31 | 2008-05-28 | Ip菲力股份有限公司 | 可重构的装置 |
CN101689858A (zh) * | 2007-06-25 | 2010-03-31 | 太阳诱电株式会社 | 半导体器件 |
US20120007635A1 (en) * | 2009-03-30 | 2012-01-12 | Taiyo Yuden Co., Ltd. | Semiconductor device |
CN102948077A (zh) * | 2010-06-24 | 2013-02-27 | 太阳诱电株式会社 | 半导体装置 |
CN102857213A (zh) * | 2011-07-01 | 2013-01-02 | 阿尔特拉公司 | 可重构逻辑块 |
WO2014065424A1 (ja) * | 2012-10-28 | 2014-05-01 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
WO2014163098A2 (ja) * | 2013-04-02 | 2014-10-09 | 太陽誘電株式会社 | 半導体装置 |
Non-Patent Citations (4)
Title |
---|
NITI MADAN等: ""Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchy"", 《2009 IEEE 15TH INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE COMPUTER ARCHITECTURE》 * |
RAMCHAN WOO等: ""A 120-mW 3-D rendering engine with 6-Mb embedded DRAM and 3.2-GB/s runtime reconfigurable bus for PDA chip"", 《IEEE JOURNAL OF SOLID-STATE CIRCUITS》 * |
戴鹏等: ""基于视频编解码的可重构处理器存储系统设计"", 《深圳大学学报(理工版)》 * |
王敏等: ""一种可配置的Cache/SRAM存储器的设计"", 《微计算机信息(嵌入式与SOC)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112735493A (zh) * | 2019-10-28 | 2021-04-30 | 敦泰电子股份有限公司 | 静态随机存取内存系统及其数据读写方法 |
CN112735493B (zh) * | 2019-10-28 | 2023-06-13 | 敦泰电子股份有限公司 | 静态随机存取内存系统及其数据读写方法 |
Also Published As
Publication number | Publication date |
---|---|
US9923561B2 (en) | 2018-03-20 |
TW201626726A (zh) | 2016-07-16 |
TWI618357B (zh) | 2018-03-11 |
WO2016063667A1 (ja) | 2016-04-28 |
EP3211795A4 (en) | 2018-10-03 |
JPWO2016063667A1 (ja) | 2017-06-08 |
US20170279451A1 (en) | 2017-09-28 |
EP3211795A1 (en) | 2017-08-30 |
JP6378775B2 (ja) | 2018-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11860782B2 (en) | Compensating for DRAM activation penalties | |
US11901026B2 (en) | Partial refresh | |
CN107408404B (zh) | 用于存储器装置的设备及方法以作为程序指令的存储 | |
CN108701473B (zh) | 用于数据移动的设备及方法 | |
WO2021028723A2 (en) | Memory-based processors | |
EP3255555B1 (en) | A lower energy comsumption and high speed computer without the memory bottleneck | |
JP6791522B2 (ja) | インデータパス計算動作のための装置及び方法 | |
KR102375680B1 (ko) | 인메모리 데이터 스위칭 네트워크를 위한 장치들 및 방법들 | |
CN105051823B (zh) | 半导体装置 | |
WO2020049363A2 (en) | Memory-based processors | |
CN107078740A (zh) | 可重构设备 | |
Dama et al. | GHz asynchronous SRAM in 65nm | |
Li et al. | Fault clustering technique for 3D memory BISR | |
Tárrega et al. | Fast-track cache: a huge racetrack memory L1 data cache | |
CN110175385A (zh) | 一种基于性能磨损均衡的非易失fpga布局优化方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170818 |
|
WD01 | Invention patent application deemed withdrawn after publication |