Freeway routing system for a gate array -> Monitor Keywords
Fresh Patents
Monitor Patents Patent Organizer How to File a Provisional Patent Browse Inventors Browse Industry Browse Agents Browse Locations
     new ** File a Provisional Patent ** 
site info Site News  |  monitor Monitor Keywords  |  monitor archive Monitor Archive  |  organizer Organizer  |  account info Account Info  |  
04/19/07 | 22 views | #20070089082 | Prev - Next | USPTO Class 716 | About this Page  716 rss/xml feed  monitor keywords

Freeway routing system for a gate array

USPTO Application #: 20070089082
Title: Freeway routing system for a gate array
Abstract: A freeway routing system for connecting input and output ports of interface groups of tiles in a field programmable gate array. The freeway system has a first set of routing conductors configured to transfer signals between the input ports of interface groups in a first tile of the field programmable gate array and the output ports of interface groups of other tiles in the field programmable gate array. The first set conductors include vertical conductors that form intersections with horizontal conductors and programmable interconnect elements located at the intersections of the vertical conductors and horizontal conductors in a diagonal orientation to connect each of the horizontal conductors to one of the vertical conductors. (end of abstract)
Agent: Sierra Patent Group, Ltd. - Minden, NV, US
Inventors: Tong Liu, Jung-Cheun Lien, Sheng Feng, Eddy C. Huang, Chung-Yuan Sun, Naihui Liao, Weidong Xiong
USPTO Applicaton #: 20070089082 - Class: 716016000 (USPTO)
Related Patent Categories: Data Processing: Design And Analysis Of Circuit Or Semiconductor Mask, Circuit Design, Routing (e.g., Routing Map, Netlisting), Pla, Pld, Fpga, Or Mcm
The Patent Description & Claims data below is from USPTO Patent Application 20070089082.
Brief Patent Description - Full Patent Description - Patent Application Claims  monitor keywords

PRIORITY CLAIM

[0001] This application a divisional of co-pending U.S. patent application Ser. No. 10/077,189, filed Feb. 15, 2002, which is a continuation-in-part of U.S. patent application Ser. No. 09/654,240, filed on Sep. 2, 2000, now issued as U.S. Pat. No. 6,476,636, which are hereby incorporated by reference as if set forth herein.

BACKGROUND OF THE DISCLOSED SYSTEM

[0002] 1. Field of the Disclosed System

[0003] The present disclosed system relates to field-programmable gate arrays, and more particularly, to a freeway architecture for tileable field-programmable gate arrays.

[0004] 2. Description of the Related Art

[0005] A field-programmable gate array (FPGA) is an integrated circuit (IC) that includes a two-dimensional array of general-purpose logic circuits, called cells or logic blocks, whose functions are programmable. The cells are linked to one another by programmable buses. The cell types may be small multifunction circuits (or configurable functional blocks or groups) capable of realizing all Boolean functions of a few variables. The cell types are not restricted to gates. For example, configurable functional groups typically include memory cells and connection transistors that may be used to configure logic functions such as addition, subtraction, etc., inside of the FPGA. A cell may also contain one or two flip-flops. Two types of logic cells found in FPGAs are those based on multiplexers and those based on programmable read only memory (PROM) table-lookup memories. Erasable FPGAs can be reprogrammed many times. This technology is especially convenient when developing and debugging a prototype design for a new product and for small-scale manufacture.

[0006] FPGAs typically include a physical template that includes an array of circuits, sets of uncommitted routing interconnects, and sets of user programmable switches associated with both the circuits and the routing interconnects. When these switches are properly programmed (set to on or off states), the template or the underlying circuit and interconnect of the FPGA is customized or configured to perform specific customized functions. By reprogramming the on-off states of these switches, an FPGA can perform many different functions. Once a specific configuration of an FPGA has been decided upon, it can be configured to perform that one specific function.

[0007] The user programmable switches in an FPGA can be implemented in various technologies, such as ONO antifuse, M-M antifuse, SRAM memory cell, Flash EPROM memory cell, and EEPROM memory cell. FPGAs that employ fuses or antifuses as switches can be programmed only once. A memory cell controlled switch implementation of an FPGA can be reprogrammed repeatedly. In this scenario, an NMOS transistor is typically used as the switch to either connect or disconnect two selected points (A, B) in the circuit. The NMOS' source and drain nodes are connected to points A, B respectively, and its gate node is directly or indirectly connected to the memory cell. By setting the state of the memory cell to either logical "1" or "0", the switch can be turned on or off and thus point A and B are either connected or disconnected. Thus, the ability to program these switches provides for a very flexible device.

[0008] FPGAs can store the program that determines the circuit to be implemented in a RAM or PROM on the FPGA chip. The pattern of the data in this configuration memory CM determines the cells' functions and their interconnection wiring. Each bit of CM controls a transistor switch in the target circuit that can select some cell function or make (or break) some connection. By replacing the contents of CM, designers can make design changes or correct design errors. The CM can be downloaded from an external source or stored on-chip. This type of FPGA can be reprogrammed repeatedly, which significantly reduces development and manufacturing costs.

[0009] In general, an FPGA is one type of programmable logic device (PLD), i.e., a device that contains many gates or other general-purpose cells whose interconnections can be configured or "programmed" to implement any desired combinational or sequential function. As its name implies, an FPGA is "field-programmable", meaning that the device is generally programmed by designers or end users "in the field" via small, low-cost programming units. This is in contrast to mask programmable devices which require special steps in the IC chip-manufacturing process.

[0010] A field-programming unit typically uses design software to program the FPGA. The design software compiles a specific user design, i.e., a specific configuration of the programmable switches desired by the end-user, into FPGA configuration data. The design software assembles the configuration data into a bit stream, i.e., a stream of ones and zeros, that is fed into the FPGA and used to program the configuration memories for the programmable switches. The bit stream creates the pattern of the data in the configuration memory ("CM") that determines whether each memory cell stores a "1" or a "0". The stored bit in each CM controls whether its associated transistor switch is turned on or off. End users typically use design software to test different designs and run simulations for FPGAs.

[0011] When an FPGA that has been programmed to perform one specific function is compared to an application specific integrated circuit (ASIC) that has been designed and manufactured to perform that same specific function, the FPGA will necessarily be a larger device than the ASIC. This is because FPGAs are very flexible devices that are capable of implementing many different functions, and as such, they include a large amount of excess circuitry that is either not used or could be replaced with hard-wired connections when performing one specific function. Such excess circuitry generally includes the numerous programmable transistor switches and corresponding memory cells that are not used in implementing the one specific function, the memory cells inside of functional groups, and the FPGA programming circuitry. This excess circuitry is typically eliminated in the design of an ASIC which makes the ASIC a smaller device. An ASIC, on the other hand, is not a flexible device. In other words, once an ASIC has been designed and manufactured it cannot be reconfigured to perform a different function like is possible with an FPGA.

[0012] Designers of FPGAs (as well as other PLDs) often provide their circuit designs to IC manufacturers who typically manufacture the FPGAs in two different ways. First, an FPGA design may be manufactured as its own chip with no other devices being included in the IC package. Second, an FPGA design may be embedded into a larger IC. An example of such a larger IC is a system on a chip (SOC) that includes the embedded FPGA as well as several other components. The several other components may include, for example, a microprocessor, memory, arithmetic logic unit (ALU), state machine, etc. In this scenario the embedded FPGA may be only a small part of the whole SOC.

[0013] Whether an FPGA is to be manufactured as its own IC or embedded into a larger IC (e.g., an SOC), the intended application/use of the IC will determine the size and complexity of the FPGA that is needed. In some scenarios a large FPGA is needed, and in other scenarios a small FPGA is needed. Because conventional FPGAs are typically designed for their intended application/use, an FPGA designed to fulfill a need for a small FPGA must be substantially redesigned for use where a larger FPGA is needed. Therefore, it would be highly advantageous to have an FPGA apparatus and method that could be easily adapted for use in both ICs requiring large FPGAs and ICs requiring small FPGAs. Furthermore, it would be highly advantageous if such FPGA apparatus and method could be used in both the scenario where the FPGA is to be manufactured as its own IC and the scenario where the FPGA is to be embedded into a larger IC.

BRIEF SUMMARY OF THE DISCLOSED SYSTEM

[0014] The disclosed system relates to a freeway routing system for a field programmable gate array (FPGA). The system comprising a first FPGA tile. The first FPGA tile comprising a plurality of functional groups (FGs) arranged in rows and columns; a plurality of interface groups (IGs) surrounding the plurality of FGs such that one IG is positioned at each end of each row and column, each of the IGs having a first, second and third set of input ports and a first, second and third set of output ports; a freeway set of routing conductors configured to transfer signals to said first, second and third input ports, and configured to transfer signals from said first, second and third output ports; said freeway set of routing conductors comprising: a plurality of vertical conductors that form intersections with a plurality of horizontal conductors; and programmable interconnect elements located at said intersections in a diagonal orientation on said FPGA tile.

[0015] A better understanding of the features and advantages of the present disclosed system will be obtained by reference to the following detailed description of the disclosed system and accompanying drawings which set forth an illustrative embodiment in which the principles of the disclosed system are utilized.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016] FIG. 1 is a block diagram illustrating an FPGA tile in accordance with the present disclosed system.

[0017] FIGS. 2, 3A, 3B and 4 are block diagrams illustrating various configurations of FPGA tiles in accordance with the present disclosed system.

[0018] FIG. 5 is a block diagram illustrating in further detail the FPGA tile shown in FIG. 1.

[0019] FIG. 6 is a block diagram illustrating in further detail one of the functional groups (FGs) shown in FIG. 5.

[0020] FIG. 7 is a schematic diagram illustrating in further detail the FG shown in FIG. 6.

Continue reading...
Full patent description for Freeway routing system for a gate array

Brief Patent Description - Full Patent Description - Patent Application Claims
Click on the above for other options relating to this Freeway routing system for a gate array patent application.
###
monitor keywords

How KEYWORD MONITOR works... a FREE service from FreshPatents
1. Sign up (takes 30 seconds). 2. Fill in the keywords to be monitored.
3. Each week you receive an email with patent applications related to your keywords.  
Start now! - Receive info on patent apps like Freeway routing system for a gate array or other areas of interest.
###


Previous Patent Application:
Net/wiring selection method, net selection method, wiring selection method, and delay improvement method
Next Patent Application:
Method and design system for semiconductor integrated circuit
Industry Class:
Data processing: design and analysis of circuit or semiconductor mask

###

FreshPatents.com Support
Thank you for viewing the Freeway routing system for a gate array patent info.
IP-related news and info


Results in 0.29372 seconds


Other interesting Feshpatents.com categories:
Medical: Surgery Surgery(2) Surgery(3) Drug Drug(2) Prosthesis Dentistry