NETCHANGE(5)
π NETCHANGE π
bestie, this is the manual page for NETCHANGE(5) β the format of netchange files read by irsim. sit down, grab a strawberry π, and let's get into it.
β¨ NAME β¨
netchange β the format of netchange files that irsim reads. that's it, that's the name, slay π
πΈ DESCRIPTION πΈ
okay so a netchange file is literally just a series of lines, and every single line kicks off with a key letter. that first letter is the whole vibe check β it decides how the rest of the line gets interpreted. here's the complete lineup of key letters we understand, no gatekeeping:
|any text β lines starting with a vertical bar are comments and the program just ignores them. iconic. mind your business energy πaddtype gate source drain length width [area] β adds a new transistor of type to the network. rn, type can be:nβ n-channel enhancement transistor πpβ p-channel enhancement transistor πdβ depletion transistor (for NMOS) π
the names of the nodes that the gate, source, and drain of the transistor are connected to are given by gate, source, and drain respectively. the length and width of the transistor are given by length and width respectively. and the area parameter β if you give it, it will use that number as the area for calculating the gate capacitance. length and width should be in lambda units, area should be in lambda^2 units, and these get internally multiplied by the LAMBDA factor from the configuration (.prm) file. math girlie behavior β¨
deletetype gate source drain length width [area] β deletes an existing transistor from the net. all the parameters mean exactly the same thing as for theaddcommand. bye bestie π¦movetype gate source drain length width [area] g s d β moves an existing transistor to a new location in the net. type, gate, source, drain, length, width, and area all mean the same as for theaddcommand. g, s, and d are the names of the nodes that the gate, source and drain should be connected to. if a particular terminal(s) is not supposed to be re-connected, you can specify the name using an"*". any or all of g, s, and d may be"*". for example, to move the gate of an n-channel transistor from nodeoldtonew, you'd use this command:
m n old src_node drn_node 4 2.2 new * *
ngl, note that the drain and source terminals, and the g and s terminals, are interchangeable β the simulator will know if these are swapped. so that last example could also have been written:
m n old drn_node src_node 4 2.2 new * *
capacitancenode value β changes the capacitance of node by value picofarads. value may be negative, which decreases the node's capacitance. node is the node name. negative? okay go off π₯Nnode metal-area poly-area diff-area diff-perimeter β changes the capacitance of node using the area and perimeter info of the metal, polysilicon, and diffusion layers. all the parameters should be in lambda (or lambda^2 for areas) units, and they get internally converted to the appropriate capacitance as defined in the configuration file. the values can be negative to decrease the capacitance π«Mnode M2A M2P MA MP PA PP DA DP PDA PDP β changes the capacitance of node, using the following geometrical info:M2Aβ area of 2nd-level metalM2Pβ perimeter of 2nd-level metalMAβ area of 1st-level metalMPβ perimeter of 1st-level metalPAβ area of polysiliconPPβ perimeter of polysiliconDAβ area of n-diffusionDPβ perimeter of n-diffusionPDAβ area of p-diffusionPDPβ perimeter of p-diffusion
all perimeter values should be in lambda units, and area values should be in lambda^2 units. the perimeter measures are half of the actual total perimeter (i.e., they are the sum of the lengths of the top and one side). and again, the values may be negative to decrease the capacitance of the node π§
thresholdnode low high β changes the threshold voltages of node. low and high should be in normalized voltage units (i.e. floating-point numbers in the range0.0to1.0). stay in your range bestie πDelaynode tplh tphl β changes the delays for node to be tplh nanoseconds for low-to-high transitions, and tphl ns. for high-to-low transitions. these should be absolute numbers, not relative increments/decrements. periodt.
NOTE: for all commands, only the first letter is significant β the rest of the string will be ignored. they're only shown in full here for clarity. so yes, m really does the thing π
π BUGS π
this is an experimental interface for the incremental simulator and is very likely to change in the future. it's giving "under construction", no cap π
π SEE ALSO π
irsim(5) sim(5) presim(1)
okay that's the whole page, you ate that π«Ά this whole thing came to you courtesy of the 3rd Berkeley Distribution, and yes the page is literally called NETCHANGE(5) β go forth and incrementally simulate, queen ππ
π¦ where this page comes from
- fedora 43: irsim 9.7.104-15.fc41 Β· GPLv2
- fedora 43: irsim 9.7.121-1.fc43 Β· GPL-2.0-only
- fedora 44: irsim 9.7.121-1.fc44 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms