Showing posts with label Python. Show all posts
Showing posts with label Python. Show all posts

Jan 30, 2023

[paper] DMT-core: A Python Toolkit for Semiconductor Device Engineers

Mario Krattenmacher1,2, Markus Müller1,2, Pascal Kuthe1,2, and Michael Schröter1,2
DMT-core: A Python Toolkit for Semiconductor Device Engineers
Journal of Open Source Software, 7(75), 4298
DOI: 10.21105/joss.04298
1 CEDIC, TU Dresden, Dresden (D)
2 SemiMod GmbH, Dresden (D)

Abstract: Semiconductor device engineers are faced by a number of non-trivial tasks that can be solved efficiently using software. These tasks include, amongst others, data analysis, visualization and processing, as well as interfacing various circuit and Technology-Computer-Aided-Design (TCAD) simulators. In practice, custom ‘home-made’ scripts of varying quality are employed to solve these tasks. It is often found that fundamental software engineering concepts, such as Test-Driven-Development (Shull et al., 2010), or the use of state-of-the-art version control tools (e.g. Git) and practices (e.g. continuous integration, CI), are not utilized by these scripts. The issues inflicted by this practice include:
  • The analysis/visualization/generation of data becomes difficult to reproduce.
  • Device engineers work far from their maximum work-efficiency, as they are hindered, instead of empowered, by the software infrastructure.
  • Knowledge built-up, possibly over decades, may be lost when developers leave a company or institution.
The Device Modeling Toolkit (DMT) presented here aims to solve these issues. DMT provides a Python library that offers:
  • classes and methods relevant to commonly used device engineering tasks
  • several abstract base classes for implementing new interfaces to various types of simulators
  • concrete implementations of the abstract base classes for open-source simulators such as Ngspice (Vogt, 2022), Xyce (Keiter et al., 2014) or Hdev (Müller et al., 2022).
DMT-based simulations allow data generation, workflow implementation and visualization to be implemented in a single file, enabling more efficient cooperation and more reproducible research (Stodden et al., 2016). Basic principles in software engineering, such as unit testing,v ersion control, and documentation, are adhered to so that others can use and contribute to the software.
FIG: DMT interfacing a circuit simulator and corresponding data flow.

Related Publications: DMT is used internally by CEDIC staff in research and by SemiMod for commercial purposes. It has also been used by cooperating institutions and companies. The project has been used inthe following contexts:
  • for circuit simulations (Weimer et al., 2022),
  • for TCAD simulations and plotting (Markus Muller et al., 2021),
  • for circuit and TCAD simulations (M. Muller et al., 2022),
  • for model parameter extraction (Müller & Schröter, 2019) and
  • for model parameter extraction and TCAD simulation (Phillips et al., 2022).
In addition, DMT has been cited in (Grabinski, 2019; Kuthe et al., 2020; Müller et al., 2019,
2021).

Related Projects: DMT directly uses the VerilogAE (Kuthe et al., 2020) for accessing all information in Verilog-AMS files. The TCAD simulator Hdev (Müller et al., 2022) uses the class DutHdev as its Python interface.

Acknowledgements: This project would not have been possible without our colleagues Dipl.-Ing. Christoph Weimer and Dr.-Ing. Yves Zimmermann. We particularly acknowledge Wladek Grabinski for his efforts to promote the use of open source software in the semiconductor community.

REF:
Shull, F., Melnik, G., Turhan, B., Layman, L., Diep, M., & Erdogmus, H. (2010). What do we know about test-driven development? IEEE Softw., 27(6), 16–19. https://doi.org/10.1109/MS.2010.152
Vogt, H. (2022). Ngspice, the open source Spice circuit simulator - Intro. http://ngspice. sourceforge.net/
Keiter, E. R., Mei, T., Russo, T. V., Schiek, R. L., Sholander, P. E., Thornquist, H. K., Verley, J. C., & Baur, D. G. (2014). Xyce Parallel Electronic Simulator Reference Guide , Version 6 . 2 (September). Sandia National Laboratories (SNL). https://doi.org/10.2172/1826862
Müller, M., Mothes, S., Claus, M., & Schröter, M. (2022). Hdev: A 1D and 2D Hydrodynamic/Drift-Diffusion solver for SiGe and III-V HBTs. J. Open Source Software
Stodden, V., McNutt, M., Bailey, D. H., Deelman, E., Gil, Y., Hanson, B., Heroux, M. A., Ioannidis, J. P. A., & Taufer, M. (2016). Enhancing reproducibility for computational methods. Science, 354(6317), 1240–1241. https://doi.org/10.1126/science.aah6168 
Grabinski, W. (2019). FOSS TCAD/EDA tools for compact modeling. Arbeitskreis Bipolar.
https://www.iee.et.tu-dresden.de/iee/eb/forsch/AK-Bipo/2019/7-MOS-AK-Association_wgr_BipAK19.pdf



Dec 8, 2022

[book] Circuit Simulation and Modeling with Phyton

Circuit Simulation and Modeling with Phyton
Hardcover – April 9, 2021
by Kenji Mori (author), Akira Matsuzawa (author)

This book is written for people who are learning Python. Circuit simulation and modeling are selected as subjects for programming using Python. The process of building a net" is attached to Chapter 5 appendix "Diode/MOSFET Coding Flow Diagram". Text Python source code suitable for learning by students and companies / corporations can be downloaded from the web.









About the Authors

Akira Matsuzawa: Professor Emeritus, Tokyo Institute of Technology President of Tech Idea Co., Ltd. 1978; Completed master's course at Graduate School of Engineering, Tohoku University. Joined Matsushita Electric Industrial (now Panasonic) in the same year 1997; Completed doctoral program at Graduate School of Engineering, Tohoku University 2003; Professor, Graduate School of Science and Engineering, Tokyo Institute of Technology 2018 Retired from Tokyo Institute of Technology Professor Emeritus at the same university
His books:
"First analog electronic circuit basic circuit edition" Kodansha (2015)
"First Analog Electronic Circuit Practical Circuit Edition" Kodansha (2016)
"Analog RFCMOS Integrated Circuits Basic Edition" Baifukan (2010)
"Analog RFCMOS Integrated Circuits Application Edition" Baifukan (2011)
"Learning Circuit Simulation and Modeling with MATLAB" Torikagesha (2020)

Kenji Mori: Part-time Lecturer, Tokyo Institute of Technology March 1979. Graduated from Tokushima University Graduate School of Electrical Engineering, joined NEC Corporation in the same year, engaged in circuit simulator development, automatic filter design program development, and circuit check program development. Joined Nippon Steel Corporation in November 1990, engaged in parameter extraction of MOSFET models. April 2009 Developed a prototype program for automatic design of mixed-signal LSI with Mr. Sugawara, an industry-academia-government collaboration researcher at Tokyo Institute of Technology. April 2014 Part-time Lecturer, Tokyo Institute of Technology
His books:
"Circuit Simulation Technology and MOSFET Modeling" Realize Riko Center (2003)
"Learning Circuit Simulation and Modeling with MATLAB" Torikagesha (2020)