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

通讯编程文档

开发平台:

Matlab

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