stefan schippers
|
1dd3e28b32
|
remove memory tracking alloc IDs
|
2024-09-06 22:27:05 +02:00 |
stefan schippers
|
391464bab9
|
fix another small memory leak due to tclvareval("xschem exit...")--> use tcleval()
|
2024-09-06 22:19:36 +02:00 |
stefan schippers
|
4f0c3afa23
|
port ordering for a schematic .subckt line will always be deduced from the symbol if it exists, even if the symbol type is not "subcircuit" (so it will be used for also "primitive" type symbols).
|
2024-08-24 08:21:08 +02:00 |
stefan schippers
|
f850877b1e
|
added tcl variable top_is_subckt and related Simulation->LVS menu, that keeps top level wrapped inside a .subckt / .ends, as lvs_netlist does. However top_is_subckt does only that and will not enable lvs_format to differentiate device lines in netlist (usually used for LVS comparison).
|
2024-08-06 12:20:32 +02:00 |
stefan schippers
|
f267077e99
|
allow @symname , @param (param defined in symbol template string) translation in instance or symbol spice_sym_def attributes
|
2024-06-14 08:21:43 +02:00 |
stefan schippers
|
9f368d32e5
|
sim_pinnumber attribute on schematic pins will be used for top level .subckt pin ordering if no corresponding symbol exists when creating a spice netlist
|
2024-05-31 09:07:56 +02:00 |
stefan schippers
|
35cac9bf22
|
netlist errors (if xschemrun from cmdline) return exit code 10
|
2024-05-17 00:20:27 +02:00 |
stefan schippers
|
be06ed50cb
|
if top level schematic has an associated symbol (.sym) file ensure their ports match, otherwise issue an error. if netlisting fails return non zero exit code if netlisting from command line
|
2024-05-09 02:10:45 +02:00 |
stefan schippers
|
69ecb82750
|
in intuitive_interface allow to trigger laucher() by ctrl-click (if no mouse is moved), do not clear set_first_sel() data in intuitive_interface when clicking (without moving) multiple objects, better recognize .subckr or .model name in device_model attributes
|
2024-04-18 11:40:51 +02:00 |
stefan schippers
|
203cf38e1e
|
add option `keep_symbols in xschemrc to avoid purging symbols when netlisting /descending hierarchy. Add functions atan, asin,acos, cosh, sinh, atanh,acosh,asinh in wave processor
|
2024-02-24 13:15:43 +01:00 |
Stefan Schippers
|
91bcdfae20
|
spice_netlist(): do a round of tcl_hook2() (resolve tcleval(...)) on device_model attribute
|
2024-02-11 17:41:10 +01:00 |
stefan schippers
|
531a9c168c
|
pass @device_model in symbols through translate() if it contains @xxx tokens
|
2024-02-11 11:47:13 +01:00 |
stefan schippers
|
1cbbed77ba
|
first commit for parametric models in subckts --DO NOT USE--
|
2024-02-09 17:00:56 +01:00 |
stefan schippers
|
8ec3e52122
|
allow parametric models in subcircuits. Symbol inv.sym contains template="... modp=cmos_p_10 ...", pmos instance in inv.sch contains model=@modp, instance format string contains format="@name @pinlist @model w=@w l=@l, result is: "m2 y a VCCPIN VCCPIN cmos_p_10 w=wp l=lp"
|
2024-02-03 13:43:18 +01:00 |
stefan schippers
|
9ceb274b5e
|
print_spice_element(): when expanding format @variables, if substituted value contains @var do another round of translate() to replace @var with instance assigned var=xxx value
|
2024-01-21 00:00:01 +01:00 |
Stefan Schippers
|
289a979c61
|
translate() on device_model inst attr: avoid tcl_hook2 in get_tok_value() as already done in translate()
|
2024-01-20 19:52:16 +01:00 |
Stefan Schippers
|
e50c6f0df1
|
pass instance `device_models=...` attribute through translate() so @vars are resolved
|
2024-01-20 19:40:49 +01:00 |
stefan schippers
|
ed477b90a5
|
eps export
|
2023-12-12 01:14:40 +01:00 |
stefan schippers
|
7a39f4d6ca
|
better resolution of exported graphs in ps/pdf and svg
|
2023-12-09 23:39:33 +01:00 |
stefan schippers
|
6c1dadd27c
|
flush unused symbols at end of netlist
|
2023-12-02 23:25:54 +01:00 |
stefan schippers
|
b2965f4c3d
|
attribute default_schematic=ignore: if set in a symbol xschem will not descend into the default schematic associated to symbol. Instances MUST specify a schematic attribute
|
2023-12-02 13:17:32 +01:00 |
stefan schippers
|
eb6f9f1f4e
|
fix a small memory leak in spice_netlist.c
|
2023-11-21 10:48:56 +01:00 |
stefan schippers
|
48a9a94ab2
|
offloaded proc graph_tag_nodes from proc graph_update_nodelist, moved rcode and colors into tctx:: context
|
2023-11-17 14:05:49 +01:00 |
stefan schippers
|
397293f227
|
spice netlist: use symbol for port list of top level schematic only if it is of type subcircuit
|
2023-11-16 23:37:16 +01:00 |
stefan schippers
|
a50bfb3622
|
when doing spice netlisting if top level has a symbol (and the symbol has i/o ports) use the symbol for printing the top level subckt port list. This ensures same port ordering when netlisting a testbench containing a component and netlisting the component itself. Tab context menu: open Symbol / open Schematic will use the search_schematic setting and search counterpart accordingly.
|
2023-11-16 01:26:55 +01:00 |
stefan schippers
|
ecca0ba2be
|
better swap_windows() function (used when closing a window in multi-window(non-tabbed) interface, resolved_net() recognize global nodes. remove static data from record_global_node(), put in xctx. Remove dead code from translate() (@spice_get_voltage)
|
2023-11-12 13:01:11 +01:00 |
stefan schippers
|
88e7f4fea4
|
fix a problem in set_modify() (inconsistent prev_set_modify state after netlist of modified circuit)
|
2023-11-04 22:50:57 +01:00 |
stefan schippers
|
512b297e35
|
add validity checks for xctx->inst[n].ptr < 0 (unresolved instance)
|
2023-10-23 22:49:52 +02:00 |
stefan schippers
|
94bccc08d9
|
do not duplicate empty strings as NULLs in hash tables
|
2023-10-09 12:49:11 +02:00 |
stefan schippers
|
8dfaedf9ea
|
report in-hierarchy overlapped symbols when netlisting
|
2023-08-29 11:32:48 +02:00 |
stefan schippers
|
1c3c9ff889
|
do not show ERC info window if netlisting invoked via CLI; global variable show_infowindow_after_netlist can now take 3 values: always, onerror, never, to decide when showing the ERC info window after netlisting. Old values (1, 0) still accepted as aliases for always and onerror
|
2023-08-27 23:55:48 +02:00 |
stefan schippers
|
bf46fd3e7b
|
allow "1" / "0" in addition to "true" / "false" in all boolean attributes
|
2023-07-14 00:49:51 +02:00 |
stefan schippers
|
cf675be805
|
add "xschem print pdf_full" and "xschem print ps_full" commands to print full view properly fitting paper size, regardless of xschem window size, some fixes in circle postscript drawing (set newpath) and rectangle clipping. Add menu command "PDF/PS export full"
|
2023-07-13 13:24:17 +02:00 |
stefan schippers
|
6755975369
|
do not create nets for devices that have *_ignore=true attribute set, this generates false warnings about undriven nets.
|
2023-06-30 08:29:11 +02:00 |
stefan schippers
|
6198d21404
|
add "show_infowindow_after_netlist" tcl variable (default = 0) that can be set in xschemrc to always show erc window after netlist even without or no critical errors
|
2023-06-25 09:05:37 +02:00 |
stefan schippers
|
c6df85cce5
|
apply center full zoom in all zoom full commands if tcl variable zoom_full_center is set
|
2023-06-23 09:04:55 +02:00 |
stefan schippers
|
89d90c21db
|
xctx->sch made an array of pointers instead of array of PATH_MAX strings (memory saver)
|
2023-06-17 23:58:35 +02:00 |
stefan schippers
|
245993f034
|
added attributes spice_ignore=short, verilog_ignore=short, .... that will transform the instance into a short in the current netlisting mode, shorting all pins to the same net. Works similarly as lvs_ignore=short, but does not need lvs_ignore global setting
|
2023-06-07 03:41:49 +02:00 |
stefan schippers
|
38a28a3acb
|
add lvs_ignore to context saved vars. Refactored some preprocessor macros SPICE_IGNORE_INST --> SPICE_IGNORE)
|
2023-06-06 23:38:29 +02:00 |
stefan schippers
|
394db224d1
|
added global tcl variable `lvs_ignore` that can be used to enable instance or symbol attributes `lvs_ignore=open` or `lvs_ignore=short` while netlisting, added `test_lvs_ignore.sch` example
|
2023-06-06 15:22:45 +02:00 |
stefan schippers
|
5c22d26072
|
update copyright info to 2023
|
2023-05-21 12:52:19 +02:00 |
stefan schippers
|
893389b01d
|
hier_psprint_mtime(): fix wrong mtime calculation for (non existent file) generators
|
2023-05-21 09:25:19 +02:00 |
stefan schippers
|
c2e5c61b35
|
graphs: add xmag and ymag entry boxes for custom magnification factor for x/y axis labels, fix current_dirname handling when netlisting hierarchical http(s) designs. The goal is to allow netlisting remote designs seamlessly
|
2023-05-20 23:21:43 +02:00 |
stefan schippers
|
9fcde30a52
|
do not perform tcl substitution before displaying netlist_commands text into an editor. Correctly restore xctx->current_dirname after netlisting. get_generator_command(): quote command name (just in case its pathname contains spaces). floater example labels in solar_panel.sch. Various corrections and optimizations in new floater labels code.
|
2023-05-14 01:13:18 +02:00 |
stefan schippers
|
5e281e7f10
|
*_ignore attributes for instances and symbols cached in .flags struct member for speed optimization. added some generator netlist testcases in xschemtest.tcl
|
2023-05-10 23:29:16 +02:00 |
stefan schippers
|
626f2729ce
|
remove used_symbols feature (may fail in some hierarchical situations)
|
2023-05-10 10:13:38 +02:00 |
stefan schippers
|
d7557d7945
|
fix netlisting schematics with generator name containing extension ( like symgen.tcl(1,2,3) )
|
2023-05-10 04:40:22 +02:00 |
stefan schippers
|
7ad930e7f0
|
istances with *_ignore=true attribute will be drawn greyed out in schematics in the corresponding netlisting mode; command in Properties menu to toggle this attribute on selected instances
|
2023-05-10 03:13:13 +02:00 |
stefan schippers
|
f2214150ae
|
tedax, verilog, spice netlists: do not expand unused subcircuits (due to *_ignore attrs on instances/symbols)
|
2023-05-10 01:02:28 +02:00 |
stefan schippers
|
4c3b4d0321
|
various tcl_hook2() additions on instance names to handle procedures, fix bbox calculation in xschem replace_symbol command
|
2023-05-01 14:37:10 +02:00 |