A modular approach to next generation Qucs

Salfelder, Felix and Brinson, Mike (2021) A modular approach to next generation Qucs. In: 1st Asia/South Pacific MOS-AK Workshop, 25-26 February 2021, Virtual.


Qucs implements a graphical user interface based on the Qt3 toolkit. This interface makes heavy use of the library functions provided by Qt3. The successor, Qt4, has a compatibility layer that was sufficient to run Qt3 Qucs with only slight modifications. With the release of Qt5 in 2012,Qt3 backwards compatibility was abandoned in favour of a more efficient, object-oriented, graphics framework. While attempting to switch Qucs to Qt5 it became evident that the code base needed extensive qualitative improvements. For once, the monolithic structure of the project made it very hard to extend and maintain. As the port to Qt5 requires a rework of all non-trivial program structures and algorithms the decision was made to do both modularisation and code modernisation in one step. This process also embodies the design of a stable API for future Qucs extensions. As of today, current work provides a schematic editor with compiled extensions that are loaded optionally. Such extensions add circuit components, visualisation tools, data I/O, and simulator drivers and netlist code generators. The current focus of the initiative is to provide a set of features implemented by the latest Qucs release as user loadable plug-ins, plus a series of new features ported from Qucs forks, predominantly Qucs-S and CanEDA. This presentation concentrates on the current state of the next generation Qucs initiative with simulation and compact modelling examples based on extended Qucs-S/Xyce component and device models plus CMC Verilog-A Modules.

MOS-AKfeb2021Final.pdf - Accepted Version

Download (3MB) | Preview


Downloads per month over past year

Downloads each year

View Item View Item