# Under the Volcano – Heat in Microchips

As ESR-5 in the ROMSOC project I work at the Bergische Universität Wuppertal (Germany) in the picturesque surroundings of das Bergisches Land and at ST Microelectronics at the foot of Mount Etna in Catania (Italy). After having spent my first three months in Wuppertal, I am now living in Catania for six months. In a stark contrast to the colossal size of the ever looming mount Etna, my research takes me into the miniature world of nanoelectronics.

Microchip details are in the order of $10^{-9}$ meters, one millionth of a millimetre. On that scale a human hair looks like a giant tree. Now many phenomena (electro mechanical, thermal, quantum physical) occur inside microchips. In this blog I will focus on thermal aspects. Given the nano-scale of the details it is impossible to perform any measurements inside a working microchip. To understand and try to improve processes inside microchips we convert them into mathematical equations and apply a combination of multirate (MR) and model order reduction (MOR) techniques. Both techniques are well known individually but combining them is novel.

Our goal is to build a simulation of what happens inside a working microchip to help microchip designers create better products.

### The Problem: Simulating A Large Coupled System

In the simulation of nanoelectronics there are a great many things to consider. Whilst trying to accurately model the natural phenomena happening inside a microchip one should also safeguard the feasibility of this models numerical solutions. The focus of this project lies on the simulation of large coupled systems with di erent intrinsic time scales.

So let us start at the beginning and look at the origins of these large coupled systems. A microchip is essentially a circuit of many di fferent components, e.g. resistors or transistors, that interact with each other. These interactions are modelled by means of equations and together they form a system of equations. The equations governing the heat of components and the circuit are coupled together, resulting in a coupled system of equations:

$&space;\Sigma&space;=&space;\begin{cases}&space;\mathbf{M}&space;\dot{\mathbf{x}}&space;=&space;\mathbf{A}\textbf{x}(t)&space;+&space;\textbf{B}\textbf{u}(t),&space;\\&space;\textbf{y}(t)&space;=&space;\textbf{C}^T\textbf{x}(t).&space;\end{cases}&space;\\$

Where $\textbf{x}(t)$ is the state vector of the coupled system,  the input and $\textbf{y}(t)$ $\textbf{u}(t)$the output vector. Furthermore, we consider the system, the input and the output to be linear for now.
As these circuits get more and more intricate these systems continue to grow in size. For modern day microchips these systems can consist of millions of equations. As one could imagine this would become quite unfeasible for straightforward simulation.

### MR and MOR

The objective of this project is to combine MR and MOR to drastically improve the simulation speed. MR can exploit the di erent dynamical time scales of subsystems to improve the overall computational efficiency, without losing the global solution accuracy. MOR aims to reduce the size of subsystems and decrease the numerical eff ort for each time step whilst maintaining a certain level of accuracy.

### MR

Consider the previously mentioned system of circuit equations and heat equations, combined in one generalised system.

$\dot{\mathbf{x}}(t)&space;=&space;F(\textbf{x}(t),t),$

with $\textbf{x}\in&space;\mathbb{R}^n$. Since two phenomena act on separate time scales, (circuit equations evolve very fast compared to the slow heat equations) the system can be naturally split into two systems.

\begin{align*}&space;\dot{\mathbf{x}}_A(t)&space;&=&space;F_A(\textbf{x}_A(t),\textbf{x}_L(t),t),\\&space;\dot{\mathbf{x}}_L(t)&space;&=&space;F_L(\textbf{x}_A(t),\textbf{x}_L(t),t).&space;\end{align*}\\

Where $\textbf{x}_A&space;\in&space;\mathbb{R}^{n_A}$ denote the fast changing, active components and
$\textbf{x}_L&space;\in&space;\mathbb{R}^{n_L}$ the slow changing, latent components of $\textbf{x}$. By using a multirate method this system can be integrated using a macro time step for the latent subsystem and a micro time step for the active subsystem, as illustrated in the figure below.

So MR divides the system into subsystems with di fferent dynamic scales. This results in subsystems with similar intrinsic characteristics, which makes them suitable for model order reduction.

### MOR

In MOR the goal is to try to approximate the output $\mathbf{y}(t)$ of a large system $\Sigma$ of $n$ equations. This approximation is done by creating a smaller system $\tilde{\Sigma&space;}$ of $r$ equations. This smaller system $\tilde{\Sigma&space;}$  should be constructed in such a way that the di fference between its output, $\tilde{y}\left&space;(&space;t&space;\right&space;)$ and the original, $y\left&space;(&space;t&space;\right&space;)$, is small, while $r$ is also much smaller than $n$.

In the context of circuit simulation this smaller system is used to obtain faster simulations with results that approximate the full simulation to a certain degree of accuracy. A general form of MOR can be described by choosing suitable matrices $\bold{V}$ and $\bold{W}$, with $\bold{V}$ and $\bold{W}$ biorthonormal, to create the following projection:

Which can be expressed in mathematical form by

$&space;\tilde{\Sigma}&space;=&space;\begin{cases}&space;\textbf{W}^T\textbf{M}&space;\textbf{V}\dot{\mathbf{\tilde{x}}}(t)&space;=&space;\textbf{W}^T\mathbf{A}\textbf{V}\mathbf{\tilde{x}}(t)&space;+&space;\textbf{W}^T\textbf{B}\textbf{u}(t),&space;\\&space;\mathbf{\tilde{y}}(t)&space;=&space;\mathbf{C}^T\mathbf{V}\mathbf{\tilde{x}}(t).\\&space;\end{cases}$

### The Solution: Combining MR and MOR

To give an intuitive example of how to combine these two techniques consider a multirate system as de fined by

\begin{align*}&space;\dot{\mathbf{x}}_A(t)&space;&=&space;\mathbf{f}_A(\textbf{x}_A(t),\textbf{x}_L(t),t),\\&space;\dot{\mathbf{x}}_L(t)&space;&=&space;\mathbf{A}\mathbf{x}_L(t)&space;+&space;\mathbf{B}\mathbf{x}_A(t),\\&space;\mathbf{x}_L(t)&space;&=&space;\mathbf{C}^T\mathbf{x}_L(t).&space;\end{align*}\\

Note that  $\dot{\mathbf{x}}_L(t)$ is considered to be a linear. Now we can apply model order reduction to  $\mathbf{x}_L$  by constructing matrices $\bold{V}$and $\bold{W}$. This results in the system

\begin{align*}&space;\dot{\mathbf{x}}_A(t)&space;&=&space;\mathbf{f}_A(\textbf{x}_A(t),\textbf{x}_L(t),t),\\&space;\dot{\mathbf{x}}_{L,r}(t)&space;&=&space;\mathbf{W}^T\mathbf{A}\textbf{V}\mathbf{x}_{L,r}(t)&space;+&space;\textbf{W}^T\textbf{B}\textbf{x}_A(t),&space;\\&space;\mathbf{\tilde{x}}_L(t)&space;&=&space;\mathbf{C}^T\mathbf{V}\mathbf{x}_{L,r}(t).&space;\end{align*}

For now this simple example serves as an apt illustration. However, as the dimension of the output variable $\mathbf{\tilde{x}}_L(t)$ is still equal to the dimension of the coupling interface we are not quite there yet, but those technicalities will be a story for another blog post.

### The Research Project

The main objective of this project is to combine MR and MOR in an industrial setting. This means that instead of the simple linear system given as an example, more complex systems will be considered, e.g. non-linear time-dependent systems or combinations of a variety of diff erent subsystems linked together for which diff erent types of MR and MOR techniques need to be considered.

Besides the combination of the two techniques other goals include: defi ning error estimates linked to the accuracy requirements of the iteration level of the optimisation flow, the preservation of overall properties of the system and stability of the dynamic iteration process.

I hope that this brief introduction to my research topic has given you some insight into my daily activities. To follow the progress of my fellow researchers and me please keep a sharp eye on the ROMSOC website and follow us on Twitter and Facebook!
For now tschüss and arrivederci.
Marcus Bannenberg