CN105191139B - 可重构逻辑器件 - Google Patents

可重构逻辑器件 Download PDF

Info

Publication number
CN105191139B
CN105191139B CN201480018307.2A CN201480018307A CN105191139B CN 105191139 B CN105191139 B CN 105191139B CN 201480018307 A CN201480018307 A CN 201480018307A CN 105191139 B CN105191139 B CN 105191139B
Authority
CN
China
Prior art keywords
data
composition
line
reconfigurable logic
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201480018307.2A
Other languages
English (en)
Other versions
CN105191139A (zh
Inventor
佐藤正幸
佐藤幸志
胜满德
志水勋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taiyo Yuden Co Ltd
Original Assignee
Taiyo Yuden Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Taiyo Yuden Co Ltd filed Critical Taiyo Yuden Co Ltd
Publication of CN105191139A publication Critical patent/CN105191139A/zh
Application granted granted Critical
Publication of CN105191139B publication Critical patent/CN105191139B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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/17736Structural details of routing resources
    • H03K19/17744Structural details of routing resources for input/output signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

本发明可提供一种面积小且重构性高的可重构逻辑器件。本发明是一种可重构逻辑器件,具有多个多查找表单元,且根据构成数据信息而构成多个逻辑电路,且各个多查找表单元具备:构成存储器,存储构成数据;数据输入线;数据输出线;以及可重构逻辑多路复用器,响应所述构成数据而选择性地使从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合,及/或,响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出;且利用所述数据输入线及所述数据输出线将邻近的所述多查找表连接。

Description

可重构逻辑器件
技术领域
本发明涉及一种可重构逻辑器件。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)等可重构(可编程或可写入)的半导体装置是因为由其可再写入性所赋予的灵活性而被广泛使用(例如专利文献1)。
通常的岛型(island style)FPGA包含逻辑要素CLB(Configurable LogicBlocks,可配置逻辑块)、开关要素SB、CB及输入输出要素IOB。
逻辑要素CLB是实现组合电路的可编程要素,CLB各自包含数据触发器(DFF)、或LUT(Look Up Table,查找表)等。k输入的LUT(k-LUT)是使用2的k次方个SRAM(StaticRandom Access Memory,静态随机存取存储器)胞,而实现k变数的函数。例如为以下方式:将任意的逻辑函数的真值表保持在SRAM,根据输入而参照真值表进行输出。
而且,为了在使逻辑功能部分链接的CLB间产生信号路径,在CLB间配置可切换信号路径的开关要素CB、SB。开关要素CB是设定在逻辑块LB与配线信道之间的要素,且开关要素SB是在纵向与横向的配线交叉的部分进行纵横的配线间的设定的要素。
所谓输入输出要素IOB,是指承担器件的输入输出与逻辑要素LB之间的接口的作用的构成要素。
申请人或发明者正在开发一种利用存储元单元实现电路构成的“MPLD(Memory-based Programmable Logic Device,基于存储器的可编程逻辑器件)”(注册商标)。MPLD是例如示于下述专利文献1中。MPLD是将称为MLUT(Multi Look-Up-Table,多查找表)的存储器阵列相互连接。MLUT是存储真值数据而构成配线要素及逻辑要素。MPLD是通过将该MLUT排列成阵列状并相互连接而实现与FPGA大致同等的功能。而且,MPLD是通过利用真值表数据将MLUT用作逻辑要素与配线要素两者而使逻辑区域与配线区域具有灵活性的器件(例如专利文献2),与具有存储元单元间的连接所专用的切换电路的FPGA不同。
背景技术文献
专利文献
专利文献1:国际公开第2002/538652号
专利文献2:国际公开第2007/060763号
发明内容
[发明要解决的问题]
如上所述,FPGA为可重构装置,但面积大于ASIC(Application SpecificIntegrated Circuit,专用集成电路)。其原因在于,配线与开关占据整体面积的约70~80%。而且,FPGA是通过逻辑要素与配线要素各不相同的装置来实现,所以重构上存在限制。
根据本发明的一实施方式,提供一种面积小且重构性高的可编程逻辑器件。
[解决问题的技术手段]
解决所述问题的实施方式是由以下项目组表示。
1.一种可重构逻辑器件,具有多个多查找表单元,且根据构成数据信息而构成多个逻辑电路;且
各个多查找表单元具备:
构成存储器,存储构成数据;
数据输入线;
数据输出线;以及
可重构逻辑多路复用器,响应所述构成数据而选择性地使从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合,及/或,响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出;且
利用所述数据输入线及所述数据输出线将邻近的所述多查找表连接。
2.根据项目1所述的可重构逻辑器件,其构成为,所述构成数据包含规定逻辑运算值及/或接线路径的多个真值表数据,且根据所述数据输入而选择所述多个真值表数据中的任一个。
3.根据项目1或2所述的可重构逻辑器件,其中所述可重构逻辑多路复用器存在多个,且针对所述数据输入线的方向与所述数据输出线的方向的每一种组合而设置。
4.根据项目1至3中任一项所述的可重构逻辑器件,其还具备保持部,所述保持部是保持从所述构成存储器读出的构成数据,并且将所述保持的构成数据输出到所述可重构逻辑多路复用器。
5.根据项目1至4中任一项所述的可重构逻辑器件,其中所述可重构逻辑多路复用器是根据从所述数据输入线的数据输入,选择并输出保持在所述保持部的构成数据中的任一个。
6.根据项目1至5中任一项所述的可重构逻辑器件,其中所述多查找表的数据输入线是连接于邻接的另一所述多查找表的数据输出线。
7.根据项目1至6中任一项所述的可重构逻辑器件,其中所述构成存储器包含针对每一数据输出方向所准备的多个构成存储器。
8.根据项目1至7中任一项所述的可重构逻辑器件,其具备在输出到所述构成存储器的地址的输入时序产生时钟的时钟转换检测部,且所述构成存储器是与所述时钟同步地动作。
9.根据项目1至8中任一项所述的可重构逻辑器件,其构成为,所述构成存储器存储多个构成数据,所述多个构成数据中的任一个被输出到连接于所述构成存储器的第二地址线的第二数据输出线,根据所述第二地址线的输入而特定出所述多个真值表数据。
10.根据项目1至9中任一项所述的可重构逻辑器件,其构成为,所述构成存储器存储多个构成数据,且根据与外部连接的第二地址线的输入而特定出所述多个真值表数据。
11.一种控制方法,是具有多个多查找表单元且根据构成数据信息而构成多个逻辑电路的可重构逻辑器件的控制方法;且
各个多查找表单元具备:
数据输入线;
数据输出线;以及
可重构逻辑多路复用器;且
通过所述数据输入线及所述数据输出线而连接于邻近的所述逻辑部;
所述可重构逻辑多路复用器是响应所述真值表数据而选择性地将从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合;
响应所述真值表数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出。
12.根据项目11所述的控制方法,其中所述可重构逻辑器件还具备保持部,所述保持部是保持从所述构成存储器读出的构成数据,并且将所述保持的构成数据输出到所述可重构逻辑多路复用器;且
所述可重构逻辑多路复用器是根据从所述数据输入线的数据输入,而选择并输出保持在所述保持部的构成数据中的任一个。
13.根据项目11或12所述的控制方法,其中可重构逻辑器件具备在输出到所述构成存储器的地址的输入时序产生时钟的时钟转换检测部,且所述构成存储器是与所述时钟同步地动作。
14.一种程序,用来控制可重构逻辑器件,且
所述可重构逻辑器件是:
具有多个多查找表单元,且根据构成数据信息而构成多个逻辑电路;
各个多查找表单元具有:
构成存储器,存储构成数据;
数据输入线;以及
数据输出线;且
使所述多查找表单元执行如下处理:
选择性地将从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合;
响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出。
15.一种存储媒体,其存储根据项目14所述的程序。
[发明效果]
本实施方式的半导体装置可提供一种面积小且重构性高的半导体装置。
附图说明
图1是表示本实施方式的半导体装置的整体构成的一个示例的图。
图2是表示2方向配置的MLUT阵列的一个示例的图。
图3是表示4方向配置的MLUT阵列的一个示例的图。
图4A是表示2方向配置的MLUT的信号线的配置例的图。
图4B是表示2方向配置的MLUT的一个示例的图。
图5是表示构成存储器的一个示例的图。
图6A是表示时钟转换检测部的一个示例的图。
图6B是时钟转换检测部的时序图的一个示例。
图6C是时钟转换检测部中的地址与所产生的时钟的时序图的一个示例。
图7A是表示4方向配置的MLUT的信号线的配置例的图。
图7B是表示4方向配置的MLUT的一个示例的图。
图8是表示进行页面控制的MLUT的一个示例的图。
图9是表示在MLUT外部设置状态机械的示例的图。
图10是表示在MLUT内部设置状态机械的示例的图。
图11是表示包含图2中所说明的交替配置的MLUT的逻辑电路与配线的图。
图12A是表示存储在MLUT30A左侧的构成存储器的构成数据的一个示例的图。
图12B是表示存储在MLUT30A右侧的构成存储器的构成数据的一个示例的图。
图12C是表示存储在MLUT30B左侧的构成存储器的构成数据的一个示例的图。
图12D是表示存储在MLUT30B右侧的构成存储器的构成数据的一个示例的图。
图12E是表示存储在MLUT30C左侧的构成存储器的构成数据的一个示例的图。
图12F是表示存储在MLUT30C右侧的构成存储器的构成数据的一个示例的图。
图12G是表示存储在MLUT30D左侧的构成存储器的构成数据的一个示例的图。
图12H是表示存储在MLUT30D右侧的构成存储器的构成数据的一个示例的图。
图12I是表示存储在MLUT30E左侧的构成存储器的构成数据的一个示例的图。
图12J是表示存储在MLUT30E右侧的构成存储器的构成数据的一个示例的图。
图13是表示产生真值表数据的信息处理装置的硬件构成的图。
具体实施方式
以下,参照附图,依次对[1]可重构逻辑器件、[2]MLUT阵列、[3]MLUT、[4]页面控制、[5]构成数据及[6]真值表数据的产生方法进行说明。
[1]可重构逻辑器件
图1是表示本实施方式的可重构逻辑器件的一个示例的图。以下,将该可重构逻辑器件称为MRLD(Memory based Reconfigurable Logic Device,基于存储器的可重构逻辑器件)(注册商标)。MRLD与申请人所开发的MPLD同样地,在各MLUT间未介置配线要素而直接连接的方面共通,但在有效地活用通用SRAM的功能的方面有区别。
MRLD是具备与FPGA大致同等功能的器件,但其构造不同。FPGA包含CLB、开关模块及连接模块等,且逻辑资源与配线资源的比率固定。相对于此,MRLD成为将可用作逻辑元件、配线元件这两者的MLUT排列而成的构成,进而,MLUT直接连接的方面与FPGA有较大差异。
图1所示的MRLD20具有将下述多个MLUT(Multi Look Up Table:多查找表)呈阵列状配置而成的MLUT阵列300、特定出MLUT的存储器读出动作及写入动作的解码器12、以及输入输出部14。
在MRLD20的逻辑动作中,使用以实线表示的数据输入DI及数据输出DO的信号。数据输入DI被用作逻辑电路的输入信号。而且,数据输出DO被用作逻辑电路的输出信号(以下在图2中进行叙述)。
通过MRLD20的逻辑动作来实现的逻辑是通过存储在MLUT30的真值表数据来实现。若干个MLUT30是以作为AND(与)电路、加法器等的组合电路的逻辑要素而动作。其他MLUT是作为将实现组合电路的MLUT30间连接的连接要素而动作。用来使MRLD20实现逻辑要素、及连接要素的真值表数据的重写是通过向MLUT30的构成存储器的写入动作来进行。
MRLD20的写入动作是通过写入用地址AD及写入用数据WD来进行,读出动作是通过写入用地址AD及读出用数据RD来进行。
写入用地址AD是特定出MLUT30内的存储元的地址。写入用地址AD是基于m条信号线特定出2的m次方的数n个存储元。写入用地址AD是在存储器的读出动作、写入动作这两者的情况下使用,经由m条信号线由解码器12予以解码,而选择成为对象的存储元。此外,本实施方式中,逻辑用动作地址DI的解码是利用MLUT30内的解码器进行,对此将在下文进行叙述。
解码器12是根据读出使能(read enable)信号re、写入使能(write enable)信号we等控制信号,对写入用地址AD进行解码,且对MLUT30输出解码地址n。解码地址n被用作特定出MLUT30的构成存储器内的存储元的地址。
输入输出部14是根据写入使能信号we将写入用数据WD写入,且根据读出使能信号re将读出用数据RD输出。
[2]MLUT阵列
图2是说明2方向配置的MLUT阵列的一个示例的图。图2所示的箭头是与邻接的另一MLUT相连的数据输入线或数据输出线。在图2所示的MLUT阵列300中,MLUT30是利用2条数据输入线或数据输出线而与邻接的另一MLUT30连接。也就是说,构成为MLUT彼此的连接是利用多条数据输入线或数据输出线来连接。而且,为了提高可构成性,邻接的MLUT是在输入方向及输出方向分别与两个MLUT连接。以下,将该配置称为“交替配置”。
交替配置型MLUT是通过将数据线及位线设为多条而可进行多比特的数据处理,进而,可限定输入及输出方向的数据的传输方向,所以也容易制成逻辑库。
各MLUT30可执行多个不同的逻辑函数。MLUT30具有构成存储器40及可重构逻辑多路复用器50。由MLUT30执行的逻辑函数是由存储在构成存储器40内的构成数据决定。MLUT30具有构成数据用的输入,且具有向可重构逻辑多路复用器50的构成数据用的输出。构成数据是使用其地址线及数据线而从MRLD20外侧向构成存储器40内加载。
可重构逻辑多路复用器50具有数据输入、数据输出、及用来接收构成数据的配置输入,且响应此而控制数据输入及输出的结合状态。可重构逻辑多路复用器50进而响应构成数据,将对于数据输入进行逻辑运算所得的数据向数据输出线进行数据输出。
图3是说明4方向配置的MLUT阵列的一个示例的图。图3所示的方向配置中是与FPGA相同的配置。由此,获得与FPGA近似的构成,且使用利用FPGA工具所产生的逻辑构成的状态,而容易制成MRLD的构成数据。例如,将图的左上及中上、左下设为开关模块,将中下设为LUT模块,可表现FPGA的CLB相当,从而可根据FPGA所构成的状态产生真值数据。
[3]MLUT
图4A是表示2方向配置的MLUT的信号线的配置例的图。如图4A所示,从左的数据输入为InA0~InA3,向左的数据输出为OutA0~OutA3。而且,从右的数据输入为InB0~InB3,向右的数据输出为OutB0~OutB3。
图4B是表示2方向配置的MLUT的一个示例的图。图4B所示的MLUT的信号线是与图4A所示的MLUT的信号线相同。图4B所示的MLUT30具有构成存储器40、可重构逻辑多路复用器50、及寄存器单元60。构成存储器40例如为SRAM。构成存储器40与用来特定出存储构成数据的存储元的多条地址线A0~A8连接。图3所示的例中,在构成存储器中,因9个地址而有2的9次方即“512”条字线,相对于此,有256条位线(也称为“数据线”)。有4个输入且其组合为16,所以需要16个寄存器。而且,以4比特计需要16个,且需要从左向左、从左向右、从右向左、从右向右的数据,因此以4比特×16×4计成为256条位线。因此,在构成存储器中有2的9次方×256个存储元。此外,对A0附加正型的地址转换检测(ATD)电路,设为时钟输入(以下在图6中进行叙述)。
[3.1]构成存储器
构成存储器40是按照时钟A0,利用未图示的传感放大器从利用地址所特定出的存储元读出数据,并将数据输出到具有与目的地比特对应数量的寄存器(在图2的例中为256比特)的寄存器单元60。寄存器单元60包含在从构成存储器40输出新的数据之前持续保持数据的多个寄存器。
图5是构成存储器的详细情况。图5所示的构成存储器40具有:存储元阵列110,包含分别存储数据的存储元;地址解码器120;下述图6A所示的时钟转换检测部200;以及数据输入输出部140,向存储元阵列110进行数据读出或数据写入。此外,在本实施例中,构成存储器40是与时钟同步地读出或进行写入动作的同步SRAM。因此,地址解码器120及数据输入输出部140是与时钟同步地动作。
存储元阵列110具有m×2n个存储元(伴随其的存储元件),m×2n个存储元是配置在2的m次方条字线与n条位线(也称为“数据线”,以下相同)的连接部分。
地址解码器120是当与由A0的时钟转换检测部所产生的时钟同步地接收从m条地址信号线接收的地址信号时,对所述地址信号进行解码,向2的m次方条字线WL输出作为解码信号的字线选择信号及由数据输入输出部140选择的数据线选择信号,从而对于对应的存储元进行数据的读出或写入处理。
数据输入输出部140具有写入放大器及传感放大器。写入放大器是例如当从外部接收写入使能(WE)的上升边缘时序及写入数据时,向m条数据线b、/b传输该写入数据的信号电平,并将数据写入存储元。而且,传感放大器是当数据输入输出部140从外部接收读取使能(RE)的上升边缘时序时,通过将m条数据线b、/b的信号电平输出到外部,而输出读出数据。
此外,图5所示的构成存储器也可以设置在配线的每一方向。例如,在图2所示的2方向配置中,为两个构成存储器,在图3所示的4方向配置中,为4个构成存储器。如此,通过在每一方向设置构成存储器,与包含单一的存储器的情况相比,地址的数量减少(2的9次方×4少于2的36次方),因此可降低存储器的容量。
图6A是本实施方式的时钟转换检测部的电路图。图6A所示的时钟转换检测部200具有否定逻辑和(NOR)电路210A、210B、逻辑积(AND)电路230、延迟电路240A~240C、触发器(FF)250、反相器260A、260B及D锁存器270。
图6B是图6A所示的时钟转换检测部的信号的时序图。信号S1为向构成存储器的地址输入信号。本实施例中,为地址A0。信号S2为D锁存器的输出。D锁存器270是在信号S1有变化的情况下,以在一定期间内不发生变化的方式进行锁存。其原因在于:因噪声等而忽视后续的地址转换。信号S3为从D锁存器270输出的延迟信号。如图6B所示,延迟信号是利用上升及下降而制作时钟,为了产生信号S4的时钟宽度,利用延迟电路240B使其延迟。
作为时钟信号而产生的信号S4是从AND电路230输出。AND电路230中,因为被输入延迟电路240B的输入及输出,所以当两者的信号电平不同时,输出信号电平“High”。由此,可检测地址转换。
信号S5是从延迟电路240C输出的延迟信号,等待LAT270的使能信号而进行时钟输入。
信号S6为信号S5的信号延长,且为使能信号的脉冲产生。NOR电路210A输出作为信号S5与S6的NOR运算值的信号S7。而且,信号S7成为D锁存器270的使能信号。信号S8是利用反相器260A使信号S5反转所得的信号,利用FF250而用作地址信号的锁存器的时钟。信号S9被用作构成存储器的使能,信号S10被用作构成存储器的时钟(atd_clk),信号S11被用作构成存储器的地址。如此,根据作为地址A0的信号S1而产生时钟信号S10,所以可使用同步SRAM作为构成存储器。
图6C是表示地址A0与所产生的时钟信号的关系的时序图。图6C中,仅表示信号S1与S10。使用地址A0从“Low”向“Hi”的上升时序,产生时钟,如果也利用地址A0从“Hi”向“Low”的下降时序产生时钟,那么在写入数据时,即使利用上升写入数据,下降时也会返回到最初的存储器数据,而无法保持数据。作为该对策,MLUT20具有正型的地址转换检测(ATD)部200。如此,正型的ATD电路是仅利用A0的上升而产生CLK,因此以Hi保持存储器内部的地址。输出以Hi保持的构成数据,A0成为Low,不产生CLK而将构成数据保持在寄存器单元60的寄存器。由此,MLUT30无需准备触发器电路等实际的电路,便可构成顺序电路。
[3.2]可重构逻辑多路复用器
可重构逻辑多路复用器50仅有数据的配线路径的数量。例如,有可重构逻辑多路复用器52A、52B、52C及52D。
所述可重构逻辑多路复用器为按照保持在寄存器单元60的构成数据而使数据输入与数据输出结合的多路复用器,其连接路径可根据构成数据而重构。作为动作,将保持在寄存器单元60的数据设为“输入信号”,将数据输入用作“选择控制信号”,选择并输出“输入信号”。
A.逻辑功能的实现
图4B所示的例中,在寄存器中保持有表示从构成数据读出的逻辑运算的结果的4对4比特。也就是说,构成数据中,4比特数据是准备与逻辑积、逻辑和、否定、否定逻辑和、排他性逻辑和等真值表对应的值。可重构逻辑多路复用器52A等是利用16对1个多路复用器,将16对“2方向×2×16”的4比特对应于数据输入而选择为1对4比特。也就是说,在构成存储器40中,存储有构成数据输入数量(图4B中为4个)及其配线方向(图4B中为4个)的数量的构成数据(图4B的例中为4方向×4对4比特数据)。
B.配线功能的实现
各可重构逻辑多路复用器是将数据输入用作选择信号,根据数据输入,选择多个真值表数据中的任一个。各可重构逻辑多路复用器是以实现将从数据输入线的数据输入与向数据输出线的数据输出结合的所期望的配线路径的方式构成。可重构逻辑多路复用器有多个,针对数据输入线的方向与数据输出线的方向的每一种组合而设置。例如可重构逻辑多路复用器52A、52B、52C及52D是分别因从左侧输入向左侧输出的配线路径、从左侧输入向右侧输出的配线路径、从右侧输入向右侧输出的配线路径、及从右侧输入向左侧输出的配线路径而存在。例如在通过数据输入选择可重构逻辑多路复用器52A,而非选择可重构逻辑多路复用器52B的情况下,根据数据输入,可重构逻辑多路复用器52B所选择的输入信号(构成数据)为“0”且使52A的信号与52C的信号进行逻辑和,因此从左向左的信号优先,构成从左向左的信号路径。根据数据输入,可重构逻辑多路复用器52A所选择的输入信号(构成数据)是设定特定的逻辑值,且将所述逻辑值向左输出。
构成数据的详细情况是用图12在下文中进行叙述。可重构逻辑多路复用器52A与52C是进行逻辑和,可通过将可重构逻辑多路复用器52C的构成数据设为“0”而使从左的InA0~InA3的信号向左以特定的逻辑值输出。而且,可重构逻辑多路复用器52B与52D是进行逻辑和,可通过将可重构逻辑多路复用器52D设为“0”,而将InA0~InA3的信号向右侧输出。利用与此相同的方法,将InB0~InB3的信号向左右输出。
如上所述,可重构逻辑多路复用器50是根据配线路径而设置,而且,通过将构成数据构成为逻辑运算值及将构成数据以进行配线选择的方式构成,而像逻辑运算电路及/或开关那样动作。
图7A是表示4方向配置的MLUT的信号线的配置例的图。如图7A所示,从左右的数据输入输出是与2方向配置相同,但除此以外,有从上的数据输入InC0~C3、向上的数据输出OutC0~OutC3、及从下的数据输入InD0~InD3、向下的数据输出OutD0~OutD3。
图7B是表示4方向配置的MLUT的一个示例的图。此外,本例也可以适当进行改良。图7B所示的MLUT的信号线与图7A所示的MLUT的信号线相同。虽未表示构成存储器,但各构成要素的动作与2方向配置的MLUT相同。因为是4方向,所以可重构逻辑多路复用器的数量与2方向配置的MLUT相比,增加了4个(可重构逻辑多路复用器52E~H),寄存器单元62也随之增加。
2方向配置的多路复用器的输出是与其他向相同方向的输出进行逻辑和,但即使为4方向配置,原理也相同。但是,由于方向成为4个,所以成为4个逻辑和。例如,如果以数据输出OutC0~OutC3为例,那么成为可重构逻辑多路复用器52C、52E、52G的输出的逻辑和。通过将可重构逻辑多路复用器52E、52G的数据设为“0”,可将52E的输出向上输出。
[4]页面控制
图8是表示进行页面控制的MLUT的一个示例的图。进行页面控制的MLUT是:MLUT的一部分作为产生另一构成存储器的页面控制信号的电路而动作,其数据输出控制另一构成存储器的页面。
图8所示的MLUT30具有大容量的存储元单元40A、40B,各存储元单元由9条地址线、及64条数据线构成,所以成为2的9次方(512)字符×64比特的大容量。本例中,A2~A8可利用页面地址进行逻辑的多路复用。此时为128页面的例。而且,本例中,为2方向配置的MLUT阵列。而且,构成存储器是以存储各页面的构成数据的方式构成,所以存储容量变大。因此,由两个存储器构成。由此,可进行从左右的时钟控制。
此外,图8是概略图,未表示作为存储元单元的周边电路的解码器等,关于解码器,针对各存储元单元的每一个,准备图5中所说明的解码器120及数据输入输出部140。
图9是表示在MLUT外部设置状态机械的示例的图。如图9所示,也可以通过从外部系统的控制而对某一MLUT30利用地址切换页面(真值表数据)。
以往的MPLD中,MPLD的状态机械必须由真值表数据定义。因此,必须按照已决定的条件来设置由真值表数据定义预先所决定的多个状态的真值表数据。包含MLUT的状态机(state machine)成为控制电路,甚至必须产生与数据路径不同的逻辑电路而进行配置配线。
图10是表示在MLUT内部设置状态机械的示例的图。该示例为使用构成数据的一部分,MRLD独自设置状态机械的示例。利用包含MLUT30B的电路等进行递减运算而进行C语言的for控制。使0数据(MLUT30B的0地址)存储下一页面的地址且在另一地址中存储当前地址。由此,可控制for字符。
图10所示的MLUT30具有切换控制页面的功能,所以无需利用真值表定义状态机。例如,for字符是在特定值达到某一条件之前,不将本页面的地址输出为数据并进行页面切换,而以相同的页面处理动作。如果满足某一条件(例如i=0),那么此时将页面切换的地址输出到数据线。数据线是作为地址线输入到另一存储元单元,所以可进行该另一存储元单元的页面切换。而且,在case字符的情况下,可根据特定值的值,将跳跃地址(jumpaddress)输出为数据并进行页面切换,而动作变更。根据以上,以往的MPLD仅可构成逻辑电路,相对于此,还可以进行C语言的动作合成,可根据C语言而产生MPLD的MLUT的真值数据,从而可具有超过FPGA的功能。
MRLD即使不经过与专用的小型SRAM相关的半导体设计试制、制造,也可以利用以往的大容量的存储器器件。在利用芯片构成MRLD时,使用存储器IP(IntellectualProperty,知识产权),但在以往的MLUT所追求的微小存储器容量中,地址解码器或传感放大器的面积大,存储器自身的构成比率变为50%以下。这种情况也成为负担,而导致效率差。如果成为大容量存储器,那么在地址解码器或传感放大器中比率下降,存储器使用效率提高。因此,为大容量存储器的本申请在MRLD芯片的情况下变得有效。
[5]构成数据
将图8的示例中的构成数据示于图12A~图12J中。图11是表示包含图2中所说明的交替配置的MLUT的逻辑电路与配线的图。图11包含图2中所说明的交替配置的MLUT,且包含两个构成存储器(左侧、右侧)。如图11所例示,逻辑电路与配线包含MLUT30A~30D。而且,下述所示的图12A~图12J还包含通过页面控制而选择的真值表数据。
图12A是表示存储在MLUT30A左侧的构成存储器的构成数据的一个示例的图。图12B是表示存储在MLUT30A右侧的构成存储器的构成数据的一个示例的图。图12C是表示存储在MLUT30B左侧的构成存储器的构成数据的一个示例的图。图12D是表示存储在MLUT30B右侧的构成存储器的构成数据的一个示例的图。图12E是表示存储在MLUT30C左侧的构成存储器的构成数据的一个示例的图。图12F是表示存储在MLUT30C右侧的构成存储器的构成数据的一个示例的图。
图12G是表示存储在MLUT30D左侧的构成存储器的构成数据的一个示例的图。图12H是表示存储在MLUT30D右侧的构成存储器的构成数据的一个示例的图。图12I是表示存储在MLUT30E左侧的构成存储器的构成数据的一个示例的图。图12J是表示存储在MLUT30E右侧的构成存储器的构成数据的一个示例的图。
如上所述,可重构逻辑多路复用器的输出是进行逻辑和,所以通过将无信号输出的路径的构成数据设为“0”,而使构成数据以输出所期望的逻辑运算的结果的方式构成。
[6]真值表数据的产生方法
可重构半导体装置的真值表数据是通过执行逻辑构成用的软件程序的信息处理装置来产生。
图13表示信息处理装置的硬件构成的一个示例。信息处理装置210具有处理器211、输入部212、输出部213、存储部214及驱动装置215。处理器211将输入到输入部212的配置及配线用的软件、用来设计集成电路的C语言描述或硬件描述语言(HDL)等电路描述语言、及通过执行所述软件而产生的真值表数据存储在存储部214。而且,处理器211执行配置及配线用的软件,对存储在存储部214的电路描述进行以下所示的配置及配线的处理,且对输出部213输出真值表数据。对于输出部213,可连接可重构半导体装置20(图13中未表示),处理器211执行逻辑构成处理,将所产生的真值表数据经由输出部213写入到可重构半导体装置20。输出部213也可以与外部网络连接。此时,逻辑构成用的软件程序是经由网络而收发。驱动装置215例如为读写DVD(Digital Versatile Disc,数字多功能光盘)、闪存等存储媒体217的装置。驱动装置215包含使存储媒体217旋转的电动机或在存储媒体217上读写数据的头等。此外,存储媒体217可存储逻辑构成用的程序、或真值表数据。驱动装置215是从所设置的存储媒体217读出程序。处理器211是将由驱动装置215读出的程序或真值表数据存储在存储部214。
利用通过真值表数据被半导体装置20读入而使真值表数据与硬件资源协同作用的具体方法,而构筑作为逻辑要素及/或连接要素的功能。而且,真值表数据也可谓具有表示真值表的逻辑构造的构造的数据。
以上所说明的实施方式仅作为典型例而举出,对业者来说明确该各实施方式的构成要素的组合、变化及变动,只要是业者便可明确:可不脱离本发明的原理及权利要求书所记载的发明的范围而进行所述实施方式的各种变化。
[符号说明]
20 MRLD
30 MLUT
40 构成存储器
50 可重构逻辑多路复用器
60 寄存器单元
200 时钟转换检测部
300 MLUT阵列

