update 20180727

This commit is contained in:
acereca 2018-07-27 15:12:32 +02:00
parent 7b58157497
commit 1a851697b7
9 changed files with 250 additions and 21 deletions

View File

@ -0,0 +1,74 @@
#! python3
import pandas as pd
import matplotlib.pyplot as plt
import VisTools.plotting as vp
import ruamel.yaml
yaml = ruamel.yaml.YAML()
data = pd.read_csv('./log_poticalib_ana_02.csv')
print(data.columns)
data['val_poti'] = [int(i, 16) for i in data['val_poti']]
def poll_db(uuid: str):
db = []
with open("./pitstop/pitdb.yaml") as f:
db_raw = yaml.load_all(f)
for doc in db_raw:
db.append(doc)
for doc in db:
doc = dict(doc)
if doc['id'] == uuid:
return doc
return None
def __calc_vpin(data: pd.DataFrame, poly):
m = poly
if m[2] != 0:
data['x'] = 4 * m[2] * (data['v_pit/v'] - m[0]) + m[1]**2
data['x'] = np.sqrt(data['x'].tolist())
data['x'] -= m[1]
data['x'] /= (2 * m[2])
else:
data['x'] = (data['v_pit/v'] - m[0]) / m[1]
return data
default = poll_db('default')
data = __calc_vpin(data, default['poly18v'])
plt.errorbar(
data['x'],
data['v_pit/v'],
fmt='.'
)
plt.errorbar(
data['x'],
data['v_keith/v'],
fmt='.'
)
res = vp.fit(
data['x'],
data['v_keith/v'],
lambda x,m0,m1,m2: m0+m1*x+m2*x*x,
default['poly18v']
)
plt.plot(
data['x'],
[res[0].n+e*res[1].n+res[2].n*e*e for e in data['x']]
)
print('poly18v:',[round(e.n,4) for e in res])
plt.show()

View File

@ -156,7 +156,7 @@ The secondary plots confirm the
\begin{figure}[H]
\centering
\hspace*{-.16\columnwidth}
\includegraphics[width=1.3\columnwidth]{pitstop/20180629/i18ana_postcalib.pdf}
\includegraphics[width=1.3\columnwidth]{../pitstop/20180702/i18ana_postcalib.pdf}
\caption{Post Calibration Measurement of Output Current at the 1.8V Analog Terminal (29.06.2018}
\label{postcalib18iana}
\end{figure}
@ -165,7 +165,49 @@ The secondary plots confirm the
\subsection{Characterization of Dropoff}
\subsection{after <METHOD>-Correction}
Wanting to observe and characterize the voltage drop, happening between the PowerIt output terminal and the HICANN Chips, first the in figure \ref{1v8dip} monitored behavior can be seen.
\begin{figure}[H]
\centering
\hspace*{-.16\columnwidth}
\includegraphics[width=1.3\columnwidth]{../pitstop/20180727/ret_vdip.pdf}
\caption{Voltage dip observed between PowerIt and HICANN, each point represents the state after enabling additional Reticles on the PowerWafer}
\label{1v8dip}
\end{figure}
\subsection{after Numerical-Correction}
The initial approach is a numerical. Through derivation from figures \ref{1v8dip} and \ref{v18_precalib} we can plot a function which maps the measured output current to a corresponding potentiometer setting (fig. \ref{numericalreg}) for which the observed dropoff will be mitigated (or at least near that). Also important is that it is not possible to use non interger values for the potentiometer setting.
\begin{figure}[H]
\centering
\hspace*{-.16\columnwidth}
\includegraphics[width=1.3\columnwidth]{../pitstop/20180727/ret_regulation.pdf}
\caption{Potentiometer Setting (discrete integer), derived from ouput current (discrete floating point). }
\label{numericalreg}
\end{figure}
Fitting these values, with a polynomial of 2nd degree, we obtain:
\begin{align}
P_{val} =& \lfloor m_2 \cdot I_{ana}^2 + m_1 \cdot I_{ana} + m_0 \rceil\\
m_2 =& 51.390262 \frac 1 A\\
m_1 =& -0.263850\frac 1 A\nonumber\\
m_0 =& 0.000258\frac 1 A\nonumber
\end{align}
Which is the numeraical solution if the only desired voltage on HICAN Chips is 1.8V. But if we want to change these, we need a more general solution.
Assuming the 2nd order Term to be small enough, we can assume a linear proportionality between the current and voltage:
\begin{align}
I_{ana, eff} = I_{ana} - \frac{V_{out}-1.8V}{c}
\end{align}
where c is obtained from the linear fit (incline) in figure \ref{1v8dip}
\begin{align}
c = 71.6978\cdot 10^{-3} \frac V A
\end{align}
\section{Pitfalls}

View File

@ -106,3 +106,26 @@ While the measurements done by the STM32-Chip are using a 12bit ADC, we don't ha
\section{1.8V Output Regulation}
%\section{Firmware Requirements}
\section{Power Wafer}
To test the 1.8V Regulation the so called Power Wafer is going to be used, it bahves similarly to a in BrainScales used "fuctional" Wafer module. But it is fundamentally different, as it cannot be used for computation, but only to test for voltages and currents. Its internals behave like switchable ohmic resistors, which provides us with a macimum power draw per section (Reticle) of what is allowed inside a usable wafer.
Like its counterparts, it has the same Layout
\begin{figure}[H]
\centering
\includegraphics[width=\columnwidth]{../pitstop/20180727/ret_pic.pdf}
\caption{example diagram of power wafer, 16 Reticles in use}
\end{figure}
and each of the 48 Reticles can be accessed, digitaly as well as electricaly.
For this work the following circuit can be used to describe the connections, powering these Reticles.
\begin{figure}[H]
\centering
%TODO: unclude simplified resistor ladder
\includegraphics[width=1.3\paperwidth]{<`4`>}
\caption{<`5`>}
\label{<`6`>}
\end{figure}

View File

@ -18,26 +18,27 @@
0x42 & polyFit.T & float arr & 12 & rw\\
\hline
0x4e & sampleTicks & byte & 1 & rw\\
0x4f & V\_out & float & 4 & rw\\
\hline
0x4f & TEMP\_SENSOR & float & 4 & r\\
0x53 & EXT\_AIN & float & 4 & r\\
0x57 & MONITOR\_48V & float & 4 & r\\
0x5b & MONITOR\_48I & float & 4 & r\\
0x5f & MONITOR\_8VBUS & float & 4 & r\\
0x63 & MONITOR\_8IBUS & float & 4 & r\\
0x67 & MONITOR\_8V\_0 & float & 4 & r\\
0x6b & MONITOR\_8V\_1 & float & 4 & r\\
0x6f & MONITOR\_8V\_2 & float & 4 & r\\
0x73 & MONITOR\_8V\_3 & float & 4 & r\\
0x77 & VDD\_1V8\_ANA & float & 4 & r\\
0x7b & VDD\_1V8\_IOUT\_ANA & float & 4 & r\\
0x7f & VDD\_1V8\_DIGI & float & 4 & r\\
0x83 & VDD\_1V8\_IOUT\_DIGI & float & 4 & r\\
0x53 & TEMP\_SENSOR & float & 4 & r\\
0x57 & EXT\_AIN & float & 4 & r\\
0x5b & MONITOR\_48V & float & 4 & r\\
0x5f & MONITOR\_48I & float & 4 & r\\
0x63 & MONITOR\_8VBUS & float & 4 & r\\
0x67 & MONITOR\_8IBUS & float & 4 & r\\
0x6b & MONITOR\_8V\_0 & float & 4 & r\\
0x6f & MONITOR\_8V\_1 & float & 4 & r\\
0x73 & MONITOR\_8V\_2 & float & 4 & r\\
0x77 & MONITOR\_8V\_3 & float & 4 & r\\
0x7b & VDD\_1V8\_ANA & float & 4 & r\\
0x7f & VDD\_1V8\_IOUT\_ANA & float & 4 & r\\
0x83 & VDD\_1V8\_DIGI & float & 4 & r\\
0x87 & VDD\_1V8\_IOUT\_DIGI & float & 4 & r\\
\hline
0x87 & CommitHash & float & 4 & s\\
0x8b & CommitDirtyFlag & byte & 1 & s\\
0x8c & STM32UUID & 96bit & 12 & s\\
0x8b & CommitHash & float & 4 & s\\
0x8f & CommitDirtyFlag & byte & 1 & s\\
0x90 & STM32UUID & 96bit & 12 & s\\
\end{tabular}
\caption{memory mapping of the packed struct moved over i2c}
\caption{memory mapping of the packed struct moved over i2c, \mintinline{cpp}{addr} is the address to use, \mintinline{cpp}{type} is the c++ type, \mintinline{cpp}{size} is in bytes and \mintinline{cpp}{perm} denotes read-writability. writability}
\label{registerbuffer}
\end{figure}

View File

@ -20,7 +20,7 @@
\thispagestyle{empty}
\begin{abstract}
Monitoring System status and regulation parameters within a complex System such as BrainScaleS, provides multiple critical points, which in case of misbehaviour can result in problems within the complete system. To reduce the eroneous data created within BarainScaleS, the PowerIt Board, one of its submodules, was upgraded and received a software ovehaul, containing calibration for the on board measurements and regultion capability for its most critical output terminal.
Monitoring System status and regulation parameters within a complex System such as BrainScaleS, provides multiple critical points, which in case of misbehaviour can result in problems within the complete system. To reduce the eroneous data created within BarainScaleS, the PowerIt Board, one of its submodules, was upgraded and received a software ovehaul, containing calibration for the on board measurements and regultion capability for its most critical output terminal.
\end{abstract}
\setcounter{tocdepth}{1}

BIN
tikz/reticlepower.pdf Normal file

Binary file not shown.

75
tikz/reticlepower.svg Normal file
View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="56px" height="240px" viewBox="0 0 56 240" enable-background="new 0 0 56 240" xml:space="preserve"> <image id="image0" width="56" height="240" x="0" y="0"
href="data:image/png;base64,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" />
</svg>

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

14
tikz/reticlepower.tex Normal file
View File

@ -0,0 +1,14 @@
\documentclass[convert={outfile=\jobname.svg}]{standalone}
\input{./tikzpreamble}
\begin{document}
\begin{circuitikz}[scale=2]
\draw[color=black, thick]
(0,0)
to [R, l={R0}, short, o-] (0,1)
to [R, l={R1}, short, o-] (0,2)
;
\end{circuitikz}
\end{document}