D I S S E R T A T I O N

Frameworks for
Micro- and Nanoelectronics
Device Simulation

ausgeführt zum Zwecke der Erlangung des akademischen Grades
eines Doktors der technischen Wissenschaften

eingereicht an der Technischen Universität Wien
Fakultät für Elektrotechnik und Informationstechnik
von

Josef Weinbub

Alter Ziegelweg 8/2/10
A-3430 Tulln, Österreich

Matr. Nr. 0225909
geboren am 19. Dezember 1982, Wien

Wien, im Jänner 2014

Abstract
Kurzfassung
Acknowledgement
Contents
List of Acronyms
1 Introduction
 1.1 Micro- and Nanoelectronics Device Simulation
 1.2 Software Users
 1.3 Frameworks
 1.4 Research Goals
 1.5 Outline
2 Related Work
 2.1 Frameworks
 2.2 Micro- and Nanoelectronics Device Simulation Tools
 2.3 Software Libraries and Tools
3 Methods and Tools
 3.1 Programming Paradigms
 3.2 The C++ Programming Language
 3.3 Component-Based Software Engineering
 3.4 Library-Centric Software Design
4 Device Simulation Framework
 4.1 The Basic Semiconductor Equations
 4.2 Requirements and Challenges
  4.2.1 Mesh Generation
  4.2.2 Material Database
  4.2.3 Symbolic Math
  4.2.4 Discretization Schemes
  4.2.5 Solver
 4.3 The ViennaMini Project
  4.3.1 Design
  4.3.2 Material Database
  4.3.3 Device
  4.3.4 Configuration
  4.3.5 Stepper
  4.3.6 Problem Classes
  4.3.7 Mesh Generation
  4.3.8 Device Templates
  4.3.9 Simulator
  4.3.10 Examples
5 Component Execution Framework
 5.1 High Performance Computing
  5.1.1 Shared-Memory Systems
  5.1.2 Distributed-Memory Systems
  5.1.3 Hierarchical (Hybrid) Systems
  5.1.4 Accelerators
 5.2 Requirements and Challenges
  5.2.1 Component System
  5.2.2 Data Communication
  5.2.3 Scheduler
  5.2.4 Configuration
 5.3 The ViennaX Project
  5.3.1 General
  5.3.2 Plugin System
  5.3.3 Exemplary Plugin Implementation
  5.3.4 Configuration
  5.3.5 Scheduler Kernels
  5.3.6 Examples
6 Interactive Simulation Framework
 6.1 Requirements and Challenges
  6.1.1 Module System
  6.1.2 Data Communication
  6.1.3 Graphical User Interface
  6.1.4 Data Visualization
 6.2 The ViennaMOS Project
  6.2.1 Data Communication
  6.2.2 Three-Dimensional Render Visualization
  6.2.3 Two-Dimensional Chart Visualization
  6.2.4 Multiview
  6.2.5 Module System
  6.2.6 Graphical User Interface
  6.2.7 Examples
7 Thesis Evaluation
 7.1 Summary
 7.2 Future Extensions
 7.3 Conclusion
Bibliography
8 Curriculum Vitae
 8.1 Personal Information
 8.2 Academic Career and Positions
 8.3 Sideline Positions
 8.4 Additional Professional Training
 8.5 Awards
9 Own Publications
 Journal Articles
 Book Contributions
 Conference Contributions
 Professional Blog Articles
 Contributed Open Source Projects

[next]