📄 qamnrzmf.mdl
字号:
DstBlock "S-function"
DstPort 1
}
Line {
SrcBlock "in_1"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "in_2"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
}
}
Block {
BlockType SubSystem
Name "Receiver"
Ports [1, 1]
Position [650, 62, 725, 148]
ShowPortLabels off
TreatAsAtomicUnit off
System {
Name "Receiver"
Location [-52, 128, 944, 417]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "noisy\n16-QAM\nsignal"
Position [25, 145, 45, 165]
}
Block {
BlockType Reference
Name "16-QAM"
Ports [2, 1]
Position [920, 125, 975, 180]
SourceBlock "simulink3/Functions\n& Tables/Direct Look-U"
"p\nTable (n-D)"
SourceType "LookupNDDirect"
maskTabDims "2"
explicitNumDims "1"
outDims "Element"
tabIsInput "off"
mxTable "[0 1 2 3; 4 5 6 7; 8 9 10 11; 12 13 14 15]"
clipFlag "Warning"
}
Block {
BlockType SubSystem
Name "4-ASK demap"
Ports [1, 1]
Position [795, 109, 865, 151]
TreatAsAtomicUnit off
MaskType "MASK demapping"
MaskDescription "Reverse the MASK mapping process\nConvert ["
"-1 1] analog signal to [0, M-1] symbols."
MaskHelp "This block demaps a MASK mapped signal back"
" to digit symbols. You can place this block after a amplitude demodulation bl"
"ock. The input of this block is an analog signal in the range [-1, 1]. The de"
"modulation decides the closest integer fitting in [0,M-1] range. When the inp"
"ut symbol interval is a two-elements vector, the second element is offset. Th"
"e default offset value is 0."
MaskPromptString "M-ary number (digit integers in ranger [0, "
"M-1]):|Output symbol interval and offset (sec):"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVarAliasString ","
MaskVariables "N=@1;td=@2;"
MaskInitialization "Ac=1;sft=[0:N-1]*Ac*2/(N-1)-Ac;"
MaskDisplay "disp('MASK\\ndemapping')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "4|[1, .9]"
System {
Name "4-ASK demap"
Location [617, 158, 1115, 458]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [40, 30, 60, 50]
}
Block {
BlockType Abs
Name "Abs"
Position [245, 37, 280, 63]
}
Block {
BlockType "S-Function"
Name "Minimum"
Ports [1, 1]
Position [325, 40, 380, 60]
FunctionName "arymimai"
Parameters "'min'"
}
Block {
BlockType Constant
Name "Shift key"
Position [125, 88, 145, 112]
Value "sft"
}
Block {
BlockType Sum
Name "Sum2"
Ports [2, 1]
Position [190, 33, 210, 62]
Inputs "+-"
}
Block {
BlockType ZeroOrderHold
Name "Zero-Order\nHold"
Position [95, 24, 130, 56]
SampleTime "td"
}
Block {
BlockType Outport
Name "out_1"
Position [410, 40, 430, 60]
}
Line {
SrcBlock "in_1"
SrcPort 1
DstBlock "Zero-Order\nHold"
DstPort 1
}
Line {
SrcBlock "Abs"
SrcPort 1
DstBlock "Minimum"
DstPort 1
}
Line {
SrcBlock "Zero-Order\nHold"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Minimum"
SrcPort 1
DstBlock "out_1"
DstPort 1
}
Line {
SrcBlock "Shift key"
SrcPort 1
Points [15, 0; 0, -45]
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "Abs"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "4-ASK demap1"
Ports [1, 1]
Position [800, 174, 870, 216]
TreatAsAtomicUnit off
MaskType "MASK demapping"
MaskDescription "Reverse the MASK mapping process\nConvert ["
"-1 1] analog signal to [0, M-1] symbols."
MaskHelp "This block demaps a MASK mapped signal back"
" to digit symbols. You can place this block after a amplitude demodulation bl"
"ock. The input of this block is an analog signal in the range [-1, 1]. The de"
"modulation decides the closest integer fitting in [0,M-1] range. When the inp"
"ut symbol interval is a two-elements vector, the second element is offset. Th"
"e default offset value is 0."
MaskPromptString "M-ary number (digit integers in ranger [0, "
"M-1]):|Output symbol interval and offset (sec):"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVarAliasString ","
MaskVariables "N=@1;td=@2;"
MaskInitialization "Ac=1;sft=[0:N-1]*Ac*2/(N-1)-Ac;"
MaskDisplay "disp('MASK\\ndemapping')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "4|[1, .9]"
System {
Name "4-ASK demap1"
Location [617, 158, 1115, 458]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [40, 30, 60, 50]
}
Block {
BlockType Abs
Name "Abs"
Position [245, 37, 280, 63]
}
Block {
BlockType "S-Function"
Name "Minimum"
Ports [1, 1]
Position [325, 40, 380, 60]
FunctionName "arymimai"
Parameters "'min'"
}
Block {
BlockType Constant
Name "Shift key"
Position [125, 88, 145, 112]
Value "sft"
}
Block {
BlockType Sum
Name "Sum2"
Ports [2, 1]
Position [190, 33, 210, 62]
Inputs "+-"
}
Block {
BlockType ZeroOrderHold
Name "Zero-Order\nHold"
Position [95, 24, 130, 56]
SampleTime "td"
}
Block {
BlockType Outport
Name "out_1"
Position [410, 40, 430, 60]
}
Line {
SrcBlock "in_1"
SrcPort 1
DstBlock "Zero-Order\nHold"
DstPort 1
}
Line {
SrcBlock "Abs"
SrcPort 1
DstBlock "Minimum"
DstPort 1
}
Line {
SrcBlock "Zero-Order\nHold"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Minimum"
SrcPort 1
DstBlock "out_1"
DstPort 1
}
Line {
SrcBlock "Shift key"
SrcPort 1
Points [15, 0; 0, -45]
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "Abs"
DstPort 1
}
}
}
Block {
BlockType Clock
Name "Clock"
Position [145, 140, 165, 160]
ShowName off
Decimation "10"
}
Block {
BlockType Fcn
Name "Fcn"
Position [185, 119, 265, 141]
ShowName off
Expr "2*cos(4*pi*u)"
}
Block {
BlockType Fcn
Name "Fcn1"
Position [185, 159, 265, 181]
ShowName off
Expr "-2*sin(4*pi*u)"
}
Block {
BlockType "S-Function"
Name "Integrate and Dump\n"
Ports [1, 1]
Position [425, 68, 505, 112]
FunctionName "schdint"
Parameters "td, ts, limit"
MaskType "Scheduled reset integration"
MaskDescription "Reset the state to be zero(s) at the\nsched"
"uled reset sample point."
MaskHelp "This block resets the state(s) to be zero(s"
") at the reset time points. The reset interval can be a two-element vector wi"
"th the second element as offset. The computation sample time must be smaller "
"than the reset interval. The block resets the state value to be the remainder"
" of the state divided by the modulo bound when the absolute value of the stat"
"e is larger than the modulo bound."
MaskPromptString "Scheduled reset time interval and offset (s"
"ec):|Computation sample time and offset (sec):|Modulo bound:"
MaskStyleString "edit,edit,edit"
MaskTunableValueString "on,on,on"
MaskCallbackString "||"
MaskEnableString "on,on,on"
MaskVisibilityString "on,on,on"
MaskToolTipString "on,on,on"
MaskVarAliasString ",,"
MaskInitialization "td=@1;ts=@2;limit=@3;"
MaskDisplay "disp('Scheduled\\nreset-int')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "1|.01|999"
}
Block {
BlockType "S-Function"
Name "Integrate and Dump_"
Ports [1, 1]
Position [425, 203, 505, 247]
FunctionName "schdint"
Parameters "td, ts, limit"
MaskType "Scheduled reset integration"
MaskDescription "Reset the state to be zero(s) at the\nsched"
"uled reset sample point."
MaskHelp "This block resets the state(s) to be zero(s"
") at the reset time points. The reset interval can be a two-element vector wi"
"th the second element as offset. The computation sample time must be smaller "
"than the reset interval. The block resets the state value to be the remainder"
" of the state divided by the modulo bound when the absolute value of the stat"
"e is larger than the modulo bound."
MaskPromptString "Scheduled reset time interval and offset (s"
"ec):|Computation sample time and offset (sec):|Modulo bound:"
MaskStyleString "edit,edit,edit"
MaskTunableValueString "on,on,on"
MaskCallbackString "||"
MaskEnableString "on,on,on"
MaskVisibilityString "on,on,on"
MaskToolTipString "on,on,on"
MaskVarAliasString ",,"
MaskInitialization "td=@1;ts=@2;limit=@3;"
MaskDisplay "disp('Scheduled\\nreset-int')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "1|.01|999"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [300, 74, 330, 101]
ShowName off
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [295, 213, 325, 237]
ShowName off
}
Block {
BlockType SubSystem
Name "close receiver"
Ports []
Position [790, 20, 925, 46]
BackgroundColor "lightBlue"
ShowName off
OpenFcn "closqamr"
FontSize 12
FontAngle "italic"
ShowPortLabels off
TreatAsAtomicUnit off
MaskType "close"
MaskDisplay "disp('close receiver')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "close receiver"
Location [136, 230, 381, 439]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "cyan"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
}
}
Block {
BlockType SubSystem
Name "noise variance"
Ports []
Position [19, 240, 125, 264]
BackgroundColor "lightBlue"
ShowName off
OpenFcn "setnoise"
FontSize 12
FontAngle "italic"
ShowPortLabels off
TreatAsAtomicUnit off
MaskType "noise"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -