📄 timing_recovery_2q.mdl
字号:
OutDataType "sfix(16)"
OutScaling "2^0"
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Scaling1"
Ports [1, 1]
Position [630, 176, 710, 224]
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
System {
Name "Scaling1"
Location [790, 635, 1289, 776]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [55, 33, 85, 47]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Sum
Name "Add"
Ports [2, 1]
Position [220, 32, 250, 63]
Inputs "-+"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
OutDataType "sfix(16)"
OutScaling "2^-10"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain1"
Position [315, 35, 345, 65]
Gain "8"
ParameterDataTypeMode "Inherit via internal rule"
ParameterDataType "sfix(16)"
ParameterScaling "2^0"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
OutDataType "sfix(16)"
OutScaling "2^0"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Constant
Name "k5"
Position [55, 75, 85, 105]
OutDataType "sfix(16)"
OutScaling "2^0"
SampleTime "1/(Fsymbol*D)"
}
Block {
BlockType Outport
Name "Out1"
Position [435, 43, 465, 57]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Line {
SrcBlock "Gain1"
SrcPort 1
Points [0, 0]
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Add"
DstPort 1
}
Line {
SrcBlock "k5"
SrcPort 1
Points [105, 0; 0, -35]
DstBlock "Add"
DstPort 2
}
Line {
SrcBlock "Add"
SrcPort 1
DstBlock "Gain1"
DstPort 1
}
}
}
Block {
BlockType Sum
Name "Sum2"
Ports [3, 1]
Position [130, 84, 160, 126]
ShowName off
Inputs "--+"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Outport
Name "Symbol Clock Out"
Position [790, 58, 820, 72]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Outport
Name "Delay Control"
Position [790, 193, 820, 207]
Port "2"
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Line {
SrcBlock "Relational\nOperator1"
SrcPort 1
Points [50, 0]
Branch {
DstBlock "S&H 1"
DstPort enable
}
Branch {
DstBlock "Symbol Clock Out"
DstPort 1
}
}
Line {
SrcBlock "Math\nFunction"
SrcPort 1
Points [30, 0]
Branch {
Points [0, 85]
Branch {
Points [-335, 0; 0, -80]
DstBlock "Sum2"
DstPort 3
}
Branch {
DstBlock "S&H 1"
DstPort 1
}
}
Branch {
Points [0, -45]
DstBlock "Relational\nOperator1"
DstPort 2
}
}
Line {
SrcBlock "Control In"
SrcPort 1
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Discrete\nConstant3"
SrcPort 1
Points [20, 0; 0, 25]
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "Delay2"
DstPort 1
}
Line {
SrcBlock "Discrete\nConstant1"
SrcPort 1
Points [65, 0; 0, -40]
DstBlock "Math\nFunction"
DstPort 2
}
Line {
SrcBlock "Delay2"
SrcPort 1
Points [50, 0]
Branch {
Points [0, -50]
DstBlock "Relational\nOperator1"
DstPort 1
}
Branch {
DstBlock "Math\nFunction"
DstPort 1
}
}
Line {
SrcBlock "S&H 1"
SrcPort 1
Points [0, 0]
DstBlock "Scaling1"
DstPort 1
}
Line {
SrcBlock "Scaling1"
SrcPort 1
DstBlock "Delay Control"
DstPort 1
}
Annotation {
Name "Numerically Controlled Oscillator"
Position [347, 19]
}
Annotation {
Name "Note: the sample time 1/(Fsymbol*D), is forced by the constant blocks."
Position [242, 221]
}
}
}
Block {
BlockType Outport
Name "Tx Out"
Position [850, 148, 880, 162]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Line {
SrcBlock "Timing Control Unit"
SrcPort 1
Points [130, 0]
DstBlock "Symbol Gen"
DstPort enable
}
Line {
SrcBlock "Symbol Gen"
SrcPort 1
DstBlock "Farrow Variable Delay"
DstPort 1
}
Line {
SrcBlock "Farrow Variable Delay"
SrcPort 1
DstBlock "RRC Filter1"
DstPort 1
}
Line {
SrcBlock "Timing Control Unit"
SrcPort 2
Points [40, 0; 0, 100; 175, 0; 0, -40]
DstBlock "Farrow Variable Delay"
DstPort 2
}
Line {
SrcBlock "Symbol Error"
SrcPort 1
DstBlock "Timing Control Unit"
DstPort 1
}
Line {
SrcBlock "RRC Filter1"
SrcPort 1
DstBlock "Carrier Error1"
DstPort 1
}
Line {
SrcBlock "Carrier Error1"
SrcPort 1
DstBlock "Tx Out"
DstPort 1
}
Line {
SrcBlock "Carrier Error"
SrcPort 1
Points [615, 0; 0, -70]
DstBlock "Carrier Error1"
DstPort 2
}
Annotation {
Name "Use Farrow Fractional Delay and NCO in a similar way as is done in the RX"
Position [438, 23]
}
}
}
Block {
BlockType Reference
Name "Disable \nFractional Delay"
Ports [2, 1]
Position [180, 337, 210, 373]
SourceBlock "simulink/Signal\nRouting/Manual Switch"
SourceType "Manual Switch"
ShowPortLabels "FromPortIcon"
SystemSampleTime "-1"
FunctionWithSeparateData off
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
sw "1"
action "0"
varsize off
}
Block {
BlockType SubSystem
Name "Farrow Variable Delay"
Ports [2, 1]
Position [260, 249, 340, 316]
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
System {
Name "Farrow Variable Delay"
Location [65, 502, 571, 805]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "Xin"
Position [25, 93, 55, 107]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Inport
Name "Mu"
Position [25, 143, 55, 157]
Port "2"
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType SubSystem
Name "Filter State"
Ports [1, 1]
Position [135, 70, 210, 130]
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
System {
Name "Filter State"
Location [65, 78, 684, 313]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "In1"
Position [20, 163, 50, 177]
IconDisplay "Port number"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Reference
Name "Delay"
Ports [1, 1]
Position [125, 150, 180, 190]
SourceBlock "dspsigops/Delay"
SourceType "Delay"
dly_unit "Samples"
delay "1"
ic_detail "off"
dif_ic_for_ch "off"
dif_ic_for_dly "off"
ic "0"
reset_popup "None"
}
Block {
BlockType Reference
Name "Delay1"
Ports [1, 1]
Position [235, 150, 290, 190]
SourceBlock "dspsigops/Delay"
SourceType "Delay"
dly_unit "Samples"
delay "1"
ic_detail "off"
dif_ic_for_ch "off"
dif_ic_for_dly "off"
ic "0"
reset_popup "None"
}
Block {
BlockType Reference
Name "Delay2"
Ports [1, 1]
Position [355, 150, 410, 190]
SourceBlock "dspsigops/Delay"
SourceType "Delay"
dly_unit "Samples"
delay "1"
ic_detail "off"
dif_ic_for_ch "off"
dif_ic_for_dly "off"
ic "0"
reset_popup "None"
}
Block {
BlockType Mux
Name "Mux"
Ports
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -