📄 read me.html
字号:
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/sttc4PskUseMex.m"><FONT
size=2>sttc4PskUseMex.m<O p></O></FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/stViterbi.mexglx"><FONT
size=2>stViterbi.mexglx</FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/bitErrFast.mexglx"><FONT
size=2>bitErrFast.mexglx</FONT></A></SPAN></P></TD>
<TD
style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0in; WIDTH: 239.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 150.25pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt"
vAlign=top width=319>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Here all the
functions are executed.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Build the trellis
structure.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Space time code
encoder and decoder.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></SPAN><FONT
size=2></FONT> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Space time code
viterbi decoder.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Compares the
resulting bits to the original one and find the error rate.<O
p></O></FONT></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-ALIGN: center"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT size=2> <STRONG>Table
2. </STRONG>Function (Linux/Unix version)</FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>MATLAB’s .m file version
of the encoder-decoder:<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<TABLE class=MsoTableGrid
style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BACKGROUND: white; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext"
cellSpacing=0 cellPadding=0 border=1>
<TBODY>
<TR
style="HEIGHT: 123.25pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
<TD
style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt solid; WIDTH: 239.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 123.25pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt"
vAlign=top width=319>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/qpskSpaceTimeMainNormal.m"><FONT
size=2>qpskSpaceTimeMainNormal.m<O p></O></FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/stTrellis.m"><FONT
size=2>stTrellis.m<O p></O></FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/sttc4Psk.m"><FONT
size=2>sttc4Psk.m<O p></O></FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/bitErrFast.dll"><FONT
size=2>bitErrFast.dll<O p></O></FONT></A></SPAN></P></TD>
<TD
style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0in; WIDTH: 239.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 123.25pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt"
vAlign=top width=319>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Here all the
functions are executed.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Build the trellis
structure.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Space time code
encoder and decoder.<O p></O></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></SPAN><FONT
size=2></FONT> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>Compares the
resulting bits to the original one and find the error rate.<O
p></O></FONT></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-ALIGN: center"><FONT
size=2><SPAN style="COLOR: black; FONT-FAMILY: Verdana"><O p><STRONG>Table
3.</STRONG> MATLAB m file f</O></SPAN><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p>unction</O></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT size=2><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p></O></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>The C source
code:</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p></O></SPAN><FONT
size=2></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT
size=2></FONT></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/stViterbi.c"><FONT size=2>stViterbi.c<O
p></O></FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><A
href="http://bsnugroho.googlepages.com/bitErrFast.c"><FONT
size=2>bitErrFast.c</FONT></A></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p><FONT size=2></FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT face=georgia
size=2><STRONG>Running simulation</STRONG></FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2>I did not include
some fancy user interfaces in order to keep the souce codes as clean as
possible, hence the main idea can be conveyed with clarity.
Nevertheless, the codes are written with flexibility, so only minimal alteration
is needed to run the simulation under various
conditions. Firstly, you need to decide the number of states by
changing <SPAN style="COLOR: black; FONT-FAMILY: Verdana"><FONT
face="courier new,monospace"><STRONG>qpskSpaceTimeMain.m</STRONG></FONT> for
MEX, or <FONT
face="courier new,monospace"><STRONG>qpskSpaceTimeMainNormal.m</STRONG></FONT>
for normal MATLAB script:</SPAN></FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT face="courier new,monospace"
size=2>[line 5]: nrState = 4;<BR></FONT><BR><FONT size=2><FONT face=verdana>The
readily available option for</FONT> <FONT
face="courier new,monospace">nrState</FONT> are 4, 8, 16, 32, 64, 128, and
256. If you be able to generate your own generator matrix, you might
want to try <FONT face="Courier New">nrState </FONT>beyond 256
states. Secondly, you might want to change other parameters, such
as:</FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2></FONT></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2><FONT
face="courier new,monospace">[line 8]: <SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2><FONT
face="courier new,monospace">SNRindB = [8 10 12 14 16];</FONT><FONT
face=Verdana>, Signal to Noise Ratio (SNR)
range,</FONT></FONT></SPAN></SPAN></FONT></FONT></SPAN></SPAN></FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2></FONT></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2><FONT
face="courier new,monospace">[line 11]: N = 10000;</FONT>, number of
frame,</FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2></FONT></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT size=2><FONT
face="courier new,monospace">[line 14]: D = 130;</FONT>, number of data per
frame.</FONT></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2></FONT></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2>Finally, call <SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
face="courier new,monospace"><STRONG>qpskSpaceTimeMain.m</STRONG></FONT> or
<FONT face="courier new,monospace"><STRONG>qpskSpaceTimeMainNormal.m
</STRONG></FONT><FONT face=Verdana>from MATLAB's
shell. </FONT></SPAN>If you want to make multiple plots
under one figure, do not forget to hold the plot and change the curve
properties (color, line, and point) as
well. </FONT></SPAN></SPAN><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT
size=2></FONT></SPAN></SPAN> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"> </P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"></O></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><O p></O></SPAN><SPAN
style="COLOR: black; FONT-FAMILY: Verdana"><FONT face=georgia
size=2><STRONG>Example of the output</STRONG></FONT></SPAN></P>
<P class=separator style="CLEAR: both; TEXT-ALIGN: center"><A
style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: 1em; MARGIN-RIGHT: 1em; BACKGROUND-COLOR: transparent; BORDER-RIGHT-WIDTH: 0px; cssFloat: "
href="http://bsnugroho.googlepages.com/qpskSttc01.png/qpskSttc01-full.jpg"><FONT
size=2><IMG style="cssFloat: "
src="http://bsnugroho.googlepages.com/qpskSttc01.png/qpskSttc01-large.jpg"
Ol="293" closure hashCode GALLERYIMG="no"></FONT></A></P>
<P class=separator style="CLEAR: both; TEXT-ALIGN: center"><FONT
size=2><STRONG>Figure 1. </STRONG>Frame error rate vs. SNR</FONT></P>
<P class=separator style="CLEAR: both; TEXT-ALIGN: left"><SPAN
style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><FONT
size=2><STRONG>Figure 1</STRONG> shows that codes with 64, 128 and 256 states
almost overlap each other. It seems that improvement is negligible when you
increase the state number over 64, but you must take into account the code
design, which is how you define the generator matrix. In this simulation I do
not use the optimum code criterion as described in [1] for 64, 128 and 256
states.</FONT></SPAN></P>
<P class=separator style="CLEAR: both; TEXT-ALIGN: left"><SPAN
style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><FONT
face=georgia size=2><STRONG>References</STRONG></FONT></SPAN></P>
<P class=separator style="CLEAR: both; TEXT-ALIGN: left"><SPAN
style="FONT-SIZE: 12pt; COLOR: black; FONT-FAMILY: Verdana; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-bidi-font-family: 'Times New Roman'"><FONT
size=2>[1] V. Tarokh, N. Seshari, and A. R. Calderbank, "Space-Time
Code for High Data Rate Wireless Communication: Performance Criterion and Code
Construction", <EM>IEEE Trans. On Information Theory</EM>, vol. 44, no. 2,
pp 744-765, March 1998. </FONT></SPAN></P></O></SPAN></DIV></DIV>
<DIV style="CLEAR: both"></DIV></DIV></DIV><!-- /wrapper --><!-- /main-content -->
<DIV id=footer>
<DIV class=wrapper>
<HR>
<P>
<DIV id=g_footer>
<P style="TEXT-ALIGN: center"> <FONT size=2> </FONT><A
href="http://www.google.com/home"><FONT size=2>Home</FONT></A><FONT
size=2> | </FONT><A href="http://bsnugroho.googlepages.com/about"><FONT
size=2>About</FONT></A></P>
<P style="TEXT-ALIGN: center"> </P>
<P style="TEXT-ALIGN: center"> </P>
<P style="TEXT-ALIGN: center"><FONT color=#ffff99 size=1><A
href="http://www.enom.com/"><FONT color=#ffffff>Site supported by</FONT><FONT
color=#ffffff> eNom</FONT></A></FONT></P></DIV>
<P></P>
<DIV
style="CLEAR: both"></DIV></DIV></DIV><!-- /wrapper --><!-- /footer --></DIV></DIV><!-- /wrapper --><!-- /container -->
<DIV id=extraDiv1><SPAN></SPAN></DIV>
<DIV id=extraDiv2><SPAN></SPAN></DIV>
<DIV id=extraDiv3><SPAN></SPAN></DIV>
<DIV id=extraDiv4><SPAN></SPAN></DIV>
<DIV id=extraDiv5><SPAN></SPAN></DIV>
<DIV id=extraDiv6><SPAN></SPAN></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -