Skip to content

Commit

Permalink
dsp/pdm: Include conversion logical diagram
Browse files Browse the repository at this point in the history
  • Loading branch information
Pratchaya Khansomboon committed Dec 4, 2024
1 parent 8af00cc commit 107695e
Showing 1 changed file with 70 additions and 2 deletions.
72 changes: 70 additions & 2 deletions dsp/pdm.tex
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,25 @@
\pgfusepath{draw}
}
}
\pgfdeclareshape{decimation}{
\inheritsavedanchors[from=rectangle]
\inheritanchorborder[from=rectangle]
\inheritanchor[from=rectangle]{center}
\anchor{left}{\pgfpoint{-0.5cm}{0.0cm}}
\anchor{right}{\pgfpoint{0.5cm}{0.0cm}}
\anchor{top}{\pgfpoint{0.0cm}{0.5cm}}
\anchor{bot}{\pgfpoint{0.0cm}{-0.5cm}}
\backgroundpath{
\pgfsetlinewidth{0.8pt}
\pgfpathrectanglecorners{\pgfpoint{-0.5cm}{-0.5cm}}{\pgfpoint{0.5cm}{0.5cm}}
\pgfpathmoveto{\pgfpoint{-0.25cm}{0.25cm}}
\pgfpathlineto{\pgfpoint{-0.25cm}{-0.25cm}}
\pgfpathmoveto{\pgfpoint{-0.30cm}{-0.185cm}}
\pgfpathlineto{\pgfpoint{-0.25cm}{-0.25cm}}
\pgfpathlineto{\pgfpoint{-0.20cm}{-0.185cm}}
\pgfusepath{draw}
}
}
% \ctikzset{tripoles/op amp/width/.initial=.8}
% \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/op amp/width}}{opamp}{\ctikzvalof{bipoles/op amp/width}}{
% \pgf@circ@res@step = \ctikzvalof{bipoles/op amp/width}\pgf@circ@Rlen
Expand Down Expand Up @@ -212,8 +231,8 @@

@article{article:dsm,
author={Razavi, Behzad},
journal={IEEE Solid-State Circuits Magazine},
title={The Delta-Sigma Modulator [A Circuit for All Seasons]},
journal={IEEE Solid-State Circuits Magazine},
title={The Delta-Sigma Modulator [A Circuit for All Seasons]},
year={2016},
volume={8},
number={2},
Expand Down Expand Up @@ -591,6 +610,55 @@ \subsection{Delta-Sigma Modulator}
\label{fig:dsint}
\end{figure}

\begin{figure}[H]
\centering
\begin{circuitikz}[scale=1, transform shape]
\draw (0,0) coordinate(origin) to[short, -o] ++(-1, 0) node[left]{$V_{in}$};
\draw (origin) node[inputarrow]{} node[dflowpass, anchor=left](alp){};
\draw (alp.right) to[short] ++(1,0) node[inputarrow]{} node[adder, anchor=left](sum){};
\draw (sum.left) ++(-0.25,0) node[above]{$+$}; % +
\draw (sum.south) ++(0,-0.25) node[left]{$-$}; % -
\draw (sum.right) to[short] ++(1,0) node[inputarrow]{} node[twoportshape, anchor=left, t=$\int$](sigma){};
\draw (sigma.right) to[short] ++(1,0) node[inputarrow]{} node[quantizer, anchor=left](quant){};
\draw (quant.right) to[short, -*] ++(1,0) coordinate(quantsplit) to[short] ++(1,0) node[inputarrow]{} node[right]{$D_{out}$};
\draw (quantsplit) to[short] ++(0,-1.5) coordinate(qsbot) to[short] (qsbot-| sum) coordinate(fb);
\draw (fb) to[short] (sum.south) node[inputarrow, rotate=90]{};
% \draw (quant.top) ++(0,0.5) coordinate(clkpos) to[short] (quant.top) node[inputarrow, rotate=-90]{}
% (clkpos) node[right]{\tiny CLK};
% Text Labels
\draw (alp) ++(0,1.25) node[above]{\parbox{2cm}{\centering\scriptsize Analog Lowpass filter}};
\draw (sum) ++(0,1.25) node[above]{\parbox{2cm}{\centering\Large $\Delta$}};
\draw (sigma) ++(0,1.25) node[above]{\parbox{2cm}{\centering\Large $\Sigma$}};
\draw (quant) ++(0,1.25) node[above]{\parbox{1.5cm}{\centering\scriptsize 1-bit Quantizer}};
\draw (fb) node[left]{$V_{f}$};
\end{circuitikz}
\caption{Simplified Logical Steps Converting Analog to PDM Digital Signal using DSM.}
\label{fig:adcpdm}
\end{figure}

\begin{figure}[H]
\centering
\begin{circuitikz}[scale=1, transform shape]
\draw (0,0) coordinate(origin) to[short, -o] ++(-1, 0) node[left]{$D_{in}$};
\draw (origin) node[inputarrow]{} node[dflowpass, anchor=left](dlp){};
\draw (dlp.right) to[short] ++(1,0) node[inputarrow]{}
node[decimation, anchor=left](deci){} (deci.center) ++(0.08cm,0) node[]{M};
\draw (deci.right) to[short] ++(1,0) node[inputarrow]{}
node[dfhighpass, anchor=left](dhp){};
\draw (dhp.right) to[short] ++(1,0) node[inputarrow]{}
node[twoportshape, anchor=left, t={x}](gain){};
\draw (gain.right) to[short] ++(1,0) node[inputarrow]{}
node[right]{\small PCM};
% Text Labels
\draw (dlp) ++(0, 1) node[above]{\parbox{2cm}{\centering\scriptsize Digital Lowpass filter}};
\draw (deci) ++(0, 1) node[above]{\parbox{2cm}{\centering\scriptsize Decimation}};
\draw (dhp) ++(0, 1) node[above]{\parbox{2cm}{\centering\scriptsize Digital Highpass filter}};
\draw (gain) ++(0, 1) node[above]{\parbox{2cm}{\centering\scriptsize Gain}};
\end{circuitikz}
\caption{Simplified Logical Steps Converting PDM Digital Signal to Analog Signal.}
\label{fig:pdm2pcm}
\end{figure}

\newpage
\printbibliography
\end{document}

0 comments on commit 107695e

Please sign in to comment.