Claims (14)

1.一种可重构逻辑器件,具有多个多查找表单元,且根据构成数据信息而构成多个逻辑电路;且
各个多查找表单元具备:
构成存储器,存储构成数据;
数据输入线;
数据输出线;以及
可重构逻辑多路复用器,响应所述构成数据而选择性地使从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合,及/或,响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出;且
利用所述数据输入线及所述数据输出线将邻近的所述多查找表连接。
2.根据权利要求1所述的可重构逻辑器件,其构成为,所述构成数据包含规定逻辑运算值及/或接线路径的多个真值表数据,且根据所述数据输入而选择所述多个真值表数据中的任一个。
3.根据权利要求1所述的可重构逻辑器件,其中所述可重构逻辑多路复用器存在多个,且针对所述数据输入线的方向与所述数据输出线的方向的每一种组合而设置。
4.根据权利要求1所述的可重构逻辑器件,其还具备保持部,所述保持部是保持从所述构成存储器读出的构成数据,并且将所述保持的构成数据输出到所述可重构逻辑多路复用器。
5.根据权利要求4所述的可重构逻辑器件,其中所述可重构逻辑多路复用器是根据从所述数据输入线的数据输入,而选择并输出保持在所述保持部的构成数据中的任一个。
6.根据权利要求1所述的可重构逻辑器件,其中所述多查找表的数据输入线是连接于邻接的另一所述多查找表的数据输出线。
7.根据权利要求1所述的可重构逻辑器件,其中所述构成存储器包含针对每一数据输出方向所准备的多个构成存储器。
8.根据权利要求1所述的可重构逻辑器件,其具备在输出到所述构成存储器的地址的输入时序产生时钟的时钟转换检测部,且所述构成存储器是与所述时钟同步地动作。
9.根据权利要求2所述的可重构逻辑器件,其构成为,所述构成存储器存储多个构成数据,所述多个构成数据中的任一个被输出到连接于所述构成存储器的第二地址线的第二数据输出线,根据所述第二地址线的输入而特定出所述多个真值表数据。
10.根据权利要求2所述的可重构逻辑器件,其构成为,所述构成存储器存储多个构成数据,且根据与外部连接的第二地址线的输入而特定出所述多个真值表数据。
11.一种控制方法,是具有多个多查找表单元且根据构成数据信息而构成多个逻辑电路的可重构逻辑器件的控制方法;且
各个多查找表单元具备:
构成存储器,存储构成数据;
数据输入线;
数据输出线;以及
可重构逻辑多路复用器;且
通过所述数据输入线及所述数据输出线而连接于邻近的所述逻辑电路;
所述可重构逻辑多路复用器是响应所述构成数据而选择性地将从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合;且
响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出。
12.根据权利要求11所述的控制方法,其中所述可重构逻辑器件还具备保持部,所述保持部是保持从所述构成存储器读出的构成数据,并且将所述保持的构成数据输出到所述可重构逻辑多路复用器;且
所述可重构逻辑多路复用器是根据从所述数据输入线的数据输入,而选择并输出保持在所述保持部的构成数据中的任一个。
13.根据权利要求11所述的控制方法,其中可重构逻辑器件具备在输出到所述构成存储器的地址的输入时序产生时钟的时钟转换检测部,且所述构成存储器是与所述时钟同步地动作。
14.一种存储媒体,存储程序,
所述程序,用来控制可重构逻辑器件,且
所述可重构逻辑器件是:
具有多个多查找表单元,且根据构成数据信息而构成多个逻辑电路;
各个多查找表单元具有:
构成存储器,存储构成数据;
数据输入线;以及
数据输出线;且
使所述多查找表单元执行如下处理:
选择性地将从所述数据输入线的数据输入与向所述数据输出线的所述数据输出结合;
响应所述构成数据而将对于所述数据输入进行逻辑运算所得的数据向所述数据输出线进行数据输出。
CN201480018307.2A 2013-04-02 2014-04-02 可重构逻辑器件 Expired - Fee Related CN105191139B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013076506 2013-04-02
JP2013-076506 2013-04-02
PCT/JP2014/059703 WO2014163099A2 (ja) 2013-04-02 2014-04-02 再構成可能な論理デバイス

Publications (2)

Publication Number Publication Date
CN105191139A CN105191139A (zh) 2015-12-23
CN105191139B true CN105191139B (zh) 2018-12-07

Family

ID=51659278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480018307.2A Expired - Fee Related CN105191139B (zh) 2013-04-02 2014-04-02 可重构逻辑器件

Country Status (5)

Country Link
US (1) US9425800B2 (zh)
JP (1) JPWO2014163099A1 (zh)
CN (1) CN105191139B (zh)
TW (1) TWI636667B (zh)
WO (1) WO2014163099A2 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107078740A (zh) * 2014-10-22 2017-08-18 太阳诱电株式会社 可重构设备
US9954533B2 (en) * 2014-12-16 2018-04-24 Samsung Electronics Co., Ltd. DRAM-based reconfigurable logic
JP6405262B2 (ja) * 2015-02-18 2018-10-17 太陽誘電株式会社 再構成可能な論理デバイス
US10963001B1 (en) * 2017-04-18 2021-03-30 Amazon Technologies, Inc. Client configurable hardware logic and corresponding hardware clock metadata
JP6895061B2 (ja) * 2017-04-28 2021-06-30 オムロン株式会社 処理装置及び生成装置
CN108170203B (zh) * 2018-02-02 2020-06-16 清华大学 用于可重构处理系统的查表算子及其配置方法
US10541010B2 (en) * 2018-03-19 2020-01-21 Micron Technology, Inc. Memory device with configurable input/output interface
WO2021060059A1 (ja) * 2019-09-27 2021-04-01 太陽誘電株式会社 生成装置、生成方法およびプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102369668A (zh) * 2009-03-30 2012-03-07 太阳诱电株式会社 半导体装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5894565A (en) * 1996-05-20 1999-04-13 Atmel Corporation Field programmable gate array with distributed RAM and increased cell utilization
US6023742A (en) * 1996-07-18 2000-02-08 University Of Washington Reconfigurable computing architecture for providing pipelined data paths
US6389579B1 (en) * 1998-01-26 2002-05-14 Chameleon Systems Reconfigurable logic for table lookup
US6150838A (en) 1999-02-25 2000-11-21 Xilinx, Inc. FPGA configurable logic block with multi-purpose logic/memory circuit
ATE403974T1 (de) * 2001-05-16 2008-08-15 Nxp Bv Rekonfigurierbare logik-vorrichtung
US6924663B2 (en) 2001-12-28 2005-08-02 Fujitsu Limited Programmable logic device with ferroelectric configuration memories
JP3938308B2 (ja) 2001-12-28 2007-06-27 富士通株式会社 プログラマブル論理デバイス
US8082284B2 (en) * 2002-03-18 2011-12-20 St-Ericsson Sa Implementation of wide multiplexers in reconfigurable logic
US7183796B2 (en) * 2002-03-18 2007-02-27 Nxp Bv. Configuration memory implementation for LUT-based reconfigurable logic architectures
CA2521167A1 (en) * 2003-03-31 2004-10-14 Kitakyushu Foundation For The Advancement Of Industry Science And Technology Programmable logic device
JP2006313999A (ja) * 2005-05-09 2006-11-16 Renesas Technology Corp 半導体装置
US8138788B2 (en) * 2005-05-31 2012-03-20 Fuji Xerox Co., Ltd. Reconfigurable device
CN101310442A (zh) 2005-11-28 2008-11-19 太阳诱电株式会社 半导体器件
US7397276B1 (en) * 2006-06-02 2008-07-08 Lattice Semiconductor Corporation Logic block control architectures for programmable logic devices
KR101058468B1 (ko) * 2006-06-28 2011-08-24 아크로닉스 세미컨덕터 코포레이션 집적 회로용의 재구성 가능한 로직 패브릭과, 재구성 가능한 로직 패브릭을 구성하기 위한 시스템 및 방법
US8117247B1 (en) * 2007-07-19 2012-02-14 Xilinx, Inc. Configurable arithmetic block and method of implementing arithmetic functions in a device having programmable logic
JP5260077B2 (ja) * 2008-02-15 2013-08-14 太陽誘電株式会社 プログラマブル論理デバイスおよびその構築方法およびその使用方法
CN104617944B (zh) * 2010-06-24 2018-03-16 太阳诱电株式会社 半导体装置
CN104737450B (zh) * 2012-10-28 2018-01-19 太阳诱电株式会社 可再构成的半导体装置
US9514259B2 (en) * 2012-11-20 2016-12-06 Taiyo Yuden Co., Ltd. Logic configuration method for reconfigurable semiconductor device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102369668A (zh) * 2009-03-30 2012-03-07 太阳诱电株式会社 半导体装置

