CN113746474B - Multi-granularity lookup table structure - Google Patents
Multi-granularity lookup table structure Download PDFInfo
- Publication number
- CN113746474B CN113746474B CN202110956914.5A CN202110956914A CN113746474B CN 113746474 B CN113746474 B CN 113746474B CN 202110956914 A CN202110956914 A CN 202110956914A CN 113746474 B CN113746474 B CN 113746474B
- Authority
- CN
- China
- Prior art keywords
- input
- lookup table
- selector
- inputs
- 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.)
- Active
Links
Images
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
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
The invention relates to a multi-granularity lookup table structure, which comprises: the input end comprises a six-input lookup table, a five-input lookup table, a first four-input lookup table, a second four-input lookup table and an independent input end; the multi-granularity lookup table structure provided by the invention is beneficial to balancing between the performance and the area (cost) and taking the performance and the area (cost) into consideration. More mutually independent logic functions can be implemented than 2 complete 6 LUTs.
Description
Technical Field
The invention relates to a multi-granularity lookup table structure, and belongs to the technical field of integrated circuit design.
Background
The Field Programmable Gate Array (FPGA) is a programmable logic device, and mainly comprises a programmable logic block, programmable interconnection resources, a programmable input/output module and an embedded programmable IP module. Where the programmable logic blocks (CLBs) are the bases and cores of the FPGA. Historically, CLB architecture construction has emerged in a variety of forms based on nand gates, multiplexers, look-up tables, and the like. The basic structure of the most popular CLBs at present consists of a plurality of basic logic units (BLE). BLE is composed of lookup tables (LUTs), registers, and some multiplexers. The lookup table is responsible for realizing a multi-input Boolean function, and the realization is combinational logic; the register is responsible for carrying out register on the output of the combinational logic, so that sequential logic is realized; the multiplexer is responsible for selecting the signal to decide the current output as a combined output or a time sequence output.
In the prior art, a lookup table with fixed input number is used; thus, although the performance is better with a certain number of inputs, there is also a waste of resources as a function of fewer inputs.
The prior art also has a self-adaptive lookup table, and the self-adaptive lookup table has the defects of less input number and more constraint conditions. More common inputs are required to implement different functions. The adaptive look-up table preferably avoids wasting resources when implementing fewer input functions, but there are more constraints when implementing multiple functions, for example, there is a need for a common input between different functions. The requirements on the binning algorithm are high.
Disclosure of Invention
The invention aims to solve the technical problems that: the defects of the technology are overcome, and a multi-granularity lookup table structure with multiple inputs is provided, so that more independent function functions can be realized.
In order to solve the technical problems, the technical scheme provided by the invention is as follows: a multi-granularity lookup table structure comprising: the input end comprises a six-input lookup table, a five-input lookup table, a first four-input lookup table, a second four-input lookup table and an independent input end; the independent input end is connected with the first input end of the first selector, the first input end of the second selector and the first input end of the third selector; one input of the input ends of the six-input lookup table is connected with the second input end of the first selector and the second input end of the second selector; one input of the input ends of the five-input lookup table is connected with the second input end of the third selector; the output end of the first four-input lookup table and the output end of the second four-input lookup table are respectively connected with the first input end and the second input end of the fifth selector; the output end of the third selector is connected with the selection end of the fifth selector; the output end of the fifth selector and the output end of the five-input lookup table are respectively connected with the first input end and the second input end of the sixth selector; the output end of the first selector is connected with the selection end of the sixth selector; the output end of the sixth selector and the output end of the six-input lookup table are respectively connected with the first input end and the second input end of the seventh selector; and the output end of the second selector is connected with the selection end of the seventh selector.
The scheme is further improved in that: when the multi-granularity lookup table structure operates in the dual LUT6 mode, the six input lookup table has inputs as inputs to the first LUT6 and outputs as outputs of the first LUT 6; all inputs of the input terminals of the first four-input lookup table correspond one-to-one to all inputs of the input terminals of the second four-input lookup table, and correspond one-to-one to four inputs of the input terminals of the five-input lookup table excluding the input connected to the third selector, as four inputs of the second LUT6, the input connected to the third selector and the independent input terminals of the five-input lookup table are used as the other two inputs of the second LUT6, and the output of the sixth selector is used as the output of the second LUT 6.
The scheme is further improved in that: when the multi-granularity lookup table structure operates in a dual LUT6 mode that includes one common input, the inputs of the six-input lookup table are inputs to the first LUT6 and the outputs are outputs of the first LUT 6; all inputs of the input terminals of the first four-input lookup table correspond one-to-one to all inputs of the input terminals of the second four-input lookup table, and correspond one-to-one to four inputs of the input terminals of the five-input lookup table excluding the input connected to the third selector, as four inputs of the second LUT6, the input connected to the third selector of the input terminals of the five-input lookup table and the input connected to the first selector of the input terminals of the six-input lookup table are as the other two inputs of the second LUT6, and the output of the sixth selector is as the output of the second LUT 6.
The scheme is further improved in that: when the multi-granularity lookup table structure works in the LUT6 and the dual LU5 mode, the input of the six-input lookup table is used as the input of the LUT6, and the output is used as the output of the LUT 6; the five input lookup table has inputs as inputs to first LUT5 and outputs as outputs of first LUT 5; all inputs of the first four-input lookup table correspond one-to-one with all inputs of the second four-input lookup table as four inputs of the second LUT5, the independent input serving as another input of the second LUT 5; the output of the fifth selector is provided as the output of the second LUT 5.
The scheme is further improved in that: when the multi-granularity lookup table structure operates in the LUT6 and the dual LU5 mode including one common input, the input of the six-input lookup table is used as the input of the LUT6, and the output is used as the output of the LUT 6; the five input lookup table has inputs as inputs to first LUT5 and outputs as outputs of first LUT 5; all inputs of the input terminals of the first four-input lookup table correspond one-to-one with all inputs of the input terminals of the second four-input lookup table as four inputs of the second LUT5, and an input connected to the third selector among the input terminals of the five-input lookup table is used as the other input of the second LUT 5; the output of the fifth selector is provided as the output of the second LUT 5.
The multi-granularity lookup table structure provided by the invention is beneficial to balancing between the performance and the area (cost) and taking the performance and the area (cost) into consideration. More mutually independent logic functions can be implemented than 2 complete 6 LUTs. Compared with 8 LUTs with equivalent areas, the input number is less, which is beneficial to realizing smaller area. And the performance of the 6-input function is better. (area comparison: 2 x 63 for 6 input LUTs, 2 x 63 for 1-out-of-2 multiplexers, and 2 x 64bit memory cells; 8 for 4 LUTs, 8 x 15 for 1-out-of-2 multiplexers, and 8 x 16bit memory cells).
Drawings
The invention will be further explained with reference to the drawings.
Fig. 1 is a schematic circuit diagram of a preferred embodiment of the present invention.
Fig. 2 is a schematic diagram of an equivalent circuit structure of the embodiment of fig. 1 operating in the dual LUT6 mode.
Fig. 3 is a schematic diagram of the circuit structure of the second LUT6 in fig. 2.
Fig. 4 is a schematic diagram of an equivalent circuit configuration of the embodiment of fig. 1 operating in a dual LUT6 mode including a common input.
Fig. 5 is a schematic diagram of the circuit structure of the second LUT6 in fig. 4.
FIG. 6 is a schematic diagram of an equivalent circuit structure of the embodiment of FIG. 1 operating in the LUT6 and the dual LU5 mode.
Fig. 7 is a schematic diagram of the circuit structure of the second LUT5 in fig. 6.
Fig. 8 is a schematic diagram of an equivalent circuit structure of the embodiment of fig. 1 operating in the LUT6 and the dual LU5 mode including a common input.
Fig. 9 is a schematic diagram of the circuit structure of the second LUT5 in fig. 8.
Detailed Description
Examples
The multi-granularity lookup table structure of this embodiment, as shown in fig. 1, includes: a six-input lookup table (with inputs a1, a2, a3, a4, a5, a 6), a five-input lookup table (with inputs b1, b2, b3, b4, b 5), a first four-input lookup table (with inputs c1, c2, c3, c4), a second four-input lookup table (with inputs d1, d2, d3, d4) and an independent input f7 in; the independent input terminal f7in is connected to the first input terminal of the first selector mux1, the first input terminal of the second selector mux2, and the first input terminal of the third selector mux 3; a6 of the six-input lookup table is connected to both the second input terminal of the first selector mux1 and the second input terminal of the second selector mux 2; b5 of the five-input lookup table is connected to the second input terminal of the third selector mux 3; the output end of the first four-input lookup table and the output end of the second four-input lookup table are respectively connected with the first input end and the second input end of the fifth selector f5 mux; the output terminal of the third selector mux3 is connected to the selection terminal of the fifth selector f5 mux; the output end of the fifth selector f5mux and the output end of the five-input lookup table are respectively connected with the first input end and the second input end of the sixth selector f6 mux; the output terminal of the first selector mux1 is connected to the selection terminal of the sixth selector f6 mux; the output end of the sixth selector f6mux and the output end of the six-input lookup table are respectively connected with the first input end and the second input end of the seventh selector f7 mux; the output terminal of the second selector mux2 is connected to the selection terminal of the seventh selector f7 mux.
As shown in fig. 2 and 3, when the multi-granularity lookup table structure operates in the dual LUT6 mode, the inputs of the six-input lookup table are inputs to the first LUT6 and the outputs are outputs of the first LUT 6. All inputs of the first four-input look-up table correspond one-to-one to all inputs of the second four-input look-up table and to four inputs of the five-input look-up table except b5 as four inputs of the second LUT6, the line of b5 of the five-input look-up table is switched on by the third selector mux3 and the line of the independent input f7in is switched on by the first selector mux1 as the other two inputs of the second LUT6, and the output of the sixth selector f6mux is taken as the output of the second LUT 6.
As shown in fig. 4 and 5, when the multi-granularity lookup table structure operates in a dual LUT6 mode containing one common input, the input of the six-input lookup table is used as the input of the first LUT6 and the output is used as the output of the first LUT 6. All inputs of the first four-input look-up table correspond one-to-one to all inputs of the second four-input look-up table and to four inputs of the five-input look-up table except b5 as four inputs of the second LUT6, the line of b5 of the five-input look-up table is switched on by the third selector mux3 and the line of a6 of the six-input look-up table is switched on by the first selector mux1 as the other two inputs of the second LUT6, and the output of the sixth selector f6mux is as the output of the second LUT 6.
As shown in fig. 6 and 7, when the multi-granularity lookup table structure operates in LUT6 and dual LU5 mode, the input of the six-input lookup table is the input of LUT6, and the output is the output of LUT 6. The five input lookup table has inputs as inputs to the first LUT5 and outputs as outputs of the first LUT 5. All inputs of the input terminals of the first four-input lookup table correspond to all inputs of the input terminals of the second four-input lookup table one by one as four inputs of the second LUT5, and the line of the independent input terminal f7in is switched on by the third selector mux3 as the other input of the second LUT 5; the output of the fifth selector f5mux is taken as the output of the second LUT 5.
As shown in fig. 8 and 9, when the multi-granularity lookup table structure operates in LUT6 and dual LU5 mode that includes one common input, the input of the six-input lookup table is the input of LUT6, and the output is the output of LUT 6; the input of the five input lookup table is as an input to the first LUT5 and the output is as an output of the first LUT 5; all inputs of the input terminals of the first four-input lookup table correspond one-to-one with all inputs of the input terminals of the second four-input lookup table as four inputs of the second LUT5, and the line of b5 of the five-input lookup table is switched on by the third selector mux3 as the other input of the second LUT 5; the output of the fifth selector f5mux is taken as the output of the second LUT 5.
Apart from the above modes, it is also possible to work as 1 independent 6LUT or 1 independent 5LUT or 2 independent 4 LUTs; it is also possible to combine two 5 LUTs with 1 common input, 1 independent 6LUT, an incomplete 7LUT or two 6 LUTs with common inputs +1 2-to-1 multiplexer etc.
The present invention is not limited to the above-described embodiments. All technical solutions formed by equivalent substitutions fall within the protection scope of the claims of the present invention.
Claims (5)
1. A multi-granularity lookup table, comprising: the input end comprises a six-input lookup table, a five-input lookup table, a first four-input lookup table, a second four-input lookup table and an independent input end; the independent input end is connected with the first input end of the first selector, the first input end of the second selector and the first input end of the third selector; one input of the input ends of the six-input lookup table is connected with the second input end of the first selector and the second input end of the second selector; one input of the input ends of the five-input lookup table is connected with the second input end of the third selector; the output end of the first four-input lookup table and the output end of the second four-input lookup table are respectively connected with the first input end and the second input end of the fifth selector; the output end of the third selector is connected with the selection end of the fifth selector; the output end of the fifth selector and the output end of the five-input lookup table are respectively connected with the first input end and the second input end of the sixth selector; the output end of the first selector is connected with the selection end of the sixth selector; the output end of the sixth selector and the output end of the six-input lookup table are respectively connected with the first input end and the second input end of the seventh selector; and the output end of the second selector is connected with the selection end of the seventh selector.
2. The multi-granularity lookup table of claim 1, wherein: when the multi-granularity lookup table structure operates in the dual LUT6 mode, the six input lookup table has inputs as inputs to the first LUT6 and outputs as outputs of the first LUT 6; all inputs of the first four-input lookup table correspond one-to-one to all inputs of the second four-input lookup table and to four inputs of the five-input lookup table excluding the input connected to the third selector as four inputs of the second LUT6, and an independent input as the other two inputs of the second LUT6, and the output of the sixth selector as the output of the second LUT 6.
3. The multi-granularity lookup table of claim 1, wherein: when the multi-granularity lookup table structure operates in a dual LUT6 mode that includes one common input, the inputs of the six-input lookup table are inputs to the first LUT6 and the outputs are outputs of the first LUT 6; all inputs of the first four-input lookup table correspond one-to-one to all inputs of the second four-input lookup table and correspond one-to-one to four inputs of the five-input lookup table excluding the input connected to the third selector as four inputs of the second LUT6, the input connected to the third selector in the inputs of the five-input lookup table and the input connected to the first selector in the inputs of the six-input lookup table as the other two inputs of the second LUT6, and the output of the sixth selector as the output of the second LUT 6.
4. The multi-granularity lookup table of claim 1, wherein: when the multi-granularity lookup table structure operates in LUT6 and dual LUT5 mode, the input of the six input lookup table is the input of LUT6 and the output is the output of LUT 6; the five input lookup table has inputs as inputs to first LUT5 and outputs as outputs of first LUT 5; all inputs of the first four-input lookup table correspond one-to-one with all inputs of the second four-input lookup table as four inputs of the second LUT5, the independent input serving as another input of the second LUT 5; the output of the fifth selector is provided as the output of the second LUT 5.
5. The multi-granularity lookup table of claim 1, wherein: when the multi-granularity lookup table structure operates in LUT6 and dual LUT5 mode comprising one common input, the input of the six input lookup table is the input of LUT6 and the output is the output of LUT 6; the five input lookup table has inputs as inputs to first LUT5 and outputs as outputs of first LUT 5; all inputs of the input terminals of the first four-input lookup table correspond one-to-one with all inputs of the input terminals of the second four-input lookup table as four inputs of the second LUT5, and an input connected to the third selector among the input terminals of the five-input lookup table is used as the other input of the second LUT 5; the output of the fifth selector is provided as the output of the second LUT 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110956914.5A CN113746474B (en) | 2021-08-19 | 2021-08-19 | Multi-granularity lookup table structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110956914.5A CN113746474B (en) | 2021-08-19 | 2021-08-19 | Multi-granularity lookup table structure |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113746474A CN113746474A (en) | 2021-12-03 |
CN113746474B true CN113746474B (en) | 2022-04-22 |
Family
ID=78731836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110956914.5A Active CN113746474B (en) | 2021-08-19 | 2021-08-19 | Multi-granularity lookup table structure |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113746474B (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8581624B2 (en) * | 2012-03-29 | 2013-11-12 | Altera Corporation | Integrated circuits with multi-stage logic regions |
US9584128B2 (en) * | 2014-12-11 | 2017-02-28 | Capital Microelectronics Co., Ltd. | Structure of multi-mode supported and configurable six-input LUT, and FPGA device |
CN105356875B (en) * | 2015-09-24 | 2018-07-06 | 北京时代民芯科技有限公司 | A kind of single-particle reinforces the lut circuits of FPGA |
CN105958996B (en) * | 2016-05-18 | 2019-04-19 | 中国电子科技集团公司第五十八研究所 | A kind of eight input look-up table configurations of non-all standing |
US10320390B1 (en) * | 2016-11-17 | 2019-06-11 | X Development Llc | Field programmable gate array including coupled lookup tables |
US10735004B1 (en) * | 2019-04-01 | 2020-08-04 | Microchip Technology Inc. | LUT-based focused ion beam friendly fill-cell design |
-
2021
- 2021-08-19 CN CN202110956914.5A patent/CN113746474B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN113746474A (en) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6107822A (en) | Logic element for a programmable logic integrated circuit | |
US7274211B1 (en) | Structures and methods for implementing ternary adders/subtractors in programmable logic devices | |
US6292019B1 (en) | Programmable logic device having configurable logic blocks with user-accessible input multiplexers | |
US5905385A (en) | Memory bits used to couple look up table inputs to facilitate increased availability to routing resources particularly for variable sized look up tables for a field programmable gate array (FPGA) | |
US6480025B1 (en) | Driver circuitry for programmable logic devices with hierarchical interconnection resources | |
US7385417B1 (en) | Dual slice architectures for programmable logic devices | |
US6864714B2 (en) | PLDs providing reduced delays in cascade chain circuits | |
US10560102B1 (en) | Field programmable gate array including coupled lookup tables | |
US20080258760A1 (en) | System level interconnect with programmable switching | |
US20040008055A1 (en) | Programmable logic devices providing reduced power consumption | |
US20040070422A1 (en) | Programmable logic devices having enhanced cascade functions to provide increased flexibility | |
US7193436B2 (en) | Fast processing path using field programmable gate array logic units | |
CN113986815B (en) | Programmable logic block based on multi-granularity lookup table structure | |
CN109933301B (en) | Expandable programmable logic unit and programmable logic block structure | |
US7573291B1 (en) | Programmable logic device with enhanced logic block architecture | |
CN109947395B (en) | Programmable logic unit structure and chip | |
US7268584B1 (en) | Adder circuitry for a programmable logic device | |
US6674303B1 (en) | Programmable input/output cell with bidirectional and shift register capabilities | |
US7675321B1 (en) | Dual-slice architectures for programmable logic devices | |
CN105391443B (en) | Logic cell for programmable logic device | |
CN113746474B (en) | Multi-granularity lookup table structure | |
KR20180116117A (en) | Logic block architecture for programmable gate array | |
US7459935B1 (en) | Programmable logic devices with distributed memory | |
CN102647181B (en) | Integrated circuit with improved logic cells | |
US20160315620A1 (en) | An extensible and configurable logic element, and an fpga device |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A Multi-granularity Lookup Table Structure Effective date of registration: 20220905 Granted publication date: 20220422 Pledgee: Beijing first financing Company limited by guarantee Pledgor: Beijing Zhongke Shengxin Technology Co.,Ltd. Registration number: Y2022980014492 |