Page MenuHomec4science

2_receiver.tex
No OneTemporary

File Metadata

Created
Thu, Mar 13, 10:12

2_receiver.tex

\documentclass[aspectratio=169]{beamer}
\def\stylepath{../styles}
\usepackage{\stylepath/com303}
\begin{document}
\begin{frame} \frametitle{QAM transmitter, final design}
\begin{figure}
\psset{linearc=0.2}
\begin{dspBlocks}{1.0}{0.8}
\parbox{4ex}{\small \tt \bf ..01100\\ 01010...}\hspace{5ex} &
\BDfilter{Scrambler} & \BDfilter{Mapper} & [name=A,mnode=circle] $K \uparrow$ \\
& &
\ncline{->}{1,1}{1,2} \ncline{->}{1,2}{1,3}
\ncline{->}{1,3}{1,4}^{~~~~$a[n]$}
\end{dspBlocks}
\begin{dspBlocks}{1.2}{0.4}
& [name=B] \BDlowpass[0.5em] & \BDmul & \BDfilter{Re} & \BDfilter{D/A} & $s(t)$ \\
& & $e^{j\omega_c n}$
\ncline{->}{1,2}{1,3}^{$b[n]$} \ncline{->}{1,3}{1,4}^{$c[n]$}
\ncline{->}{1,4}{1,5}^{$s[n]$} \ncline{->}{1,5}{1,6} \ncline{->}{1,6}{1,7}
\ncline{->}{2,3}{1,3}
\end{dspBlocks}
\ncbarr[angleA=0,arm=1cm,linewidth=1.2pt]{A}{B}
\end{figure}
\end{frame}
\begin{frame} \frametitle{It's a dirty job...}
but a receiver has to do it:
\begin{itemize}
\item<1-> propagation delay \only<5->{$\rightarrow$ {\color{blue!70} handshake and delay estimation}}
\item<2-> channel effects \only<6->{$\rightarrow$ {\color{blue!70} adaptive equalization}}
\item<3-> interference \only<7->{$\rightarrow$ {\color{blue!70} line probing}}
\item<4-> clock drift \only<8->{$\rightarrow$ {\color{blue!70} timing recovery}}%
\end{itemize}
\end{frame}
\begin{frame} \frametitle{A blast from the past}
\intro{play audio from a V.32 handshake}
\begin{center}
\movie[inlinesound]{\fbox{\small{Play}}}{14400.wav}
\end{center}
\vspace{1em}
\only<2->{
\begin{itemize}
\item a sound familiar to anyone who's used a modem or a fax machine
\item what's going on here?
\end{itemize}}
\end{frame}
\begin{frame} \frametitle{Remember the (simplified) receiver}
\begin{figure}[tp]
\begin{dspBlocks}{0.8}{0}
& & & [name=A1] \BDfilter{$H(z)$} & & $e^{-j\omega_c n}$ \\
$\hat{s}(t)$~~ & \BDsampler
& [name=A,mnode=dot,linewidth=2pt] &
& [name=B,mnode=circle] + & \BDmul & [name=C] \\ \\ \\ \\ \\
%
\psset{arrows=->}
\ncangle[angleA=90,angleB=180,linewidth=\BDwidth]{A}{A1}
\ncangle[angleA=0,angleB=90,linewidth=\BDwidth]{A1}{B}^{~~~~$j$}
\ncbar[angleA=-90,angleB=-90,linewidth=\BDwidth]{A}{B}
%
\ncline{-}{2,1}{2,2}
\ncline{-}{2,2}{2,3}^{~~~~~~$\hat{s}[n]$}
\ncline{2,5}{2,6}^{$\hat{c}[n]$}
\ncline{-}{2,6}{2,7}^{~~~$\only<2>{\color{red}}\hat{b}[n]$}
\ncline{1,6}{2,6}
\end{dspBlocks}
\vspace{7ex}
\begin{dspBlocks}{1.2}{0}
[name=D,mnode=circle] $K \downarrow$ & \BDfilter{Slicer} &
\BDfilter{Descrambler} &
\hspace{1ex}\parbox{4ex}{\small \tt \bf ..01100\\ 01010...}
\psset{arrows=->}
\ncline{1,1}{1,2}^{$\hat{a}[n]$}
\ncline{1,2}{1,3}
\ncline{1,3}{1,4}
\end{dspBlocks}
\ncbarr[angleA=0,linewidth=1.2pt,linearc=0.2]{C}{D}
\end{figure}
\end{frame}
\begin{frame} \frametitle{Pilot tones}
\centering
if $\hat{s}[n] = \cos((\omega_c + \omega_0)n)$ then $\hat{b}[n] = e^{j\omega_0 n} $
\end{frame}
\begin{frame} \frametitle{Visually, in slow motion, plotting $b[n]$}
\begin{center}
\movie[height=6.5cm,width=7.5cm,poster]{}{14400slowaudio.avi}
\end{center}
\end{frame}
\begin{frame} \frametitle{The main problems}
\begin{figure}
\begin{dspBlocks}{1}{0.4}
$s[n]~$ & \BDfilter{D/A} & \BDfilter{$D(f)$} & \BDadd & \BDfilter{A/D} & $~\hat{s}[n]$ \\
& $T_s$ & & AWGN & $T'_s$ &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,3}^{$s(t)~~$}\ncline{1,3}{1,4}\ncline{1,4}{1,5}^{$\hat{s}(t)$~~~}\ncline{1,5}{1,6}
\ncline{2,4}{1,4}
\end{dspBlocks}
\end{figure}
\begin{itemize}
\item noise
\item propagation delay
\item channel distortion $D(f)$
\item different clocks ($T'_s \neq T_s$)
\end{itemize}
\end{frame}
\begin{frame} \frametitle{Delay compensation}
\intro{it's important to compensate for delay in communication systems since signal onsets are important for detection}
\centering
Assume the channel is a simple delay: $\hat{s}(t)=s(t-d) \Rightarrow D(f) = e^{-j2\pi f d}$
\vspace{1em}
\begin{itemize}[<+->]
\item channel introduces a delay of $d$ seconds
\item we can write $d = (L + \tau)T_s$ with $L\in\mathbb{N}$ and $|\tau|<1/2$
\item $L$ is called the {\em bulk delay}
\item $\tau$ is the fractional delay
\end{itemize}
\end{frame}
\begin{frame} \frametitle{Estimating the bulk delay ($T_s=1$)}
\begin{center}
\begin{figure}
\begin{dspPlot}[yticks=1,xticks=100,sidegap=0]{-4.5,7.5}{-0.8,1.2}
\moocStyle \SpecialCoor
\only<1>{%
\dspSignal{x 0 eq {1} {0} ifelse}
\dspText(1,1.4){$s[n]$}}
\only<2>{%
\dspSignal[linecolor=lightgray]{x 0 eq {1} {0} ifelse}
\dspFunc{x \dspSinc{0}{1}}
\dspText(1,1.4){$s(t)$}}
\only<3>{
\dspSignal[linecolor=lightgray]{x 0 eq {1} {0} ifelse}
\dspFunc[linecolor=lightgray]{x \dspSinc{0}{1}}
\dspFunc[linecolor=blue!60]{x \dspSinc{2.3}{1}}
\dspText(1,1.4){$\hat{s}(t)$}}
\only<4>{%
\dspSignal[linecolor=lightgray]{x 0 eq {1} {0} ifelse}
\dspFunc[linecolor=lightgray]{x \dspSinc{0}{1}}
\dspFunc[linecolor=lightgray]{x \dspSinc{2.3}{1}}
\dspSignal[linecolor=blue!60]{x \dspSinc{2.3}{1}}
\dspCustomTicks[axis=x]{2.3 { } 2 $L$}
\dspText(4,-.6){{\pnode{A}$L+\tau$}}
\pnode(2.3,-.1){B}
\ncarc[linewidth=0.1pt,angleA=180,angleB=-90]{->}{A}{B}
\dspText(1,1.4){$\hat{s}[n]$}}
\end{dspPlot}
\end{figure}
\end{center}
\end{frame}
\begin{frame} \frametitle{Estimating the fractional delay}
\begin{itemize}[<+->]
\item transmit $b[n] = e^{j\omega_0 n}$ (i.e. $s[n] = \cos((\omega_c+\omega_0) n)$)
\item receive $\hat{s}[n] = \cos((\omega_c+\omega_0)(n - L - \tau))$
\item after demodulation and bulk delay offset:
\[
\hat{b}[n] = e^{j\omega_0 (n - \tau)}
\]
\item multiply by known frequency
\[
\hat{b}[n]\,e^{-j\omega_0 n} = e^{-j\omega_0 \tau}
\]
\end{itemize}
\end{frame}
\begin{frame} \frametitle{Compensating for the fractional delay}
\begin{itemize}[<+->]
\item $\hat{s}[n] = s((n - \tau)T_s)$ (after offsetting bulk delay)
\item we need to compute subsample values
\item in theory, compensate with a sinc fractional delay $h[n] = \sinc(n+\tau)$
\item in practice, use local Lagrange approximation
\begin{align*}
x_L(n; t) &= \sum_{k=-N}^{N} x[n + k] L_k^{(N)}(t) \\
L^{(N)}_k(t) &= \mathop{\prod_{i = -N}}_{i\neq n}^{N}\frac{t - i}{k - i} \qquad\qquad k = -N, \ldots, N
\end{align*}
\end{itemize}
\end{frame}
%% finite-length signal, 3 taps
\def\ta{.5 } \def\tb{2 } \def\tc{-1 }
%% the tap plotting string
\def\taps{-1 \ta 0 \tb 1 \tc }
\def\plotTaps{\dspTaps[linecolor=blue!70]{\taps}}
%% Lagrange polynomials
\def\lpa{%
dup -1 div exch %
-1 add -2 div %
mul }
\def\lpb{%
dup 1 add -1 div exch %
-1 add %
mul }
\def\lpc{%
dup exch %
1 add 2 div %
mul }
\def\lagInterp{%
dup \lpa \ta mul exch %
dup \lpb \tb mul exch %
\lpc \tc mul %
add add}
\def\interpolant#1#2#3#4{%
\FPupn\n{#1 1 + 0 trunc}%
\only<#1>{%
\dspTaps{#3 \csname t#4\endcsname}%
\dspFunc[linewidth=0.5pt]{x \csname lp#4\endcsname \csname t#4\endcsname mul}}%
\only<\n-#2>{\dspFunc[linewidth=0.5pt,linecolor=blue!50]{x \csname lp#4\endcsname \csname t#4\endcsname mul}}}%
\def\sample#1#2#3{%
\psline[linewidth=\dspStemWidth,#1](#2,0)(! #2 dup #3)
\psdot[dotstyle=o,dotsize=\dspDotSize,#1](! #2 dup #3)}
\def\LagPoly#1#2#3#4{\only<#1->{%
\dspFunc[linecolor=#2]{x \csname lp#3\endcsname}%
\dspText(0,1.3){\color{#2} $L_{#4}^{1}(t)$}}}
\begin{frame} \frametitle{Compensating for the fractional delay: Lagrange interpolation ($N=1$)}
\begin{center}
\begin{figure}
\begin{dspPlot}[sidegap=0,xticks=custom]{-1.5,1.5}{-2,3}
\moocStyle%
\plotTaps%
\only<2-6>{\psdot[dotstyle=x,linecolor=green!70](0.3,0)}%
\begin{dspClip}
\interpolant{3}{6}{-1}{a}%
\interpolant{4}{6}{0}{b}%
\interpolant{5}{6}{1}{c}%
\only<6->{\dspFunc[linewidth=2pt,xmin=-2,xmax=2]{x \lagInterp}}%
\only<7->{\sample{linecolor=green!70}{0.3}{\lagInterp}}%
\end{dspClip}
\dspCustomTicks[axis=x]{-1 $n-1$ 0 $n$ 1 $n+1$}%
\only<2->{\dspCustomTicks[axis=x]{0.3 $n+\tau$}}
\end{dspPlot}
\end{figure}
\end{center}
\end{frame}
\begin{frame} \frametitle{Lagrange interpolation as an FIR}
\begin{itemize}[<+->]
\item $x(n + \tau) \approx x_L(n; \tau)$
\item $x_L(n; \tau) = \sum_{k=-N}^{N} x[n + k] L_k^{(N)}(\tau) = \sum_{k=-N}^{N} x[n - k] L_{-k}^{(N)}(\tau)$
\item define $d_{\tau}[k] = L_{-k}^{(N)}(\tau)$, $k = -N, \ldots, N$
\item $x_L(n; \tau) = \sum_{k=-N}^{N} x[n - k] d_{\tau}[k]$
\item $x_L(n; \tau) = (x \ast d_{\tau})[n]$
\item $d_{\tau}[k]$ is a $(2N+1)$-tap FIR (dependent on $\tau$)
\end{itemize}
\end{frame}
\begin{frame} \frametitle{Example ($N=1$, second order approximation)}
\begin{align*}
L_{-1}^{(1)}(t) &= t\frac{t-1}{2} \\
L_{0}^{(1)}(t) &= (1-t)(1+t) \\
L_{1}^{(1)}(t) &= t\frac{t+1}{2} \\
\end{align*}
\end{frame}
\begin{frame} \frametitle{Example ($N=1$, second order approximation)}
\[
d_{0.2}[n] = \begin{cases} 0.12 & n=-1 \\ 0.96 & n = 0 \\ -0.08 & n = 1 \\ 0 & \mbox{otherwise} \end{cases}
\]
\end{frame}
\begin{frame} \frametitle{Delay compensation algorithm}
\begin{itemize}[<+->]
\item estimate the delay $\tau$
\item compute the $2N+1$ Lagrangian coefficients
\item filter with the resulting FIR
\end{itemize}
\end{frame}
\begin{frame} \frametitle{Compensating for the distortion}
\begin{figure}
\begin{dspBlocks}{1.5}{0.5}
$s[n]~$ & \BDfilter{D/A} & \BDfilter{$D(f)$} & \BDfilter{A/D} & $~\hat{s}[n]$ \\
% & $T_s$ & & $T'_s$ &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,3}^{$s(t)~~$}\ncline{1,3}{1,4}^{$~\hat{s}(t)$}\ncline{1,4}{1,5}
\end{dspBlocks}
\end{figure}
\end{frame}
%\begin{frame}
% \frametitle{Adaptive signal processing}
% \begin{itemize}[<+->]
% \item processing {\em adapts}\/ to the characteristics of a signal
% \item define an error measure between desired and actual performance
% \item use the error to drive the adaptation
% \vspace{1em}
% \item how? This will be the topic of your next online course!
% \end{itemize}
%\end{frame}
\begin{frame}
\frametitle{Compensating for the distortion}
\begin{figure}
\begin{dspBlocks}{1.5}{0.2}
$s[n]$~~~ & \BDfilter{$D(z)$} & ~~~$\hat{s}[n]$ \\
\ncline{->}{1,1}{1,2}\ncline{->}{1,2}{1,3}
\end{dspBlocks}
\end{figure}
\end{frame}
\begin{frame}
\frametitle{Example: adaptive equalization}
\begin{figure}
\begin{dspBlocks}{1.5}{0.2}
$s[n]$~~~ & \BDfilter{$D(z)$} & \BDfilter{$H(z)$} & ~~~$\hat{s}_e[n] = s[n]$ \\
\ncline{->}{1,1}{1,2}\ncline{->}{1,2}{1,3}^{$\hat{s}[n]$}\ncline{->}{1,3}{1,4}
\end{dspBlocks}
\end{figure}
\end{frame}
\begin{frame}
\frametitle{Example: adaptive equalization}
\intro{use of training sequences is typical case in which we can marry SP techniques to more general algorithmic techniques in ways that were not even thinkable in analog processing}
\begin{itemize}[<+->]
\item in theory, $H(z) = 1/D(z)$
\item but we don't know $D(z)$ in advance
\item $D(z)$ may change over time
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Adaptive equalization}
\begin{figure}
\begin{dspBlocks}{1}{1}
$\hat{s}[n]~$ & \BDfilter{$H(z)$} & \BDsplit & & & & \\
& & \BDsub & $s[n]$ &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,4}\naput{$\hat{s}_e[n]$}
\ncline{1,3}{2,3}
\ncline{2,4}{2,3}
\ncangle[angleA=180,angleB=-90,linewidth=\BDwidth]{2,3}{1,2}\naput{$e[n]$}
\end{dspBlocks}
\end{figure}
\end{frame}
\begin{frame}
\frametitle{Adaptive equalization: bootstrapping via a training sequence}
\setbeamercovered{invisible}
\begin{figure}
\begin{dspBlocks}{1}{0.2}
$a_t[n]~$ & \BDfilter{TX} & \ldots & \\ \\
\ncline{->}{1,1}{1,2}\ncline{->}{1,2}{1,3}^{~~$s[n]$}
\end{dspBlocks}
\pause
\begin{dspBlocks}{1}{1}
$\hat{s}[n]~$ & \BDfilter{$H(z)$} & \BDsplit & \\
& & \BDsub & \BDfilter{Modulator} & ~$a_t[n]$
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,4}\naput{$\hat{s}_e[n]$}
\ncline{1,3}{2,3}
\ncline{2,5}{2,4}\ncline{2,4}{2,3}\nbput{$s[n]$}
\ncangle[angleA=-90,angleB=0,linewidth=\BDwidth]{1,6}{2,4}
\ncangle[angleA=180,angleB=-90,linewidth=\BDwidth]{2,3}{1,2}\naput{$e[n]$}
\end{dspBlocks}
\end{figure}
\end{frame}
\begin{frame}
\frametitle{Adaptive equalization: online mode}
\begin{figure}
\begin{dspBlocks}{1}{1}
$\hat{s}[n]~$ & \BDfilter{$H(z)$} & \BDsplit & \BDfilter{Demod} & \BDfilter{Slicer} & \BDsplit & \\
& & \BDsub & \BDfilter{Modulator} &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,4}\naput{$\hat{s}_e[n]$}
\ncline{1,4}{1,5}\ncline{-}{1,5}{1,6}\ncline{1,6}{1,7}\naput{$\hat{a}[n]$}
\ncline{1,3}{2,3}
\ncline{2,4}{2,3}\nbput{$s'[n]$}
\ncangle[angleA=-90,angleB=0,linewidth=\BDwidth]{1,6}{2,4}
\ncangle[angleA=180,angleB=-90,linewidth=\BDwidth]{2,3}{1,2}\naput{$e[n]$}
\end{dspBlocks}
\end{figure}
\end{frame}
\begin{frame} \frametitle{Adaptive equalization: the LMS algorithm}
FIR equalization:
\begin{align*}
\hat{s}_e[n] &= \sum_{k = 0}^{N-1} h_n[k] \hat{s}[n-k] \\
e[n] &= \hat{s}_e[n] - s[n]
\end{align*}
\vspace{2em}
adapting the coefficients:
\[
h_{n+1}[k] = h_n[k] + \alpha e[n]x[n-k], \qquad k = 0, 1, \ldots, N-1
\]
\end{frame}
\begin{frame}
\frametitle{So much more to do...}
\begin{itemize}[<+->]
\item how do we compensate for differences in clocks?
\item how do we recover from interference?
\item how do we improve resilience to noise?
\end{itemize}
\pause
\centering
\vspace{2em}
advanced topics in communication system design
\end{frame}
\end{document}
\begin{frame}
\frametitle{Timing recovery}
\begin{figure}
\begin{dspBlocks}{1.5}{0.5}
$s[n]~$ & \BDfilter{D/A} & \BDfilter{channel} & \BDfilter{A/D} & $~\hat{s}[n]$ \\
& $T_s$ & & $T'_s$ &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,3}^{$s(t)~~$}\ncline{1,3}{1,4}^{$~\hat{s}(t-\tau)$}\ncline{1,4}{1,5}
\end{dspBlocks}
\end{figure}
\begin{itemize}
\item<2-> in theory $T'_s = T_s$
\item<3-> if not, we have a time drift
\item<4-> need to estimate and compensate for
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Back to timing recovery}
\begin{figure}
\begin{dspBlocks}{1.5}{0.5}
$s[n]~$ & \BDfilter{D/A} & \BDfilter{A/D} & $\hat{s}[n]$ \\
& $T_s$ & $T'_s$ &
%
\psset{arrows=->}
\ncline{1,1}{1,2}\ncline{1,2}{1,3}^{$s(t)$}\ncline{1,3}{1,4}
\end{dspBlocks}
\end{figure}
\begin{itemize}
\item<2-> assume $T'_s = \beta T_s$
\item<3-> each sample will have a delay multiple of $\tau = (T'_s - T_s)/T'_s = (1-\beta)/\beta$
\item<4-> compensation strategy only slightly more complex
\end{itemize}
\end{frame}
\def\polyFun{%
dup 2.315 mul exch %
dup dup mul -3.74583333 mul exch %
dup dup dup mul mul 2.05 mul exch %
dup dup dup dup mul mul mul -0.45416667 mul exch %
dup dup dup dup mul mul mul mul 0.035 mul %
0.5 add add add add add %
3 mul }
\def\b{0.82}
\begin{frame}
\frametitle{Example: sampling too fast}
\begin{figure}
\begin{dspPlot}[sidegap=0.5,xlabel={$\beta=\b$}]{0,5}{-1.3,3}
\moocStyle
\FPupn\bb{\b{} 1 / 3 trunc clip}
\only<2-3>{\multido{\n=0+\bb}{5}{\psdot[dotstyle=x,linecolor=green!70](\n,0)}}
\dspSignal{x \polyFun}
\only<3->{{%
\psset{linecolor=red!50}
\dspFunc[linestyle=dashed,xmin=-.2,xmax=0]{x \polyFun}
\dspFunc[linestyle=dashed,xmin=5,xmax=5.2]{x \polyFun}
\dspFunc[xmin=0,xmax=5]{x \polyFun}}}
\only<4->{\multido{\n=\bb+\bb}{4}{\sample{linecolor=green!70}{\n}{\polyFun}}}
\end{dspPlot}
\end{figure}
\end{frame}
\def\b{1.28}
\begin{frame}
\frametitle{Example: sampling too slow}
\begin{figure}
\begin{dspPlot}[sidegap=0.5,xlabel={$\beta=\b$}]{0,5}{-1.3,3}
\moocStyle
\FPupn\bb{\b{} 1 / 3 trunc clip}
\only<2-3>{\multido{\n=0+\bb}{7}{\psdot[dotstyle=x,linecolor=green!70](\n,0)}}
\dspSignal{x \polyFun}
\only<3->{{%
\psset{linecolor=red!50}
\dspFunc[linestyle=dashed,xmin=-.2,xmax=0]{x \polyFun}
\dspFunc[linestyle=dashed,xmin=5,xmax=5.2]{x \polyFun}
\dspFunc[xmin=0,xmax=5]{x \polyFun}}}
\only<4->{\multido{\n=\bb+\bb}{6}{\sample{linecolor=green!70}{\n}{\polyFun}}}
\end{dspPlot}
\end{figure}
\end{frame}
\begin{frame}
\frametitle{Estimate the time drift}
\begin{itemize}[<+->]
\item send a {\em pilot}, i.e. a sinusoid of known frequency $s[n] = \cos\omega_0 n$
\item look at the deviation from the expected value:
\begin{align*}
s(t) &= \cos((\omega_0/ T_s) t) \\
\hat{s}[n] &= \cos\left(\omega_0 \frac{T'_s}{T_s} n \right) = \cos\left(\beta \omega_0 n \right)
\end{align*}
\end{itemize}
\end{frame}
%\end{document}
\end{document}
\begin{frame}
\frametitle{Example: slower sampling clock}
\begin{figure}
\begin{dspPlot}[sidegap=0.5,xlabel={$\beta=\b$}]{0,5}{-1.3,3}
\moocStyle
\only<2->{{%
\psset{linecolor=red!50}
\dspFunc[linestyle=dashed,xmin=-.2,xmax=0]{x \polyFun}
\dspFunc[linestyle=dashed,xmin=5,xmax=5.2]{x \polyFun}
\dspFunc[xmin=0,xmax=5]{x \polyFun}}}
\dspSignal{x \polyFun}
\only<3->{{%
\psset{linecolor=blue!50}
\multido{\n=0+\b}{6}{\sample{\n}}}}
% \multips(0.5,0)(1,0){5}{\psline[linewidth=0.5pt,linestyle=dashed,linecolor=lightgray](0,3)}
%
% \psdot[dotstyle=o,dotsize=6pt](! 0 dup \polyFun)
%
% \psline[linewidth=0.5pt](1.22,0)(! 1.22 dup \polyFun)
% \psdot[dotstyle=o,dotsize=6pt](! 1.22 dup \polyFun)
%
% \psline[linewidth=\psDSPlineWidth](2.44,0)(! 2.44 dup \polyFun)
% \psdot[dotstyle=o,dotsize=6pt](! 2.44 dup \polyFun)
%
% \psline[linewidth=\psDSPlineWidth](3.66,0)(! 3.66 dup \polyFun)
% \psdot[dotstyle=o,dotsize=6pt](! 3.66 dup \polyFun)
%
% \psline[linewidth=\psDSPlineWidth](4.88,0)(! 4.88 dup \polyFun)
% \psdot[dotstyle=o,dotsize=6pt](! 4.88 dup \polyFun)
%
% \psdot[dotstyle=+,dotangle=45,dotsize=16pt,linecolor=darkgray](! 3 dup \polyFun)
%
% \selectPlotFont
% \psbrace[rot=90,ref=tC,nodesepB=-5pt](0,-.3)(1.22,-.3){$T_s/\beta$}
% \psbrace[rot=90,ref=tC,nodesepB=-5pt](1.22,-.3)(2.44,-.3){$T_s/\beta$}
% \psbrace[rot=90,ref=tC,nodesepB=-5pt](2.44,-.3)(3.66,-.3){$T_s/\beta$}
% \psbrace[rot=90,ref=tC,nodesepB=-5pt](3.66,-.3)(4.88,-.3){$T_s/\beta$}
%
% \psline[arrows=->](1,.3)(1.22,.3) \rput[b](1.11,.35){$\tau$}
% \psline[arrows=->](2,.3)(2.44,.3) \rput[b](2.22,.35){$2\tau$}
% \psline[arrows=->,linecolor=lightgray](3,.3)(3.66,.3) \rput[b](3.33,.35){$3\tau$}
% \psline[arrows=<-](3.66,.3)(4,.3) \rput[b](3.83,.35){$\tau'$}
% %\endpsclip
\end{dspPlot}
\end{figure}
\end{frame}
\end{document}

Event Timeline