busConfigArguments
The OptoDesigner bus-router simplifies complex (delay based) routing. It needs a few different BBs to be setup per PDK, which can be generic waveguide curves also.For the argument/order you can look in the /*default:*/ below, which shows the curve that is used if you do not overrule it. wwg is the configured waveguide width for the bus.
// create straight in some way, must support a port/port spec via L=null abstract layout straight(double L nullable UnitInfo "micron") TexDoc "Create a straight waveguide"; /*default:*/ ml::Straight( cin->this@in0,cout->this@out0 : wfix(wwg), L == null?null:max(0,L)); // create taper in some way, L=null allows sub-class to spec it abstract layout taperToBus(double win UnitInfo "micron",double L nullable UnitInfo "micron") TexDoc "Width taper"; /*default:*/ ml::Straight( cin->this@in0,cout->this@out0 : wlin(win,wwg), L); // create taper in some way, L=null allows sub-class to spec it abstract layout taperFromBus(double wto UnitInfo "micron",double L nullable UnitInfo "micron") TexDoc "Width taper"; /*default:*/ ml::Straight( cin->this@in0,cout->this@out0 : wlin(wwg,wto), L); // create 90deg bend in some way abstract layout bend90(int up RangeSpec[-2,2]) TexDoc "Manhattan bend style"; /*default:*/ ml::BendPolar( cin->this@in0,cout->this@out0 : wfix(wwg), wwr, up*90); // create 180deg bend in some way abstract layout bend180(int up RangeSpec[-2,2]) TexDoc "Manhattan bend style"; /*default:*/ ml::BendPolar( cin->this@in0,cout->this@out0 : wfix(wwg), wwr, up*180); // create some bend abstract layout bend(double r UnitInfo "micron",double a UnitInfo "Degree") TexDoc "General bend"; /*default:*/ ml::BendPolar( cin->this@in0,cout->this@out0 : wfix(wwg),r,a);
The string data is the argument for the PDK bb element based on the mapping from above. In addition to the (very few) arguments of the layout's above, you can use:
final function getWidth() TexDoc "Return width"
final function getRadius() TexDoc "Return radius"
final function getDistance() TexDoc "Return wg/wg distance"
final function getDistanceCenterCenter() TexDoc "Center - center distance of 2 waveguides"
final function getTaperAngle() TexDoc "Return default angle for tapers"
For the busConfigElement arguments: L,win,wbus
- straightL,wwg
- taperToFromBusL,wext,wbus; use the argument order for the ``into'' the bus; the widths will be reversed for the out-going taper
- bend90up,wwr,wwg
- bendr,a,wwg
Structure
This element is simple - it does not have attributes or elements. The text that fills up the...
is value used.
<busConfigArguments> ... </busConfigArguments>
XSD The schema file can be downloaded or viewed at xPDK_OptoDesigner.