WO2004088500A1 - プログラマブル論理デバイス - Google Patents
プログラマブル論理デバイス Download PDFInfo
- Publication number
- WO2004088500A1 WO2004088500A1 PCT/JP2004/004752 JP2004004752W WO2004088500A1 WO 2004088500 A1 WO2004088500 A1 WO 2004088500A1 JP 2004004752 W JP2004004752 W JP 2004004752W WO 2004088500 A1 WO2004088500 A1 WO 2004088500A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- output
- input
- memory
- logic function
- line
- Prior art date
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/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
-
- 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
-
- 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/1778—Structural details for adapting physical parameters
- H03K19/17784—Structural details for adapting physical parameters for supply voltage
Definitions
- the present invention relates to a programmable logic device, and more particularly, to a look-up table in which a target logic function is decomposed into a plurality of ordered decomposition functions, and the decomposition functions are expressed as a decomposition table.
- ⁇ Lookup table cascade (hereinafter referred to as “LUT cascade”). Related to programmable logic devices. Background art
- FPGA field programmable gate array
- An FPGA is a programmer that can change the contents of a plurality of logic cells (Configurable Logic Blocks; hereinafter referred to as “CLBs”) arranged in a matrix and the wiring connections between the logic cells by rewriting the memory. It is a logical device. FPGAs perform calculations in hardware, unlike Micro Processing Units (MPUs), which perform calculations in software according to programs. Therefore, it has the feature that the operation execution speed of the logical function is high.
- MPUs Micro Processing Units
- FPGA changes the routing of physical wiring between each CLB by a program. Therefore, it is necessary to design the placement and routing in order to minimize the wiring delay, and the design takes a long time. Also, depending on how to route the wiring between each CLB, The wiring delay time changes. Therefore, it is difficult to predict the operation time of the logic circuit at the time of design.
- the LUT cascade is a series of LUTs connected in series, and can be expressed in a form in which LUTs of a plurality of decomposition functions obtained by functional decomposition of a logical function (objective logical function) for performing arithmetic processing are connected in series.
- the FPGA differs from a logic circuit in that it is realized as a two-dimensional CLB network, while the LUT cascade is different in that the target logic function is realized by a one-dimensionally connected LUT.
- Each 1 ⁇ 8 used in 0 implements a basic logic gate.
- the LUT cascade it is generally necessary to connect LUTs expressing complex logical functions of multiple inputs and multiple outputs in series (one-dimensionally) to realize complex logical circuits.
- the output and input of each LUT are generally connected by multiple wires. Since a two-dimensional wiring network is not required, the wiring area is generally small, and most of the chip area is the memory area for storing the LUT. Also, the chip area for wiring and the delay time of the wiring part are smaller than those of FPGA.
- Fig. 52 is a diagram showing the principle of the LUT forcesuit. Here, for simplicity, we will explain the LUT cascade without intermediate output.
- ⁇ (,..., ⁇ ⁇ — represents an input variable.
- a set of input variables is represented by ⁇ X ⁇
- each decomposition function fi is represented by Y I + 1 .
- n. k (k is the number of input variables of the decomposition function f)
- n s — 1 k-u s — t (0 ⁇ t ⁇ k-2) (Citation [2], [3]). Therefore, the objective logic function f is decomposed into S-1 k-input decomposition function (je ⁇ 0,-, s-2 ⁇ ) and 1 k-1 input decomposition function f s —.
- each decomposition function f r (re ⁇ 0,-, ⁇ - ⁇ ) is represented by a decomposition table, and this is defined as a LUT (lookup table).
- the decomposition chart of the objective logical function f r () is a 2 rl column 2 1 1 row table, each row and column has a binary code label, and its element is f r Is a table that is the corresponding truth value.
- Each LUT (LUT r ) Can be implemented using a k-input ur + 1 output memory (hereinafter referred to as a “logic function memory.”) Such a logic function memory is cascaded as shown in FIG. By L A UT cascade is realized.
- the calculation speed may be slower than the optimized FPGA.
- the operation of each decomposition function is performed at high speed using a logical function memory. As a result, the computation speed can be increased as compared to programs running on the MPU.
- the operation speed is uniquely determined by the number of LUT stages. Therefore, it is easy to accurately predict the operation time of the target logic function when designing a logic circuit.
- wiring may be performed only between logic function memories adjacent to each other. Therefore, there is no need to consider the effects of wiring delays when designing the logic circuit. Therefore, the logic circuit design of the LUT cascade is significantly easier than that of the FPGA.
- an object of the present invention is to flexibly change the number of input lines and the number of rails of input variables between the respective logic function memories according to the target logic function.
- Another object of the present invention is to provide a programmable logic device that can be designed with the memory capacity of a logic function memory kept to a minimum.
- a first configuration of the programmable logic device according to the present invention includes the following configuration.
- a logic function memory arranged in a serial order for storing LUT (lookup table) of the logic function
- connection memory for storing connection information
- connection circuit capable of reconfiguring the connection relationship between the output line or the external input line of the logic function memory and the input line of the logic function memory at a subsequent stage.
- the logic function memory of each stage stores the logic function represented by each LUT in order to represent the target logic function by the LUT cascade.
- the “memory” refers to a device in which one data is stored corresponding to each address, and the data corresponding to the address is read by designating the end address. Therefore, the “memory” is not limited to a physically single memory element, but may be a combination of a plurality of memory elements.
- Each connection circuit forms a connection relationship between either the output line or the external input line of the preceding logic function memory and each input line of the subsequent logic function memory according to the connection information output by the connection memory. Thereby, a LUT cascade can be realized.
- the logic function in the logic function memory and the connection information in the connection memory are rewritten according to the LUT cascade that performs the arithmetic processing.
- the number of output lines of the preceding logic function memory for connecting to the input lines of the subsequent logic function memory and the number of external input lines can be freely changed.
- the programmable logic device is crucially different from the FPGA in that logic function memories are arranged in series (one-dimensionally).
- logic function memories are arranged in series (one-dimensionally).
- the connection relation of the input and output lines between CLBs does not have a one-to-one correspondence. Therefore, it is necessary to increase the degree of freedom of the connection circuit so that it can handle all kinds of connection relationships. As a result, the connection circuit becomes large-scale, and the ratio of the wiring area in the chip is extremely large.
- connection circuit may selectively connect the output line and the external input line of one logic function memory to the input line of one logic function memory.
- the connection circuit performs connection such that
- the connection circuit basically has a function of selecting
- connection circuit has an extremely simple configuration as compared to the connection circuit of the FPGA. Therefore, the wiring area occupied in the chip can be extremely small. Also, the connection is only between two logic function memories, and no placement and routing design is required. Therefore, it is not necessary to consider the influence of physical wiring delay in circuit design.
- a second configuration of the programmable logic device includes the following configuration: (1) Logic function memory arranged in a ring for storing LUTs of logic functions;
- connection memory for storing connection information
- connection relationship between the output line or the external input line of the preceding logic function memory and the input line of the subsequent logic function memory is determined in accordance with the output of the connection memory.
- a connection circuit that can be configured.
- the logic function memories are arranged in a one-dimensional ring. Therefore, the connection circuit may selectively connect the output line and the external input line of one logic function memory and the input line of one logic function memory. Therefore, as in the case of the first configuration, the connection circuit is significantly simpler than the connection circuit of the FPGA, and the wiring area can be reduced. Also, since the connection is only between two logic function memories, no placement and routing design is required. Therefore, it is not necessary to consider the effect of physical wiring delay in the logic design.
- the third configuration of the programmable logic device is the first configuration or the second configuration.
- An external output line for outputting an operation result of a logical function to an external circuit; wherein the connection memory is provided between two of the logical function memories; It also stores connection information for selecting what is connected to the line;
- connection circuit also connects between the output line of the logic function memory at the preceding stage and the external output line between the two logic function memories according to the output of the connection memory;
- the output can be obtained from any of the logic function memories connected in series. Therefore, when the number of stages in the LUT cascade is small, by taking out the output in the middle of the logical function memory string as an output variable, the arithmetic processing can be terminated early and the arithmetic speed can be increased.
- the operation result determined in the middle of the LUT cascade can be output in the middle without being input to the subsequent LUT.
- the number of LUT inputs in the subsequent stage can be reduced.
- the calculation processing speed can be increased.
- the reduction in the number of inputs to the LUTs at the subsequent stage reduces the memory capacity required for the LUTs at the subsequent stage.
- a fourth configuration of the programmable logic device in any one of the first to third configurations, further includes an area designation storage unit that stores an area designation variable that designates a memory area of the logic function memory;
- connection circuit is provided between the two logic function memories according to the output of the area designation storage means.
- the input variable from the output of the logic function memory and the external input line in the preceding stage is an area designation variable
- the output from the memory area of the logic function memory of the preceding stage specified by the area designation variable and the input variable from the external input line are input to the memory area of the subsequent logic function memory specified by , So as to be input to the logic function memory at the subsequent stage,
- the memory when the LUT is stored in each logic function memory, the memory is divided into a plurality of areas (eg, pages) and a plurality of LUTs are stored.
- the area specification storage means stores the value of an area specification variable that specifies the memory area in which the LUT of each logical function is stored.
- connection information is stored so that the output line of the area specification storage means for outputting the area specification variable corresponding to each logical function is connected to the input line of the subsequent logic function memory.
- connection information is read from the connection memory from the area designation variable and the area designation storage means corresponding to the logic function, and the connection relationship of the connection circuit is switched.
- the LUT of the memory area specified by the area specification variable of each logic function memory is read. This makes it possible to switch between the operations of a plurality of objective logic functions.
- a fifth configuration of the programmable logic device in any one of the first to fourth configurations, is provided on an input side or an output side of the logic function memory, and includes a data strobe signal input from outside.
- An intermediate variable register which takes in an input to the logic function memory or an output of the logic function memory and temporarily holds the same;
- each logic function memory In synchronism with the data strobe signal, each logic function memory is operated by LUT one stage at a time. Therefore, if the data strobe signal is synchronized with the clock of the external circuit, the LUT operation of each logical function can be synchronized with the external circuit.
- the degree of freedom regarding the number of inputs of logic functions that can be operated can be increased.
- a clock pulse is used to construct a LUT cascade using one or more rounds of the logic function memory ring.
- the function operation may be sequentially performed by changing the used area of the same logic function memory as needed. Therefore, it is possible to flexibly change the number of LUT cascade stages according to the number of target logic functions and the amount of memory. Therefore, the degree of freedom in design increases.
- the number of LUT cascades can be increased by using clock pulses. Therefore, LUT of each stage can be reduced. Therefore, as the logic function memory of each stage, a memory having a relatively small memory capacity can be used. Therefore, the power consumption of each logic function memory can be kept low. Furthermore, according to the flow of operation, only some of the logic function memories perform data read operations. Only the memory that performs this operation consumes power mainly. Therefore, it can be operated with lower power consumption than MPU PFPGA. In addition, if the memory that does not perform the data reading operation is configured to be in the low power consumption state (sleep state), the power consumption can be further reduced.
- a sixth configuration of the programmable logic device according to the present invention is the same as any one of the first to fifth configurations!
- a bypass line connected in parallel with the intermediate variable register; and an output line of the intermediate variable register, which is provided on the output side of the intermediate variable register, or one of the bypass lines.
- a bypass selection circuit that outputs a line signal;
- each bypass selection circuit selects the output line of the intermediate variable register, it is possible to perform synchronous arithmetic processing using the data strobe signal. Also, if the bypass line is selected by each bypass selection circuit, the output power of the preceding logic function memory is sent directly to the subsequent logic function memory without being stopped by the intermediate variable register. Therefore, the operation of the target logic function by the LUT cascade can be executed asynchronously and at high speed.
- a seventh configuration of the programmable logic device according to the present invention is the programmable logic device according to the fifth or sixth configuration, wherein the data strobe signal is counted, and a logic function memory identification number for executing an operation is identified. Means;
- the “job” refers to an operation of generating data by performing an operation on an input variable using each LUT of the LUT cascade.
- An eighth configuration of the programmable logic device according to the present invention is the programmable logic device according to any one of the fifth to seventh configurations, wherein the logic function memory for executing arithmetic processing is in a normal operation state, and the other logic function memories are Power supply control means for performing control for setting a low power consumption state; It is characterized by having.
- the power supply control unit sets the logic function memory not used for the arithmetic processing to a low power consumption state (sleep state), and sets only the logic function memory used for the arithmetic processing to a normal operation state (wake-up state). And As a result, the power consumption of the programmable logic device can be reduced.
- the ninth configuration of the programmable logic device according to the present invention is the programmable logic device according to any one of the first to eighth configurations, wherein a part of input lines of each of the logic function memories is connected to the external circuit without passing through the connection circuit. It is characterized by being directly connected to an input line.
- At least one input variable is input to each logic function memory other than the first stage. Therefore, when a programmable logic device is manufactured for general purpose, input variables must be directly input to at least one of the inputs of each logic function memory other than the first stage without passing through a connection circuit. Constitute. Thereby, the number of input lines of the connection circuit can be reduced. Further, since the number of output wirings of the connection circuit and the connection memory can be reduced, it is possible to further reduce the size of the circuit.
- a part of output lines of each of the logic function memories does not pass through the connection circuit. It is characterized in that it is directly connected to some input lines of the logic function memory in the subsequent stage. In each of the logic function memories other than the first stage, the output of the preceding logic function memory is input to a part of the input, and the input variables are input to the other inputs.
- connection circuit includes a plurality of selector circuits
- each of the selector circuits may be one of an output line of the logic function memory of the preceding stage and the external input line, or an output line of the logic function memory of the preceding stage. Selecting one of the external input line and the output line of the area designation storage means and connecting it to the input line of the logic function memory at the subsequent stage;
- connection circuit outputs an output of the logic function memory in a preceding stage according to an output value of the connection memory.
- a shifter circuit for shifting the connection order of the lines and connecting to the input line of the logic function memory at the subsequent stage is provided.
- connection circuit in the first configuration, includes a plurality of multiplexers
- the multiplexer selects one of the plurality of output lines and the plurality of external input lines of the logic function memory of the preceding stage according to the output value of the connection memory, and Connected to the input line of the logic function memory;
- FIG. 1 is a block diagram showing an entire configuration of a programmable logic device according to Embodiment 1 of the present invention.
- FIG. 2 is a circuit diagram showing a configuration of the input variable selection circuit of FIG.
- FIG. 3 is a block diagram showing the configuration of the logic function memory of FIG.
- FIG. 4 is a circuit block diagram around the connection circuit of FIG.
- FIG. 5 is a block diagram showing the configuration of the connection memory of FIG.
- FIG. 6 is a flowchart showing the operation of the programmable logic device according to the first embodiment.
- FIG. 7 is a circuit block diagram in the case where a mouth switch is used in the connection circuit of FIG.
- FIG. 8 is a circuit block diagram when a multiplexer array is used in the connection circuit of FIG.
- FIG. 9 is a circuit block diagram when a selector array is used for the connection circuit of FIG.
- FIG. 10 is a diagram showing a logical function of the 8-bit adder.
- FIG. 11 is a diagram showing an 8-bit adder obtained by performing function decomposition into eight decomposition functions.
- FIG. 12 is a diagram showing an 8-bit adder obtained by performing function decomposition into eight decomposition functions.
- FIG. 13 is a diagram showing an 8-bit adder obtained by performing function decomposition into four decomposition functions.
- Figure 14 shows the truth values of each decomposition function of the 8-bit adder, ⁇
- FIG. 15 shows the truth values stored in the 0th page of the logic function memory 4-0 in Example 1.
- FIG. 16 shows the truth values stored in the 0th page of the logic function memory 4-1 to 4-3 in Example 1.
- FIG. 17 is a block diagram showing the overall configuration of a programmable logic device according to Embodiment 2 of the present invention.
- FIG. 18 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 3 of the present invention. .
- FIG. 19 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 4 of the present invention.
- FIG. 20 is a block diagram showing the configuration of the output register and output decoder of FIG. .
- FIG. 21 is a block diagram showing the configuration of the storage element of FIG.
- FIG. 22 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 5 of the present invention.
- FIG. 23 is a block diagram showing the configuration of the second output selection circuit of FIG.
- FIG. 24 is a block diagram showing the entire configuration of a programmable logic device according to Embodiment 6 of the present invention.
- FIG. 25 is a block diagram showing the entire configuration of a programmable logic device according to Embodiment 7 of the present invention.
- FIG. 26 is a block diagram showing the configuration of the arithmetic and control unit 10 of FIG.
- FIG. 27 is a block diagram showing the internal configuration of the output controller 64 of FIG.
- FIG. 28 is a flowchart showing the operation of the programmable logic device according to the seventh embodiment.
- FIG. 29 is a timing chart illustrating changes in respective signals during the operation of the programmable logic device according to the seventh embodiment.
- FIG. 30 is a diagram showing a logical function f for adding 2 n-bit binary numbers A and B.
- Fig. 31 is a diagram in which the logical function f for adding 2 n-bit binary numbers A and B is decomposed into 2 n decomposition functions ⁇ , g or ⁇ —.
- Fig. 32 shows the logical function f for adding 2 XI-bit binary numbers B to 2 n decomposition functions ⁇ g. , g..., ⁇ —.
- FIG. 33 is a diagram in which a logical function f for adding 2 n-bit binary numbers A and B is function-decomposed into n decomposition functions ⁇ f 0 , f 1; ..., F ⁇ .
- FIG. 34 is a truth table of the decomposition function f i.
- FIG. 35 is a truth table stored in the first page of the logic function memory 4-0.
- FIG. 36 is a truth table stored in the 0th page of the logic function memories 4-0 to 4-3.
- FIG. 37 is a block diagram showing an entire configuration of a programmable logic device according to Embodiment 8 of the present invention.
- FIG. 38 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 9 of the present invention.
- FIG. 39 is a diagram showing an overall configuration of a programmable logic device according to Example 10 of the present invention.
- FIG. 40 is a block diagram illustrating a configuration of an arithmetic unit of the programmable logic device according to the tenth embodiment of the present invention.
- FIG. 41 is a diagram showing the configuration of the connection circuit and the memory address register of FIG. 40.
- FIG. 42 is a diagram showing a configuration of an output circuit of a programmable logic device according to Embodiment 10 of the present invention.
- FIG. 43 is a diagram showing a flow of an operation processing operation of the programmable logic device according to the tenth embodiment.
- FIG. 44 is a diagram illustrating a flow of an arithmetic processing operation of the programmable logic device according to the tenth embodiment.
- FIG. 45 is a diagram illustrating a flow of an arithmetic processing operation of the programmable logic device according to the tenth embodiment.
- FIG. 46 is a diagram for explaining the concept of memory packing.
- FIG. 47 is a diagram illustrating a configuration of a programmable logic device according to Example 11 of the present invention.
- FIG. 48 is a diagram showing an example in which a four-stage LUT cascade is realized by a programmable logic device using two logic circuit memories.
- Fig. 49 is a diagram expressing the logical functions f and g in a LUT cascade.
- Figure 50 is a diagram expressing the logical functions f and g in a LUT cascade.
- FIG. 51 is a diagram illustrating an LUT ring obtained by combining the logical functions f and g.
- FIG. 52 is a diagram showing the principle of the LUT cascade. BEST MODE FOR CARRYING OUT THE INVENTION
- the symbol “ ⁇ ” represents an unordered set.
- the number of variables in X is represented by I.
- ⁇ xjeix ⁇ , ⁇ x ⁇ ⁇ x. ⁇ u ⁇ ' ⁇ ' ⁇ ⁇ ⁇ x s — Let it be represented by a composite logic function like Decomposing the objective logic function f (X) into a set of ordered functions (f., Fi,..., F s ) is called “function decomposition”. Each function ⁇ fi; ie ⁇ 0, 1, 2, ..., s-1 ⁇ obtained by functional decomposition of the objective logic function f (X) is referred to as a "decomposition function”.
- Multi-output logic function refers to a logic function having a plurality of output variables.
- FIG. 1 is a block diagram showing the entire configuration of a programmable logic device according to Embodiment 1 of the present invention.
- the programmable logic device includes an input variable register 1, an input variable selection circuit 2—. ⁇ 2-3, human selection memory 3-0-3-3, ff Lunry function memory 4-. ⁇ 4-3, connection circuit 5-:! ⁇ 5—3, connection memory 6— :! 6 to 3 and operation J control [510].
- the input variable X is input to the input variable register 1 from an external input line.
- the logic function memories 4-0 to 4-3 store a truth table of a decomposition function 3 ⁇ 4; ie ⁇ 0, 1, 2, 3 ⁇ obtained by performing a function decomposition of the objective logic function f as an LUT.
- the number of logic function memories 4-i ie ⁇ 0, 1, 2, 3 ⁇
- the number memories 4-0 to 4-3 are arranged in series, and are arranged in series via connection circuits 5-1 to 5-3, respectively.
- Each of the input selection memories 3-0 to 3-3 stores information (hereinafter referred to as "input selection information") relating to the selection of input variables of the input variable selection circuits 2-0 to 2-3 as an LUT. .
- the input variable selection circuit 2-0 to 2-3 switches the selection of input variables based on the input selection signal output from each input selection memory 3-0 to 3-3.
- connection circuit 5-i (i G ⁇ 1, 2, 3 ⁇ ) selects intermediate variables and input variables input from the logic function memory 4- (i-1) and the input variable selection circuit 2-i. Then, connect them to the logic function memory 4-i and the external output line 7-i at the subsequent stage in an appropriate order.
- connection information stores information on the connection relationship of each connection circuit 5-i (hereinafter, referred to as “connection information”). The connection circuit 5-i reconstructs the connection relationship based on the connection information signal output from the connection memory 6-i.
- FIG. 2 shows the input variable selection circuit 2-i (iE ⁇ 0, l, 2, 3 ⁇ in FIG. -It is a circuit diagram showing the configuration of 0 to 2-3 when collectively referred to as symbol 2.). In addition, this circuit diagram is simplified in order to explain the operation principle.
- the input variable selection circuit 2-i (ie ⁇ 0, 1, 2, 3 ⁇ ) of the present embodiment is constituted by a shifter circuit as shown in FIG. FIG. 2 shows an example of an input variable selection circuit 2-i having 17 inputs and 8 outputs for convenience of explanation, but the number of inputs and outputs is not limited to this.
- the output terminals out (00) to out (07) of the input variable selection circuit 2-0 are connected to the inputs of the logic function memory 4-0.
- the output terminals out (00) -out (07) of the input variable selection circuit 2-i are connected to a part of the input terminal of the connection circuit 5-i.
- the input variable selection circuit 2-i (iE ⁇ 0,1,2,3 ⁇ ) receives the 8-bit shift circuit 11-3, the 4-bit shift circuit 11-2, and the 2-bit shift circuit 11_ from the input side. 1, and 1-bit shift circuits 11-0 are connected in series. As a result, the input variable selection circuit 2-i (iE ⁇ 0,1,2,3 ⁇ )
- One-bit control lines shf 0 to shf 3 are connected to the respective shift circuits 11-0 to 11-3.
- the shift circuit 11-i does not shift the connection, and the control line shf j (je ⁇ 0, 1, 2, 3 ⁇ ).
- the control lines shf0 to shf3 of the input variable selection circuit 2-i are connected to the output of the input selection memory 3-i.
- the contents of the 4-bit memory read from the input selection memory 3-0 (that is, 'input selection information) are output as control signals to the control lines shf0 to shf3 as they are, and the input variable selection circuit 2-
- the shift amount of the input variable at i (ie ⁇ 0, l, 2, 3 ⁇ ) is set.
- the signal amplitude of the input variable X is attenuated by each of the pass transistors in the shifter circuits 11-0 to 11-3. Therefore, in practice, it is necessary to insert an amplifier (buffer) every several stages of the shifter circuit in order to compensate for the signal amplitude of the input variable X.
- a shifter cannot be used for the selection circuit 2-i (ie ⁇ 0, l, 2, 3 ⁇ ).
- a connection circuit similar to the crossbar switch shown in FIG. 7 or the multiplexer array (described later) shown in FIG. 8 may be used.
- FIG. 3 shows the logic function memory 4-i (iE ⁇ 0, l, 2, 3) in Fig. 1.
- symbols 4-0 to 4-3 are collectively referred to, they are written as symbol 4.
- FIG. 2 is a block diagram showing the configuration of FIG.
- Logic function memory 4 has a memory area FM consisting of p pages inside. ⁇ FM p .
- the truth table of the decomposition function ie ⁇ 0,1,2,3 ⁇ , je ⁇ 0, • ⁇ •, ⁇ - ⁇
- FMj the memory area in which the LUT ( j ) is stored.
- the subscript " (j) " (jG ⁇ 0, '", p-1 ⁇ ) represents the i-th objective logic function f (j) .
- the decomposition function ⁇ fi (j) ⁇ of the target logical function f (j) is stored in the first page of each logical function memory 4. Then, the page is switched according to the purpose of use, and It is configured so that a logical function can be selected.
- the logic memory 4-i (ie ⁇ 0, 1,2,3 ⁇ ) includes an address decoder 16.
- Ryo dress decoder 16 based on the page selection number p r inputted from the calculation control unit 10, to allow the memory 'access to the memory area.
- FIG. 4 shows the connection circuit 5-i (iE ⁇ l, 2,3 ⁇ in FIG. 1; hereinafter, when the symbols 5-1 to 5-3 are collectively referred to as symbol 5). It is a circuit block diagram. Note that this circuit diagram is simplified to explain the principle of operation.
- connection circuit 5 in the present embodiment has an input line ⁇ . Is constituted by a shifter circuit outputting ⁇ ⁇ input signals from 5 cyclically shifted by any bits number to the output line 0l ⁇ O 15.
- Is constituted by a shifter circuit outputting ⁇ ⁇ input signals from 5 cyclically shifted by any bits number to the output line 0l ⁇ O 15.
- FIG. 4 for convenience of explanation, a connection circuit of 16-bit input and 16-bit output is shown as an example, but the number of input / output bits is not particularly limited to this.
- Connection circuit 5 is input line i. From the side of ⁇ it 5 , an 8-bit shifter circuit 20-3, a 4-bit shifter circuit 20-2, a 2-bit shifter circuit 20-1, and a 1-bit shifter circuit 20-0 are connected in series.
- the on / off state of each shifter circuit 20_i (iE ⁇ 0, 1, 2, 3 ⁇ ) is output to the output of the connection memory 6 (collectively 6-1 to 6-3 is collectively referred to as code 6. The same applies hereinafter.). It is controlled by the connected control line Sj (je ⁇ 0,1,2,3 ⁇ ).
- Input line i of connection circuit 5-r (re ⁇ 1,2, 3 ⁇ ). ⁇ I out of 15 , i. Through i 7 is connected to the output side of the previous logic function memory 4- (r- 1), i 8 ⁇ 5 is connected to the output side of the input variable selection circuit 2-r. Also, among the output lines o Q to o 15 of the connection circuit 5-r, o. Oo 7 are connected to the input side of the subsequent logic function memory 4-r, and o 8 oo 15 are external output lines 7-r. Input line i when there is no shift in the connection relationship of each shifter circuit 20-0-20-3. ⁇ : ⁇ 15, respectively output line. . It is connected to the ⁇ ⁇ 15. Thus, the intermediate variable Y r is the output of the preceding logic function memories 4- (r- 1) is input all the subsequent logic function memory 4-r.
- Each ⁇ _ it is connected to the output line o 8 ⁇ O 15, input line ij ⁇ i 7 + j, respectively, the output line o. Connected to ⁇ 7 .
- the 8-j-bit intermediate variable Y f is input to the subsequent logical function memory 4_r.
- the subscript “ (j) ” (jE ⁇ 0, ⁇ ⁇ , -1 ⁇ ) indicates that it is connection information corresponding to the j-th objective logic function f (j) .
- Ss Nc — i is a control line of each shifter circuit 20-0 to 20- (N c -1) of the connection circuit 5-i.
- An address decoder 21 is provided inside each connection memory 6.
- Ryo dress decoder 21, according to the page selection number p r inputted from the operation control unit 10 selects the r-th memory region CM r.
- FIG. 6 is a flowchart showing the operation of the programmable logic device according to the first embodiment.
- the decomposition function ⁇ ⁇ ,..., F s (2 ⁇ s ⁇ 4) obtained by functional decomposition of the objective logical function f (X) to be operated is stored in each of the logical function memories 4-0 to 4-3. Write it on page r.
- r indicates a page number.
- the r-th page of each input selection memory 3-0 to 3-3 and each connection memory 6- :! to 6-3 contains the above decomposition function ⁇ f.
- each of the input selection memories 3-0 to 3-3 outputs the input selection information written in the r-th page to the control lines shf0 to shf3 of the input variable selection circuits 2-0 to 2_3 (S2).
- the connection memories 6-1 to 6-3 store the connection information (), ⁇ , s written in the r-th page. ( R) ) is output to each control line of the connection circuit 5-1 to 5-3 (S3).
- the input variable selection circuits 2-0 to 2-3 output a part of the input terminals in (00) to: in (16) according to the input selection information input to the control lines shf 0 to shf 3 and output terminals out ( 00) to out (07).
- Connection circuit 5- To 5-3, the connection information input from the control line ( "), ⁇ ⁇ ⁇ , s. Fei)) to thus connects the input line i 8 through i 15 and output line O. ⁇ O 7 .
- the arithmetic control unit 10 outputs the input variable X by using the input variable register 1 (S4).
- the logic function memories 4-0 and the connection circuit 5-1 5 3 respectively, the input variables Xo, X had X 2, X 3 is output.
- the logic function memory 4-0 stores the input variable X.
- This intermediate variable is transmitted to the input of the logic function memory 4-1 via the connection circuit 5-1.
- some of the intermediate variables are transmitted to the external output line 7-1.
- the logic function memory 4-1 contains the intermediate variables transmitted from the logic function memory 4-0 and the input variables transmitted from the input variable register 1 via the input variable selection circuit 2-1 and the connection circuit 5-1.
- the force variable is entered.
- Logic function memories 4-1 based on the input variables and intermediate variables, and outputs the truth value of the decomposition function ( ⁇ ) as intermediate variables Y 2.
- the intermediate variables Upsilon 2 is transmitted to the input of the logic function memories 4-2 through the connection circuit 5-2. In some cases, a portion of the intermediate variables Upsilon 2 is transmitted to the external output line 7-2.
- the intermediate variable Upsilon 3 is transmitted to the input of the logic function memories 4-3 through the connection circuit 5-3. In some cases, a portion of the intermediate variables Upsilon 3 is transmitted to the external output line 7 _ 3.
- the logic function memory 4-3 outputs the truth value f 3 (X 3 , Y 3 ) of the decomposition function f 3 as the output variable f based on the input variable ⁇ 3 and the intermediate variable ⁇ 3 .
- This output variable f is transmitted to the external output line 7-4 (S5).
- the above processing is performed by pipeline processing while transmitting serially from the previous stage to the subsequent stage. Then, the operation result of the objective logic function f is expressed by each external output line 7— :! ⁇ 7—Retrieved from 4.
- connection circuit 5— :! The shifter circuit shown in Fig. 4 was used for ⁇ 5-3, but the crossbar switch shown in Fig. 7 was used for the connection circuits 5-1 to 5-3.
- the connection circuit 5—i is
- connection circuit 5_i 'using the crossbar switch has the disadvantage that the number of switching control lines is large and the circuit is large as compared with the shifter circuit, it is necessary to reduce the number of pass / transistor stages through which signals pass. Therefore, the calculation speed can be increased.
- connection circuit 5 If the permutation of the variable order is not required in 5-3, a connection circuit 5-i, '' using a selector 'array (Selector Array) as shown in FIG. 9 may be used.
- the connection circuit 5-i ′′ with a selector array can be configured with an extremely simple circuit. Therefore, the connection circuit 5_i ',' requires only a small layout area, is fast, and has low circuit power consumption.
- each of the logic function memories 4_0 to 413 is operated asynchronously.
- each of the logic function memories 4-0 to 413 is synchronized by a clock. May be operated.
- the carry input bit c in is used for adding large numbers of 8 bits or more, and when using adders connected in series and using lower order adders. This bit indicates a carry from. Carry output bit c. Similarly, ut is a bit indicating a carry output to the upper adder.
- each decomposition function is composed of two input variables, ⁇ and an intermediate variable c representing a carry.
- n is a logical function that outputs u t (1 )
- the decomposition function 1 ⁇ 2. G or g 2 , g 3 , 'g 4 , g 5 , g 6 , g 7 ⁇ , and the four arcs.
- each decomposition function group is synthesized into one, and four decomposition functions f are obtained.
- each decomposition function is a 5-input, 3-output logical function expressed by a logical expression such as (Equation 4) or (Equation 5).
- each decomposition function fi is as shown in Fig.14. Therefore, the truth table of FIG. 15 is stored in the 0th page of the logic function memory 4-0.
- the truth table (LUT) in FIG. 16 is stored in the logical function memories 4-1 to 4-3 on page 0.
- S 2i , S 2i + 1 , c out (i) (ie ⁇ l, 2,3 ⁇ ) are the input lines i 2 , i 3 , i of the connection circuit 5— (i + 1), respectively.
- the 0th page of each of the input selection memories 3-0 to 3-3 stores information of 0-bit shift, 5-bit shift, 9-bit shift, and 13-bit shift, respectively. That is, as input selection information (shfO, shfl, shf2, shf3) of each input selection memory 3-0 to 3-3, (0,0,0,0), (0,1,0,1), Store (1,0,0,1) and (1,1,0,1).
- variables A, B, and c in are input to the input variable register 1.
- Input variable register 1 stores these variables.
- Operation controlling unit 10 an input selection memory 3-0 ⁇ 3-3, logical function number memory 4 0 ⁇ 4- 3, and a page selection number p r relative ⁇ Pi connected memory 6- 1 ⁇ 6- 3 Set page 0.
- the input variable selection circuits 2-0 to 2-3 change a part of the input terminals in (00) to: in (16) to the output terminals out (00) to according to the input selection information input to the control lines shf0 to shf3. out (07) is electrically connected.
- the arithmetic control unit 10 outputs the input variable X by using the input variable register 1.
- the values of the input variables are input to the input terminals of the input variable selection circuits 2_1 to 2-3 as shown in (Table 1).
- Input variable selection circuit 2-0 (out (00), out (01), out (02), out (03), out (04)).
- (C in, a have a 0, b l5 b. ) And input this to the logic function memory 4-0.
- outputs out (05) to out (07) are omitted because they are not used.
- the logic function memory 4-0 stores the address of the LUT (LUT) stored on the 0th page.
- (I 0 , i i 2 , i 3 , i 4 , i 5 , i 6 , i 7 ) (c in , a l5 a 0 , b 1; b 0 ,-,--)
- connection circuit 5-1 (( ⁇ , o have o 2, ⁇ 3, o 4 , o 5, o 6, o 7.) -,, S., Output S ut (.),-,-,-) To connection circuit 5-1.
- "-" indicates don't care (may be 0 or 1).
- the input lines (i 0 , i i 2 , i 3 , i 4 , i 5 , i 6 , i 7 ) of the connection circuit 5-1 are (-,-, S 0 , S, c). ut ( ⁇ ) ,-,-,-) is input. '
- the output lines ⁇ 8 to ⁇ 15 of the connection circuit 5-1 are taken out as the external output line 7-1. Therefore, the operation result S. , Si are output to two of the external output lines 7-1.
- connection circuit 5-2 (-,- , S 2 , S 3 , c out "),,-,-) are output to the connection circuit 5-2.
- each input line (i., I ,, i 2 , i) of the connection circuit 5-2 is output.
- Output line o 8 ⁇ O 15 of the connection circuit 5-2 is taken as an external output line 7-2. Therefore, the operation results S 2 and S 3 are output to two of the external output lines 7-2.
- the logic function memory 4-2 stores the address (i 0 , i or i 2 , i 3 , i 4 , i 5 , i 6 , i 7 ) of the LUT (LUT) stored in the 0th page.
- each input line of the connection circuit 5- 3 ((i, i have i 2, i 3, i 4 , i 5, i 6, i 7.) -, -, S 4, S 5, c Ut ( 2 ),-,-, one) is input.
- the values of (Table 4) are output from the connection circuits 5-3, respectively.
- Output line o 8 ⁇ O 15 of the connecting circuit 5-3 is taken as an external output line 7-3. Therefore, the operation results S 4 and S 5 are output to two of the external output lines 7_3.
- FIG. 17 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 2 of the present invention.
- some of the output lines of the input variable selection circuits 2-1 to 2-3 are connected to the logic function memories 4-1 to 4--3 without passing through the connection circuit 5-1-5-3. It is characterized by being directly connected to the input.
- at least one input variable is often input to the inputs of the logic function memories 4-1 to 4-3. That is, at least one of the output lines of the input variable selection circuits 2-1 to 2-3 is often connected to the input of the logic function memory 4-1 to 4-3.
- connection circuits 5-1 to 5-3 are logically connected without passing through the connection circuits 5-1 to 5-3 from the beginning.
- the number of input lines of the connection circuits 5-1 to 5-3 can be reduced.
- the connection circuits 5-1 to 5-3 are configured by shifter circuits as shown in Fig. 4, it is possible to reduce the number of shifter stages, thereby increasing the operation speed and reducing power consumption. Can be achieved.
- FIG. 18 is a block diagram illustrating an overall configuration of a programmable logic device according to Embodiment 3 of the present invention.
- connection circuits 5-1 to 5-3 are used.
- the first feature is that -31-3 is provided. Also, a part of the intermediate variables input from the preceding logic function memory 4- (i-1) (ie ⁇ 1, 2, 3 ⁇ ) to the subsequent logic function memory 4-i is connected to the connection circuit 5-i.
- a second feature is that the input is performed directly without intervention.
- connection circuits 5-1 to 5-3 With this configuration, the number of input lines of the connection circuits 5-1 to 5-3 can be reduced. As a result, the connection circuits 5-1 to 5-3 can be reduced in size. Also, contact When the continuation circuits 5-1 to 5-3 are configured by shifter circuits as shown in FIG. 4, the number of shifters can be reduced, and the calculation speed can be increased.
- FIG. 19 is a block diagram showing the overall configuration of a programmable logic device according to Embodiment 4 of the present invention.
- FIG. 20 is a block diagram showing the configuration of the output register and output decoder of FIG. The figure is a block diagram showing the configuration of the storage element in FIG.
- the output variable register 51 for temporarily storing the output variables output to the external output lines 7-1 to 7_4, and the output variable register 51 outputs a load signal for capturing the output variables.
- An output selection decoder 52 is provided.
- Other configurations are the same as those in FIG. 1, and thus description thereof is omitted.
- each of the logic function memories 4-0 to 4-3 has an internal address latch (not shown) and operates in synchronization with a clock.
- the output variable register 51 stores 32 storage elements M (i, j) (ie ⁇ l, 2, 3, 4 ⁇ , j ⁇ ⁇ 0, 1, 2, 3, 4, 5, 6, 7 ⁇ ). Have.
- Each storage element M (i, j) is composed of a D flip-flop (hereinafter, referred to as "DFF") 53 for holding data and a 2-input, 1-output multiplexer (hereinafter, referred to as "MUX") 54.
- DFF 53 receives a common clock signal Clock. When the clock signal Clock is 1, the DFF 53 latches the value input to the data input D.
- the output of MUX 54 is connected to data input D of DFF 53.
- outputs 0 to 53 (3 is connected to the input D 0 of 0 ⁇ of the MUX 54.
- Input D 1 on the 1 side of the MUX 54 is connected to the j-th line of the external output line 7_i
- FIG. 22 ' is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 5 of the present invention.
- the present embodiment is characterized in that a first output selection circuit 25, a second output selection circuit 26, an input selection memory 3-4, and an input variable selection circuit 2-4 are provided.
- the other configuration is the same as that of FIG. 1, and the description is omitted.
- the second output selection circuit 26 selects all or a part of the output variables output from the logic function memory 43 in the final stage according to the value of the input variable input from the input variable selection circuit 2-4. And output.
- the input variable selection circuit 2-4 is constituted by a shift circuit similar to that shown in FIG. However, in this embodiment, the output of the logic function memory 413 in the last stage is 8 bits, and therefore the output of the shift circuit used in the input variable selection circuit 2-4 is 3 bits.
- the output of the input variable selection circuit 2—4 depends on the number N of outputs of the logic function memory (Equation 6) It is said.
- the outputs out (00) to out (02) (see FIG. 2) of the input variable selection circuit 2-4 are represented by F 0 , F, and F 2 , respectively.
- the first output selection circuit 25 is configured by a multiplexer, and according to the output selection signal t output from the arithmetic control unit 10, each of the logic function memories 410-4 _ 2 and the second output selection circuit 26 Select and output one of the output variables output from 6.
- the output selection signal t is a 2-bit signal representing the designation number (te ⁇ (00), (01), (10), (11) ⁇ ) of the output bundle selected by the first output selection circuit 25. Signal.
- FIG. 23 is a block diagram showing the configuration of the second output selection circuit 2.6 of FIG. Note that this circuit diagram is simplified to explain the operation principle.
- the second output selection circuit 26 connects a 2-input, 1-output multiplexer (hereinafter, referred to as “X”) 31 to 37 in multiple stages in a cascaded manner. Each stage is configured so that the output can be taken out through MUX 38 to MUX 44.
- FIG. 23 shows an example in which the number of bits Nc of the output line is 8 bits for convenience of explanation. The force Nc is not limited to 8 bits.
- ⁇ y 7 is connected to the output of the logic function memories 4 _ 3. This input line y. From ⁇ y 7, the value of the output variable Y is input.
- the output line f (Q) to f (7) of the output selection circuit 26 is the input line y. Output variable selected from ⁇ 7 The value of..., g is output.
- Input line y. , Yi, input line y 2, y 3; input line y 4, y 5, and the input line y 6, y 7 is connected to the input side of the MUX 31, MUX 32, MUX 33 , and MUX 34, respectively .
- the outputs of the MUXs 31, 32 and 33, 34 are connected to the inputs of the marauders 35, 36, respectively.
- the outputs of MUX 35 and 36 are connected to the input of MUX 37.
- the input line y. The output of MUX 31), (the output of the input line y 2, MUX 32), (the output of the input line y 4, MUX 33), and (the output of the input line y 6, MUX 34) are connected to the inputs of MUX 38, # 39, MUX40, and MUX 41, respectively. Further, (the output of the input lines Yl, MUX 35), (the output of the input line y 3, MUX 37), and (the output of the input line y 5, MUX 36) are each Application X42, MUX43, and the input side of MUX44 It is connected.
- MUX31-34 are common input variables F. Controls the switching. That is, F. There is the case of "0", the MUX 31, 32, 33, 34, respectively, to select an input line y 0, y 2, y 4 , y 6, F 0 force S "1" when, MUX 31, 32 , 33, 34, respectively, to select the y 3, y 5, y 7 have input lines y.
- Switching of the MUXs 35 and 36 is controlled by a common input variable. That is, when is "0", the MUXs 35 and 36 select the MUXs 31 and 33, respectively, and when the force S is "1", the MUXs 35 and 36 select the MUXs 32 and 34, respectively.
- MUX 37 is, switching control is by the input variables F 2. That is, the-out F 2 is "0" Noto, MUX 37 selects the MUX 35, F. When mosquito "1", MUX 37 selects MUX 36
- 8 input lines y by MUX31-34. 4 is selected from among the ⁇ y 7.
- 2 is selected from among the ⁇ y 7.
- One of 7 is selected. This is the objective logic function
- logic function memory It means that the logical operation by the input variables (F Q,, F 2 ) can be performed on the intermediate variable Y output by 4-3. Therefore, the number of input variables in the operation performed by the logic function memories 4-0 to 4-3 can be reduced.
- the objective logic function f (x., X is ...
- Equation 7 (Equation 7) — 1 / (0, 1, ⁇ ⁇ ⁇ , 3 ⁇ 4— 2) V ⁇ n—lj (0, 1, ⁇ ⁇ ⁇ , -2) and Shannon expansion to obtain the function (3 ⁇ 4, ⁇ ..., ⁇ ⁇ 2 ) into four decomposition functions f. (X.), f x ( ⁇ ⁇ , ⁇ ,), f 2 ( ⁇ 2 , ⁇ 2 ), f 3 (X 3 , Y 3 ) (where X.
- U3 ⁇ 4 UX 2 UX 3 ⁇ x., X ..., X n — 2 ⁇ ), and if the number of outputs of the decomposition function (,) in the final stage is reduced to 4 or less, then the logic function memory 4 0 0 to 4 1 3 Can reduce the number of input variables to be input by one. Then, the input variable may be input to the second output variable selection circuit 26 as an input variable.
- Equation 8 (Equation 8) ; ⁇ , ⁇ , rc n _ 3 ) V ⁇ ⁇ _ 1 3 ⁇ 4_ 2 ( ⁇ 0 ,, ⁇ , x n - S )
- the number of input variables to be input to the logic function memory 410-413 can be reduced by two.
- VX n -lX n -2Xn-3f "'( ⁇ , ⁇ ⁇ ⁇ , , N— 4), the Canonical expansion gives the logical function memory 4-1 0 to 4-1 3 The number can be reduced by three.
- the MUXs 38 to 44 are configured so that the output when each of the output lines is selected is output through the common output lines f (Q) to f (7). ing.
- the switching of the MUXs 38 to 44 is controlled by a common selection switching variable Select.
- MUX38 is, Select selects the input line y 0 when “0”, selects the output of MUX31 when Select is “1”, and outputs the signal value of the selected line to the output line f (fl).
- MUX39 is, Select selects the input line y 2 when “0”, Select selects the output of the MUX 32 when the “1”, and outputs the signal value of the selected line to the output line f (2).
- MUX40 is, Select selects the input line y 4 when “0”, Select selects the output of the MUX 33 when the "1", and outputs a signal value of Itaru ⁇ the line to the output line f (4) .
- MUX41 is, Select selects the input line y 6 when it is “0”, selects the output of MUX34 when Select is “1", and outputs the signal value of the selected line to the output line f (6).
- the MUX42 selects the input line when Select is “0”, selects the output of MUX35 when Select is “1”, and outputs the signal value of the selected line to the output line f (1) .
- MUX43 is, Select selects the input line y 3 when it is “0”, selects the output of Akira X37 when Select is “1”, and outputs the signal value of the selected line to the output line f (3).
- MUX 44 is, Select selects the input line y 5 when "0", Select selects the output of the MUX 36 when the "1", and outputs the signal value of the selected line to the output line f (5) .
- the output line f (7) is directly connected to the input line y 7.
- the second output selection circuit 26 By providing the second output selection circuit 26 in this manner, when the number of output variables f (X) is equal to or less than one-two of the total number of output lines of the last-stage logic function memory 4-1-3, Further selection operation can be performed by using the second output selection circuit 26. This makes it possible to substantially increase the total number of input variables of the decomposition function that performs the operation in the logic function memories 410 to 4_3 by one or more. Therefore, it is possible to increase the number of input variables allowed in the entire programmable logic device.
- the multiplexer in the output selection circuit 26 uses a 2-input / 1-output multiplexer.
- a w-input / 1-output (w ⁇ 2) MUX can be used.
- FIG. 24 is a block diagram showing the entire configuration of a programmable logic device according to Embodiment 6 of the present invention.
- the present embodiment is characterized in that the second output selection circuit 26 is connected to the subsequent stage of the first output selection circuit 25. Note that the first output selection circuit 25 and the second output selection circuit Except for the connection to the route 26, the configuration is the same as that of the fifth embodiment, except for the MS order.
- variable set in the first selection circuit 25 is selected in the first selection circuit 25.
- Selected variable set in the first selection circuit 25 based on the value of the input variable (F have F 2, F 3) and a selection switch shift number Select, its all or in part by the second selection circuit 26 Selected and output as output variable.
- any n variable logic function f (x, X physician ..., x n -.,) It may be expressed in the following form.
- FIG. 25 is a block diagram illustrating an overall configuration of a programmable logic device according to Embodiment 7 of the present invention.
- the programmable logic device includes an input variable register 1, an input variable selection circuit 2-0 to 2-3, an input selection memory 3-0 to 3-3, and a logic function memory 4-0 to 4 — 3, Connection circuit 5-. To 5-3, connection memories 6-0 to 6-3, area designation memories 8_0 to 8-3, and an operation control unit 10. In this embodiment, each circuit operates in synchronization with a common clock.
- the input variables are input to the input variable register 1 from the external input line.
- the logical function memory 4-0 to 4-3 stores the truth table of the decomposition function ⁇ f i; ie ⁇ 0, 1, 2, 3 ⁇ obtained by function decomposition of the target logical function f as LUT You.
- the number of stages of the logic function memory 4-i is four, but in general, the number of stages can be set arbitrarily. You.
- These logic function memories 4-0 to 4-3 are arranged in order, and are connected in a ring shape via connection circuits 5-0 to 5-3, respectively.
- the logic function memories 4_0 to 4-3 in the present embodiment use the same memory as that described in FIG.
- the address 'decoder 16 based on the page selection number p (p r) which is input from the area designating memory 8- i, the memory of the memory area FM k' to allow access.
- the input selection memories 3-0 to 3-3 store information relating to the selection of the input variables of the input variable selection circuits 2-0 to 2-3 (hereinafter referred to as "input selection information").
- the input variable selection circuits 2-0 to 2-3 switch between input variable selections based on the input selection signals output from the input selection memories 3-0 to 3-3.
- a shifter circuit as shown in FIG. 2 is used for the input variable selection circuits 2-0 to 2-3.
- input terminals in (00) to: in (16) are connected to the output terminal of input variable register 1.
- an input variable X (x ⁇ ..., X n ) is input from the input terminals in (00) to Ln (16).
- the output terminals 0 (00) to 0 (07) of the input variable selection circuit 2-i (ie ⁇ 0, 1, 2, 3 ⁇ ) are connected to some of the input-side terminals of the connection circuit 5-i Have been.
- connection circuit 5-i (ie ⁇ 0, 1, 2, 3 ⁇ ) is an intermediate variable and input from the logic function memory 4- (i-1 mod 4) and the input variable selection circuit 2-i. Connect the variables to the logic function memory 4-i and the external output line 7-i at the subsequent stage in different order.
- connection memory 6-i (i ⁇ ⁇ 0, 1, 2, 3 ⁇ ) stores information (hereinafter, referred to as “connection information”) relating to the connection relationship of each connection circuit 5-i.
- connection information hereinafter, referred to as “connection information” relating to the connection relationship of each connection circuit 5-i.
- the connection circuit 5-i switches the connection relationship based on the connection information signal output from the connection memory 6-i.
- connection circuits 5-0 to 5_3 a cyclic shifter circuit as shown in FIG. 4 is used for the connection circuits 5-0 to 5_3.
- connection circuit 5-j (j ⁇ ⁇ l, 2, 3 ⁇ ) input line i. ⁇ I out of 15 , i. Through i 7 is connected to the output side of the previous logical function memory 4- (j-1),: 1 8 ⁇ : 1 15 is connected to the output side of the Input variable selection circuit 2.
- input line i of connection circuit 5-0. Out of 5 , i. ⁇ ; 1 7 is connected before being connected to the output side of the logic function memories 4-3 stages, i 8 ⁇ 5 on the output side of the input variable selection circuit 2 0.
- the output line o of the connection circuit 5 -j (je ⁇ 0, 1, 2, 3 ⁇ ).
- ⁇ O out of 15 , o. ⁇ O 7 is connected to the input side of the subsequent logic function memories 4_j, o 8 ⁇ o 15 external output line 7 - it has a j.
- connection memory 6-i ie ⁇ 0, 1, 2, 3 ⁇
- connection memory 6-i ie ⁇ 0, 1, 2, 3 ⁇
- Each area designating memory 8-i corresponds to the number of operation stages of the target logic function, and the LUT stored in the logic function memory 4-i uses Stored page numbers (hereinafter referred to as “area specification variables”) are stored.
- Logic function memory 4-i sets pages according to the area specification variable output by area specification memory 8-i.
- the arithmetic control unit 10 controls arithmetic processing of the entire programmable logic device.
- FIG. 26 is a block diagram showing the configuration of the arithmetic and control unit 10 of FIG.
- the arithmetic control unit 10 has a configuration including an arithmetic step 'register 61, a step' counter 62, a page counter 63, and an output controller 64.
- Operation step ⁇ Register 61 stores the number of operation steps, which is the number of decomposition functions after the target logical function is decomposed.
- the step 'counter 62 counts the number of stages of the decomposition function for which the operation is currently being performed.
- the value stored in the calculation step register 61 is set in the step counter 62, and the value stored therein is reduced by one as the calculation processing proceeds by one stage.
- ⁇ Consists of a down counter The step counter 62 outputs an end signal END when the count value i becomes 0. Also, the step counter 62 sets the count value to the value stored in the operation step register 61 when a reset signal reset is input from the outside.
- the page 'counter 63 counts the page number of each memory in which the data output from the input selection memory 3, the connection memory 6, and the area designation memory 8 are stored, and outputs the count value k as a count signal pk. I do.
- the page counter 63 resets the count value k to 0 when the reset signal reset is input or when the end signal END is input from the step counter 62.
- Output controller 6 each of the logic function memories 4 - 0-4 - for the three chips 'Inepuru signal CE 0 ⁇ CE 3, and Adoresu' strike opening over strobe signal ADSP 0 ⁇ ADSP 3 by outputting Controls the output of the logic function memory 4-0 to 4-3.
- the chip enable signal CEi is a signal for activating the i-th logic function memory 4-i, and the chip enable signal CEi becomes "1" (true value) (asserted).
- the logic function memory 4-i accepts an external input signal and outputs data. It becomes possible.
- the address' stroop signal ADSPi is a signal for controlling the latch of the input address to the logic function memory 4-i.
- FIG. 27 is a block diagram showing the internal configuration of the output controller 64 of FIG.
- the output controller 64 is constituted by a Johnson counter 69 consisting of four flip-flops (hereinafter referred to as “FF”) 65 to 68, four AND circuits 70 to 73, and one OR circuit 74. I have.
- FF flip-flops
- a common clock signal clock is input to clock terminals C of FF65 to 68.
- Output 0 of FF65, 66, 67, 68. , Q have Q 2, N0T (Q 3), respectively, FF 65, 66, 67, 68 data input Dp D 2, D 3 of, D. It is connected to the.
- the OR circuit 74 outputs a reset signal reset 'of the logical sum of the reset signal reset and the end signal END.
- the reset pin 'reset' is input to the reset terminal rst of FF65 to FF68.
- Transition cyclically as follows. That is, for each clock, the operation of shifting right by one bit, inverting the most significant bit (Q 3 ), and setting the least significant bit (Q 0 ) is repeated.
- FF65, 67 of Deca, Q 2, respectively, chip Ineburu signal CE. Are output as.
- FF 65, 67 of the output N0T (Q.), N0T ( Q 2) , respectively, is output as the chip 'rice one enable signal CE 2, CE 3.
- ⁇ 0 ⁇ ( ⁇ is an inverted output of the output.
- the AND circuit 70 outputs the logical product of the outputs Q. and NOT (Q of the FFs 65 and 66 as the address / stop signal ADSP.
- the circuit 71 outputs the output of the FFs 67 and 68 and the logical product of N0T (Q 3 ) as an address strobe signal ADSP.
- the AND circuit 72 outputs the outputs NOT (Q Q ) and Q x of the FFs 65 and 66 The product is output as the address 'strobe signal ADSP 2.
- the AND circuit 73 outputs the logical product of the outputs NOT (Q 2 ) and Q 3 of the FFs 67 and 68 as the address' strobe signal ADSP 3 .
- the logical function memory 4 0 4 3 chips In the state where Ineburu signal CE 0 ⁇ CE 3 is "0", and shall become a low power consumption mode. As a result, the power consumption of the logic function memory 4 not used for the operation is reduced, and the power consumption of the entire LUT cascade circuit can be further reduced.
- FIG. 28 is a flowchart showing the operation of the programmable logic device according to the seventh embodiment.
- FIG. 29 is a timing chart showing changes in respective signals during the operation of the programmable logic device according to the seventh embodiment.
- the truth table of the decomposed function ⁇ , ⁇ , ⁇ (l ⁇ s) obtained by function decomposition of the objective logical function f (X) to be operated is used as the LUT as a logical function memory.
- the writing function to each memory is not shown in FIG. 25, but is performed by a normal memory writing method. Further, the total number of stages s of the decomposition function is written in the operation step register 61 of the operation control unit 10. In the following, description will be made assuming that s> 4.
- time interval T In the state where the above write is performed, first, time interval T.
- the count values i and p of the step counter 62 and the page counter 63 are reset by the reset signal reset input from the outside (S1).
- the count H of the step counter 62 is initialized to the value s stored in the operation step register 61
- the count value p of the page counter 63 is initialized to 0.
- the FFs 65 to 68 of the output controller 64 in the arithmetic control unit 10 are reset by the reset signal reset (S2).
- the input selection memory 3-i (ie ⁇ 0, 1, 2, 3 ⁇ ) outputs the input selection information stored in page 0 to the control lines shf0 to shf3 of the input variable selection circuit 2-i. I do.
- the input variable selection circuit 2-i converts a part of the input terminals in (00) to: in (16) to the output terminals out (00) to out (07) according to the input selection information input to the control lines shf0 to shf3. Electrically connected to
- connection memory 6-i (ie ⁇ 0, 1, 2, 3 ⁇ ) outputs the connection information (—),..., ⁇ ") Stored in the 0th page to the connection circuit 5-i.
- connection circuit 5-i each control line Yori input is the connection information ((°), one, 3. (°)) in accordance with the input line i 8 through i 15 and the output line o. ⁇ o 7 And connect.
- the area designation memory 8-i (ie ⁇ 0, 1, 2, 3 ⁇ ) stores the area 'designated variable P (0) stored in page 0 to the address' decoder 16 of the logic function memory 4-i'. Output.
- the logic function memory 4-i is in a state where the p-th page (0) can be selected.
- the input variable register 1 starts outputting the input variable to each of the input variable selection circuits 2-0 to 2-3 (S4).
- the input circuit X is connected to the connection circuits 5-0 to 5-3, respectively.
- X or X 2 , X 3 are output.
- Connection circuit 5-Input variables input to i (ie ⁇ 0, 1, 2, 3 ⁇ ), X and X 2 , X 3 are input sides of the logic function memory 4-i according to the set connection order. Is output to .
- the data D. starts to be output from the logic function memory 4-0 (S5).
- the ADSP output from the AND circuit 70 becomes "1".
- ADSP 0 becomes "1”
- an address register in the logic function memory 4-0 is established based on the input variable X input from the connection circuit 5-0 (S6).
- the logic function memory 4-0 starts to output the value of the LUT (intermediate variable Y 4p + (s_i ) ) corresponding to the established address in page 0 to the connection circuit 5-1.
- the intermediate variable ⁇ 4 ⁇ + (3 - ⁇ ) output to 5-1 is input to the logic function memory 4-1 according to the set connection relationship.
- the intermediate variable Y 4p + (s — A part is transmitted to the external output line 7-1.At the end of the time interval ⁇ , ADSP falls from "1" to "0" and the logic function memory 41 0 Internal address register is latched.
- ADSPt output from the AND circuit 71 becomes "1" (SI1).
- SI1 the address of the logic function memory 4-1 is established based on the intermediate variables and the new input variables input from the logic function memory 4-0 in the preceding stage via the connection circuit 5-1.
- the output data of the logic function memory 4-1 changes, and the LUT value (intermediate variable Y 4p + ( s -i)) corresponding to the established address in the pk-th page Output starts at 5-2.
- the ADSP output from the fiber circuit 71 becomes "0", and the output data of the logic function memory 4-1 is determined as the intermediate variable Y4P + (S -1) ( S12).
- the intermediate variable Y 4P + (S output to the connection circuit 5-2 is input to the logic function memory 4-2 according to the set connection relationship. In some cases, the intermediate variable Y 4P + (S Is transmitted to the external output line 7-2.
- ADSP 2 is the output of the fine circuit 72 becomes "1" (S 1 6) .
- the logic function memory 4-2 is input from the logic function memory 4-1 in the preceding stage via the connection circuit 5-2.
- the address is established based on the intermediate variables and the new input variables. With the establishment of this address, the output data D 2 of the logic function memory 4-2 changes, and LUT value corresponding to the established address in the page (intermediate variable Y 4p + (s ) output starts to be output to connection circuit 5-3.
- ADSP 3 which is the output of the AND circuit 73 becomes "1" (S 21).
- the address of the logic function memory 4-3 is established based on the intermediate variables and the new input variables input from the logic function memory 4-2 at the preceding stage via the connection circuit 5-3.
- the logical output data D 3 of the function memory 4-3 is changed, the value of the LUT corresponding to the established address in the pk page (intermediate variables Y 4p + (s _), connection circuit It starts to be output to 5-0.
- the page counter 63 increments the count value p (S23).
- the value of the count signal p p is increased ⁇ only 1, the input selected memory 3-0 ⁇ 3-3, connection memory 6 - 0-6 - 3, and a region of the designated memory 8 _0 ⁇ 8-3
- the selected page switches. Accordingly, the connection relationship between the input variable selection circuits 2-0 to 2-3 and the connection circuits 5-0 to 5-3 also switches.
- each logic function memory stores the chip enable signal C and the address strobe signal ADSPi at "1". The page will not be switched unless it becomes a state that accepts the address as "".
- the step 'counter 62 decrements the count value i (S24). Also, at this time, the output Q of Jeongseon's counter 69. Becomes 1.
- steps S9, S14, S19, and S25 if the count value i of the step counter 62 is 0, the step counter 62 outputs an end signal END. As a result, the arithmetic control unit 10 stops the arithmetic operation, and the arithmetic ends.
- the arithmetic processing is performed by serial processing from the first stage to the second stage. If the operation of all the decomposition functions has not been completed at the time when the arithmetic processing in the last logical function memory 4-3 has been completed, the intermediate data output from the logical function memory 4-3 is obtained. The variable is fed back to the first-level logic function memory, and the operation is repeated. Then, the operation result of the objective logic function f is taken out from each external output H7-; L ⁇ 7-4 Next, the specific operation of the programmable logic device will be described using a specific example in order to explain the above operation more clearly.
- the carry input bit Ci n is used to add a large number of 2 n bits or more when connecting adders in series. This bit indicates the carry from the lower adder.
- ut is a bit indicating a carry output to a higher-order adder.
- the input variable selection circuits 2-0 to 2-3 use log 2 (2n + l) (when log 2 (2n + l) is not an integer, log 2 It is assumed that it consists of a (2n + l) input 8 output shifter circuit in which (2n + l) rounded-up) stages of shifters are connected in series.
- the logical function f is expressed by Fig. 30. .
- This function is composed of 2 ⁇ decomposition functions ⁇ g. , G or...
- each decomposition function is represented by a logical expression such as (Equation 12). Or (Equation 13). (Number 1 2)
- each decomposition function has two input variables bi and an intermediate variable c representing a carry.
- ut (i is the sum of the modulo one, Si and the intermediate variable of the carry c.
- This is a logic function that outputs ut (1 ).
- This is a four-stage logic function memory as shown in Fig. 25.
- the decomposition function ⁇ g., Gl,. , Gl ⁇ , ⁇ g 2 , g 3 ⁇ ,-, ⁇ g 2n — 2 , g 2n — J. Then, as shown in Fig.
- each decomposition Function E is grouped into one and represented by n decomposition functions f., F ⁇ ⁇ , f n — i, where each decomposition function is expressed by (Equation 14) or (Equation 15) It is a three-variable input and three-variable output logic function represented by a simple logical expression.
- S 2i , S 2i + 1 , c out (i) (ie ⁇ l, 2,-, ⁇ -l ⁇ ) are respectively connected to the input lines i 2 ,
- the output bits of the logic function memory are allocated so as to be output to i 3 and i 4 . .
- the 0th page of each input selection memory 3-0—3-3 contains 0-bit shift, 5-bit shift, 9-bit shift, 13-bit shift, and p-th page (1 ⁇ p ⁇ [(nl ) / 4]) stores information of 16p + l bit shift, 16p + 5 bit shift, 16p + 9 bit shift, and 16p + 13 bit shift, respectively.
- four bits as the connection information in the case of shifting (3 3, 3 2, 3 1, 5) when the (0,1,0,0), is 5 bits shift
- connection information (0,1,0,1) is shifted by 8 bits as connection information
- connection memory 6 (1,0,0,0) is stored in each page of the connection memory.
- n 13
- the contents of the connection memory 6 are as shown in (Table 5) below. (Table 5)
- 1 is stored as an area specification variable.
- 0 is stored as an area specification variable in the 0th page of the area specification memories 8-1-1 to 8-3.
- variables A, B, and c in are input to the input variable register 1 and stored.
- the Johnson counter 69 is reset to zero.
- the page counter 63 of the arithmetic control unit 10 sets the input selection menu.
- the 0th page is set as the page selection number Pr according to the memory 3-0 to 3-3, the connection memory 6-0 to 6-3, and the area designation memory 8-0 to 8-3.
- the input variable selection circuits 2-0 to 2-3 output eight of the input terminals in (00) to; in (x-1) according to the input selection information input to each control line. Out (00) to out (07) are electrically connected.
- the input selection memory 3-0 connects in (00) to in (07) to out (00) to out (07), and the input selection memory 3-1 shifts 5 bits, in (05)-: In (12) is connected to out (00)-out (07), input selection memory 3-2 is shifted 9 bits, and in (09)-: in (16) is out (00) to out (07), input selection memory 3-3 shifts 13 bits, and connects in (13) to in (20) to out (00) to out (07).
- connection memories 6-0 to 6-3 respectively store the connection information written on page 0.
- connection circuit 5-0 shifts 8 bits to each of i 8 to i 15. Connects to o 7 and connects ⁇ to 0 8 to 015 , respectively. . connect to also connect the memory 6-1 to 6-3, by 4-bit shift, ⁇ : 1 11 connected respectively 0 0-0 7, a i 12 ⁇ ii 5, i 0 ⁇ i 3 Connect to o 8 to Oi 5 respectively.
- the area specification memories 8-0 to 8-3 output the area specification variables written in the 0th page to the address decoder 16 of the logic function memories 4-0 to 4-3, respectively.
- the logical function memory 4-0 becomes accessible to one page
- the logical function memories 4-1 to 4-3 become accessible to one page.
- the arithmetic control unit 10 outputs the input variable X by using the input variable register 1.
- the values of the input variables are input to the input terminals of the input variable selection circuits 2-1 to 2-3 as shown in (Table 7). (Table 7)
- the connection circuit 5-0 shifts them by 8 bits and outputs them to output lines (o 0 , 0 or o 2 , o 3 , o 4 ). In this way, the input variables (c in , a a, b 1? B.) Are input to the logic function memory 4-0.
- the output controller 64 of the arithmetic and control unit 10 outputs CE.
- the set to "1”, the logical function memory 4-0 internal address' register, the address (i Q, i have i 2, i 3, i 4 , i 5, i 6, i 7)
- connection circuit 5 - Outputs to 1. That is, each input line of the connection circuit 5-1 ((i, i have i 2, i 3, i 4 , i 5, i 6, i 7.) -, -, -,-) Is input.
- Output line o 8 ⁇ O 15 of the connection circuit 5-1 is taken as an external output line 7-1. Therefore, the operation result S. Si is output to two of the external output lines 7-1 q '
- Input to 5-2 input line (i 8 i 9 i 10 , i) From the connection circuit 5-2, respectively, and output the value (Table 9) c
- Output line o 8 ⁇ O 15 of the connecting circuit 5-2 is taken as an external output line 7-2. Therefore, the operation results S 2 and S 3 are output to two of the external output lines 7-2.
- the operation is performed in the logic function memory 4-2 and the logic function memory 4-3. Then, the operation results S 4 and S 5 of the logic function memory 4-2 are output to two of the external output lines 7-3. Further, the output value of the logic function memories 4- 3 (-, -, S 6, S 7, c ou, (3), -, -, -) is input lines i of the connection circuit 5-0. ⁇ Feed back to '. '
- the page counter 63 increments the count value k by 1 and outputs the count value k to the count signal pk.
- connection memory 6, and the area designation memory 8 are changed, the output from these memories is also changed.
- the shift amount information output from the input selection memory 3-0 is changed to 17-bit shift.
- the operation results S 6 and S 7 of the logic function memory 4-3 are output to two of the external output lines 7-0.
- the output value of the logical function memory 4- 0 (-, -., S 8, S 9, c ut (4), -,-) Are input lines i of connection circuit 5-1. Is input to the ⁇ i 7. Connection circuit 5-1, which was 5-bit shift,. And outputs the (S 8, S 9, c . Ut (4)) output line (o 13, o 14, o 15). As a result, the operation results (S 8 , S 9 , c. Ut (4) ) of the logic function memory 4-0 are output to three of the external output lines 7-1. As described above, all the calculation results are output to the output lines 7-0 to 7-3, and the calculation ends.
- the input variables X Q , X 1? ..., ⁇ i input to the LUTs of each stage do not have a common element (that is, ⁇ ⁇ ⁇ ⁇ (i ⁇ j )),
- the programmable logic device according to the present invention can be used also in a case where any two of the input variables X Q and X ′ ′′ JS have common elements.
- FIG. 37 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 8 of the present invention.
- connection circuits 5-0 to 5-3 are used.
- the first feature is the provision of ⁇ 81-3.
- a part of the intermediate variables input from the preceding logic function memory 4- (i-1) (ie ⁇ l, 2, 3 ⁇ ) to the subsequent logic function memory 4-i is connected to the connection circuit 5-i.
- a second feature is that the input is performed directly without intervention.
- connection circuits 5-0 to 5-3 With this configuration, it is possible to reduce the number of input lines of the connection circuits 5-0 to 5-3. it can. As a result, the connection circuits 5-0 to 5-3 can be reduced in size. Further, when the connection circuits 5-0 to 5-3 are configured by shifter circuits as shown in FIG. 4, the number of shifter stages can be reduced, and the calculation speed can be increased.
- FIG. 38 is a block diagram showing an overall configuration of a programmable logic device according to Embodiment 9 of the present invention.
- a plurality of outputs of the last logical function memory 4-3 are temporarily stored on the input side of the feed-back connection circuit, and the feed-pack connection circuit 5-0.
- a synchronous memory that operates in synchronization with a clock is used as the logic function memories 4-0 to 4_3.
- the logic function memories 4-0 to 4-3 are not limited to synchronous memories, and it is also possible to use memories that operate asynchronously.
- the output of the logic function memory 4-3 at the last stage is feed-packed to the input of the logic function memory 4-0 at the front stage, the output of the logic function memory 4-0 to 4-3 is asynchronous. If memory is used, unexpected operation may occur, such as oscillation.
- the intermediate variable register 82 is provided, and each time the operation of one operation loop is completed, the output values of the logic function memories 4-0 to 4-3 are determined once, and the logic function memory 4 -Store the value of the intermediate variable output by 3 in the intermediate variable register 82. Then, the processing shifts to the next operation loop, in which the intermediate variable stored in the intermediate variable register 82 is input to the value logic function memory 4-0 to perform the operation processing.
- FIG. 39 is a diagram showing an overall configuration of a professional logic device according to Embodiment 10 of the present invention.
- the programmable logic device of this embodiment is composed of an arithmetic unit 85 and s units (s ⁇ 2
- up to s operations can be performed by pipeline processing.
- FIG. 39 shows a configuration in which s output circuits 86 are provided. However, the number of output circuits 86 can be reduced as needed.
- FIG. 40 is a block diagram illustrating a configuration of a computing unit 85 of a programmable logic device according to Embodiment 10 of the present invention.
- input variable register 1 input variable selection circuit 2—0 to 2— (s ⁇ 1) (s ⁇ 3), input selection memory 3-0 to 3- (s ⁇ 1), logic function memory 4- 0 to 4- (s-1), connection circuit 5-0 to 5- (s-1), connection memory
- connection circuit 5-i a memory 'address' register ( memory address register: hereinafter referred to as “MAR”.) 90 and direct access selector (hereinafter, referred to as “DAS”) 91-i are connected in this order.
- a DAS 91-0 is connected to the input side of the logic function memory 410 at the forefront stage.
- All output lines of input selection circuit 2-0 are connected to the input lines of DAS 91-0 at the forefront stage.
- a part of the output line of the input selection circuit 2—i (i1, ⁇ 1,-, s-1 ⁇ ) is connected to a part of the input line of the logic function memory 41—i, and the others are MAR 90—i Input line Connected to part of.
- the input lines of the logic function memory 410 at the forefront are all connected to the output lines of the DAS 91-0. Also, the other logic function memory 41 i (i e ⁇ 1,..., S-1 ⁇
- All the output lines of the logic function memory 41 (s-1) at the last stage are connected to the external output line 7-s.
- the output lines of the other logic function memory 41 i (i ⁇ ⁇ 0, ⁇ ⁇ ⁇ , s-2 ⁇ ) are all part of the input lines of the connection circuit 5 _ (i + 1). It is connected.
- Each of the logic function memories 4-0 to 4_s has a power control terminal PW.
- each logic function memory 41 i (ie ⁇ 0,..., S-1 ⁇ ′) is in a wake-up mode.
- each logic function memory 41 i is in a low-power mode.
- Each logic function memory 4-1 0 to 4-s power supply control terminal PW has a power supply control signal ⁇ from outside. ⁇ ⁇ s — i is input. This power control signal ⁇ . ⁇ ⁇ s —i controls the power supply of each logical function memory 4 — 0 to 41 s .
- this power control signal ⁇ When executing multiple jobs by pipeline processing using all logic function memories, this power control signal ⁇ .
- ⁇ ⁇ s 1 is always set to 1.
- the power control signal ⁇ according to the job flow.
- ⁇ . ⁇ s Input polyphase clock to i.
- connection circuit 5 Of the input lines of the connection circuit 5—i (i ⁇ ⁇ 1,..., S-1 ⁇ ), those other than those connected to the output line of the input selection circuit 2-0 are connected to the logic function memory 41. (i-1) is connected to the output line. Also, part of the output line of connection circuit 5—i is connected to MAR 90—i. Others are connected to the external output line 7-i. The details of the connection circuit 5-i will be described later.
- MAR 9 0—i temporarily holds variable values input from multiple input lines (data input lines).
- MAR 90-i also has a function as an intermediate variable register. Some of the input lines of MAR 90-i are connected to some of the output lines of the input selection circuit 21-i, and others are connected to some of the output lines of the connection circuit 5-i. All of the output lines of MAR 90-i are connected to a part of the input lines of DAS 91-i. .
- the MAR 90_i has an external connection input line, a reset input line, and a bypass control input line.
- An external clock input line receives an external clock signal (clock). Further, a reset signal and a bypass control signal are input from the arithmetic and control unit 10 to the reset input line and the bypass control input line, respectively.
- This MAR 90-i functions as an intermediate variable register that takes in the input to the logic function memory and temporarily holds it. In this case, the clock signal input to the external clock input line becomes the data strobe signal. The details of MAR 90-i will be described later.
- DAS 9 1-i (ie ⁇ 0,..., S _ 1 ⁇ ) writes data directly to the logic function memory 41-i from outside and performs tests on the logic function memory 4-i It is provided for the purpose.
- the DAS 91-i has the same number of multiplexers with two inputs and one output (hereinafter referred to as "MU X") as many as the input lines (data input lines) of the logic function memory 4-i.
- the output terminal of each MUX is connected to each input line of the logic function memory 41i.
- One of the two input terminals (0-side input terminal) of each MUX is connected to the external address input line 101-i.
- the other (the 1-side input terminal) is connected to the output line of MAR 90-i (partially, directly to the output line of the input selection circuit 2-i).
- the selection control terminal of each mux is connected to the selection control line 102.
- Selection control line 1 0 2 is supplied with a DAS select control signal (DAS select) from the arithmetic control unit 10.
- DAS select DAS select control signal
- the external address input line 1 0 1—i receives the address to be accessed when directly accessing the logical function memory 4—i.
- the connection memory 6—i (ie ⁇ 1,..., S-1 ⁇ ) stores the area specification variables in addition to the connection variables representing the connection information.
- the connection information is the logical function memory of the preceding logical function memory 41 (i-1) between the two logical function memories 4-1 (i-1) and 4-1i.
- the area specification variable is a variable for specifying the memory area of the logic function memory 41 (i-l), 41 i. Therefore, the connection memory 6-i also has a function as an area designation storage means. These details will be described later.
- FIG. 41 is a diagram showing the configuration of the connection circuit of FIG. 40 and the memory 'address' register (MAR).
- the connection circuit 5-i is provided with a memory 'packing' shifter (hereinafter referred to as “MPS”) 9 2, and a Reinole 'selector (rail selector) 9 3.
- MPS memory 'packing' shifter
- Reinole 'selector rail selector
- the MPS 92 has k input lines (data input lines), the same number (k) of output lines (data output lines) as input lines, and shift control lines. Each output line of the logical function memory 4 in the previous stage is connected to each input line of the MPS 92. Connect to the MPS92 shift control line Memory 6—Part of the area specification variable R output from i (hereinafter, referred to as “column selection variable”) is input.
- the column selection variable is the memory where the data to be fetched is stored when a part of the data read from the memory cell in the logic function memory 41 (i-1) in the previous stage is stored.
- the MPS 92 can select a necessary one from the output variables of the logic function memory 4- (i-1) in the preceding stage.
- the rail 'selector 93 includes a plurality of 2-input 1-output multiplexers (hereinafter, referred to as "MUX") 93a.
- MUX 2-input 1-output multiplexers
- Each MUX 93a has one output terminal, one input terminal (data input terminal), and one selection control input terminal.
- connection variable output from the connection memory 6-i is input to the selection control input terminal of each MUX 93a.
- Each MUX 93a selects the 0-side input terminal or the 1-side input terminal according to the value of the connection variable input to the selection control input terminal.
- each MUX 93a is connected to the input line of MAR 90-i.
- Each output line of the input selection circuit 2-i is connected to one input terminal (0-side input terminal) of each MU X93a.
- a part of the output line of the input selection circuit 2-i is directly connected to the input line of the MAR 90-i without going through the MUX 93a.
- MUXs 93a are divided into two sets: a page Z input variable selection group 93b and a preceding stage output variable Z input variable selection group 93c.
- the row specification variable R 2 specifies the area in the row direction of the memory cell to be accessed when accessing the memory cell in the subsequent logic function memory 41 i. Variable.
- Each MUX 93a of the page Z input variable selection group 93b selects either the row specification variable or the input variable and outputs it to the input line of the MAR 90-i.
- the number of bits of the row specification variable can be made variable.
- Each output line of the MPS 92 is connected to one-side input terminal of each MUX 93a of the preceding-stage output variable / input variable selection group 93c.
- Each MU X 93a of the preceding stage output variable / input variable selection group 93c is either the output variable selected by the MPS or the input variable output from the logic function memory 4-(i-1) of the previous stage. Select either one and output to the input line of MAR 90-i.
- MAR90-i has a configuration in which a plurality of pairs of synchronous D flip-flops (hereinafter, referred to as “DFF”) 90 a and bypass selection circuits 90 b are arranged.
- DFF synchronous D flip-flops
- Each DF F 9 O a has a data input terminal (D), a data output terminal (Q), a clock terminal (LOAD), and a “reset terminal” (RST). It consists of a two-input one-output multiplexer.
- An external clock signal (clock) is input to the clock terminal (LOAD) of the DFF 90a.
- This clock signal is the data strobe signal.
- the reset signal (reset) output by the arithmetic control unit 10 is input to the reset terminal (RST) of the DFF 90a.
- the data input terminal (D) of the DFF 90a is connected to the 1-side input terminal of the bypass selection circuit 90b by a bypass line 90c.
- the data output terminal (Q) of the DFF 90a is connected to the 0-side input terminal of the bypass selection circuit 90b.
- the data input terminal of each DFF 90a is connected to each output line (each output line of the rail selector 93 or input variable selection circuit 2-i) of the preceding connection circuit 5-i.
- the bypass control output from the arithmetic control unit 10 is connected to the selection control input terminal of the bypass selection circuit 90 b.
- a path control signal is input.
- the bypass selection circuit 90b selects the 0-side input terminal or the 1-side input terminal according to the bypass control signal.
- a part of the DFF 90a has its data output terminal connected to the subsequent DAS 91-i, and the other part has its data output terminal connected to the external output line 7-i.
- DFF 90 a connected to each MU X 93 a of the input variable selection group 9 3 c of the preceding stage is partially connected to the DAS 91 i of the subsequent stage, and the remaining part is externally output. Connected to line 7—i.
- FIG. 42 is a diagram showing a configuration of an output circuit 86 1 i (i ⁇ ⁇ 1, 1,..., S ⁇ ) of a programmable logic device according to Embodiment 10 of the present invention.
- the output circuit 86-i comprises an output selection circuit 94, an output shifter 95, an output packing shifter 96, an output selection memory 97, an output packing register 98, and an output register 99.
- Output selecting circuit 9 based on the value of the step variable output from the arithmetic controller 1 0 (step), any of the output variable to Y S which is output to the external output line 7- 1 ⁇ 7- s Choose one. Then, the selected output variable is output to the output shifter 95.
- the output variable from the output selection circuit 94 is input to the output shifter 95.
- the output shifter 95 shifts the output variable and outputs it to the output packing shifter 96.
- the output packing shifter 96 has a plurality of data input lines and a plurality of data output lines. A part of the data input line is connected to an output line of the output shifter 95, and the other part is connected to an output line of an output packing register 98 described later. Output packing.
- the output line of the shifter 96 is connected to the input line of the output packing 'register.
- the number of input lines of the output packing shifter 96 is the sum of the number of output lines of the output shifter 95 and the number of output lines of the output packing register 98. Meanwhile, output packing shifter 9
- the number of output lines of 6 is the same as the number of output lines of output packing register 98.
- the output packing shifter 96 shifts the input line by a predetermined amount and connects a part of the input line to the output line. When the shift amount is 0, the input line connected to the output line of the output packing register 98 is connected to the output line of the output packing shifter 96. .
- the output selection memory 97 stores information on the shift amount of the output shifter 95 and the output packing shifter 96.
- the output selection memory 97 outputs these shift 1 and quantity information to the output shifter 95 and the output packing shifter 96 in accordance with the page variables input from the arithmetic control unit 10.
- the output shifter 95 and the output packing shifter 96 shift according to the shift amount information.
- the output packing register 98 latches the output of the output packing shifter 96 according to an externally input clock.
- the output of the output packing register 98 is output to the output register 99, and is fed back to the input side of the output packing shifter 96.
- output variables sequentially output to the external output lines 70-i can be packed in the output packing register 98 in order without gaps.
- an output load signal (0_load) is input from the operation control unit 10 when all operations are completed, the output register 99 captures and holds the output of the output packing register 98.
- FIGS. 43 to 45 are diagrams showing the flow of the arithmetic processing operation of the programmable logic device according to the tenth embodiment.
- ⁇ . ⁇ 5 is a five-phase clock.
- the DAS selection control signal is set to 1. Therefore, DAS 91-1-0 to 91-4 is the former.
- the input value from the stage is selected and transmitted to the logic function memory 4 in the subsequent stage.
- all the logic function memories 410 to 4-4 are in a low power consumption state.
- an input variable X is input to the input variable register 1 from an external input line.
- Input variable register 1 captures and holds input variable X.
- the input variable X is output from the input variable register 1 to each input variable selection circuit 2-0 to 2_4.
- Each input selection circuit 2-i (i ⁇ ⁇ 0, 1, 2, 3, 4 ⁇ ) stores the i-th logic function memory 4 out of the input variables X according to the output value of the input selection memory 3-i. 1. Select the input variable to be input to i.
- the input selection memory 2-0 outputs the input variable to the input line of the logic function memory 410.
- the input selection memory 2—i (ie ⁇ 1, 2, 3, 4 ⁇ ) inputs the input variables to the input lines of the connection circuit 5—i.
- connection circuit 5-1 connects the output line of the logic function memory 410, the output line of the input variable selection circuit 2-1 and the input line of the MAR 90-1 according to the output of the connection memory 6-1. Then, part of the calculation result of the first-stage LUT is output to the external output line 7-1 as an output variable. Other variables are output to the input line of MAR 90-1 as intermediate variables. The input variables are also output to the MAR 90-1 input line.
- the MAR 90-1 captures and holds the intermediate variables and the input variables. And the power control signal ⁇ . Becomes 0, and the logic function memory ⁇ It enters the low power consumption state. At the same time, as shown in FIG. 44 (a), the power supply control signal becomes 1, and the logic function memory 411 enters the wake-up state. Then, the operation result of the second-stage LUT is output from the output line of the logic function memory 411.
- the connection circuit 5-2 connects the output line of the logic function memory 41-1, the output line of the input variable selection circuit 2-2, and the input line of the MAR 90-2 according to the output of the connection memory 6-2.
- a part of the operation result of the second stage of the LUT is output as an output variable Y 2 to the external output line 7-2. Further, other variables, is output as an intermediate variable U 2 to the input line of the MAR 90-2. The input variable X 2 is also output to the MAR 90-2 input line.
- the power consumption of the entire circuit is reduced by setting only the logic function memory used for the operation to the backup state and executing the operation, and setting the other unused logic function memories to the low power consumption state. Can be suppressed.
- the programmable logic device of the present embodiment can execute a plurality of tasks by pipeline processing. This makes it possible to efficiently process many tasks.
- all the logic function memories 4-0 to 4-1 (s-1) are set to the wake-up state, and the bypass control signal input to MAR 90-i (ie ⁇ 1,..., s-1)) is set to 1
- MAR 90-i ie ⁇ 1,..., s-1
- FIG. 46 is a diagram for explaining the concept of memory packing.
- Fig. 46 (a), Fig. 4 6 (b) The figure shows the memory map of the logic function memory.
- the number of page specification bits must be variable. It is also necessary to be able to read the column address in the logical function memory from an arbitrary position.
- connection circuit 5-i (ie ⁇ 1,..., S -1 ⁇ ) according to the present embodiment shown in FIG. 41 enables such memory packing.
- the page specification performed by the row specified variables R 2 to connect memory 6- i outputs.
- what is the page designation bit Whether the bit is used is specified by the connection variables output from the connection memory 6-i, which are input to the MUX 93a of the page Z input variable selection group 93b.
- up to three bits can be used as the page designation bits (this is not limited to three bits, and any number of bits may be designed according to the purpose). If not used as a page specification bit, that bit can instead be filled with an input variable.
- the read position of the column address in the logic function memory is changed by the MPS 92.
- the MPS 92 uses the logic function memory 4-(i-1) Shift output by 8 bits. This makes it possible to read the column address in the logic function memory from an arbitrary position.
- the reading position of the column address is specified by the column selection variable 1 ⁇ output from the connection memory 6-i. As described above, by using the connection circuit 5-i (i i ⁇ 1,, s-1 ⁇ ) of the present embodiment, memory packing can be realized.
- the arithmetic control unit 10 outputs to the output circuit 86-i the step number (i-1) of the logic function memory 4- (i-1) to which the output variable is output as a step variable (step).
- the output selector 94 selects an output variable based on the value of the step variable (step).
- the selected output variable Y i is output to the input line of the output shifter 95.
- the output selection memory 97 outputs information on the shift amount of the output shifter 95 and the output packing shifter 96 based on the value of the step variable (step).
- the output shifter 95 shifts the output variable according to the shift amount information input from the output selection memory 97. This allows variables to be packed from the end bits, except for unused bits of the output variable.
- the output of the output shifter 95 is output to the input line of the output packing shifter 96.
- the output packing shifter 96 further shifts the input line by a predetermined amount, and connects a part thereof to the output line. For example, assume that the number of valid bits of the output variable output from the output shifter 95 is r bits. In this case, the output packing shifter 96 shifts the input line by r bits and connects it to the output line. As a result, the r-bit output variable output from the output shifter 95 is packed into the range of the lower bits of the input line of the output packing register 98. The output packing register 98 holds the output value of the output packing shifter 96 in synchronization with the clock elk.
- the step variable (step) becomes i, and 'the output selector 94 selects the output variable Y i +1 .
- the output packing is performed. The number is output.
- the variable value previously held in the output packing 'register 98 is fed back to the input line of the output packing shifter 96. Therefore, the variable value previously held in the output packing register 98 is also input to the output packing 'register 98 after being shifted by the same decimal number as the new output variable. Then, the output packing 'register 98 holds the output value of the output packing' shifter 96 in synchronization with the clock elk.
- FIG. 47 is a diagram illustrating a configuration of a programmable logic device according to Example 11 of the present invention.
- the basic configuration of the programmable logic device of the present embodiment is the same as that of the programmable logic device of the tenth embodiment.
- s (s ⁇ 2) logic function memories 410-400 are used.
- Example 10 differs from Example 10 in that (s -1) is connected in a ring shape. That is, a connection circuit 5 s, a MAR 90 s, and a DAS 91 s are provided at a stage subsequent to the logic function memory 41 (s-1), and the output line of the DAS 91 s is connected to the logic function memory. Connected to input line 4-0.
- FIG. 48 A four-stage LUT cascade is realized using these two logic circuit memories 410, 4-1.
- the first-stage LUT is page 0 of logic circuit memory 4-0 (Fig. 48 (a))
- the second-stage LUT is page 0 of logic circuit memory 4-1.
- the third-stage LUT is used as the first page of the logic circuit memory 40-10 (Fig. 48 (c))
- the fourth-stage LUT is used as the 1 ⁇ ⁇ "of the logic circuit memory 4-1.
- Figure 48 (d) Note that the page is fixed here, but the above-mentioned memory packing method may be used to increase the memory usage efficiency of the logic circuit memory. it can.
- the logical function f in (Equation 16) can be represented by a six-stage LUT cascade as shown in Fig. 49 (a).
- the logic function g in (Equation 17) can be represented by a six-stage LUT cascade as shown in Fig. 49 (b).
- these two LUT cascades are realized using a programmable logic device in which six logic circuit memories are connected in a ring.
- the input variables of each stage of the LUT cascade of the logic function ⁇ and the input variables of each stage of the LUT cascade of the logic function g are shifted from each other so as to overlap.
- the two LUT cascades are combined into one LUT ring as shown in FIG.
- two combinational logic circuits are represented by one LUT ring. If this LUT ring is stored in each logic memory, the operations of the two combinational logic circuits f and g can be executed simultaneously by one programmable logic device.
- connection circuit and the connection memory using the connection circuit and the connection memory, the output line of the preceding logic function memory, the input line of the input variable, and the subsequent logic function are used in accordance with the respective target logic functions.
- the connection relationship with the input lines of the memory can be reconfigured. This increases the degree of freedom in combining the number of available logic function rails and the number of input variables. . Then, it becomes possible to design more logic circuits with more objective logic functions with one LUT cascade logic circuit. Further, since the combination of the number of rails and the number of input variables can be optimized, the number of input lines of the logic function memory can be minimized. As a result, memory usage efficiency is improved. As a result, the utilization efficiency of the LSI chip is improved. Therefore, downsizing and high integration of the circuit can be achieved.
- connection circuit enables the output of the logic function memory in the preceding stage to be connected to an external output line for outputting the operation result of the logic function. This makes it possible to extract the output of the logic function memory in the middle of the LUT cascade as an output variable, reduce the required memory amount, and increase the operation speed.
- a memory area having a different LUT of the logic function is allocated to a plurality of target logic functions, and selectively accessible memory areas are selectively switched according to the output of the area designation storage means. It is possible to execute the operation of the objective logic function.
- input variables to be input to each connection circuit and each logic function memory can be individually selected by each input variable selection circuit. Therefore, it is possible to perform operations of a plurality of logic function memories at the same time, thereby enabling pipeline processing.
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Automation & Control Theory (AREA)
- Logic Circuits (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005504294A JP4246200B2 (ja) | 2003-03-31 | 2004-03-31 | プログラマブル論理デバイス |
CA002521167A CA2521167A1 (en) | 2003-03-31 | 2004-03-31 | Programmable logic device |
US10/551,391 US7486109B2 (en) | 2003-03-31 | 2004-03-31 | Programmable logic device |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003093922 | 2003-03-31 | ||
JP2003-093922 | 2003-03-31 | ||
JP2003-105762 | 2003-04-09 | ||
JP2003105762 | 2003-04-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2004088500A1 true WO2004088500A1 (ja) | 2004-10-14 |
Family
ID=33134312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2004/004752 WO2004088500A1 (ja) | 2003-03-31 | 2004-03-31 | プログラマブル論理デバイス |
Country Status (5)
Country | Link |
---|---|
US (1) | US7486109B2 (ja) |
JP (1) | JP4246200B2 (ja) |
KR (1) | KR101000099B1 (ja) |
CA (1) | CA2521167A1 (ja) |
WO (1) | WO2004088500A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007243671A (ja) * | 2006-03-09 | 2007-09-20 | Kddi Corp | 論理プログラマブルデバイス保護回路 |
US7877555B1 (en) * | 2005-09-20 | 2011-01-25 | Altera Corporation | Power-aware RAM processing |
JP2011129141A (ja) * | 2011-01-17 | 2011-06-30 | Renesas Electronics Corp | 半導体集積回路 |
JPWO2014080872A1 (ja) * | 2012-11-20 | 2017-01-05 | 太陽誘電株式会社 | 再構成可能な半導体装置の論理構成方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8832326B1 (en) * | 2005-11-01 | 2014-09-09 | Xilinx, Inc. | Circuit and method for ordering data words |
CN102331733A (zh) * | 2010-07-14 | 2012-01-25 | 中国科学院沈阳计算技术研究所有限公司 | 基于片上可编程系统的数控系统逻辑控制器及其实现方法 |
KR101802945B1 (ko) | 2011-06-27 | 2017-12-29 | 삼성전자주식회사 | 논리 장치 및 이를 포함하는 반도체 패키지 |
MX365907B (es) * | 2012-01-19 | 2019-06-19 | Victor Equipment Co | Ensamble de conducto universal para un soplete. |
TWI636667B (zh) * | 2013-04-02 | 2018-09-21 | Taiyo Yuden Co., Ltd. | 可再構成之邏輯元件 |
WO2016121038A1 (ja) | 2015-01-28 | 2016-08-04 | 三菱電機株式会社 | インテリジェント機能ユニット及びプログラマブルロジックコントローラシステム |
US10141937B2 (en) * | 2016-08-09 | 2018-11-27 | Andapt, Inc. | Pulse-width modulation (PWM) control loop for power application |
TWI640996B (zh) * | 2017-12-21 | 2018-11-11 | 新唐科技股份有限公司 | 記憶體電路及其測試方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE34363E (en) * | 1984-03-12 | 1993-08-31 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
JP4191219B2 (ja) * | 2006-10-30 | 2008-12-03 | エルピーダメモリ株式会社 | メモリ回路、半導体装置及びメモリ回路の制御方法 |
-
2004
- 2004-03-31 JP JP2005504294A patent/JP4246200B2/ja not_active Expired - Fee Related
- 2004-03-31 CA CA002521167A patent/CA2521167A1/en not_active Abandoned
- 2004-03-31 US US10/551,391 patent/US7486109B2/en not_active Expired - Fee Related
- 2004-03-31 WO PCT/JP2004/004752 patent/WO2004088500A1/ja active Application Filing
- 2004-03-31 KR KR1020057009781A patent/KR101000099B1/ko not_active IP Right Cessation
Non-Patent Citations (2)
Title |
---|
SASAO TSUTOMU ET AL.: "Tashutsuryoku kansu no cascade jutsugen to saikosei kano hardware ni yoru jitsugen", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS GIJUTSU KENKYU HOKOKU, vol. 101, no. 3, 6 April 2001 (2001-04-06), pages 57 - 64, XP002904095 * |
TOMITA AKIHIKO ET AL.: "LUT array-gata PLD no sekkei to shisaku", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS GIJUTSU KENKYU HOKOKU, vol. 100, no. 475, 23 November 2000 (2000-11-23), pages 173 - 178, XP002904096 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7877555B1 (en) * | 2005-09-20 | 2011-01-25 | Altera Corporation | Power-aware RAM processing |
JP2007243671A (ja) * | 2006-03-09 | 2007-09-20 | Kddi Corp | 論理プログラマブルデバイス保護回路 |
JP2011129141A (ja) * | 2011-01-17 | 2011-06-30 | Renesas Electronics Corp | 半導体集積回路 |
JPWO2014080872A1 (ja) * | 2012-11-20 | 2017-01-05 | 太陽誘電株式会社 | 再構成可能な半導体装置の論理構成方法 |
Also Published As
Publication number | Publication date |
---|---|
KR101000099B1 (ko) | 2010-12-09 |
US7486109B2 (en) | 2009-02-03 |
JP4246200B2 (ja) | 2009-04-02 |
KR20060002739A (ko) | 2006-01-09 |
CA2521167A1 (en) | 2004-10-14 |
JPWO2004088500A1 (ja) | 2006-07-06 |
US20080204072A1 (en) | 2008-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4664311B2 (ja) | カスケード接続するdspスライスを備えた集積回路 | |
EP1271474B1 (en) | Function block | |
US8495122B2 (en) | Programmable device with dynamic DSP architecture | |
US7472155B2 (en) | Programmable logic device with cascading DSP slices | |
US7467175B2 (en) | Programmable logic device with pipelined DSP slices | |
US7567997B2 (en) | Applications of cascading DSP slices | |
US7480690B2 (en) | Arithmetic circuit with multiplexed addend inputs | |
TWI234737B (en) | Integrated circuit device | |
US20050144213A1 (en) | Mathematical circuit with dynamic rounding | |
JP6250548B2 (ja) | 再構成可能な半導体装置の論理構成方法 | |
JPH0379126A (ja) | 構成可能論理素子 | |
JPH07177008A (ja) | 改良されたプログラマブル論理セルアレイアーキテクチャ | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
WO2004088500A1 (ja) | プログラマブル論理デバイス | |
JP2006518144A (ja) | プログラム可能な論理セルのアレイをもつ電子回路 | |
US20070260805A1 (en) | Computer with a Reconfigurable Architecture for Integrating a Global Cellular Automaton | |
JP6405262B2 (ja) | 再構成可能な論理デバイス | |
JP4330472B2 (ja) | 処理装置 | |
Havrilov et al. | Design of Digital Data Selectors on FPGA in a Laboratory Environment | |
Warrier et al. | Reconfigurable DSP block design for dynamically reconfigurable architecture | |
JP3567689B2 (ja) | フィールドプログラマブルゲートアレイ | |
JP2005275698A (ja) | データフローグラフ処理方法、リコンフィギュラブル回路および処理装置 | |
Cascades | Realization of Sequential Circuits by Look-Up Table Rings | |
Lai et al. | A new architecture for time-multiplexed FPGA and its circuit partitioning algorithm | |
Astola et al. | Synthesis with Multiplexers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2005504294 Country of ref document: JP |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1020057009781 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2521167 Country of ref document: CA Ref document number: 20048087832 Country of ref document: CN |
|
WWP | Wipo information: published in national office |
Ref document number: 1020057009781 Country of ref document: KR |
|
122 | Ep: pct application non-entry in european phase | ||
WWE | Wipo information: entry into national phase |
Ref document number: 10551391 Country of ref document: US |