XSPICE Digital Library and Example Projects #1155
tomhajjar
started this conversation in
Show and tell
Replies: 2 comments
-
I have moved this to the discussions and marked with examples label. This autoamtically adds this thread to the examples list in this pinned discussion: #788 |
Beta Was this translation helpful? Give feedback.
0 replies
-
Thanks for the contribution! Now it is added in the examples list. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Updated 12/25/24
I have created five XSPICE Digital/Analog mixed-signal projects and the subcircuits for new Digital/Analog XSPICE Libraries. The library(s) have the basic Digital gates, Flip Flops, ADC/DAC Bridges, pull-up/dn and multiple Digital and Analog Clock sources and will be expanded over time to add more devices. Also done were some "X-Analog" subcircuits like OpAmps used in mixed-mode simulations. The XSPICE models are "bare-bones" to speed simulation times.
The projects will be a good primer for using XSPICE to simulated mixed digital-analog circuits. XSPICE ADC/DAC Bridges allow XSPICE Digital devices to be embedded in almost any simulation. For example the ngspice XSPICE VCO d_osc is very useful in analog simulations.
Included are the projects to create the Library, Qucs-S versions of the ngspice XSPICE PLL and Delta Sigma Converter examples, XSPICE PLL Clock Recovery project using a Hogge Phase Detector, XSPICE mixed-signal example C3 and an XSPICE PRBS15 source done by @clyde73 who did an XSPICE 555 timer for us.
Qucs-S has an issue plotting voltages from XSPICE digital nodes. In ngspice's version of XSPICE, component digital outputs switch "modes" if terminated with a resistor and make an auto-bridge with analog output with default vcc=3.3 Volt (unless a .param vcc=xx is used). The ngspice data format ALSO changes if a node is terminated versus un-terminated. Qucs-S plots terminated nodes properly but doesn't plot un-terminated nodes properly. Qucs-S doesn't process the data file properly for unterminated nodes.
Most of my examples have unneeded ADC/DAC Bridges because of this issue. The other option was to terminate every node and place a .param vcc=xx so a defined "vcc" would be forced and Qucs-S will plot nodes. vcc=xx changes the ADC Bridge input trip point, DAC Bridge output voltage and the terminated node "analog" output voltage. The "internal digital" vcc is always vcc=1.
The plotting issue doesn't happen with DuSpice.
https://sourceforge.net/p/ngspice/discussion/120973/thread/64cc577dd4/?limit=25#9c11
XSPICE_projects.zip
Beta Was this translation helpful? Give feedback.
All reactions