📄 rake.mdl
字号:
BlockType Product
Name "Product"
Ports [2, 1]
Position [105, 44, 130, 71]
ShowName off
}
Block {
BlockType Outport
Name "Out1"
Position [235, 53, 265, 67]
}
Line {
SrcBlock "DSP\nConstant"
SrcPort 1
Points [10, 0]
DstBlock "Product"
DstPort 2
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Product"
DstPort 1
}
Line {
SrcBlock "Product"
SrcPort 1
DstBlock "Integer Delay3"
DstPort 1
}
Line {
SrcBlock "Integer Delay3"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
}
}
Block {
BlockType Sum
Name "Sum8"
Ports [2, 1]
Position [455, 48, 475, 72]
ShowName off
}
Block {
BlockType Sum
Name "Sum9"
Ports [1, 1]
Position [335, 143, 355, 167]
ShowName off
Inputs "+"
}
Block {
BlockType Outport
Name "Out"
Position [380, 148, 410, 162]
InitialOutput "0"
}
Line {
SrcBlock "RxSig"
SrcPort 1
DstBlock "Fingers"
DstPort 1
}
Line {
SrcBlock "Produt16"
SrcPort 1
DstBlock "Sum9"
DstPort 1
}
Line {
SrcBlock "Sum9"
SrcPort 1
DstBlock "Out"
DstPort 1
}
Line {
SrcBlock "Math\nFunction16"
SrcPort 1
DstBlock "Produt16"
DstPort 1
}
Line {
SrcBlock "Fingers"
SrcPort 1
DstBlock "Sum8"
DstPort 2
}
Line {
SrcBlock "noise"
SrcPort 1
Points [-25, 0; 0, 30]
DstBlock "Sum8"
DstPort 1
}
Line {
SrcBlock "Sum8"
SrcPort 1
DstBlock "Goto4"
DstPort 1
}
Line {
SrcBlock "Weight"
SrcPort 1
DstBlock "Math\nFunction16"
DstPort 1
}
Line {
SrcBlock "From16"
SrcPort 1
Points [50, 0]
DstBlock "Produt16"
DstPort 2
}
Line {
SrcBlock "Subsystem1"
SrcPort 1
Points [50, 0]
DstBlock "Fingers"
DstPort 2
}
Line {
SrcBlock "SC"
SrcPort 1
DstBlock "Subsystem1"
DstPort 1
}
}
}
Block {
BlockType Reference
Name "Error Rate Calculation"
Ports [2, 1]
Position [780, 44, 855, 91]
ShowName off
SourceBlock "commsink2/Error Rate\nCalculation"
SourceType "Error Rate Calculation"
N "2*Drake+2"
st_delay "2*Drake+2"
cp_mode "Entire frame"
subframe "[]"
PMode "Port"
WsName "ErrorVec"
RsMode2 off
stop off
numErr "100"
maxBits "1e6"
}
Block {
BlockType From
Name "From16"
Position [390, 32, 430, 48]
ShowName off
CloseFcn "tagdialog Close"
GotoTag "RxSig1"
}
Block {
BlockType From
Name "From17"
Position [390, 57, 430, 73]
ShowName off
CloseFcn "tagdialog Close"
GotoTag "SC"
}
Block {
BlockType From
Name "From18"
Position [155, 252, 240, 268]
Orientation "left"
ShowName off
CloseFcn "tagdialog Close"
GotoTag "BER_MRC"
}
Block {
BlockType From
Name "From28"
Position [390, 82, 450, 98]
ShowName off
CloseFcn "tagdialog Close"
GotoTag "NoiseVect"
}
Block {
BlockType From
Name "From4"
Position [390, 107, 455, 123]
ShowName off
CloseFcn "tagdialog Close"
GotoTag "w_MRC1"
}
Block {
BlockType From
Name "From40"
Position [885, 122, 970, 138]
Orientation "left"
ShowName off
CloseFcn "tagdialog Close"
GotoTag "BER_MRC"
}
Block {
BlockType From
Name "From6"
Position [705, 47, 755, 63]
ShowName off
CloseFcn "tagdialog Close"
GotoTag "TxData"
}
Block {
BlockType Goto
Name "Goto11"
Position [105, 121, 175, 139]
ShowName off
GotoTag "NoiseVect"
TagVisibility "local"
}
Block {
BlockType Goto
Name "Goto2"
Position [310, 48, 365, 62]
ShowName off
GotoTag "w_MRC1"
TagVisibility "local"
}
Block {
BlockType Goto
Name "Goto5"
Position [320, 22, 365, 38]
ShowName off
GotoTag "RxSig1"
TagVisibility "local"
}
Block {
BlockType Goto
Name "Goto6"
Position [885, 62, 960, 78]
ShowName off
GotoTag "BER_MRC"
TagVisibility "local"
}
Block {
BlockType Reference
Name "Integer Delay"
Ports [1, 1]
Position [475, 102, 530, 128]
ShowName off
SourceBlock "dspbdsp2/Integer Delay"
SourceType "Integer Delay"
delay "Drake"
ic "0"
frame off
df on
numChans "1"
}
Block {
BlockType Math
Name "Math\nFunction16"
Ports [1, 1]
Position [475, 54, 495, 76]
ShowName off
Operator "conj"
}
Block {
BlockType SubSystem
Name "Multipath Channel"
Ports [1, 2]
Position [110, 16, 195, 69]
TreatAsAtomicUnit off
MaskType "Multipath Channel (Jakes model)"
MaskPromptString "Profile|Delay :|Number of generator :|Seed :|Do"
"ppler frequency (Hz) :|Sample time :"
MaskStyleString "edit,edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on,on"
MaskCallbackString "|||||"
MaskEnableString "on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on"
MaskVarAliasString ",,,,,"
MaskVariables "P=@1;D=@2;No=@3;seed=@4;fd=@5;Ts=@6;"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "PathProfile|PathDelay|length(PathProfile)|1:len"
"gth(PathProfile)|fd|Tc"
System {
Name "Multipath Channel"
Location [365, 491, 835, 688]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [25, 28, 55, 42]
}
Block {
BlockType Reference
Name "DSP\nConstant"
Ports [0, 1]
Position [70, 65, 130, 85]
SourceBlock "dspsrcs4/DSP\nConstant"
SourceType "DSP Constant"
Value "ones(length(D),1)"
SampleMode "Discrete"
discreteOutput "Sample-based"
continuousOutput "Sample-based"
sampTime "Ts"
framePeriod "Ts"
additionalParams off
dataType "Inherit from 'Constant value'"
wordLen "16"
udDataType "sfix(16)"
fracBitsMode "Best precision"
numFracBits "15"
InterpretAs1D "off"
Ts "Ts"
FramebasedOutput "off"
}
Block {
BlockType Reference
Name "Integer Delay1"
Ports [1, 1]
Position [230, 27, 275, 63]
SourceBlock "dspsigops/Integer Delay"
SourceType "Integer Delay"
delay "D"
ic "0"
reset_popup "None"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [155, 26, 200, 59]
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [305, 36, 350, 69]
}
Block {
BlockType SubSystem
Name "Rayleigh Fading"
Ports [0, 1]
Position [25, 98, 80, 142]
AncestorBlock "umts_blks/Multipath Channel/Rayleigh Fading"
TreatAsAtomicUnit off
MaskType "Complex Rayleigh Fading Generator (Jakes mo"
"del)"
MaskPromptString "Power :|Seed :|Number of generators :|Doppl"
"er frequency :|Sample time :"
MaskStyleString "edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on"
MaskCallbackString "||||"
MaskEnableString "on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on"
MaskToolTipString "on,on,on,on,on"
MaskVarAliasString ",,,,"
MaskVariables "P=@1;N=@2;No=@3;fd=@4;Ts=@5;"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "P|seed|No|fd|Ts"
System {
Name "Rayleigh Fading"
Location [146, 505, 476, 660]
Open off
ModelBrowserVisibility on
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType SubSystem
Name "Rayliegh Fading"
Ports [0, 2]
Position [25, 27, 100, 58]
TreatAsAtomicUnit off
MaskType "Complex Fading Channel Simulator"
MaskDescription "Using multiple (No+1) sinusoidal genera"
"tors to approximate a complex Gaussian random process with Doppler spectrum s"
"hape. This mobel can be used to generate upto No independent Gaussian process"
"es for simulating a multipath fading channel."
MaskPromptString "Path Nummber (<= No) :|Sample Time :|Qu"
"adrature phase Power :|In-phase Power :|Number of Generators (No) :|Doppler F"
"requency (rad/sec) :"
MaskStyleString "edit,edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on,on"
MaskCallbackString "|||||"
MaskEnableString "on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on"
MaskVarAliasString ",,,,,"
MaskVariables "N=@1;Ts=@2;Pq=@3;Pi=@4;No=@5;Wd=@6;"
MaskInitialization "x=[];\nfor n=1:length(N);x=[x; pi/2+((2"
"*pi*(N(n)-1)*(1:No)./(No+1))+(pi*(1:No)./(No+1)))];end\n"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "N|Ts|0.5*P|0.5*P|No|2*pi*fd"
System {
Name "Rayliegh Fading"
Location [96, 94, 781, 385]
Open off
ModelBrowserVisibility on
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Sin
Name "Cosine1"
Position [15, 95, 45, 125]
SineType "Time based"
Frequency "ones(length(N),1)*Wd*cos( (2*pi*(1:"
"No)) ./ (2*(2*No+1)) )"
Phase "x"
SampleTime "Ts"
VectorParams1D off
}
Block {
BlockType Sin
Name "Cosine2"
Position [90, 95, 120, 125]
SineType "Time based"
Amplitude "0.7071"
Frequency "ones(length(N),1)*Wd"
Phase "pi/2"
SampleTime "Ts"
VectorParams1D off
}
Block {
BlockType Reference
Name "DSP\nConstant"
Ports [0, 1]
Position [200, 210, 295, 230]
ShowName off
SourceBlock "dspsrcs4/DSP\nConstant"
SourceType "DSP Constant"
Value "ones(No+1,1)"
SampleMode "Discrete"
discreteOutput "Sample-based"
continuousOutput "Sample-based"
sampTime "Ts"
framePeriod "Ts"
additionalParams off
dataType "Inherit from 'Constant value'"
wordLen "16"
udDataType "sfix(16)"
fracBitsMode "Best precision"
numFracBits "15"
InterpretAs1D "off"
Ts "Ts"
FramebasedOutput "off"
}
Block {
BlockType Gain
Name "Gain"
Position [460, 65, 490, 95]
Gain "sqrt(Pi(:)/No)"
}
Block {
BlockType Gain
Name "Gain1"
Position [105, 30, 135, 60]
Gain "ones(length(N),1)*2*cos((pi*(1:No))"
"./(No+1))"
}
Block {
BlockType Gain
Name "Gain2"
Position [105, 165, 135, 195]
Gain "ones(length(N),1)*2*sin((pi*(1:No))"
"./(No+1))"
}
Block {
BlockType Gain
Name "Gain3"
Position [160, 65, 190, 95]
Gain "2*cos(0)"
}
Block {
BlockType Gain
Name "Gain4"
Position [160, 125, 190, 155]
Gain "2*sin(0)"
}
Block {
BlockType Gain
Name "Gain5"
Position [460, 145, 490, 175]
Gain "sqrt(Pq(:)/(No+1))"
}
Block {
BlockType Reference
Name "Matrix\nConcatenation"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -