Back to results
US 2014/0229925 A1Published application
Method and apparatus for compiling regular expressions
AssigneeMicron Technology, Inc.
InventorsPaul Glendenning, Junjuan Xu
Life of this patent
Estimating the term…
Abstract
Apparatus, systems, and methods for a compiler are described. One such compiler converts source code into an automaton comprising states and transitions between the states, wherein the states in the automaton include a special purpose state that corresponds to a special purpose hardware element. The compiler converts the automaton into a netlist, and places and routes the netlist to provide machine code for configuring a target device.
Claims16
A computer comprising:
- a memory including instructions stored thereon;
- and
- a processor communicatively coupled to the memory, wherein the instructions, when executed by the processor, causes the processor to:
- convert source code into an automaton comprising states and transitions between the states, wherein the states in the automaton include a special purpose state that corresponds to a special purpose hardware element;
- convert the automaton into a netlist;
- and
- place and route the netlist to provide machine code for configuring a target device.
4 more elements
A computer-implemented method comprising:
- parsing, using one or more processors, source code into a syntax tree;
- converting, using the one or more processors, the syntax tree into an automaton, wherein the automaton defines a model of behavior having a plurality of states and transitions between the plurality of states, and wherein the automaton structure is dictated by a target hardware device;
- converting, using the one or more processors, the automaton into a netlist, wherein the netlist includes a plurality of instances, each instance corresponding to a hardware element of a target device;
- placing, using the one or more processors, each of the instances, wherein placing includes assigning each instance in the netlist to a hardware element of the target device;
- routing, using the one or more processors, the connections between the hardware elements as a function of the netlist;
- and
- creating programming data used to program the target device based on placing and routing.
4 more elements
A programmable device comprising:
- a plurality of programmable elements including one or more inputs and one or more outputs;
- an input block and an output block for interfacing a portion of the plurality of programmable elements to external circuits;
- a plurality of programmable switches communicatively connecting the plurality of programmable elements and the input block and the output block, wherein the setting of one or more programmable switches selectively controls signal routing between any two or more of the plurality of programmable elements and the plurality of programmable switches;
- and
- a plurality of registers configured to store programming data capable of configuring the plurality of programmable elements and the plurality of programmable switches, wherein the programming data is created by:
- parsing, using one or more processors, source code into a syntax tree;
- converting, using the one or more processors, the syntax tree into an automaton, wherein the automaton defines a model of behavior having a plurality of states and transitions between the plurality of states, and wherein the automaton structure is dictated by a target hardware device;
- converting, using the one or more processors, the automaton into a netlist, wherein the netlist includes a plurality of instances, each instance corresponding to a hardware element of a target device;
- placing, using the one or more processors, each of the instances, wherein placing includes assigning each instance in the netlist to a hardware element of the target device;
- routing, using the one or more processors, the connections between the hardware elements as a function of the netlist;
- and
- creating programming data used to program the target device based on placing and routing.
9 more elements
Dependencies are inferred from the claim text.