Model {
  Name			  "elg"
  Version		  4.00
  SampleTimeColors	  off
  LibraryLinkDisplay	  "none"
  WideLines		  off
  ShowLineDimensions	  off
  ShowPortDataTypes	  off
  RecordCoverage	  off
  CovPath		  "/"
  CovSaveName		  "covdata"
  CovNameIncrementing	  off
  CovHtmlReporting	  on
  BlockNameDataTip	  off
  BlockParametersDataTip  on
  BlockDescriptionStringDataTip	off
  ToolBar		  on
  StatusBar		  on
  BrowserShowLibraryLinks off
  BrowserLookUnderMasks	  off
  PreLoadFcn		  "tss=1/12000;tdd=1/600;MM=2;Fc=1200;Fshift=1200;[f1n"
"um,f1den]=butter(4,2*pi*4000,'s');f2num=fir1(127,(Fshift/2+1/tdd)*2*tss);f2de"
"n=[1,zeros(1,127)];"
  Created		  "Tue Oct 20 09:11:50 1998"
  Creator		  "tdelve"
  UpdateHistory		  "UpdateHistoryNever"
  ModifiedByFormat	  "%<Auto>"
  LastModifiedBy	  "ysong"
  ModifiedDateFormat	  "%<Auto>"
  LastModifiedDate	  "Wed Aug 23 09:34:58 2000"
  ModelVersionFormat	  "1.%<AutoIncrement:16>"
  ConfigurationManager	  "none"
  SimParamPage		  "Solver"
  StartTime		  "0.0"
  StopTime		  "999999"
  SolverMode		  "SingleTasking"
  Solver		  "ode45"
  RelTol		  "1e-3"
  AbsTol		  "1e-6"
  Refine		  "1"
  MaxStep		  "auto"
  MinStep		  "auto"
  MaxNumMinSteps	  "-1"
  InitialStep		  "auto"
  FixedStep		  "auto"
  MaxOrder		  5
  OutputOption		  "RefineOutputTimes"
  OutputTimes		  "[]"
  LoadExternalInput	  off
  ExternalInput		  "[t, u]"
  SaveTime		  off
  TimeSaveName		  "tout"
  SaveState		  off
  StateSaveName		  "xout"
  SaveOutput		  off
  OutputSaveName	  "yout"
  LoadInitialState	  off
  InitialState		  "xInitial"
  SaveFinalState	  off
  FinalStateName	  "xFinal"
  SaveFormat		  "Array"
  LimitDataPoints	  off
  MaxDataPoints		  "1000"
  Decimation		  "1"
  AlgebraicLoopMsg	  "warning"
  MinStepSizeMsg	  "warning"
  UnconnectedInputMsg	  "warning"
  UnconnectedOutputMsg	  "warning"
  UnconnectedLineMsg	  "warning"
  InheritedTsInSrcMsg	  "warning"
  SingleTaskRateTransMsg  "none"
  MultiTaskRateTransMsg	  "error"
  IntegerOverflowMsg	  "warning"
  CheckForMatrixSingularity "none"
  UnnecessaryDatatypeConvMsg "none"
  Int32ToFloatConvMsg	  "warning"
  SignalLabelMismatchMsg  "none"
  LinearizationMsg	  "none"
  VectorMatrixConversionMsg "none"
  SfunCompatibilityCheckMsg "none"
  BlockPriorityViolationMsg "warning"
  ArrayBoundsChecking	  "none"
  ConsistencyChecking	  "none"
  ZeroCross		  on
  Profile		  off
  SimulationMode	  "normal"
  RTWSystemTargetFile	  "grt.tlc"
  RTWInlineParameters	  off
  RTWRetainRTWFile	  off
  RTWTemplateMakefile	  "grt_default_tmf"
  RTWMakeCommand	  "make_rtw"
  RTWGenerateCodeOnly	  off
  TLCProfiler		  off
  TLCDebug		  off
  TLCCoverage		  off
  AccelSystemTargetFile	  "accel.tlc"
  AccelTemplateMakefile	  "accel_default_tmf"
  AccelMakeCommand	  "make_rtw"
  ExtModeMexFile	  "ext_comm"
  ExtModeBatchMode	  off
  ExtModeTrigType	  "manual"
  ExtModeTrigMode	  "oneshot"
  ExtModeTrigPort	  "1"
  ExtModeTrigElement	  "any"
  ExtModeTrigDuration	  1000
  ExtModeTrigHoldOff	  0
  ExtModeTrigDelay	  0
  ExtModeTrigDirection	  "rising"
  ExtModeTrigLevel	  0
  ExtModeArchiveMode	  "off"
  ExtModeAutoIncOneShot	  off
  ExtModeIncDirWhenArm	  off
  ExtModeAddSuffixToVar	  off
  ExtModeWriteAllDataToWs off
  ExtModeArmWhenConnect	  off
  ExtModeLogAll		  on
  OptimizeBlockIOStorage  on
  BufferReuse		  on
  ParameterPooling	  on
  BlockReductionOpt	  off
  BooleanDataType	  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		    "elg"
    Location		    [266, 119, 916, 565]
    Open		    on
    ModelBrowserVisibility  off
    ModelBrowserWidth	    200
    ScreenColor		    "white"
    PaperOrientation	    "landscape"
    PaperPositionMode	    "auto"
    PaperType		    "usletter"
    PaperUnits		    "inches"
    ZoomFactor		    "100"
    AutoZoom		    on
    ReportName		    "simulink-default.rpt"
    Block {
      BlockType		      SubSystem
      Name		      "."
      Ports		      [2, 1]
      Position		      [555, 140, 630, 180]
      Orientation	      "down"
      NamePlacement	      "alternate"
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskType		      "channel"
      MaskHelp		      "The input signal at input port 1 has AWGN added"
" to it, and is output at the output port.  The noise power is determined by t"
"he input signal power and the SNR value of the 2nd input.  The 2nd input's un"
"its are in dB."
      MaskDisplay	      "disp('AWGN \\n SNR')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"."
	Location		[362, 143, 1098, 356]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [235, 155, 255, 175]
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Inport
	  Name			  "in_2"
	  Position		  [75, 30, 95, 50]
	  Port			  "2"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Reference
	  Name			  "AWGN\nchannel"
	  Ports			  [2, 1]
	  Position		  [545, 58, 625, 102]
	  SourceBlock		  "commchan/AWGN\nchannel"
	  SourceType		  "AWGN Channel"
	  seed			  "123456"
	  noiseMode		  "Variance from port"
	  EsNodB		  "10"
	  Ps			  "1"
	  Tsym			  "1"
	  variance		  "1"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn"
	  Position		  [300, 155, 410, 175]
	  ShowName		  off
	  Expr			  "1/10^(u[1]/10)/2"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain"
	  Position		  [390, 92, 415, 118]
	  Gain			  "1/256"
	  Multiplication	  "Element-wise(K.*u)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Inner\nProduct"
	  Ports			  [2, 1]
	  Position		  [325, 94, 345, 116]
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Dot Product"
	  MaskDescription	  "Inner (dot) product.\ny=sum(u1.*u2)"
	  MaskHelp		  "Computes the inner (dot) product of the inp"
"uts: sum(u1.*u2).  The inputs are vectors of the same length. Output is a sca"
"lar."
	  MaskDisplay		  "disp('.\\n')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Inner\nProduct"
	    Location		    [412, 193, 632, 348]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [15, 25, 35, 45]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "in_2"
	      Position		      [15, 90, 35, 110]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Product
	      Name		      "Product"
	      Ports		      [2, 1]
	      Position		      [65, 55, 90, 75]
	      Inputs		      "2"
	      Multiplication	      "Element-wise(.*)"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [1, 1]
	      Position		      [125, 55, 145, 75]
	      IconShape		      "rectangular"
	      Inputs		      "+"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [185, 55, 205, 75]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "in_2"
	      SrcPort		      1
	      DstBlock		      "Product"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Product"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Product"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Product
	  Name			  "Product"
	  Ports			  [2, 1]
	  Position		  [450, 98, 480, 122]
	  Inputs		  "2"
	  Multiplication	  "Element-wise(.*)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Reference
	  Name			  "Pulses divide\nsame sample time1"
	  Ports			  [0, 1]
	  Position		  [40, 98, 120, 142]
	  SourceBlock		  "com_sour/Pulses divide\nsample time"
	  SourceType		  "Pulse generator"
	  samp_time		  "tss"
	  out_divid		  "1"
	  offset		  "0"
	}
	Block {
	  BlockType		  Reference
	  Name			  "Register-shift"
	  Ports			  [2, 2]
	  Position		  [165, 88, 245, 132]
	  SourceBlock		  "com_util/Register-shift"
	  SourceType		  "Register-shift"
	  shft_out		  "[1:256]"
	  thrhld		  ".5"
	}
	Block {
	  BlockType		  Terminator
	  Name			  "Terminator_1"
	  Position		  [260, 115, 270, 125]
	  ShowName		  off
	}
	Block {
	  BlockType		  Outport
	  Name			  "out_1"
	  Position		  [655, 70, 675, 90]
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "Register-shift"
	  SrcPort		  2
	  DstBlock		  "Terminator_1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gain"
	  SrcPort		  1
	  DstBlock		  "Product"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Inner\nProduct"
	  SrcPort		  1
	  DstBlock		  "Gain"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Pulses divide\nsame sample time1"
	  SrcPort		  1
	  DstBlock		  "Register-shift"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Register-shift"
	  SrcPort		  1
	  Points		  [25, 0]
	  Branch {
	    DstBlock		    "Inner\nProduct"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 10]
	    DstBlock		    "Inner\nProduct"
	    DstPort		    2
	  }
	}
	Line {
	  SrcBlock		  "in_2"
	  SrcPort		  1
	  Points		  [35, 0]
	  Branch {
	    Points		    [390, 0; 0, 30]
	    DstBlock		    "AWGN\nchannel"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 60]
	    DstBlock		    "Register-shift"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  DstBlock		  "Fcn"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Fcn"
	  SrcPort		  1
	  Points		  [10, 0; 0, -50]
	  DstBlock		  "Product"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Product"
	  SrcPort		  1
	  Points		  [40, 0; 0, -20]
	  DstBlock		  "AWGN\nchannel"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "AWGN\nchannel"
	  SrcPort		  1
	  DstBlock		  "out_1"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      TransferFcn
      Name		      "Anti-Aliasing\nFilter"
      Position		      [335, 28, 395, 62]
      ShowName		      off
      Numerator		      "f1num"
      Denominator	      "f1den"
      Realization	      "auto"
      AbsoluteTolerance	      "auto"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Digital Down\nConvert"
      Ports		      [1, 2]
      Position		      [500, 234, 580, 276]
      Orientation	      "left"
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskType		      "DDC"
      MaskHelp		      "Down shifts signal by the Carrier Frequency.  O"
"utputs inphase and quadrature components of converted input signal."
      MaskDisplay	      "disp('DDC')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Digital Down\nConvert"
	Location		[362, 143, 1008, 372]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "analog\nin"
	  Position		  [135, 95, 155, 115]
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Fcn
	  Name			  "-Sin(wct)"
	  Position		  [155, 157, 335, 183]
	  ShowName		  off
	  Expr			  "-sin(2*pi*(Fc+Fshift/2)*u[1])"
	}
	Block {
	  BlockType		  TransferFcn
	  Name			  "Anti-aliasing\nFilter"
	  Position		  [195, 88, 250, 122]
	  Numerator		  "f1num"
	  Denominator		  "f1den"
	  Realization		  "auto"
	  AbsoluteTolerance	  "auto"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Cos(wct)"
	  Position		  [160, 30, 330, 50]
	  ShowName		  off
	  Expr			  "cos(2*pi*(Fc+Fshift/2)*u[1])"
	}
	Block {
	  BlockType		  DigitalClock
	  Name			  "Digital Clock"
	  Position		  [40, 25, 75, 55]
	  SampleTime		  "tss"
	}
	Block {
	  BlockType		  DiscreteTransferFcn
	  Name			  "Discrete\nTransfer Fcn"
	  Position		  [435, 28, 510, 62]
	  Numerator		  "f2num"
	  Denominator		  "f2den"
	  SampleTime		  "tss"
	  Realization		  "auto"
	}
	Block {
	  BlockType		  DiscreteTransferFcn
	  Name			  "Discrete\nTransfer Fcn1"
	  Position		  [435, 147, 505, 183]
	  Numerator		  "f2num"
	  Denominator		  "f2den"
	  SampleTime		  "tss"
	  Realization		  "auto"
	}
	Block {
	  BlockType		  Product
	  Name			  "Product"
	  Ports			  [2, 1]
	  Position		  [375, 33, 405, 57]
	  ShowName		  off
	  Inputs		  "2"
	  Multiplication	  "Element-wise(.*)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Product
	  Name			  "Product1"
	  Ports			  [2, 1]
	  Position		  [375, 153, 405, 177]
	  ShowName		  off
	  Inputs		  "2"
	  Multiplication	  "Element-wise(.*)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  ZeroOrderHold
	  Name			  "Zero-Order\nHold"
	  Position		  [280, 89, 315, 121]
	  ShowName		  off
	  SampleTime		  "tss"
	}
	Block {
	  BlockType		  Outport
	  Name			  "inphase"
	  Position		  [560, 35, 580, 55]
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Block {
	  BlockType		  Outport
	  Name			  "quadrature"
	  Position		  [560, 155, 580, 175]
	  Port			  "2"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "Discrete\nTransfer Fcn1"
	  SrcPort		  1
	  DstBlock		  "quadrature"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "analog\nin"
	  SrcPort		  1
	  DstBlock		  "Anti-aliasing\nFilter"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete\nTransfer Fcn"
	  SrcPort		  1
	  DstBlock		  "inphase"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Cos(wct)"
	  SrcPort		  1
	  DstBlock		  "Product"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "-Sin(wct)"
	  SrcPort		  1
	  DstBlock		  "Product1"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Digital Clock"
	  SrcPort		  1
	  Points		  [0, 0]
	  Branch {
	    DstBlock		    "Cos(wct)"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [35, 0; 0, 130]
	    DstBlock		    "-Sin(wct)"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Anti-aliasing\nFilter"
	  SrcPort		  1
	  DstBlock		  "Zero-Order\nHold"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Product"
	  SrcPort		  1
	  DstBlock		  "Discrete\nTransfer Fcn"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Product1"
	  SrcPort		  1
	  DstBlock		  "Discrete\nTransfer Fcn1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Zero-Order\nHold"
	  SrcPort		  1
	  Points		  [0, 0]
	  Branch {
	    Points		    [30, 0; 0, -55]
	    DstBlock		    "Product"
	    DstPort		    2
	  }
	  Branch {
	    Points		    [30, 0; 0, 55]
	    DstBlock		    "Product1"
	    DstPort		    1
	  }
	}
	Annotation {
	  Position		  [302, 122]
	  VerticalAlignment	  "top"
	  Text			  "ADC"
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "Discrete\n Early-Late\n Gate"
      Ports		      [1, 2]
      Position		      [325, 223, 365, 287]
      Orientation	      "left"
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskDisplay	      "disp('ELG')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Discrete\n Early-Late\n Gate"
	Location		[364, 145, 951, 467]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [15, 130, 35, 150]
	  ForegroundColor	  "red"
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Abs
	  Name			  "Abs"
	  Position		  [500, 48, 530, 72]
	  ShowName		  off
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Abs
	  Name			  "Abs1"
	  Position		  [490, 253, 520, 277]
	  ShowName		  off
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant"
	  Position		  [90, 135, 110, 155]
	  ForegroundColor	  "blue"
	  Value			  "-1"
	  VectorParams1D	  on
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Descrete\n Resettable\nintegrator4"
	  Ports			  [3, 1]
	  Position		  [275, 20, 350, 70]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Discrete Resettable integrator"
	  MaskHelp		  "RESETTABLE INTEGRATOR  The resettable integ"
"rator is a masked function. This block has same functionality as the built-in"
" RESET INTEGRATOR except that when input 2 is non-zero, the block stops integ"
"ration."
	  MaskDisplay		  "disp('Discrete\\nResettable\\nintegrator')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Descrete\n Resettable\nintegrator4"
	    Location		    [414, 195, 945, 393]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "data"
	      Position		      [65, 35, 85, 55]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "trigger"
	      Position		      [65, 95, 85, 115]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "reset value"
	      Position		      [65, 140, 85, 160]
	      Port		      "3"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Ground
	      Name		      "Ground_1"
	      Position		      [115, 80, 125, 90]
	      ShowName		      off
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [185, 30, 205, 50]
	      IconShape		      "rectangular"
	      Inputs		      "++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch1"
	      Position		      [240, 54, 265, 86]
	      Threshold		      "eps"
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [290, 62, 340, 78]
	      X0		      "0"
	      SampleTime	      "tss"
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "equal"
	      Position		      [140, 69, 170, 91]
	      Operator		      "=="
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "integrated\n output"
	      Position		      [435, 60, 455, 80]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Ground_1"
	      SrcPort		      1
	      DstBlock		      "equal"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "reset value"
	      SrcPort		      1
	      Points		      [100, 0; 0, -70]
	      DstBlock		      "Switch1"
	      DstPort		      3
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      Points		      [5, 0; 0, 20]
	      DstBlock		      "Switch1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "data"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [35, 0; 0, -55; -220, 0; 0, 20]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "equal"
	      SrcPort		      1
	      Points		      [0, -10]
	      DstBlock		      "Switch1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Switch1"
	      SrcPort		      1
	      Points		      [0, 0]
	      Branch {
		Points			[5, 0; 0, 30; 120, 0; 0, -30]
		DstBlock		"integrated\n output"
		DstPort			1
	      }
	      Branch {
		DstBlock		"Unit Delay"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "trigger"
	      SrcPort		      1
	      Points		      [25, 0; 0, -30]
	      DstBlock		      "equal"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Descrete\n Resettable\nintegrator5"
	  Ports			  [3, 1]
	  Position		  [270, 225, 345, 275]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Discrete Resettable integrator"
	  MaskHelp		  "RESETTABLE INTEGRATOR  The resettable integ"
"rator is a masked function. This block has same functionality as the built-in"
" RESET INTEGRATOR except that when input 2 is non-zero, the block stops integ"
"ration."
	  MaskDisplay		  "disp('Discrete\\nResettable\\nintegrator')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Descrete\n Resettable\nintegrator5"
	    Location		    [412, 184, 1196, 730]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "data"
	      Position		      [65, 35, 85, 55]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "trigger"
	      Position		      [65, 95, 85, 115]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "reset value"
	      Position		      [65, 140, 85, 160]
	      Port		      "3"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Ground
	      Name		      "Ground_1"
	      Position		      [115, 80, 125, 90]
	      ShowName		      off
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [185, 30, 205, 50]
	      IconShape		      "rectangular"
	      Inputs		      "++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch1"
	      Position		      [240, 54, 265, 86]
	      Threshold		      "eps"
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [290, 62, 340, 78]
	      X0		      "0"
	      SampleTime	      "tss"
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "equal"
	      Position		      [140, 69, 170, 91]
	      Operator		      "=="
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "integrated\n output"
	      Position		      [435, 60, 455, 80]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Ground_1"
	      SrcPort		      1
	      DstBlock		      "equal"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "trigger"
	      SrcPort		      1
	      Points		      [25, 0; 0, -30]
	      DstBlock		      "equal"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "equal"
	      SrcPort		      1
	      Points		      [0, -10]
	      DstBlock		      "Switch1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [35, 0; 0, -55; -220, 0; 0, 20]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "data"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      Points		      [5, 0; 0, 20]
	      DstBlock		      "Switch1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "reset value"
	      SrcPort		      1
	      Points		      [100, 0; 0, -70]
	      DstBlock		      "Switch1"
	      DstPort		      3
	    }
	    Line {
	      SrcBlock		      "Switch1"
	      SrcPort		      1
	      Points		      [0, 0]
	      Branch {
		DstBlock		"Unit Delay"
		DstPort			1
	      }
	      Branch {
		Points			[5, 0; 0, 30; 120, 0; 0, -30]
		DstBlock		"integrated\n output"
		DstPort			1
	      }
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Discrete\ntrighold"
	  Ports			  [2, 1]
	  Position		  [415, 28, 485, 92]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Discrete Sample and Hold"
	  MaskDisplay		  "disp('Discrete\\nSample\\nand Hold')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Discrete\ntrighold"
	    Location		    [412, 193, 802, 363]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [25, 30, 45, 50]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "in_2"
	      Position		      [25, 90, 45, 110]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Rising edge\ndetector1"
	      Ports		      [1, 1]
	      Position		      [65, 78, 145, 122]
	      SourceBlock	      "com_util/Rising edge\ndetector"
	      SourceType	      "Edge detection"
	      thld		      "0.5"
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch"
	      Position		      [180, 84, 210, 116]
	      ShowName		      off
	      Threshold		      ".5"
	    }
	    Block {
	      BlockType		      TransportDelay
	      Name		      "Transport\nDelay"
	      Position		      [80, 25, 120, 55]
	      ShowName		      off
	      DelayTime		      "tss/2"
	      InitialInput	      "0"
	      BufferSize	      "1024"
	      PadeOrder		      "0"
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [235, 92, 285, 108]
	      ShowName		      off
	      X0		      "0"
	      SampleTime	      "tss"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [340, 90, 360, 110]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Transport\nDelay"
	      SrcPort		      1
	      Points		      [30, 0; 0, 50]
	      DstBlock		      "Switch"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Transport\nDelay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [15, 0]
	      Branch {
		DstBlock		"out_1"
		DstPort			1
	      }
	      Branch {
		Points			[0, 40; -145, 0; 0, -30]
		DstBlock		"Switch"
		DstPort			3
	      }
	    }
	    Line {
	      SrcBlock		      "Switch"
	      SrcPort		      1
	      DstBlock		      "Unit Delay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "in_2"
	      SrcPort		      1
	      DstBlock		      "Rising edge\ndetector1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Rising edge\ndetector1"
	      SrcPort		      1
	      DstBlock		      "Switch"
	      DstPort		      2
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Discrete\ntrighold1"
	  Ports			  [2, 1]
	  Position		  [405, 233, 475, 297]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Discrete Sample and Hold"
	  MaskDisplay		  "disp('Discrete\\nSample\\nand Hold')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Discrete\ntrighold1"
	    Location		    [414, 195, 804, 365]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [25, 30, 45, 50]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "in_2"
	      Position		      [25, 90, 45, 110]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Rising edge\ndetector1"
	      Ports		      [1, 1]
	      Position		      [65, 78, 145, 122]
	      SourceBlock	      "com_util/Rising edge\ndetector"
	      SourceType	      "Edge detection"
	      thld		      "0.5"
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch"
	      Position		      [180, 84, 210, 116]
	      ShowName		      off
	      Threshold		      ".5"
	    }
	    Block {
	      BlockType		      TransportDelay
	      Name		      "Transport\nDelay"
	      Position		      [80, 25, 120, 55]
	      ShowName		      off
	      DelayTime		      "tss/2"
	      InitialInput	      "0"
	      BufferSize	      "1024"
	      PadeOrder		      "0"
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [235, 92, 285, 108]
	      ShowName		      off
	      X0		      "0"
	      SampleTime	      "tss"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [340, 90, 360, 110]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Rising edge\ndetector1"
	      SrcPort		      1
	      DstBlock		      "Switch"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "in_2"
	      SrcPort		      1
	      DstBlock		      "Rising edge\ndetector1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Switch"
	      SrcPort		      1
	      DstBlock		      "Unit Delay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [15, 0]
	      Branch {
		DstBlock		"out_1"
		DstPort			1
	      }
	      Branch {
		Points			[0, 40; -145, 0; 0, -30]
		DstBlock		"Switch"
		DstPort			3
	      }
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Transport\nDelay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Transport\nDelay"
	      SrcPort		      1
	      Points		      [30, 0; 0, 50]
	      DstBlock		      "Switch"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Discrete-time\nVCO"
	  Ports			  [1, 1]
	  Position		  [400, 120, 480, 170]
	  Orientation		  "left"
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "VCO"
	  MaskDescription	  "Voltage-Controlled Oscilator:"
	  MaskHelp		  "The VCO block cause the frequency of the si"
"nusoidal carrier to depend on the input signal voltage, resulting in frequenc"
"y of the output change depending on the amplitude of the input signal."
	  MaskPromptString	  "Amplitude constant:|Carier frequency (Hz):|"
"Sensitivity constant:|Initial phase (rad):|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"
	  MaskInitialization	  "Ac=@1;Fc=@2;Kc=@3;Ph=@4;pi2=2*pi;ts=@5;Kc=K"
"c*pi2*ts(1);Fc=Fc*pi2;"
	  MaskDisplay		  "disp('Discrete\\nVCO')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "1|1/tdd|.0001|0|tss"
	  MaskVariableAliases	  ",,,,"
	  System {
	    Name		    "Discrete-time\nVCO"
	    Location		    [414, 195, 1194, 342]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [35, 20, 55, 40]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      DigitalClock
	      Name		      "Digital Clock"
	      Position		      [160, 75, 195, 105]
	      SampleTime	      "ts"
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "Phase"
	      Position		      [400, 100, 420, 120]
	      Value		      "Ph"
	      VectorParams1D	      on
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Sensitivity"
	      Position		      [105, 15, 155, 45]
	      Gain		      "Kc"
	      Multiplication	      "Element-wise(K.*u)"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Sensitivity2"
	      Position		      [255, 75, 300, 105]
	      Gain		      "Fc"
	      Multiplication	      "Element-wise(K.*u)"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Sensitivity3"
	      Position		      [605, 30, 655, 60]
	      Gain		      "Ac"
	      Multiplication	      "Element-wise(K.*u)"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [3, 1]
	      Position		      [465, 27, 485, 63]
	      IconShape		      "rectangular"
	      Inputs		      "+++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum1"
	      Ports		      [2, 1]
	      Position		      [230, 25, 250, 45]
	      IconShape		      "rectangular"
	      Inputs		      "++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [300, 25, 350, 45]
	      X0		      "0"
	      SampleTime	      "ts"
	    }
	    Block {
	      BlockType		      Fcn
	      Name		      "sin"
	      Position		      [510, 32, 585, 58]
	      Expr		      "cos(u[1])"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [690, 35, 710, 55]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Sensitivity3"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "sin"
	      SrcPort		      1
	      DstBlock		      "Sensitivity3"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Phase"
	      SrcPort		      1
	      Points		      [10, 0; 0, -55]
	      DstBlock		      "Sum"
	      DstPort		      3
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [15, 0]
	      Branch {
		DstBlock		"Sum"
		DstPort			1
	      }
	      Branch {
		Points			[0, 35; -165, 0; 0, -30]
		DstBlock		"Sum1"
		DstPort			2
	      }
	    }
	    Line {
	      SrcBlock		      "Sensitivity2"
	      SrcPort		      1
	      Points		      [120, 0; 0, -45]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Digital Clock"
	      SrcPort		      1
	      DstBlock		      "Sensitivity2"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "sin"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum1"
	      SrcPort		      1
	      DstBlock		      "Unit Delay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sensitivity"
	      SrcPort		      1
	      DstBlock		      "Sum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Sensitivity"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain"
	  Position		  [370, 32, 395, 58]
	  ShowName		  off
	  Gain			  "1/tdd"
	  Multiplication	  "Element-wise(K.*u)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain1"
	  Position		  [365, 237, 390, 263]
	  ShowName		  off
	  Gain			  "1/tdd"
	  Multiplication	  "Element-wise(K.*u)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Ground
	  Name			  "Ground_1"
	  Position		  [250, 55, 260, 65]
	  ShowName		  off
	}
	Block {
	  BlockType		  Ground
	  Name			  "Ground_2"
	  Position		  [245, 260, 255, 270]
	  ShowName		  off
	}
	Block {
	  BlockType		  Product
	  Name			  "Product"
	  Ports			  [2, 1]
	  Position		  [170, 160, 205, 180]
	  Orientation		  "down"
	  ShowName		  off
	  Inputs		  "2"
	  Multiplication	  "Element-wise(.*)"
	  SaturateOnIntegerOverflow on
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Sign"
	  Ports			  [1, 1]
	  Position		  [340, 130, 370, 160]
	  Orientation		  "left"
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Sign"
	  MaskDescription	  "y = sign(x)"
	  MaskHelp		  "Sign Function:\\n\\t\\t\\ty = 1 if x > 0\\n"
"\\t\\t\\ty = 0 if x = 0\\n\\t\\t\\ty = -1 if x < 0"
	  MaskDisplay		  "plot(-50,-50,50,50,[-50,50],[0,0],[0,0],[-5"
"0,50],[-40,0],[-30,-30],[0,40],[30,30])"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Sign"
	    Location		    [412, 193, 720, 362]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [35, 30, 55, 50]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "Constant"
	      Position		      [65, 105, 85, 125]
	      Value		      "0"
	      VectorParams1D	      on
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "Relational\nOperator"
	      Position		      [140, 32, 170, 63]
	      Operator		      ">"
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "Relational\nOperator1"
	      Position		      [140, 92, 170, 123]
	      Operator		      "<"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [215, 64, 235, 91]
	      IconShape		      "rectangular"
	      Inputs		      "+-"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [265, 70, 285, 90]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Relational\nOperator"
	      SrcPort		      1
	      Points		      [10, 0; 0, 20]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Relational\nOperator1"
	      SrcPort		      1
	      Points		      [10, 0; 0, -25]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Constant"
	      SrcPort		      1
	      Points		      [20, 0]
	      Branch {
		DstBlock		"Relational\nOperator1"
		DstPort			2
	      }
	      Branch {
		Points			[0, -60]
		DstBlock		"Relational\nOperator"
		DstPort			2
	      }
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      Points		      [35, 0]
	      Branch {
		DstBlock		"Relational\nOperator"
		DstPort			1
	      }
	      Branch {
		Points			[0, 60]
		DstBlock		"Relational\nOperator1"
		DstPort			1
	      }
	    }
	  }
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [2, 1]
	  Position		  [167, 200, 198, 220]
	  Orientation		  "down"
	  ShowName		  off
	  IconShape		  "rectangular"
	  Inputs		  "-+"
	  SaturateOnIntegerOverflow on
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum1"
	  Ports			  [2, 1]
	  Position		  [172, 110, 203, 130]
	  Orientation		  "up"
	  ShowName		  off
	  IconShape		  "rectangular"
	  Inputs		  "-+"
	  SaturateOnIntegerOverflow on
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum2"
	  Ports			  [2, 1]
	  Position		  [500, 135, 520, 155]
	  Orientation		  "left"
	  ShowName		  off
	  IconShape		  "rectangular"
	  Inputs		  "+-"
	  SaturateOnIntegerOverflow on
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	}
	Block {
	  BlockType		  Outport
	  Name			  "early gate"
	  Position		  [380, 85, 400, 105]
	  ShowName		  off
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Block {
	  BlockType		  Outport
	  Name			  "late gate"
	  Position		  [540, 295, 560, 315]
	  ShowName		  off
	  Port			  "2"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "Ground_2"
	  SrcPort		  1
	  DstBlock		  "Descrete\n Resettable\nintegrator5"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "Ground_1"
	  SrcPort		  1
	  DstBlock		  "Descrete\n Resettable\nintegrator4"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "Gain1"
	  SrcPort		  1
	  DstBlock		  "Discrete\ntrighold1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Descrete\n Resettable\nintegrator5"
	  SrcPort		  1
	  DstBlock		  "Gain1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Descrete\n Resettable\nintegrator4"
	  SrcPort		  1
	  DstBlock		  "Gain"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gain"
	  SrcPort		  1
	  DstBlock		  "Discrete\ntrighold"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete\ntrighold1"
	  SrcPort		  1
	  DstBlock		  "Abs1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete-time\nVCO"
	  SrcPort		  1
	  DstBlock		  "Sign"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Sum2"
	  SrcPort		  1
	  DstBlock		  "Discrete-time\nVCO"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete\ntrighold"
	  SrcPort		  1
	  DstBlock		  "Abs"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Abs"
	  SrcPort		  1
	  DstBlock		  "Sum2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Abs1"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "Sum2"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Product"
	  SrcPort		  1
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Sign"
	  SrcPort		  1
	  Points		  [-140, 0]
	  Branch {
	    DstBlock		    "Sum1"
	    DstPort		    2
	  }
	  Branch {
	    DstBlock		    "Product"
	    DstPort		    2
	  }
	}
	Line {
	  SrcBlock		  "Constant"
	  SrcPort		  1
	  Points		  [20, 0]
	  Branch {
	    Points		    [0, 40]
	    DstBlock		    "Sum"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [45, 0]
	    Branch {
	      DstBlock		      "Product"
	      DstPort		      1
	    }
	    Branch {
	      DstBlock		      "Sum1"
	      DstPort		      1
	    }
	  }
	}
	Line {
	  SrcBlock		  "Sum1"
	  SrcPort		  1
	  Points		  [0, -10]
	  Branch {
	    Points		    [0, -50]
	    DstBlock		    "Descrete\n Resettable\nintegrator4"
	    DstPort		    2
	  }
	  Branch {
	    Points		    [170, 0]
	    Branch {
	      DstBlock		      "early gate"
	      DstPort		      1
	    }
	    Branch {
	      Points		      [0, -20]
	      DstBlock		      "Discrete\ntrighold"
	      DstPort		      2
	    }
	  }
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  Points		  [20, 0; 0, 0]
	  Branch {
	    Points		    [0, -110]
	    DstBlock		    "Descrete\n Resettable\nintegrator4"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 95]
	    DstBlock		    "Descrete\n Resettable\nintegrator5"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  Points		  [0, 25]
	  Branch {
	    DstBlock		    "Descrete\n Resettable\nintegrator5"
	    DstPort		    2
	  }
	  Branch {
	    Points		    [0, 55; 165, 0]
	    Branch {
	      DstBlock		      "late gate"
	      DstPort		      1
	    }
	    Branch {
	      Points		      [0, -25]
	      DstBlock		      "Discrete\ntrighold1"
	      DstPort		      2
	    }
	  }
	}
      }
    }
    Block {
      BlockType		      Reference
      Name		      "Error-Meter"
      Ports		      [2]
      Position		      [20, 125, 100, 165]
      Orientation	      "left"
      ShowName		      off
      SourceBlock	      "com_sour/Error rate"
      SourceType	      "Symbol/bit error counter"
      K			      "1"
      num_lin		      "16"
      TDelay		      "tss*92"
      Sample		      "tdd"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Fmdetect"
      Ports		      [2, 1]
      Position		      [400, 233, 480, 277]
      Orientation	      "left"
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskType		      "FMDETECT"
      MaskHelp		      "Requires I Q input.  Outputs instantaneous Freq"
"uency"
      MaskDisplay	      "disp('FM\\nDetect')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Fmdetect"
	Location		[362, 143, 962, 317]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [35, 40, 55, 60]
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Inport
	  Name			  "in_2"
	  Position		  [35, 95, 55, 115]
	  Port			  "2"
	  Interpolate		  on
	}
	Block {
	  BlockType		  MATLABFcn
	  Name			  "MATLAB Fcn1"
	  Position		  [470, 38, 530, 72]
	  ShowName		  off
	  MATLABFcn		  "median"
	  OutputDimensions	  "1"
	  OutputSignalType	  "auto"
	  Output1D		  on
	}
	Block {
	  BlockType		  Mux
	  Name			  "Mux"
	  Ports			  [2, 1]
	  Position		  [90, 41, 120, 74]
	  ShowName		  off
	  Inputs		  "2"
	  DisplayOption		  "none"
	}
	Block {
	  BlockType		  Reference
	  Name			  "Pulses divide\nsame sample time1"
	  Ports			  [0, 1]
	  Position		  [205, 83, 285, 127]
	  SourceBlock		  "com_sour/Pulses divide\nsample time"
	  SourceType		  "Pulse generator"
	  samp_time		  "tss"
	  out_divid		  "1"
	  offset		  "0"
	}
	Block {
	  BlockType		  Reference
	  Name			  "Register-shift"
	  Ports			  [2, 2]
	  Position		  [355, 43, 435, 87]
	  SourceBlock		  "com_util/Register-shift"
	  SourceType		  "Register-shift"
	  shft_out		  "[1:5]"
	  thrhld		  ".5"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [2, 1]
	  Position		  [300, 44, 320, 66]
	  ShowName		  off
	  IconShape		  "rectangular"
	  Inputs		  "+-"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Terminator
	  Name			  "Terminator_1"
	  Position		  [450, 70, 460, 80]
	  ShowName		  off
	}
	Block {
	  BlockType		  UnitDelay
	  Name			  "Unit Delay"
	  Position		  [220, 52, 270, 68]
	  ShowName		  off
	  X0			  "0"
	  SampleTime		  "tss"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "atan2"
	  Position		  [140, 50, 180, 70]
	  ShowName		  off
	  Expr			  "atan2(u[2],u(1))"
	}
	Block {
	  BlockType		  Outport
	  Name			  "out_1"
	  Position		  [560, 45, 580, 65]
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "Register-shift"
	  SrcPort		  2
	  DstBlock		  "Terminator_1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "MATLAB Fcn1"
	  SrcPort		  1
	  DstBlock		  "out_1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Register-shift"
	  SrcPort		  1
	  DstBlock		  "MATLAB Fcn1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Pulses divide\nsame sample time1"
	  SrcPort		  1
	  Points		  [40, 0]
	  DstBlock		  "Register-shift"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  DstBlock		  "Register-shift"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Mux"
	  SrcPort		  1
	  DstBlock		  "atan2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Unit Delay"
	  SrcPort		  1
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "atan2"
	  SrcPort		  1
	  Points		  [0, 0]
	  Branch {
	    DstBlock		    "Unit Delay"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [10, 0; 0, -20; 85, 0; 0, 10]
	    DstBlock		    "Sum"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  DstBlock		  "Mux"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "in_2"
	  SrcPort		  1
	  Points		  [10, 0; 0, -40]
	  DstBlock		  "Mux"
	  DstPort		  2
	}
      }
    }
    Block {
      BlockType		      Gain
      Name		      "Gain"
      Position		      [275, 197, 300, 223]
      Orientation	      "left"
      ShowName		      off
      Gain		      "10"
      Multiplication	      "Element-wise(K.*u)"
      SaturateOnIntegerOverflow	on
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Integrate, Sample,\n and Threshold"
      Ports		      [2, 1]
      Position		      [145, 223, 180, 287]
      Orientation	      "left"
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Integrate, Sample,\n and Threshold"
	Location		[362, 143, 1087, 293]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [165, 15, 185, 35]
	  ShowName		  off
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Inport
	  Name			  "in_2"
	  Position		  [15, 50, 35, 70]
	  ShowName		  off
	  Port			  "2"
	  Interpolate		  on
	}
	Block {
	  BlockType		  Reference
	  Name			  "1-step\ndelay"
	  Ports			  [1, 1]
	  Position		  [345, 57, 390, 83]
	  ShowName		  off
	  SourceBlock		  "com_util/K-step\ndelay"
	  SourceType		  "Multi-step delay"
	  n			  "1"
	  ts			  "tss"
	  ini			  "0"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant"
	  Position		  [520, 115, 540, 135]
	  ShowName		  off
	  Value			  "1"
	  VectorParams1D	  on
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Descrete\n Resettable\nintegrator4"
	  Ports			  [3, 1]
	  Position		  [215, 35, 290, 85]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Discrete Resettable integrator"
	  MaskDescription	  "Integrates first input. If second input is "
"not zero, integration stops and state is set to third input."
	  MaskHelp		  "RESETTABLE INTEGRATOR  The resettable integ"
"rator is a masked function. This block has same functionality as the built-in"
" RESET INTEGRATOR except that when input 2 is non-zero, the block stops integ"
"ration."
	  MaskPromptString	  "Initial value:|Sample Time"
	  MaskStyleString	  "edit,edit"
	  MaskTunableValueString  "on,on"
	  MaskCallbackString	  "|"
	  MaskEnableString	  "on,on"
	  MaskVisibilityString	  "on,on"
	  MaskToolTipString	  "on,on"
	  MaskInitialization	  "init = @1;tss= @2;"
	  MaskDisplay		  "disp('Discrete\\nResettable\\nintegrator')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "0|tss/2"
	  MaskVariableAliases	  ","
	  System {
	    Name		    "Descrete\n Resettable\nintegrator4"
	    Location		    [412, 193, 973, 478]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "data"
	      Position		      [65, 35, 85, 55]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "trigger"
	      Position		      [65, 95, 85, 115]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "reset value"
	      Position		      [65, 140, 85, 160]
	      Port		      "3"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Ground
	      Name		      "Ground_1"
	      Position		      [115, 80, 125, 90]
	      ShowName		      off
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [185, 30, 205, 50]
	      IconShape		      "rectangular"
	      Inputs		      "++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch1"
	      Position		      [240, 54, 265, 86]
	      Threshold		      "eps"
	    }
	    Block {
	      BlockType		      UnitDelay
	      Name		      "Unit Delay"
	      Position		      [290, 62, 340, 78]
	      X0		      "0"
	      SampleTime	      "tss"
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "equal"
	      Position		      [140, 69, 170, 91]
	      Operator		      "=="
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "integrated\n output"
	      Position		      [435, 60, 455, 80]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Ground_1"
	      SrcPort		      1
	      DstBlock		      "equal"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "reset value"
	      SrcPort		      1
	      Points		      [100, 0; 0, -70]
	      DstBlock		      "Switch1"
	      DstPort		      3
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      Points		      [5, 0; 0, 20]
	      DstBlock		      "Switch1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "data"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Unit Delay"
	      SrcPort		      1
	      Points		      [35, 0; 0, -55; -220, 0; 0, 20]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "equal"
	      SrcPort		      1
	      Points		      [0, -10]
	      DstBlock		      "Switch1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Switch1"
	      SrcPort		      1
	      Points		      [0, 0]
	      Branch {
		Points			[5, 0; 0, 30; 120, 0; 0, -30]
		DstBlock		"integrated\n output"
		DstPort			1
	      }
	      Branch {
		DstBlock		"Unit Delay"
		DstPort			1
	      }
	    }
	    Line {
	      SrcBlock		      "trigger"
	      SrcPort		      1
	      Points		      [25, 0; 0, -30]
	      DstBlock		      "equal"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Discrete\ntrighold"
	  Ports			  [2, 1]
	  Position		  [445, 59, 510, 106]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Sample and Hold"
	  MaskDisplay		  "disp('Sample\\nand Hold')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Discrete\ntrighold"
	    Location		    [412, 193, 790, 351]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [25, 30, 45, 50]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "in_2"
	      Position		      [25, 90, 45, 110]
	      Port		      "2"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Memory
	      Name		      "Memory"
	      Position		      [240, 85, 280, 115]
	      X0		      "0"
	      InheritSampleTime	      off
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Rising edge\ndetector"
	      Ports		      [1, 1]
	      Position		      [65, 78, 145, 122]
	      ShowName		      off
	      SourceBlock	      "com_util/Rising edge\ndetector"
	      SourceType	      "Edge detection"
	      thld		      "0.5"
	    }
	    Block {
	      BlockType		      Switch
	      Name		      "Switch"
	      Position		      [180, 84, 210, 116]
	      ShowName		      off
	      Threshold		      ".5"
	    }
	    Block {
	      BlockType		      TransportDelay
	      Name		      "Transport\nDelay"
	      Position		      [80, 25, 120, 55]
	      ShowName		      off
	      DelayTime		      "tss/2"
	      InitialInput	      "0"
	      BufferSize	      "1024"
	      PadeOrder		      "0"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [340, 90, 360, 110]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Rising edge\ndetector"
	      SrcPort		      1
	      DstBlock		      "Switch"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "in_2"
	      SrcPort		      1
	      DstBlock		      "Rising edge\ndetector"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Switch"
	      SrcPort		      1
	      DstBlock		      "Memory"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Memory"
	      SrcPort		      1
	      Points		      [20, 0]
	      Branch {
		DstBlock		"out_1"
		DstPort			1
	      }
	      Branch {
		Points			[0, 40; -145, 0; 0, -30]
		DstBlock		"Switch"
		DstPort			3
	      }
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Transport\nDelay"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Transport\nDelay"
	      SrcPort		      1
	      Points		      [30, 0; 0, 50]
	      DstBlock		      "Switch"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain1"
	  Position		  [635, 77, 660, 103]
	  ShowName		  off
	  Gain			  ".5"
	  Multiplication	  "Element-wise(K.*u)"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Reference
	  Name			  "Rising edge\ndetector1"
	  Ports			  [1, 1]
	  Position		  [70, 38, 150, 82]
	  ShowName		  off
	  SourceBlock		  "com_util/Rising edge\ndetector"
	  SourceType		  "Edge detection"
	  thld			  "0.5"
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "Sign"
	  Ports			  [1, 1]
	  Position		  [530, 72, 560, 98]
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Sign"
	  MaskDescription	  "y = sign(x)"
	  MaskHelp		  "Sign Function:\\n\\t\\t\\ty = 1 if x > 0\\n"
"\\t\\t\\ty = 0 if x = 0\\n\\t\\t\\ty = -1 if x < 0"
	  MaskDisplay		  "plot(-50,-50,50,50,[-50,50],[0,0],[0,0],[-5"
"0,50],[-40,0],[-30,-30],[0,40],[30,30])"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "Sign"
	    Location		    [412, 193, 720, 362]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [35, 30, 55, 50]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "Constant"
	      Position		      [65, 105, 85, 125]
	      Value		      "0"
	      VectorParams1D	      on
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "Relational\nOperator"
	      Position		      [140, 32, 170, 63]
	      Operator		      ">"
	    }
	    Block {
	      BlockType		      RelationalOperator
	      Name		      "Relational\nOperator1"
	      Position		      [140, 92, 170, 123]
	      Operator		      "<"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [215, 64, 235, 91]
	      IconShape		      "rectangular"
	      Inputs		      "+-"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [265, 70, 285, 90]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Relational\nOperator"
	      SrcPort		      1
	      Points		      [10, 0; 0, 20]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Relational\nOperator1"
	      SrcPort		      1
	      Points		      [10, 0; 0, -25]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Constant"
	      SrcPort		      1
	      Points		      [20, 0]
	      Branch {
		DstBlock		"Relational\nOperator1"
		DstPort			2
	      }
	      Branch {
		Points			[0, -60]
		DstBlock		"Relational\nOperator"
		DstPort			2
	      }
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      Points		      [35, 0]
	      Branch {
		DstBlock		"Relational\nOperator"
		DstPort			1
	      }
	      Branch {
		Points			[0, 60]
		DstBlock		"Relational\nOperator1"
		DstPort			1
	      }
	    }
	  }
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [2, 1]
	  Position		  [580, 80, 600, 100]
	  ShowName		  off
	  IconShape		  "rectangular"
	  Inputs		  "++"
	  SaturateOnIntegerOverflow on
	}
	Block {
	  BlockType		  Constant
	  Name			  "zero"
	  Position		  [165, 65, 185, 85]
	  ShowName		  off
	  Value			  "0"
	  VectorParams1D	  on
	}
	Block {
	  BlockType		  Outport
	  Name			  "out_1"
	  Position		  [690, 80, 710, 100]
	  ShowName		  off
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  DstBlock		  "Descrete\n Resettable\nintegrator4"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "in_2"
	  SrcPort		  1
	  Points		  [0, 0]
	  Branch {
	    Points		    [10, 0; 0, 35]
	    DstBlock		    "Discrete\ntrighold"
	    DstPort		    2
	  }
	  Branch {
	    DstBlock		    "Rising edge\ndetector1"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Rising edge\ndetector1"
	  SrcPort		  1
	  DstBlock		  "Descrete\n Resettable\nintegrator4"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "zero"
	  SrcPort		  1
	  DstBlock		  "Descrete\n Resettable\nintegrator4"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "Descrete\n Resettable\nintegrator4"
	  SrcPort		  1
	  Points		  [15, 0; 0, 10]
	  DstBlock		  "1-step\ndelay"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "1-step\ndelay"
	  SrcPort		  1
	  DstBlock		  "Discrete\ntrighold"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant"
	  SrcPort		  1
	  Points		  [20, 0]
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Sign"
	  SrcPort		  1
	  DstBlock		  "Sum"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete\ntrighold"
	  SrcPort		  1
	  DstBlock		  "Sign"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  DstBlock		  "Gain1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gain1"
	  SrcPort		  1
	  DstBlock		  "out_1"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "MFSK mod"
      Ports		      [1, 1]
      Position		      [180, 23, 260, 67]
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskType		      "Passband FSK modulation"
      MaskDescription	      "Modulate the input digital signal using M-ary f"
"requency shift keying method."
      MaskHelp		      "This block modulates a digital signal using FSK"
" method. The modulation resets the modulation phase to be the specified initi"
"al phase at the beginning of each digit. Tone space is the frequency distance"
" between two consecutive digits after modulation. The output signal has its f"
"requency in the range [Fc, Fc + Tone_space*Max_In_Value], where Fc is the car"
"rier frequency."
      MaskPromptString	      "Tone space(Hz):|Symbol interval (sec):|Carrier "
"frequency (Hz):|Initial phase (rad):|Sample time (sec):"
      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"
      MaskVariables	      "Ton=@1;td=@2;Fc=@3;Ph=@4;ts=@5;"
      MaskDisplay	      "plot(0,0,100,100,[5+15*[0 1 1 2 2 3] 50 50 50 5"
"0+1.5*[[0:.8:10] [10:1.6:20] [20:.8:30]]],[85+8*[1 1 -1 -1 1 1] 85 99 75 85+1"
"0*[sin([0:.8:10]*pi*2/5) sin([10:1.6:20]*pi/5) sin([20:.8:30]*pi*2/5)]]);\ndi"
"sp('MFSK');"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      MaskValueString	      "Fshift|tdd|Fc|0|tss"
      MaskVariableAliases     ",,,,"
      System {
	Name			"MFSK mod"
	Location		[362, 143, 758, 143]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  Inport
	  Name			  "in_1"
	  Position		  [15, 60, 35, 80]
	  Port			  "1"
	  Interpolate		  on
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "FM\npassband"
	  Ports			  [1, 1]
	  Position		  [190, 48, 270, 92]
	  ForegroundColor	  "blue"
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "Passband FM"
	  MaskDescription	  "Modulate the input signal using FM method."
	  MaskHelp		  "This block modulates the input signal using"
" frequency modulation method. The frequency of the output of the carrier sign"
"al depends on the amplitude of the input signal."
	  MaskPromptString	  "Carrier frequency (Hz):|Initial phase (rad)"
":|Sample time (sec):|Symbol interval (sec; Use Inf for analog mod);"
	  MaskStyleString	  "edit,edit,edit,edit"
	  MaskTunableValueString  "on,on,on,on"
	  MaskCallbackString	  "|||"
	  MaskEnableString	  "on,on,on,on"
	  MaskVisibilityString	  "on,on,on,on"
	  MaskToolTipString	  "on,on,on,on"
	  MaskInitialization	  "Fc=@1;Ph=@2;ts=@3;td=@4;pi2=2*pi;if isinf(t"
"d),td=realmax;end;\n"
	  MaskDisplay		  " plot(0,0,100,100,[4.5*[0:10]+5 50 50 50 50"
"+4.5*[0:.15:10]],[10*sin([0:10]*pi/5)+85 85 99 75 85+10*[sin([0:.15:10]*pi*2+"
"cumsum(sin([0:.15:10]*pi/5))/2)]]);\ndisp('FM')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "Fc|Ph|ts|td"
	  MaskVariableAliases	  ",,,"
	  System {
	    Name		    "FM\npassband"
	    Location		    [412, 193, 930, 209]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [60, 40, 80, 60]
	      ShowName		      off
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "Constant"
	      Position		      [40, 85, 60, 105]
	      ShowName		      off
	      Value		      "Fc"
	      VectorParams1D	      on
	    }
	    Block {
	      BlockType		      Reference
	      Name		      "Scheduled\nreset-int1"
	      Ports		      [1, 1]
	      Position		      [180, 38, 260, 82]
	      ShowName		      off
	      SourceBlock	      "com_util/Scheduled\nreset-int"
	      SourceType	      "Scheduled reset integration"
	      td		      "td"
	      ts		      "ts"
	      limit		      "realmax"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [130, 42, 150, 78]
	      ShowName		      off
	      IconShape		      "rectangular"
	      Inputs		      "++"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      Fcn
	      Name		      "sin"
	      Position		      [290, 45, 430, 75]
	      ShowName		      off
	      Expr		      "cos(u[1]*pi2+Ph)"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [465, 50, 485, 70]
	      ShowName		      off
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Constant"
	      SrcPort		      1
	      Points		      [25, 0; 0, -25]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "Scheduled\nreset-int1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Scheduled\nreset-int1"
	      SrcPort		      1
	      DstBlock		      "sin"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "sin"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "MFSK map"
	  Ports			  [1, 1]
	  Position		  [75, 48, 155, 92]
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskType		  "MFSK map"
	  MaskDescription	  "Map input digital signal to analog tone spa"
"ce for FM modulation. The tone space is the frequency distance between two co"
"nsective digit numbers."
	  MaskHelp		  "This block maps the input digital signal to"
" the analog signal, which is ready for the FM modulation. The input are integ"
"ers in the range [0, M-1], where M is the M-ary number. Tone space is the fre"
"quency separation between two consective digits for the input signal. After F"
"M, the modulated signal has a frequency in the range of [Fc, Fc+B]. B is the "
"bandwidth of the FSK, B=(M-1) * Tone_space."
	  MaskPromptString	  "Tone space (Hz):|Input symbol interval and "
"offset (sec):"
	  MaskStyleString	  "edit,edit"
	  MaskTunableValueString  "on,on"
	  MaskCallbackString	  "|"
	  MaskEnableString	  "on,on"
	  MaskVisibilityString	  "on,on"
	  MaskToolTipString	  "on,on"
	  MaskVariables		  "Ton=@1;td=@2;"
	  MaskDisplay		  "disp('MFSK\\nmap')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  MaskValueString	  "Ton|td"
	  MaskVariableAliases	  ","
	  System {
	    Name		    "MFSK map"
	    Location		    [412, 193, 729, 316]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Block {
	      BlockType		      Inport
	      Name		      "in_1"
	      Position		      [45, 45, 65, 65]
	      Port		      "1"
	      Interpolate	      on
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Gain"
	      Position		      [175, 38, 225, 72]
	      Gain		      "Ton"
	      Multiplication	      "Element-wise(K.*u)"
	      SaturateOnIntegerOverflow	on
	    }
	    Block {
	      BlockType		      ZeroOrderHold
	      Name		      "Zero-Order\nHold1"
	      Position		      [105, 39, 140, 71]
	      SampleTime	      "td"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "out_1"
	      Position		      [260, 45, 280, 65]
	      Port		      "1"
	      OutputWhenDisabled      "held"
	      InitialOutput	      "0"
	    }
	    Line {
	      SrcBlock		      "Gain"
	      SrcPort		      1
	      DstBlock		      "out_1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "in_1"
	      SrcPort		      1
	      DstBlock		      "Zero-Order\nHold1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Zero-Order\nHold1"
	      SrcPort		      1
	      DstBlock		      "Gain"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Outport
	  Name			  "out_1"
	  Position		  [290, 60, 310, 80]
	  Port			  "1"
	  OutputWhenDisabled	  "held"
	  InitialOutput		  "0"
	}
	Line {
	  SrcBlock		  "MFSK map"
	  SrcPort		  1
	  DstBlock		  "FM\npassband"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "FM\npassband"
	  SrcPort		  1
	  DstBlock		  "out_1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "in_1"
	  SrcPort		  1
	  DstBlock		  "MFSK map"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      Reference
      Name		      "SNR Generator"
      Ports		      [0, 1]
      Position		      [180, 90, 260, 130]
      ShowName		      off
      SourceBlock	      "com_sour/Sampled read\nfrom wksp"
      SourceType	      "Read from workspace"
      var		      "(-5:6)'"
      td		      "tdd*20"
      cyc		      "1"
      ini		      "0"
    }
    Block {
      BlockType		      Reference
      Name		      "Sampled read\nfrom wksp"
      Ports		      [0, 1]
      Position		      [20, 23, 100, 67]
      ShowName		      off
      SourceBlock	      "com_sour/Sampled read\nfrom wksp"
      SourceType	      "Read from workspace"
      var		      "randint(300,1,MM)"
      td		      "tdd"
      cyc		      "1"
      ini		      "0"
    }
    Block {
      BlockType		      Scope
      Name		      "Scope"
      Ports		      [3]
      Position		      [330, 140, 360, 180]
      Floating		      off
      Location		      [165, 434, 652, 871]
      Open		      on
      NumInputPorts	      "3"
      TickLabels	      "OneTimeTick"
      ZoomMode		      "on"
      List {
	ListType		AxesTitles
	axes1			"Signal to Noise Ratio, dB"
	axes2			"FM Detector Output"
	axes3			"Recovered Symbol Clock"
      }
      Grid		      "on"
      TimeRange		      "0.01"
      YMin		      "-8~-10~-0.5"
      YMax		      "8~7.5~2.5"
      SaveToWorkspace	      off
      SaveName		      "ScopeData"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      on
      MaxDataPoints	      "5000"
      Decimation	      "1"
      SampleInput	      off
      SampleTime	      "0"
    }
    Block {
      BlockType		      Terminator
      Name		      "Terminator_1"
      Position		      [300, 235, 310, 245]
      Orientation	      "left"
      ShowName		      off
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
    }
    Block {
      BlockType		      TransportDelay
      Name		      "Transport\nDelay"
      Position		      [265, 255, 305, 285]
      Orientation	      "left"
      ShowName		      off
      DelayTime		      "tdd/4"
      InitialInput	      "0"
      BufferSize	      "1024"
      PadeOrder		      "0"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Utility1"
      Ports		      []
      Position		      [490, 326, 570, 370]
      ShowName		      off
      OpenFcn		      "tss=1/12000;tdd=1/600;MM=2;Fc=1200;Fshift=1200;"
"[f1num,f1den]=butter(4,2*pi*4000,'s');f2num=fir1(127,(Fshift/2+1/tdd)*2*tss);"
"f2den=[1,zeros(1,127)];"
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskDisplay	      "disp('Reload\\ndata')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Utility1"
	Location		[362, 143, 607, 352]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "information"
      Ports		      []
      Position		      [415, 325, 460, 366]
      ShowName		      off
      ShowPortLabels	      on
      TreatAsAtomicUnit	      off
      RTWSystemCode	      "Auto"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      MaskDisplay	      "disp('?')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"information"
	Location		[362, 143, 832, 574]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	AutoZoom		on
	Block {
	  BlockType		  SubSystem
	  Name			  "information"
	  Ports			  []
	  Position		  [465, 200, 510, 241]
	  ForegroundColor	  "magenta"
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskDisplay		  "disp('?')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "information"
	    Location		    [412, 193, 1196, 384]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Annotation {
	      Position		      [352, 87]
	      VerticalAlignment	      "top"
	      Text		      "The transmitting blocks has orientation"
" from left to right. The receiving blocks has orientation from right to left."
	    }
	    Annotation {
	      Position		      [337, 122]
	      VerticalAlignment	      "top"
	      Text		      "black+blue blocks => typical ANALOG com"
"munication system.                          \n\nblack+green blocks => minimum"
" configuration of a DIGITAL communication system.\n\nblack+green+red blocks ="
"> maximum configuration of a DIGITAL communication system.      "
	    }
	    Annotation {
	      Position		      [382, 47]
	      VerticalAlignment	      "top"
	      Text		      "This library contains transmitter and r"
"eceiver. The receiving part is almost reverse of the transmitting part. For a"
" clear\nrelationshipe, when a transmitter block is clicked, the function for "
"the receiving will also be shown up and vice verse.            "
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "information1"
	  Ports			  []
	  Position		  [485, 220, 530, 261]
	  ForegroundColor	  "magenta"
	  ShowName		  off
	  ShowPortLabels	  on
	  TreatAsAtomicUnit	  off
	  RTWSystemCode		  "Auto"
	  RTWFcnNameOpts	  "Auto"
	  RTWFileNameOpts	  "Auto"
	  MaskDisplay		  "disp('?')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "information1"
	    Location		    [412, 193, 1196, 384]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    AutoZoom		    on
	    Annotation {
	      Position		      [352, 87]
	      VerticalAlignment	      "top"
	      Text		      "The transmitting blocks has orientation"
" from left to right. The receiving blocks has orientation from right to left."
	    }
	    Annotation {
	      Position		      [337, 122]
	      VerticalAlignment	      "top"
	      Text		      "black+blue blocks => typical ANALOG com"
"munication system.                          \n\nblack+green blocks => minimum"
" configuration of a DIGITAL communication system.\n\nblack+green+red blocks ="
"> maximum configuration of a DIGITAL communication system.      "
	    }
	    Annotation {
	      Position		      [382, 47]
	      VerticalAlignment	      "top"
	      Text		      "This library contains transmitter and r"
"eceiver. The receiving part is almost reverse of the transmitting part. For a"
" clear\nrelationshipe, when a transmitter block is clicked, the function for "
"the receiving will also be shown up and vice verse.            "
	    }
	  }
	}
	Annotation {
	  Position		  [242, 17]
	  VerticalAlignment	  "top"
	  Text			  "This demo generates a 2 tone FSK signal.  I"
"t is then transmitted\nand received.  An Early-Late Gate method of data synch"
"ronization is "
	}
	Annotation {
	  Position		  [237, 137]
	  VerticalAlignment	  "top"
	  Text			  "The resulting binary signal is compared wit"
"h the original binary\nmessage and the results are displayed with the error m"
"eter block."
	}
	Annotation {
	  Position		  [222, 92]
	  VerticalAlignment	  "top"
	  Text			  "The modulated FSK signal is passed through "
"an AWGN\nchannel.  The channel has a variable SNR input that ramps \nbetween "
"-5 and 10 dB.    "
	}
	Annotation {
	  Position		  [167, 332]
	  VerticalAlignment	  "top"
	  Text			  "Design and implementation by Darrel Judd.\n"
"Company: Harman Motive\n1201 So. Ohio ST.\nMartinsville, Indiana 46151\nemail"
": drjudd@surf-ici.com\nphone 317-342-5551 ext 339"
	}
	Annotation {
	  Position		  [217, 167]
	  VerticalAlignment	  "top"
	  Text			  "The graph window shows a plot of the instan"
"aeous frequency output\nfrom the demodualtion process (red).  The synchroniza"
"tion pulse from the \nELG block is shown in blue.  The SNR level is graphed i"
"n green. "
	}
	Annotation {
	  Position		  [202, 222]
	  VerticalAlignment	  "top"
	  Text			  "An error free region can be determined by v"
"arying the \nVariable parameter in the SNR Generator block."
	}
	Annotation {
	  Position		  [247, 47]
	  VerticalAlignment	  "top"
	  Text			  "used in the receiver. The synchronization p"
"ulses generated by the ELG\nblock are used to reset the integrator and sample"
" the signal"
	}
      }
    }
    Line {
      SrcBlock		      "Discrete\n Early-Late\n Gate"
      SrcPort		      1
      DstBlock		      "Terminator_1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Discrete\n Early-Late\n Gate"
      SrcPort		      2
      DstBlock		      "Transport\nDelay"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Digital Down\nConvert"
      SrcPort		      2
      DstBlock		      "Fmdetect"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Digital Down\nConvert"
      SrcPort		      1
      DstBlock		      "Fmdetect"
      DstPort		      1
    }
    Line {
      SrcBlock		      "."
      SrcPort		      1
      DstBlock		      "Digital Down\nConvert"
      DstPort		      1
    }
    Line {
      SrcBlock		      "MFSK mod"
      SrcPort		      1
      DstBlock		      "Anti-Aliasing\nFilter"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Integrate, Sample,\n and Threshold"
      SrcPort		      1
      Points		      [-10, 0; 0, -100]
      DstBlock		      "Error-Meter"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Fmdetect"
      SrcPort		      1
      Points		      [0, 0]
      Branch {
	DstBlock		"Discrete\n Early-Late\n Gate"
	DstPort			1
      }
      Branch {
	Points			[-15, 0; 0, -45]
	DstBlock		"Gain"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Sampled read\nfrom wksp"
      SrcPort		      1
      Points		      [25, 0]
      Branch {
	DstBlock		"MFSK mod"
	DstPort			1
      }
      Branch {
	Points			[0, 90]
	DstBlock		"Error-Meter"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Anti-Aliasing\nFilter"
      SrcPort		      1
      Points		      [210, 0]
      DstBlock		      "."
      DstPort		      2
    }
    Line {
      SrcBlock		      "Gain"
      SrcPort		      1
      Points		      [-45, 0; 0, 0]
      Branch {
	Points			[0, 30]
	DstBlock		"Integrate, Sample,\n and Threshold"
	DstPort			1
      }
      Branch {
	Points			[0, -50]
	DstBlock		"Scope"
	DstPort			2
      }
    }
    Line {
      SrcBlock		      "SNR Generator"
      SrcPort		      1
      Points		      [30, 0]
      Branch {
	Points			[280, 0]
	DstBlock		"."
	DstPort			1
      }
      Branch {
	Points			[0, 35]
	DstBlock		"Scope"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Transport\nDelay"
      SrcPort		      1
      Points		      [-25, 0]
      Branch {
	DstBlock		"Integrate, Sample,\n and Threshold"
	DstPort			2
      }
      Branch {
	Points			[0, -95]
	DstBlock		"Scope"
	DstPort			3
      }
    }
    Annotation {
      Position		      [320, 422]
      Text		      "Warning: This model is obsolete and may be remo"
"ved in the future."
      FontName		      "Arial"
      FontSize		      12
    }
  }
}
