New Genesis version (r10085) now as default on the Stanford servers

2 views
Skip to first unread message

Ofer Shacham

unread,
Feb 17, 2012, 2:15:04 PM2/17/12
to genesis...@googlegroups.com
New Genesis release and GUI release are now available, and already placed as default on the Stanford server. Everything is fully backward compatible.
(Non-Stanford users, please email me to get a tar ball for both gui and genesis latest version)

What's new?
There are two new features. The first is another output -- tiny_hierarchy_out.xml (created per Megan's request). The second is another function/method call -- synonym (created per Qiuling's request).

Details: (also fully documented at genesis2.stanford.edu)
"tiny_<xmlFileName>.xml" --- 
This is an xml description of the design hierarchy, which only contains parameters that were modified (i.e., not in their default value). It does not contain any other information which means it is typically 10-100x smaller than the full xml. When you use the "-hierarchy SomeName.xml" flag you will now get  SomeName.xml as well as  small_SomeName.xml and  tiny_SomeName.xml. Further more, the GUI is now set to search for tiny_SomeName.xml and merge changes into it (if exists). That makes both Genesis and the GUI much much faster.

"synonym" --- 
API function/method call that helps you make fancy names for your module templates.
NOTE: This function manipulates the names of templates, and therefore the names of the generated modules and the generated verilog files). Not the names of instances of those modules.
//; synonym("sourceTemplateName", "renamedTemplateName"); 
For example, say you have addr.vp that has a bunch of parameters. And say you want to create multiple versions of it that you can easily grep for (e.g., in your physical design scripts). So you don't want those elaborated modules to be called adder_unq1, addr_unq2, and so on. Instead you want fancy_adder and simple_adder. For the case stated above this would be:
//; synonym("adder", "simple_adder");
//; synonym("adder", "fancy_adder");
OR as method call:
//; $self->synonym("adder", "simple_adder");
//; $self->synonym("adder", "fancy_adder");
A synonym of a synonym is also ok:
//; synonym("fancy_adder", "super_fancy_adder");
Therefore the following code will result in the generation the verilog modules adder_unq1adder_unq2 but also simple_adder_unq1super_fancy_adder_unq1 and super_fancy_adder_unq2, even though simple_adder_unq1 is functionally equivalent to adder_unq1 and super_fancy_adder_unq1 is functionally equivalent to adder_unq2:
//; my $obj1 = generate('adder', 'adder_u1', WIDTH=>4);
//; my $obj2 = generate('adder', 'adder_u2', WIDTH=>8);
//; my $obj3 = generate('simple_adder', 'adder_u3', WIDTH=>4);
//; my $obj4 = generate('super_fancy_adder', 'adder_u4', WIDTH=>8);
//; my $obj5 = generate('super_fancy_adder', 'adder_u5', WIDTH=>12);
Note that you could also create addersimple_adder and so on (i.e., without the "_unq1" suffix) by using the generate_base call (see below), as long as you only generate those once in your design. Otherwise Genesis will through an error message and stop.
//; my $obj1 = generate_base('adder', 'adder_u1', WIDTH=>4);
//; my $obj2 = generate_base('simple_adder', 'adder_u2', WIDTH=>4);
//; my $obj3 = generate_base('super_fancy_adder', 'adder_u3', WIDTH=>4);
//; my $obj4 = generate_base('super_fancy_adder', 'adder_u4', WIDTH=>8); <-- This will create an ERROR message because generate_base does not create unique modules.

Best,
Ofer.


--

Ofer Shacham, PhD
Stanford University / Chip Genesis, Inc.  
Mailto:sha...@alumni.stanford.edu
Phone: 1-650-8626017


Toan Pham

unread,
Feb 17, 2012, 2:26:39 PM2/17/12
to genesis...@googlegroups.com

Hi Ofer,

Please send me the tar ball.

Thanks,

Toan


This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

Qiuling Zhu

unread,
Feb 17, 2012, 2:36:09 PM2/17/12
to genesis...@googlegroups.com
Hi Ofer,

The new features look great! Please send me the tar ball as well.

Thanks,
Jolin
--
There will be miracle when you believe!
Reply all
Reply to author
Forward
0 new messages