![]() |
|
|
|||||||
![]() |
VHDL - Random logic verilog gate netlist generator |
|
|
Thread Tools | Search this Thread |
|
|
#1 |
|
We have a need to create hundreds of non proprietary digital test structures,
each which would fit a pre-determined pinouts for a pre-determined block size & a pre-determined block shape (e.g., rectilinear). Can you provide a pointer to a good random logic verilog gate netlist generator? I'd expect to feed it technology & macro LEF; the input & output pins; and either a gate count, or a block area (most likely a gate count). After running this random-logic verilog-gate generator, we would then place & route the results. The easy part is the place & route. The hard part is to come up with hundreds of non-proprietary sets of random (well mixed) gates to fill the blocks up with. Any pointers would be appreciated. Simon Simon S. IBM |
|
|
|
|
#2 |
|
Posts: n/a
|
(Simon S. IBM) wrote in message news:<. com>...
> Can you provide a pointer to a good random logic verilog > gate netlist generator? Such a tool does not exist. It will never exist. I tried to write one long ago but I failed. What you'll need to do is find some generic RTL and just place and route that generic RTL. I use ARM or Sparc code which is out there in the public domain. Just snatch a few tens of thousands of lines and place and route it. Send me an email and I'll send you the complete ARM core or Sparc. Glenn Glenn Heraty |
|
|
|
#3 |
|
Posts: n/a
|
(Glenn Heraty) wrote in message news:<. com>...
> (Simon S. IBM) wrote in message news:<. com>... > > Can you provide a pointer to a good random logic verilog > > gate netlist generator? > > Such a tool does not exist. Pardon me, but, you're absolutely wrong! I have seen a handful of these tools (often used for p&r tests). In fact, I have a perl program (gateGen.pl) and a C program (genGates.c) which I'll send to you (as soon as I dig them out of my src directory). They work wonders. I even seem to remember a skill program (generateVerilog.il ???) posted to comp.lang.verilog or comp.cad.cadence a few years back (someone refresh my failing memory). The perl program was provided to me by an application engineer at Cadence who used it to generate test fixtures. It could use some work, for example, it asks you the number of pins but then splits that number in half to make half input and half output pins of names it chooses. This necessitates manual editing of the resultant verilog gate netlist to get the pins correct, but, that's generally an easy task. It does generate as many gates as you tell it, in random arrangement, all hooked up properly. The C program works fine but I hate compiling (I never was that good at it), so I use the perl program almost exclusively with a bit of vi editing of the results. I use the Cadence verilogin feature to generate, place, and route a schematic so that the nearly instantaneous DFII schematic and layout results are Assura DRC/LVS correct. I often use the Cadence design kit at 180nm (I hear they have a new kit at 90 and another at 65nm) which contains plenty of standard cells, LEF, TLF, CDL, EDIF symbols, Pcells, DRC/LVS/RCX rules, etc. for my purposes. Let the group know how my two programs work for you. tenlayermatal Kelvin L. |
|
|
|
#4 |
|
Posts: n/a
|
On Fri, 13 Feb 2004 19:53:32 -0800, Simon S. IBM wrote:
> We have a need to create hundreds of non proprietary digital test structures, > each which would fit a pre-determined pinouts for a pre-determined > block size & a pre-determined block shape (e.g., rectilinear). > > Can you provide a pointer to a good random logic verilog gate netlist generator? > > I'd expect to feed it technology & macro LEF; the input & output > pins; and either a gate count, or a block area (most likely a gate count). > > After running this random-logic verilog-gate generator, we would > then place & route the results. The easy part is the place & route. > The hard part is to come up with hundreds of non-proprietary > sets of random (well mixed) gates to fill the blocks up with. > > Any pointers would be appreciated. > Simon Try HDLmaker http://www.polybus.com/hdlmaker/users_guide/ HDLmaker has a C like language that will allow you to generate this sort of thing. Also HDLmaker can generate Xilinx floorplanning statements. BTW It looks like you are looking for Xilinx FPGA test patterns. I have an extensible set of Xilinx FPGA test patterns that I offer as a product. http://www.polybus.com/xilinx_test_patterns/ B. Joshua Rosen |
|