oqpnrzbw.mdl
上传用户:loeagle
上传日期:2013-03-02
资源大小:1236k
文件大小:115k
源码类别:

通讯编程文档

开发平台:

Matlab

  1. Model {
  2.   Name   "oqpnrzbw"
  3.   Version   5.0
  4.   SaveDefaultBlockParams  on
  5.   SampleTimeColors   off
  6.   LibraryLinkDisplay   "none"
  7.   WideLines   off
  8.   ShowLineDimensions   off
  9.   ShowPortDataTypes   off
  10.   ShowLoopsOnError   on
  11.   IgnoreBidirectionalLines off
  12.   ShowStorageClass   off
  13.   ExecutionOrder   off
  14.   RecordCoverage   off
  15.   CovPath   "/"
  16.   CovSaveName   "covdata"
  17.   CovMetricSettings   "dw"
  18.   CovNameIncrementing   off
  19.   CovHtmlReporting   on
  20.   covSaveCumulativeToWorkspaceVar on
  21.   CovSaveSingleToWorkspaceVar on
  22.   CovCumulativeVarName   "covCumulativeData"
  23.   CovCumulativeReport   off
  24.   DataTypeOverride   "UseLocalSettings"
  25.   MinMaxOverflowLogging   "UseLocalSettings"
  26.   MinMaxOverflowArchiveMode "Overwrite"
  27.   BlockNameDataTip   off
  28.   BlockParametersDataTip  off
  29.   BlockDescriptionStringDataTip off
  30.   ToolBar   on
  31.   StatusBar   on
  32.   BrowserShowLibraryLinks off
  33.   BrowserLookUnderMasks   off
  34.   CloseFcn   "closemodcross"
  35.   Created   "Wed Jul 25 14:10:24 2001"
  36.   Creator   "gerhard"
  37.   UpdateHistory   "UpdateHistoryNever"
  38.   ModifiedByFormat   "%<Auto>"
  39.   LastModifiedBy   "bauch"
  40.   ModifiedDateFormat   "%<Auto>"
  41.   LastModifiedDate   "Sat Aug 30 14:44:17 2003"
  42.   ModelVersionFormat   "1.%<AutoIncrement:25>"
  43.   ConfigurationManager   "none"
  44.   SimParamPage   "Solver"
  45.   LinearizationMsg   "none"
  46.   Profile   off
  47.   ParamWorkspaceSource   "MATLABWorkspace"
  48.   AccelSystemTargetFile   "accel.tlc"
  49.   AccelTemplateMakefile   "accel_default_tmf"
  50.   AccelMakeCommand   "make_rtw"
  51.   TryForcingSFcnDF   off
  52.   ExtModeMexFile   "ext_comm"
  53.   ExtModeBatchMode   off
  54.   ExtModeTrigType   "manual"
  55.   ExtModeTrigMode   "normal"
  56.   ExtModeTrigPort   "1"
  57.   ExtModeTrigElement   "any"
  58.   ExtModeTrigDuration   1000
  59.   ExtModeTrigHoldOff   0
  60.   ExtModeTrigDelay   0
  61.   ExtModeTrigDirection   "rising"
  62.   ExtModeTrigLevel   0
  63.   ExtModeArchiveMode   "off"
  64.   ExtModeAutoIncOneShot   off
  65.   ExtModeIncDirWhenArm   off
  66.   ExtModeAddSuffixToVar   off
  67.   ExtModeWriteAllDataToWs off
  68.   ExtModeArmWhenConnect   on
  69.   ExtModeSkipDownloadWhenConnect off
  70.   ExtModeLogAll   on
  71.   ExtModeAutoUpdateStatusClock off
  72.   BufferReuse   on
  73.   RTWExpressionDepthLimit 5
  74.   SimulationMode   "normal"
  75.   Solver   "ode45"
  76.   SolverMode   "Auto"
  77.   StartTime   "0.0"
  78.   StopTime   "999999"
  79.   MaxOrder   5
  80.   MaxStep   ".010"
  81.   MinStep   "0.000001"
  82.   MaxNumMinSteps   "-1"
  83.   InitialStep   "auto"
  84.   FixedStep   "auto"
  85.   RelTol   "1e-3"
  86.   AbsTol   "1e-3"
  87.   OutputOption   "RefineOutputTimes"
  88.   OutputTimes   "[]"
  89.   Refine   "1"
  90.   LoadExternalInput   off
  91.   ExternalInput   "[t, u]"
  92.   LoadInitialState   off
  93.   InitialState   "xInitial"
  94.   SaveTime   off
  95.   TimeSaveName   "tout"
  96.   SaveState   off
  97.   StateSaveName   "xout"
  98.   SaveOutput   off
  99.   OutputSaveName   "yout"
  100.   SaveFinalState   off
  101.   FinalStateName   "xFinal"
  102.   SaveFormat   "Array"
  103.   Decimation   "1"
  104.   LimitDataPoints   on
  105.   MaxDataPoints   "1000"
  106.   SignalLoggingName   "sigsOut"
  107.   ConsistencyChecking   "none"
  108.   ArrayBoundsChecking   "none"
  109.   AlgebraicLoopMsg   "warning"
  110.   BlockPriorityViolationMsg "warning"
  111.   MinStepSizeMsg   "warning"
  112.   InheritedTsInSrcMsg   "warning"
  113.   DiscreteInheritContinuousMsg "warning"
  114.   MultiTaskRateTransMsg   "error"
  115.   SingleTaskRateTransMsg  "none"
  116.   CheckForMatrixSingularity "none"
  117.   IntegerOverflowMsg   "warning"
  118.   Int32ToFloatConvMsg   "warning"
  119.   ParameterDowncastMsg   "error"
  120.   ParameterOverflowMsg   "error"
  121.   ParameterPrecisionLossMsg "warning"
  122.   UnderSpecifiedDataTypeMsg "none"
  123.   UnnecessaryDatatypeConvMsg "none"
  124.   VectorMatrixConversionMsg "none"
  125.   InvalidFcnCallConnMsg   "error"
  126.   SignalLabelMismatchMsg  "none"
  127.   UnconnectedInputMsg   "warning"
  128.   UnconnectedOutputMsg   "warning"
  129.   UnconnectedLineMsg   "warning"
  130.   SfunCompatibilityCheckMsg "none"
  131.   RTWInlineParameters   off
  132.   BlockReductionOpt   off
  133.   BooleanDataType   off
  134.   ConditionallyExecuteInputs on
  135.   ParameterPooling   on
  136.   OptimizeBlockIOStorage  on
  137.   ZeroCross   on
  138.   AssertionControl   "UseLocalSettings"
  139.   ProdHWDeviceType   "Microprocessor"
  140.   ProdHWWordLengths   "8,16,32,32"
  141.   RTWSystemTargetFile   "grt.tlc"
  142.   RTWTemplateMakefile   "grt_default_tmf"
  143.   RTWMakeCommand   "make_rtw"
  144.   RTWGenerateCodeOnly   off
  145.   RTWRetainRTWFile   off
  146.   TLCProfiler   off
  147.   TLCDebug   off
  148.   TLCCoverage   off
  149.   TLCAssertion   off
  150.   BlockDefaults {
  151.     Orientation     "right"
  152.     ForegroundColor     "black"
  153.     BackgroundColor     "white"
  154.     DropShadow     off
  155.     NamePlacement     "normal"
  156.     FontName     "Helvetica"
  157.     FontSize     10
  158.     FontWeight     "normal"
  159.     FontAngle     "normal"
  160.     ShowName     on
  161.   }
  162.   BlockParameterDefaults {
  163.     Block {
  164.       BlockType       Clock
  165.       DisplayTime       off
  166.     }
  167.     Block {
  168.       BlockType       Constant
  169.       Value       "1"
  170.       VectorParams1D       on
  171.       ShowAdditionalParam     off
  172.       OutDataTypeMode       "Inherit from 'Constant value'"
  173.       OutDataType       "sfix(16)"
  174.       ConRadixGroup       "Use specified scaling"
  175.       OutScaling       "2^0"
  176.     }
  177.     Block {
  178.       BlockType       Demux
  179.       Outputs       "4"
  180.       DisplayOption       "none"
  181.       BusSelectionMode       off
  182.     }
  183.     Block {
  184.       BlockType       DigitalClock
  185.       SampleTime       "1"
  186.     }
  187.     Block {
  188.       BlockType       DiscreteFilter
  189.       Numerator       "[1]"
  190.       Denominator       "[1 2]"
  191.       SampleTime       "1"
  192.       Realization       "auto"
  193.       RTWStateStorageClass    "Auto"
  194.     }
  195.     Block {
  196.       BlockType       Fcn
  197.       Expr       "sin(u[1])"
  198.     }
  199.     Block {
  200.       BlockType       Gain
  201.       Gain       "1"
  202.       Multiplication       "Element-wise(K.*u)"
  203.       ShowAdditionalParam     off
  204.       ParameterDataTypeMode   "Same as input"
  205.       ParameterDataType       "sfix(16)"
  206.       ParameterScalingMode    "Best Precision: Matrix-wise"
  207.       ParameterScaling       "2^0"
  208.       OutDataTypeMode       "Same as input"
  209.       OutDataType       "sfix(16)"
  210.       OutScaling       "2^0"
  211.       LockScale       off
  212.       RndMeth       "Floor"
  213.       SaturateOnIntegerOverflow on
  214.     }
  215.     Block {
  216.       BlockType       Inport
  217.       Port       "1"
  218.       PortDimensions       "-1"
  219.       SampleTime       "-1"
  220.       ShowAdditionalParam     off
  221.       LatchInput       off
  222.       DataType       "auto"
  223.       OutDataType       "sfix(16)"
  224.       OutScaling       "2^0"
  225.       SignalType       "auto"
  226.       SamplingMode       "auto"
  227.       Interpolate       on
  228.     }
  229.     Block {
  230.       BlockType       Logic
  231.       Operator       "AND"
  232.       Inputs       "2"
  233.       ShowAdditionalParam     off
  234.       AllPortsSameDT       on
  235.       OutDataTypeMode       "Logical (see Advanced Sim. Parameters)"
  236.       LogicDataType       "uint(8)"
  237.     }
  238.     Block {
  239.       BlockType       Lookup
  240.       InputValues       "[-4:5]"
  241.       OutputValues       " rand(1,10)-0.5"
  242.       ShowAdditionalParam     off
  243.       LookUpMeth       "Interpolation-Extrapolation"
  244.       OutDataTypeMode       "Same as input"
  245.       OutDataType       "sfix(16)"
  246.       OutScaling       "2^0"
  247.       LockScale       off
  248.       RndMeth       "Floor"
  249.       SaturateOnIntegerOverflow on
  250.     }
  251.     Block {
  252.       BlockType       Mux
  253.       Inputs       "4"
  254.       DisplayOption       "none"
  255.     }
  256.     Block {
  257.       BlockType       Outport
  258.       Port       "1"
  259.       OutputWhenDisabled      "held"
  260.       InitialOutput       "[]"
  261.     }
  262.     Block {
  263.       BlockType       Product
  264.       Inputs       "2"
  265.       Multiplication       "Element-wise(.*)"
  266.       ShowAdditionalParam     off
  267.       InputSameDT       on
  268.       OutDataTypeMode       "Same as first input"
  269.       OutDataType       "sfix(16)"
  270.       OutScaling       "2^0"
  271.       LockScale       off
  272.       RndMeth       "Floor"
  273.       SaturateOnIntegerOverflow on
  274.     }
  275.     Block {
  276.       BlockType       RandomNumber
  277.       Mean       "0"
  278.       Variance       "1"
  279.       Seed       "0"
  280.       SampleTime       "-1"
  281.       VectorParams1D       on
  282.     }
  283.     Block {
  284.       BlockType       Reference
  285.     }
  286.     Block {
  287.       BlockType       RelationalOperator
  288.       Operator       ">="
  289.       ShowAdditionalParam     off
  290.       InputSameDT       on
  291.       LogicOutDataTypeMode    "Logical (see Advanced Sim. Parameters)"
  292.       LogicDataType       "uint(8)"
  293.       ZeroCross       on
  294.     }
  295.     Block {
  296.       BlockType       Scope
  297.       Floating       off
  298.       ModelBased       off
  299.       TickLabels       "OneTimeTick"
  300.       ZoomMode       "on"
  301.       Grid       "on"
  302.       TimeRange       "auto"
  303.       YMin       "-5"
  304.       YMax       "5"
  305.       SaveToWorkspace       off
  306.       SaveName       "ScopeData"
  307.       LimitDataPoints       on
  308.       MaxDataPoints       "5000"
  309.       Decimation       "1"
  310.       SampleInput       off
  311.       SampleTime       "0"
  312.     }
  313.     Block {
  314.       BlockType       "S-Function"
  315.       FunctionName       "system"
  316.       PortCounts       "[]"
  317.       SFunctionModules       "''"
  318.     }
  319.     Block {
  320.       BlockType       StateSpace
  321.       A       "1"
  322.       B       "1"
  323.       C       "1"
  324.       D       "1"
  325.       X0       "0"
  326.       AbsoluteTolerance       "auto"
  327.       Realization       "auto"
  328.     }
  329.     Block {
  330.       BlockType       Step
  331.       Time       "1"
  332.       Before       "0"
  333.       After       "1"
  334.       SampleTime       "-1"
  335.       VectorParams1D       on
  336.       ZeroCross       on
  337.     }
  338.     Block {
  339.       BlockType       SubSystem
  340.       ShowPortLabels       on
  341.       Permissions       "ReadWrite"
  342.       RTWSystemCode       "Auto"
  343.       RTWFcnNameOpts       "Auto"
  344.       RTWFileNameOpts       "Auto"
  345.       SimViewingDevice       off
  346.       DataTypeOverride       "UseLocalSettings"
  347.       MinMaxOverflowLogging   "UseLocalSettings"
  348.     }
  349.     Block {
  350.       BlockType       Sum
  351.       IconShape       "rectangular"
  352.       Inputs       "++"
  353.       ShowAdditionalParam     off
  354.       InputSameDT       on
  355.       OutDataTypeMode       "Same as first input"
  356.       OutDataType       "sfix(16)"
  357.       OutScaling       "2^0"
  358.       LockScale       off
  359.       RndMeth       "Floor"
  360.       SaturateOnIntegerOverflow on
  361.     }
  362.     Block {
  363.       BlockType       Switch
  364.       Criteria       "u2 >= Threshold"
  365.       Threshold       "0"
  366.       ShowAdditionalParam     off
  367.       InputSameDT       on
  368.       OutDataTypeMode       "Inherit via internal rule"
  369.       RndMeth       "Floor"
  370.       SaturateOnIntegerOverflow on
  371.       ZeroCross       on
  372.     }
  373.     Block {
  374.       BlockType       Terminator
  375.     }
  376.     Block {
  377.       BlockType       TransportDelay
  378.       DelayTime       "1"
  379.       InitialInput       "0"
  380.       BufferSize       "1024"
  381.       PadeOrder       "0"
  382.       TransDelayFeedthrough   off
  383.     }
  384.     Block {
  385.       BlockType       UnitDelay
  386.       X0       "0"
  387.       SampleTime       "1"
  388.       RTWStateStorageClass    "Auto"
  389.     }
  390.     Block {
  391.       BlockType       ZeroOrderHold
  392.       SampleTime       "1"
  393.     }
  394.   }
  395.   AnnotationDefaults {
  396.     HorizontalAlignment     "center"
  397.     VerticalAlignment     "middle"
  398.     ForegroundColor     "black"
  399.     BackgroundColor     "white"
  400.     DropShadow     off
  401.     FontName     "Helvetica"
  402.     FontSize     10
  403.     FontWeight     "normal"
  404.     FontAngle     "normal"
  405.   }
  406.   LineDefaults {
  407.     FontName     "Helvetica"
  408.     FontSize     9
  409.     FontWeight     "normal"
  410.     FontAngle     "normal"
  411.   }
  412.   System {
  413.     Name     "oqpnrzbw"
  414.     Location     [20, 122, 1029, 400]
  415.     Open     on
  416.     ModelBrowserVisibility  off
  417.     ModelBrowserWidth     200
  418.     ScreenColor     "white"
  419.     PaperOrientation     "landscape"
  420.     PaperPositionMode     "auto"
  421.     PaperType     "usletter"
  422.     PaperUnits     "inches"
  423.     ZoomFactor     "100"
  424.     ReportName     "simulink-default.rpt"
  425.     Block {
  426.       BlockType       Reference
  427.       Name       "Channel"
  428.       Ports       [1, 1]
  429.       Position       [465, 83, 545, 127]
  430.       SourceBlock       "librnew/Channel"
  431.       SourceType       "AWGN channel, fixed parameter"
  432.       m       "0"
  433.       variance       "0.00010"
  434.       s       "12345"
  435.     }
  436.     Block {
  437.       BlockType       SubSystem
  438.       Name       "Error rate"
  439.       Ports       [2]
  440.       Position       [465, 215, 545, 255]
  441.       Orientation       "down"
  442.       CopyFcn       "sbiterr([],[],[],'CopyBlock')"
  443.       DeleteFcn       "sbiterr([],[],[],'DeleteBlock')"
  444.       LoadFcn       "sbiterr([],[],[],'LoadBlock')"
  445.       StartFcn       "sbiterr([],[],[],'Start')"
  446.       StopFcn       "sbiterr([],[],[],'Stop')"
  447.       NameChangeFcn       "sbiterr([],[],[],'NameChange')"
  448.       ShowPortLabels       off
  449.       TreatAsAtomicUnit       off
  450.       MaskType       "Symbol/bit error counter"
  451.       MaskDescription       "Use the input data from the 1st port as the ref"
  452. "erence signal to detect the number of errors and error rate of the 2nd signal"
  453. "."
  454.       MaskHelp       "The signal from the first port must be a scalar"
  455. ". The second input port can be a vector with a delay to the first port signal"
  456. ". The comparison happens only at the sampling point."
  457.       MaskPromptString       "Bit per symbol:|Number of digits on display:|De"
  458. "lay between 1st port and 2nd port:|Sample time (sec):"
  459.       MaskStyleString       "edit,edit,edit,edit"
  460.       MaskTunableValueString  "on,on,on,on"
  461.       MaskCallbackString      "|||"
  462.       MaskEnableString       "on,on,on,on"
  463.       MaskVisibilityString    "on,on,on,on"
  464.       MaskToolTipString       "on,on,on,on"
  465.       MaskVarAliasString      ",,,"
  466.       MaskInitialization      "K=@1;num_lin=@2;TDelay=@3;Sample=@4;"
  467.       MaskDisplay       "disp('Error\nmeter')"
  468.       MaskIconFrame       on
  469.       MaskIconOpaque       on
  470.       MaskIconRotate       "none"
  471.       MaskIconUnits       "autoscale"
  472.       MaskValueString       "2|10|1.5|1"
  473.       System {
  474. Name "Error rate"
  475. Location [255, 368, 509, 510]
  476. Open off
  477. ModelBrowserVisibility off
  478. ModelBrowserWidth 200
  479. ScreenColor "white"
  480. PaperOrientation "landscape"
  481. PaperPositionMode "auto"
  482. PaperType "usletter"
  483. PaperUnits "inches"
  484. ZoomFactor "100"
  485. Block {
  486.   BlockType   Inport
  487.   Name   "in_1"
  488.   Position   [15, 45, 35, 65]
  489. }
  490. Block {
  491.   BlockType   Inport
  492.   Name   "in_2"
  493.   Position   [15, 60, 35, 80]
  494.   Port   "2"
  495. }
  496. Block {
  497.   BlockType   Mux
  498.   Name   "Mux"
  499.   Ports   [2, 1]
  500.   Position   [65, 46, 100, 79]
  501.   Inputs   "2"
  502. }
  503. Block {
  504.   BlockType   "S-Function"
  505.   Name   "S-function"
  506.   Ports   [1]
  507.   Position   [130, 52, 195, 78]
  508.   FunctionName   "sbiterr"
  509.   Parameters   "num_lin, K, TDelay, Sample"
  510. }
  511. Line {
  512.   SrcBlock   "Mux"
  513.   SrcPort   1
  514.   DstBlock   "S-function"
  515.   DstPort   1
  516. }
  517. Line {
  518.   SrcBlock   "in_1"
  519.   SrcPort   1
  520.   DstBlock   "Mux"
  521.   DstPort   1
  522. }
  523. Line {
  524.   SrcBlock   "in_2"
  525.   SrcPort   1
  526.   DstBlock   "Mux"
  527.   DstPort   2
  528. }
  529.       }
  530.     }
  531.     Block {
  532.       BlockType       SubSystem
  533.       Name       "Receiver"
  534.       Ports       [1, 1]
  535.       Position       [650, 62, 725, 148]
  536.       ShowPortLabels       off
  537.       TreatAsAtomicUnit       off
  538.       System {
  539. Name "Receiver"
  540. Location [6, 109, 1014, 387]
  541. Open off
  542. ModelBrowserVisibility off
  543. ModelBrowserWidth 200
  544. ScreenColor "white"
  545. PaperOrientation "landscape"
  546. PaperPositionMode "auto"
  547. PaperType "usletter"
  548. PaperUnits "inches"
  549. ZoomFactor "100"
  550. Block {
  551.   BlockType   Inport
  552.   Name   "noisynOQPSK-nSignal"
  553.   Position   [25, 145, 45, 165]
  554. }
  555. Block {
  556.   BlockType   Reference
  557.   Name   "ButterworthLP filter"
  558.   Ports   [1, 1]
  559.   Position   [490, 69, 560, 111]
  560.   SourceBlock   "librnew/ButterworthLP filter"
  561.   SourceType   "Lowpass Butterworth filter"
  562.   MaskParam1   "5"
  563.   n   "4"
  564. }
  565. Block {
  566.   BlockType   Reference
  567.   Name   "ButterworthLP filter1"
  568.   Ports   [1, 1]
  569.   Position   [485, 204, 555, 246]
  570.   SourceBlock   "librnew/ButterworthLP filter"
  571.   SourceType   "Lowpass Butterworth filter"
  572.   MaskParam1   "5"
  573.   n   "4"
  574. }
  575. Block {
  576.   BlockType   Clock
  577.   Name   "Clock"
  578.   Position   [145, 140, 165, 160]
  579.   ShowName   off
  580.   Decimation   "10"
  581. }
  582. Block {
  583.   BlockType   Fcn
  584.   Name   "Fcn"
  585.   Position   [185, 119, 265, 141]
  586.   ShowName   off
  587.   Expr   "2*cos(4*pi*u)"
  588. }
  589. Block {
  590.   BlockType   Fcn
  591.   Name   "Fcn1"
  592.   Position   [185, 159, 265, 181]
  593.   ShowName   off
  594.   Expr   "-2*sin(4*pi*u)"
  595. }
  596. Block {
  597.   BlockType   Product
  598.   Name   "Product"
  599.   Ports   [2, 1]
  600.   Position   [300, 74, 330, 101]
  601.   ShowName   off
  602. }
  603. Block {
  604.   BlockType   Product
  605.   Name   "Product1"
  606.   Ports   [2, 1]
  607.   Position   [295, 213, 325, 237]
  608.   ShowName   off
  609. }
  610. Block {
  611.   BlockType   SubSystem
  612.   Name   "QPSK demap"
  613.   Ports   [2, 1]
  614.   Position   [805, 124, 880, 171]
  615.   TreatAsAtomicUnit   off
  616.   MaskType   "MPSK demapping"
  617.   MaskDescription   "Reverse the QASK map. Input in-phasenand q"
  618. "uadrature components from thentwo inputs. Output demapped signal."
  619.   MaskHelp   "This block demaps a QASK mapped signal usin"
  620. "g circle constellation. You can place this block after a QAM demodulation blo"
  621. "ck. The circle constellation is defined in NIC, RIC, and PIC. The symbol inte"
  622. "rval can be a two elements vector with the first element being offset. The de"
  623. "fault offset is zero. Use function MODMAP to view the constellation."
  624.   MaskPromptString   "Number of symbols on each circle NIC::|Radi"
  625. "i for each circle RIC:|Phase shift on each circle PIC (rad):|Symbol interval "
  626. "and offset (sec):"
  627.   MaskStyleString   "edit,edit,edit,edit"
  628.   MaskTunableValueString  "on,on,on,on"
  629.   MaskCallbackString   "|||"
  630.   MaskEnableString   "on,on,on,on"
  631.   MaskVisibilityString   "on,on,on,on"
  632.   MaskToolTipString   "on,on,on,on"
  633.   MaskVarAliasString   ",,,"
  634.   MaskVariables   "N=@1;A=@2;P=@3;td=@4;"
  635.   MaskInitialization   "y1=apkconst(N,A,P);y2=imag(y1);y1=real(y1);"
  636.   MaskDisplay   "disp('MPSK\ndemapping')"
  637.   MaskIconFrame   on
  638.   MaskIconOpaque   on
  639.   MaskIconRotate   "none"
  640.   MaskIconUnits   "autoscale"
  641.   MaskValueString   "[4]|[sqrt(2)]|[pi/4]|[1 0.5]"
  642.   System {
  643.     Name     "QPSK demap"
  644.     Location     [104, 488, 602, 788]
  645.     Open     off
  646.     ModelBrowserVisibility  off
  647.     ModelBrowserWidth     200
  648.     ScreenColor     "white"
  649.     PaperOrientation     "landscape"
  650.     PaperPositionMode     "auto"
  651.     PaperType     "usletter"
  652.     PaperUnits     "inches"
  653.     ZoomFactor     "100"
  654.     Block {
  655.       BlockType       Inport
  656.       Name       "real"
  657.       Position       [20, 45, 40, 65]
  658.     }
  659.     Block {
  660.       BlockType       Inport
  661.       Name       "imag"
  662.       Position       [20, 130, 40, 150]
  663.       Port       "2"
  664.     }
  665.     Block {
  666.       BlockType       "S-Function"
  667.       Name       "Minimum1"
  668.       Ports       [1, 1]
  669.       Position       [390, 95, 450, 115]
  670.       FunctionName       "arymimai"
  671.       Parameters       "'min'"
  672.     }
  673.     Block {
  674.       BlockType       Product
  675.       Name       "Product"
  676.       Ports       [2, 1]
  677.       Position       [275, 55, 300, 75]
  678.     }
  679.     Block {
  680.       BlockType       Product
  681.       Name       "Product1"
  682.       Ports       [2, 1]
  683.       Position       [275, 140, 300, 160]
  684.     }
  685.     Block {
  686.       BlockType       Sum
  687.       Name       "Sum1"
  688.       Ports       [2, 1]
  689.       Position       [205, 48, 225, 77]
  690.       ForegroundColor       "red"
  691.       Inputs       "+-"
  692.     }
  693.     Block {
  694.       BlockType       Sum
  695.       Name       "Sum2"
  696.       Ports       [2, 1]
  697.       Position       [345, 88, 365, 117]
  698.     }
  699.     Block {
  700.       BlockType       Sum
  701.       Name       "Sum6"
  702.       Ports       [2, 1]
  703.       Position       [205, 133, 225, 162]
  704.       ForegroundColor       "blue"
  705.       Inputs       "+-"
  706.     }
  707.     Block {
  708.       BlockType       ZeroOrderHold
  709.       Name       "Zero-OrdernHold"
  710.       Position       [95, 39, 130, 71]
  711.       ForegroundColor       "red"
  712.       SampleTime       "td"
  713.     }
  714.     Block {
  715.       BlockType       ZeroOrderHold
  716.       Name       "Zero-OrdernHold1"
  717.       Position       [95, 124, 130, 156]
  718.       ForegroundColor       "blue"
  719.       SampleTime       "td"
  720.     }
  721.     Block {
  722.       BlockType       Constant
  723.       Name       "imag_pt"
  724.       Position       [140, 179, 165, 201]
  725.       BackgroundColor       "yellow"
  726.       Value       "y2"
  727.     }
  728.     Block {
  729.       BlockType       Constant
  730.       Name       "real_pt"
  731.       Position       [145, 94, 170, 116]
  732.       BackgroundColor       "green"
  733.       Value       "y1"
  734.     }
  735.     Block {
  736.       BlockType       Outport
  737.       Name       "out_1"
  738.       Position       [470, 95, 490, 115]
  739.     }
  740.     Line {
  741.       SrcBlock       "Minimum1"
  742.       SrcPort       1
  743.       DstBlock       "out_1"
  744.       DstPort       1
  745.     }
  746.     Line {
  747.       SrcBlock       "Sum2"
  748.       SrcPort       1
  749.       DstBlock       "Minimum1"
  750.       DstPort       1
  751.     }
  752.     Line {
  753.       SrcBlock       "Product1"
  754.       SrcPort       1
  755.       Points       [10, 0; 0, -40]
  756.       DstBlock       "Sum2"
  757.       DstPort       2
  758.     }
  759.     Line {
  760.       SrcBlock       "Product"
  761.       SrcPort       1
  762.       Points       [10, 0; 0, 30]
  763.       DstBlock       "Sum2"
  764.       DstPort       1
  765.     }
  766.     Line {
  767.       SrcBlock       "Sum6"
  768.       SrcPort       1
  769.       Points       [0, 0; 15, 0]
  770.       Branch {
  771. Points [0, 5]
  772. DstBlock "Product1"
  773. DstPort 2
  774.       }
  775.       Branch {
  776. Points [0, -5]
  777. DstBlock "Product1"
  778. DstPort 1
  779.       }
  780.     }
  781.     Line {
  782.       SrcBlock       "Sum1"
  783.       SrcPort       1
  784.       Points       [0, 0; 15, 0]
  785.       Branch {
  786. Points [0, 5]
  787. DstBlock "Product"
  788. DstPort 2
  789.       }
  790.       Branch {
  791. Points [0, -5]
  792. DstBlock "Product"
  793. DstPort 1
  794.       }
  795.     }
  796.     Line {
  797.       SrcBlock       "imag_pt"
  798.       SrcPort       1
  799.       Points       [10, 0; 0, -35]
  800.       DstBlock       "Sum6"
  801.       DstPort       2
  802.     }
  803.     Line {
  804.       SrcBlock       "Zero-OrdernHold1"
  805.       SrcPort       1
  806.       DstBlock       "Sum6"
  807.       DstPort       1
  808.     }
  809.     Line {
  810.       SrcBlock       "Zero-OrdernHold"
  811.       SrcPort       1
  812.       DstBlock       "Sum1"
  813.       DstPort       1
  814.     }
  815.     Line {
  816.       SrcBlock       "real_pt"
  817.       SrcPort       1
  818.       Points       [5, 0; 0, -35]
  819.       DstBlock       "Sum1"
  820.       DstPort       2
  821.     }
  822.     Line {
  823.       SrcBlock       "imag"
  824.       SrcPort       1
  825.       DstBlock       "Zero-OrdernHold1"
  826.       DstPort       1
  827.     }
  828.     Line {
  829.       SrcBlock       "real"
  830.       SrcPort       1
  831.       DstBlock       "Zero-OrdernHold"
  832.       DstPort       1
  833.     }
  834.   }
  835. }
  836. Block {
  837.   BlockType   TransportDelay
  838.   Name   "TransportnDelay"
  839.   Position   [365, 75, 405, 105]
  840.   DelayTime   ".5"
  841.   BufferSize   "200"
  842. }
  843. Block {
  844.   BlockType   SubSystem
  845.   Name   "close receiver"
  846.   Ports   []
  847.   Position   [810, 20, 945, 46]
  848.   BackgroundColor   "lightBlue"
  849.   ShowName   off
  850.   OpenFcn   "closerec"
  851.   FontSize   12
  852.   FontAngle   "italic"
  853.   ShowPortLabels   off
  854.   TreatAsAtomicUnit   off
  855.   MaskType   "close"
  856.   MaskDisplay   "disp('close receiver')"
  857.   MaskIconFrame   on
  858.   MaskIconOpaque   on
  859.   MaskIconRotate   "none"
  860.   MaskIconUnits   "autoscale"
  861.   System {
  862.     Name     "close receiver"
  863.     Location     [136, 230, 381, 439]
  864.     Open     off
  865.     ModelBrowserVisibility  off
  866.     ModelBrowserWidth     200
  867.     ScreenColor     "cyan"
  868.     PaperOrientation     "landscape"
  869.     PaperPositionMode     "auto"
  870.     PaperType     "usletter"
  871.     PaperUnits     "inches"
  872.     ZoomFactor     "100"
  873.   }
  874. }
  875. Block {
  876.   BlockType   SubSystem
  877.   Name   "noise variance"
  878.   Ports   []
  879.   Position   [29, 240, 135, 264]
  880.   BackgroundColor   "lightBlue"
  881.   ShowName   off
  882.   OpenFcn   "setnoise"
  883.   FontSize   12
  884.   FontAngle   "italic"
  885.   ShowPortLabels   off
  886.   TreatAsAtomicUnit   off
  887.   MaskType   "noise"
  888.   MaskDisplay   "disp('Noise variance')"
  889.   MaskIconFrame   on
  890.   MaskIconOpaque   on
  891.   MaskIconRotate   "none"
  892.   MaskIconUnits   "autoscale"
  893.   System {
  894.     Name     "noise variance"
  895.     Location     [136, 230, 381, 439]
  896.     Open     off
  897.     ModelBrowserVisibility  off
  898.     ModelBrowserWidth     200
  899.     ScreenColor     "cyan"
  900.     PaperOrientation     "landscape"
  901.     PaperPositionMode     "auto"
  902.     PaperType     "usletter"
  903.     PaperUnits     "inches"
  904.     ZoomFactor     "100"
  905.   }
  906. }
  907. Block {
  908.   BlockType   Scope
  909.   Name   "r(t)"
  910.   Ports   [1]
  911.   Position   [60, 70, 90, 100]
  912.   Orientation   "up"
  913.   Location   [320, 340, 960, 440]
  914.   Open   off
  915.   NumInputPorts   "1"
  916.   List {
  917.     ListType     AxesTitles
  918.     axes1     "%<SignalLabel>"
  919.   }
  920.   TimeRange   "25.000000"
  921.   YMin   "-1.500000"
  922.   YMax   "1.500000"
  923.   DataFormat   "Array"
  924. }
  925. Block {
  926.   BlockType   SubSystem
  927.   Name   "receiver diagrams"
  928.   Ports   [2]
  929.   Position   [725, 15, 780, 55]
  930.   ShowPortLabels   off
  931.   TreatAsAtomicUnit   off
  932.   MaskType   "2D-Diagrams"
  933.   MaskDescription   "Eye pattern, signal space trajectory and sc"
  934. "atter plot"
  935.   MaskPromptString   "Plot start time:|Samples per time slot (2*T"
  936. "):|Decision offset:"
  937.   MaskStyleString   "edit,edit,edit"
  938.   MaskTunableValueString  "on,on,on"
  939.   MaskCallbackString   "||"
  940.   MaskEnableString   "on,on,on"
  941.   MaskVisibilityString   "on,on,on"
  942.   MaskToolTipString   "on,on,on"
  943.   MaskVarAliasString   ",,"
  944.   MaskVariables   "starttime=@1;anzahl=@2;offset=@3;"
  945.   MaskInitialization   " [x, y] = srcsicon(10);"
  946.   MaskDisplay   "plot(0,0,100,100,x,y)"
  947.   MaskIconFrame   on
  948.   MaskIconOpaque   on
  949.   MaskIconRotate   "none"
  950.   MaskIconUnits   "autoscale"
  951.   MaskValueString   "2|40|0.075"
  952.   System {
  953.     Name     "receiver diagrams"
  954.     Location     [542, 386, 954, 679]
  955.     Open     off
  956.     ModelBrowserVisibility  off
  957.     ModelBrowserWidth     200
  958.     ScreenColor     "white"
  959.     PaperOrientation     "landscape"
  960.     PaperPositionMode     "auto"
  961.     PaperType     "usletter"
  962.     PaperUnits     "inches"
  963.     ZoomFactor     "100"
  964.     Block {
  965.       BlockType       Inport
  966.       Name       "Inphase"
  967.       Position       [30, 25, 50, 45]
  968.     }
  969.     Block {
  970.       BlockType       Inport
  971.       Name       "Quadratur"
  972.       Position       [30, 80, 50, 100]
  973.       Port       "2"
  974.     }
  975.     Block {
  976.       BlockType       Constant
  977.       Name       "Constant"
  978.       Position       [90, 125, 110, 145]
  979.       Orientation       "up"
  980.       ShowName       off
  981.       Value       "Inf"
  982.     }
  983.     Block {
  984.       BlockType       Constant
  985.       Name       "Constant0"
  986.       Position       [190, 125, 210, 145]
  987.       Orientation       "up"
  988.       ShowName       off
  989.       Value       "0"
  990.     }
  991.     Block {
  992.       BlockType       SubSystem
  993.       Name       "Inphase eye patternnreceiver"
  994.       Ports       [1]
  995.       Position       [305, 12, 360, 48]
  996.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  997.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  998.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  999.       StartFcn       "eyesampl([],[],[],'Start')"
  1000.       StopFcn       "eyesampl([],[],[],'Stop')"
  1001.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  1002.       ShowPortLabels       off
  1003.       TreatAsAtomicUnit       off
  1004.       MaskType       "Eye-diagram/scatter plot"
  1005.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  1006. "ter plot."
  1007.       MaskHelp       "This plot opens one, or two plots by as"
  1008. "signing the line type parameters. The scatter plot point is selected by the d"
  1009. "ecision point in the first parameter entry. A decision line is drawn in the e"
  1010. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  1011.       MaskPromptString       "[Symbol interval, plot offset, decision"
  1012. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  1013. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  1014. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  1015.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1016.       MaskTunableValueString  "on,on,on,on,on,on"
  1017.       MaskCallbackString      "|||||"
  1018.       MaskEnableString       "on,on,on,on,on,on"
  1019.       MaskVisibilityString    "on,on,on,on,on,on"
  1020.       MaskToolTipString       "on,on,on,on,on,on"
  1021.       MaskVarAliasString      ",,,,,"
  1022.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  1023. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  1024.       MaskDisplay       "plot(0,0,100,100,x,y);"
  1025.       MaskIconFrame       on
  1026.       MaskIconOpaque       on
  1027.       MaskIconRotate       "none"
  1028.       MaskIconUnits       "autoscale"
  1029.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  1030. "/anzahl"
  1031.       System {
  1032. Name "Inphase eye patternnreceiver"
  1033. Location [121, 409, 416, 595]
  1034. Open off
  1035. ModelBrowserVisibility off
  1036. ModelBrowserWidth 200
  1037. ScreenColor "white"
  1038. PaperOrientation "landscape"
  1039. PaperPositionMode "auto"
  1040. PaperType "usletter"
  1041. PaperUnits "inches"
  1042. ZoomFactor "100"
  1043. Block {
  1044.   BlockType   Inport
  1045.   Name   "in_1"
  1046.   Position   [75, 80, 95, 100]
  1047. }
  1048. Block {
  1049.   BlockType   "S-Function"
  1050.   Name   "Plot1"
  1051.   Ports   [1]
  1052.   Position   [130, 70, 200, 110]
  1053.   FunctionName   "eyesampl"
  1054.   Parameters   "time_range, boundary, kept_length, "
  1055. "eye_line, scatter_line, two_d_line"
  1056. }
  1057. Line {
  1058.   SrcBlock   "in_1"
  1059.   SrcPort   1
  1060.   DstBlock   "Plot1"
  1061.   DstPort   1
  1062. }
  1063.       }
  1064.     }
  1065.     Block {
  1066.       BlockType       Mux
  1067.       Name       "Mux"
  1068.       Ports       [2, 1]
  1069.       Position       [230, 21, 265, 54]
  1070.       Inputs       "2"
  1071.     }
  1072.     Block {
  1073.       BlockType       Mux
  1074.       Name       "Mux1"
  1075.       Ports       [2, 1]
  1076.       Position       [230, 76, 265, 109]
  1077.       Inputs       "2"
  1078.     }
  1079.     Block {
  1080.       BlockType       Mux
  1081.       Name       "Mux2"
  1082.       Ports       [2, 1]
  1083.       Position       [230, 146, 265, 179]
  1084.       Inputs       "2"
  1085.     }
  1086.     Block {
  1087.       BlockType       Mux
  1088.       Name       "Mux3"
  1089.       Ports       [2, 1]
  1090.       Position       [230, 211, 265, 244]
  1091.       Inputs       "2"
  1092.     }
  1093.     Block {
  1094.       BlockType       SubSystem
  1095.       Name       "Quadrature eye patternnreceiver"
  1096.       Ports       [1]
  1097.       Position       [305, 77, 360, 113]
  1098.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  1099.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  1100.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  1101.       StartFcn       "eyesampl([],[],[],'Start')"
  1102.       StopFcn       "eyesampl([],[],[],'Stop')"
  1103.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  1104.       ShowPortLabels       off
  1105.       TreatAsAtomicUnit       off
  1106.       MaskType       "Eye-diagram/scatter plot"
  1107.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  1108. "ter plot."
  1109.       MaskHelp       "This plot opens one, or two plots by as"
  1110. "signing the line type parameters. The scatter plot point is selected by the d"
  1111. "ecision point in the first parameter entry. A decision line is drawn in the e"
  1112. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  1113.       MaskPromptString       "[Symbol interval, plot offset, decision"
  1114. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  1115. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  1116. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  1117.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1118.       MaskTunableValueString  "on,on,on,on,on,on"
  1119.       MaskCallbackString      "|||||"
  1120.       MaskEnableString       "on,on,on,on,on,on"
  1121.       MaskVisibilityString    "on,on,on,on,on,on"
  1122.       MaskToolTipString       "on,on,on,on,on,on"
  1123.       MaskVarAliasString      ",,,,,"
  1124.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  1125. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  1126.       MaskDisplay       "plot(0,0,100,100,x,y);"
  1127.       MaskIconFrame       on
  1128.       MaskIconOpaque       on
  1129.       MaskIconRotate       "none"
  1130.       MaskIconUnits       "autoscale"
  1131.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  1132. "/anzahl"
  1133.       System {
  1134. Name "Quadrature eye patternnreceiver"
  1135. Location [121, 409, 416, 595]
  1136. Open off
  1137. ModelBrowserVisibility off
  1138. ModelBrowserWidth 200
  1139. ScreenColor "white"
  1140. PaperOrientation "landscape"
  1141. PaperPositionMode "auto"
  1142. PaperType "usletter"
  1143. PaperUnits "inches"
  1144. ZoomFactor "100"
  1145. Block {
  1146.   BlockType   Inport
  1147.   Name   "in_1"
  1148.   Position   [75, 80, 95, 100]
  1149. }
  1150. Block {
  1151.   BlockType   "S-Function"
  1152.   Name   "Plot1"
  1153.   Ports   [1]
  1154.   Position   [130, 70, 200, 110]
  1155.   FunctionName   "eyesampl"
  1156.   Parameters   "time_range, boundary, kept_length, "
  1157. "eye_line, scatter_line, two_d_line"
  1158. }
  1159. Line {
  1160.   SrcBlock   "in_1"
  1161.   SrcPort   1
  1162.   DstBlock   "Plot1"
  1163.   DstPort   1
  1164. }
  1165.       }
  1166.     }
  1167.     Block {
  1168.       BlockType       SubSystem
  1169.       Name       "Scatter plotnreceiver"
  1170.       Ports       [1]
  1171.       Position       [305, 213, 360, 247]
  1172.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  1173.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  1174.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  1175.       StartFcn       "eyesampl([],[],[],'Start')"
  1176.       StopFcn       "eyesampl([],[],[],'Stop')"
  1177.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  1178.       ShowPortLabels       off
  1179.       TreatAsAtomicUnit       off
  1180.       MaskType       "Eye-diagram/scatter plot"
  1181.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  1182. "ter plot."
  1183.       MaskHelp       "This plot opens one, or two plots by as"
  1184. "signing the line type parameters. The scatter plot point is selected by the d"
  1185. "ecision point in the first parameter entry. A decision line is drawn in the e"
  1186. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  1187.       MaskPromptString       "[Symbol interval, plot offset, decision"
  1188. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  1189. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  1190. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  1191.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1192.       MaskTunableValueString  "on,on,on,on,on,on"
  1193.       MaskCallbackString      "|||||"
  1194.       MaskEnableString       "on,on,on,on,on,on"
  1195.       MaskVisibilityString    "on,on,on,on,on,on"
  1196.       MaskToolTipString       "on,on,on,on,on,on"
  1197.       MaskVarAliasString      ",,,,,"
  1198.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  1199. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  1200.       MaskDisplay       "plot(0,0,100,100,x,y);"
  1201.       MaskIconFrame       on
  1202.       MaskIconOpaque       on
  1203.       MaskIconRotate       "none"
  1204.       MaskIconUnits       "autoscale"
  1205.       MaskValueString       "[1 0 .5]|[-1.5 1.5]|0|0|'b.'|[.5 offset"
  1206. "]"
  1207.       System {
  1208. Name "Scatter plotnreceiver"
  1209. Location [165, 242, 460, 428]
  1210. Open off
  1211. ModelBrowserVisibility off
  1212. ModelBrowserWidth 200
  1213. ScreenColor "white"
  1214. PaperOrientation "landscape"
  1215. PaperPositionMode "auto"
  1216. PaperType "usletter"
  1217. PaperUnits "inches"
  1218. ZoomFactor "100"
  1219. Block {
  1220.   BlockType   Inport
  1221.   Name   "in_1"
  1222.   Position   [75, 80, 95, 100]
  1223. }
  1224. Block {
  1225.   BlockType   "S-Function"
  1226.   Name   "Plot1"
  1227.   Ports   [1]
  1228.   Position   [130, 70, 200, 110]
  1229.   FunctionName   "eyesampl"
  1230.   Parameters   "time_range, boundary, kept_length, "
  1231. "eye_line, scatter_line, two_d_line"
  1232. }
  1233. Line {
  1234.   SrcBlock   "in_1"
  1235.   SrcPort   1
  1236.   DstBlock   "Plot1"
  1237.   DstPort   1
  1238. }
  1239.       }
  1240.     }
  1241.     Block {
  1242.       BlockType       Step
  1243.       Name       "Step input"
  1244.       Position       [30, 125, 50, 145]
  1245.       Time       "starttime"
  1246.       SampleTime       "1"
  1247.     }
  1248.     Block {
  1249.       BlockType       Switch
  1250.       Name       "Switch"
  1251.       Position       [130, 29, 155, 61]
  1252.       Threshold       "1"
  1253.     }
  1254.     Block {
  1255.       BlockType       Switch
  1256.       Name       "Switch1"
  1257.       Position       [130, 84, 155, 116]
  1258.       Threshold       "1"
  1259.     }
  1260.     Block {
  1261.       BlockType       SubSystem
  1262.       Name       "Trajectory nreceiver"
  1263.       Ports       [1]
  1264.       Position       [305, 157, 360, 193]
  1265.       CopyFcn       "eyediasi([],[],[],'CopyBlock')"
  1266.       DeleteFcn       "eyediasi([],[],[],'DeleteBlock')"
  1267.       LoadFcn       "eyediasi([],[],[],'LoadBlock')"
  1268.       StartFcn       "eyediasi([],[],[],'Start')"
  1269.       StopFcn       "eyediasi([],[],[],'Stop')"
  1270.       NameChangeFcn       "eyediasi([],[],[],'NameChange')"
  1271.       ShowPortLabels       off
  1272.       TreatAsAtomicUnit       off
  1273.       MaskType       "Eye-diagram/scatter plot"
  1274.       MaskDescription       "Produce eye-pattern diagram/scatternpl"
  1275. "ot/x-y plot with the rising edge of the second input as the decision line."
  1276.       MaskHelp       "This plot opens one, two, or three plot"
  1277. "s by assigning the line type parameters. The scatter plot point is selected b"
  1278. "y the rising edge of a trigger signal. A decision line is drawn at the rising"
  1279. " edge of the trigger signal."
  1280.       MaskPromptString       "Eye-pattern plot time frame:|Lower and "
  1281. "upper bound of in-coming signal (1x2 vector):|Number of saved traces:|Line-ty"
  1282. "pe for eye-pattern diagram (0 for no plot):|Line-type for scatter plot (0 for"
  1283. " no plot):|Line-type for x-y plot (0 for no plot):"
  1284.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1285.       MaskTunableValueString  "on,on,on,on,on,on"
  1286.       MaskCallbackString      "|||||"
  1287.       MaskEnableString       "on,on,on,on,on,on"
  1288.       MaskVisibilityString    "on,on,on,on,on,on"
  1289.       MaskToolTipString       "on,on,on,on,on,on"
  1290.       MaskVarAliasString      ",,,,,"
  1291.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  1292. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);[v,w]=trigicon"
  1293. "(0,25,get_param(gcb,'orientation'),2);"
  1294.       MaskDisplay       "plot(0,0,100,100,x,y,v,w);"
  1295.       MaskIconFrame       on
  1296.       MaskIconOpaque       on
  1297.       MaskIconRotate       "none"
  1298.       MaskIconUnits       "autoscale"
  1299.       MaskValueString       "[2 0 1]|[-1.5 1.5]|0|0|0|'g-'"
  1300.       System {
  1301. Name "Trajectory nreceiver"
  1302. Location [165, 242, 460, 428]
  1303. Open off
  1304. ModelBrowserVisibility off
  1305. ModelBrowserWidth 200
  1306. ScreenColor "white"
  1307. PaperOrientation "landscape"
  1308. PaperPositionMode "auto"
  1309. PaperType "usletter"
  1310. PaperUnits "inches"
  1311. ZoomFactor "100"
  1312. Block {
  1313.   BlockType   Inport
  1314.   Name   "in_1"
  1315.   Position   [15, 55, 35, 75]
  1316. }
  1317. Block {
  1318.   BlockType   Constant
  1319.   Name   "Constant"
  1320.   Position   [15, 110, 45, 140]
  1321.   Value   "0"
  1322. }
  1323. Block {
  1324.   BlockType   Mux
  1325.   Name   "Mux"
  1326.   Ports   [2, 1]
  1327.   Position   [65, 70, 100, 105]
  1328.   Inputs   "2"
  1329. }
  1330. Block {
  1331.   BlockType   "S-Function"
  1332.   Name   "Plot1"
  1333.   Ports   [1]
  1334.   Position   [130, 70, 200, 110]
  1335.   FunctionName   "eyediasi"
  1336.   Parameters   "time_range, boundary, kept_length, "
  1337. "eye_line, scatter_line, two_d_line"
  1338. }
  1339. Line {
  1340.   SrcBlock   "in_1"
  1341.   SrcPort   1
  1342.   Points   [5, 0; 0, 15]
  1343.   DstBlock   "Mux"
  1344.   DstPort   1
  1345. }
  1346. Line {
  1347.   SrcBlock   "Constant"
  1348.   SrcPort   1
  1349.   DstBlock   "Mux"
  1350.   DstPort   2
  1351. }
  1352. Line {
  1353.   SrcBlock   "Mux"
  1354.   SrcPort   1
  1355.   DstBlock   "Plot1"
  1356.   DstPort   1
  1357. }
  1358.       }
  1359.     }
  1360.     Line {
  1361.       SrcBlock       "Switch"
  1362.       SrcPort       1
  1363.       Points       [10, 0]
  1364.       Branch {
  1365. DstBlock "Mux"
  1366. DstPort 2
  1367.       }
  1368.       Branch {
  1369. Points [0, 110]
  1370. Branch {
  1371.   Points   [0, 65]
  1372.   DstBlock   "Mux3"
  1373.   DstPort   1
  1374. }
  1375. Branch {
  1376.   DstBlock   "Mux2"
  1377.   DstPort   1
  1378. }
  1379.       }
  1380.     }
  1381.     Line {
  1382.       SrcBlock       "Switch1"
  1383.       SrcPort       1
  1384.       Points       [20, 0]
  1385.       Branch {
  1386. DstBlock "Mux1"
  1387. DstPort 2
  1388.       }
  1389.       Branch {
  1390. Points [0, 70]
  1391. Branch {
  1392.   Points   [0, 65]
  1393.   DstBlock   "Mux3"
  1394.   DstPort   2
  1395. }
  1396. Branch {
  1397.   DstBlock   "Mux2"
  1398.   DstPort   2
  1399. }
  1400.       }
  1401.     }
  1402.     Line {
  1403.       SrcBlock       "Constant0"
  1404.       SrcPort       1
  1405.       Points       [0, -35]
  1406.       Branch {
  1407. DstBlock "Mux1"
  1408. DstPort 1
  1409.       }
  1410.       Branch {
  1411. Points [0, -55]
  1412. DstBlock "Mux"
  1413. DstPort 1
  1414.       }
  1415.     }
  1416.     Line {
  1417.       SrcBlock       "Quadratur"
  1418.       SrcPort       1
  1419.       DstBlock       "Switch1"
  1420.       DstPort       1
  1421.     }
  1422.     Line {
  1423.       SrcBlock       "Inphase"
  1424.       SrcPort       1
  1425.       DstBlock       "Switch"
  1426.       DstPort       1
  1427.     }
  1428.     Line {
  1429.       SrcBlock       "Step input"
  1430.       SrcPort       1
  1431.       Points       [20, 0; 0, -35]
  1432.       Branch {
  1433. Points [0, -55]
  1434. DstBlock "Switch"
  1435. DstPort 2
  1436.       }
  1437.       Branch {
  1438. DstBlock "Switch1"
  1439. DstPort 2
  1440.       }
  1441.     }
  1442.     Line {
  1443.       SrcBlock       "Constant"
  1444.       SrcPort       1
  1445.       Points       [0, -10]
  1446.       Branch {
  1447. Points [0, -55]
  1448. DstBlock "Switch"
  1449. DstPort 3
  1450.       }
  1451.       Branch {
  1452. DstBlock "Switch1"
  1453. DstPort 3
  1454.       }
  1455.     }
  1456.     Line {
  1457.       SrcBlock       "Mux1"
  1458.       SrcPort       1
  1459.       DstBlock       "Quadrature eye patternnreceiver"
  1460.       DstPort       1
  1461.     }
  1462.     Line {
  1463.       SrcBlock       "Mux"
  1464.       SrcPort       1
  1465.       Points       [20, 0]
  1466.       DstBlock       "Inphase eye patternnreceiver"
  1467.       DstPort       1
  1468.     }
  1469.     Line {
  1470.       SrcBlock       "Mux3"
  1471.       SrcPort       1
  1472.       DstBlock       "Scatter plotnreceiver"
  1473.       DstPort       1
  1474.     }
  1475.     Line {
  1476.       SrcBlock       "Mux2"
  1477.       SrcPort       1
  1478.       Points       [20, 0]
  1479.       DstBlock       "Trajectory nreceiver"
  1480.       DstPort       1
  1481.     }
  1482.   }
  1483. }
  1484. Block {
  1485.   BlockType   Scope
  1486.   Name   "s_rc(t)"
  1487.   Ports   [1]
  1488.   Position   [615, 20, 645, 50]
  1489.   Orientation   "up"
  1490.   NamePlacement   "alternate"
  1491.   Location   [0, 540, 640, 640]
  1492.   Open   off
  1493.   NumInputPorts   "1"
  1494.   List {
  1495.     ListType     AxesTitles
  1496.     axes1     "%<SignalLabel>"
  1497.   }
  1498.   TimeRange   "25.000000"
  1499.   YMin   "-1.500000"
  1500.   YMax   "1.500000"
  1501.   DataFormat   "Array"
  1502. }
  1503. Block {
  1504.   BlockType   Scope
  1505.   Name   "s_rs(t)"
  1506.   Ports   [1]
  1507.   Position   [615, 155, 645, 185]
  1508.   Orientation   "up"
  1509.   NamePlacement   "alternate"
  1510.   Location   [640, 540, 1280, 640]
  1511.   Open   off
  1512.   NumInputPorts   "1"
  1513.   List {
  1514.     ListType     AxesTitles
  1515.     axes1     "%<SignalLabel>"
  1516.   }
  1517.   TimeRange   "25.000000"
  1518.   YMin   "-1.500000"
  1519.   YMax   "1.500000"
  1520.   DataFormat   "Array"
  1521. }
  1522. Block {
  1523.   BlockType   SubSystem
  1524.   Name   "thresholdndetector"
  1525.   Ports   [1, 1]
  1526.   Position   [725, 77, 755, 103]
  1527.   ShowPortLabels   off
  1528.   TreatAsAtomicUnit   off
  1529.   MaskType   "Sign"
  1530.   MaskDescription   "y = sign(x)"
  1531.   MaskHelp   "Sign Function:\n\t\t\ty = 1 if x > 0\n"
  1532. "\t\t\ty = 0 if x = 0\n\t\t\ty = -1 if x < 0"
  1533.   MaskDisplay   "plot(-50,-50,50,50,[-50,50],[0,0],[0,0],[-5"
  1534. "0,50],[-40,0],[-30,-30],[0,40],[30,30])"
  1535.   MaskIconFrame   on
  1536.   MaskIconOpaque   on
  1537.   MaskIconRotate   "none"
  1538.   MaskIconUnits   "autoscale"
  1539.   System {
  1540.     Name     "thresholdndetector"
  1541.     Location     [159, 417, 467, 586]
  1542.     Open     off
  1543.     ModelBrowserVisibility  off
  1544.     ModelBrowserWidth     200
  1545.     ScreenColor     "white"
  1546.     PaperOrientation     "landscape"
  1547.     PaperPositionMode     "auto"
  1548.     PaperType     "usletter"
  1549.     PaperUnits     "inches"
  1550.     ZoomFactor     "100"
  1551.     Block {
  1552.       BlockType       Inport
  1553.       Name       "in_1"
  1554.       Position       [35, 30, 55, 50]
  1555.     }
  1556.     Block {
  1557.       BlockType       Constant
  1558.       Name       "Constant"
  1559.       Position       [65, 105, 85, 125]
  1560.       Value       "0"
  1561.     }
  1562.     Block {
  1563.       BlockType       RelationalOperator
  1564.       Name       "RelationalnOperator"
  1565.       Position       [140, 32, 170, 63]
  1566.       Operator       ">"
  1567.     }
  1568.     Block {
  1569.       BlockType       RelationalOperator
  1570.       Name       "RelationalnOperator1"
  1571.       Position       [140, 92, 170, 123]
  1572.       Operator       "<"
  1573.     }
  1574.     Block {
  1575.       BlockType       Sum
  1576.       Name       "Sum"
  1577.       Ports       [2, 1]
  1578.       Position       [215, 64, 235, 91]
  1579.       Inputs       "+-"
  1580.     }
  1581.     Block {
  1582.       BlockType       Outport
  1583.       Name       "out_1"
  1584.       Position       [265, 70, 285, 90]
  1585.     }
  1586.     Line {
  1587.       SrcBlock       "in_1"
  1588.       SrcPort       1
  1589.       Points       [35, 0]
  1590.       Branch {
  1591. DstBlock "RelationalnOperator"
  1592. DstPort 1
  1593.       }
  1594.       Branch {
  1595. Points [0, 60]
  1596. DstBlock "RelationalnOperator1"
  1597. DstPort 1
  1598.       }
  1599.     }
  1600.     Line {
  1601.       SrcBlock       "Constant"
  1602.       SrcPort       1
  1603.       Points       [20, 0]
  1604.       Branch {
  1605. DstBlock "RelationalnOperator1"
  1606. DstPort 2
  1607.       }
  1608.       Branch {
  1609. Points [0, -60]
  1610. DstBlock "RelationalnOperator"
  1611. DstPort 2
  1612.       }
  1613.     }
  1614.     Line {
  1615.       SrcBlock       "RelationalnOperator1"
  1616.       SrcPort       1
  1617.       Points       [10, 0; 0, -25]
  1618.       DstBlock       "Sum"
  1619.       DstPort       2
  1620.     }
  1621.     Line {
  1622.       SrcBlock       "RelationalnOperator"
  1623.       SrcPort       1
  1624.       Points       [10, 0; 0, 20]
  1625.       DstBlock       "Sum"
  1626.       DstPort       1
  1627.     }
  1628.     Line {
  1629.       SrcBlock       "Sum"
  1630.       SrcPort       1
  1631.       DstBlock       "out_1"
  1632.       DstPort       1
  1633.     }
  1634.   }
  1635. }
  1636. Block {
  1637.   BlockType   SubSystem
  1638.   Name   "thresholdndetector_"
  1639.   Ports   [1, 1]
  1640.   Position   [725, 212, 755, 238]
  1641.   ShowPortLabels   off
  1642.   TreatAsAtomicUnit   off
  1643.   MaskType   "Sign"
  1644.   MaskDescription   "y = sign(x)"
  1645.   MaskHelp   "Sign Function:\n\t\t\ty = 1 if x > 0\n"
  1646. "\t\t\ty = 0 if x = 0\n\t\t\ty = -1 if x < 0"
  1647.   MaskDisplay   "plot(-50,-50,50,50,[-50,50],[0,0],[0,0],[-5"
  1648. "0,50],[-40,0],[-30,-30],[0,40],[30,30])"
  1649.   MaskIconFrame   on
  1650.   MaskIconOpaque   on
  1651.   MaskIconRotate   "none"
  1652.   MaskIconUnits   "autoscale"
  1653.   System {
  1654.     Name     "thresholdndetector_"
  1655.     Location     [159, 417, 467, 586]
  1656.     Open     off
  1657.     ModelBrowserVisibility  off
  1658.     ModelBrowserWidth     200
  1659.     ScreenColor     "white"
  1660.     PaperOrientation     "landscape"
  1661.     PaperPositionMode     "auto"
  1662.     PaperType     "usletter"
  1663.     PaperUnits     "inches"
  1664.     ZoomFactor     "100"
  1665.     Block {
  1666.       BlockType       Inport
  1667.       Name       "in_1"
  1668.       Position       [35, 30, 55, 50]
  1669.     }
  1670.     Block {
  1671.       BlockType       Constant
  1672.       Name       "Constant"
  1673.       Position       [65, 105, 85, 125]
  1674.       Value       "0"
  1675.     }
  1676.     Block {
  1677.       BlockType       RelationalOperator
  1678.       Name       "RelationalnOperator"
  1679.       Position       [140, 32, 170, 63]
  1680.       Operator       ">"
  1681.     }
  1682.     Block {
  1683.       BlockType       RelationalOperator
  1684.       Name       "RelationalnOperator1"
  1685.       Position       [140, 92, 170, 123]
  1686.       Operator       "<"
  1687.     }
  1688.     Block {
  1689.       BlockType       Sum
  1690.       Name       "Sum"
  1691.       Ports       [2, 1]
  1692.       Position       [215, 64, 235, 91]
  1693.       Inputs       "+-"
  1694.     }
  1695.     Block {
  1696.       BlockType       Outport
  1697.       Name       "out_1"
  1698.       Position       [265, 70, 285, 90]
  1699.     }
  1700.     Line {
  1701.       SrcBlock       "Sum"
  1702.       SrcPort       1
  1703.       DstBlock       "out_1"
  1704.       DstPort       1
  1705.     }
  1706.     Line {
  1707.       SrcBlock       "RelationalnOperator"
  1708.       SrcPort       1
  1709.       Points       [10, 0; 0, 20]
  1710.       DstBlock       "Sum"
  1711.       DstPort       1
  1712.     }
  1713.     Line {
  1714.       SrcBlock       "RelationalnOperator1"
  1715.       SrcPort       1
  1716.       Points       [10, 0; 0, -25]
  1717.       DstBlock       "Sum"
  1718.       DstPort       2
  1719.     }
  1720.     Line {
  1721.       SrcBlock       "Constant"
  1722.       SrcPort       1
  1723.       Points       [20, 0]
  1724.       Branch {
  1725. DstBlock "RelationalnOperator1"
  1726. DstPort 2
  1727.       }
  1728.       Branch {
  1729. Points [0, -60]
  1730. DstBlock "RelationalnOperator"
  1731. DstPort 2
  1732.       }
  1733.     }
  1734.     Line {
  1735.       SrcBlock       "in_1"
  1736.       SrcPort       1
  1737.       Points       [35, 0]
  1738.       Branch {
  1739. DstBlock "RelationalnOperator"
  1740. DstPort 1
  1741.       }
  1742.       Branch {
  1743. Points [0, 60]
  1744. DstBlock "RelationalnOperator1"
  1745. DstPort 1
  1746.       }
  1747.     }
  1748.   }
  1749. }
  1750. Block {
  1751.   BlockType   Scope
  1752.   Name   "v(t)"
  1753.   Ports   [1]
  1754.   Position   [895, 70, 925, 100]
  1755.   Orientation   "up"
  1756.   Location   [320, 740, 960, 840]
  1757.   Open   off
  1758.   NumInputPorts   "1"
  1759.   List {
  1760.     ListType     AxesTitles
  1761.     axes1     "%<SignalLabel>"
  1762.   }
  1763.   TimeRange   "25.000000"
  1764.   YMin   "-3.000000"
  1765.   YMax   "3.000000"
  1766.   DataFormat   "Array"
  1767. }
  1768. Block {
  1769.   BlockType   Scope
  1770.   Name   "v_c(t)"
  1771.   Ports   [1]
  1772.   Position   [820, 75, 850, 105]
  1773.   Location   [0, 640, 640, 740]
  1774.   Open   off
  1775.   NumInputPorts   "1"
  1776.   List {
  1777.     ListType     AxesTitles
  1778.     axes1     "%<SignalLabel>"
  1779.   }
  1780.   TimeRange   "25.000000"
  1781.   YMin   "-1.500000"
  1782.   YMax   "1.500000"
  1783.   DataFormat   "Array"
  1784. }
  1785. Block {
  1786.   BlockType   Scope
  1787.   Name   "v_s(t)"
  1788.   Ports   [1]
  1789.   Position   [820, 220, 850, 250]
  1790.   Location   [640, 640, 1280, 740]
  1791.   Open   off
  1792.   NumInputPorts   "1"
  1793.   List {
  1794.     ListType     AxesTitles
  1795.     axes1     "%<SignalLabel>"
  1796.   }
  1797.   TimeRange   "25.000000"
  1798.   YMin   "-1.500000"
  1799.   YMax   "1.500000"
  1800.   DataFormat   "Array"
  1801. }
  1802. Block {
  1803.   BlockType   Scope
  1804.   Name   "x_c(t)"
  1805.   Ports   [1]
  1806.   Position   [415, 20, 445, 50]
  1807.   Orientation   "up"
  1808.   Location   [0, 440, 640, 540]
  1809.   Open   off
  1810.   NumInputPorts   "1"
  1811.   List {
  1812.     ListType     AxesTitles
  1813.     axes1     "%<SignalLabel>"
  1814.   }
  1815.   TimeRange   "25.000000"
  1816.   YMin   "-1.500000"
  1817.   YMax   "1.500000"
  1818.   DataFormat   "Array"
  1819. }
  1820. Block {
  1821.   BlockType   Scope
  1822.   Name   "x_s(t)"
  1823.   Ports   [1]
  1824.   Position   [415, 155, 445, 185]
  1825.   Orientation   "up"
  1826.   Location   [640, 440, 1280, 540]
  1827.   Open   off
  1828.   NumInputPorts   "1"
  1829.   List {
  1830.     ListType     AxesTitles
  1831.     axes1     "%<SignalLabel>"
  1832.   }
  1833.   TimeRange   "25.000000"
  1834.   YMin   "-1.500000"
  1835.   YMax   "1.500000"
  1836.   DataFormat   "Array"
  1837. }
  1838. Block {
  1839.   BlockType   Outport
  1840.   Name   "detectednbits"
  1841.   Position   [950, 140, 970, 160]
  1842. }
  1843. Line {
  1844.   SrcBlock   "Clock"
  1845.   SrcPort   1
  1846.   Points   [0, 0]
  1847.   Branch {
  1848.     DstBlock     "Fcn"
  1849.     DstPort     1
  1850.   }
  1851.   Branch {
  1852.     DstBlock     "Fcn1"
  1853.     DstPort     1
  1854.   }
  1855. }
  1856. Line {
  1857.   SrcBlock   "Product1"
  1858.   SrcPort   1
  1859.   Points   [100, 0]
  1860.   Branch {
  1861.     DstBlock     "x_s(t)"
  1862.     DstPort     1
  1863.   }
  1864.   Branch {
  1865.     DstBlock     "ButterworthLP filter1"
  1866.     DstPort     1
  1867.   }
  1868. }
  1869. Line {
  1870.   SrcBlock   "noisynOQPSK-nSignal"
  1871.   SrcPort   1
  1872.   Points   [25, 0]
  1873.   Branch {
  1874.     DstBlock     "r(t)"
  1875.     DstPort     1
  1876.   }
  1877.   Branch {
  1878.     Points     [45, 0]
  1879.     Branch {
  1880.       Points       [0, -75]
  1881.       DstBlock       "Product"
  1882.       DstPort       1
  1883.     }
  1884.     Branch {
  1885.       Points       [0, 75]
  1886.       DstBlock       "Product1"
  1887.       DstPort       2
  1888.     }
  1889.   }
  1890. }
  1891. Line {
  1892.   SrcBlock   "Fcn1"
  1893.   SrcPort   1
  1894.   Points   [10, 0]
  1895.   DstBlock   "Product1"
  1896.   DstPort   1
  1897. }
  1898. Line {
  1899.   SrcBlock   "Fcn"
  1900.   SrcPort   1
  1901.   Points   [10, 0; 0, -35]
  1902.   DstBlock   "Product"
  1903.   DstPort   2
  1904. }
  1905. Line {
  1906.   SrcBlock   "QPSK demap"
  1907.   SrcPort   1
  1908.   Points   [25, 0]
  1909.   Branch {
  1910.     DstBlock     "detectednbits"
  1911.     DstPort     1
  1912.   }
  1913.   Branch {
  1914.     DstBlock     "v(t)"
  1915.     DstPort     1
  1916.   }
  1917. }
  1918. Line {
  1919.   SrcBlock   "ButterworthLP filter1"
  1920.   SrcPort   1
  1921.   Points   [5, 0]
  1922.   Branch {
  1923.     Points     [65, 0]
  1924.     DstBlock     "s_rs(t)"
  1925.     DstPort     1
  1926.   }
  1927.   Branch {
  1928.     Points     [130, 0]
  1929.     Branch {
  1930.       Points       [0, -180]
  1931.       DstBlock       "receiver diagrams"
  1932.       DstPort       2
  1933.     }
  1934.     Branch {
  1935.       DstBlock       "thresholdndetector_"
  1936.       DstPort       1
  1937.     }
  1938.   }
  1939. }
  1940. Line {
  1941.   SrcBlock   "Product"
  1942.   SrcPort   1
  1943.   DstBlock   "TransportnDelay"
  1944.   DstPort   1
  1945. }
  1946. Line {
  1947.   SrcBlock   "TransportnDelay"
  1948.   SrcPort   1
  1949.   Points   [20, 0]
  1950.   Branch {
  1951.     DstBlock     "x_c(t)"
  1952.     DstPort     1
  1953.   }
  1954.   Branch {
  1955.     DstBlock     "ButterworthLP filter"
  1956.     DstPort     1
  1957.   }
  1958. }
  1959. Line {
  1960.   SrcBlock   "ButterworthLP filter"
  1961.   SrcPort   1
  1962.   Points   [0, 0]
  1963.   Branch {
  1964.     Points     [65, 0]
  1965.     DstBlock     "s_rc(t)"
  1966.     DstPort     1
  1967.   }
  1968.   Branch {
  1969.     Points     [105, 0]
  1970.     Branch {
  1971.       Points       [0, -65]
  1972.       DstBlock       "receiver diagrams"
  1973.       DstPort       1
  1974.     }
  1975.     Branch {
  1976.       DstBlock       "thresholdndetector"
  1977.       DstPort       1
  1978.     }
  1979.   }
  1980. }
  1981. Line {
  1982.   SrcBlock   "thresholdndetector"
  1983.   SrcPort   1
  1984.   Points   [20, 0]
  1985.   Branch {
  1986.     Points     [0, 45]
  1987.     DstBlock     "QPSK demap"
  1988.     DstPort     1
  1989.   }
  1990.   Branch {
  1991.     DstBlock     "v_c(t)"
  1992.     DstPort     1
  1993.   }
  1994. }
  1995. Line {
  1996.   SrcBlock   "thresholdndetector_"
  1997.   SrcPort   1
  1998.   Points   [20, 0]
  1999.   Branch {
  2000.     Points     [0, -65]
  2001.     DstBlock     "QPSK demap"
  2002.     DstPort     2
  2003.   }
  2004.   Branch {
  2005.     Points     [0, 10]
  2006.     DstBlock     "v_s(t)"
  2007.     DstPort     1
  2008.   }
  2009. }
  2010.       }
  2011.     }
  2012.     Block {
  2013.       BlockType       SubSystem
  2014.       Name       "Transmitter"
  2015.       Ports       [0, 3]
  2016.       Position       [200, 72, 275, 158]
  2017.       ShowPortLabels       off
  2018.       TreatAsAtomicUnit       off
  2019.       System {
  2020. Name "Transmitter"
  2021. Location [-9, 157, 1003, 436]
  2022. Open off
  2023. ModelBrowserVisibility off
  2024. ModelBrowserWidth 200
  2025. ScreenColor "white"
  2026. PaperOrientation "landscape"
  2027. PaperPositionMode "auto"
  2028. PaperType "usletter"
  2029. PaperUnits "inches"
  2030. ZoomFactor "100"
  2031. Block {
  2032.   BlockType   Clock
  2033.   Name   "Clock"
  2034.   Position   [555, 155, 575, 175]
  2035.   Decimation   "10"
  2036. }
  2037. Block {
  2038.   BlockType   Fcn
  2039.   Name   "Fcn1"
  2040.   Position   [615, 130, 710, 160]
  2041.   ShowName   off
  2042.   Expr   "cos(4*pi*u)"
  2043. }
  2044. Block {
  2045.   BlockType   Fcn
  2046.   Name   "Fcn2"
  2047.   Position   [615, 175, 710, 205]
  2048.   ShowName   off
  2049.   Expr   "sin(4*pi*u)"
  2050. }
  2051. Block {
  2052.   BlockType   Product
  2053.   Name   "Product"
  2054.   Ports   [2, 1]
  2055.   Position   [770, 83, 800, 107]
  2056.   ShowName   off
  2057. }
  2058. Block {
  2059.   BlockType   Product
  2060.   Name   "Product1"
  2061.   Ports   [2, 1]
  2062.   Position   [770, 233, 800, 257]
  2063.   ShowName   off
  2064. }
  2065. Block {
  2066.   BlockType   SubSystem
  2067.   Name   "QPSK"
  2068.   Ports   [1, 2]
  2069.   Position   [110, 115, 185, 155]
  2070.   TreatAsAtomicUnit   off
  2071.   MaskType   "MPSK"
  2072.   MaskDescription   "QASK mapping with circle constellation. The"
  2073. " constellation is defined in NIC, RIC and PIC."
  2074.   MaskHelp   "This block maps a digital signal onto in-ph"
  2075. "ase and quadratic components, which are outputs in the first and second outpu"
  2076. "t port respectively. The circle constellation is defined in NIC, RIC, and PIC"
  2077. ". The input symbol interval can be a two-element vector with the second eleme"
  2078. "nt being offset. The default value offset is 0. Use the MODMAP function to se"
  2079. "e the constellation."
  2080.   MaskPromptString   "Number of symbols in each circle NIC:|Radii"
  2081. " in each circle RIC:|Phase shift in each circle PIC (rad):|Symbol interval an"
  2082. "d offset (sec):"
  2083.   MaskStyleString   "edit,edit,edit,edit"
  2084.   MaskTunableValueString  "on,on,on,on"
  2085.   MaskCallbackString   "|||"
  2086.   MaskEnableString   "on,on,on,on"
  2087.   MaskVisibilityString   "on,on,on,on"
  2088.   MaskToolTipString   "on,on,on,on"
  2089.   MaskVarAliasString   ",,,"
  2090.   MaskVariables   "N=@1;A=@2;P=@3;td=@4;"
  2091.   MaskInitialization   "y1=apkconst(N,A,P);y1=[y1;y1];y1=y1(:);y2=i"
  2092. "mag(y1);y1=real(y1);x=[-sum(N) 1:sum(N)-1;1:sum(N)-1 10*sum(N)]-.5;x=x(:);"
  2093.   MaskDisplay   "disp('MPSK\nmapping')"
  2094.   MaskIconFrame   on
  2095.   MaskIconOpaque   on
  2096.   MaskIconRotate   "none"
  2097.   MaskIconUnits   "autoscale"
  2098.   MaskValueString   "[4]|[sqrt(2)]|[pi/4]|1"
  2099.   System {
  2100.     Name     "QPSK"
  2101.     Location     [572, 160, 1070, 460]
  2102.     Open     off
  2103.     ModelBrowserVisibility  off
  2104.     ModelBrowserWidth     200
  2105.     ScreenColor     "white"
  2106.     PaperOrientation     "landscape"
  2107.     PaperPositionMode     "auto"
  2108.     PaperType     "usletter"
  2109.     PaperUnits     "inches"
  2110.     ZoomFactor     "100"
  2111.     Block {
  2112.       BlockType       Inport
  2113.       Name       "in_1"
  2114.       Position       [40, 35, 60, 55]
  2115.     }
  2116.     Block {
  2117.       BlockType       ZeroOrderHold
  2118.       Name       "Zero-OrdernHold1"
  2119.       Position       [95, 29, 130, 61]
  2120.       SampleTime       "td"
  2121.     }
  2122.     Block {
  2123.       BlockType       Lookup
  2124.       Name       "imag part1"
  2125.       Position       [190, 112, 225, 138]
  2126.       InputValues       "x"
  2127.       OutputValues       "y2"
  2128.     }
  2129.     Block {
  2130.       BlockType       Lookup
  2131.       Name       "real part"
  2132.       Position       [195, 32, 230, 58]
  2133.       InputValues       "x"
  2134.       OutputValues       "y1"
  2135.     }
  2136.     Block {
  2137.       BlockType       Outport
  2138.       Name       "Real"
  2139.       Position       [290, 35, 310, 55]
  2140.     }
  2141.     Block {
  2142.       BlockType       Outport
  2143.       Name       "Imag"
  2144.       Position       [290, 115, 310, 135]
  2145.       Port       "2"
  2146.     }
  2147.     Line {
  2148.       SrcBlock       "in_1"
  2149.       SrcPort       1
  2150.       DstBlock       "Zero-OrdernHold1"
  2151.       DstPort       1
  2152.     }
  2153.     Line {
  2154.       SrcBlock       "Zero-OrdernHold1"
  2155.       SrcPort       1
  2156.       Points       [0, 0; 25, 0]
  2157.       Branch {
  2158. DstBlock "real part"
  2159. DstPort 1
  2160.       }
  2161.       Branch {
  2162. Points [0, 80]
  2163. DstBlock "imag part1"
  2164. DstPort 1
  2165.       }
  2166.     }
  2167.     Line {
  2168.       SrcBlock       "real part"
  2169.       SrcPort       1
  2170.       DstBlock       "Real"
  2171.       DstPort       1
  2172.     }
  2173.     Line {
  2174.       SrcBlock       "imag part1"
  2175.       SrcPort       1
  2176.       DstBlock       "Imag"
  2177.       DstPort       1
  2178.     }
  2179.   }
  2180. }
  2181. Block {
  2182.   BlockType   SubSystem
  2183.   Name   "Source"
  2184.   Ports   [0, 2]
  2185.   Position   [25, 96, 55, 149]
  2186.   ShowPortLabels   off
  2187.   TreatAsAtomicUnit   off
  2188.   System {
  2189.     Name     "Source"
  2190.     Location     [13, 444, 550, 683]
  2191.     Open     off
  2192.     ModelBrowserVisibility  off
  2193.     ModelBrowserWidth     200
  2194.     ScreenColor     "white"
  2195.     PaperOrientation     "landscape"
  2196.     PaperPositionMode     "auto"
  2197.     PaperType     "A4"
  2198.     PaperUnits     "centimeters"
  2199.     ZoomFactor     "100"
  2200.     Block {
  2201.       BlockType       SubSystem
  2202.       Name       "Bits"
  2203.       Ports       [0, 1]
  2204.       Position       [25, 48, 85, 92]
  2205.       ShowPortLabels       off
  2206.       TreatAsAtomicUnit       off
  2207.       MaskType       "Read from workspace"
  2208.       MaskDescription       "Read from a workspace variable atnsamp"
  2209. "ling time point."
  2210.       MaskHelp       "This block reads from a workspace varia"
  2211. "ble at a given sample time. The column number is the block output vector leng"
  2212. "th. When the simulation reaches the end of the variable (eof), the block will"
  2213. " cyclically output from the first row of the variable or output zeros based o"
  2214. "n the repeat flag entree."
  2215.       MaskPromptString       "Variable (column_number=block_output_le"
  2216. "ngth):|Data output sample time (sec):|Repeat flag (1: repeat read, 0: output "
  2217. "zeros after eof).|Initial output:"
  2218.       MaskStyleString       "edit,edit,edit,edit"
  2219.       MaskTunableValueString  "on,on,on,on"
  2220.       MaskCallbackString      "|||"
  2221.       MaskEnableString       "on,on,on,on"
  2222.       MaskVisibilityString    "on,on,on,on"
  2223.       MaskToolTipString       "on,on,on,on"
  2224.       MaskVarAliasString      ",,,"
  2225.       MaskInitialization      "var=@1;td=@2;ts=td(1);if (length(td)>=2"
  2226. "),off=td(2);else off=0;end;cyc=@3;ini=@4;[x,y]=srcsicon(7);"
  2227.       MaskDisplay       "plot(0,0,100,100,x,y);disp('Rd wksp')"
  2228.       MaskIconFrame       on
  2229.       MaskIconOpaque       on
  2230.       MaskIconRotate       "none"
  2231.       MaskIconUnits       "autoscale"
  2232.       MaskValueString       "randint(2000,1,2)|.5|1|1"
  2233.       System {
  2234. Name "Bits"
  2235. Location [355, 528, 737, 675]
  2236. Open off
  2237. ModelBrowserVisibility off
  2238. ModelBrowserWidth 200
  2239. ScreenColor "white"
  2240. PaperOrientation "landscape"
  2241. PaperPositionMode "auto"
  2242. PaperType "A4"
  2243. PaperUnits "centimeters"
  2244. ZoomFactor "100"
  2245. Block {
  2246.   BlockType   "S-Function"
  2247.   Name   "Message source"
  2248.   Ports   [1, 1]
  2249.   Position   [180, 53, 255, 97]
  2250.   BackgroundColor   "yellow"
  2251.   FunctionName   "trigwksp"
  2252.   Parameters   "var,thd,cyclFlag,ini"
  2253.   MaskType   "Read from workspace"
  2254.   MaskDescription   "The raising edge of input pulse tri"
  2255. "gger the block output the next row from the workspace variable."
  2256.   MaskHelp   "This block reads the data from a wo"
  2257. "rkspace variable. The output is refreshed at the raising edge of the input pu"
  2258. "lse."
  2259.   MaskPromptString   "Read the variable:|Threshold for th"
  2260. "e input pulse:|Cyclic read variable (1) or amend zeros (0).|Output before fir"
  2261. "st trigger:"
  2262.   MaskStyleString   "edit,edit,edit,edit"
  2263.   MaskTunableValueString  "on,on,on,on"
  2264.   MaskCallbackString   "|||"
  2265.   MaskEnableString   "on,on,on,on"
  2266.   MaskVisibilityString   "on,on,on,on"
  2267.   MaskToolTipString   "on,on,on,on"
  2268.   MaskVarAliasString   ",,,"
  2269.   MaskInitialization   "var=@1;thd=@2;cyclFlag=@3;ini=@4;"
  2270.   MaskDisplay   "disp('Triggered\nread')"
  2271.   MaskIconFrame   on
  2272.   MaskIconOpaque   on
  2273.   MaskIconRotate   "none"
  2274.   MaskIconUnits   "autoscale"
  2275.   MaskValueString   "var|.1|cyc|ini"
  2276. }
  2277. Block {
  2278.   BlockType   SubSystem
  2279.   Name   "Pulses deividensame sample time1"
  2280.   Ports   [0, 1]
  2281.   Position   [50, 56, 110, 94]
  2282.   ShowPortLabels   off
  2283.   TreatAsAtomicUnit   off
  2284.   MaskType   "Pulse generator"
  2285.   MaskDescription   "Vector pulses with sample rate of e"
  2286. "ach pulse as Sample_time ./Divider. "
  2287.   MaskHelp   "This block generator a vector pulse"
  2288. "s. The output length is the same as the vector defined in "Divider". The it"
  2289. "h element of the output has the sample time Sample_time/Divider(i). All eleme"
  2290. "nts in "Divider" must be integers."
  2291.   MaskPromptString   "Sample time (scalar, sec):|Divider "
  2292. "(integer vector):|Offset (have same dimension as Divider:"
  2293.   MaskStyleString   "edit,edit,edit"
  2294.   MaskTunableValueString  "on,on,on"
  2295.   MaskCallbackString   "||"
  2296.   MaskEnableString   "on,on,on"
  2297.   MaskVisibilityString   "on,on,on"
  2298.   MaskToolTipString   "on,on,on"
  2299.   MaskVarAliasString   ",,"
  2300.   MaskInitialization   "samp_time=@1;out_divid=@2;offset=@3"
  2301. ";"
  2302.   MaskDisplay   "disp('Vector\nPulse')"
  2303.   MaskIconFrame   on
  2304.   MaskIconOpaque   on
  2305.   MaskIconRotate   "none"
  2306.   MaskIconUnits   "autoscale"
  2307.   MaskValueString   "ts|1|off"
  2308.   System {
  2309.     Name     "Pulses deividensame sample time1"
  2310.     Location     [55, 192, 283, 286]
  2311.     Open     off
  2312.     ModelBrowserVisibility  off
  2313.     ModelBrowserWidth     200
  2314.     ScreenColor     "white"
  2315.     PaperOrientation     "landscape"
  2316.     PaperPositionMode     "auto"
  2317.     PaperType     "A4"
  2318.     PaperUnits     "centimeters"
  2319.     ZoomFactor     "100"
  2320.     Block {
  2321.     BlockType     "S-Function"
  2322.     Name     "S-function1"
  2323.     Ports     [0, 1]
  2324.     Position     [40, 31, 105, 59]
  2325.     FunctionName     "homopuls"
  2326.     Parameters     "samp_time, out_divid, offset"
  2327.     }
  2328.     Block {
  2329.     BlockType     Outport
  2330.     Name     "Outport"
  2331.     Position     [160, 35, 180, 55]
  2332.     }
  2333.     Line {
  2334.     SrcBlock     "S-function1"
  2335.     SrcPort     1
  2336.     DstBlock     "Outport"
  2337.     DstPort     1
  2338.     }
  2339.   }
  2340. }
  2341. Block {
  2342.   BlockType   Outport
  2343.   Name   "out_1"
  2344.   Position   [295, 65, 315, 85]
  2345. }
  2346. Line {
  2347.   SrcBlock   "Message source"
  2348.   SrcPort   1
  2349.   DstBlock   "out_1"
  2350.   DstPort   1
  2351. }
  2352. Line {
  2353.   SrcBlock   "Pulses deividensame sample time1"
  2354.   SrcPort   1
  2355.   DstBlock   "Message source"
  2356.   DstPort   1
  2357. }
  2358.       }
  2359.     }
  2360.     Block {
  2361.       BlockType       "S-Function"
  2362.       Name       "D/A "
  2363.       Ports       [1, 1]
  2364.       Position       [370, 128, 450, 172]
  2365.       FunctionName       "simbi2de"
  2366.       Parameters       "p"
  2367.       MaskType       "Base M vector to decimal integer"
  2368.       MaskDescription       "Convert base M integer with eachnposit"
  2369. "ion in the input vector into scalar decimal output."
  2370.       MaskHelp       "This block convert the base M vector in"
  2371. "to scalar decimal integer output. Each element of the input vector is one pos"
  2372. "ition of the digit of the base M integer. The 1st element in the input vector"
  2373. " contains the 1's position. The 2nd element in the input vector contains the "
  2374. "M's position."
  2375.       MaskPromptString       "Input integer base M:"
  2376.       MaskStyleString       "edit"
  2377.       MaskTunableValueString  "on"
  2378.       MaskEnableString       "on"
  2379.       MaskVisibilityString    "on"
  2380.       MaskToolTipString       "on"
  2381.       MaskInitialization      "p=@1;"
  2382.       MaskDisplay       "disp('Vec to sca\nconverter')"
  2383.       MaskIconFrame       on
  2384.       MaskIconOpaque       on
  2385.       MaskIconRotate       "none"
  2386.       MaskIconUnits       "autoscale"
  2387.       MaskValueString       "2"
  2388.     }
  2389.     Block {
  2390.       BlockType       Terminator
  2391.       Name       "Terminator"
  2392.       Position       [480, 195, 500, 215]
  2393.     }
  2394.     Block {
  2395.       BlockType       SubSystem
  2396.       Name       "clock"
  2397.       Ports       [0, 1]
  2398.       Position       [35, 147, 70, 183]
  2399.       ShowPortLabels       off
  2400.       TreatAsAtomicUnit       off
  2401.       MaskType       "Pulse Generator"
  2402.       MaskDescription       "Pulse Generator."
  2403.       MaskHelp       "Pulse generator which ensures pulse\nt"
  2404. "ransitions are hit. Provides a vector of pulses when the height is entered as"
  2405. " a vector.\nUnmask to see how it works."
  2406.       MaskPromptString       "Pulse period (secs):|Pulse width:|Pulse"
  2407. " height:|Pulse start time:"
  2408.       MaskStyleString       "edit,edit,edit,edit"
  2409.       MaskTunableValueString  "on,on,on,on"
  2410.       MaskCallbackString      "|||"
  2411.       MaskEnableString       "on,on,on,on"
  2412.       MaskVisibilityString    "on,on,on,on"
  2413.       MaskToolTipString       "on,on,on,on"
  2414.       MaskVarAliasString      ",,,"
  2415.       MaskInitialization      "Ts=@1; du=@2; ht=@3; stt=@4; ini=ones(l"
  2416. "ength(ht),1); st1=rem(stt,Ts); st2=rem(stt+du,Ts);if(Ts<=1.2*du),ini=zeros(le"
  2417. "ngth(ht),1);end;"
  2418.       MaskDisplay       "plot(0,0,100,100,[90,75,75,60,60,35,35,"
  2419. "20,20,10],[20,20,80,80,20,20,80,80,20,20])"
  2420.       MaskIconFrame       on
  2421.       MaskIconOpaque       on
  2422.       MaskIconRotate       "none"
  2423.       MaskIconUnits       "autoscale"
  2424.       MaskValueString       ".5|.25|1|0"
  2425.       System {
  2426. Name "clock"
  2427. Location [158, 441, 759, 682]
  2428. Open off
  2429. ModelBrowserVisibility off
  2430. ModelBrowserWidth 200
  2431. ScreenColor "white"
  2432. PaperOrientation "landscape"
  2433. PaperPositionMode "auto"
  2434. PaperType "A4"
  2435. PaperUnits "centimeters"
  2436. ZoomFactor "100"
  2437. Block {
  2438.   BlockType   Clock
  2439.   Name   "Clock1"
  2440.   Position   [295, 100, 315, 120]
  2441.   ShowName   off
  2442.   Decimation   "10"
  2443. }
  2444. Block {
  2445.   BlockType   Constant
  2446.   Name   "Constant"
  2447.   Position   [25, 30, 45, 50]
  2448. }
  2449. Block {
  2450.   BlockType   Constant
  2451.   Name   "Constant1"
  2452.   Position   [295, 149, 320, 171]
  2453.   Value   "stt"
  2454. }
  2455. Block {
  2456.   BlockType   Gain
  2457.   Name   "Gain"
  2458.   Position   [510, 102, 535, 128]
  2459.   ShowName   off
  2460.   Gain   "ht"
  2461. }
  2462. Block {
  2463.   BlockType   Logic
  2464.   Name   "LogicalnOperator"
  2465.   Ports   [2, 1]
  2466.   Position   [285, 38, 315, 62]
  2467.   Operator   "XOR"
  2468. }
  2469. Block {
  2470.   BlockType   Logic
  2471.   Name   "LogicalnOperator1"
  2472.   Ports   [1, 1]
  2473.   Position   [355, 38, 385, 62]
  2474.   Operator   "NOT"
  2475.   Inputs   "1"
  2476. }
  2477. Block {
  2478.   BlockType   Product
  2479.   Name   "Product"
  2480.   Ports   [2, 1]
  2481.   Position   [455, 105, 480, 125]
  2482.   ShowName   off
  2483. }
  2484. Block {
  2485.   BlockType   RelationalOperator
  2486.   Name   "Relationalnoperator"
  2487.   Position   [370, 102, 400, 133]
  2488.   ShowName   off
  2489. }
  2490. Block {
  2491.   BlockType   Sum
  2492.   Name   "Sum"
  2493.   Ports   [2, 1]
  2494.   Position   [135, 35, 155, 55]
  2495.   ShowName   off
  2496.   Inputs   "+-"
  2497. }
  2498. Block {
  2499.   BlockType   Sum
  2500.   Name   "Sum1"
  2501.   Ports   [2, 1]
  2502.   Position   [130, 120, 150, 140]
  2503.   ShowName   off
  2504.   Inputs   "+-"
  2505. }
  2506. Block {
  2507.   BlockType   UnitDelay
  2508.   Name   "Unit Delay"
  2509.   Position   [145, 75, 195, 95]
  2510.   Orientation   "left"
  2511.   SampleTime   "[Ts,st1]"
  2512. }
  2513. Block {
  2514.   BlockType   UnitDelay
  2515.   Name   "Unit Delay1"
  2516.   Position   [140, 165, 190, 185]
  2517.   Orientation   "left"
  2518.   X0   "ini"
  2519.   SampleTime   "[Ts,st2]"
  2520. }
  2521. Block {
  2522.   BlockType   Outport
  2523.   Name   "out_1"
  2524.   Position   [560, 105, 580, 125]
  2525.   ShowName   off
  2526. }
  2527. Line {
  2528.   SrcBlock   "Sum1"
  2529.   SrcPort   1
  2530.   Points   [0, 0]
  2531.   Branch {
  2532.     Points     [90, 0; 0, -75]
  2533.     DstBlock     "LogicalnOperator"
  2534.     DstPort     2
  2535.   }
  2536.   Branch {
  2537.     Points     [55, 0; 0, 45]
  2538.     DstBlock     "Unit Delay1"
  2539.     DstPort     1
  2540.   }
  2541. }
  2542. Line {
  2543.   SrcBlock   "Sum"
  2544.   SrcPort   1
  2545.   Points   [0, 0]
  2546.   Branch {
  2547.     DstBlock     "LogicalnOperator"
  2548.     DstPort     1
  2549.   }
  2550.   Branch {
  2551.     Points     [70, 0; 0, 40]
  2552.     DstBlock     "Unit Delay"
  2553.     DstPort     1
  2554.   }
  2555. }
  2556. Line {
  2557.   SrcBlock   "Constant"
  2558.   SrcPort   1
  2559.   Points   [0, 0]
  2560.   Branch {
  2561.     Points     [20, 0; 0, 85]
  2562.     DstBlock     "Sum1"
  2563.     DstPort     1
  2564.   }
  2565.   Branch {
  2566.     DstBlock     "Sum"
  2567.     DstPort     1
  2568.   }
  2569. }
  2570. Line {
  2571.   SrcBlock   "Unit Delay1"
  2572.   SrcPort   1
  2573.   Points   [-35, 0; 0, -40]
  2574.   DstBlock   "Sum1"
  2575.   DstPort   2
  2576. }
  2577. Line {
  2578.   SrcBlock   "Unit Delay"
  2579.   SrcPort   1
  2580.   Points   [-35, 0; 0, -35]
  2581.   DstBlock   "Sum"
  2582.   DstPort   2
  2583. }
  2584. Line {
  2585.   SrcBlock   "Clock1"
  2586.   SrcPort   1
  2587.   DstBlock   "Relationalnoperator"
  2588.   DstPort   1
  2589. }
  2590. Line {
  2591.   SrcBlock   "Relationalnoperator"
  2592.   SrcPort   1
  2593.   DstBlock   "Product"
  2594.   DstPort   2
  2595. }
  2596. Line {
  2597.   SrcBlock   "Product"
  2598.   SrcPort   1
  2599.   DstBlock   "Gain"
  2600.   DstPort   1
  2601. }
  2602. Line {
  2603.   SrcBlock   "Gain"
  2604.   SrcPort   1
  2605.   DstBlock   "out_1"
  2606.   DstPort   1
  2607. }
  2608. Line {
  2609.   SrcBlock   "Constant1"
  2610.   SrcPort   1
  2611.   Points   [20, 0; 0, -35]
  2612.   DstBlock   "Relationalnoperator"
  2613.   DstPort   2
  2614. }
  2615. Line {
  2616.   SrcBlock   "LogicalnOperator"
  2617.   SrcPort   1
  2618.   DstBlock   "LogicalnOperator1"
  2619.   DstPort   1
  2620. }
  2621. Line {
  2622.   SrcBlock   "LogicalnOperator1"
  2623.   SrcPort   1
  2624.   Points   [40, 0; 0, 60]
  2625.   DstBlock   "Product"
  2626.   DstPort   1
  2627. }
  2628.       }
  2629.     }
  2630.     Block {
  2631.       BlockType       SubSystem
  2632.       Name       "delay"
  2633.       Ports       [1, 1]
  2634.       Position       [260, 48, 340, 92]
  2635.       ShowPortLabels       off
  2636.       TreatAsAtomicUnit       off
  2637.       MaskType       "Multi-step delay"
  2638.       MaskDescription       "Output is K-step delay of the input sig"
  2639. "nal."
  2640.       MaskHelp       "This block holds the input signal for K"
  2641. " steps and then outputs the signal. The delay step cannot be changed during t"
  2642. "he simulation."
  2643.       MaskPromptString       "Delay steps (integer):|Sample time (sec"
  2644. "):|Initial output:"
  2645.       MaskStyleString       "edit,edit,edit"
  2646.       MaskTunableValueString  "on,on,on"
  2647.       MaskCallbackString      "||"
  2648.       MaskEnableString       "on,on,on"
  2649.       MaskVisibilityString    "on,on,on"
  2650.       MaskToolTipString       "on,on,on"
  2651.       MaskVarAliasString      ",,"
  2652.       MaskInitialization      "n=@1;ts=@2;if length(ts)<2, ts=[ts 0];e"
  2653. "nd;ini=@3;"
  2654.       MaskDisplay       "disp('-k\nz   ')"
  2655.       MaskIconFrame       on
  2656.       MaskIconOpaque       on
  2657.       MaskIconRotate       "none"
  2658.       MaskIconUnits       "autoscale"
  2659.       MaskValueString       "2|.5|0"
  2660.       System {
  2661. Name "delay"
  2662. Location [12, 432, 357, 702]
  2663. Open off
  2664. ModelBrowserVisibility off
  2665. ModelBrowserWidth 200
  2666. ScreenColor "white"
  2667. PaperOrientation "landscape"
  2668. PaperPositionMode "auto"
  2669. PaperType "A4"
  2670. PaperUnits "centimeters"
  2671. ZoomFactor "100"
  2672. Block {
  2673.   BlockType   Inport
  2674.   Name   "in_1"
  2675.   Position   [20, 80, 40, 100]
  2676. }
  2677. Block {
  2678.   BlockType   Constant
  2679.   Name   "Constant"
  2680.   Position   [120, 230, 140, 250]
  2681.   Value   "ini"
  2682. }
  2683. Block {
  2684.   BlockType   Constant
  2685.   Name   "Constant1"
  2686.   Position   [15, 194, 100, 216]
  2687.   Value   "n*ts(1)+ts(2)"
  2688. }
  2689. Block {
  2690.   BlockType   DigitalClock
  2691.   Name   "Digital Clock"
  2692.   Position   [60, 140, 95, 170]
  2693.   SampleTime   "ts"
  2694. }
  2695. Block {
  2696.   BlockType   DiscreteFilter
  2697.   Name   "K-stepndelay"
  2698.   Position   [60, 70, 185, 110]
  2699.   Numerator   "[zeros(1,n), 1]"
  2700.   Denominator   "1"
  2701.   SampleTime   "ts"
  2702. }
  2703. Block {
  2704.   BlockType   RelationalOperator
  2705.   Name   "RelationalnOperator"
  2706.   Position   [150, 168, 180, 192]
  2707. }
  2708. Block {
  2709.   BlockType   Switch
  2710.   Name   "Switch"
  2711.   Position   [270, 114, 295, 146]
  2712.   Threshold   ".1"
  2713. }
  2714. Block {
  2715.   BlockType   Outport
  2716.   Name   "out_1"
  2717.   Position   [325, 120, 345, 140]
  2718. }
  2719. Line {
  2720.   SrcBlock   "RelationalnOperator"
  2721.   SrcPort   1
  2722.   Points   [35, 0; 0, -50]
  2723.   DstBlock   "Switch"
  2724.   DstPort   2
  2725. }
  2726. Line {
  2727.   SrcBlock   "Constant1"
  2728.   SrcPort   1
  2729.   Points   [10, 0; 0, -20]
  2730.   DstBlock   "RelationalnOperator"
  2731.   DstPort   2
  2732. }
  2733. Line {
  2734.   SrcBlock   "Digital Clock"
  2735.   SrcPort   1
  2736.   Points   [15, 0; 0, 20]
  2737.   DstBlock   "RelationalnOperator"
  2738.   DstPort   1
  2739. }
  2740. Line {
  2741.   SrcBlock   "Constant"
  2742.   SrcPort   1
  2743.   Points   [95, 0; 0, -100]
  2744.   DstBlock   "Switch"
  2745.   DstPort   3
  2746. }
  2747. Line {
  2748.   SrcBlock   "K-stepndelay"
  2749.   SrcPort   1
  2750.   Points   [5, 0; 0, 30]
  2751.   DstBlock   "Switch"
  2752.   DstPort   1
  2753. }
  2754. Line {
  2755.   SrcBlock   "in_1"
  2756.   SrcPort   1
  2757.   DstBlock   "K-stepndelay"
  2758.   DstPort   1
  2759. }
  2760. Line {
  2761.   SrcBlock   "Switch"
  2762.   SrcPort   1
  2763.   DstBlock   "out_1"
  2764.   DstPort   1
  2765. }
  2766.       }
  2767.     }
  2768.     Block {
  2769.       BlockType       SubSystem
  2770.       Name       "hold"
  2771.       Ports       [3, 2]
  2772.       Position       [260, 138, 340, 182]
  2773.       ShowPortLabels       off
  2774.       TreatAsAtomicUnit       off
  2775.       MaskType       "Triggered buffer down"
  2776.       MaskDescription       "Rising edge of the 2nd port triggers 1s"
  2777. "t port vector signal in. Rising edge of the 3rd port triggers 1st outport sig"
  2778. "nal out."
  2779.       MaskHelp       "The block refreshes its registers with "
  2780. "the vector input from the 1st inport at the rising edge of the 2nd inport pul"
  2781. "se. The 1st outport outputs the elements of the registers starting with the g"
  2782. "iven initial index. The rising edge of the 3rd inport pulse triggers the 1st "
  2783. "output to output the register value with the index increasing the increment v"
  2784. "alue. The second outport outputs a spike pulse when the internal register is "
  2785. "refreshed."
  2786.       MaskPromptString       "Input signal vector size:|Initial index"
  2787. " (integer vector):|Increment for each index (integer vector):|Trigger thresho"
  2788. "ld:|When index exceed register size, 1: cyclic out, 0: zero out:"
  2789.       MaskStyleString       "edit,edit,edit,edit,edit"
  2790.       MaskTunableValueString  "on,on,on,on,on"
  2791.       MaskCallbackString      "||||"
  2792.       MaskEnableString       "on,on,on,on,on"
  2793.       MaskVisibilityString    "on,on,on,on,on"
  2794.       MaskToolTipString       "on,on,on,on,on"
  2795.       MaskVarAliasString      ",,,,"
  2796.       MaskInitialization      "in_size=@1;ini_idx=@2;idx_inc=@3;thrshl"
  2797. "d=@4;cycl_flag=@5;out_size=length(ini_idx);[v,w]=trigicon(0,25,get_param(gcb,"
  2798. "'orientation'),2);[x,y]=trigicon(1,75,get_param(gcb,'orientation'),2);[u,z]=t"
  2799. "rigicon(0,50,get_param(gcb,'orientation'),2);"
  2800.       MaskDisplay       "plot(0,0,100,100,x,y,v,w,u,z);disp('Buf"
  2801. "fer dwn')"
  2802.       MaskIconFrame       on
  2803.       MaskIconOpaque       on
  2804.       MaskIconRotate       "none"
  2805.       MaskIconUnits       "autoscale"
  2806.       MaskValueString       "2|[1 0]|[0 0]|1|0"
  2807.       System {
  2808. Name "hold"
  2809. Location [22, 58, 460, 228]
  2810. Open off
  2811. ModelBrowserVisibility off
  2812. ModelBrowserWidth 200
  2813. ScreenColor "white"
  2814. PaperOrientation "landscape"
  2815. PaperPositionMode "auto"
  2816. PaperType "A4"
  2817. PaperUnits "centimeters"
  2818. ZoomFactor "100"
  2819. Block {
  2820.   BlockType   Inport
  2821.   Name   "in_1"
  2822.   Position   [15, 55, 35, 75]
  2823. }
  2824. Block {
  2825.   BlockType   Inport
  2826.   Name   "in_2"
  2827.   Position   [40, 70, 60, 90]
  2828.   Port   "2"
  2829. }
  2830. Block {
  2831.   BlockType   Inport
  2832.   Name   "in_3"
  2833.   Position   [65, 85, 85, 105]
  2834.   Port   "3"
  2835. }
  2836. Block {
  2837.   BlockType   Demux
  2838.   Name   "Demux"
  2839.   Ports   [1, 2]
  2840.   Position   [290, 62, 330, 98]
  2841.   Outputs   "[out_size 1]"
  2842. }
  2843. Block {
  2844.   BlockType   Mux
  2845.   Name   "Mux"
  2846.   Ports   [3, 1]
  2847.   Position   [110, 59, 140, 101]
  2848.   Inputs   "[in_size 1 1]"
  2849. }
  2850. Block {
  2851.   BlockType   "S-Function"
  2852.   Name   "S-function"
  2853.   Ports   [1, 1]
  2854.   Position   [185, 70, 235, 90]
  2855.   FunctionName   "regdown"
  2856.   Parameters   "ini_idx, idx_inc, thrshld, cycl_fla"
  2857. "g"
  2858. }
  2859. Block {
  2860.   BlockType   Outport
  2861.   Name   "out_1"
  2862.   Position   [390, 60, 410, 80]
  2863. }
  2864. Block {
  2865.   BlockType   Outport
  2866.   Name   "out_2"
  2867.   Position   [355, 80, 375, 100]
  2868.   Port   "2"
  2869. }
  2870. Line {
  2871.   SrcBlock   "in_3"
  2872.   SrcPort   1
  2873.   DstBlock   "Mux"
  2874.   DstPort   3
  2875. }
  2876. Line {
  2877.   SrcBlock   "Demux"
  2878.   SrcPort   2
  2879.   DstBlock   "out_2"
  2880.   DstPort   1
  2881. }
  2882. Line {
  2883.   SrcBlock   "in_2"
  2884.   SrcPort   1
  2885.   DstBlock   "Mux"
  2886.   DstPort   2
  2887. }
  2888. Line {
  2889.   SrcBlock   "Demux"
  2890.   SrcPort   1
  2891.   DstBlock   "out_1"
  2892.   DstPort   1
  2893. }
  2894. Line {
  2895.   SrcBlock   "in_1"
  2896.   SrcPort   1
  2897.   DstBlock   "Mux"
  2898.   DstPort   1
  2899. }
  2900. Line {
  2901.   SrcBlock   "Mux"
  2902.   SrcPort   1
  2903.   DstBlock   "S-function"
  2904.   DstPort   1
  2905. }
  2906. Line {
  2907.   SrcBlock   "S-function"
  2908.   SrcPort   1
  2909.   DstBlock   "Demux"
  2910.   DstPort   1
  2911. }
  2912.       }
  2913.     }
  2914.     Block {
  2915.       BlockType       SubSystem
  2916.       Name       "shift register"
  2917.       Ports       [2, 2]
  2918.       Position       [120, 133, 200, 177]
  2919.       ShowPortLabels       off
  2920.       TreatAsAtomicUnit       off
  2921.       MaskType       "Register-shift"
  2922.       MaskDescription       "The rising edge of the 2nd port pulsen"
  2923. "triggers the block to input the 1st port data and to shift the register."
  2924.       MaskHelp       "This block stores the scalar input sign"
  2925. "al from the 1st input port at the rising edge of the pulse from the 2nd port."
  2926. " The 1st outport outputs a vector with its size the same as the "Delay steps"
  2927. "" entree of this block. The maximum delay is the register size of this block"
  2928. ". The second outport outputs a positive pulse when the register is\nrefreshe"
  2929. "d."
  2930.       MaskPromptString       "Delay steps (output length is same as t"
  2931. "his vector size):|Threshold in detecting the rising edge of the pulse:"
  2932.       MaskStyleString       "edit,edit"
  2933.       MaskTunableValueString  "on,on"
  2934.       MaskCallbackString      "|"
  2935.       MaskEnableString       "on,on"
  2936.       MaskVisibilityString    "on,on"
  2937.       MaskToolTipString       "on,on"
  2938.       MaskVarAliasString      ","
  2939.       MaskInitialization      "shft_out=@1;thrhld=@2;len_rg=length(@1)"
  2940. ";[v,w]=trigicon(0,25,get_param(gcb,'orientation'),2);[x,y]=trigicon(1,75,get_"
  2941. "param(gcb,'orientation'),2);"
  2942.       MaskDisplay       "plot(0,0,100,100,x,y,v,w);disp('Reg. sh"
  2943. "ift')"
  2944.       MaskIconFrame       on
  2945.       MaskIconOpaque       on
  2946.       MaskIconRotate       "none"
  2947.       MaskIconUnits       "autoscale"
  2948.       MaskValueString       "[2 1]|1"
  2949.       System {
  2950. Name "shift register"
  2951. Location [19, 610, 374, 740]
  2952. Open off
  2953. ModelBrowserVisibility off
  2954. ModelBrowserWidth 200
  2955. ScreenColor "white"
  2956. PaperOrientation "landscape"
  2957. PaperPositionMode "auto"
  2958. PaperType "A4"
  2959. PaperUnits "centimeters"
  2960. ZoomFactor "100"
  2961. Block {
  2962.   BlockType   Inport
  2963.   Name   "in_1"
  2964.   Position   [30, 55, 50, 75]
  2965. }
  2966. Block {
  2967.   BlockType   Inport
  2968.   Name   "in_2"
  2969.   Position   [30, 70, 50, 90]
  2970.   Port   "2"
  2971. }
  2972. Block {
  2973.   BlockType   Demux
  2974.   Name   "Demux"
  2975.   Ports   [1, 2]
  2976.   Position   [260, 55, 300, 90]
  2977.   Outputs   "[len_rg, 1]"
  2978. }
  2979. Block {
  2980.   BlockType   Mux
  2981.   Name   "Mux"
  2982.   Ports   [2, 1]
  2983.   Position   [80, 56, 115, 89]
  2984.   Inputs   "2"
  2985. }
  2986. Block {
  2987.   BlockType   "S-Function"
  2988.   Name   "S-function"
  2989.   Ports   [1, 1]
  2990.   Position   [150, 65, 200, 85]
  2991.   FunctionName   "regshift"
  2992.   Parameters   "shft_out, thrhld"
  2993. }
  2994. Block {
  2995.   BlockType   Outport
  2996.   Name   "out_1"
  2997.   Position   [330, 55, 350, 75]
  2998. }
  2999. Block {
  3000.   BlockType   Outport
  3001.   Name   "out_2"
  3002.   Position   [330, 70, 350, 90]
  3003.   Port   "2"
  3004. }
  3005. Line {
  3006.   SrcBlock   "Mux"
  3007.   SrcPort   1
  3008.   DstBlock   "S-function"
  3009.   DstPort   1
  3010. }
  3011. Line {
  3012.   SrcBlock   "S-function"
  3013.   SrcPort   1
  3014.   DstBlock   "Demux"
  3015.   DstPort   1
  3016. }
  3017. Line {
  3018.   SrcBlock   "Demux"
  3019.   SrcPort   1
  3020.   DstBlock   "out_1"
  3021.   DstPort   1
  3022. }
  3023. Line {
  3024.   SrcBlock   "Demux"
  3025.   SrcPort   2
  3026.   DstBlock   "out_2"
  3027.   DstPort   1
  3028. }
  3029. Line {
  3030.   SrcBlock   "in_1"
  3031.   SrcPort   1
  3032.   DstBlock   "Mux"
  3033.   DstPort   1
  3034. }
  3035. Line {
  3036.   SrcBlock   "in_2"
  3037.   SrcPort   1
  3038.   DstBlock   "Mux"
  3039.   DstPort   2
  3040. }
  3041.       }
  3042.     }
  3043.     Block {
  3044.       BlockType       Outport
  3045.       Name       "binary"
  3046.       Position       [480, 60, 500, 80]
  3047.     }
  3048.     Block {
  3049.       BlockType       Outport
  3050.       Name       "Symbol"
  3051.       Position       [480, 140, 500, 160]
  3052.       Port       "2"
  3053.     }
  3054.     Line {
  3055.       SrcBlock       "hold"
  3056.       SrcPort       2
  3057.       Points       [10, 0; 0, 35]
  3058.       DstBlock       "Terminator"
  3059.       DstPort       1
  3060.     }
  3061.     Line {
  3062.       SrcBlock       "D/A "
  3063.       SrcPort       1
  3064.       DstBlock       "Symbol"
  3065.       DstPort       1
  3066.     }
  3067.     Line {
  3068.       SrcBlock       "delay"
  3069.       SrcPort       1
  3070.       DstBlock       "binary"
  3071.       DstPort       1
  3072.     }
  3073.     Line {
  3074.       SrcBlock       "shift register"
  3075.       SrcPort       1
  3076.       DstBlock       "hold"
  3077.       DstPort       1
  3078.     }
  3079.     Line {
  3080.       SrcBlock       "hold"
  3081.       SrcPort       1
  3082.       DstBlock       "D/A "
  3083.       DstPort       1
  3084.     }
  3085.     Line {
  3086.       SrcBlock       "clock"
  3087.       SrcPort       1
  3088.       DstBlock       "shift register"
  3089.       DstPort       2
  3090.     }
  3091.     Line {
  3092.       SrcBlock       "shift register"
  3093.       SrcPort       2
  3094.       Points       [20, 0]
  3095.       Branch {
  3096. Points [0, -5]
  3097. DstBlock "hold"
  3098. DstPort 2
  3099.       }
  3100.       Branch {
  3101. Points [0, 10]
  3102. DstBlock "hold"
  3103. DstPort 3
  3104.       }
  3105.     }
  3106.     Line {
  3107.       SrcBlock       "Bits"
  3108.       SrcPort       1
  3109.       Points       [15, 0]
  3110.       Branch {
  3111. DstBlock "delay"
  3112. DstPort 1
  3113.       }
  3114.       Branch {
  3115. DstBlock "shift register"
  3116. DstPort 1
  3117.       }
  3118.     }
  3119.     Annotation {
  3120.       Name       "Two bits are mapped to a symbol. MSB fi"
  3121. "rst."
  3122.       Position       [267, 7]
  3123.       VerticalAlignment       "top"
  3124.     }
  3125.   }
  3126. }
  3127. Block {
  3128.   BlockType   Sum
  3129.   Name   "Sum"
  3130.   Ports   [2, 1]
  3131.   Position   [880, 155, 900, 175]
  3132.   ShowName   off
  3133.   Inputs   "+-"
  3134. }
  3135. Block {
  3136.   BlockType   TransportDelay
  3137.   Name   "TransportnDelay"
  3138.   Position   [180, 200, 220, 230]
  3139.   Orientation   "down"
  3140.   NamePlacement   "alternate"
  3141.   DelayTime   ".5"
  3142.   BufferSize   "200"
  3143. }
  3144. Block {
  3145.   BlockType   Scope
  3146.   Name   "a_c(t)"
  3147.   Ports   [1]
  3148.   Position   [230, 10, 260, 40]
  3149.   Orientation   "up"
  3150.   Location   [359, 340, 1280, 440]
  3151.   Open   off
  3152.   NumInputPorts   "1"
  3153.   List {
  3154.     ListType     AxesTitles
  3155.     axes1     "%<SignalLabel>"
  3156.   }
  3157.   TimeRange   "25.000000"
  3158.   YMin   "-1.500000"
  3159.   YMax   "1.500000"
  3160.   DataFormat   "Array"
  3161. }
  3162. Block {
  3163.   BlockType   Scope
  3164.   Name   "a_s(t)"
  3165.   Ports   [1]
  3166.   Position   [230, 165, 260, 195]
  3167.   Orientation   "up"
  3168.   Location   [359, 633, 1280, 733]
  3169.   Open   off
  3170.   NumInputPorts   "1"
  3171.   List {
  3172.     ListType     AxesTitles
  3173.     axes1     "%<SignalLabel>"
  3174.   }
  3175.   TimeRange   "25.000000"
  3176.   YMin   "-1.500000"
  3177.   YMax   "1.500000"
  3178.   DataFormat   "Array"
  3179. }
  3180. Block {
  3181.   BlockType   SubSystem
  3182.   Name   "closetransmitter"
  3183.   Ports   []
  3184.   Position   [805, 20, 940, 46]
  3185.   BackgroundColor   "lightBlue"
  3186.   ShowName   off
  3187.   OpenFcn   "closetra"
  3188.   FontAngle   "italic"
  3189.   ShowPortLabels   off
  3190.   TreatAsAtomicUnit   off
  3191.   MaskType   "close"
  3192.   MaskDisplay   "disp('Close transmitter')"
  3193.   MaskIconFrame   on
  3194.   MaskIconOpaque   on
  3195.   MaskIconRotate   "none"
  3196.   MaskIconUnits   "autoscale"
  3197.   System {
  3198.     Name     "closetransmitter"
  3199.     Location     [136, 230, 381, 439]
  3200.     Open     off
  3201.     ModelBrowserVisibility  off
  3202.     ModelBrowserWidth     200
  3203.     ScreenColor     "cyan"
  3204.     PaperOrientation     "landscape"
  3205.     PaperPositionMode     "auto"
  3206.     PaperType     "usletter"
  3207.     PaperUnits     "inches"
  3208.     ZoomFactor     "100"
  3209.   }
  3210. }
  3211. Block {
  3212.   BlockType   Scope
  3213.   Name   "s_c(t)"
  3214.   Ports   [1]
  3215.   Position   [440, 10, 470, 40]
  3216.   Orientation   "up"
  3217.   Location   [359, 438, 1280, 538]
  3218.   Open   off
  3219.   NumInputPorts   "1"
  3220.   List {
  3221.     ListType     AxesTitles
  3222.     axes1     "%<SignalLabel>"
  3223.   }
  3224.   TimeRange   "25.000000"
  3225.   YMin   "-1.500000"
  3226.   YMax   "1.500000"
  3227.   DataFormat   "Array"
  3228. }
  3229. Block {
  3230.   BlockType   Scope
  3231.   Name   "s_s(t)"
  3232.   Ports   [1]
  3233.   Position   [435, 165, 465, 195]
  3234.   Orientation   "up"
  3235.   Location   [359, 731, 1280, 831]
  3236.   Open   off
  3237.   NumInputPorts   "1"
  3238.   List {
  3239.     ListType     AxesTitles
  3240.     axes1     "%<SignalLabel>"
  3241.   }
  3242.   TimeRange   "25.000000"
  3243.   YMin   "-1.500000"
  3244.   YMax   "1.500000"
  3245.   DataFormat   "Array"
  3246. }
  3247. Block {
  3248.   BlockType   SubSystem
  3249.   Name   "transmitterndiagrams"
  3250.   Ports   [2]
  3251.   Position   [570, 15, 625, 55]
  3252.   ShowPortLabels   off
  3253.   TreatAsAtomicUnit   off
  3254.   MaskType   "2D-Diagrams"
  3255.   MaskDescription   "Eye pattern, signal space trajectory and sc"
  3256. "atter plot"
  3257.   MaskPromptString   "Plot start time:|Samples per time slot (2*T"
  3258. "):|Decision offset:"
  3259.   MaskStyleString   "edit,edit,edit"
  3260.   MaskTunableValueString  "on,on,on"
  3261.   MaskCallbackString   "||"
  3262.   MaskEnableString   "on,on,on"
  3263.   MaskVisibilityString   "on,on,on"
  3264.   MaskToolTipString   "on,on,on"
  3265.   MaskVarAliasString   ",,"
  3266.   MaskVariables   "starttime=@1;anzahl=@2;offset=@3;"
  3267.   MaskInitialization   " [x, y] = srcsicon(10);"
  3268.   MaskDisplay   "plot(0,0,100,100,x,y)"
  3269.   MaskIconFrame   on
  3270.   MaskIconOpaque   on
  3271.   MaskIconRotate   "none"
  3272.   MaskIconUnits   "autoscale"
  3273.   MaskValueString   "0|40|0"
  3274.   System {
  3275.     Name     "transmitterndiagrams"
  3276.     Location     [511, 331, 923, 624]
  3277.     Open     off
  3278.     ModelBrowserVisibility  off
  3279.     ModelBrowserWidth     200
  3280.     ScreenColor     "white"
  3281.     PaperOrientation     "landscape"
  3282.     PaperPositionMode     "auto"
  3283.     PaperType     "usletter"
  3284.     PaperUnits     "inches"
  3285.     ZoomFactor     "100"
  3286.     Block {
  3287.       BlockType       Inport
  3288.       Name       "Inphase"
  3289.       Position       [30, 20, 50, 40]
  3290.     }
  3291.     Block {
  3292.       BlockType       Inport
  3293.       Name       "Quadratur"
  3294.       Position       [30, 80, 50, 100]
  3295.       Port       "2"
  3296.     }
  3297.     Block {
  3298.       BlockType       Constant
  3299.       Name       "Constant"
  3300.       Position       [90, 125, 110, 145]
  3301.       Orientation       "up"
  3302.       ShowName       off
  3303.       Value       "Inf"
  3304.     }
  3305.     Block {
  3306.       BlockType       Constant
  3307.       Name       "Constant0"
  3308.       Position       [190, 125, 210, 145]
  3309.       Orientation       "up"
  3310.       ShowName       off
  3311.       Value       "0"
  3312.     }
  3313.     Block {
  3314.       BlockType       SubSystem
  3315.       Name       "Inphase eye patternntransmitter"
  3316.       Ports       [1]
  3317.       Position       [305, 17, 360, 53]
  3318.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  3319.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  3320.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  3321.       StartFcn       "eyesampl([],[],[],'Start')"
  3322.       StopFcn       "eyesampl([],[],[],'Stop')"
  3323.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  3324.       ShowPortLabels       off
  3325.       TreatAsAtomicUnit       off
  3326.       MaskType       "Eye-diagram/scatter plot"
  3327.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  3328. "ter plot."
  3329.       MaskHelp       "This plot opens one, or two plots by as"
  3330. "signing the line type parameters. The scatter plot point is selected by the d"
  3331. "ecision point in the first parameter entry. A decision line is drawn in the e"
  3332. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  3333.       MaskPromptString       "[Symbol interval, plot offset, decision"
  3334. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  3335. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  3336. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  3337.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  3338.       MaskTunableValueString  "on,on,on,on,on,on"
  3339.       MaskCallbackString      "|||||"
  3340.       MaskEnableString       "on,on,on,on,on,on"
  3341.       MaskVisibilityString    "on,on,on,on,on,on"
  3342.       MaskToolTipString       "on,on,on,on,on,on"
  3343.       MaskVarAliasString      ",,,,,"
  3344.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  3345. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  3346.       MaskDisplay       "plot(0,0,100,100,x,y);"
  3347.       MaskIconFrame       on
  3348.       MaskIconOpaque       on
  3349.       MaskIconRotate       "none"
  3350.       MaskIconUnits       "autoscale"
  3351.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  3352. "/anzahl"
  3353.       System {
  3354. Name "Inphase eye patternntransmitter"
  3355. Location [121, 409, 416, 595]
  3356. Open off
  3357. ModelBrowserVisibility off
  3358. ModelBrowserWidth 200
  3359. ScreenColor "white"
  3360. PaperOrientation "landscape"
  3361. PaperPositionMode "auto"
  3362. PaperType "usletter"
  3363. PaperUnits "inches"
  3364. ZoomFactor "100"
  3365. Block {
  3366.   BlockType   Inport
  3367.   Name   "in_1"
  3368.   Position   [75, 80, 95, 100]
  3369. }
  3370. Block {
  3371.   BlockType   "S-Function"
  3372.   Name   "Plot1"
  3373.   Ports   [1]
  3374.   Position   [130, 70, 200, 110]
  3375.   FunctionName   "eyesampl"
  3376.   Parameters   "time_range, boundary, kept_length, "
  3377. "eye_line, scatter_line, two_d_line"
  3378. }
  3379. Line {
  3380.   SrcBlock   "in_1"
  3381.   SrcPort   1
  3382.   DstBlock   "Plot1"
  3383.   DstPort   1
  3384. }
  3385.       }
  3386.     }
  3387.     Block {
  3388.       BlockType       Mux
  3389.       Name       "Mux"
  3390.       Ports       [2, 1]
  3391.       Position       [230, 16, 265, 49]
  3392.       Inputs       "2"
  3393.     }
  3394.     Block {
  3395.       BlockType       Mux
  3396.       Name       "Mux1"
  3397.       Ports       [2, 1]
  3398.       Position       [230, 76, 265, 109]
  3399.       Inputs       "2"
  3400.     }
  3401.     Block {
  3402.       BlockType       Mux
  3403.       Name       "Mux2"
  3404.       Ports       [2, 1]
  3405.       Position       [230, 146, 265, 179]
  3406.       Inputs       "2"
  3407.     }
  3408.     Block {
  3409.       BlockType       Mux
  3410.       Name       "Mux3"
  3411.       Ports       [2, 1]
  3412.       Position       [230, 211, 265, 244]
  3413.       Inputs       "2"
  3414.     }
  3415.     Block {
  3416.       BlockType       SubSystem
  3417.       Name       "Quadrature eye patternntransmitter"
  3418.       Ports       [1]
  3419.       Position       [305, 77, 360, 113]
  3420.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  3421.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  3422.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  3423.       StartFcn       "eyesampl([],[],[],'Start')"
  3424.       StopFcn       "eyesampl([],[],[],'Stop')"
  3425.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  3426.       ShowPortLabels       off
  3427.       TreatAsAtomicUnit       off
  3428.       MaskType       "Eye-diagram/scatter plot"
  3429.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  3430. "ter plot."
  3431.       MaskHelp       "This plot opens one, or two plots by as"
  3432. "signing the line type parameters. The scatter plot point is selected by the d"
  3433. "ecision point in the first parameter entry. A decision line is drawn in the e"
  3434. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  3435.       MaskPromptString       "[Symbol interval, plot offset, decision"
  3436. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  3437. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  3438. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  3439.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  3440.       MaskTunableValueString  "on,on,on,on,on,on"
  3441.       MaskCallbackString      "|||||"
  3442.       MaskEnableString       "on,on,on,on,on,on"
  3443.       MaskVisibilityString    "on,on,on,on,on,on"
  3444.       MaskToolTipString       "on,on,on,on,on,on"
  3445.       MaskVarAliasString      ",,,,,"
  3446.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  3447. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  3448.       MaskDisplay       "plot(0,0,100,100,x,y);"
  3449.       MaskIconFrame       on
  3450.       MaskIconOpaque       on
  3451.       MaskIconRotate       "none"
  3452.       MaskIconUnits       "autoscale"
  3453.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  3454. "/anzahl"
  3455.       System {
  3456. Name "Quadrature eye patternntransmitter"
  3457. Location [121, 409, 416, 595]
  3458. Open off
  3459. ModelBrowserVisibility off
  3460. ModelBrowserWidth 200
  3461. ScreenColor "white"
  3462. PaperOrientation "landscape"
  3463. PaperPositionMode "auto"
  3464. PaperType "usletter"
  3465. PaperUnits "inches"
  3466. ZoomFactor "100"
  3467. Block {
  3468.   BlockType   Inport
  3469.   Name   "in_1"
  3470.   Position   [75, 80, 95, 100]
  3471. }
  3472. Block {
  3473.   BlockType   "S-Function"
  3474.   Name   "Plot1"
  3475.   Ports   [1]
  3476.   Position   [130, 70, 200, 110]
  3477.   FunctionName   "eyesampl"
  3478.   Parameters   "time_range, boundary, kept_length, "
  3479. "eye_line, scatter_line, two_d_line"
  3480. }
  3481. Line {
  3482.   SrcBlock   "in_1"
  3483.   SrcPort   1
  3484.   DstBlock   "Plot1"
  3485.   DstPort   1
  3486. }
  3487.       }
  3488.     }
  3489.     Block {
  3490.       BlockType       SubSystem
  3491.       Name       "Scatter plotntransmitter"
  3492.       Ports       [1]
  3493.       Position       [305, 213, 360, 247]
  3494.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  3495.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  3496.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  3497.       StartFcn       "eyesampl([],[],[],'Start')"
  3498.       StopFcn       "eyesampl([],[],[],'Stop')"
  3499.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  3500.       ShowPortLabels       off
  3501.       TreatAsAtomicUnit       off
  3502.       MaskType       "Eye-diagram/scatter plot"
  3503.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  3504. "ter plot."
  3505.       MaskHelp       "This plot opens one, or two plots by as"
  3506. "signing the line type parameters. The scatter plot point is selected by the d"
  3507. "ecision point in the first parameter entry. A decision line is drawn in the e"
  3508. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  3509.       MaskPromptString       "[Symbol interval, plot offset, decision"
  3510. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  3511. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  3512. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  3513.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  3514.       MaskTunableValueString  "on,on,on,on,on,on"
  3515.       MaskCallbackString      "|||||"
  3516.       MaskEnableString       "on,on,on,on,on,on"
  3517.       MaskVisibilityString    "on,on,on,on,on,on"
  3518.       MaskToolTipString       "on,on,on,on,on,on"
  3519.       MaskVarAliasString      ",,,,,"
  3520.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  3521. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  3522.       MaskDisplay       "plot(0,0,100,100,x,y);"
  3523.       MaskIconFrame       on
  3524.       MaskIconOpaque       on
  3525.       MaskIconRotate       "none"
  3526.       MaskIconUnits       "autoscale"
  3527.       MaskValueString       "[1 .5 .999]|[-1.5 1.5]|0|0|'b.'|[.5 off"
  3528. "set]"
  3529.       System {
  3530. Name "Scatter plotntransmitter"
  3531. Location [165, 242, 460, 428]
  3532. Open off
  3533. ModelBrowserVisibility off
  3534. ModelBrowserWidth 200
  3535. ScreenColor "white"
  3536. PaperOrientation "landscape"
  3537. PaperPositionMode "auto"
  3538. PaperType "usletter"
  3539. PaperUnits "inches"
  3540. ZoomFactor "100"
  3541. Block {
  3542.   BlockType   Inport
  3543.   Name   "in_1"
  3544.   Position   [75, 80, 95, 100]
  3545. }
  3546. Block {
  3547.   BlockType   "S-Function"
  3548.   Name   "Plot1"
  3549.   Ports   [1]
  3550.   Position   [130, 70, 200, 110]
  3551.   FunctionName   "eyesampl"
  3552.   Parameters   "time_range, boundary, kept_length, "
  3553. "eye_line, scatter_line, two_d_line"
  3554. }
  3555. Line {
  3556.   SrcBlock   "in_1"
  3557.   SrcPort   1
  3558.   DstBlock   "Plot1"
  3559.   DstPort   1
  3560. }
  3561.       }
  3562.     }
  3563.     Block {
  3564.       BlockType       Step
  3565.       Name       "Step input"
  3566.       Position       [30, 125, 50, 145]
  3567.       Time       "starttime"
  3568.       SampleTime       "1"
  3569.     }
  3570.     Block {
  3571.       BlockType       Switch
  3572.       Name       "Switch"
  3573.       Position       [130, 24, 155, 56]
  3574.       Threshold       "1"
  3575.     }
  3576.     Block {
  3577.       BlockType       Switch
  3578.       Name       "Switch1"
  3579.       Position       [130, 84, 155, 116]
  3580.       Threshold       "1"
  3581.     }
  3582.     Block {
  3583.       BlockType       SubSystem
  3584.       Name       "Trajectoryntransmitter"
  3585.       Ports       [1]
  3586.       Position       [305, 157, 360, 193]
  3587.       CopyFcn       "eyediasi([],[],[],'CopyBlock')"
  3588.       DeleteFcn       "eyediasi([],[],[],'DeleteBlock')"
  3589.       LoadFcn       "eyediasi([],[],[],'LoadBlock')"
  3590.       StartFcn       "eyediasi([],[],[],'Start')"
  3591.       StopFcn       "eyediasi([],[],[],'Stop')"
  3592.       NameChangeFcn       "eyediasi([],[],[],'NameChange')"
  3593.       ShowPortLabels       off
  3594.       TreatAsAtomicUnit       off
  3595.       MaskType       "Eye-diagram/scatter plot"
  3596.       MaskDescription       "Produce eye-pattern diagram/scatternpl"
  3597. "ot/x-y plot with the rising edge of the second input as the decision line."
  3598.       MaskHelp       "This plot opens one, two, or three plot"
  3599. "s by assigning the line type parameters. The scatter plot point is selected b"
  3600. "y the rising edge of a trigger signal. A decision line is drawn at the rising"
  3601. " edge of the trigger signal."
  3602.       MaskPromptString       "Eye-pattern plot time frame:|Lower and "
  3603. "upper bound of in-coming signal (1x2 vector):|Number of saved traces:|Line-ty"
  3604. "pe for eye-pattern diagram (0 for no plot):|Line-type for scatter plot (0 for"
  3605. " no plot):|Line-type for x-y plot (0 for no plot):"
  3606.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  3607.       MaskTunableValueString  "on,on,on,on,on,on"
  3608.       MaskCallbackString      "|||||"
  3609.       MaskEnableString       "on,on,on,on,on,on"
  3610.       MaskVisibilityString    "on,on,on,on,on,on"
  3611.       MaskToolTipString       "on,on,on,on,on,on"
  3612.       MaskVarAliasString      ",,,,,"
  3613.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  3614. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);[v,w]=trigicon"
  3615. "(0,25,get_param(gcb,'orientation'),2);"
  3616.       MaskDisplay       "plot(0,0,100,100,x,y,v,w);"
  3617.       MaskIconFrame       on
  3618.       MaskIconOpaque       on
  3619.       MaskIconRotate       "none"
  3620.       MaskIconUnits       "autoscale"
  3621.       MaskValueString       "[2 0 1]|[-1.5 1.5]|0|0|0|'g-'"
  3622.       System {
  3623. Name "Trajectoryntransmitter"
  3624. Location [607, 168, 902, 354]
  3625. Open off
  3626. ModelBrowserVisibility off
  3627. ModelBrowserWidth 200
  3628. ScreenColor "white"
  3629. PaperOrientation "landscape"
  3630. PaperPositionMode "auto"
  3631. PaperType "usletter"
  3632. PaperUnits "inches"
  3633. ZoomFactor "100"
  3634. Block {
  3635.   BlockType   Inport
  3636.   Name   "in_1"
  3637.   Position   [15, 55, 35, 75]
  3638. }
  3639. Block {
  3640.   BlockType   Constant
  3641.   Name   "Constant"
  3642.   Position   [15, 110, 45, 140]
  3643.   Value   "0"
  3644. }
  3645. Block {
  3646.   BlockType   Mux
  3647.   Name   "Mux"
  3648.   Ports   [2, 1]
  3649.   Position   [65, 70, 100, 105]
  3650.   Inputs   "2"
  3651. }
  3652. Block {
  3653.   BlockType   "S-Function"
  3654.   Name   "Plot1"
  3655.   Ports   [1]
  3656.   Position   [130, 70, 200, 110]
  3657.   FunctionName   "eyediasi"
  3658.   Parameters   "time_range, boundary, kept_length, "
  3659. "eye_line, scatter_line, two_d_line"
  3660. }
  3661. Line {
  3662.   SrcBlock   "Mux"
  3663.   SrcPort   1
  3664.   DstBlock   "Plot1"
  3665.   DstPort   1
  3666. }
  3667. Line {
  3668.   SrcBlock   "Constant"
  3669.   SrcPort   1
  3670.   DstBlock   "Mux"
  3671.   DstPort   2
  3672. }
  3673. Line {
  3674.   SrcBlock   "in_1"
  3675.   SrcPort   1
  3676.   Points   [5, 0; 0, 15]
  3677.   DstBlock   "Mux"
  3678.   DstPort   1
  3679. }
  3680.       }
  3681.     }
  3682.     Line {
  3683.       SrcBlock       "Mux2"
  3684.       SrcPort       1
  3685.       Points       [20, 0]
  3686.       DstBlock       "Trajectoryntransmitter"
  3687.       DstPort       1
  3688.     }
  3689.     Line {
  3690.       SrcBlock       "Mux3"
  3691.       SrcPort       1
  3692.       DstBlock       "Scatter plotntransmitter"
  3693.       DstPort       1
  3694.     }
  3695.     Line {
  3696.       SrcBlock       "Mux"
  3697.       SrcPort       1
  3698.       DstBlock       "Inphase eye patternntransmitter"
  3699.       DstPort       1
  3700.     }
  3701.     Line {
  3702.       SrcBlock       "Mux1"
  3703.       SrcPort       1
  3704.       DstBlock       "Quadrature eye patternntransmitter"
  3705.       DstPort       1
  3706.     }
  3707.     Line {
  3708.       SrcBlock       "Constant"
  3709.       SrcPort       1
  3710.       Points       [0, -10]
  3711.       Branch {
  3712. Points [0, -60]
  3713. DstBlock "Switch"
  3714. DstPort 3
  3715.       }
  3716.       Branch {
  3717. DstBlock "Switch1"
  3718. DstPort 3
  3719.       }
  3720.     }
  3721.     Line {
  3722.       SrcBlock       "Step input"
  3723.       SrcPort       1
  3724.       Points       [20, 0; 0, -35]
  3725.       Branch {
  3726. Points [0, -60]
  3727. DstBlock "Switch"
  3728. DstPort 2
  3729.       }
  3730.       Branch {
  3731. DstBlock "Switch1"
  3732. DstPort 2
  3733.       }
  3734.     }
  3735.     Line {
  3736.       SrcBlock       "Inphase"
  3737.       SrcPort       1
  3738.       DstBlock       "Switch"
  3739.       DstPort       1
  3740.     }
  3741.     Line {
  3742.       SrcBlock       "Quadratur"
  3743.       SrcPort       1
  3744.       DstBlock       "Switch1"
  3745.       DstPort       1
  3746.     }
  3747.     Line {
  3748.       SrcBlock       "Switch"
  3749.       SrcPort       1
  3750.       Points       [10, 0; 0, 5]
  3751.       Branch {
  3752. Points [0, 110]
  3753. Branch {
  3754.   Points   [0, 65]
  3755.   DstBlock   "Mux3"
  3756.   DstPort   1
  3757. }
  3758. Branch {
  3759.   DstBlock   "Mux2"
  3760.   DstPort   1
  3761. }
  3762.       }
  3763.       Branch {
  3764. Points [0, -5]
  3765. DstBlock "Mux"
  3766. DstPort 2
  3767.       }
  3768.     }
  3769.     Line {
  3770.       SrcBlock       "Switch1"
  3771.       SrcPort       1
  3772.       Points       [20, 0]
  3773.       Branch {
  3774. Points [0, 70]
  3775. Branch {
  3776.   Points   [0, 65]
  3777.   DstBlock   "Mux3"
  3778.   DstPort   2
  3779. }
  3780. Branch {
  3781.   DstBlock   "Mux2"
  3782.   DstPort   2
  3783. }
  3784.       }
  3785.       Branch {
  3786. DstBlock "Mux1"
  3787. DstPort 2
  3788.       }
  3789.     }
  3790.     Line {
  3791.       SrcBlock       "Constant0"
  3792.       SrcPort       1
  3793.       Points       [0, -35]
  3794.       Branch {
  3795. DstBlock "Mux1"
  3796. DstPort 1
  3797.       }
  3798.       Branch {
  3799. Points [0, -60]
  3800. DstBlock "Mux"
  3801. DstPort 1
  3802.       }
  3803.     }
  3804.   }
  3805. }
  3806. Block {
  3807.   BlockType   Scope
  3808.   Name   "u(t)"
  3809.   Ports   [1]
  3810.   Position   [920, 80, 950, 110]
  3811.   Orientation   "up"
  3812.   Location   [359, 924, 1280, 1024]
  3813.   Open   off
  3814.   NumInputPorts   "1"
  3815.   List {
  3816.     ListType     AxesTitles
  3817.     axes1     "%<SignalLabel>"
  3818.   }
  3819.   TimeRange   "25.000000"
  3820.   YMin   "-1.500000"
  3821.   YMax   "1.500000"
  3822.   DataFormat   "Array"
  3823. }
  3824. Block {
  3825.   BlockType   Scope
  3826.   Name   "u_c(t)"
  3827.   Ports   [1]
  3828.   Position   [865, 80, 895, 110]
  3829.   Location   [359, 536, 1280, 636]
  3830.   Open   off
  3831.   NumInputPorts   "1"
  3832.   List {
  3833.     ListType     AxesTitles
  3834.     axes1     "%<SignalLabel>"
  3835.   }
  3836.   TimeRange   "25.000000"
  3837.   YMin   "-1.500000"
  3838.   YMax   "1.500000"
  3839.   DataFormat   "Array"
  3840. }
  3841. Block {
  3842.   BlockType   Scope
  3843.   Name   "u_s(t)"
  3844.   Ports   [1]
  3845.   Position   [865, 230, 895, 260]
  3846.   Location   [359, 827, 1280, 927]
  3847.   Open   off
  3848.   NumInputPorts   "1"
  3849.   List {
  3850.     ListType     AxesTitles
  3851.     axes1     "%<SignalLabel>"
  3852.   }
  3853.   TimeRange   "25.000000"
  3854.   YMin   "-1.500000"
  3855.   YMax   "1.500000"
  3856.   DataFormat   "Array"
  3857. }
  3858. Block {
  3859.   BlockType   Outport
  3860.   Name   "Bits"
  3861.   Position   [110, 15, 130, 35]
  3862. }
  3863. Block {
  3864.   BlockType   Outport
  3865.   Name   "OQPSK-nSignal"
  3866.   Position   [965, 155, 985, 175]
  3867.   Port   "2"
  3868. }
  3869. Block {
  3870.   BlockType   Outport
  3871.   Name   "Symbols"
  3872.   Position   [110, 60, 130, 80]
  3873.   Port   "3"
  3874. }
  3875. Line {
  3876.   SrcBlock   "QPSK"
  3877.   SrcPort   1
  3878.   Points   [10, 0; 0, -35; 45, 0]
  3879.   Branch {
  3880.     Points     [210, 0]
  3881.     Branch {
  3882.       DstBlock       "s_c(t)"
  3883.       DstPort       1
  3884.     }
  3885.     Branch {
  3886.       Points       [55, 0]
  3887.       Branch {
  3888. DstBlock "Product"
  3889. DstPort 1
  3890.       }
  3891.       Branch {
  3892. Points [0, -65]
  3893. DstBlock "transmitterndiagrams"
  3894. DstPort 1
  3895.       }
  3896.     }
  3897.   }
  3898.   Branch {
  3899.     DstBlock     "a_c(t)"
  3900.     DstPort     1
  3901.   }
  3902. }
  3903. Line {
  3904.   SrcBlock   "Source"
  3905.   SrcPort   2
  3906.   Points   [20, 0]
  3907.   Branch {
  3908.     DstBlock     "QPSK"
  3909.     DstPort     1
  3910.   }
  3911.   Branch {
  3912.     Points     [0, -65]
  3913.     DstBlock     "Symbols"
  3914.     DstPort     1
  3915.   }
  3916. }
  3917. Line {
  3918.   SrcBlock   "Product1"
  3919.   SrcPort   1
  3920.   Points   [30, 0]
  3921.   Branch {
  3922.     DstBlock     "u_s(t)"
  3923.     DstPort     1
  3924.   }
  3925.   Branch {
  3926.     Points     [0, -75]
  3927.     DstBlock     "Sum"
  3928.     DstPort     2
  3929.   }
  3930. }
  3931. Line {
  3932.   SrcBlock   "Product"
  3933.   SrcPort   1
  3934.   Points   [30, 0]
  3935.   Branch {
  3936.     DstBlock     "u_c(t)"
  3937.     DstPort     1
  3938.   }
  3939.   Branch {
  3940.     Points     [0, 65]
  3941.     DstBlock     "Sum"
  3942.     DstPort     1
  3943.   }
  3944. }
  3945. Line {
  3946.   SrcBlock   "TransportnDelay"
  3947.   SrcPort   1
  3948.   Points   [0, 15; 45, 0]
  3949.   Branch {
  3950.     Points     [205, 0]
  3951.     Branch {
  3952.       DstBlock       "s_s(t)"
  3953.       DstPort       1
  3954.     }
  3955.     Branch {
  3956.       Points       [85, 0]
  3957.       Branch {
  3958. DstBlock "Product1"
  3959. DstPort 2
  3960.       }
  3961.       Branch {
  3962. Points [0, -205]
  3963. DstBlock "transmitterndiagrams"
  3964. DstPort 2
  3965.       }
  3966.     }
  3967.   }
  3968.   Branch {
  3969.     DstBlock     "a_s(t)"
  3970.     DstPort     1
  3971.   }
  3972. }
  3973. Line {
  3974.   SrcBlock   "Clock"
  3975.   SrcPort   1
  3976.   Points   [0, 0]
  3977.   Branch {
  3978.     Points     [10, 0; 0, 25]
  3979.     DstBlock     "Fcn2"
  3980.     DstPort     1
  3981.   }
  3982.   Branch {
  3983.     Points     [10, 0; 0, -20]
  3984.     DstBlock     "Fcn1"
  3985.     DstPort     1
  3986.   }
  3987. }
  3988. Line {
  3989.   SrcBlock   "Fcn1"
  3990.   SrcPort   1
  3991.   Points   [20, 0; 0, -45]
  3992.   DstBlock   "Product"
  3993.   DstPort   2
  3994. }
  3995. Line {
  3996.   SrcBlock   "Fcn2"
  3997.   SrcPort   1
  3998.   Points   [20, 0; 0, 50]
  3999.   DstBlock   "Product1"
  4000.   DstPort   1
  4001. }
  4002. Line {
  4003.   SrcBlock   "Sum"
  4004.   SrcPort   1
  4005.   Points   [30, 0]
  4006.   Branch {
  4007.     DstBlock     "u(t)"
  4008.     DstPort     1
  4009.   }
  4010.   Branch {
  4011.     DstBlock     "OQPSK-nSignal"
  4012.     DstPort     1
  4013.   }
  4014. }
  4015. Line {
  4016.   SrcBlock   "Source"
  4017.   SrcPort   1
  4018.   Points   [5, 0; 0, -85]
  4019.   DstBlock   "Bits"
  4020.   DstPort   1
  4021. }
  4022. Line {
  4023.   SrcBlock   "QPSK"
  4024.   SrcPort   2
  4025.   Points   [10, 0]
  4026.   DstBlock   "TransportnDelay"
  4027.   DstPort   1
  4028. }
  4029.       }
  4030.     }
  4031.     Block {
  4032.       BlockType       Scope
  4033.       Name       "binary data"
  4034.       Ports       [1]
  4035.       Position       [320, 25, 350, 55]
  4036.       Orientation       "up"
  4037.       NamePlacement       "alternate"
  4038.       Location       [227, 341, 1147, 441]
  4039.       Open       off
  4040.       NumInputPorts       "1"
  4041.       List {
  4042. ListType AxesTitles
  4043. axes1 "%<SignalLabel>"
  4044.       }
  4045.       TimeRange       "25.000000"
  4046.       YMin       "-3"
  4047.       YMax       "3"
  4048.       DataFormat       "Array"
  4049.     }
  4050.     Block {
  4051.       BlockType       SubSystem
  4052.       Name       "constellation"
  4053.       Ports       []
  4054.       Position       [35, 19, 120, 56]
  4055.       BackgroundColor       "lightBlue"
  4056.       ShowName       off
  4057.       OpenFcn       "cplotpsk(4)"
  4058.       ShowPortLabels       off
  4059.       TreatAsAtomicUnit       off
  4060.       MaskType       "constellation"
  4061.       MaskDisplay       "disp('Signal Space \n Constellation')"
  4062.       MaskIconFrame       on
  4063.       MaskIconOpaque       on
  4064.       MaskIconRotate       "none"
  4065.       MaskIconUnits       "autoscale"
  4066.       System {
  4067. Name "constellation"
  4068. Location [74, 73, 1338, 1015]
  4069. Open off
  4070. ModelBrowserVisibility off
  4071. ModelBrowserWidth 200
  4072. ScreenColor "cyan"
  4073. PaperOrientation "landscape"
  4074. PaperPositionMode "auto"
  4075. PaperType "usletter"
  4076. PaperUnits "inches"
  4077. ZoomFactor "100"
  4078.       }
  4079.     }
  4080.     Block {
  4081.       BlockType       Scope
  4082.       Name       "detectednsymbols"
  4083.       Ports       [1]
  4084.       Position       [745, 220, 775, 250]
  4085.       Orientation       "down"
  4086.       NamePlacement       "alternate"
  4087.       Location       [227, 738, 1147, 838]
  4088.       Open       off
  4089.       NumInputPorts       "1"
  4090.       List {
  4091. ListType AxesTitles
  4092. axes1 "%<SignalLabel>"
  4093.       }
  4094.       TimeRange       "25.000000"
  4095.       YMin       "-3"
  4096.       YMax       "3"
  4097.       DataFormat       "Array"
  4098.     }
  4099.     Block {
  4100.       BlockType       SubSystem
  4101.       Name       "noise variance"
  4102.       Ports       []
  4103.       Position       [454, 45, 560, 69]
  4104.       BackgroundColor       "lightBlue"
  4105.       ShowName       off
  4106.       OpenFcn       "setnoise"
  4107.       FontSize       12
  4108.       FontAngle       "italic"
  4109.       ShowPortLabels       off
  4110.       TreatAsAtomicUnit       off
  4111.       MaskType       "noise"
  4112.       MaskDisplay       "disp('Noise variance')"
  4113.       MaskIconFrame       on
  4114.       MaskIconOpaque       on
  4115.       MaskIconRotate       "none"
  4116.       MaskIconUnits       "autoscale"
  4117.       System {
  4118. Name "noise variance"
  4119. Location [136, 230, 381, 439]
  4120. Open off
  4121. ModelBrowserVisibility off
  4122. ModelBrowserWidth 200
  4123. ScreenColor "cyan"
  4124. PaperOrientation "landscape"
  4125. PaperPositionMode "auto"
  4126. PaperType "usletter"
  4127. PaperUnits "inches"
  4128. ZoomFactor "100"
  4129.       }
  4130.     }
  4131.     Block {
  4132.       BlockType       Scope
  4133.       Name       "r(t)"
  4134.       Ports       [1]
  4135.       Position       [585, 25, 615, 55]
  4136.       Orientation       "up"
  4137.       Location       [227, 638, 1147, 738]
  4138.       Open       off
  4139.       NumInputPorts       "1"
  4140.       List {
  4141. ListType AxesTitles
  4142. axes1 "%<SignalLabel>"
  4143.       }
  4144.       TimeRange       "25.000000"
  4145.       YMin       "-1.5"
  4146.       YMax       "1.5"
  4147.       DataFormat       "Array"
  4148.     }
  4149.     Block {
  4150.       BlockType       SubSystem
  4151.       Name       "show receiver"
  4152.       Ports       []
  4153.       Position       [785, 90, 920, 116]
  4154.       BackgroundColor       "lightBlue"
  4155.       ShowName       off
  4156.       OpenFcn       "showrec"
  4157.       FontSize       12
  4158.       FontAngle       "italic"
  4159.       ShowPortLabels       off
  4160.       TreatAsAtomicUnit       off
  4161.       MaskType       "open"
  4162.       MaskDisplay       "disp('Receiver')"
  4163.       MaskIconFrame       on
  4164.       MaskIconOpaque       on
  4165.       MaskIconRotate       "none"
  4166.       MaskIconUnits       "autoscale"
  4167.       System {
  4168. Name "show receiver"
  4169. Location [136, 230, 381, 439]
  4170. Open off
  4171. ModelBrowserVisibility off
  4172. ModelBrowserWidth 200
  4173. ScreenColor "cyan"
  4174. PaperOrientation "landscape"
  4175. PaperPositionMode "auto"
  4176. PaperType "usletter"
  4177. PaperUnits "inches"
  4178. ZoomFactor "100"
  4179.       }
  4180.     }
  4181.     Block {
  4182.       BlockType       SubSystem
  4183.       Name       "show transmitter"
  4184.       Ports       []
  4185.       Position       [35, 95, 170, 121]
  4186.       BackgroundColor       "lightBlue"
  4187.       ShowName       off
  4188.       OpenFcn       "showtra"
  4189.       FontSize       12
  4190.       FontAngle       "italic"
  4191.       ShowPortLabels       off
  4192.       TreatAsAtomicUnit       off
  4193.       MaskType       "open"
  4194.       MaskDisplay       "disp('Transmitter')"
  4195.       MaskIconFrame       on
  4196.       MaskIconOpaque       on
  4197.       MaskIconRotate       "none"
  4198.       MaskIconUnits       "autoscale"
  4199.       System {
  4200. Name "show transmitter"
  4201. Location [136, 230, 381, 439]
  4202. Open off
  4203. ModelBrowserVisibility off
  4204. ModelBrowserWidth 200
  4205. ScreenColor "cyan"
  4206. PaperOrientation "landscape"
  4207. PaperPositionMode "auto"
  4208. PaperType "usletter"
  4209. PaperUnits "inches"
  4210. ZoomFactor "100"
  4211.       }
  4212.     }
  4213.     Block {
  4214.       BlockType       Scope
  4215.       Name       "transmittednsymbols"
  4216.       Ports       [1]
  4217.       Position       [320, 220, 350, 250]
  4218.       Orientation       "down"
  4219.       NamePlacement       "alternate"
  4220.       Location       [227, 440, 1147, 540]
  4221.       Open       off
  4222.       NumInputPorts       "1"
  4223.       List {
  4224. ListType AxesTitles
  4225. axes1 "%<SignalLabel>"
  4226.       }
  4227.       TimeRange       "25.000000"
  4228.       YMin       "-3"
  4229.       YMax       "3"
  4230.       DataFormat       "Array"
  4231.     }
  4232.     Block {
  4233.       BlockType       Scope
  4234.       Name       "u(t)"
  4235.       Ports       [1]
  4236.       Position       [390, 25, 420, 55]
  4237.       Orientation       "up"
  4238.       Location       [227, 538, 1147, 638]
  4239.       Open       off
  4240.       NumInputPorts       "1"
  4241.       List {
  4242. ListType AxesTitles
  4243. axes1 "%<SignalLabel>"
  4244.       }
  4245.       TimeRange       "25.000000"
  4246.       YMin       "-1.5"
  4247.       YMax       "1.5"
  4248.       DataFormat       "Array"
  4249.     }
  4250.     Line {
  4251.       SrcBlock       "Transmitter"
  4252.       SrcPort       2
  4253.       Points       [0, -10; 125, 0]
  4254.       Branch {
  4255. DstBlock "u(t)"
  4256. DstPort 1
  4257.       }
  4258.       Branch {
  4259. DstBlock "Channel"
  4260. DstPort 1
  4261.       }
  4262.     }
  4263.     Line {
  4264.       SrcBlock       "Transmitter"
  4265.       SrcPort       3
  4266.       Points       [55, 0; 0, 40]
  4267.       Branch {
  4268. DstBlock "transmittednsymbols"
  4269. DstPort 1
  4270.       }
  4271.       Branch {
  4272. Points [150, 0]
  4273. DstBlock "Error rate"
  4274. DstPort 1
  4275.       }
  4276.     }
  4277.     Line {
  4278.       SrcBlock       "Transmitter"
  4279.       SrcPort       1
  4280.       Points       [55, 0]
  4281.       DstBlock       "binary data"
  4282.       DstPort       1
  4283.     }
  4284.     Line {
  4285.       SrcBlock       "Channel"
  4286.       SrcPort       1
  4287.       Points       [50, 0]
  4288.       Branch {
  4289. DstBlock "Receiver"
  4290. DstPort 1
  4291.       }
  4292.       Branch {
  4293. DstBlock "r(t)"
  4294. DstPort 1
  4295.       }
  4296.     }
  4297.     Line {
  4298.       SrcBlock       "Receiver"
  4299.       SrcPort       1
  4300.       Points       [30, 0; 0, 80]
  4301.       Branch {
  4302. DstBlock "detectednsymbols"
  4303. DstPort 1
  4304.       }
  4305.       Branch {
  4306. Points [-235, 0]
  4307. DstBlock "Error rate"
  4308. DstPort 2
  4309.       }
  4310.     }
  4311.   }
  4312. }