📄 pll_nonlinear.mdl
字号:
Model { Name "pll_nonlinear" Version 2.20 SimParamPage Solver SampleTimeColors off InvariantConstants off WideVectorLines off ShowLineWidths off StartTime "0.0" StopTime "1e-4" Solver ode15s RelTol "1e-3" AbsTol "1e-6" Refine "1" MaxStep "1e-9" InitialStep "auto" FixedStep "auto" MaxOrder 5 OutputOption RefineOutputTimes OutputTimes "[]" LoadExternalInput off ExternalInput "[t, u]" SaveTime on TimeSaveName "tout" SaveState off StateSaveName "xout" SaveOutput on OutputSaveName "yout" LoadInitialState off InitialState "xInitial" SaveFinalState off FinalStateName "xFinal" LimitMaxRows off MaxRows "1000" Decimation "1" AlgebraicLoopMsg warning MinStepSizeMsg warning UnconnectedInputMsg warning UnconnectedOutputMsg warning UnconnectedLineMsg warning ConsistencyChecking off ZeroCross on SimulationMode normal RTWSystemTargetFile "grt.tlc" RTWInlineParameters off RTWPlaceOutputsASAP off RTWRetainRTWFile off RTWTemplateMakefile "grt_default_tmf" RTWMakeCommand "make_rtw" RTWGenerateCodeOnly off ExtModeMexFile "ext_comm" ExtModeBatchMode off BlockDefaults { Orientation right ForegroundColor black BackgroundColor white DropShadow off NamePlacement normal FontName "Helvetica" FontSize 10 FontWeight normal FontAngle normal ShowName on } AnnotationDefaults { HorizontalAlignment center VerticalAlignment middle ForegroundColor black BackgroundColor white DropShadow off FontName "Helvetica" FontSize 10 FontWeight normal FontAngle normal } LineDefaults { FontName "Helvetica" FontSize 9 FontWeight normal FontAngle normal } System { Name "pll_nonlinear" Location [180, 280, 1051, 632] Open on ToolBar on StatusBar on ScreenColor white PaperOrientation landscape PaperPositionMode auto PaperType usletter PaperUnits inches Block { BlockType ToWorkspace Name "3" Position [340, 48, 375, 62] FontName "helvetica" FontSize 12 VariableName "up" Buffer "1e6" Decimation "1" SampleTime "0" } Block { BlockType ToWorkspace Name "4" Position [330, 198, 365, 212] FontName "helvetica" FontSize 12 VariableName "dn" Buffer "1e6" Decimation "1" SampleTime "0" } Block { BlockType ToWorkspace Name "5" Position [210, 48, 245, 62] FontName "helvetica" FontSize 12 VariableName "fref" Buffer "1e6" Decimation "1" SampleTime "0" } Block { BlockType ToWorkspace Name "6" Position [460, 48, 495, 62] FontName "helvetica" FontSize 12 VariableName "perr" Buffer "1e6" Decimation "1" SampleTime "0" } Block { BlockType SubSystem Name "Abstarct VCO\nand Divider" Ports [3, 3, 0, 0, 0] Position [670, 113, 745, 177] ShowPortLabels on System { Name "Abstarct VCO\nand Divider" Location [107, 202, 1108, 730] Open off ToolBar off StatusBar off ScreenColor white PaperOrientation landscape PaperPositionMode auto PaperType usletter PaperUnits inches Block { BlockType Inport Name "Vin" Position [65, 193, 95, 207] Port "1" PortWidth "-1" SampleTime "-1" } Block { BlockType Inport Name "n" Position [65, 253, 95, 267] Port "2" PortWidth "-1" SampleTime "-1" } Block { BlockType Inport Name "Duty Cycle" Position [65, 313, 95, 327] Port "3" PortWidth "-1" SampleTime "-1" } Block { BlockType Constant Name "Carrier Frequency" Position [65, 56, 130, 74] Value "2e6" } Block { BlockType Clock Name "Clock" Position [270, 95, 290, 115] Location [12, 31, 119, 76] } Block { BlockType Gain Name "Count Down" Position [285, 178, 315, 212] Gain "-1" } Block { BlockType HitCross Name "Hit \nCrossing" Ports [1, 1, 0, 0, 0] Position [425, 235, 455, 265] HitCrossingOffset "0" HitCrossingDirection falling ShowOutputPort on } Block { BlockType Trigonometry Name "Inphase" Ports [1, 1, 0, 0, 0] Position [625, 80, 655, 100] Operator cos } Block { BlockType Integrator Name "Integrator" Ports [3, 1, 0, 0, 0] Position [340, 234, 370, 266] ExternalReset rising InitialConditionSource external InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [680, 74, 715, 141] Inputs "2" } Block { BlockType Product Name "Product1" Ports [2, 1, 0, 0, 0] Position [345, 82, 375, 113] Inputs "2" } Block { BlockType Trigonometry Name "Quadrature" Ports [1, 1, 0, 0, 0] Position [625, 116, 655, 134] Operator sin } Block { BlockType Fcn Name "Radians Carrier" Position [405, 83, 520, 117] Expr "2*pi*rem(u(1),1)" } Block { BlockType Fcn Name "Radians VCO" Position [405, 150, 520, 180] Expr "2*pi*(rem(-u(1),1)+1)" } Block { BlockType RelationalOperator Name "Relational\nOperator" Position [520, 212, 550, 243] Operator "<=" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [565, 92, 595, 123] Inputs "-+" } Block { BlockType Sum Name "Sum1" Ports [2, 1, 0, 0, 0] Position [225, 177, 255, 208] Inputs "++" } Block { BlockType Gain Name "VCO Gain" Position [120, 183, 190, 217] Gain "2.0*1e6" } Block { BlockType Outport Name "fVCO" Position [745, 23, 775, 37] Port "1" OutputWhenDisabled held InitialOutput "0" } Block { BlockType Outport Name "I,Q" Position [745, 103, 775, 117] Port "2" OutputWhenDisabled held InitialOutput "0" } Block { BlockType Outport Name "Div" Position [575, 223, 605, 237] Port "3" OutputWhenDisabled held InitialOutput "0" } Line { SrcBlock "Sum1" SrcPort 1 Points [0, 0] Branch { Points [0, -165] DstBlock "fVCO" DstPort 1 } Branch { DstBlock "Count Down" DstPort 1 } } Line { SrcBlock "n" SrcPort 1 DstBlock "Integrator" DstPort 3 } Line { SrcBlock "Duty Cycle" SrcPort 1 Points [390, 0; 0, -85] DstBlock "Relational\nOperator" DstPort 2 } Line { SrcBlock "Radians Carrier" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Radians VCO" SrcPort 1 Points [25, 0] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Carrier Frequency" SrcPort 1 Points [50, 0] Branch { Points [0, 120] DstBlock "Sum1" DstPort 1 } Branch { Points [145, 0] DstBlock "Product1" DstPort 1 } } Line { SrcBlock "Count Down" SrcPort 1 Points [5, 0] DstBlock "Integrator" DstPort 1 } Line { SrcBlock "VCO Gain" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Vin" SrcPort 1 DstBlock "VCO Gain" DstPort 1 } Line { SrcBlock "Product1" SrcPort 1 DstBlock "Radians Carrier" DstPort 1 } Line { SrcBlock "Clock" SrcPort 1 DstBlock "Product1" DstPort 2 } Line { SrcBlock "Sum" SrcPort 1 Points [10, 0] Branch { DstBlock "Quadrature" DstPort 1 } Branch { DstBlock "Inphase" DstPort 1 } } Line { SrcBlock "Quadrature" SrcPort 1 DstBlock "Mux" DstPort 2 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "I,Q" DstPort 1 } Line { SrcBlock "Inphase" SrcPort 1 DstBlock "Mux" DstPort 1 } Line { SrcBlock "Integrator" SrcPort 1 Points [15, 0] Branch { Points [0, -30] Branch { DstBlock "Radians VCO" DstPort 1 } Branch { DstBlock "Relational\nOperator" DstPort 1 } } Branch { DstBlock "Hit \nCrossing" DstPort 1 } } Line { SrcBlock "Relational\nOperator" SrcPort 1 DstBlock "Div" DstPort 1 } Line { SrcBlock "Hit \nCrossing" SrcPort 1 Points [0, 50; -150, 0; 0, -50] DstBlock "Integrator" DstPort 2 } } } Block { BlockType Constant Name "Constant1" Position [570, 205, 590, 225] Value "5" } Block { BlockType SubSystem Name "MC12040" Ports [2, 2, 0, 0, 0] Position [230, 85, 280, 160] ShowPortLabels on System { Name "MC12040" Location [413, 28, 1098, 355] Open off ToolBar off StatusBar off ScreenColor white PaperOrientation landscape PaperPositionMode auto PaperType usletter PaperUnits inches Block { BlockType Inport Name "Ref" Position [25, 52, 55, 68] Port "1" PortWidth "-1" SampleTime "-1" } Block { BlockType Inport Name "Div" Position [25, 252, 55, 268] Port "2" PortWidth "-1" SampleTime "-1" } Block { BlockType TransportDelay Name "100ps1" Position [155, 40, 185, 70] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps2" Position [270, 100, 300, 130] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps3" Position [515, 50, 545, 80] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps4" Position [155, 255, 185, 285] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps5" Position [270, 200, 300, 230] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps6" Position [510, 245, 540, 275] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType TransportDelay Name "100ps7" Position [405, 150, 435, 180] DelayTime "0.1e-9" InitialInput "0" BufferSize "1024" } Block { BlockType Logic Name "NOR1" Ports [2, 1, 0, 0, 0] Position [105, 36, 135, 69] Operator NOR Inputs "2" } Block { BlockType Logic Name "NOR2" Ports [3, 1, 0, 0, 0] Position [460, 48, 490, 82] Operator NOR Inputs "3" } Block { BlockType Logic Name "NOR3" Ports [4, 1, 0, 0, 0] Position [350, 143, 380, 187] Operator NOR Inputs "4" } Block { BlockType Logic Name "NOR4" Ports [2, 1, 0, 0, 0] Position [105, 251, 135, 284] Operator NOR Inputs "2" } Block { BlockType Logic Name "NOR5" Ports [3, 1, 0, 0, 0] Position [460, 243, 490, 277] Operator NOR Inputs "3" } Block { BlockType Constant Name "Phase\nDetector\nGain" Position [30, 135, 75, 155] Value "1/(2*pi)" } Block { BlockType SubSystem Name "SR1" Ports [2, 1, 0, 0, 0] Position [220, 77, 255, 148] ShowPortLabels on System { Name "SR1" Location [327, 450, 837, 657] Open off ToolBar off StatusBar off ScreenColor white PaperOrientation landscape PaperPositionMode auto PaperType usletter PaperUnits inches Block { BlockType Inport Name "s" Position [30, 135, 50, 155] Port "1" PortWidth "-1" SampleTime "-1" } Block { BlockType Inport Name "r" Position [30, 95, 50, 115] Port "2" PortWidth "-1" SampleTime "-1" } Block { BlockType Demux Name "Demux" Ports [1, 2, 0, 0, 0] Position [175, 56, 180, 149] Outputs "2" } Block { BlockType CombinatorialLogic Name "Logic" Position [115, 89, 145, 121] TruthTable "[0 1;0 1;1 0;0 1;1 0;0 1;1 0;1 0]" } Block { BlockType Memory Name "Memory" Position [115, 15, 155, 45] Orientation left
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -