📄 hop1.mdl
字号:
MaskIconUnits "autoscale"
MaskValueString "2|Bit|Binary|1/100|1|2000|0|1e-5"
System {
Name "M-PSK\nDemodulator\nPassband"
Location [250, 181, 1062, 617]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [50, 170, 70, 190]
}
Block {
BlockType Inport
Name "1"
Position [170, 278, 200, 292]
Port "2"
}
Block {
BlockType Reference
Name "Check Signal\nAttributes"
Ports [1, 1]
Position [125, 139, 190, 181]
ShowName off
SourceBlock "dspsigattribs/Check Signal\nAttributes"
SourceType "Check Signal Attributes"
SigAttribCheckMethod "Matches attributes exactly"
Complexity "Ignore"
Frame "Frame-based"
DimsCheckMethod "Ignore"
Dimensions "1-D"
DatatypeCheckMethod "Ignore"
DatatypeGeneral "Boolean"
DtypeFloatSpecific "Any floating-point"
DtypeFixedSpecific "Any fixed-point"
DtypeIntSpecific "Any integer"
SampleMode "Ignore"
}
Block {
BlockType SubSystem
Name "Frequency\nDown-Converter"
Ports [2, 1]
Position [270, 143, 370, 207]
ShowName off
AncestorBlock "commblksprivate/PAM//QAM//PSK\nFrequency\nD"
"own-Converter"
TreatAsAtomicUnit off
MaskType "PAM/QAM/PSK Frequency Down-Converter"
MaskDescription "The PAM/QAM/PSK Frequency Down-Converter tr"
"anslates the frequency of the input signal to complex baseband. It also deci"
"mates the signal to a lower sampling frequency.\n\nThe input signal must be a"
" sample-based scalar."
MaskPromptString "Carrier frequency (Hz):|Carrier phase (rad)"
":|Input sample time:|Output sample time:"
MaskStyleString "edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on"
MaskCallbackString "|||"
MaskEnableString "on,on,on,on"
MaskVisibilityString "on,on,on,on"
MaskToolTipString "on,on,on,on"
MaskVarAliasString ",,,"
MaskVariables "Fc=@1;Ph=@2;Tin=@3;Tout=@4;"
MaskInitialization "if (Tin>=1/(2*(Fc+1/Tout))) error('The reci"
"procal of the input sample time must be greater than twice the sum of the car"
"rier frequency and the reciprocal of the output sample time.'); end;\n\nif (T"
"out <= 1/Fc) error('The reciprocal of the output sample time must be less tha"
"n the carrier frequency.'); end;\n\nif (Tin>=Tout) error('The input sample ti"
"me must be less than the output sample time.'); end;\n"
MaskDisplay "disp('PAM/QAM/PSK\\nFrequency\\nDown-Conver"
"ter');"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "Fc|Ph|InSamp|td/numSamp"
System {
Name "Frequency\nDown-Converter"
Location [770, 439, 1247, 587]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name " "
Position [35, 38, 65, 52]
SampleTime "Tin"
}
Block {
BlockType Inport
Name "In1"
Position [40, 88, 70, 102]
Port "2"
}
Block {
BlockType Reference
Name "Averaging Filter"
Ports [1, 1]
Position [220, 33, 290, 77]
SourceBlock "dsparch3/Direct-Form II\nTranspose Filt"
"er"
SourceType "Direct-Form II Transpose Filter"
num "(Tin/Tout)*ones(1,floor(Tout/Tin))"
den "1"
ic "0"
}
Block {
BlockType Math
Name "Math\nFunction"
Ports [1, 1]
Position [95, 80, 120, 110]
ShowName off
Operator "conj"
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [155, 38, 185, 67]
ShowName off
}
Block {
BlockType ZeroOrderHold
Name "Zero-Order\nHold"
Position [325, 36, 360, 74]
SampleTime "Tout"
}
Block {
BlockType Outport
Name " "
Position [400, 48, 430, 62]
}
Line {
SrcBlock "Averaging Filter"
SrcPort 1
DstBlock "Zero-Order\nHold"
DstPort 1
}
Line {
SrcBlock "Product1"
SrcPort 1
DstBlock "Averaging Filter"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Math\nFunction"
DstPort 1
}
Line {
SrcBlock "Math\nFunction"
SrcPort 1
Points [15, 0]
DstBlock "Product1"
DstPort 2
}
Line {
SrcBlock " "
SrcPort 1
DstBlock "Product1"
DstPort 1
}
Line {
SrcBlock "Zero-Order\nHold"
SrcPort 1
DstBlock " "
DstPort 1
}
}
}
Block {
BlockType Reference
Name "Inherit Shape"
Ports [2, 1]
Position [545, 154, 675, 236]
ShowName off
SourceBlock "commblksprivate/Inherit Shape"
SourceType "Inherit Shape"
}
Block {
BlockType Reference
Name "M-PSK\nDemodulator\nBaseband"
Ports [1, 1]
Position [420, 150, 495, 200]
ShowName off
SourceBlock "commdigbbndpm2/M-PSK\nDemodulator\nBaseband"
SourceType "M-PSK Demodulator Baseband"
M "M"
OutType "Bit"
Dec "Binary"
Ph "0"
numSamp "numSamp"
}
Block {
BlockType Outport
Name "out_1"
Position [730, 171, 775, 219]
InitialOutput "0"
}
Line {
SrcBlock "Inherit Shape"
SrcPort 1
DstBlock "out_1"
DstPort 1
}
Line {
SrcBlock "M-PSK\nDemodulator\nBaseband"
SrcPort 1
DstBlock "Inherit Shape"
DstPort 1
}
Line {
SrcBlock "Check Signal\nAttributes"
SrcPort 1
DstBlock "Frequency\nDown-Converter"
DstPort 1
}
Line {
SrcBlock "in_1"
SrcPort 1
Points [35, 0]
Branch {
Points [0, 70; 420, 0]
DstBlock "Inherit Shape"
DstPort 2
}
Branch {
DstBlock "Check Signal\nAttributes"
DstPort 1
}
}
Line {
SrcBlock "1"
SrcPort 1
Points [50, 0]
DstBlock "Frequency\nDown-Converter"
DstPort 2
}
Line {
SrcBlock "Frequency\nDown-Converter"
SrcPort 1
DstBlock "M-PSK\nDemodulator\nBaseband"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "M-PSK\nModulator\nPassband"
Ports [2, 1]
Position [380, 226, 455, 279]
AncestorBlock "commdigpbndpm2/M-PSK\nModulator\nPassband"
TreatAsAtomicUnit off
MaskType "M-PSK Modulator Passband"
MaskDescription "Modulate the input signal using the phase shift"
" keying method. \n\nThe input signal must be sample-based. In case of integer"
" input, the input must be a scalar. In case of bit input, the width of the in"
"put must equal the number of bits per symbol. The bits can be either binary-m"
"apped or Gray-mapped into symbols.\n\nThe input sample time must equal the sy"
"mbol period."
MaskHelp "helpview(commbhelp)"
MaskPromptString "M-ary number:|Input type:|Constellation orderin"
"g:|Symbol period (s):|Baseband samples per symbol:|Carrier frequency (Hz):|Ca"
"rrier initial phase (rad):|Output sample time (s):"
MaskStyleString "edit,popup(Bit|Integer),popup(Binary|Gray),edit"
",edit,edit,edit,edit"
MaskTunableValueString "off,off,off,off,off,off,off,off"
MaskCallbackString "|commblkpbndpskmod(gcb,'InType');||||||"
MaskEnableString "on,on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,,"
MaskVariables "M=@1;InType=@2;Enc=@3;td=@4;numSamp=@5;Fc=@6;Ph"
"=@7;OutSamp=@8;"
MaskInitialization "commblkdyampmmod('M-PSK Modulator Baseband','up"
"date');\ncommblkpbndpskmod(gcb,'init');\n"
MaskDisplay "plot(0,0,100,100,[5+15*[0 1 1 2 2 3] 50 50 50 5"
"0+1.5*[[0:.8:10] [10:1.6:20] [20:.8:30]]],[85+8*[1 1 -1 -1 1 1] 85 99 75 85+1"
"0*[sin([0:.8:10]*pi*2/5) sin([10:1.6:20]*pi/5) sin([20:.8:30]*pi*2/5)]]);\ndi"
"sp('M-PSK')"
MaskSelfModifiable on
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "2|Bit|Binary|1/100|1|2000|0|1e-5"
System {
Name "M-PSK\nModulator\nPassband"
Location [399, 252, 1092, 646]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "in_1"
Position [15, 125, 35, 145]
ShowName off
}
Block {
BlockType Inport
Name "1"
Position [260, 238, 290, 252]
Port "2"
}
Block {
BlockType Reference
Name "Check Signal\nAttributes"
Ports [1, 1]
Position [80, 101, 185, 169]
ShowName off
SourceBlock "dspsigattribs/Check Signal\nAttributes"
SourceType "Check Signal Attributes"
SigAttribCheckMethod "Matches attributes exactly"
Complexity "Ignore"
Frame "Frame-based"
DimsCheckMethod "Ignore"
Dimensions "1-D"
DatatypeCheckMethod "Ignore"
DatatypeGeneral "Boolean"
DtypeFloatSpecific "Any floating-point"
DtypeFixedSpecific "Any fixed-point"
DtypeIntSpecific "Any integer"
SampleMode "Ignore"
}
Block {
BlockType Reference
Name "Inherit Shape"
Ports [2, 1]
Position [510, 109, 615, 176]
ShowName off
SourceBlock "commblksprivate/Inherit Shape"
SourceType "Inherit Shape"
}
Block {
BlockType Reference
Name "M-PSK\nModulator\nBaseband"
Ports [1, 1]
Position [225, 101, 330, 169]
ShowName off
SourceBlock "commdigbbndpm2/M-PSK\nModulator\nBaseband"
SourceType "M-PSK Modulator Baseband"
M "M"
InType "Bit"
Enc "Binary"
Ph "0"
numSamp "numSamp"
}
Block {
BlockType SubSystem
Name "PAM/QAM/PSK\nFrequency\nUp-Converter"
Ports [2, 1]
Position [360, 106, 475, 184]
ShowName off
AncestorBlock "commblksprivate/PAM//QAM//PSK\nFrequency\nU"
"p-Converter"
TreatAsAtomicUnit off
MaskType "PAM/QAM/PSK Frequency Up-Converter"
MaskDescription "The PAM/QAM/PSK Frequency Up-Converter tran"
"slates the frequency of the baseband input signal to the carrier frequency. "
"It also resamples the signal to a higher sampling frequency.\n\nThe input sig"
"nal must be a sample-based scalar."
MaskPromptString "Carrier frequency (Hz):|Carrier phase (rad)"
":|Input sample time:|Output sample time:"
MaskStyleString "edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on"
MaskCallbackString "|||"
MaskEnableString "on,on,on,on"
MaskVisibilityString "on,on,on,on"
MaskToolTipString "on,on,on,on"
MaskVarAliasString ",,,"
MaskVariables "Fc=@1;Ph=@2;Tin=@3;Tout=@4;"
MaskInitialization "if (Tout>=1/(2*(Fc+1/Tin))) error('The reci"
"procal of the output sample time must be greater than twice the sum of the ca"
"rrier frequency and the reciprocal of the input sample time.'); end;\n\nif (T"
"in <= 1/Fc) error('The reciprocal of the input sample time must be less than "
"the carrier frequency.'); end;\n\nif (Tin<=Tout) error('The input sample time"
" must be greater than the output sample time.'); end;\n"
MaskDisplay "disp('PAM/QAM/PSK\\nFrequency\\nUp-Converte"
"r');"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "Fc|Ph|td/numSamp|OutSamp"
System {
Name "PAM/QAM/PSK\nFrequency\nUp-Converter"
Location [24, 305, 506, 614]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name " "
Position [15, 103, 45, 117]
}
Block {
BlockType Inport
Name "in_2"
Position [185, 103, 215, 117]
Port "2"
}
Block {
BlockType ComplexToRealImag
Name "Complex to\nReal-Imag"
Ports [1, 2]
Position [255, 93, 285, 122]
ShowName off
Output "Real and imag"
}
Block {
BlockType ComplexToRealImag
Name "Complex to\nReal-Imag1"
Ports [1, 2]
Position [75, 93, 105, 122]
ShowName off
Output "Real and imag"
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [315, 33, 345, 62]
ShowName off
}
Block {
BlockType Product
Name "Product2"
Ports [2, 1]
Position [315, 148, 345, 177]
ShowName off
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -