|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbyucc.jhdl.netlisters.Netlister
This is the superclass for netlisters, classes that can convert from the internal representation of JHDL to file outputs of another format.
Field Summary | |
protected boolean |
flat_netlist
Whether the netlist should be flat. |
protected static JHDLOutput |
jout
Where to print messages during the netlist |
protected static boolean |
printTimestamp
Whether or not to print a timestamp, if that makes sense. |
protected Cell |
topcell
The root cell of the netlist |
Constructor Summary | |
protected |
Netlister()
Construct a Netlister that ignores the #flatNetlist flag. |
protected |
Netlister(boolean flat_netlist)
Construct a Netlister, with the given behavior of flat vs. |
Method Summary | |
protected abstract void |
expand(Cell c,
NetlistWriter output)
Given a cell, returns the text to go in the output file for cell expansion. |
protected abstract void |
footer(Cell c,
NetlistWriter output)
Given a cell, returns any concluding text to go in the output file after cell expansion |
abstract java.lang.String |
generateFilename(Cell c)
Given a cell, generate the default file name to place its netlist in |
boolean |
getFlatNetlistFlag()
Returns the current value of whether EDIF netlisting will be flat. |
static boolean |
getPrintTimestamp()
Returns whether the netlist will include a timestamp, if that makes sense. |
protected abstract void |
header(Cell c,
NetlistWriter output)
Given a cell, returns any initial text to go in the output file before cell expansion |
void |
netlist(Cell top)
Netlists the given cell and its hierarchical subtree. |
void |
netlist(Cell top,
boolean flat)
Netlists the given cell and its hierarchical subtree |
void |
netlist(Cell top,
boolean flat,
NetlistWriter output)
Netlists the given cell and its hierarchical subtree. |
void |
netlist(Cell top,
boolean flat,
java.lang.String filename)
Netlists the given cell and its hierarchical subtree |
void |
netlist(Cell top,
java.lang.String filename)
Netlists the given cell and its hierarchical subtree |
boolean |
setFlatNetlistFlag(boolean flag)
Sets whether the netlist should be flat (the contents of the top-level cell are netlisting primitives) or hierarchical (there can be intermediate cells between the top level and primitives). |
static boolean |
setPrintTimestamp(boolean b)
Sets whether the netlist will include a timestamp, if that makes sense. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected static JHDLOutput jout
protected Cell topcell
protected static boolean printTimestamp
protected boolean flat_netlist
Netlister(boolean)
.
If this does not make sense for a given netlister, it may be ignored.
Constructor Detail |
protected Netlister()
#flatNetlist
flag.
protected Netlister(boolean flat_netlist)
flat_netlist
- whether the netlist should be flat (if that makes sense)Method Detail |
public static final boolean setPrintTimestamp(boolean b)
b
- the new value of the timestamp flag.
public static final boolean getPrintTimestamp()
public final boolean setFlatNetlistFlag(boolean flag)
flag
- the new value of the flag
getFlatNetlistFlag()
public final boolean getFlatNetlistFlag()
public final void netlist(Cell top)
top
- the cell to netlist
NetlistException
- if the netlist failspublic final void netlist(Cell top, boolean flat)
top
- the cell to netlistflat
- whether the netlist should be flat (calls setFlatNetlistFlag(boolean)
)
NetlistException
- if the netlist failspublic final void netlist(Cell top, boolean flat, java.lang.String filename)
top
- the cell to netlistflat
- whether the netlist should be flat (calls setFlatNetlistFlag(boolean)
)filename
- the target file for the netlist
NetlistException
- if the netlist fails
MJW: I think we should remove all netlist calls with a String parameter.
It should be the callers responsibility (i.e. the TechMapper)
to determine the destination of the data. It is very messy to deal
with all these calls to netlist that have both String parameters
and NetlistWriter parameters. I have left the netlist methods with
String parameters for fear I will break something if I take it out.public void netlist(Cell top, boolean flat, NetlistWriter output)
top
- the cell to netlistoutput
- the NetlistWriter to which the netlist will be written
NetlistException
- if the netlist failspublic void netlist(Cell top, java.lang.String filename)
top
- the cell to netlistfilename
- the target file for the netlist
NetlistException
- if the netlist fails
MJW: I think we should remove all netlist calls with a String parameter.
It should be the callers responsibility (i.e. the TechMapper)
to determine the destination of the data. It is very messy to deal
with all these calls to netlist that have both String parameters
and NetlistWriter parameters. I have left the netlist methods with
String parameters for fear I will break something if I take it out.public abstract java.lang.String generateFilename(Cell c)
c
- the cell to generate the filename for
protected abstract void header(Cell c, NetlistWriter output)
c
- the top-level cell for which the netlist is being generatedoutput
- the NetlistWriter to print the netlist toprotected abstract void expand(Cell c, NetlistWriter output)
c
- the cell to be expandedoutput
- the NetlistWriter to print the netlist toprotected abstract void footer(Cell c, NetlistWriter output)
c
- the top-level cell for which the netlist is being generatedoutput
- the NetlistWriter to print the netlist to
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |