📄 mimo_ofdm_4t4r_1024c.mdl
字号:
Branch {
DstBlock "Channel R1"
DstPort 1
}
Branch {
Points [0, 90]
DstBlock "Channel R2"
DstPort 1
}
}
Line {
SrcBlock "t2"
SrcPort 1
Points [0, 0; 100, 0]
Branch {
DstBlock "Channel R2"
DstPort 2
}
Branch {
Points [0, -90]
DstBlock "Channel R1"
DstPort 2
}
}
Line {
SrcBlock "t3"
SrcPort 1
Points [80, 0; 0, -90]
Branch {
Points [0, -90]
DstBlock "Channel R1"
DstPort 3
}
Branch {
DstBlock "Channel R2"
DstPort 3
}
}
Line {
SrcBlock "t4"
SrcPort 1
Points [50, 0; 0, -180]
Branch {
Points [0, -90]
DstBlock "Channel R1"
DstPort 4
}
Branch {
DstBlock "Channel R2"
DstPort 4
}
}
Line {
SrcBlock "SNR"
SrcPort 1
Points [305, 0; 0, -280]
Branch {
Points [0, -90]
DstBlock "AWGN\nChannel"
DstPort 2
}
Branch {
DstBlock "AWGN\nChannel1"
DstPort 2
}
}
}
}
Block {
BlockType SubSystem
Name "Channel\nEstimation"
Ports [0, 1]
Position [455, 284, 555, 326]
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "Channel\nEstimation"
Location [2, 82, 1014, 721]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Reference
Name "Bernoulli Binary\nGenerator"
Ports [0, 1]
Position [35, 123, 115, 167]
DialogController "commDDGCreate"
DialogControllerArgs "DataTag1"
SourceBlock "commrandsrc2/Bernoulli Binary\nGenerator"
SourceType "Bernoulli Binary Generator"
ShowPortLabels "on"
SystemSampleTime "-1"
FunctionWithSeparateData "off"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
P "0"
seed "61"
Ts "1e-4/1024"
frameBased "on"
sampPerFrame "1024"
orient "off"
outDataType "double"
}
Block {
BlockType Reference
Name "Bernoulli Binary\nGenerator1"
Ports [0, 1]
Position [35, 203, 115, 247]
DialogController "commDDGCreate"
DialogControllerArgs "DataTag2"
SourceBlock "commrandsrc2/Bernoulli Binary\nGenerator"
SourceType "Bernoulli Binary Generator"
ShowPortLabels "on"
SystemSampleTime "-1"
FunctionWithSeparateData "off"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
P "1"
seed "79"
Ts "1e-4/1024"
frameBased "on"
sampPerFrame "1024"
orient "off"
outDataType "double"
}
Block {
BlockType SubSystem
Name "OFDM\nModulator"
Ports [4, 4]
Position [260, 151, 380, 229]
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "OFDM\nModulator"
Location [2, 82, 1014, 721]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [100, 133, 130, 147]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "In2"
Position [100, 188, 130, 202]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "In3"
Position [100, 243, 130, 257]
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "In4"
Position [100, 298, 130, 312]
Port "4"
IconDisplay "Port number"
}
Block {
BlockType Selector
Name "Add cyclic prefix1"
Ports [1, 1]
Position [345, 121, 385, 159]
InputType "Vector"
ElementSrc "Internal"
Elements "[897:1024, 1:1024]"
RowSrc "Internal"
Rows "1"
ColumnSrc "Internal"
Columns "1"
InputPortWidth "1024"
IndexIsStartValue off
}
Block {
BlockType Selector
Name "Add cyclic prefix2"
Ports [1, 1]
Position [345, 176, 385, 214]
InputType "Vector"
ElementSrc "Internal"
Elements "[897:1024, 1:1024]"
RowSrc "Internal"
Rows "1"
ColumnSrc "Internal"
Columns "1"
InputPortWidth "1024"
IndexIsStartValue off
}
Block {
BlockType Selector
Name "Add cyclic prefix3"
Ports [1, 1]
Position [345, 231, 385, 269]
InputType "Vector"
ElementSrc "Internal"
Elements "[897:1024, 1:1024]"
RowSrc "Internal"
Rows "1"
ColumnSrc "Internal"
Columns "1"
InputPortWidth "1024"
IndexIsStartValue off
}
Block {
BlockType Selector
Name "Add cyclic prefix4"
Ports [1, 1]
Position [345, 286, 385, 324]
InputType "Vector"
ElementSrc "Internal"
Elements "[897:1024, 1:1024]"
RowSrc "Internal"
Rows "1"
ColumnSrc "Internal"
Columns "1"
InputPortWidth "1024"
IndexIsStartValue off
}
Block {
BlockType Gain
Name "Gain1"
Position [265, 125, 295, 155]
Gain "sqrt(1024)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain2"
Position [265, 180, 295, 210]
Gain "sqrt(1024)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain3"
Position [265, 235, 295, 265]
Gain "sqrt(1024)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain4"
Position [265, 290, 295, 320]
Gain "sqrt(1024)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Reference
Name "IFFT1"
Ports [1, 1]
Position [175, 124, 215, 156]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag3"
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 "IFFT2"
Ports [1, 1]
Position [175, 179, 215, 211]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag4"
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 "IFFT3"
Ports [1, 1]
Position [175, 234, 215, 266]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag5"
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 "IFFT4"
Ports [1, 1]
Position [175, 289, 215, 321]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag6"
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 Outport
Name "Out1"
Position [440, 133, 470, 147]
IconDisplay "Port number"
BusOutputAsStruct off
}
Block {
BlockType Outport
Name "Out2"
Position [440, 188, 470, 202]
Port "2"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -