?? ieee80211a_lib.mdl
字號:
Position [400, 153, 430, 167]
Port "2"
OutputWhenDisabled "reset"
InitialOutput "0"
}
Line {
SrcBlock "Rectangular QAM\nDemodulator\nBaseband"
SrcPort 1
Points [0, 0; 20, 0]
Branch {
DstBlock "Unipolar to\nBipolar\nConverter2"
DstPort 1
}
Branch {
Points [0, 75]
DstBlock "Rectangular QAM\nModulator\nBaseband1"
DstPort 1
}
}
Line {
SrcBlock "Insert Zero4"
SrcPort 1
DstBlock "Viterbi Decoder1"
DstPort 1
}
Line {
SrcBlock "rxsig"
SrcPort 1
Points [0, 0; 15, 0]
Branch {
DstBlock "Rectangular QAM\nDemodulator\nBaseband"
DstPort 1
}
Branch {
Points [0, 120; 270, 0]
DstBlock "Sum"
DstPort 2
}
}
Line {
SrcBlock "Unipolar to\nBipolar\nConverter2"
SrcPort 1
DstBlock "General Block\nDeinterleaver"
DstPort 1
}
Line {
SrcBlock "Viterbi Decoder1"
SrcPort 1
DstBlock "rxdata"
DstPort 1
}
Line {
SrcBlock "Rectangular QAM\nModulator\nBaseband1"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "symerr"
DstPort 1
}
Line {
SrcBlock "Matrix\nDeinterleaver"
SrcPort 1
DstBlock "Insert Zero4"
DstPort 1
}
Line {
SrcBlock "General Block\nDeinterleaver"
SrcPort 1
DstBlock "Matrix\nDeinterleaver"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Modulator"
Ports [1, 1, 1]
Position [65, 70, 155, 110]
ShowName off
TreatAsAtomicUnit off
MaskType "QAM Modulator-Coder."
MaskDescription "Modulator gates incoming bits so that a bank of"
" different modulators can share the same input frame size."
MaskPromptString "Number of symbols per frame:|Modulation:|Code:|"
"Trellis:|Puncture vector:"
MaskStyleString "edit,edit,edit,edit,edit"
MaskTunableValueString "on,off,off,on,on"
MaskCallbackString "||||"
MaskEnableString "on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on"
MaskToolTipString "on,on,on,on,on"
MaskVarAliasString ",,,,"
MaskVariables "numSymbols=@1;modulation=&2;code=&3;trellisStru"
"cture=@4;punctureVector=@5;"
MaskInitialization "% number of bits per symbol\nswitch modulation"
"\n case 'BPSK', Nb1 = 1;\n case 'QPSK', Nb1 = 2;\n case "
"'16-QAM', Nb1 = 4;\n case '64-QAM', Nb1 = 6;\nend\n\nmodOrder = 2.^Nb1"
";\nNb = numSymbols * Nb1; % tx bits per block\ncodeRate = str2num(strvcat(cod"
"e)).';\nbitsPerBlock = Nb .* codeRate;\n\n% interleaver\ninterleaverRows = 16"
";\nif rem(Nb, interleaverRows)\n error('Number of transmitted bits per"
" block must be multiple of 16.')\nend\ninterleaverCols = Nb / interleaverRows"
";\ninterleaverElements = [...\n 2*floor( [0:Nb-1]/2 ) + ...\n "
" mod( ([0:Nb-1] + Nb - floor( interleaverRows*[0:Nb-1]/Nb ) ), 2 ) ..."
"\n + 1]';"
MaskDisplay "disp(['Modulator\\n' modulation ' ' code])"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "960|BPSK|3/4|poly2trellis(7, [171 133])|[1 1 1 "
"0 0 1].'"
System {
Name "Modulator"
Location [118, 450, 939, 642]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "txdata"
Position [30, 83, 60, 97]
}
Block {
BlockType EnablePort
Name "Enable"
Ports []
Position [355, 15, 375, 35]
}
Block {
BlockType Reference
Name "Convolutional\nEncoder1"
Ports [1, 1]
Position [160, 69, 235, 111]
ShowName off
SourceBlock "commcnvcod2/Convolutional\nEncoder"
SourceType "Convolutional Encoder"
trellis "trellisStructure"
reset "None"
}
Block {
BlockType Gain
Name "Gain1"
Position [690, 75, 710, 105]
ShowName off
}
Block {
BlockType Reference
Name "General Block\nInterleaver"
Ports [1, 1]
Position [475, 66, 540, 114]
ShowName off
SourceBlock "commblkintrlv2/General Block\nInterleaver"
SourceType "General Block Interleaver"
elements "interleaverElements"
}
Block {
BlockType Reference
Name "Matrix\nInterleaver"
Ports [1, 1]
Position [370, 73, 440, 107]
ShowName off
SourceBlock "commblkintrlv2/Matrix\nInterleaver"
SourceType "Matrix Interleaver"
Nrows "interleaverRows"
Ncols "interleaverCols"
}
Block {
BlockType Reference
Name "P2 Puncture"
Ports [1, 1]
Position [275, 76, 330, 104]
ShowName off
SourceBlock "commsequence2/Puncture"
SourceType "Puncture"
punctureVector "punctureVector"
}
Block {
BlockType Reference
Name "Rectangular QAM\nModulator\nBaseband"
Ports [1, 1]
Position [580, 68, 655, 112]
ShowName off
SourceBlock "commdigbbndam2/Rectangular QAM\nModulator\n"
"Baseband"
SourceType "Rectangular QAM Modulator Baseband"
M "modOrder"
InType "Bit"
Enc "Gray"
PowType "Average Power"
MinDist "2"
AvgPow "1"
PeakPow "1"
Ph "0"
numSamp "1"
}
Block {
BlockType Reference
Name "Zero Pad"
Ports [1, 1]
Position [100, 72, 125, 108]
ShowName off
AttributesFormatString "\\n"
SourceBlock "dspsigops/Zero Pad"
SourceType "Zero Pad"
padSigAt "End"
zpadAlong "Columns"
padNumOutRowsSpecMethod "User-specified"
numOutRows "bitsPerBlock"
padNumOutColsSpecMethod "User-specified"
numOutCols "1"
trunc_flag "None"
}
Block {
BlockType Outport
Name "txsig"
Position [745, 83, 775, 97]
}
Line {
SrcBlock "General Block\nInterleaver"
SrcPort 1
DstBlock "Rectangular QAM\nModulator\nBaseband"
DstPort 1
}
Line {
SrcBlock "P2 Puncture"
SrcPort 1
DstBlock "Matrix\nInterleaver"
DstPort 1
}
Line {
SrcBlock "Matrix\nInterleaver"
SrcPort 1
DstBlock "General Block\nInterleaver"
DstPort 1
}
Line {
SrcBlock "Convolutional\nEncoder1"
SrcPort 1
DstBlock "P2 Puncture"
DstPort 1
}
Line {
SrcBlock "Zero Pad"
SrcPort 1
DstBlock "Convolutional\nEncoder1"
DstPort 1
}
Line {
SrcBlock "txdata"
SrcPort 1
DstBlock "Zero Pad"
DstPort 1
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "txsig"
DstPort 1
}
Line {
SrcBlock "Rectangular QAM\nModulator\nBaseband"
SrcPort 1
DstBlock "Gain1"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Select value"
Ports [1, 1]
Position [145, 137, 225, 173]
TreatAsAtomicUnit off
MaskDescription "Using MATLAB-style indexing, output value of se"
"lected element of vector."
MaskPromptString "Vector"
MaskStyleString "edit"
MaskTunableValueString "on"
MaskEnableString "on"
MaskVisibilityString "on"
MaskToolTipString "on"
MaskVariables "vector=@1;"
MaskDisplay "disp('Select\\nValue')"
MaskIconFrame on
MaskIconOpaque off
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "[0 1 2]"
System {
Name "Select value"
Location [480, 610, 791, 775]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "idx"
Position [25, 48, 55, 62]
}
Block {
BlockType Constant
Name "Constant"
Position [40, 100, 70, 130]
ShowName off
}
Block {
BlockType Reference
Name "Direct Look-Up\nTable (n-D)"
Ports [1, 1]
Position [160, 27, 215, 83]
ShowName off
SourceBlock "simulink/Look-Up\nTables/Direct Look-Up\nTa"
"ble (n-D)"
SourceType "LookupNDDirect"
maskTabDims "1"
explicitNumDims "1"
outDims "Element"
tabIsInput "off"
mxTable "vector"
clipFlag "Warning"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [100, 45, 120, 65]
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
}
Block {
BlockType Outport
Name "val"
Position [240, 48, 270, 62]
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [35, 0]
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Direct Look-Up\nTable (n-D)"
DstPort 1
}
Line {
SrcBlock "Direct Look-Up\nTable (n-D)"
SrcPort 1
DstBlock "val"
DstPort 1
}
Line {
SrcBlock "idx"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
}
}
Annotation {
Name "Library blocks for IEEE 802.11a model"
Position [176, 26]
FontName "Arial"
FontSize 14
FontWeight "bold"
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -