⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gardner_intdelay.mdl

📁 定时仿真的matlab代码,适合常规信号
💻 MDL
📖 第 1 页 / 共 5 页
字号:
    Block {
      BlockType		      Gain
      Gain		      "1"
      Multiplication	      "Element-wise(K.*u)"
      ParameterDataTypeMode   "Same as input"
      ParameterDataType	      "sfix(16)"
      ParameterScalingMode    "Best Precision: Matrix-wise"
      ParameterScaling	      "2^0"
      OutDataTypeMode	      "Same as input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Goto
      IconDisplay	      "Tag"
    }
    Block {
      BlockType		      Ground
    }
    Block {
      BlockType		      HitCross
      HitCrossingOffset	      "0"
      HitCrossingDirection    "either"
      ShowOutputPort	      on
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Inport
      BusObject		      "BusObject"
      BusOutputAsStruct	      off
      PortDimensions	      "-1"
      SampleTime	      "-1"
      DataType		      "auto"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      SignalType	      "auto"
      SamplingMode	      "auto"
      Interpolate	      on
    }
    Block {
      BlockType		      Math
      Operator		      "exp"
      OutputSignalType	      "auto"
      SampleTime	      "-1"
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
    }
    Block {
      BlockType		      Outport
      Port		      "1"
      BusObject		      "BusObject"
      BusOutputAsStruct	      off
      PortDimensions	      "-1"
      SampleTime	      "-1"
      DataType		      "auto"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      SignalType	      "auto"
      SamplingMode	      "auto"
      OutputWhenDisabled      "held"
      InitialOutput	      "[]"
    }
    Block {
      BlockType		      Product
      Inputs		      "2"
      Multiplication	      "Element-wise(.*)"
      InputSameDT	      on
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Zero"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Reference
    }
    Block {
      BlockType		      RelationalOperator
      Operator		      ">="
      InputSameDT	      on
      LogicOutDataTypeMode    "Logical (see Configuration Parameters: Optimiza"
"tion)"
      LogicDataType	      "uint(8)"
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Rounding
      Operator		      "floor"
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Scope
      Floating		      off
      ModelBased	      off
      TickLabels	      "OneTimeTick"
      ZoomMode		      "on"
      Grid		      "on"
      TimeRange		      "auto"
      YMin		      "-5"
      YMax		      "5"
      SaveToWorkspace	      off
      SaveName		      "ScopeData"
      LimitDataPoints	      on
      MaxDataPoints	      "5000"
      Decimation	      "1"
      SampleInput	      off
      SampleTime	      "0"
    }
    Block {
      BlockType		      "S-Function"
      FunctionName	      "system"
      SFunctionModules	      "''"
      PortCounts	      "[]"
    }
    Block {
      BlockType		      SubSystem
      ShowPortLabels	      on
      Permissions	      "ReadWrite"
      PermitHierarchicalResolution "All"
      SystemSampleTime	      "-1"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      SimViewingDevice	      off
      DataTypeOverride	      "UseLocalSettings"
      MinMaxOverflowLogging   "UseLocalSettings"
    }
    Block {
      BlockType		      Sum
      IconShape		      "rectangular"
      Inputs		      "++"
      InputSameDT	      on
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Switch
      Criteria		      "u2 >= Threshold"
      Threshold		      "0"
      InputSameDT	      on
      OutDataTypeMode	      "Inherit via internal rule"
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      TriggerPort
      TriggerType	      "rising"
      StatesWhenEnabling      "inherit"
      ShowOutputPort	      off
      OutputDataType	      "auto"
      SampleTimeType	      "triggered"
      SampleTime	      "1"
      ZeroCross		      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		    "gardner_intdelay"
    Location		    [14, 74, 907, 489]
    Open		    on
    ModelBrowserVisibility  off
    ModelBrowserWidth	    200
    ScreenColor		    "white"
    PaperOrientation	    "landscape"
    PaperPositionMode	    "auto"
    PaperType		    "usletter"
    PaperUnits		    "inches"
    ZoomFactor		    "100"
    ReportName		    "simulink-default.rpt"
    Block {
      BlockType		      Reference
      Name		      "AWGN Channel"
      Ports		      [1, 1]
      Position		      [680, 89, 760, 131]
      SourceBlock	      "commchan2/AWGN\nChannel"
      SourceType	      "AWGN Channel"
      ShowPortLabels	      on
      seed		      "67"
      noiseMode		      "Signal to noise ratio  (SNR)"
      EbNodB		      "10"
      EsNodB		      "10"
      SNRdB		      "g1.snrdB"
      bitsPerSym	      "1"
      Ps		      "1"
      Tsym		      "1"
      variance		      "1"
    }
    Block {
      BlockType		      From
      Name		      "Assuming A-D \nconverted signal"
      Position		      [35, 288, 105, 312]
      DialogController	      "Simulink.DDGSource"
      CloseFcn		      "tagdialog Close"
      GotoTag		      "Rx_Data"
    }
    Block {
      BlockType		      Display
      Name		      "Delay"
      Ports		      [1]
      Position		      [785, 332, 870, 358]
      Decimation	      "1"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Demodulator"
      Ports		      [2, 1, 1]
      Position		      [530, 226, 640, 299]
      NamePlacement	      "alternate"
      TreatAsAtomicUnit	      on
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      System {
	Name			"Demodulator"
	Location		[562, 538, 1242, 755]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "In1"
	  Position		  [75, 113, 105, 127]
	  Port			  "1"
	  IconDisplay		  "Port number"
	  LatchInput		  off
	}
	Block {
	  BlockType		  Inport
	  Name			  "In2"
	  Position		  [315, 73, 345, 87]
	  Port			  "2"
	  IconDisplay		  "Port number"
	  LatchInput		  off
	}
	Block {
	  BlockType		  EnablePort
	  Name			  "Enable"
	  Ports			  []
	  Position		  [40, 25, 59, 43]
	}
	Block {
	  BlockType		  Reference
	  Name			  "Discrete-Time\nScatter Plot\nScope1"
	  Tag			  "ScatterPlot"
	  Ports			  [1]
	  Position		  [170, 25, 215, 75]
	  ShowName		  off
	  Diagnostics		  "AllowInheritedTsInSrc"
	  SourceBlock		  "commsink2/Discrete-Time\nScatter Plot\nScop"
"e"
	  SourceType		  "Discrete-Time Scatter Plot Scope"
	  ShowPortLabels	  "on"
	  sampPerSymb		  "1"
	  offsetEye		  "0"
	  numTraces		  "25"
	  numNewFrames		  "10"
	  LineMarkers		  "*"
	  LineColors		  "b"
	  fading		  "on"
	  render		  "on"
	  AxisGrid		  "on"
	  xMin			  "-1.48482741766718"
	  xMax			  "1.23560782132064"
	  yMin			  "-1.27859363735973"
	  yMax			  "1.4418416016281"
	  inphaseLabel		  "In-phase Amplitude"
	  quadratureLabel	  "Quadrature Amplitude"
	  openScopeAtSimStart	  "on"
	  FrameNumber		  "off"
	  FigPos		  "[346 367 316 316]"
	  figTitle		  "Recovered Signal"
	  numLinesMax		  "8"
	  block_type_		  "scatter"
	}
	Block {
	  BlockType		  Reference
	  Name			  "M-PSK Demodulator\nBaseband"
	  Ports			  [1, 1]
	  Position		  [200, 95, 275, 145]
	  SourceBlock		  "commdigbbndpm2/M-PSK\nDemodulator\nBaseband"
	  SourceType		  "M-PSK Demodulator Baseband"
	  M			  "g1.M"
	  OutType		  "Integer"
	  Dec			  "Binary"
	  Ph			  "0"
	  numSamp		  "1"
	}
	Block {
	  BlockType		  Reference
	  Name			  "Symbol Error\nRate"
	  Ports			  [2, 1]
	  Position		  [380, 59, 455, 141]
	  SourceBlock		  "commsink2/Error Rate\nCalculation"
	  SourceType		  "Error Rate Calculation"
	  N			  "2*g1.filtDelay"
	  st_delay		  "0"
	  cp_mode		  "Entire frame"
	  subframe		  "[]"
	  PMode			  "Port"
	  WsName		  "ErrorVec"
	  RsMode2		  "off"
	  stop			  "off"
	  numErr		  "10"
	  maxBits		  "1000"
	}
	Block {
	  BlockType		  Outport
	  Name			  "Error Rate"
	  Position		  [520, 93, 550, 107]
	  IconDisplay		  "Port number"
	  BusOutputAsStruct	  off
	}
	Line {
	  SrcBlock		  "M-PSK Demodulator\nBaseband"
	  SrcPort		  1
	  DstBlock		  "Symbol Error\nRate"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "In1"
	  SrcPort		  1
	  Points		  [35, 0]
	  Branch {
	    Points		    [0, -70]
	    DstBlock		    "Discrete-Time\nScatter Plot\nScope1"
	    DstPort		    1
	  }
	  Branch {
	    DstBlock		    "M-PSK Demodulator\nBaseband"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Symbol Error\nRate"
	  SrcPort		  1
	  DstBlock		  "Error Rate"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "In2"
	  SrcPort		  1
	  DstBlock		  "Symbol Error\nRate"
	  DstPort		  1
	}
	Annotation {
	  Name			  "Subsystem Details:\nDemodulate incoming fra"
"me and compute the error rate \nbased on the derived frame clock. "
	  Position		  [538, 192]
	  ForegroundColor	  "blue"
	}
      }
    }
    Block {
      BlockType		      Scope
      Name		      "Error\nSignal"
      Ports		      [1]
      Position		      [685, 333, 715, 367]
      Location		      [13, 517, 338, 725]
      Open		      on
      NumInputPorts	      "1"
      List {
	ListType		AxesTitles
	axes1			"Error Signal"
      }
      TimeRange		      "9.99            "
      YMin		      "-1.5"
      YMax		      "2"
      SaveName		      "ScopeData1"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      off
    }
    Block {
      BlockType		      From
      Name		      "From1"
      Position		      [730, 335, 775, 355]
      ShowName		      off
      DialogController	      "Simulink.DDGSource"
      CloseFcn		      "tagdialog Close"
      GotoTag		      "Delay"
    }
    Block {
      BlockType		      From
      Name		      "From2"
      Position		      [775, 252, 825, 268]
      ShowName		      off
      DialogController	      "Simulink.DDGSource"
      CloseFcn		      "tagdialog Close"
      GotoTag		      "SymClk"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Gardner Symbol \nSynchronizer"
      Ports		      [1, 4]
      Position		      [275, 223, 380, 372]
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskType		      "Gardner Symbol Synchronizer"
      MaskDescription	      "Performs synchronous-sampled Symbol timing reco"
"very for an up-sampled filtered signal using Gardner's timing-error-detector."
"\n\nThe subsystem allows for tracking a difference in the receiver source sym"
"bol frequency from the actual transmitter value. Specify this difference in t"
"he receiver source symbol frequency as a percentage of the desired transmitte"
"r value."
      MaskPromptString	      "Receiver source symbol frequency (Hz):|Proporti"
"onal loop filter gain (Kp):|Integral loop filter gain (Ki):|Input sensitivity"
":|Sample time (s):"
      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	      "rxSymbFreq=@1;propFiltGain=@2;intFiltGain=@3;in"
"pSens=@4;ts=@5;"
      MaskInitialization      "rxSymbFreq = rxSymbFreq*2; % as trigger on the "
"rising edge\noutSamp=2;\n"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      MaskValueString	      "(1/g1.tsym)*g1.percent|0.75|0.2|(1/g1.tsym)*2/1"
"0|g1.tsym/g1.L"
      MaskTabNameString	      ",,,,"
      System {
	Name			"Gardner Symbol \nSynchronizer"
	Location		[171, 304, 905, 623]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "Input"
	  Position		  [20, 93, 50, 107]
	  Port			  "1"
	  IconDisplay		  "Port number"
	  LatchInput		  off
	}
	Block {
	  BlockType		  Goto
	  Name			  "Goto2"
	  Position		  [415, 35, 475, 55]
	  ShowName		  off
	  DialogController	  "Simulink.DDGSource"
	  GotoTag		  "SymClk"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -