159 lines
5.5 KiB
HTML
159 lines
5.5 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<!--Converted with LaTeX2HTML 2002-2-1 (1.71)
|
|
original version by: Nikos Drakos, CBLU, University of Leeds
|
|
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
|
|
* with significant contributions from:
|
|
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
|
|
<HTML>
|
|
<HEAD>
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
|
|
<TITLE>Sneaky triangle waves</TITLE>
|
|
<META NAME="description" CONTENT="Sneaky triangle waves">
|
|
<META NAME="keywords" CONTENT="book">
|
|
<META NAME="resource-type" CONTENT="document">
|
|
<META NAME="distribution" CONTENT="global">
|
|
|
|
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
|
|
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
|
|
|
<LINK REL="STYLESHEET" HREF="book.css">
|
|
|
|
<LINK REL="next" HREF="node196.html">
|
|
<LINK REL="previous" HREF="node194.html">
|
|
<LINK REL="up" HREF="node193.html">
|
|
<LINK REL="next" HREF="node196.html">
|
|
</HEAD>
|
|
|
|
<BODY >
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html3485"
|
|
HREF="node196.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
|
SRC="next.png"></A>
|
|
<A NAME="tex2html3479"
|
|
HREF="node193.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
|
SRC="up.png"></A>
|
|
<A NAME="tex2html3473"
|
|
HREF="node194.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
|
SRC="prev.png"></A>
|
|
<A NAME="tex2html3481"
|
|
HREF="node4.html">
|
|
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
|
SRC="contents.png"></A>
|
|
<A NAME="tex2html3483"
|
|
HREF="node201.html">
|
|
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
|
|
SRC="index.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html3486"
|
|
HREF="node196.html">Transition splicing</A>
|
|
<B> Up:</B> <A NAME="tex2html3480"
|
|
HREF="node193.html">Predicting and controlling foldover</A>
|
|
<B> Previous:</B> <A NAME="tex2html3474"
|
|
HREF="node194.html">Over-sampling</A>
|
|
<B> <A NAME="tex2html3482"
|
|
HREF="node4.html">Contents</A></B>
|
|
<B> <A NAME="tex2html3484"
|
|
HREF="node201.html">Index</A></B>
|
|
<BR>
|
|
<BR>
|
|
<!--End of Navigation Panel-->
|
|
|
|
<H2><A NAME="SECTION001442000000000000000">
|
|
Sneaky triangle waves</A>
|
|
</H2>
|
|
|
|
<P>
|
|
For low fundamental frequencies, over-sampling is an easy way to get adequate
|
|
foldover protection. If we wish to allow higher frequencies, we will need a
|
|
more sophisticated approach. One possibility is to replace discontinuities by
|
|
ramps, or in other words, to replace component sawtooth waves by triangle
|
|
waves, as treated in Section <A HREF="node192.html#sect10.gentriangle">10.3.4</A>,
|
|
with values of <IMG
|
|
WIDTH="41" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
|
|
SRC="img1356.png"
|
|
ALT="$M/N$"> small enough
|
|
that the result sounds like a sawtooth wave, but large enough to control
|
|
foldover.
|
|
|
|
<P>
|
|
Returning to Figure <A HREF="node194.html#fig10.08">10.8</A>, suppose for example we imitate a sawtooth
|
|
wave with a triangle wave with <IMG
|
|
WIDTH="20" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
|
|
SRC="img86.png"
|
|
ALT="$M$"> equal to two samples, so that the first
|
|
notch falls on the Nyquist frequency. Partials above the first notch (the 17th
|
|
partial in the figure) will fold over; the worst of them is about 40 dB below
|
|
the fundamental. On the other hand, the partial strengths start dropping faster
|
|
than those of a true sawtooth wave at about half the Nyquist frequency. This
|
|
is acceptable in some, but not all, situations.
|
|
|
|
<P>
|
|
The triangle wave strategy can be combined with over-sampling to improve the
|
|
situation further. Again in the context of Figure <A HREF="node194.html#fig10.08">10.8</A>, suppose we
|
|
over-sample by a factor of 4, and set the first notch at the original sample
|
|
rate. The partials up to the Nyquist frequency (partial 8, at the fundamental
|
|
frequency shown in the figure) follow those of the true sawtooth wave fairly
|
|
well. Foldover sets in only at partial number 48, and is 52 dB below the
|
|
fundamental. This overall behavior holds for any fundamental frequency up to
|
|
about one quarter the sample rate (after which <IMG
|
|
WIDTH="20" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
|
|
SRC="img86.png"
|
|
ALT="$M$"> exceeds <IMG
|
|
WIDTH="32" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
|
|
SRC="img1265.png"
|
|
ALT="$N/2$">). Setting the
|
|
notch frequency to the original sample rate is equivalent to setting the
|
|
segment of length <IMG
|
|
WIDTH="28" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
|
|
SRC="img1361.png"
|
|
ALT="$2M$"> to one sample (at the original sample rate).
|
|
|
|
<P>
|
|
<HR>
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html3485"
|
|
HREF="node196.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
|
SRC="next.png"></A>
|
|
<A NAME="tex2html3479"
|
|
HREF="node193.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
|
SRC="up.png"></A>
|
|
<A NAME="tex2html3473"
|
|
HREF="node194.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
|
SRC="prev.png"></A>
|
|
<A NAME="tex2html3481"
|
|
HREF="node4.html">
|
|
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
|
SRC="contents.png"></A>
|
|
<A NAME="tex2html3483"
|
|
HREF="node201.html">
|
|
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
|
|
SRC="index.png"></A>
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html3486"
|
|
HREF="node196.html">Transition splicing</A>
|
|
<B> Up:</B> <A NAME="tex2html3480"
|
|
HREF="node193.html">Predicting and controlling foldover</A>
|
|
<B> Previous:</B> <A NAME="tex2html3474"
|
|
HREF="node194.html">Over-sampling</A>
|
|
<B> <A NAME="tex2html3482"
|
|
HREF="node4.html">Contents</A></B>
|
|
<B> <A NAME="tex2html3484"
|
|
HREF="node201.html">Index</A></B>
|
|
<!--End of Navigation Panel-->
|
|
<ADDRESS>
|
|
Miller Puckette
|
|
2006-12-30
|
|
</ADDRESS>
|
|
</BODY>
|
|
</HTML>
|