Commit Graph

32 Commits

Author SHA1 Message Date
Holger Vogt 33efc5ed2c Add functions for VS non-C99-compatible complex data manipulation,
selected by #ifdef _MSC_VER switch.
Update tlines project file, correct buiuld sequence for
code models in vngspice.
Add tlines to spinit.
2025-07-29 11:01:30 +02:00
Holger Vogt 85c600a923 Enable Visual Studio support for tline
FIXME: not yet complete, complex type incompatibility
2025-07-29 11:00:34 +02:00
Holger Vogt b628032d7d Add a generator for SEE (single event effects) pulses as a code model.
To be used like
aseegen1 NULL [%id(xcell.n1 m1) %id(xcell.n2 m2) %id(xcell.n1 m1) %id(xcell.n2 m2)] seemod1
.model seemod1 seegen (tdelay = 11n tperiod=25n tfall='tfall' trise='trise' let='let' cdepth='d')
see README.SEEgenerator for details
2025-07-29 10:39:58 +02:00
Holger Vogt 6e5d084a02 "x64" was hardcoded into aux-digital.bat and is used in the compiling of digital.vcxproj.
That's problematic for trying to compile x86 or ARM64.

This patch makes digital.vcxproj pass the arch as arg2 to aux-digital.bat

Patch #120 provided by Mark Roszko
2025-01-09 13:21:15 +01:00
Giles Atkinson ce1ecca15e Add support for including Verilog simulation within an instance
of the d_cosim codemodel, using libvvp, the simulation runtime of
Icarus Verilog.  This complements the existing method using Verilator.
The new source code is built into two binary shared libraries,
ivlng.so (or .DLL) and ivlng.vpi that are loaded during simulation.
2024-11-02 22:30:07 +01:00
Holger Vogt 1ad639d90a Add d_cosim to MS project file 2023-12-29 11:01:01 +01:00
Giles Atkinson 566e2938f4 Add XSPICE code model d_cosim, a generic adaptor for digital cosimulation. 2023-11-27 14:50:21 +00:00
Brian Taylor 3bb6e86015 Add Windows Visual Studio support for the Isotel d_process xspice digital model. The Isotel mixedsim-master/examples/embedded/motorforce C code needs to have minor changes for _MSC_VER defines, and are not included with this commit. The changes relate to using #pragma pack(push, 1)...#pragma pack(pop) around some structs, and setting stdin/stdout in binary mode. It is doubtful that the cfunc.mod will compile on mingw or cygwin since I don't know if they support pipe/fork/exec/spawn calls. The code builds and runs on Windows, Linux, and MacOS. In the future, Giles Atkinson is looking at allowing Xspice models to load shared libraries (.dll, .so) which will avoid creating and communicating with an external program. 2023-10-28 10:58:06 +02:00
Holger Vogt b0ca2a667a Add missing pwlts cfunc.mod and ifspec.ifs 2023-08-13 11:30:31 +02:00
Holger Vogt 3b90c12307 Enable compiling with MSVC 2023-07-15 11:15:28 +02:00
Holger Vogt fa18c53c37 Update for all MSVC project files:
Update to VC2022 with v143 and /openmp:llvm (due to openmp task)
Add missing osdi files
Add missing udevices.c and logicexp.c
2022-12-27 14:11:33 +01:00
Holger Vogt 4cb6c93a1a Add bidirectional bridge to MS project file for icm digital 2022-10-08 16:49:21 +02:00
Holger Vogt 1d026475a2 pwlts: a pwl v/i source with time input, smoothing and limiting functions 2022-10-07 13:39:16 +02:00
Holger Vogt 246f9f5e9e d_pwm: Add a hybrid oscillator (analg control in, digital out) with PWM
(pulse width modulation) capability, oscillation frequency is a parameter.

The model has been derived from the d_osc example.
2022-04-25 21:27:26 +02:00
Holger Vogt fbab9a0fe2 Add an analog delay source for transient simulation
Internal circular memory of size tstop/tstep or user defined.
(aprox.) every tstep a value is stored.
Delay time in multiples of tstep, by control voltage or user defined.
Dc or ac sim will simply connect input to output.
2021-07-05 14:24:06 +02:00
Holger Vogt 1f6c4d6338 Add a new code model pswitch, behaviour directly compatible
to PSPICE (rounded corner at cntl_on)
2020-10-10 13:53:47 +02:00
Holger Vogt 36098b93bd no two or more commands in a single line 2020-08-20 15:25:27 +02:00
Holger Vogt 5e76758e57 update to cmpp by J. Monte 2020-03-15 08:51:02 +01:00
Jim Monte 1867f5b727 Fix of buffer overrun in interpolation at endpoint of interval. Made cfunc.mod for tables more modular. Prevented buffer overrun when building file name. Added error checking for allocation failures in many locations. Made binary search for interpolation more efficient. 2020-03-15 08:51:02 +01:00
Holger Vogt 74a1a0b211 Update to Visual Studio 2019 2020-03-15 08:50:52 +01:00
Holger Vogt 1c580c7b0a cmpp did not compile any more after applying patch #60
After reverting #60, this fix avoids warning about output locations
2019-09-14 12:43:36 +02:00
Holger Vogt 0814c71c2c Revert "[PATCH #60] Fixed build warnings about inconsistencies in the output"
This reverts commit 194e6d02e9.
2019-09-14 12:43:22 +02:00
Jim Monte a1ddfa3f82 [PATCH #60] Fixed build warnings about inconsistencies in the output
location for cmpp. The destination was not changed (due to dependencies of
 batch files on the location) but $(ProjectDir) was used to make the path
 absolute, which simplifies verifying the correct location.
2019-08-13 23:29:48 +02:00
Holger Vogt 578a42e084 provide correct output path for cmpp.exe during 64 bit compilation 2018-10-27 17:57:14 +02:00
Holger Vogt faa7ce003c Add a new code model 'sidiode' with a simple diode:
Linear reverse, off, and on regions
Smooth parabolic transition between the regions
Maximum current settings possible with tanh transistion
Current versus voltage continuously differentiable
No diode capacitance
2018-10-13 18:18:59 +02:00
Tim Edwards fd79197fc0 xspice/icm/digital, introduce d_genlut
a digital n-input x m-output look-up table gate
2017-05-01 22:11:24 +02:00
Tim Edwards 8ae3b84c7c xspice/icm/digital, introduce d_lut
a digital n-input look-up table gate
2017-05-01 22:11:04 +02:00
h_vogt 37fe5308d3 xspice/icm/table, introduce table2d/table3d
which allows to model devices based upon linear interpolation
2017-04-30 17:00:15 +02:00
rlar 875cab6758 *.vcxproj, enable <GenerateDebugInformation>true 2016-10-22 20:10:21 +02:00
rlar edaded001a *.vcxproj, use <DebugInformationFormat>ProgramDatabase 2016-10-22 20:01:46 +02:00
rlar 96a35e0144 *.vcxproj, increase <WarningLevel>Level4 2016-10-22 20:01:30 +02:00
h_vogt c022d8f419 introduce visualc/xspice 2016-02-07 17:45:43 +01:00