Also Published As

Publication number Publication date
TWI636667B (zh) 2018-09-21
WO2014163099A2 (ja) 2014-10-09
WO2014163099A3 (ja) 2014-11-27
US9425800B2 (en) 2016-08-23
US20160036447A1 (en) 2016-02-04
TW201503590A (zh) 2015-01-16
JPWO2014163099A1 (ja) 2017-02-16
CN105191139A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
CN105191139B (zh) 可重构逻辑器件
JP6564186B2 (ja) 再構成可能な半導体装置
EP2965429B1 (en) Integrated circuit devices having memory and methods of implementing memory in an integrated circuit device
JP6517626B2 (ja) 再構成可能な半導体装置
KR20150084001A (ko) 구성 가능한 매립식 메모리 시스템
CN104205104B (zh) 可再构成的半导体装置的配置配线方法及配置配线装置
CN100541644C (zh) 集成电路
US20110107290A1 (en) Variable sized soft memory macros in structured cell arrays, and related methods
TW201320074A (zh) 半導體記憶體裝置
US9621159B2 (en) Reconfigurable semiconductor integrated circuit and electronic device
JP6405262B2 (ja) 再構成可能な論理デバイス
CN103853694A (zh) 一种可重构状态机的实现方法
US9729154B2 (en) Reconfigurable logic device configured as a logic element or a connection element
KR20220008901A (ko) 시프터블 메모리 및 시프터블 메모리를 동작시키는 방법
US7586327B1 (en) Distributed memory circuitry on structured application-specific integrated circuit devices
WO2018207801A1 (ja) プログラム可能なデバイス、その論理構成方法、及びそのプログラム
JPS62142347A (ja) 半導体メモリ装置
JP2019057336A (ja) 半導体集積回路
JPH02263390A (ja) 半導体メモリ装置

Legal Events

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

Granted publication date: 20181207