📄 ofdm.mdl
字号:
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType "M-S-Function"
MFile "mlfile"
}
Block {
BlockType Outport
Port "1"
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Probe
ProbeWidth on
ProbeSampleTime on
ProbeComplexSignal on
ProbeSignalDimensions off
ProbeFramedSignal off
ProbeWidthDataType "double"
ProbeSampleTimeDataType "double"
ProbeComplexityDataType "double"
ProbeDimensionsDataType "double"
ProbeFrameDataType "double"
}
Block {
BlockType Product
Inputs "2"
Multiplication "Element-wise(.*)"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Zero"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType RelationalOperator
Operator ">="
InputSameDT on
LogicOutDataTypeMode "Logical (see Configuration Parameters: Optimiza"
"tion)"
LogicDataType "uint(8)"
ZeroCross on
SampleTime "-1"
}
Block {
BlockType Selector
InputType "Vector"
IndexMode "One-based"
ElementSrc "Internal"
Elements "1"
RowSrc "Internal"
Rows "1"
ColumnSrc "Internal"
Columns "1"
InputPortWidth "-1"
IndexIsStartValue off
OutputPortSize "1"
}
Block {
BlockType "S-Function"
FunctionName "system"
PortCounts "[]"
SFunctionModules "''"
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
PermitHierarchicalResolution "All"
SystemSampleTime "-1"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType ZeroOrderHold
SampleTime "1"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Helvetica"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "ofdm"
Location [11, 274, 873, 745]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "rotated"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
ReportName "simulink-default.rpt"
Block {
BlockType Reference
Name " "
Ports [1, 1]
Position [686, 115, 724, 150]
Orientation "down"
SourceBlock "dspbuff3/Unbuffer"
SourceType "Unbuffer"
ic "0"
}
Block {
BlockType Reference
Name " "
Ports [1, 1]
Position [395, 310, 435, 350]
Orientation "left"
SourceBlock "dspbuff3/Buffer"
SourceType "Buffer"
N "80"
V "0"
ic "0"
}
Block {
BlockType Reference
Name " "
Ports [1, 1]
Position [615, 308, 690, 352]
Orientation "left"
NamePlacement "alternate"
SourceBlock "commrflib2/Phase//\nFrequency\nOffset"
SourceType "Phase/Frequency Offset"
ShowPortLabels on
freqOffset "df"
phaseOffset "dtheta"
}
Block {
BlockType ZeroOrderHold
Name " Ts "
Position [687, 270, 723, 290]
Orientation "down"
NamePlacement "alternate"
SampleTime "4e-6/80"
}
Block {
BlockType Reference
Name "AWGN\nChannel"
Ports [1, 1]
Position [665, 215, 745, 255]
Orientation "down"
NamePlacement "alternate"
ShowName off
SourceBlock "commchan2/AWGN\nChannel"
SourceType "AWGN Channel"
ShowPortLabels on
seed "1341"
noiseMode "Signal to noise ratio (SNR)"
EbNodB "10"
EsNodB "40"
SNRdB "SNR"
bitsPerSym "1"
Ps "0.01"
Tsym "4e-6/80"
variance "1"
}
Block {
BlockType Reference
Name "Bernoulli Binary\nGenerator"
Ports [0, 1]
Position [115, 43, 195, 87]
FontName "Arial"
SourceBlock "commrandsrc2/Bernoulli Binary\nGenerator"
SourceType "Bernoulli Binary Generator"
ShowPortLabels on
P "0.5"
seed "61"
Ts "4e-6/96"
frameBased on
sampPerFrame "96"
orient off
}
Block {
BlockType SubSystem
Name "OFDM Receiver"
Ports [1, 1]
Position [235, 293, 330, 367]
Orientation "left"
ShowName off
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskDisplay "disp('OFDM\\nReceiver');\n\n"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "OFDM Receiver"
Location [59, 219, 923, 427]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "Received signal"
Position [45, 43, 75, 57]
Port "1"
IconDisplay "Port number"
LatchInput off
}
Block {
BlockType Reference
Name "FFT"
Ports [1, 1]
Position [210, 33, 250, 67]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag0"
SourceBlock "dspxfrm3/FFT"
SourceType "FFT"
CompMethod "Table lookup"
TableOpt "Speed"
BitRevOrder off
additionalParams off
SkipNorm on
allowOverrides on
firstCoeffMode "Same word length as input"
firstCoeffWordLength "16"
firstCoeffFracLength "15"
outputMode "Inherit via internal rule"
outputWordLength "16"
outputFracLength "15"
accumMode "Inherit via internal rule"
accumWordLength "32"
accumFracLength "30"
prodOutputMode "Inherit via internal rule"
prodOutputWordLength "32"
prodOutputFracLength "30"
roundingMode "Floor"
overflowMode off
LockScale off
}
Block {
BlockType Reference
Name "Frame Status\nConversion"
Ports [1, 1]
Position [290, 34, 335, 66]
SourceBlock "dspsigattribs/Frame Status\nConversion"
SourceType "Frame Status Conversion"
ShowPortLabels off
growRefPort off
outframe "Frame-based"
}
Block {
BlockType Selector
Name "Remove\n zero-padding\nand\nreorder"
Ports [1, 1]
Position [375, 28, 425, 72]
Elements "[39:64 1:27]"
InputPortWidth "64"
}
Block {
BlockType Reference
Name "Remove\nPilots"
Ports [1, 1]
Position [455, 14, 500, 86]
SourceBlock "dspindex/Multiport\nSelector"
SourceType "Multiport Selector"
rowsOrCols "Rows"
idxCellArray "{[1:5 7:19 21:26 28:33 35:47 49:53]}"
idxErrMode "Clip Index"
Port {
PortNumber 1
Name "Data"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
ShowSigGenPortName on
}
}
Block {
BlockType Selector
Name "Remove Cyclic\nPrefix"
Ports [1, 1]
Position [120, 28, 170, 72]
Elements "[17:80]"
InputPortWidth "80"
}
Block {
BlockType Outport
Name "Data"
Position [590, 43, 620, 57]
IconDisplay "Port number"
}
Line {
SrcBlock "Frame Status\nConversion"
SrcPort 1
DstBlock "Remove\n zero-padding\nand\nreorder"
DstPort 1
}
Line {
SrcBlock "FFT"
SrcPort 1
DstBlock "Frame Status\nConversion"
DstPort 1
}
Line {
SrcBlock "Received signal"
SrcPort 1
DstBlock "Remove Cyclic\nPrefix"
DstPort 1
}
Line {
SrcBlock "Remove Cyclic\nPrefix"
SrcPort 1
DstBlock "FFT"
DstPort 1
}
Line {
SrcBlock "Remove\n zero-padding\nand\nreorder"
SrcPort 1
DstBlock "Remove\nPilots"
DstPort 1
}
Line {
Name "Data"
Labels [0, 0]
SrcBlock "Remove\nPilots"
SrcPort 1
DstBlock "Data"
DstPort 1
}
Annotation {
Name "From HIPERLAN 2 Matlab Demo"
Position [651, 101]
}
}
}
Block {
BlockType SubSystem
Name "OFDM Transmitter"
Ports [1, 1]
Position [440, 31, 525, 99]
ShowName off
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskDisplay "disp('OFDM\\nTransmitter')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "OFDM Transmitter"
Location [32, 171, 1181, 713]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "In"
Position [305, 318, 335, 332]
Port "1"
IconDisplay "Port number"
LatchInput off
}
Block {
BlockType Selector
Name "Add Cyclic\nPrefix"
Ports [1, 1]
Position [970, 303, 1020, 347]
Elements "[49:64 1:64]"
InputPortWidth "64"
}
Block {
BlockType Reference
Name "Buffer"
Ports [1, 1]
Position [380, 64, 415, 116]
SourceBlock "dspbuff3/Buffer"
SourceType "Buffer"
N "4"
V "0"
ic "0"
}
Block {
BlockType Reference
Name "DSP\nConstant"
Ports [0, 1]
Position [570, 313, 605, 337]
ShowName off
SourceBlock "dspsrcs4/DSP\nConstant"
SourceType "DSP Constant"
ShowPortLabels on
Value "0+0i"
SampleMode "Discrete"
discreteOutput "Frame-based"
continuousOutput "Sample-based"
sampTime "4e-6"
framePeriod "4e-6"
additionalParams off
allowOverrides on
dataType "Inherit from 'Constant value'"
isSigned on
wordLen "16"
udDataType "sfix(16)"
fracBitsMode "Best precision"
numFracBits "15"
InterpretAs1D "off"
Ts "4e-6"
FramebasedOutput "on"
}
Block {
BlockType Reference
Name "Frame Status\nConversion"
Ports [1, 1]
Position [185, 72, 225, 108]
NamePlacement "alternate"
SourceBlock "dspsigattribs/Frame Status\nConversion"
SourceType "Frame Status Conversion"
ShowPortLabels off
growRefPort off
outframe "Sample-based"
}
Block {
BlockType Reference
Name "IFFT"
Ports [1, 1]
Position [880, 309, 920, 341]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag1"
SourceBlock "dspxfrm3/IFFT"
SourceType "IFFT"
CompMethod "Table lookup"
TableOpt "Speed"
BitRevOrder off
cs_in off
SkipNorm off
mode "Complex"
additionalParams off
allowOverrides on
firstCoeffMode "Same word length as input"
firstCoeffWordLength "16"
firstCoeffFracLength "15"
outputMode "Inherit via internal rule"
outputWordLength "16"
outputFracLength "15"
accumMode "Inherit via internal rule"
accumWordLength "32"
accumFracLength "30"
prodOutputMode "Inherit via internal rule"
prodOutputWordLength "32"
prodOutputFracLength "30"
roundingMode "Floor"
overflowMode off
LockScale off
}
Block {
BlockType Reference
Name "Kasami\nSequence\nGenerator"
Ports [0, 1]
Position [55, 67, 135, 113]
NamePlacement "alternate"
SourceBlock "commseqgen2/Kasami\nSequence\nGenerator"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -