Multi-FPGA prototyping of an ASIC circuit
First Claim
1. A method of generating configuration data for a prototype, the prototype comprising a plurality of programmable devices interconnected by a plurality of physical tracks, the method comprising:
- receiving, using a computer, a logic design for implementation on the prototype, the logic design comprising a hierarchy of interconnected logic modules;
creating, using the computer, a new hierarchy of logic modules comprising a group of logic modules preserved from the received logic design and flattened logic corresponding to logic modules from the received logic design that are flattened;
partitioning, using the computer, the new hierarchy of logic modules into regions, each region comprising one or more programmable chips, while reducing a cost function based on a number of multiplexed signals of a critical combinatorial path and an amount of inter-region communications on the physical tracks connecting the programmable devices; and
generating, using the computer, the configuration data for the prototype, the configuration data comprising routing assignments among the programmable devices using the physical tracks of the prototype.
3 Assignments
0 Petitions
Accused Products
Abstract
The invention concerns a method of designing a prototype comprising a plurality of programmable chips, such as FPGA chips, for modelling an ASIC circuit, said ASIC circuit being intended to implement a logic design comprising a hierarchy of logic modules communicating together. The method according to the invention comprises steps of: —partitioning the hierarchy of logic modules into regions each comprising one or a plurality of programmable chips, while minimising: —inter-region communications in a manner correlated to the physical connections available between each pair of programmable chips; —and the number of crossings of programmable chips of a critical combinatorial path; —establishing a routing of the signals between programmable chips using the physical resources available.
17 Citations
20 Claims
-
1. A method of generating configuration data for a prototype, the prototype comprising a plurality of programmable devices interconnected by a plurality of physical tracks, the method comprising:
-
receiving, using a computer, a logic design for implementation on the prototype, the logic design comprising a hierarchy of interconnected logic modules; creating, using the computer, a new hierarchy of logic modules comprising a group of logic modules preserved from the received logic design and flattened logic corresponding to logic modules from the received logic design that are flattened; partitioning, using the computer, the new hierarchy of logic modules into regions, each region comprising one or more programmable chips, while reducing a cost function based on a number of multiplexed signals of a critical combinatorial path and an amount of inter-region communications on the physical tracks connecting the programmable devices; and generating, using the computer, the configuration data for the prototype, the configuration data comprising routing assignments among the programmable devices using the physical tracks of the prototype. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer configured to execute a method, the method comprising:
-
receiving, using the computer, a logic design for implementation on a prototype comprising a plurality of programmable devices interconnected by a plurality of physical tracks, the logic design comprising a hierarchy of interconnected logic modules; flattening, using the computer, logic modules of the logic design that cannot meet a design constraint of the respective programmable devices; creating, using the computer, a new hierarchy of logic modules comprising the flattened logic modules and preserved logic modules of the logic design; partitioning, using the computer, the new hierarchy of logic modules into regions, a respective region comprising one or more of the programmable devices, while reducing multiplexed signals and a number of traversals of programmable devices of a critical combinatorial path of the logic design; and creating, using the computer, a routing of signals between the programmable chips of the prototype by using the physical tracks of the prototype. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A prototyping system for implementing a design comprising a hierarchy of design modules, the prototyping system comprising:
-
a board comprising physical tracks; and a plurality of programmable devices being interconnected by the physical tracks, respective programmable devices of the plurality of programmable devices being configured by a method comprising; preserving a first group of the design modules; flattening a second group of the design modules; creating a new hierarchy of design modules comprising the first group of the preserved design modules and the second group of the flattened design modules; partitioning the new hierarchy of design modules into regions while reducing a cost function based on a number of multiplexed signals and a number of traversals of programmable devices of a critical path; and creating a routing of signals between the programmable devices. - View Dependent Claims (17, 18, 19, 20)
-
Specification