lc_filt_2.mdl

来自「PLLmatlab for simulink」· MDL 代码 · 共 2,257 行 · 第 1/5 页

MDL
2,257
字号
	      Name		      "Switch"
	      Position		      [360, 215, 390, 245]
	      Threshold		      ".5"
	      InputSameDT	      off
	      SaturateOnIntegerOverflow	off
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch1"
	      Position		      [1060, 185, 1090, 215]
	      Threshold		      ".5"
	      InputSameDT	      off
	      SaturateOnIntegerOverflow	off
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Variable\nSelector"
	      Ports		      [2, 1]
	      Position		      [435, 123, 530, 167]
	      SourceBlock	      "dspindex/Variable\nSelector"
	      SourceType	      "Variable Selector"
	      ShowPortLabels	      on
	      rowsOrCols	      "Rows"
	      IdxMode		      "Variable"
	      Elements		      "[1 3]"
	      ZerOneIdxMode	      "One-based"
	      errmode		      "Clip Index"
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Variable\nSelector1"
	      Ports		      [2, 1]
	      Position		      [435, 43, 530, 87]
	      SourceBlock	      "dspindex/Variable\nSelector"
	      SourceType	      "Variable Selector"
	      ShowPortLabels	      on
	      rowsOrCols	      "Rows"
	      IdxMode		      "Variable"
	      Elements		      "[1 3]"
	      ZerOneIdxMode	      "One-based"
	      errmode		      "Clip Index"
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Window\nFunction"
	      Ports		      [1, 1]
	      Position		      [150, 27, 230, 83]
	      ShowName		      off
	      DialogController	      "dspDDGCreate"
	      DialogControllerArgs    "DataTag2"
	      SourceBlock	      "dspsigops/Window\nFunction"
	      SourceType	      "Window Function"
	      winmode		      "Apply window to input"
	      wintype		      "Hann"
	      sampmode		      "Continuous"
	      samptime		      "1"
	      N			      "64"
	      Rs		      "50"
	      beta		      "10"
	      winsamp		      "Periodic"
	      UserWindow	      "hamming"
	      OptParams		      off
	      UserParams	      "{'symmetric'}"
	      additionalParams	      off
	      allowOverrides	      on
	      dataType		      "double"
	      isSigned		      on
	      wordLen		      "16"
	      udDataType	      "sfix(16)"
	      fracBitsMode	      "Best precision"
	      numFracBits	      "15"
	      firstCoeffMode	      "Same word length as input"
	      firstCoeffWordLength    "16"
	      firstCoeffFracLength    "15"
	      prodOutputMode	      "Inherit via internal rule"
	      prodOutputWordLength    "16"
	      prodOutputFracLength    "15"
	      outputMode	      "Same as product output"
	      outputWordLength	      "16"
	      outputFracLength	      "15"
	      roundingMode	      "Floor"
	      overflowMode	      off
	      LockScale		      off
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Window\nFunction1"
	      Ports		      [1, 1]
	      Position		      [160, 107, 240, 163]
	      ShowName		      off
	      DialogController	      "dspDDGCreate"
	      DialogControllerArgs    "DataTag3"
	      SourceBlock	      "dspsigops/Window\nFunction"
	      SourceType	      "Window Function"
	      winmode		      "Apply window to input"
	      wintype		      "Hann"
	      sampmode		      "Continuous"
	      samptime		      "1"
	      N			      "64"
	      Rs		      "50"
	      beta		      "10"
	      winsamp		      "Periodic"
	      UserWindow	      "hamming"
	      OptParams		      off
	      UserParams	      "{'symmetric'}"
	      additionalParams	      off
	      allowOverrides	      on
	      dataType		      "double"
	      isSigned		      on
	      wordLen		      "16"
	      udDataType	      "sfix(16)"
	      fracBitsMode	      "Best precision"
	      numFracBits	      "15"
	      firstCoeffMode	      "Same word length as input"
	      firstCoeffWordLength    "16"
	      firstCoeffFracLength    "15"
	      prodOutputMode	      "Inherit via internal rule"
	      prodOutputWordLength    "16"
	      prodOutputFracLength    "15"
	      outputMode	      "Same as product output"
	      outputWordLength	      "16"
	      outputFracLength	      "15"
	      roundingMode	      "Floor"
	      overflowMode	      off
	      LockScale		      off
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "unwrap"
	      Position		      [955, 245, 985, 275]
	      Value		      "unwrap_flag"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "TF Mag"
	      Position		      [1150, 68, 1180, 82]
	      IconDisplay	      "Port number"
	      BusOutputAsStruct	      off
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "TF Angle"
	      Position		      [1155, 193, 1185, 207]
	      Port		      "2"
	      IconDisplay	      "Port number"
	      BusOutputAsStruct	      off
	    }
	    Line {
	      SrcBlock		      "Phase Unwrap"
	      SrcPort		      1
	      Points		      [25, 0; 0, 55]
	      DstBlock		      "Switch1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "unwrap"
	      SrcPort		      1
	      Points		      [45, 0; 0, -60]
	      DstBlock		      "Switch1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Switch1"
	      SrcPort		      1
	      DstBlock		      "Gain"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Switch"
	      SrcPort		      1
	      Points		      [10, 0; 0, -75]
	      Branch {
		Points			[0, -80]
		DstBlock		"Variable\nSelector1"
		DstPort			2
	      }
	      Branch {
		DstBlock		"Variable\nSelector"
		DstPort			2
	      }
	    }
	    Line {
	      SrcBlock		      "Rate Transition"
	      SrcPort		      1
	      DstBlock		      "Switch"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Variable\nSelector1"
	      SrcPort		      1
	      Points		      [35, 0]
	      Branch {
		DstBlock		"Math\nFunction"
		DstPort			1
	      }
	      Branch {
		DstBlock		"Magnitude\nSquared"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "Variable\nSelector"
	      SrcPort		      1
	      DstBlock		      "Product"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Downsample2"
	      SrcPort		      1
	      DstBlock		      "Variable\nSelector"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Downsample1"
	      SrcPort		      1
	      DstBlock		      "Variable\nSelector1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Product2"
	      SrcPort		      1
	      Points		      [0, 0; 15, 0]
	      Branch {
		Points			[0, 60]
		DstBlock		"Complex to\nMagnitude-Angle"
		DstPort			1
	      }
	      Branch {
		DstBlock		"Math\nFunction1"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "Buffer1"
	      SrcPort		      1
	      Points		      [-5, 0]
	      DstBlock		      "Window\nFunction1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Buffer"
	      SrcPort		      1
	      Points		      [0, 0]
	      DstBlock		      "Window\nFunction"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Filter2"
	      SrcPort		      1
	      Points		      [30, 0; 0, -60]
	      DstBlock		      "Product2"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Filter1"
	      SrcPort		      1
	      DstBlock		      "Product2"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Window\nFunction1"
	      SrcPort		      1
	      DstBlock		      "FFT1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Window\nFunction"
	      SrcPort		      1
	      DstBlock		      "FFT"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Math\nFunction1"
	      SrcPort		      1
	      DstBlock		      "TF Mag"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "FFT"
	      SrcPort		      1
	      DstBlock		      "Downsample1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Magnitude\nSquared"
	      SrcPort		      1
	      DstBlock		      "Filter1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Math\nFunction"
	      SrcPort		      1
	      DstBlock		      "Product"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "FFT1"
	      SrcPort		      1
	      DstBlock		      "Downsample2"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Product"
	      SrcPort		      1
	      DstBlock		      "Filter2"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "IN"
	      SrcPort		      1
	      DstBlock		      "Buffer"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "OUT"
	      SrcPort		      1
	      Points		      [5, 0]
	      Branch {
		Points			[0, 95]
		DstBlock		"Probe for a complex signal"
		DstPort			1
	      }
	      Branch {
		DstBlock		"Buffer1"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "Gain"
	      SrcPort		      1
	      DstBlock		      "TF Angle"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Complex to\nMagnitude-Angle"
	      SrcPort		      1
	      Points		      [15, 0]
	      Branch {
		DstBlock		"Phase Unwrap"
		DstPort			1
	      }
	      Branch {
		Points			[0, 75]
		DstBlock		"Switch1"
		DstPort			3
	      }
	    }
	    Line {
	      SrcBlock		      "Probe for a complex signal"
	      SrcPort		      1
	      DstBlock		      "Rate Transition"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Real Range"
	      SrcPort		      1
	      Points		      [30, 0; 0, -25]
	      DstBlock		      "Switch"
	      DstPort		      3
	    }
	    Line {
	      SrcBlock		      "Complex Range"
	      SrcPort		      1
	      Points		      [20, 0; 0, 30]
	      DstBlock		      "Switch"
	      DstPort		      1
	    }
	    Annotation {
	      Name		      "Select alias free data."
	      Position		      [482, 207]
	    }
	    Annotation {
	      Name		      "Single Pole LPF for spectral  averaging"
"."
	      Position		      [715, 29]
	    }
	  }
	}
	Block {
	  BlockType		  UniformRandomNumber
	  Name			  "Uniform Random\nNumber"
	  Position		  [75, 224, 105, 256]
	  SampleTime		  "1/(2.56*BW)"
	}
	Block {
	  BlockType		  StateSpace
	  Name			  "anti alias"
	  Position		  [115, 32, 180, 88]
	  AncestorBlock		  "dsparch3/Analog\nFilter Design"
	  A			  "a"
	  B			  "b"
	  C			  "c"
	  D			  "d"
	  MaskType		  "Analog Filter Design"
	  MaskDescription	  "Design one of several standard analog filte"
"rs, implemented in state-space form."
	  MaskHelp		  "web(dspbhelp);"
	  MaskPromptString	  "Design method:|Filter type:|Filter order:|P"
"assband edge frequency (rads/sec):|(unused)|Passband ripple in dB:|Stopband a"
"ttenuation in dB:"
	  MaskStyleString	  "popup(Butterworth|Chebyshev I|Chebyshev II|"
"Elliptic|Bessel),popup(Lowpass|Highpass|Bandpass|Bandstop),edit,edit,edit,edi"
"t,edit"
	  MaskTunableValueString  "on,on,off,on,on,on,on"
	  MaskCallbackString	  "dspblkanalog|dspblkanalog|||||"
	  MaskEnableString	  "on,on,on,on,on,on,on"
	  MaskVisibilityString	  "on,on,on,on,off,on,on"
	  MaskToolTipString	  "on,on,on,on,on,on,on"
	  MaskVarAliasString	  ",,,,,,"
	  MaskVariables		  "method=&1;filttype=&2;N=@3;Wlo=@4;Whi=@5;Rp"
"=@6;Rs=@7;"
	  MaskInitialization	  "[a,b,c,d,h,w,str]=dspblkanalog('design', me"
"thod,filttype,N,Wlo,Whi,Rp,Rs);\n"
	  MaskDisplay		  "plot(w,h); text(.05,.9,str);\n"
	  MaskSelfModifiable	  on
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "normalized"
	  MaskValueString	  "Elliptic|Lowpass|8|BW*2*pi|80|2|100"
	  MaskTabNameString	  ",,,,,,"
	}
	Block {
	  BlockType		  StateSpace
	  Name			  "anti alias1"
	  Position		  [115, 117, 180, 173]
	  AncestorBlock		  "dsparch3/Analog\nFilter Design"
	  A			  "a"
	  B			  "b"
	  C			  "c"
	  D			  "d"
	  MaskType		  "Analog Filter Design"
	  MaskDescription	  "Design one of several standard analog filte"
"rs, implemented in state-space form."
	  MaskHelp		  "web(dspbhelp);"
	  MaskPromptString	  "Design method:|Filter type:|Filter order:|P"
"assband edge frequency (rads/sec):|(unused)|Passband ripple in dB:|Stopband a"
"ttenuation in dB:"
	  MaskStyleString	  "popup(Butterworth|Chebyshev I|Chebyshev II|"
"Elliptic|Bessel),popup(Lowpass|Highpass|Bandpass|Bandstop),edit,edit,edit,edi"
"t,edit"
	  MaskTunableValueString  "on,on,off,on,on,on,on"
	  MaskCallbackString	  "dspblkanalog|dspblkanalog|||||"
	  MaskEnableString	  "on,on,on,on,on,on,on"
	  MaskVisibilityString	  "on,on,on,on,off,on,on"
	  MaskToolTipString	  "on,on,on,on,on,on,on"
	  MaskVarAliasString	  ",,,,,,"
	  MaskVariables		  "method=&1;filttype=&2;N=@3;Wlo=@4;Whi=@5;Rp"
"=@6;Rs=@7;"
	  MaskInitialization	  "[a,b,c,d,h,w,str]=dspblkanalog('design', me"
"thod,filttype,N,Wlo,Whi,Rp,Rs);\n"
	  MaskDisplay		  "plot(w,h); text(.05,.9,str);\n"

⌨️ 快捷键说明

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