From fa2a96f87e4f9682aca54f8f45c40873125c353c Mon Sep 17 00:00:00 2001 From: ColsonZhang <784278850@qq.com> Date: Mon, 8 Feb 2021 00:26:36 +0800 Subject: [PATCH] improve the function of spice-extract --- README.md | 6 + Schematic/schematic4.png | Bin 0 -> 79863 bytes Schematic/template/icon_ee/vac.ico | Bin 0 -> 1086 bytes Schematic/template/icon_ee/vdc.ico | Bin 0 -> 1086 bytes Schematic/template/icon_ee/vsin.ico | Bin 0 -> 1086 bytes Schematic/template/schematic.html | 436 +++++++++++++++++++++++++--- 6 files changed, 398 insertions(+), 44 deletions(-) create mode 100644 Schematic/schematic4.png create mode 100644 Schematic/template/icon_ee/vac.ico create mode 100644 Schematic/template/icon_ee/vdc.ico create mode 100644 Schematic/template/icon_ee/vsin.ico diff --git a/README.md b/README.md index ac305e6..7a3833b 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,12 @@ ## 更新日志 +* 2021年2月8号,前端更新 + + * 优化了schematic电路图提取spice网表功能 + * 新增加了多种电源器件 + * 初步实验了将提取出来的spice网表送进spice仿真器中执行仿真的结果 + * ![avatar](./Schematic/schematic4.png) * 2021年2月2日,前端更新 * 增加电路spice网表提取功能 diff --git a/Schematic/schematic4.png b/Schematic/schematic4.png new file mode 100644 index 0000000000000000000000000000000000000000..d5c9ce4f5df22ba2631d22c68a74b9f4cafcfdfc GIT binary patch literal 79863 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 literal 0 HcmV?d00001 diff --git a/Schematic/template/icon_ee/vac.ico b/Schematic/template/icon_ee/vac.ico new file mode 100644 index 0000000000000000000000000000000000000000..d8fbbef4cd44262a64759c7481bcedb2458dfe79 GIT binary patch literal 1086 zcmdUt%LxKO5JX!r01*+79zBX#2nrq)jY=1cLo@<25W^4=W6*jy3&k+F7cbUQ+dVbi z^Xch`mcC9W^dH8k9np`7ktj*ZN0<2*^mNdjcoEOZZe_b-6Xptdh#PT|g0XAyDNd7C zGBb(C(u8Rz`K2`|`Q74hUq+we9Qj=;X{!`O-ZyX;>fyL*FiwK!m(D;vsI7xKJ4$)J zZXWOZ`#SE|`KA5$3S4?{^6MO*;%(^<$3TOd3-U{MAcX#)$8szr95ONApZ=IERw6z2bG!jCjWQ$v literal 0 HcmV?d00001 diff --git a/Schematic/template/icon_ee/vdc.ico b/Schematic/template/icon_ee/vdc.ico new file mode 100644 index 0000000000000000000000000000000000000000..a01058834ce47c2bad8a6eb91ca40c6050eb8ddb GIT binary patch literal 1086 zcmc(a!3uyd3_~OM0Xup2xc~n_O_9PVS*7z}N4J^wr4HD*S_AhJeFqKzok@wxqw`pe zYZWACtY^hWF-lXO)|W+Ak2RmEbTuRPsUFi*pVDT$^7xxq|5VXbuf56B>K@r!W9{wR XJ;!r4GkT4Ty1P%68@;};=9BU_GVUwX literal 0 HcmV?d00001 diff --git a/Schematic/template/icon_ee/vsin.ico b/Schematic/template/icon_ee/vsin.ico new file mode 100644 index 0000000000000000000000000000000000000000..b136d89fcd5531683d979ac8e41b68c2caef6f73 GIT binary patch literal 1086 zcmdUtK?=e^3`HY&fFdF;UAh!+Ay{ys=&7{eIYdw34a8%Jh-c9MoEZs2X*X{CCG(R% zX*-j|tfQwWOzX(TU9*9ijb)Og1YPtm=7|M%KoezL-na-H;jpWZSb9zz8;FEsef2Q!vqA>ojVSj!8y1K{Qxk%Wj>g(HgFf}K~3okT*;WRpW_Wnkt!?z literal 0 HcmV?d00001 diff --git a/Schematic/template/schematic.html b/Schematic/template/schematic.html index 0e699e4..69b7405 100644 --- a/Schematic/template/schematic.html +++ b/Schematic/template/schematic.html @@ -128,23 +128,33 @@ { var Value_raw = cell.getValue(); var Value_att = ParseAttribute(Value_raw); - var Value_show = Value_att['name'] == 'unknown' ? '' : Value_att['name']; + var Value_show = ''; + if(Value_att['Name'] == 'unknown'){ + if(Value_att['name'] != 'unknown'){ + Value_show = Value_att['name']; + } + } + else{ + Value_show = Value_att['Name']; + } + + // var Value_show = Value_att['name'] == 'unknown' ? '' : Value_att['name']; return Value_show; }; // 暂时不允许在此进行修改 var cellLabelChanged = graph.cellLabelChanged; - graph.cellLabelChanged = function(cell, newValue, autoSize) + graph.cellLabelChanged = function(cell, new_value, autoSize) { - // if (mxUtils.isNode(cell.value)) - // { - // // Clones the value for correct undo/redo - // var elt = cell.value.cloneNode(true); - // elt.setAttribute('label', newValue); - // newValue = elt; - // } - // cellLabelChanged.apply(this, arguments); + + // // Clones the value for correct undo/redo + // var elt = cell.value.cloneNode(true); + + // newValue = elt; + // autoSize = false; + + // cellLabelChanged.apply(this, arguments); }; graph.getTooltipForCell = function(cell) @@ -180,14 +190,17 @@ addVertex_2('icon_ee/res.ico', 80, 30, 'shape=resistor;verticalLabelPosition=top;verticalAlign=bottom','Name=R;Value=10 Ohm;'); addVertex_2('icon_ee/cap.ico', 40, 30, 'shape=capacitor;verticalLabelPosition=top;verticalAlign=bottom','Name=C;Value=10 pF;'); - addVertex_2('icon_ee/nmos.ico', 60, 60, 'shape=n_mosfet;verticalLabelPosition=top;verticalAlign=bottom','Name=NMOS;Length=100nm;Width=20nm;'); - addVertex_2('icon_ee/pmos.ico', 60, 60, 'shape=p_mosfet;verticalLabelPosition=top;verticalAlign=bottom','Name=PMOS;Length=100nm;Width=20nm;'); - addVertex_2('icon_ee/vdd.ico', 40, 30, 'shape=vdd;verticalLabelPosition=top;verticalAlign=bottom','Name=Vdd;Value=10 V;'); - addVertex_2('icon_ee/gnd.ico', 40, 40, 'shape=gnd;verticalLabelPosition=top;verticalAlign=bottom','Name=Gnd;'); + addVertex_2('icon_ee/nmos.ico', 60, 60, 'shape=n_mosfet;verticalLabelPosition=top;verticalAlign=bottom','Name=M_NMOS;Length=100nm;Width=20nm;'); + addVertex_2('icon_ee/pmos.ico', 60, 60, 'shape=p_mosfet;verticalLabelPosition=top;verticalAlign=bottom','Name=M_PMOS;Length=100nm;Width=20nm;'); + addVertex_2('icon_ee/vdd.ico', 40, 30, 'shape=vdd;verticalLabelPosition=top;verticalAlign=bottom','Name=Vdd;'); + addVertex_2('icon_ee/gnd.ico', 40, 40, 'shape=gnd;verticalLabelPosition=bottom;verticalAlign=top','Name=Gnd;'); addVertex_2('icon_ee/pin.ico', 40, 40, 'shape=pin;verticalLabelPosition=top;verticalAlign=bottom','Name=Pin;'); addVertex_2('icon_ee/pout.ico', 40, 40, 'shape=pout;verticalLabelPosition=top;verticalAlign=bottom','Name=Pout;'); - + addVertex_2('icon_ee/vdc.ico', 40, 40, 'shape=vdc;labelPosition=left;align=right','Name=Vdc;DC=1 V;'); + addVertex_2('icon_ee/vac.ico', 40, 40, 'shape=vac;labelPosition=left;align=right','Name=Vac;DC=0 V;ACMAG=1 V;ACPHASE=0 deg;'); + addVertex_2('icon_ee/vsin.ico', 40, 40, 'shape=vsin;labelPosition=left;align=right','Name=Vsin;V0=0 V;VA=1 V;FREQ=1k Hz;TD=0 ;THEAT=0 ;PHASE=0 ;'); + toolbar.addLine(); click_handler(graph); @@ -220,8 +233,8 @@ // 获取属性 function ParseAttribute(value) { - value = value||"name=unknown;" ; - value = value.toLowerCase(); + value = value||"Name=unknown;" ; + // value = value.toLowerCase(); var attribute = {} ; v = value.replace(" ",""); var v_split = v.split(";"); @@ -379,7 +392,7 @@ function NormalizeXML(info){ if(temp['type'] == 'vdd'){ temp['port'] = {'vdd': 'vdd'}; temp['port_keys'] = ['vdd']; - temp['value'] = {'voltage': info['elements'][i]['value']['Value']}; + // temp['value'] = {'voltage': info['elements'][i]['value']['Value']}; } else if(temp['type'] == 'gnd'){ temp['port'] = {'gnd': 'gnd'}; @@ -408,6 +421,29 @@ function NormalizeXML(info){ temp['port'] = {'pout': 'pout'}; temp['port_keys'] = ['pout']; } + else if(temp['type'] == 'vdc'){ + temp['port'] = {'pos': 'pos', 'neg':'neg'}; + temp['port_keys'] = ['pos','neg']; + temp['value'] = {'DC': info['elements'][i]['value']['DC'] } + } + else if(temp['type'] == 'vac'){ + temp['port'] = {'pos': 'pos', 'neg':'neg'}; + temp['port_keys'] = ['pos','neg']; + temp['value'] = {'ACMAG': info['elements'][i]['value']['ACMAG'], + 'ACPHASE': info['elements'][i]['value']['ACPHASE'], + 'DC':info['elements'][i]['value']['DC']} + } + else if(temp['type'] == 'vsin'){ + temp['port'] = {'pos': 'pos', 'neg':'neg'}; + temp['port_keys'] = ['pos','neg']; + temp['value'] = {'V0': info['elements'][i]['value']['V0'], + 'VA': info['elements'][i]['value']['VA'], + 'FREQ': info['elements'][i]['value']['FREQ'], + 'TD': info['elements'][i]['value']['TD'], + 'THEAT': info['elements'][i]['value']['THEAT'], + 'PHASE': info['elements'][i]['value']['PHASE'] + } + } circuit.push(temp); } @@ -473,23 +509,50 @@ function NormalizeXML(info){ } } + let count = 1 ; + let node_str = ''; + let flag_gnd = false; for(var i=0; i + + + + @@ -2199,7 +2519,7 @@ Adds oval markers for edge-to-edge connections. return ports2; }; - // ... except for n mosfet + // for n mosfet var ports_resistor = new Array(); ports_resistor['pos'] = {x: 0, y: 0.5, perimeter: true, constraint: 'west'}; ports_resistor['neg'] = {x: 1, y: 0.5, perimeter: true, constraint: 'east'}; @@ -2209,7 +2529,7 @@ Adds oval markers for edge-to-edge connections. return ports_resistor; }; - // ... except for n mosfet + // for n mosfet var ports_nmosfet = new Array(); ports_nmosfet['gate'] = {x: 0, y: 0.5, perimeter: true, constraint: 'west'}; ports_nmosfet['drain'] = {x: 1, y: 0.25, perimeter: true, constraint: 'east'}; @@ -2218,7 +2538,7 @@ Adds oval markers for edge-to-edge connections. N_Mosfet_Shape.prototype.getPorts = function(){ return ports_nmosfet; }; - // ... except for p mosfet + // for p mosfet var ports_pmosfet = new Array(); ports_pmosfet['gate'] = {x: 0, y: 0.5, perimeter: true, constraint: 'west'}; ports_pmosfet['source'] = {x: 1, y: 0.25, perimeter: true, constraint: 'east'}; @@ -2227,14 +2547,14 @@ Adds oval markers for edge-to-edge connections. P_Mosfet_Shape.prototype.getPorts = function(){ return ports_pmosfet; }; - // ... except for vdd + // for vdd var ports_vdd = new Array(); ports_vdd['vdd'] = {x: 0.5, y: 1, perimeter: true, constraint: 'south'}; Vdd_Shape.prototype.getPorts = function(){ return ports_vdd; }; - // ... except for gnd + // for gnd var ports_gnd = new Array(); ports_gnd['gnd'] = {x: 0.5, y: 0, perimeter: true, constraint: 'north'}; @@ -2242,7 +2562,7 @@ Adds oval markers for edge-to-edge connections. return ports_gnd; }; - // ... except for capatiance + // for capatiance var ports_capatiance = new Array(); ports_capatiance['pos'] = {x: 0.0, y: 0.5, perimeter: true, constraint: 'west'}; ports_capatiance['neg'] = {x: 1.0, y: 0.5, perimeter: true, constraint: 'east'}; @@ -2251,20 +2571,48 @@ Adds oval markers for edge-to-edge connections. return ports_capatiance; }; - // ... except for capatiance + // for port_pin var ports_pin = new Array(); ports_pin['pin'] = {x: 1.0, y: 0.5, perimeter: true, constraint: 'east'}; Pin_Shape.prototype.getPorts = function(){ return ports_pin; }; - // ... except for capatiance + // for port_out var ports_pout = new Array(); ports_pout['pout'] = {x: 0.0, y: 0.5, perimeter: true, constraint: 'west'}; Pout_Shape.prototype.getPorts = function(){ return ports_pout; }; + // for Vdc + var ports_vdc = new Array(); + ports_vdc['pos'] = {x: 0.5, y: 0.0, perimeter: true, constraint: 'north'}; + ports_vdc['neg'] = {x: 0.5, y: 1.0, perimeter: true, constraint: 'south'}; + + Vdc_Shape.prototype.getPorts = function(){ + return ports_vdc; + }; + // for Vac + var ports_vac = new Array(); + ports_vac['pos'] = {x: 0.5, y: 0.0, perimeter: true, constraint: 'north'}; + ports_vac['neg'] = {x: 0.5, y: 1.0, perimeter: true, constraint: 'south'}; + + Vac_Shape.prototype.getPorts = function(){ + return ports_vac; + }; + + // for Vsin + var ports_vsin = new Array(); + ports_vsin['pos'] = {x: 0.5, y: 0.0, perimeter: true, constraint: 'north'}; + ports_vsin['neg'] = {x: 0.5, y: 1.0, perimeter: true, constraint: 'south'}; + + Vsin_Shape.prototype.getPorts = function(){ + return ports_vsin; + }; + + +