EDSpice supports both Code Models and User-Defined Nodes via dynamic-linking in all Windows operating systems. Code Modeling is the process of creating new primitive elements and functions using the C programming language. It has become widely accepted and is seen as a better alternative to traditional behavioral modeling and macromodeling techniques. User-Defined Node types allow the specification of nodes that propagate arbitrary data structures and data other than voltages, currents, and digital states. Thus, allowing EDSpice to support mixed-level, as well as mixed-signal simulation and indeed, to support application domains well beyond the electrical domain.
The EDComX tool kit alleviates the time consuming process of creating both Code Models and User-Defined Nodes by automating the creation of standard files used to define Code Models and User-Defined Nodes. It achieves this by employing easy-to-use dialog windows for entering all relevant information. EDComX also includes a special Code Model Preprocessor (CMPP), which similar to the C preprocessor that comes with your C compiler. It takes the standard files as an input describing the new Code Model in terms of physical attributes (including number of ports, type of data it supports, direction etc.) and its behavior (C function(s) that computes the output of the model). EDComX converts them into .C and .CPP files allowing EDSpice to access information about the model at runtime.
The ultimate aim of using EDComX is to generate Code Models and User-Defined Nodes as Windows DLLs.