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

通讯编程文档

开发平台:

Matlab

  1.     Line {
  2.       SrcBlock       "Zero-OrdernHold1"
  3.       SrcPort       1
  4.       Points       [0, 0; 25, 0]
  5.       Branch {
  6. DstBlock "real part"
  7. DstPort 1
  8.       }
  9.       Branch {
  10. Points [0, 80]
  11. DstBlock "imag part1"
  12. DstPort 1
  13.       }
  14.     }
  15.     Line {
  16.       SrcBlock       "real part"
  17.       SrcPort       1
  18.       DstBlock       "Real"
  19.       DstPort       1
  20.     }
  21.     Line {
  22.       SrcBlock       "imag part1"
  23.       SrcPort       1
  24.       DstBlock       "Imag"
  25.       DstPort       1
  26.     }
  27.   }
  28. }
  29. Block {
  30.   BlockType   SubSystem
  31.   Name   "Raised-Cosinentransmit filter"
  32.   Ports   [1, 1]
  33.   Position   [300, 68, 380, 112]
  34.   ShowPortLabels   off
  35.   TreatAsAtomicUnit   off
  36.   MaskType   "R-C filter"
  37.   MaskDescription   "Design a raised cosine filter and use it to"
  38. " filter the input signal."
  39.   MaskHelp   "This block designs a raised cosine filter u"
  40. "sing the specified parameter. The filter is used to filter the input signal. "
  41. "You can optionally use the sinc filter in the filtering computation."
  42.   MaskPromptString   "Symbol interval (sec):|Computation sampling"
  43. " time (sec):|Filter rolloff factor:|Delay step (integer to multiply symbol in"
  44. "terval):|Filter type (FIR or IIR) / (Normal or Sqrt):|With or without sinc fi"
  45. "lter (1 or 0, suggest 1):"
  46.   MaskStyleString   "edit,edit,edit,edit,edit,edit"
  47.   MaskTunableValueString  "on,on,on,on,on,on"
  48.   MaskCallbackString   "|||||"
  49.   MaskEnableString   "on,on,on,on,on,on"
  50.   MaskVisibilityString   "on,on,on,on,on,on"
  51.   MaskToolTipString   "on,on,on,on,on,on"
  52.   MaskVarAliasString   ",,,,,"
  53.   MaskInitialization   "td=@1;if length(td)>1,off=td(2);td=td(1);el"
  54. "se,off=0;end;ts=@2;R=@3;delay=@4;fil=@5;[num,den]=rcosine(1/td(1),1/ts(1),fil"
  55. ",R,delay);x=@6/2;"
  56.   MaskDisplay   "disp('R-C\nfilter')"
  57.   MaskIconFrame   on
  58.   MaskIconOpaque   on
  59.   MaskIconRotate   "none"
  60.   MaskIconUnits   "autoscale"
  61.   MaskValueString   "1|.05|0.5|6|'FIR'|1"
  62.   System {
  63.     Name     "Raised-Cosinentransmit filter"
  64.     Location     [131, 545, 589, 761]
  65.     Open     off
  66.     ModelBrowserVisibility  off
  67.     ModelBrowserWidth     200
  68.     ScreenColor     "white"
  69.     PaperOrientation     "landscape"
  70.     PaperPositionMode     "auto"
  71.     PaperType     "usletter"
  72.     PaperUnits     "inches"
  73.     ZoomFactor     "100"
  74.     Block {
  75.       BlockType       Inport
  76.       Name       "in_1"
  77.       Position       [35, 30, 55, 50]
  78.     }
  79.     Block {
  80.       BlockType       DiscreteFilter
  81.       Name       "Filter"
  82.       Position       [255, 31, 310, 69]
  83.       Numerator       "num"
  84.       Denominator       "den"
  85.       SampleTime       "ts"
  86.     }
  87.     Block {
  88.       BlockType       SubSystem
  89.       Name       "Memory Impulse"
  90.       Ports       [2, 1]
  91.       Position       [155, 30, 225, 70]
  92.       ShowPortLabels       off
  93.       TreatAsAtomicUnit       off
  94.       MaskType       "Impulse"
  95.       MaskDescription       "1/sinc filter:"
  96.       MaskHelp       "When the threshold is greater than zero"
  97. ", this block outputs an impulse signal, which begins at the raising edge of t"
  98. "he second input and lasts the holding time. The impulse holds a constant ampl"
  99. "itude, which equals the amplitude of the first input at the begining of the i"
  100. "mpulse. A clock raising edge will trigger next impulse. When the threshold is"
  101. " less or equal to zero, this block faithfully outputs the first input."
  102.       MaskPromptString       "Holding time:|Threshold for clock pulse"
  103. ": "
  104.       MaskStyleString       "edit,edit"
  105.       MaskTunableValueString  "on,on"
  106.       MaskCallbackString      "|"
  107.       MaskEnableString       "on,on"
  108.       MaskVisibilityString    "on,on"
  109.       MaskToolTipString       "on,on"
  110.       MaskVarAliasString      ","
  111.       MaskInitialization      "ts=@1;thr=@2;x=thr>0;"
  112.       MaskDisplay       "disp('1/sinc')"
  113.       MaskIconFrame       on
  114.       MaskIconOpaque       on
  115.       MaskIconRotate       "none"
  116.       MaskIconUnits       "autoscale"
  117.       MaskValueString       "ts|x"
  118.       System {
  119. Name "Memory Impulse"
  120. Location [541, 520, 939, 745]
  121. Open off
  122. ModelBrowserVisibility off
  123. ModelBrowserWidth 200
  124. ScreenColor "white"
  125. PaperOrientation "landscape"
  126. PaperPositionMode "auto"
  127. PaperType "usletter"
  128. PaperUnits "inches"
  129. ZoomFactor "100"
  130. Block {
  131.   BlockType   Inport
  132.   Name   "in_1"
  133.   Position   [35, 185, 55, 205]
  134. }
  135. Block {
  136.   BlockType   Inport
  137.   Name   "in_2"
  138.   Position   [25, 30, 45, 50]
  139.   Port   "2"
  140. }
  141. Block {
  142.   BlockType   Constant
  143.   Name   "Constant"
  144.   Position   [210, 155, 230, 175]
  145.   Value   "x"
  146. }
  147. Block {
  148.   BlockType   Product
  149.   Name   "Product"
  150.   Ports   [2, 1]
  151.   Position   [155, 90, 180, 110]
  152. }
  153. Block {
  154.   BlockType   Switch
  155.   Name   "Switch"
  156.   Position   [295, 124, 320, 156]
  157.   Threshold   ".5"
  158. }
  159. Block {
  160.   BlockType   ZeroOrderHold
  161.   Name   "Zero-OrdernHold"
  162.   Position   [205, 84, 240, 116]
  163.   SampleTime   "ts"
  164. }
  165. Block {
  166.   BlockType   SubSystem
  167.   Name   "discretenRising edgendetector"
  168.   Ports   [1, 1]
  169.   Position   [65, 26, 120, 54]
  170.   ShowPortLabels   off
  171.   TreatAsAtomicUnit   off
  172.   MaskType   "Edge Detection"
  173.   MaskDescription   "Rising edge detection:"
  174.   MaskHelp   "When the input signal rising edge p"
  175. "assed the given shreshold, this block outputs one, otherwise outputs zero."
  176.   MaskPromptString   "Threshold:|Sampling time:"
  177.   MaskStyleString   "edit,edit"
  178.   MaskTunableValueString  "on,on"
  179.   MaskCallbackString   "|"
  180.   MaskEnableString   "on,on"
  181.   MaskVisibilityString   "on,on"
  182.   MaskToolTipString   "on,on"
  183.   MaskVarAliasString   ","
  184.   MaskInitialization   "thld=@1;ts=@2;"
  185.   MaskDisplay   "disp('Edge\nDetector')"
  186.   MaskIconFrame   on
  187.   MaskIconOpaque   on
  188.   MaskIconRotate   "none"
  189.   MaskIconUnits   "autoscale"
  190.   MaskValueString   "thr|ts"
  191.   System {
  192.     Name     "discretenRising edgendetector"
  193.     Location     [419, 521, 808, 713]
  194.     Open     off
  195.     ModelBrowserVisibility  off
  196.     ModelBrowserWidth     200
  197.     ScreenColor     "white"
  198.     PaperOrientation     "landscape"
  199.     PaperPositionMode     "auto"
  200.     PaperType     "usletter"
  201.     PaperUnits     "inches"
  202.     ZoomFactor     "100"
  203.     Block {
  204.     BlockType     Inport
  205.     Name     "in_1"
  206.     Position     [10, 15, 30, 35]
  207.     }
  208.     Block {
  209.     BlockType     RelationalOperator
  210.     Name     "RelationalnOperator"
  211.     Position     [135, 18, 165, 42]
  212.     }
  213.     Block {
  214.     BlockType     RelationalOperator
  215.     Name     "RelationalnOperator1"
  216.     Position     [200, 88, 230, 112]
  217.     }
  218.     Block {
  219.     BlockType     RelationalOperator
  220.     Name     "RelationalnOperator2"
  221.     Position     [265, 23, 295, 47]
  222.     Operator     ">"
  223.     }
  224.     Block {
  225.     BlockType     UnitDelay
  226.     Name     "Unit Delay"
  227.     Position     [120, 87, 170, 103]
  228.     SampleTime     "ts"
  229.     }
  230.     Block {
  231.     BlockType     Constant
  232.     Name     "one1"
  233.     Position     [30, 135, 60, 155]
  234.     Value     "thld"
  235.     }
  236.     Block {
  237.     BlockType     Outport
  238.     Name     "out_1"
  239.     Position     [340, 25, 360, 45]
  240.     }
  241.     Line {
  242.     SrcBlock     "RelationalnOperator2"
  243.     SrcPort     1
  244.     DstBlock     "out_1"
  245.     DstPort     1
  246.     }
  247.     Line {
  248.     SrcBlock     "RelationalnOperator1"
  249.     SrcPort     1
  250.     Points     [5, 0; 0, -60]
  251.     DstBlock     "RelationalnOperator2"
  252.     DstPort     2
  253.     }
  254.     Line {
  255.     SrcBlock     "RelationalnOperator"
  256.     SrcPort     1
  257.     DstBlock     "RelationalnOperator2"
  258.     DstPort     1
  259.     }
  260.     Line {
  261.     SrcBlock     "one1"
  262.     SrcPort     1
  263.     Points     [35, 0]
  264.     Branch {
  265.     Points     [0, -110]
  266.     DstBlock     "RelationalnOperator"
  267.     DstPort     2
  268.     }
  269.     Branch {
  270.     Points     [80, 0; 0, -40]
  271.     DstBlock     "RelationalnOperator1"
  272.     DstPort     2
  273.     }
  274.     }
  275.     Line {
  276.     SrcBlock     "Unit Delay"
  277.     SrcPort     1
  278.     DstBlock     "RelationalnOperator1"
  279.     DstPort     1
  280.     }
  281.     Line {
  282.     SrcBlock     "in_1"
  283.     SrcPort     1
  284.     Points     [10, 0]
  285.     Branch {
  286.     DstBlock     "RelationalnOperator"
  287.     DstPort     1
  288.     }
  289.     Branch {
  290.     Points     [0, 70]
  291.     DstBlock     "Unit Delay"
  292.     DstPort     1
  293.     }
  294.     }
  295.   }
  296. }
  297. Block {
  298.   BlockType   Outport
  299.   Name   "out_1"
  300.   Position   [355, 130, 375, 150]
  301. }
  302. Line {
  303.   SrcBlock   "Zero-OrdernHold"
  304.   SrcPort   1
  305.   Points   [15, 0; 0, 30]
  306.   DstBlock   "Switch"
  307.   DstPort   1
  308. }
  309. Line {
  310.   SrcBlock   "Product"
  311.   SrcPort   1
  312.   DstBlock   "Zero-OrdernHold"
  313.   DstPort   1
  314. }
  315. Line {
  316.   SrcBlock   "in_1"
  317.   SrcPort   1
  318.   Points   [35, 0]
  319.   Branch {
  320.     Points     [185, 0]
  321.     DstBlock     "Switch"
  322.     DstPort     3
  323.   }
  324.   Branch {
  325.     Points     [0, -90]
  326.     DstBlock     "Product"
  327.     DstPort     2
  328.   }
  329. }
  330. Line {
  331.   SrcBlock   "Switch"
  332.   SrcPort   1
  333.   DstBlock   "out_1"
  334.   DstPort   1
  335. }
  336. Line {
  337.   SrcBlock   "Constant"
  338.   SrcPort   1
  339.   Points   [15, 0; 0, -25]
  340.   DstBlock   "Switch"
  341.   DstPort   2
  342. }
  343. Line {
  344.   SrcBlock   "discretenRising edgendetector"
  345.   SrcPort   1
  346.   Points   [5, 0; 0, 55]
  347.   DstBlock   "Product"
  348.   DstPort   1
  349. }
  350. Line {
  351.   SrcBlock   "in_2"
  352.   SrcPort   1
  353.   DstBlock   "discretenRising edgendetector"
  354.   DstPort   1
  355. }
  356.       }
  357.     }
  358.     Block {
  359.       BlockType       SubSystem
  360.       Name       "Pulses deividensame sample time1"
  361.       Ports       [0, 1]
  362.       Position       [35, 71, 95, 109]
  363.       ShowPortLabels       off
  364.       TreatAsAtomicUnit       off
  365.       MaskType       "Pulse generator"
  366.       MaskDescription       "Vector pulses with sample rate of each "
  367. "pulse as Sample_time ./Divider. "
  368.       MaskHelp       "This block generator a vector pulses. T"
  369. "he output length is the same as the vector defined in "Divider". The ith el"
  370. "ement of the output has the sample time Sample_time/Divider(i). All elements "
  371. "in "Divider" must be integers."
  372.       MaskPromptString       "Sample time (scalar, sec):|Divider (int"
  373. "eger vector):|Offset (have same dimension as Divider:"
  374.       MaskStyleString       "edit,edit,edit"
  375.       MaskTunableValueString  "on,on,on"
  376.       MaskCallbackString      "||"
  377.       MaskEnableString       "on,on,on"
  378.       MaskVisibilityString    "on,on,on"
  379.       MaskToolTipString       "on,on,on"
  380.       MaskVarAliasString      ",,"
  381.       MaskInitialization      "samp_time=@1;out_divid=@2;offset=@3;"
  382.       MaskDisplay       "disp('Vector\nPulse')"
  383.       MaskIconFrame       on
  384.       MaskIconOpaque       on
  385.       MaskIconRotate       "none"
  386.       MaskIconUnits       "autoscale"
  387.       MaskValueString       "td|1|off"
  388.       System {
  389. Name "Pulses deividensame sample time1"
  390. Location [55, 192, 283, 286]
  391. Open off
  392. ModelBrowserVisibility off
  393. ModelBrowserWidth 200
  394. ScreenColor "white"
  395. PaperOrientation "landscape"
  396. PaperPositionMode "auto"
  397. PaperType "usletter"
  398. PaperUnits "inches"
  399. ZoomFactor "100"
  400. Block {
  401.   BlockType   "S-Function"
  402.   Name   "S-function1"
  403.   Ports   [1, 1]
  404.   Position   [40, 31, 105, 59]
  405.   FunctionName   "homopuls"
  406.   Parameters   "samp_time, out_divid, offset"
  407. }
  408. Block {
  409.   BlockType   Outport
  410.   Name   "Outport"
  411.   Position   [160, 35, 180, 55]
  412. }
  413. Line {
  414.   SrcBlock   "S-function1"
  415.   SrcPort   1
  416.   DstBlock   "Outport"
  417.   DstPort   1
  418. }
  419.       }
  420.     }
  421.     Block {
  422.       BlockType       Outport
  423.       Name       "out_1"
  424.       Position       [330, 40, 350, 60]
  425.     }
  426.     Line {
  427.       SrcBlock       "Pulses deividensame sample time1"
  428.       SrcPort       1
  429.       Points       [15, 0; 0, -30]
  430.       DstBlock       "Memory Impulse"
  431.       DstPort       2
  432.     }
  433.     Line {
  434.       SrcBlock       "Memory Impulse"
  435.       SrcPort       1
  436.       DstBlock       "Filter"
  437.       DstPort       1
  438.     }
  439.     Line {
  440.       SrcBlock       "in_1"
  441.       SrcPort       1
  442.       DstBlock       "Memory Impulse"
  443.       DstPort       1
  444.     }
  445.     Line {
  446.       SrcBlock       "Filter"
  447.       SrcPort       1
  448.       DstBlock       "out_1"
  449.       DstPort       1
  450.     }
  451.   }
  452. }
  453. Block {
  454.   BlockType   SubSystem
  455.   Name   "Raised-Cosinentransmit filter_"
  456.   Ports   [1, 1]
  457.   Position   [300, 228, 380, 272]
  458.   NamePlacement   "alternate"
  459.   ShowPortLabels   off
  460.   TreatAsAtomicUnit   off
  461.   MaskType   "R-C filter"
  462.   MaskDescription   "Design a raised cosine filter and use it to"
  463. " filter the input signal."
  464.   MaskHelp   "This block designs a raised cosine filter u"
  465. "sing the specified parameter. The filter is used to filter the input signal. "
  466. "You can optionally use the sinc filter in the filtering computation."
  467.   MaskPromptString   "Symbol interval (sec):|Computation sampling"
  468. " time (sec):|Filter rolloff factor:|Delay step (integer to multiply symbol in"
  469. "terval):|Filter type (FIR or IIR) / (Normal or Sqrt):|With or without sinc fi"
  470. "lter (1 or 0, suggest 1):"
  471.   MaskStyleString   "edit,edit,edit,edit,edit,edit"
  472.   MaskTunableValueString  "on,on,on,on,on,on"
  473.   MaskCallbackString   "|||||"
  474.   MaskEnableString   "on,on,on,on,on,on"
  475.   MaskVisibilityString   "on,on,on,on,on,on"
  476.   MaskToolTipString   "on,on,on,on,on,on"
  477.   MaskVarAliasString   ",,,,,"
  478.   MaskInitialization   "td=@1;if length(td)>1,off=td(2);td=td(1);el"
  479. "se,off=0;end;ts=@2;R=@3;delay=@4;fil=@5;[num,den]=rcosine(1/td(1),1/ts(1),fil"
  480. ",R,delay);x=@6/2;"
  481.   MaskDisplay   "disp('R-C\nfilter')"
  482.   MaskIconFrame   on
  483.   MaskIconOpaque   on
  484.   MaskIconRotate   "none"
  485.   MaskIconUnits   "autoscale"
  486.   MaskValueString   "1|.05|0.5|6|'FIR'|1"
  487.   System {
  488.     Name     "Raised-Cosinentransmit filter_"
  489.     Location     [131, 545, 589, 761]
  490.     Open     off
  491.     ModelBrowserVisibility  off
  492.     ModelBrowserWidth     200
  493.     ScreenColor     "white"
  494.     PaperOrientation     "landscape"
  495.     PaperPositionMode     "auto"
  496.     PaperType     "usletter"
  497.     PaperUnits     "inches"
  498.     ZoomFactor     "100"
  499.     Block {
  500.       BlockType       Inport
  501.       Name       "in_1"
  502.       Position       [35, 30, 55, 50]
  503.     }
  504.     Block {
  505.       BlockType       DiscreteFilter
  506.       Name       "Filter"
  507.       Position       [255, 31, 310, 69]
  508.       Numerator       "num"
  509.       Denominator       "den"
  510.       SampleTime       "ts"
  511.     }
  512.     Block {
  513.       BlockType       SubSystem
  514.       Name       "Memory Impulse"
  515.       Ports       [2, 1]
  516.       Position       [155, 30, 225, 70]
  517.       ShowPortLabels       off
  518.       TreatAsAtomicUnit       off
  519.       MaskType       "Impulse"
  520.       MaskDescription       "1/sinc filter:"
  521.       MaskHelp       "When the threshold is greater than zero"
  522. ", this block outputs an impulse signal, which begins at the raising edge of t"
  523. "he second input and lasts the holding time. The impulse holds a constant ampl"
  524. "itude, which equals the amplitude of the first input at the begining of the i"
  525. "mpulse. A clock raising edge will trigger next impulse. When the threshold is"
  526. " less or equal to zero, this block faithfully outputs the first input."
  527.       MaskPromptString       "Holding time:|Threshold for clock pulse"
  528. ": "
  529.       MaskStyleString       "edit,edit"
  530.       MaskTunableValueString  "on,on"
  531.       MaskCallbackString      "|"
  532.       MaskEnableString       "on,on"
  533.       MaskVisibilityString    "on,on"
  534.       MaskToolTipString       "on,on"
  535.       MaskVarAliasString      ","
  536.       MaskInitialization      "ts=@1;thr=@2;x=thr>0;"
  537.       MaskDisplay       "disp('1/sinc')"
  538.       MaskIconFrame       on
  539.       MaskIconOpaque       on
  540.       MaskIconRotate       "none"
  541.       MaskIconUnits       "autoscale"
  542.       MaskValueString       "ts|x"
  543.       System {
  544. Name "Memory Impulse"
  545. Location [541, 520, 939, 745]
  546. Open off
  547. ModelBrowserVisibility off
  548. ModelBrowserWidth 200
  549. ScreenColor "white"
  550. PaperOrientation "landscape"
  551. PaperPositionMode "auto"
  552. PaperType "usletter"
  553. PaperUnits "inches"
  554. ZoomFactor "100"
  555. Block {
  556.   BlockType   Inport
  557.   Name   "in_1"
  558.   Position   [35, 185, 55, 205]
  559. }
  560. Block {
  561.   BlockType   Inport
  562.   Name   "in_2"
  563.   Position   [25, 30, 45, 50]
  564.   Port   "2"
  565. }
  566. Block {
  567.   BlockType   Constant
  568.   Name   "Constant"
  569.   Position   [210, 155, 230, 175]
  570.   Value   "x"
  571. }
  572. Block {
  573.   BlockType   Product
  574.   Name   "Product"
  575.   Ports   [2, 1]
  576.   Position   [155, 90, 180, 110]
  577. }
  578. Block {
  579.   BlockType   Switch
  580.   Name   "Switch"
  581.   Position   [295, 124, 320, 156]
  582.   Threshold   ".5"
  583. }
  584. Block {
  585.   BlockType   ZeroOrderHold
  586.   Name   "Zero-OrdernHold"
  587.   Position   [205, 84, 240, 116]
  588.   SampleTime   "ts"
  589. }
  590. Block {
  591.   BlockType   SubSystem
  592.   Name   "discretenRising edgendetector"
  593.   Ports   [1, 1]
  594.   Position   [65, 26, 120, 54]
  595.   ShowPortLabels   off
  596.   TreatAsAtomicUnit   off
  597.   MaskType   "Edge Detection"
  598.   MaskDescription   "Rising edge detection:"
  599.   MaskHelp   "When the input signal rising edge p"
  600. "assed the given shreshold, this block outputs one, otherwise outputs zero."
  601.   MaskPromptString   "Threshold:|Sampling time:"
  602.   MaskStyleString   "edit,edit"
  603.   MaskTunableValueString  "on,on"
  604.   MaskCallbackString   "|"
  605.   MaskEnableString   "on,on"
  606.   MaskVisibilityString   "on,on"
  607.   MaskToolTipString   "on,on"
  608.   MaskVarAliasString   ","
  609.   MaskInitialization   "thld=@1;ts=@2;"
  610.   MaskDisplay   "disp('Edge\nDetector')"
  611.   MaskIconFrame   on
  612.   MaskIconOpaque   on
  613.   MaskIconRotate   "none"
  614.   MaskIconUnits   "autoscale"
  615.   MaskValueString   "thr|ts"
  616.   System {
  617.     Name     "discretenRising edgendetector"
  618.     Location     [419, 521, 808, 713]
  619.     Open     off
  620.     ModelBrowserVisibility  off
  621.     ModelBrowserWidth     200
  622.     ScreenColor     "white"
  623.     PaperOrientation     "landscape"
  624.     PaperPositionMode     "auto"
  625.     PaperType     "usletter"
  626.     PaperUnits     "inches"
  627.     ZoomFactor     "100"
  628.     Block {
  629.     BlockType     Inport
  630.     Name     "in_1"
  631.     Position     [10, 15, 30, 35]
  632.     }
  633.     Block {
  634.     BlockType     RelationalOperator
  635.     Name     "RelationalnOperator"
  636.     Position     [135, 18, 165, 42]
  637.     }
  638.     Block {
  639.     BlockType     RelationalOperator
  640.     Name     "RelationalnOperator1"
  641.     Position     [200, 88, 230, 112]
  642.     }
  643.     Block {
  644.     BlockType     RelationalOperator
  645.     Name     "RelationalnOperator2"
  646.     Position     [265, 23, 295, 47]
  647.     Operator     ">"
  648.     }
  649.     Block {
  650.     BlockType     UnitDelay
  651.     Name     "Unit Delay"
  652.     Position     [120, 87, 170, 103]
  653.     SampleTime     "ts"
  654.     }
  655.     Block {
  656.     BlockType     Constant
  657.     Name     "one1"
  658.     Position     [30, 135, 60, 155]
  659.     Value     "thld"
  660.     }
  661.     Block {
  662.     BlockType     Outport
  663.     Name     "out_1"
  664.     Position     [340, 25, 360, 45]
  665.     }
  666.     Line {
  667.     SrcBlock     "RelationalnOperator2"
  668.     SrcPort     1
  669.     DstBlock     "out_1"
  670.     DstPort     1
  671.     }
  672.     Line {
  673.     SrcBlock     "RelationalnOperator1"
  674.     SrcPort     1
  675.     Points     [5, 0; 0, -60]
  676.     DstBlock     "RelationalnOperator2"
  677.     DstPort     2
  678.     }
  679.     Line {
  680.     SrcBlock     "RelationalnOperator"
  681.     SrcPort     1
  682.     DstBlock     "RelationalnOperator2"
  683.     DstPort     1
  684.     }
  685.     Line {
  686.     SrcBlock     "one1"
  687.     SrcPort     1
  688.     Points     [35, 0]
  689.     Branch {
  690.     Points     [0, -110]
  691.     DstBlock     "RelationalnOperator"
  692.     DstPort     2
  693.     }
  694.     Branch {
  695.     Points     [80, 0; 0, -40]
  696.     DstBlock     "RelationalnOperator1"
  697.     DstPort     2
  698.     }
  699.     }
  700.     Line {
  701.     SrcBlock     "Unit Delay"
  702.     SrcPort     1
  703.     DstBlock     "RelationalnOperator1"
  704.     DstPort     1
  705.     }
  706.     Line {
  707.     SrcBlock     "in_1"
  708.     SrcPort     1
  709.     Points     [10, 0]
  710.     Branch {
  711.     DstBlock     "RelationalnOperator"
  712.     DstPort     1
  713.     }
  714.     Branch {
  715.     Points     [0, 70]
  716.     DstBlock     "Unit Delay"
  717.     DstPort     1
  718.     }
  719.     }
  720.   }
  721. }
  722. Block {
  723.   BlockType   Outport
  724.   Name   "out_1"
  725.   Position   [355, 130, 375, 150]
  726. }
  727. Line {
  728.   SrcBlock   "Zero-OrdernHold"
  729.   SrcPort   1
  730.   Points   [15, 0; 0, 30]
  731.   DstBlock   "Switch"
  732.   DstPort   1
  733. }
  734. Line {
  735.   SrcBlock   "Product"
  736.   SrcPort   1
  737.   DstBlock   "Zero-OrdernHold"
  738.   DstPort   1
  739. }
  740. Line {
  741.   SrcBlock   "in_1"
  742.   SrcPort   1
  743.   Points   [35, 0]
  744.   Branch {
  745.     Points     [185, 0]
  746.     DstBlock     "Switch"
  747.     DstPort     3
  748.   }
  749.   Branch {
  750.     Points     [0, -90]
  751.     DstBlock     "Product"
  752.     DstPort     2
  753.   }
  754. }
  755. Line {
  756.   SrcBlock   "Switch"
  757.   SrcPort   1
  758.   DstBlock   "out_1"
  759.   DstPort   1
  760. }
  761. Line {
  762.   SrcBlock   "Constant"
  763.   SrcPort   1
  764.   Points   [15, 0; 0, -25]
  765.   DstBlock   "Switch"
  766.   DstPort   2
  767. }
  768. Line {
  769.   SrcBlock   "discretenRising edgendetector"
  770.   SrcPort   1
  771.   Points   [5, 0; 0, 55]
  772.   DstBlock   "Product"
  773.   DstPort   1
  774. }
  775. Line {
  776.   SrcBlock   "in_2"
  777.   SrcPort   1
  778.   DstBlock   "discretenRising edgendetector"
  779.   DstPort   1
  780. }
  781.       }
  782.     }
  783.     Block {
  784.       BlockType       SubSystem
  785.       Name       "Pulses deividensame sample time1"
  786.       Ports       [0, 1]
  787.       Position       [35, 71, 95, 109]
  788.       ShowPortLabels       off
  789.       TreatAsAtomicUnit       off
  790.       MaskType       "Pulse generator"
  791.       MaskDescription       "Vector pulses with sample rate of each "
  792. "pulse as Sample_time ./Divider. "
  793.       MaskHelp       "This block generator a vector pulses. T"
  794. "he output length is the same as the vector defined in "Divider". The ith el"
  795. "ement of the output has the sample time Sample_time/Divider(i). All elements "
  796. "in "Divider" must be integers."
  797.       MaskPromptString       "Sample time (scalar, sec):|Divider (int"
  798. "eger vector):|Offset (have same dimension as Divider:"
  799.       MaskStyleString       "edit,edit,edit"
  800.       MaskTunableValueString  "on,on,on"
  801.       MaskCallbackString      "||"
  802.       MaskEnableString       "on,on,on"
  803.       MaskVisibilityString    "on,on,on"
  804.       MaskToolTipString       "on,on,on"
  805.       MaskVarAliasString      ",,"
  806.       MaskInitialization      "samp_time=@1;out_divid=@2;offset=@3;"
  807.       MaskDisplay       "disp('Vector\nPulse')"
  808.       MaskIconFrame       on
  809.       MaskIconOpaque       on
  810.       MaskIconRotate       "none"
  811.       MaskIconUnits       "autoscale"
  812.       MaskValueString       "td|1|off"
  813.       System {
  814. Name "Pulses deividensame sample time1"
  815. Location [55, 192, 283, 286]
  816. Open off
  817. ModelBrowserVisibility off
  818. ModelBrowserWidth 200
  819. ScreenColor "white"
  820. PaperOrientation "landscape"
  821. PaperPositionMode "auto"
  822. PaperType "usletter"
  823. PaperUnits "inches"
  824. ZoomFactor "100"
  825. Block {
  826.   BlockType   "S-Function"
  827.   Name   "S-function1"
  828.   Ports   [1, 1]
  829.   Position   [40, 31, 105, 59]
  830.   FunctionName   "homopuls"
  831.   Parameters   "samp_time, out_divid, offset"
  832. }
  833. Block {
  834.   BlockType   Outport
  835.   Name   "Outport"
  836.   Position   [160, 35, 180, 55]
  837. }
  838. Line {
  839.   SrcBlock   "S-function1"
  840.   SrcPort   1
  841.   DstBlock   "Outport"
  842.   DstPort   1
  843. }
  844.       }
  845.     }
  846.     Block {
  847.       BlockType       Outport
  848.       Name       "out_1"
  849.       Position       [330, 40, 350, 60]
  850.     }
  851.     Line {
  852.       SrcBlock       "Pulses deividensame sample time1"
  853.       SrcPort       1
  854.       Points       [15, 0; 0, -30]
  855.       DstBlock       "Memory Impulse"
  856.       DstPort       2
  857.     }
  858.     Line {
  859.       SrcBlock       "Memory Impulse"
  860.       SrcPort       1
  861.       DstBlock       "Filter"
  862.       DstPort       1
  863.     }
  864.     Line {
  865.       SrcBlock       "in_1"
  866.       SrcPort       1
  867.       DstBlock       "Memory Impulse"
  868.       DstPort       1
  869.     }
  870.     Line {
  871.       SrcBlock       "Filter"
  872.       SrcPort       1
  873.       DstBlock       "out_1"
  874.       DstPort       1
  875.     }
  876.   }
  877. }
  878. Block {
  879.   BlockType   SubSystem
  880.   Name   "Rolloff"
  881.   Ports   []
  882.   Position   [290, 14, 408, 41]
  883.   BackgroundColor   "lightBlue"
  884.   ShowName   off
  885.   OpenFcn   "setrloff"
  886.   FontSize   12
  887.   FontAngle   "italic"
  888.   ShowPortLabels   off
  889.   TreatAsAtomicUnit   off
  890.   MaskType   "rolloff"
  891.   MaskDisplay   "disp('Rolloff-Factor')"
  892.   MaskIconFrame   on
  893.   MaskIconOpaque   on
  894.   MaskIconRotate   "none"
  895.   MaskIconUnits   "autoscale"
  896.   System {
  897.     Name     "Rolloff"
  898.     Location     [136, 230, 381, 439]
  899.     Open     off
  900.     ModelBrowserVisibility  off
  901.     ModelBrowserWidth     200
  902.     ScreenColor     "cyan"
  903.     PaperOrientation     "landscape"
  904.     PaperPositionMode     "auto"
  905.     PaperType     "A4"
  906.     PaperUnits     "centimeters"
  907.     ZoomFactor     "100"
  908.   }
  909. }
  910. Block {
  911.   BlockType   SubSystem
  912.   Name   "Source"
  913.   Ports   [0, 2]
  914.   Position   [25, 111, 55, 164]
  915.   ShowPortLabels   off
  916.   TreatAsAtomicUnit   off
  917.   System {
  918.     Name     "Source"
  919.     Location     [19, 379, 556, 618]
  920.     Open     off
  921.     ModelBrowserVisibility  off
  922.     ModelBrowserWidth     200
  923.     ScreenColor     "white"
  924.     PaperOrientation     "landscape"
  925.     PaperPositionMode     "auto"
  926.     PaperType     "usletter"
  927.     PaperUnits     "inches"
  928.     ZoomFactor     "100"
  929.     Block {
  930.       BlockType       SubSystem
  931.       Name       "Bits"
  932.       Ports       [0, 1]
  933.       Position       [25, 48, 85, 92]
  934.       ShowPortLabels       off
  935.       TreatAsAtomicUnit       off
  936.       MaskType       "Read from workspace"
  937.       MaskDescription       "Read from a workspace variable atnsamp"
  938. "ling time point."
  939.       MaskHelp       "This block reads from a workspace varia"
  940. "ble at a given sample time. The column number is the block output vector leng"
  941. "th. When the simulation reaches the end of the variable (eof), the block will"
  942. " cyclically output from the first row of the variable or output zeros based o"
  943. "n the repeat flag entree."
  944.       MaskPromptString       "Variable (column_number=block_output_le"
  945. "ngth):|Data output sample time (sec):|Repeat flag (1: repeat read, 0: output "
  946. "zeros after eof).|Initial output:"
  947.       MaskStyleString       "edit,edit,edit,edit"
  948.       MaskTunableValueString  "on,on,on,on"
  949.       MaskCallbackString      "|||"
  950.       MaskEnableString       "on,on,on,on"
  951.       MaskVisibilityString    "on,on,on,on"
  952.       MaskToolTipString       "on,on,on,on"
  953.       MaskVarAliasString      ",,,"
  954.       MaskInitialization      "var=@1;td=@2;ts=td(1);if (length(td)>=2"
  955. "),off=td(2);else off=0;end;cyc=@3;ini=@4;[x,y]=srcsicon(7);"
  956.       MaskDisplay       "plot(0,0,100,100,x,y);disp('Rd wksp')"
  957.       MaskIconFrame       on
  958.       MaskIconOpaque       on
  959.       MaskIconRotate       "none"
  960.       MaskIconUnits       "autoscale"
  961.       MaskValueString       "randint(2000,1,2)|.5|1|1"
  962.       System {
  963. Name "Bits"
  964. Location [355, 528, 737, 675]
  965. Open off
  966. ModelBrowserVisibility off
  967. ModelBrowserWidth 200
  968. ScreenColor "white"
  969. PaperOrientation "landscape"
  970. PaperPositionMode "auto"
  971. PaperType "usletter"
  972. PaperUnits "inches"
  973. ZoomFactor "100"
  974. Block {
  975.   BlockType   "S-Function"
  976.   Name   "Message source"
  977.   Ports   [1, 1]
  978.   Position   [180, 53, 255, 97]
  979.   BackgroundColor   "yellow"
  980.   FunctionName   "trigwksp"
  981.   Parameters   "var,thd,cyclFlag,ini"
  982.   MaskType   "Read from workspace"
  983.   MaskDescription   "The raising edge of input pulse tri"
  984. "gger the block output the next row from the workspace variable."
  985.   MaskHelp   "This block reads the data from a wo"
  986. "rkspace variable. The output is refreshed at the raising edge of the input pu"
  987. "lse."
  988.   MaskPromptString   "Read the variable:|Threshold for th"
  989. "e input pulse:|Cyclic read variable (1) or amend zeros (0).|Output before fir"
  990. "st trigger:"
  991.   MaskStyleString   "edit,edit,edit,edit"
  992.   MaskTunableValueString  "on,on,on,on"
  993.   MaskCallbackString   "|||"
  994.   MaskEnableString   "on,on,on,on"
  995.   MaskVisibilityString   "on,on,on,on"
  996.   MaskToolTipString   "on,on,on,on"
  997.   MaskVarAliasString   ",,,"
  998.   MaskInitialization   "var=@1;thd=@2;cyclFlag=@3;ini=@4;"
  999.   MaskDisplay   "disp('Triggered\nread')"
  1000.   MaskIconFrame   on
  1001.   MaskIconOpaque   on
  1002.   MaskIconRotate   "none"
  1003.   MaskIconUnits   "autoscale"
  1004.   MaskValueString   "var|.1|cyc|ini"
  1005. }
  1006. Block {
  1007.   BlockType   SubSystem
  1008.   Name   "Pulses deividensame sample time1"
  1009.   Ports   [0, 1]
  1010.   Position   [50, 56, 110, 94]
  1011.   ShowPortLabels   off
  1012.   TreatAsAtomicUnit   off
  1013.   MaskType   "Pulse generator"
  1014.   MaskDescription   "Vector pulses with sample rate of e"
  1015. "ach pulse as Sample_time ./Divider. "
  1016.   MaskHelp   "This block generator a vector pulse"
  1017. "s. The output length is the same as the vector defined in "Divider". The it"
  1018. "h element of the output has the sample time Sample_time/Divider(i). All eleme"
  1019. "nts in "Divider" must be integers."
  1020.   MaskPromptString   "Sample time (scalar, sec):|Divider "
  1021. "(integer vector):|Offset (have same dimension as Divider:"
  1022.   MaskStyleString   "edit,edit,edit"
  1023.   MaskTunableValueString  "on,on,on"
  1024.   MaskCallbackString   "||"
  1025.   MaskEnableString   "on,on,on"
  1026.   MaskVisibilityString   "on,on,on"
  1027.   MaskToolTipString   "on,on,on"
  1028.   MaskVarAliasString   ",,"
  1029.   MaskInitialization   "samp_time=@1;out_divid=@2;offset=@3"
  1030. ";"
  1031.   MaskDisplay   "disp('Vector\nPulse')"
  1032.   MaskIconFrame   on
  1033.   MaskIconOpaque   on
  1034.   MaskIconRotate   "none"
  1035.   MaskIconUnits   "autoscale"
  1036.   MaskValueString   "ts|1|off"
  1037.   System {
  1038.     Name     "Pulses deividensame sample time1"
  1039.     Location     [55, 192, 283, 286]
  1040.     Open     off
  1041.     ModelBrowserVisibility  off
  1042.     ModelBrowserWidth     200
  1043.     ScreenColor     "white"
  1044.     PaperOrientation     "landscape"
  1045.     PaperPositionMode     "auto"
  1046.     PaperType     "usletter"
  1047.     PaperUnits     "inches"
  1048.     ZoomFactor     "100"
  1049.     Block {
  1050.     BlockType     "S-Function"
  1051.     Name     "S-function1"
  1052.     Ports     [0, 1]
  1053.     Position     [40, 31, 105, 59]
  1054.     FunctionName     "homopuls"
  1055.     Parameters     "samp_time, out_divid, offset"
  1056.     }
  1057.     Block {
  1058.     BlockType     Outport
  1059.     Name     "Outport"
  1060.     Position     [160, 35, 180, 55]
  1061.     }
  1062.     Line {
  1063.     SrcBlock     "S-function1"
  1064.     SrcPort     1
  1065.     DstBlock     "Outport"
  1066.     DstPort     1
  1067.     }
  1068.   }
  1069. }
  1070. Block {
  1071.   BlockType   Outport
  1072.   Name   "out_1"
  1073.   Position   [295, 65, 315, 85]
  1074. }
  1075. Line {
  1076.   SrcBlock   "Message source"
  1077.   SrcPort   1
  1078.   DstBlock   "out_1"
  1079.   DstPort   1
  1080. }
  1081. Line {
  1082.   SrcBlock   "Pulses deividensame sample time1"
  1083.   SrcPort   1
  1084.   DstBlock   "Message source"
  1085.   DstPort   1
  1086. }
  1087.       }
  1088.     }
  1089.     Block {
  1090.       BlockType       "S-Function"
  1091.       Name       "D/A "
  1092.       Ports       [1, 1]
  1093.       Position       [370, 128, 450, 172]
  1094.       FunctionName       "simbi2de"
  1095.       Parameters       "p"
  1096.       MaskType       "Base M vector to decimal integer"
  1097.       MaskDescription       "Convert base M integer with eachnposit"
  1098. "ion in the input vector into scalar decimal output."
  1099.       MaskHelp       "This block convert the base M vector in"
  1100. "to scalar decimal integer output. Each element of the input vector is one pos"
  1101. "ition of the digit of the base M integer. The 1st element in the input vector"
  1102. " contains the 1's position. The 2nd element in the input vector contains the "
  1103. "M's position."
  1104.       MaskPromptString       "Input integer base M:"
  1105.       MaskStyleString       "edit"
  1106.       MaskTunableValueString  "on"
  1107.       MaskEnableString       "on"
  1108.       MaskVisibilityString    "on"
  1109.       MaskToolTipString       "on"
  1110.       MaskInitialization      "p=@1;"
  1111.       MaskDisplay       "disp('Vec to sca\nconverter')"
  1112.       MaskIconFrame       on
  1113.       MaskIconOpaque       on
  1114.       MaskIconRotate       "none"
  1115.       MaskIconUnits       "autoscale"
  1116.       MaskValueString       "2"
  1117.     }
  1118.     Block {
  1119.       BlockType       Terminator
  1120.       Name       "Terminator"
  1121.       Position       [480, 190, 500, 210]
  1122.     }
  1123.     Block {
  1124.       BlockType       SubSystem
  1125.       Name       "clock"
  1126.       Ports       [0, 1]
  1127.       Position       [35, 147, 70, 183]
  1128.       ShowPortLabels       off
  1129.       TreatAsAtomicUnit       off
  1130.       MaskType       "Pulse Generator"
  1131.       MaskDescription       "Pulse Generator."
  1132.       MaskHelp       "Pulse generator which ensures pulse\nt"
  1133. "ransitions are hit. Provides a vector of pulses when the height is entered as"
  1134. " a vector.\nUnmask to see how it works."
  1135.       MaskPromptString       "Pulse period (secs):|Pulse width:|Pulse"
  1136. " height:|Pulse start time:"
  1137.       MaskStyleString       "edit,edit,edit,edit"
  1138.       MaskTunableValueString  "on,on,on,on"
  1139.       MaskCallbackString      "|||"
  1140.       MaskEnableString       "on,on,on,on"
  1141.       MaskVisibilityString    "on,on,on,on"
  1142.       MaskToolTipString       "on,on,on,on"
  1143.       MaskVarAliasString      ",,,"
  1144.       MaskInitialization      "Ts=@1; du=@2; ht=@3; stt=@4; ini=ones(l"
  1145. "ength(ht),1); st1=rem(stt,Ts); st2=rem(stt+du,Ts);if(Ts<=1.2*du),ini=zeros(le"
  1146. "ngth(ht),1);end;"
  1147.       MaskDisplay       "plot(0,0,100,100,[90,75,75,60,60,35,35,"
  1148. "20,20,10],[20,20,80,80,20,20,80,80,20,20])"
  1149.       MaskIconFrame       on
  1150.       MaskIconOpaque       on
  1151.       MaskIconRotate       "none"
  1152.       MaskIconUnits       "autoscale"
  1153.       MaskValueString       ".5|.25|1|0"
  1154.       System {
  1155. Name "clock"
  1156. Location [158, 441, 759, 682]
  1157. Open off
  1158. ModelBrowserVisibility off
  1159. ModelBrowserWidth 200
  1160. ScreenColor "white"
  1161. PaperOrientation "landscape"
  1162. PaperPositionMode "auto"
  1163. PaperType "usletter"
  1164. PaperUnits "inches"
  1165. ZoomFactor "100"
  1166. Block {
  1167.   BlockType   Clock
  1168.   Name   "Clock1"
  1169.   Position   [295, 100, 315, 120]
  1170.   ShowName   off
  1171.   Decimation   "10"
  1172. }
  1173. Block {
  1174.   BlockType   Constant
  1175.   Name   "Constant"
  1176.   Position   [25, 30, 45, 50]
  1177. }
  1178. Block {
  1179.   BlockType   Constant
  1180.   Name   "Constant1"
  1181.   Position   [295, 149, 320, 171]
  1182.   Value   "stt"
  1183. }
  1184. Block {
  1185.   BlockType   Gain
  1186.   Name   "Gain"
  1187.   Position   [510, 102, 535, 128]
  1188.   ShowName   off
  1189.   Gain   "ht"
  1190. }
  1191. Block {
  1192.   BlockType   Logic
  1193.   Name   "LogicalnOperator"
  1194.   Ports   [2, 1]
  1195.   Position   [285, 38, 315, 62]
  1196.   Operator   "XOR"
  1197. }
  1198. Block {
  1199.   BlockType   Logic
  1200.   Name   "LogicalnOperator1"
  1201.   Ports   [1, 1]
  1202.   Position   [355, 38, 385, 62]
  1203.   Operator   "NOT"
  1204.   Inputs   "1"
  1205. }
  1206. Block {
  1207.   BlockType   Product
  1208.   Name   "Product"
  1209.   Ports   [2, 1]
  1210.   Position   [455, 105, 480, 125]
  1211.   ShowName   off
  1212. }
  1213. Block {
  1214.   BlockType   RelationalOperator
  1215.   Name   "Relationalnoperator"
  1216.   Position   [370, 102, 400, 133]
  1217.   ShowName   off
  1218. }
  1219. Block {
  1220.   BlockType   Sum
  1221.   Name   "Sum"
  1222.   Ports   [2, 1]
  1223.   Position   [135, 35, 155, 55]
  1224.   ShowName   off
  1225.   Inputs   "+-"
  1226. }
  1227. Block {
  1228.   BlockType   Sum
  1229.   Name   "Sum1"
  1230.   Ports   [2, 1]
  1231.   Position   [130, 120, 150, 140]
  1232.   ShowName   off
  1233.   Inputs   "+-"
  1234. }
  1235. Block {
  1236.   BlockType   UnitDelay
  1237.   Name   "Unit Delay"
  1238.   Position   [145, 75, 195, 95]
  1239.   Orientation   "left"
  1240.   SampleTime   "[Ts,st1]"
  1241. }
  1242. Block {
  1243.   BlockType   UnitDelay
  1244.   Name   "Unit Delay1"
  1245.   Position   [140, 165, 190, 185]
  1246.   Orientation   "left"
  1247.   X0   "ini"
  1248.   SampleTime   "[Ts,st2]"
  1249. }
  1250. Block {
  1251.   BlockType   Outport
  1252.   Name   "out_1"
  1253.   Position   [560, 105, 580, 125]
  1254.   ShowName   off
  1255. }
  1256. Line {
  1257.   SrcBlock   "Sum1"
  1258.   SrcPort   1
  1259.   Points   [0, 0]
  1260.   Branch {
  1261.     Points     [90, 0; 0, -75]
  1262.     DstBlock     "LogicalnOperator"
  1263.     DstPort     2
  1264.   }
  1265.   Branch {
  1266.     Points     [55, 0; 0, 45]
  1267.     DstBlock     "Unit Delay1"
  1268.     DstPort     1
  1269.   }
  1270. }
  1271. Line {
  1272.   SrcBlock   "Sum"
  1273.   SrcPort   1
  1274.   Points   [0, 0]
  1275.   Branch {
  1276.     DstBlock     "LogicalnOperator"
  1277.     DstPort     1
  1278.   }
  1279.   Branch {
  1280.     Points     [70, 0; 0, 40]
  1281.     DstBlock     "Unit Delay"
  1282.     DstPort     1
  1283.   }
  1284. }
  1285. Line {
  1286.   SrcBlock   "Constant"
  1287.   SrcPort   1
  1288.   Points   [0, 0]
  1289.   Branch {
  1290.     Points     [20, 0; 0, 85]
  1291.     DstBlock     "Sum1"
  1292.     DstPort     1
  1293.   }
  1294.   Branch {
  1295.     DstBlock     "Sum"
  1296.     DstPort     1
  1297.   }
  1298. }
  1299. Line {
  1300.   SrcBlock   "Unit Delay1"
  1301.   SrcPort   1
  1302.   Points   [-35, 0; 0, -40]
  1303.   DstBlock   "Sum1"
  1304.   DstPort   2
  1305. }
  1306. Line {
  1307.   SrcBlock   "Unit Delay"
  1308.   SrcPort   1
  1309.   Points   [-35, 0; 0, -35]
  1310.   DstBlock   "Sum"
  1311.   DstPort   2
  1312. }
  1313. Line {
  1314.   SrcBlock   "Clock1"
  1315.   SrcPort   1
  1316.   DstBlock   "Relationalnoperator"
  1317.   DstPort   1
  1318. }
  1319. Line {
  1320.   SrcBlock   "Relationalnoperator"
  1321.   SrcPort   1
  1322.   DstBlock   "Product"
  1323.   DstPort   2
  1324. }
  1325. Line {
  1326.   SrcBlock   "Product"
  1327.   SrcPort   1
  1328.   DstBlock   "Gain"
  1329.   DstPort   1
  1330. }
  1331. Line {
  1332.   SrcBlock   "Gain"
  1333.   SrcPort   1
  1334.   DstBlock   "out_1"
  1335.   DstPort   1
  1336. }
  1337. Line {
  1338.   SrcBlock   "Constant1"
  1339.   SrcPort   1
  1340.   Points   [20, 0; 0, -35]
  1341.   DstBlock   "Relationalnoperator"
  1342.   DstPort   2
  1343. }
  1344. Line {
  1345.   SrcBlock   "LogicalnOperator"
  1346.   SrcPort   1
  1347.   DstBlock   "LogicalnOperator1"
  1348.   DstPort   1
  1349. }
  1350. Line {
  1351.   SrcBlock   "LogicalnOperator1"
  1352.   SrcPort   1
  1353.   Points   [40, 0; 0, 60]
  1354.   DstBlock   "Product"
  1355.   DstPort   1
  1356. }
  1357.       }
  1358.     }
  1359.     Block {
  1360.       BlockType       SubSystem
  1361.       Name       "delay"
  1362.       Ports       [1, 1]
  1363.       Position       [260, 48, 340, 92]
  1364.       ShowPortLabels       off
  1365.       TreatAsAtomicUnit       off
  1366.       MaskType       "Multi-step delay"
  1367.       MaskDescription       "Output is K-step delay of the input sig"
  1368. "nal."
  1369.       MaskHelp       "This block holds the input signal for K"
  1370. " steps and then outputs the signal. The delay step cannot be changed during t"
  1371. "he simulation."
  1372.       MaskPromptString       "Delay steps (integer):|Sample time (sec"
  1373. "):|Initial output:"
  1374.       MaskStyleString       "edit,edit,edit"
  1375.       MaskTunableValueString  "on,on,on"
  1376.       MaskCallbackString      "||"
  1377.       MaskEnableString       "on,on,on"
  1378.       MaskVisibilityString    "on,on,on"
  1379.       MaskToolTipString       "on,on,on"
  1380.       MaskVarAliasString      ",,"
  1381.       MaskInitialization      "n=@1;ts=@2;if length(ts)<2, ts=[ts 0];e"
  1382. "nd;ini=@3;"
  1383.       MaskDisplay       "disp('-k\nz   ')"
  1384.       MaskIconFrame       on
  1385.       MaskIconOpaque       on
  1386.       MaskIconRotate       "none"
  1387.       MaskIconUnits       "autoscale"
  1388.       MaskValueString       "2|.5|0"
  1389.       System {
  1390. Name "delay"
  1391. Location [12, 432, 357, 702]
  1392. Open off
  1393. ModelBrowserVisibility off
  1394. ModelBrowserWidth 200
  1395. ScreenColor "white"
  1396. PaperOrientation "landscape"
  1397. PaperPositionMode "auto"
  1398. PaperType "usletter"
  1399. PaperUnits "inches"
  1400. ZoomFactor "100"
  1401. Block {
  1402.   BlockType   Inport
  1403.   Name   "in_1"
  1404.   Position   [20, 80, 40, 100]
  1405. }
  1406. Block {
  1407.   BlockType   Constant
  1408.   Name   "Constant"
  1409.   Position   [120, 230, 140, 250]
  1410.   Value   "ini"
  1411. }
  1412. Block {
  1413.   BlockType   Constant
  1414.   Name   "Constant1"
  1415.   Position   [15, 194, 100, 216]
  1416.   Value   "n*ts(1)+ts(2)"
  1417. }
  1418. Block {
  1419.   BlockType   DigitalClock
  1420.   Name   "Digital Clock"
  1421.   Position   [60, 140, 95, 170]
  1422.   SampleTime   "ts"
  1423. }
  1424. Block {
  1425.   BlockType   DiscreteFilter
  1426.   Name   "K-stepndelay"
  1427.   Position   [60, 70, 185, 110]
  1428.   Numerator   "[zeros(1,n), 1]"
  1429.   Denominator   "1"
  1430.   SampleTime   "ts"
  1431. }
  1432. Block {
  1433.   BlockType   RelationalOperator
  1434.   Name   "RelationalnOperator"
  1435.   Position   [150, 168, 180, 192]
  1436. }
  1437. Block {
  1438.   BlockType   Switch
  1439.   Name   "Switch"
  1440.   Position   [270, 114, 295, 146]
  1441.   Threshold   ".1"
  1442. }
  1443. Block {
  1444.   BlockType   Outport
  1445.   Name   "out_1"
  1446.   Position   [325, 120, 345, 140]
  1447. }
  1448. Line {
  1449.   SrcBlock   "RelationalnOperator"
  1450.   SrcPort   1
  1451.   Points   [35, 0; 0, -50]
  1452.   DstBlock   "Switch"
  1453.   DstPort   2
  1454. }
  1455. Line {
  1456.   SrcBlock   "Constant1"
  1457.   SrcPort   1
  1458.   Points   [10, 0; 0, -20]
  1459.   DstBlock   "RelationalnOperator"
  1460.   DstPort   2
  1461. }
  1462. Line {
  1463.   SrcBlock   "Digital Clock"
  1464.   SrcPort   1
  1465.   Points   [15, 0; 0, 20]
  1466.   DstBlock   "RelationalnOperator"
  1467.   DstPort   1
  1468. }
  1469. Line {
  1470.   SrcBlock   "Constant"
  1471.   SrcPort   1
  1472.   Points   [95, 0; 0, -100]
  1473.   DstBlock   "Switch"
  1474.   DstPort   3
  1475. }
  1476. Line {
  1477.   SrcBlock   "K-stepndelay"
  1478.   SrcPort   1
  1479.   Points   [5, 0; 0, 30]
  1480.   DstBlock   "Switch"
  1481.   DstPort   1
  1482. }
  1483. Line {
  1484.   SrcBlock   "in_1"
  1485.   SrcPort   1
  1486.   DstBlock   "K-stepndelay"
  1487.   DstPort   1
  1488. }
  1489. Line {
  1490.   SrcBlock   "Switch"
  1491.   SrcPort   1
  1492.   DstBlock   "out_1"
  1493.   DstPort   1
  1494. }
  1495.       }
  1496.     }
  1497.     Block {
  1498.       BlockType       SubSystem
  1499.       Name       "hold"
  1500.       Ports       [3, 2]
  1501.       Position       [260, 138, 340, 182]
  1502.       ShowPortLabels       off
  1503.       TreatAsAtomicUnit       off
  1504.       MaskType       "Triggered buffer down"
  1505.       MaskDescription       "Rising edge of the 2nd port triggers 1s"
  1506. "t port vector signal in. Rising edge of the 3rd port triggers 1st outport sig"
  1507. "nal out."
  1508.       MaskHelp       "The block refreshes its registers with "
  1509. "the vector input from the 1st inport at the rising edge of the 2nd inport pul"
  1510. "se. The 1st outport outputs the elements of the registers starting with the g"
  1511. "iven initial index. The rising edge of the 3rd inport pulse triggers the 1st "
  1512. "output to output the register value with the index increasing the increment v"
  1513. "alue. The second outport outputs a spike pulse when the internal register is "
  1514. "refreshed."
  1515.       MaskPromptString       "Input signal vector size:|Initial index"
  1516. " (integer vector):|Increment for each index (integer vector):|Trigger thresho"
  1517. "ld:|When index exceed register size, 1: cyclic out, 0: zero out:"
  1518.       MaskStyleString       "edit,edit,edit,edit,edit"
  1519.       MaskTunableValueString  "on,on,on,on,on"
  1520.       MaskCallbackString      "||||"
  1521.       MaskEnableString       "on,on,on,on,on"
  1522.       MaskVisibilityString    "on,on,on,on,on"
  1523.       MaskToolTipString       "on,on,on,on,on"
  1524.       MaskVarAliasString      ",,,,"
  1525.       MaskInitialization      "in_size=@1;ini_idx=@2;idx_inc=@3;thrshl"
  1526. "d=@4;cycl_flag=@5;out_size=length(ini_idx);[v,w]=trigicon(0,25,get_param(gcb,"
  1527. "'orientation'),2);[x,y]=trigicon(1,75,get_param(gcb,'orientation'),2);[u,z]=t"
  1528. "rigicon(0,50,get_param(gcb,'orientation'),2);"
  1529.       MaskDisplay       "plot(0,0,100,100,x,y,v,w,u,z);disp('Buf"
  1530. "fer dwn')"
  1531.       MaskIconFrame       on
  1532.       MaskIconOpaque       on
  1533.       MaskIconRotate       "none"
  1534.       MaskIconUnits       "autoscale"
  1535.       MaskValueString       "2|[1 0]|[0 0]|1|0"
  1536.       System {
  1537. Name "hold"
  1538. Location [22, 58, 460, 228]
  1539. Open off
  1540. ModelBrowserVisibility off
  1541. ModelBrowserWidth 200
  1542. ScreenColor "white"
  1543. PaperOrientation "landscape"
  1544. PaperPositionMode "auto"
  1545. PaperType "usletter"
  1546. PaperUnits "inches"
  1547. ZoomFactor "100"
  1548. Block {
  1549.   BlockType   Inport
  1550.   Name   "in_1"
  1551.   Position   [15, 55, 35, 75]
  1552. }
  1553. Block {
  1554.   BlockType   Inport
  1555.   Name   "in_2"
  1556.   Position   [40, 70, 60, 90]
  1557.   Port   "2"
  1558. }
  1559. Block {
  1560.   BlockType   Inport
  1561.   Name   "in_3"
  1562.   Position   [65, 85, 85, 105]
  1563.   Port   "3"
  1564. }
  1565. Block {
  1566.   BlockType   Demux
  1567.   Name   "Demux"
  1568.   Ports   [1, 2]
  1569.   Position   [290, 62, 330, 98]
  1570.   Outputs   "[out_size 1]"
  1571. }
  1572. Block {
  1573.   BlockType   Mux
  1574.   Name   "Mux"
  1575.   Ports   [3, 1]
  1576.   Position   [110, 59, 140, 101]
  1577.   Inputs   "[in_size 1 1]"
  1578. }
  1579. Block {
  1580.   BlockType   "S-Function"
  1581.   Name   "S-function"
  1582.   Ports   [1, 1]
  1583.   Position   [185, 70, 235, 90]
  1584.   FunctionName   "regdown"
  1585.   Parameters   "ini_idx, idx_inc, thrshld, cycl_fla"
  1586. "g"
  1587. }
  1588. Block {
  1589.   BlockType   Outport
  1590.   Name   "out_1"
  1591.   Position   [390, 60, 410, 80]
  1592. }
  1593. Block {
  1594.   BlockType   Outport
  1595.   Name   "out_2"
  1596.   Position   [355, 80, 375, 100]
  1597.   Port   "2"
  1598. }
  1599. Line {
  1600.   SrcBlock   "in_3"
  1601.   SrcPort   1
  1602.   DstBlock   "Mux"
  1603.   DstPort   3
  1604. }
  1605. Line {
  1606.   SrcBlock   "Demux"
  1607.   SrcPort   2
  1608.   DstBlock   "out_2"
  1609.   DstPort   1
  1610. }
  1611. Line {
  1612.   SrcBlock   "in_2"
  1613.   SrcPort   1
  1614.   DstBlock   "Mux"
  1615.   DstPort   2
  1616. }
  1617. Line {
  1618.   SrcBlock   "Demux"
  1619.   SrcPort   1
  1620.   DstBlock   "out_1"
  1621.   DstPort   1
  1622. }
  1623. Line {
  1624.   SrcBlock   "in_1"
  1625.   SrcPort   1
  1626.   DstBlock   "Mux"
  1627.   DstPort   1
  1628. }
  1629. Line {
  1630.   SrcBlock   "Mux"
  1631.   SrcPort   1
  1632.   DstBlock   "S-function"
  1633.   DstPort   1
  1634. }
  1635. Line {
  1636.   SrcBlock   "S-function"
  1637.   SrcPort   1
  1638.   DstBlock   "Demux"
  1639.   DstPort   1
  1640. }
  1641.       }
  1642.     }
  1643.     Block {
  1644.       BlockType       SubSystem
  1645.       Name       "shift register"
  1646.       Ports       [2, 2]
  1647.       Position       [120, 133, 200, 177]
  1648.       ShowPortLabels       off
  1649.       TreatAsAtomicUnit       off
  1650.       MaskType       "Register-shift"
  1651.       MaskDescription       "The rising edge of the 2nd port pulsen"
  1652. "triggers the block to input the 1st port data and to shift the register."
  1653.       MaskHelp       "This block stores the scalar input sign"
  1654. "al from the 1st input port at the rising edge of the pulse from the 2nd port."
  1655. " The 1st outport outputs a vector with its size the same as the "Delay steps"
  1656. "" entree of this block. The maximum delay is the register size of this block"
  1657. ". The second outport outputs a positive pulse when the register is\nrefreshe"
  1658. "d."
  1659.       MaskPromptString       "Delay steps (output length is same as t"
  1660. "his vector size):|Threshold in detecting the rising edge of the pulse:"
  1661.       MaskStyleString       "edit,edit"
  1662.       MaskTunableValueString  "on,on"
  1663.       MaskCallbackString      "|"
  1664.       MaskEnableString       "on,on"
  1665.       MaskVisibilityString    "on,on"
  1666.       MaskToolTipString       "on,on"
  1667.       MaskVarAliasString      ","
  1668.       MaskInitialization      "shft_out=@1;thrhld=@2;len_rg=length(@1)"
  1669. ";[v,w]=trigicon(0,25,get_param(gcb,'orientation'),2);[x,y]=trigicon(1,75,get_"
  1670. "param(gcb,'orientation'),2);"
  1671.       MaskDisplay       "plot(0,0,100,100,x,y,v,w);disp('Reg. sh"
  1672. "ift')"
  1673.       MaskIconFrame       on
  1674.       MaskIconOpaque       on
  1675.       MaskIconRotate       "none"
  1676.       MaskIconUnits       "autoscale"
  1677.       MaskValueString       "[2 1]|1"
  1678.       System {
  1679. Name "shift register"
  1680. Location [19, 610, 374, 740]
  1681. Open off
  1682. ModelBrowserVisibility off
  1683. ModelBrowserWidth 200
  1684. ScreenColor "white"
  1685. PaperOrientation "landscape"
  1686. PaperPositionMode "auto"
  1687. PaperType "usletter"
  1688. PaperUnits "inches"
  1689. ZoomFactor "100"
  1690. Block {
  1691.   BlockType   Inport
  1692.   Name   "in_1"
  1693.   Position   [30, 55, 50, 75]
  1694. }
  1695. Block {
  1696.   BlockType   Inport
  1697.   Name   "in_2"
  1698.   Position   [30, 70, 50, 90]
  1699.   Port   "2"
  1700. }
  1701. Block {
  1702.   BlockType   Demux
  1703.   Name   "Demux"
  1704.   Ports   [1, 2]
  1705.   Position   [260, 55, 300, 90]
  1706.   Outputs   "[len_rg, 1]"
  1707. }
  1708. Block {
  1709.   BlockType   Mux
  1710.   Name   "Mux"
  1711.   Ports   [2, 1]
  1712.   Position   [80, 56, 115, 89]
  1713.   Inputs   "2"
  1714. }
  1715. Block {
  1716.   BlockType   "S-Function"
  1717.   Name   "S-function"
  1718.   Ports   [1, 1]
  1719.   Position   [150, 65, 200, 85]
  1720.   FunctionName   "regshift"
  1721.   Parameters   "shft_out, thrhld"
  1722. }
  1723. Block {
  1724.   BlockType   Outport
  1725.   Name   "out_1"
  1726.   Position   [330, 55, 350, 75]
  1727. }
  1728. Block {
  1729.   BlockType   Outport
  1730.   Name   "out_2"
  1731.   Position   [330, 70, 350, 90]
  1732.   Port   "2"
  1733. }
  1734. Line {
  1735.   SrcBlock   "Mux"
  1736.   SrcPort   1
  1737.   DstBlock   "S-function"
  1738.   DstPort   1
  1739. }
  1740. Line {
  1741.   SrcBlock   "S-function"
  1742.   SrcPort   1
  1743.   DstBlock   "Demux"
  1744.   DstPort   1
  1745. }
  1746. Line {
  1747.   SrcBlock   "Demux"
  1748.   SrcPort   1
  1749.   DstBlock   "out_1"
  1750.   DstPort   1
  1751. }
  1752. Line {
  1753.   SrcBlock   "Demux"
  1754.   SrcPort   2
  1755.   DstBlock   "out_2"
  1756.   DstPort   1
  1757. }
  1758. Line {
  1759.   SrcBlock   "in_1"
  1760.   SrcPort   1
  1761.   DstBlock   "Mux"
  1762.   DstPort   1
  1763. }
  1764. Line {
  1765.   SrcBlock   "in_2"
  1766.   SrcPort   1
  1767.   DstBlock   "Mux"
  1768.   DstPort   2
  1769. }
  1770.       }
  1771.     }
  1772.     Block {
  1773.       BlockType       Outport
  1774.       Name       "binary"
  1775.       Position       [480, 60, 500, 80]
  1776.     }
  1777.     Block {
  1778.       BlockType       Outport
  1779.       Name       "Symbol"
  1780.       Position       [480, 140, 500, 160]
  1781.       Port       "2"
  1782.     }
  1783.     Line {
  1784.       SrcBlock       "hold"
  1785.       SrcPort       2
  1786.       Points       [10, 0; 0, 30]
  1787.       DstBlock       "Terminator"
  1788.       DstPort       1
  1789.     }
  1790.     Line {
  1791.       SrcBlock       "D/A "
  1792.       SrcPort       1
  1793.       DstBlock       "Symbol"
  1794.       DstPort       1
  1795.     }
  1796.     Line {
  1797.       SrcBlock       "delay"
  1798.       SrcPort       1
  1799.       DstBlock       "binary"
  1800.       DstPort       1
  1801.     }
  1802.     Line {
  1803.       SrcBlock       "shift register"
  1804.       SrcPort       1
  1805.       DstBlock       "hold"
  1806.       DstPort       1
  1807.     }
  1808.     Line {
  1809.       SrcBlock       "hold"
  1810.       SrcPort       1
  1811.       DstBlock       "D/A "
  1812.       DstPort       1
  1813.     }
  1814.     Line {
  1815.       SrcBlock       "clock"
  1816.       SrcPort       1
  1817.       DstBlock       "shift register"
  1818.       DstPort       2
  1819.     }
  1820.     Line {
  1821.       SrcBlock       "shift register"
  1822.       SrcPort       2
  1823.       Points       [20, 0]
  1824.       Branch {
  1825. Points [0, -5]
  1826. DstBlock "hold"
  1827. DstPort 2
  1828.       }
  1829.       Branch {
  1830. Points [0, 10]
  1831. DstBlock "hold"
  1832. DstPort 3
  1833.       }
  1834.     }
  1835.     Line {
  1836.       SrcBlock       "Bits"
  1837.       SrcPort       1
  1838.       Points       [15, 0]
  1839.       Branch {
  1840. DstBlock "delay"
  1841. DstPort 1
  1842.       }
  1843.       Branch {
  1844. DstBlock "shift register"
  1845. DstPort 1
  1846.       }
  1847.     }
  1848.     Annotation {
  1849.       Name       "Two bits are mapped to a symbol. MSB fi"
  1850. "rst."
  1851.       Position       [267, 7]
  1852.       VerticalAlignment       "top"
  1853.     }
  1854.   }
  1855. }
  1856. Block {
  1857.   BlockType   Sum
  1858.   Name   "Sum"
  1859.   Ports   [2, 1]
  1860.   Position   [880, 155, 900, 175]
  1861.   ShowName   off
  1862.   Inputs   "+-"
  1863. }
  1864. Block {
  1865.   BlockType   Scope
  1866.   Name   "a_c(t)"
  1867.   Ports   [1]
  1868.   Position   [220, 10, 250, 40]
  1869.   Orientation   "up"
  1870.   Location   [359, 340, 1280, 440]
  1871.   Open   off
  1872.   NumInputPorts   "1"
  1873.   List {
  1874.     ListType     AxesTitles
  1875.     axes1     "%<SignalLabel>"
  1876.   }
  1877.   TimeRange   "25.000000"
  1878.   YMin   "-1.500000"
  1879.   YMax   "1.500000"
  1880.   DataFormat   "Array"
  1881. }
  1882. Block {
  1883.   BlockType   Scope
  1884.   Name   "a_s(t)"
  1885.   Ports   [1]
  1886.   Position   [220, 165, 250, 195]
  1887.   Orientation   "up"
  1888.   Location   [359, 633, 1280, 733]
  1889.   Open   off
  1890.   NumInputPorts   "1"
  1891.   List {
  1892.     ListType     AxesTitles
  1893.     axes1     "%<SignalLabel>"
  1894.   }
  1895.   TimeRange   "25.000000"
  1896.   YMin   "-1.500000"
  1897.   YMax   "1.500000"
  1898.   DataFormat   "Array"
  1899. }
  1900. Block {
  1901.   BlockType   SubSystem
  1902.   Name   "closetransmitter"
  1903.   Ports   []
  1904.   Position   [780, 20, 915, 46]
  1905.   BackgroundColor   "lightBlue"
  1906.   ShowName   off
  1907.   OpenFcn   "closetra"
  1908.   FontAngle   "italic"
  1909.   ShowPortLabels   off
  1910.   TreatAsAtomicUnit   off
  1911.   MaskType   "close"
  1912.   MaskDisplay   "disp('Close transmitter')"
  1913.   MaskIconFrame   on
  1914.   MaskIconOpaque   on
  1915.   MaskIconRotate   "none"
  1916.   MaskIconUnits   "autoscale"
  1917.   System {
  1918.     Name     "closetransmitter"
  1919.     Location     [136, 230, 381, 439]
  1920.     Open     off
  1921.     ModelBrowserVisibility  off
  1922.     ModelBrowserWidth     200
  1923.     ScreenColor     "cyan"
  1924.     PaperOrientation     "landscape"
  1925.     PaperPositionMode     "auto"
  1926.     PaperType     "usletter"
  1927.     PaperUnits     "inches"
  1928.     ZoomFactor     "100"
  1929.   }
  1930. }
  1931. Block {
  1932.   BlockType   Scope
  1933.   Name   "s_c(t)"
  1934.   Ports   [1]
  1935.   Position   [430, 10, 460, 40]
  1936.   Orientation   "up"
  1937.   Location   [359, 438, 1280, 538]
  1938.   Open   off
  1939.   NumInputPorts   "1"
  1940.   List {
  1941.     ListType     AxesTitles
  1942.     axes1     "%<SignalLabel>"
  1943.   }
  1944.   TimeRange   "25.000000"
  1945.   YMin   "-1.500000"
  1946.   YMax   "1.500000"
  1947.   DataFormat   "Array"
  1948. }
  1949. Block {
  1950.   BlockType   Scope
  1951.   Name   "s_s(t)"
  1952.   Ports   [1]
  1953.   Position   [425, 165, 455, 195]
  1954.   Orientation   "up"
  1955.   Location   [359, 731, 1280, 831]
  1956.   Open   off
  1957.   NumInputPorts   "1"
  1958.   List {
  1959.     ListType     AxesTitles
  1960.     axes1     "%<SignalLabel>"
  1961.   }
  1962.   TimeRange   "25.000000"
  1963.   YMin   "-1.500000"
  1964.   YMax   "1.500000"
  1965.   DataFormat   "Array"
  1966. }
  1967. Block {
  1968.   BlockType   SubSystem
  1969.   Name   "transmitterndiagrams"
  1970.   Ports   [2]
  1971.   Position   [570, 15, 625, 55]
  1972.   ShowPortLabels   off
  1973.   TreatAsAtomicUnit   off
  1974.   MaskType   "2D-Diagrams"
  1975.   MaskDescription   "Eye pattern, signal space trajectory and sc"
  1976. "atter plot"
  1977.   MaskPromptString   "Plot start time:|Samples per time slot (2*T"
  1978. "):|Decision offset:"
  1979.   MaskStyleString   "edit,edit,edit"
  1980.   MaskTunableValueString  "on,on,on"
  1981.   MaskCallbackString   "||"
  1982.   MaskEnableString   "on,on,on"
  1983.   MaskVisibilityString   "on,on,on"
  1984.   MaskToolTipString   "on,on,on"
  1985.   MaskVarAliasString   ",,"
  1986.   MaskVariables   "starttime=@1;anzahl=@2;offset=@3;"
  1987.   MaskInitialization   " [x, y] = srcsicon(10);"
  1988.   MaskDisplay   "plot(0,0,100,100,x,y)"
  1989.   MaskIconFrame   on
  1990.   MaskIconOpaque   on
  1991.   MaskIconRotate   "none"
  1992.   MaskIconUnits   "autoscale"
  1993.   MaskValueString   "6|40|0"
  1994.   System {
  1995.     Name     "transmitterndiagrams"
  1996.     Location     [33, 279, 445, 572]
  1997.     Open     off
  1998.     ModelBrowserVisibility  off
  1999.     ModelBrowserWidth     200
  2000.     ScreenColor     "white"
  2001.     PaperOrientation     "landscape"
  2002.     PaperPositionMode     "auto"
  2003.     PaperType     "usletter"
  2004.     PaperUnits     "inches"
  2005.     ZoomFactor     "100"
  2006.     Block {
  2007.       BlockType       Inport
  2008.       Name       "Inphase"
  2009.       Position       [30, 20, 50, 40]
  2010.     }
  2011.     Block {
  2012.       BlockType       Inport
  2013.       Name       "Quadratur"
  2014.       Position       [30, 80, 50, 100]
  2015.       Port       "2"
  2016.     }
  2017.     Block {
  2018.       BlockType       Constant
  2019.       Name       "Constant"
  2020.       Position       [90, 125, 110, 145]
  2021.       Orientation       "up"
  2022.       ShowName       off
  2023.       Value       "Inf"
  2024.     }
  2025.     Block {
  2026.       BlockType       Constant
  2027.       Name       "Constant0"
  2028.       Position       [190, 125, 210, 145]
  2029.       Orientation       "up"
  2030.       ShowName       off
  2031.       Value       "0"
  2032.     }
  2033.     Block {
  2034.       BlockType       SubSystem
  2035.       Name       "Inphase eye patternntransmitter"
  2036.       Ports       [1]
  2037.       Position       [305, 17, 360, 53]
  2038.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  2039.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  2040.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  2041.       StartFcn       "eyesampl([],[],[],'Start')"
  2042.       StopFcn       "eyesampl([],[],[],'Stop')"
  2043.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  2044.       ShowPortLabels       off
  2045.       TreatAsAtomicUnit       off
  2046.       MaskType       "Eye-diagram/scatter plot"
  2047.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  2048. "ter plot."
  2049.       MaskHelp       "This plot opens one, or two plots by as"
  2050. "signing the line type parameters. The scatter plot point is selected by the d"
  2051. "ecision point in the first parameter entry. A decision line is drawn in the e"
  2052. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  2053.       MaskPromptString       "[Symbol interval, plot offset, decision"
  2054. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  2055. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  2056. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  2057.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  2058.       MaskTunableValueString  "on,on,on,on,on,on"
  2059.       MaskCallbackString      "|||||"
  2060.       MaskEnableString       "on,on,on,on,on,on"
  2061.       MaskVisibilityString    "on,on,on,on,on,on"
  2062.       MaskToolTipString       "on,on,on,on,on,on"
  2063.       MaskVarAliasString      ",,,,,"
  2064.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  2065. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  2066.       MaskDisplay       "plot(0,0,100,100,x,y);"
  2067.       MaskIconFrame       on
  2068.       MaskIconOpaque       on
  2069.       MaskIconRotate       "none"
  2070.       MaskIconUnits       "autoscale"
  2071.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  2072. "/anzahl"
  2073.       System {
  2074. Name "Inphase eye patternntransmitter"
  2075. Location [121, 409, 416, 595]
  2076. Open off
  2077. ModelBrowserVisibility off
  2078. ModelBrowserWidth 200
  2079. ScreenColor "white"
  2080. PaperOrientation "landscape"
  2081. PaperPositionMode "auto"
  2082. PaperType "usletter"
  2083. PaperUnits "inches"
  2084. ZoomFactor "100"
  2085. Block {
  2086.   BlockType   Inport
  2087.   Name   "in_1"
  2088.   Position   [75, 80, 95, 100]
  2089. }
  2090. Block {
  2091.   BlockType   "S-Function"
  2092.   Name   "Plot1"
  2093.   Ports   [1]
  2094.   Position   [130, 70, 200, 110]
  2095.   FunctionName   "eyesampl"
  2096.   Parameters   "time_range, boundary, kept_length, "
  2097. "eye_line, scatter_line, two_d_line"
  2098. }
  2099. Line {
  2100.   SrcBlock   "in_1"
  2101.   SrcPort   1
  2102.   DstBlock   "Plot1"
  2103.   DstPort   1
  2104. }
  2105.       }
  2106.     }
  2107.     Block {
  2108.       BlockType       Mux
  2109.       Name       "Mux"
  2110.       Ports       [2, 1]
  2111.       Position       [230, 16, 265, 49]
  2112.       Inputs       "2"
  2113.     }
  2114.     Block {
  2115.       BlockType       Mux
  2116.       Name       "Mux1"
  2117.       Ports       [2, 1]
  2118.       Position       [230, 76, 265, 109]
  2119.       Inputs       "2"
  2120.     }
  2121.     Block {
  2122.       BlockType       Mux
  2123.       Name       "Mux2"
  2124.       Ports       [2, 1]
  2125.       Position       [230, 146, 265, 179]
  2126.       Inputs       "2"
  2127.     }
  2128.     Block {
  2129.       BlockType       Mux
  2130.       Name       "Mux3"
  2131.       Ports       [2, 1]
  2132.       Position       [230, 211, 265, 244]
  2133.       Inputs       "2"
  2134.     }
  2135.     Block {
  2136.       BlockType       SubSystem
  2137.       Name       "Quadrature eye patternntransmitter"
  2138.       Ports       [1]
  2139.       Position       [305, 77, 360, 113]
  2140.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  2141.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  2142.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  2143.       StartFcn       "eyesampl([],[],[],'Start')"
  2144.       StopFcn       "eyesampl([],[],[],'Stop')"
  2145.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  2146.       ShowPortLabels       off
  2147.       TreatAsAtomicUnit       off
  2148.       MaskType       "Eye-diagram/scatter plot"
  2149.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  2150. "ter plot."
  2151.       MaskHelp       "This plot opens one, or two plots by as"
  2152. "signing the line type parameters. The scatter plot point is selected by the d"
  2153. "ecision point in the first parameter entry. A decision line is drawn in the e"
  2154. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  2155.       MaskPromptString       "[Symbol interval, plot offset, decision"
  2156. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  2157. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  2158. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  2159.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  2160.       MaskTunableValueString  "on,on,on,on,on,on"
  2161.       MaskCallbackString      "|||||"
  2162.       MaskEnableString       "on,on,on,on,on,on"
  2163.       MaskVisibilityString    "on,on,on,on,on,on"
  2164.       MaskToolTipString       "on,on,on,on,on,on"
  2165.       MaskVarAliasString      ",,,,,"
  2166.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  2167. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  2168.       MaskDisplay       "plot(0,0,100,100,x,y);"
  2169.       MaskIconFrame       on
  2170.       MaskIconOpaque       on
  2171.       MaskIconRotate       "none"
  2172.       MaskIconUnits       "autoscale"
  2173.       MaskValueString       "[2 0 1+offset]|[-1.5 1.5]|0|'w-/r-'|0|2"
  2174. "/anzahl"
  2175.       System {
  2176. Name "Quadrature eye patternntransmitter"
  2177. Location [121, 409, 416, 595]
  2178. Open off
  2179. ModelBrowserVisibility off
  2180. ModelBrowserWidth 200
  2181. ScreenColor "white"
  2182. PaperOrientation "landscape"
  2183. PaperPositionMode "auto"
  2184. PaperType "usletter"
  2185. PaperUnits "inches"
  2186. ZoomFactor "100"
  2187. Block {
  2188.   BlockType   Inport
  2189.   Name   "in_1"
  2190.   Position   [75, 80, 95, 100]
  2191. }
  2192. Block {
  2193.   BlockType   "S-Function"
  2194.   Name   "Plot1"
  2195.   Ports   [1]
  2196.   Position   [130, 70, 200, 110]
  2197.   FunctionName   "eyesampl"
  2198.   Parameters   "time_range, boundary, kept_length, "
  2199. "eye_line, scatter_line, two_d_line"
  2200. }
  2201. Line {
  2202.   SrcBlock   "in_1"
  2203.   SrcPort   1
  2204.   DstBlock   "Plot1"
  2205.   DstPort   1
  2206. }
  2207.       }
  2208.     }
  2209.     Block {
  2210.       BlockType       SubSystem
  2211.       Name       "Scatter plotntransmitter"
  2212.       Ports       [1]
  2213.       Position       [305, 213, 360, 247]
  2214.       CopyFcn       "eyesampl([],[],[],'CopyBlock')"
  2215.       DeleteFcn       "eyesampl([],[],[],'DeleteBlock')"
  2216.       LoadFcn       "eyesampl([],[],[],'LoadBlock')"
  2217.       StartFcn       "eyesampl([],[],[],'Start')"
  2218.       StopFcn       "eyesampl([],[],[],'Stop')"
  2219.       NameChangeFcn       "eyesampl([],[],[],'NameChange')"
  2220.       ShowPortLabels       off
  2221.       TreatAsAtomicUnit       off
  2222.       MaskType       "Eye-diagram/scatter plot"
  2223.       MaskDescription       "Produce eye-pattern diagram and/or scat"
  2224. "ter plot."
  2225.       MaskHelp       "This plot opens one, or two plots by as"
  2226. "signing the line type parameters. The scatter plot point is selected by the d"
  2227. "ecision point in the first parameter entry. A decision line is drawn in the e"
  2228. "ye-pattern diagram. The plot is updated at the plot update sample time point."
  2229.       MaskPromptString       "[Symbol interval, plot offset, decision"
  2230. " point offset]:|Lower and upper bound of in-coming signal (1x2 vector):|Numbe"
  2231. "r of saved traces:|Line-type for eye-pattern diagram (0 for no plot):|Line-ty"
  2232. "pe for scatter plot (0 for no plot):|Plot update sample time:"
  2233.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  2234.       MaskTunableValueString  "on,on,on,on,on,on"
  2235.       MaskCallbackString      "|||||"
  2236.       MaskEnableString       "on,on,on,on,on,on"
  2237.       MaskVisibilityString    "on,on,on,on,on,on"
  2238.       MaskToolTipString       "on,on,on,on,on,on"
  2239.       MaskVarAliasString      ",,,,,"
  2240.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  2241. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);"
  2242.       MaskDisplay       "plot(0,0,100,100,x,y);"
  2243.       MaskIconFrame       on
  2244.       MaskIconOpaque       on
  2245.       MaskIconRotate       "none"
  2246.       MaskIconUnits       "autoscale"
  2247.       MaskValueString       "[1 .5 .999]|[-1.5 1.5]|0|0|'b.'|[.5 off"
  2248. "set]"
  2249.       System {
  2250. Name "Scatter plotntransmitter"
  2251. Location [165, 242, 460, 428]
  2252. Open off
  2253. ModelBrowserVisibility off
  2254. ModelBrowserWidth 200
  2255. ScreenColor "white"
  2256. PaperOrientation "landscape"
  2257. PaperPositionMode "auto"
  2258. PaperType "usletter"
  2259. PaperUnits "inches"
  2260. ZoomFactor "100"
  2261. Block {
  2262.   BlockType   Inport
  2263.   Name   "in_1"
  2264.   Position   [75, 80, 95, 100]
  2265. }
  2266. Block {
  2267.   BlockType   "S-Function"
  2268.   Name   "Plot1"
  2269.   Ports   [1]
  2270.   Position   [130, 70, 200, 110]
  2271.   FunctionName   "eyesampl"
  2272.   Parameters   "time_range, boundary, kept_length, "
  2273. "eye_line, scatter_line, two_d_line"
  2274. }
  2275. Line {
  2276.   SrcBlock   "in_1"
  2277.   SrcPort   1
  2278.   DstBlock   "Plot1"
  2279.   DstPort   1
  2280. }
  2281.       }
  2282.     }
  2283.     Block {
  2284.       BlockType       Step
  2285.       Name       "Step input"
  2286.       Position       [30, 125, 50, 145]
  2287.       Time       "starttime"
  2288.       SampleTime       "1"
  2289.     }
  2290.     Block {
  2291.       BlockType       Switch
  2292.       Name       "Switch"
  2293.       Position       [130, 24, 155, 56]
  2294.       Threshold       "1"
  2295.     }
  2296.     Block {
  2297.       BlockType       Switch
  2298.       Name       "Switch1"
  2299.       Position       [130, 84, 155, 116]
  2300.       Threshold       "1"
  2301.     }
  2302.     Block {
  2303.       BlockType       SubSystem
  2304.       Name       "Trajectoryntransmitter"
  2305.       Ports       [1]
  2306.       Position       [305, 157, 360, 193]
  2307.       CopyFcn       "eyediasi([],[],[],'CopyBlock')"
  2308.       DeleteFcn       "eyediasi([],[],[],'DeleteBlock')"
  2309.       LoadFcn       "eyediasi([],[],[],'LoadBlock')"
  2310.       StartFcn       "eyediasi([],[],[],'Start')"
  2311.       StopFcn       "eyediasi([],[],[],'Stop')"
  2312.       NameChangeFcn       "eyediasi([],[],[],'NameChange')"
  2313.       ShowPortLabels       off
  2314.       TreatAsAtomicUnit       off
  2315.       MaskType       "Eye-diagram/scatter plot"
  2316.       MaskDescription       "Produce eye-pattern diagram/scatternpl"
  2317. "ot/x-y plot with the rising edge of the second input as the decision line."
  2318.       MaskHelp       "This plot opens one, two, or three plot"
  2319. "s by assigning the line type parameters. The scatter plot point is selected b"
  2320. "y the rising edge of a trigger signal. A decision line is drawn at the rising"
  2321. " edge of the trigger signal."
  2322.       MaskPromptString       "Eye-pattern plot time frame:|Lower and "
  2323. "upper bound of in-coming signal (1x2 vector):|Number of saved traces:|Line-ty"
  2324. "pe for eye-pattern diagram (0 for no plot):|Line-type for scatter plot (0 for"
  2325. " no plot):|Line-type for x-y plot (0 for no plot):"
  2326.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  2327.       MaskTunableValueString  "on,on,on,on,on,on"
  2328.       MaskCallbackString      "|||||"
  2329.       MaskEnableString       "on,on,on,on,on,on"
  2330.       MaskVisibilityString    "on,on,on,on,on,on"
  2331.       MaskToolTipString       "on,on,on,on,on,on"
  2332.       MaskVarAliasString      ",,,,,"
  2333.       MaskInitialization      "time_range=@1;boundary=@2;kept_length=@"
  2334. "3;eye_line=@4;scatter_line=@5;two_d_line=@6;[x,y]=srcsicon(10);[v,w]=trigicon"
  2335. "(0,25,get_param(gcb,'orientation'),2);"
  2336.       MaskDisplay       "plot(0,0,100,100,x,y,v,w);"
  2337.       MaskIconFrame       on
  2338.       MaskIconOpaque       on
  2339.       MaskIconRotate       "none"
  2340.       MaskIconUnits       "autoscale"
  2341.       MaskValueString       "[2 0 1]|[-1.5 1.5]|0|0|0|'g-'"
  2342.       System {
  2343. Name "Trajectoryntransmitter"
  2344. Location [165, 242, 460, 428]
  2345. Open off
  2346. ModelBrowserVisibility off
  2347. ModelBrowserWidth 200
  2348. ScreenColor "white"
  2349. PaperOrientation "landscape"
  2350. PaperPositionMode "auto"
  2351. PaperType "usletter"
  2352. PaperUnits "inches"
  2353. ZoomFactor "100"
  2354. Block {
  2355.   BlockType   Inport
  2356.   Name   "in_1"
  2357.   Position   [15, 55, 35, 75]
  2358. }
  2359. Block {
  2360.   BlockType   Constant
  2361.   Name   "Constant"
  2362.   Position   [15, 110, 45, 140]
  2363.   Value   "0"
  2364. }
  2365. Block {
  2366.   BlockType   Mux
  2367.   Name   "Mux"
  2368.   Ports   [2, 1]
  2369.   Position   [65, 70, 100, 105]
  2370.   Inputs   "2"
  2371. }
  2372. Block {
  2373.   BlockType   "S-Function"
  2374.   Name   "Plot1"
  2375.   Ports   [1]
  2376.   Position   [130, 70, 200, 110]
  2377.   FunctionName   "eyediasi"
  2378.   Parameters   "time_range, boundary, kept_length, "
  2379. "eye_line, scatter_line, two_d_line"
  2380. }
  2381. Line {
  2382.   SrcBlock   "Mux"
  2383.   SrcPort   1
  2384.   DstBlock   "Plot1"
  2385.   DstPort   1
  2386. }
  2387. Line {
  2388.   SrcBlock   "Constant"
  2389.   SrcPort   1
  2390.   DstBlock   "Mux"
  2391.   DstPort   2
  2392. }
  2393. Line {
  2394.   SrcBlock   "in_1"
  2395.   SrcPort   1
  2396.   Points   [5, 0; 0, 15]
  2397.   DstBlock   "Mux"
  2398.   DstPort   1
  2399. }
  2400.       }
  2401.     }
  2402.     Line {
  2403.       SrcBlock       "Mux2"
  2404.       SrcPort       1
  2405.       Points       [20, 0]
  2406.       DstBlock       "Trajectoryntransmitter"
  2407.       DstPort       1
  2408.     }
  2409.     Line {
  2410.       SrcBlock       "Mux3"
  2411.       SrcPort       1
  2412.       DstBlock       "Scatter plotntransmitter"
  2413.       DstPort       1
  2414.     }
  2415.     Line {
  2416.       SrcBlock       "Mux"
  2417.       SrcPort       1
  2418.       DstBlock       "Inphase eye patternntransmitter"
  2419.       DstPort       1
  2420.     }
  2421.     Line {
  2422.       SrcBlock       "Mux1"
  2423.       SrcPort       1
  2424.       DstBlock       "Quadrature eye patternntransmitter"
  2425.       DstPort       1
  2426.     }
  2427.     Line {
  2428.       SrcBlock       "Constant"
  2429.       SrcPort       1
  2430.       Points       [0, -10]
  2431.       Branch {
  2432. Points [0, -60]
  2433. DstBlock "Switch"
  2434. DstPort 3
  2435.       }
  2436.       Branch {
  2437. DstBlock "Switch1"
  2438. DstPort 3
  2439.       }
  2440.     }
  2441.     Line {
  2442.       SrcBlock       "Step input"
  2443.       SrcPort       1
  2444.       Points       [20, 0; 0, -35]
  2445.       Branch {
  2446. Points [0, -60]
  2447. DstBlock "Switch"
  2448. DstPort 2
  2449.       }
  2450.       Branch {
  2451. DstBlock "Switch1"
  2452. DstPort 2
  2453.       }
  2454.     }
  2455.     Line {
  2456.       SrcBlock       "Inphase"
  2457.       SrcPort       1
  2458.       DstBlock       "Switch"
  2459.       DstPort       1
  2460.     }
  2461.     Line {
  2462.       SrcBlock       "Quadratur"
  2463.       SrcPort       1
  2464.       DstBlock       "Switch1"
  2465.       DstPort       1
  2466.     }
  2467.     Line {
  2468.       SrcBlock       "Switch"
  2469.       SrcPort       1
  2470.       Points       [10, 0; 0, 5]
  2471.       Branch {
  2472. Points [0, 110]
  2473. Branch {
  2474.   Points   [0, 65]
  2475.   DstBlock   "Mux3"
  2476.   DstPort   1
  2477. }
  2478. Branch {
  2479.   DstBlock   "Mux2"
  2480.   DstPort   1
  2481. }
  2482.       }
  2483.       Branch {
  2484. Points [0, -5]
  2485. DstBlock "Mux"
  2486. DstPort 2
  2487.       }
  2488.     }
  2489.     Line {
  2490.       SrcBlock       "Switch1"
  2491.       SrcPort       1
  2492.       Points       [20, 0]
  2493.       Branch {
  2494. Points [0, 70]
  2495. Branch {
  2496.   Points   [0, 65]
  2497.   DstBlock   "Mux3"
  2498.   DstPort   2
  2499. }
  2500. Branch {
  2501.   DstBlock   "Mux2"
  2502.   DstPort   2
  2503. }
  2504.       }
  2505.       Branch {
  2506. DstBlock "Mux1"
  2507. DstPort 2
  2508.       }
  2509.     }
  2510.     Line {
  2511.       SrcBlock       "Constant0"
  2512.       SrcPort       1
  2513.       Points       [0, -35]
  2514.       Branch {
  2515. DstBlock "Mux1"
  2516. DstPort 1
  2517.       }
  2518.       Branch {
  2519. Points [0, -60]
  2520. DstBlock "Mux"
  2521. DstPort 1
  2522.       }
  2523.     }
  2524.   }
  2525. }
  2526. Block {
  2527.   BlockType   Scope
  2528.   Name   "u(t)"
  2529.   Ports   [1]
  2530.   Position   [920, 80, 950, 110]
  2531.   Orientation   "up"
  2532.   Location   [359, 924, 1280, 1024]
  2533.   Open   off
  2534.   NumInputPorts   "1"
  2535.   List {
  2536.     ListType     AxesTitles
  2537.     axes1     "%<SignalLabel>"
  2538.   }
  2539.   TimeRange   "25.000000"
  2540.   YMin   "-1.500000"
  2541.   YMax   "1.500000"
  2542.   DataFormat   "Array"
  2543. }
  2544. Block {
  2545.   BlockType   Scope
  2546.   Name   "u_c(t)"
  2547.   Ports   [1]
  2548.   Position   [865, 80, 895, 110]
  2549.   Location   [359, 536, 1280, 636]
  2550.   Open   off
  2551.   NumInputPorts   "1"
  2552.   List {
  2553.     ListType     AxesTitles
  2554.     axes1     "%<SignalLabel>"
  2555.   }
  2556.   TimeRange   "25.000000"
  2557.   YMin   "-1.500000"
  2558.   YMax   "1.500000"
  2559.   DataFormat   "Array"
  2560. }
  2561. Block {
  2562.   BlockType   Scope
  2563.   Name   "u_s(t)"
  2564.   Ports   [1]
  2565.   Position   [865, 230, 895, 260]
  2566.   Location   [359, 827, 1280, 927]
  2567.   Open   off
  2568.   NumInputPorts   "1"
  2569.   List {
  2570.     ListType     AxesTitles
  2571.     axes1     "%<SignalLabel>"
  2572.   }
  2573.   TimeRange   "25.000000"
  2574.   YMin   "-1.500000"
  2575.   YMax   "1.500000"
  2576.   DataFormat   "Array"
  2577. }
  2578. Block {
  2579.   BlockType   Outport
  2580.   Name   "Bits"
  2581.   Position   [110, 15, 130, 35]
  2582. }
  2583. Block {
  2584.   BlockType   Outport
  2585.   Name   "QPSK-nSignal"
  2586.   Position   [965, 155, 985, 175]
  2587.   Port   "2"
  2588. }
  2589. Block {
  2590.   BlockType   Outport
  2591.   Name   "Symbols"
  2592.   Position   [110, 60, 130, 80]
  2593.   Port   "3"
  2594. }
  2595. Line {
  2596.   SrcBlock   "QPSK"
  2597.   SrcPort   2
  2598.   Points   [5, 0; 0, 105; 30, 0]
  2599.   Branch {
  2600.     DstBlock     "Raised-Cosinentransmit filter_"
  2601.     DstPort     1
  2602.   }
  2603.   Branch {
  2604.     DstBlock     "a_s(t)"
  2605.     DstPort     1
  2606.   }
  2607. }
  2608. Line {
  2609.   SrcBlock   "QPSK"
  2610.   SrcPort   1
  2611.   Points   [5, 0; 0, -35; 30, 0]
  2612.   Branch {
  2613.     DstBlock     "Raised-Cosinentransmit filter"
  2614.     DstPort     1
  2615.   }
  2616.   Branch {
  2617.     DstBlock     "a_c(t)"
  2618.     DstPort     1
  2619.   }
  2620. }
  2621. Line {
  2622.   SrcBlock   "Source"
  2623.   SrcPort   2
  2624.   Points   [0, -15; 20, 0]
  2625.   Branch {
  2626.     DstBlock     "QPSK"
  2627.     DstPort     1
  2628.   }
  2629.   Branch {
  2630.     Points     [0, -65]
  2631.     DstBlock     "Symbols"
  2632.     DstPort     1
  2633.   }
  2634. }
  2635. Line {
  2636.   SrcBlock   "Product1"
  2637.   SrcPort   1
  2638.   Points   [30, 0]
  2639.   Branch {
  2640.     DstBlock     "u_s(t)"
  2641.     DstPort     1
  2642.   }
  2643.   Branch {
  2644.     Points     [0, -75]
  2645.     DstBlock     "Sum"
  2646.     DstPort     2
  2647.   }
  2648. }
  2649. Line {
  2650.   SrcBlock   "Product"
  2651.   SrcPort   1
  2652.   Points   [30, 0]
  2653.   Branch {
  2654.     DstBlock     "u_c(t)"
  2655.     DstPort     1
  2656.   }
  2657.   Branch {
  2658.     Points     [0, 65]
  2659.     DstBlock     "Sum"
  2660.     DstPort     1
  2661.   }
  2662. }
  2663. Line {
  2664.   SrcBlock   "Raised-Cosinentransmit filter"
  2665.   SrcPort   1
  2666.   Points   [60, 0]
  2667.   Branch {
  2668.     DstBlock     "s_c(t)"
  2669.     DstPort     1
  2670.   }
  2671.   Branch {
  2672.     Points     [65, 0]
  2673.     Branch {
  2674.       DstBlock       "Product"
  2675.       DstPort       1
  2676.     }
  2677.     Branch {
  2678.       Points       [0, -65]
  2679.       DstBlock       "transmitterndiagrams"
  2680.       DstPort       1
  2681.     }
  2682.   }
  2683. }
  2684. Line {
  2685.   SrcBlock   "Raised-Cosinentransmit filter_"
  2686.   SrcPort   1
  2687.   Points   [55, 0]
  2688.   Branch {
  2689.     DstBlock     "s_s(t)"
  2690.     DstPort     1
  2691.   }
  2692.   Branch {
  2693.     Points     [95, 0]
  2694.     Branch {
  2695.       DstBlock       "Product1"
  2696.       DstPort       2
  2697.     }
  2698.     Branch {
  2699.       Points       [0, -205]
  2700.       DstBlock       "transmitterndiagrams"
  2701.       DstPort       2
  2702.     }
  2703.   }
  2704. }
  2705. Line {
  2706.   SrcBlock   "Clock"
  2707.   SrcPort   1
  2708.   Points   [0, 0]
  2709.   Branch {
  2710.     Points     [10, 0; 0, 25]
  2711.     DstBlock     "Fcn2"
  2712.     DstPort     1
  2713.   }
  2714.   Branch {
  2715.     Points     [10, 0; 0, -20]
  2716.     DstBlock     "Fcn1"
  2717.     DstPort     1
  2718.   }
  2719. }
  2720. Line {
  2721.   SrcBlock   "Fcn1"
  2722.   SrcPort   1
  2723.   Points   [20, 0; 0, -45]
  2724.   DstBlock   "Product"
  2725.   DstPort   2
  2726. }
  2727. Line {
  2728.   SrcBlock   "Fcn2"
  2729.   SrcPort   1
  2730.   Points   [20, 0; 0, 50]
  2731.   DstBlock   "Product1"
  2732.   DstPort   1
  2733. }
  2734. Line {
  2735.   SrcBlock   "Sum"
  2736.   SrcPort   1
  2737.   Points   [30, 0]
  2738.   Branch {
  2739.     DstBlock     "u(t)"
  2740.     DstPort     1
  2741.   }
  2742.   Branch {
  2743.     DstBlock     "QPSK-nSignal"
  2744.     DstPort     1
  2745.   }
  2746. }
  2747. Line {
  2748.   SrcBlock   "Source"
  2749.   SrcPort   1
  2750.   Points   [5, 0; 0, -100]
  2751.   DstBlock   "Bits"
  2752.   DstPort   1
  2753. }
  2754.       }
  2755.     }
  2756.     Block {
  2757.       BlockType       Scope
  2758.       Name       "binary data"
  2759.       Ports       [1]
  2760.       Position       [320, 25, 350, 55]
  2761.       Orientation       "up"
  2762.       NamePlacement       "alternate"
  2763.       Location       [227, 341, 1147, 441]
  2764.       Open       off
  2765.       NumInputPorts       "1"
  2766.       List {
  2767. ListType AxesTitles
  2768. axes1 "%<SignalLabel>"
  2769.       }
  2770.       TimeRange       "25.000000"
  2771.       YMin       "-3"
  2772.       YMax       "3"
  2773.       DataFormat       "Array"
  2774.     }
  2775.     Block {
  2776.       BlockType       SubSystem
  2777.       Name       "constellation"
  2778.       Ports       []
  2779.       Position       [35, 24, 120, 61]
  2780.       BackgroundColor       "lightBlue"
  2781.       ShowName       off
  2782.       OpenFcn       "cplotpsk(4)"
  2783.       ShowPortLabels       off
  2784.       TreatAsAtomicUnit       off
  2785.       MaskType       "constellation"
  2786.       MaskDisplay       "disp('Signal Space \n Constellation')"
  2787.       MaskIconFrame       on
  2788.       MaskIconOpaque       on
  2789.       MaskIconRotate       "none"
  2790.       MaskIconUnits       "autoscale"
  2791.       System {
  2792. Name "constellation"
  2793. Location [74, 73, 1338, 1015]
  2794. Open off
  2795. ModelBrowserVisibility off
  2796. ModelBrowserWidth 200
  2797. ScreenColor "cyan"
  2798. PaperOrientation "landscape"
  2799. PaperPositionMode "auto"
  2800. PaperType "usletter"
  2801. PaperUnits "inches"
  2802. ZoomFactor "100"
  2803.       }
  2804.     }
  2805.     Block {
  2806.       BlockType       Scope
  2807.       Name       "detectednsymbols"
  2808.       Ports       [1]
  2809.       Position       [745, 220, 775, 250]
  2810.       Orientation       "down"
  2811.       NamePlacement       "alternate"
  2812.       Location       [227, 738, 1147, 838]
  2813.       Open       off
  2814.       NumInputPorts       "1"
  2815.       List {
  2816. ListType AxesTitles
  2817. axes1 "%<SignalLabel>"
  2818.       }
  2819.       TimeRange       "25.000000"
  2820.       YMin       "-3"
  2821.       YMax       "3"
  2822.       DataFormat       "Array"
  2823.     }
  2824.     Block {
  2825.       BlockType       SubSystem
  2826.       Name       "noise variance"
  2827.       Ports       []
  2828.       Position       [454, 45, 560, 69]
  2829.       BackgroundColor       "lightBlue"
  2830.       ShowName       off
  2831.       OpenFcn       "setnoise"
  2832.       FontSize       12
  2833.       FontAngle       "italic"
  2834.       ShowPortLabels       off
  2835.       TreatAsAtomicUnit       off
  2836.       MaskType       "noise"
  2837.       MaskDisplay       "disp('Noise variance')"
  2838.       MaskIconFrame       on
  2839.       MaskIconOpaque       on
  2840.       MaskIconRotate       "none"
  2841.       MaskIconUnits       "autoscale"
  2842.       System {
  2843. Name "noise variance"
  2844. Location [136, 230, 381, 439]
  2845. Open off
  2846. ModelBrowserVisibility off
  2847. ModelBrowserWidth 200
  2848. ScreenColor "cyan"
  2849. PaperOrientation "landscape"
  2850. PaperPositionMode "auto"
  2851. PaperType "usletter"
  2852. PaperUnits "inches"
  2853. ZoomFactor "100"
  2854.       }
  2855.     }
  2856.     Block {
  2857.       BlockType       Scope
  2858.       Name       "r(t)"
  2859.       Ports       [1]
  2860.       Position       [585, 25, 615, 55]
  2861.       Orientation       "up"
  2862.       Location       [227, 638, 1147, 738]
  2863.       Open       off
  2864.       NumInputPorts       "1"
  2865.       List {
  2866. ListType AxesTitles
  2867. axes1 "%<SignalLabel>"
  2868.       }
  2869.       TimeRange       "25.000000"
  2870.       YMin       "-1.5"
  2871.       YMax       "1.5"
  2872.       DataFormat       "Array"
  2873.     }
  2874.     Block {
  2875.       BlockType       SubSystem
  2876.       Name       "show receiver"
  2877.       Ports       []
  2878.       Position       [800, 100, 935, 126]
  2879.       BackgroundColor       "lightBlue"
  2880.       ShowName       off
  2881.       OpenFcn       "showrec"
  2882.       FontSize       12
  2883.       FontAngle       "italic"
  2884.       ShowPortLabels       off
  2885.       TreatAsAtomicUnit       off
  2886.       MaskType       "open"
  2887.       MaskDisplay       "disp('Receiver')"
  2888.       MaskIconFrame       on
  2889.       MaskIconOpaque       on
  2890.       MaskIconRotate       "none"
  2891.       MaskIconUnits       "autoscale"
  2892.       System {
  2893. Name "show receiver"
  2894. Location [136, 230, 381, 439]
  2895. Open off
  2896. ModelBrowserVisibility off
  2897. ModelBrowserWidth 200
  2898. ScreenColor "cyan"
  2899. PaperOrientation "landscape"
  2900. PaperPositionMode "auto"
  2901. PaperType "usletter"
  2902. PaperUnits "inches"
  2903. ZoomFactor "100"
  2904.       }
  2905.     }
  2906.     Block {
  2907.       BlockType       SubSystem
  2908.       Name       "show transmitter"
  2909.       Ports       []
  2910.       Position       [35, 100, 170, 126]
  2911.       BackgroundColor       "lightBlue"
  2912.       ShowName       off
  2913.       OpenFcn       "showtra"
  2914.       FontSize       12
  2915.       FontAngle       "italic"
  2916.       ShowPortLabels       off
  2917.       TreatAsAtomicUnit       off
  2918.       MaskType       "open"
  2919.       MaskDisplay       "disp('Transmitter')"
  2920.       MaskIconFrame       on
  2921.       MaskIconOpaque       on
  2922.       MaskIconRotate       "none"
  2923.       MaskIconUnits       "autoscale"
  2924.       System {
  2925. Name "show transmitter"
  2926. Location [136, 230, 381, 439]
  2927. Open off
  2928. ModelBrowserVisibility off
  2929. ModelBrowserWidth 200
  2930. ScreenColor "cyan"
  2931. PaperOrientation "landscape"
  2932. PaperPositionMode "auto"
  2933. PaperType "usletter"
  2934. PaperUnits "inches"
  2935. ZoomFactor "100"
  2936.       }
  2937.     }
  2938.     Block {
  2939.       BlockType       Scope
  2940.       Name       "transmittednsymbols"
  2941.       Ports       [1]
  2942.       Position       [320, 220, 350, 250]
  2943.       Orientation       "down"
  2944.       NamePlacement       "alternate"
  2945.       Location       [227, 440, 1147, 540]
  2946.       Open       off
  2947.       NumInputPorts       "1"
  2948.       List {
  2949. ListType AxesTitles
  2950. axes1 "%<SignalLabel>"
  2951.       }
  2952.       TimeRange       "25.000000"
  2953.       YMin       "-3"
  2954.       YMax       "3"
  2955.       DataFormat       "Array"
  2956.     }
  2957.     Block {
  2958.       BlockType       Scope
  2959.       Name       "u(t)"
  2960.       Ports       [1]
  2961.       Position       [390, 25, 420, 55]
  2962.       Orientation       "up"
  2963.       Location       [227, 538, 1147, 638]
  2964.       Open       off
  2965.       NumInputPorts       "1"
  2966.       List {
  2967. ListType AxesTitles
  2968. axes1 "%<SignalLabel>"
  2969.       }
  2970.       TimeRange       "25.000000"
  2971.       YMin       "-1.5"
  2972.       YMax       "1.5"
  2973.       DataFormat       "Array"
  2974.     }
  2975.     Line {
  2976.       SrcBlock       "Transmitter"
  2977.       SrcPort       2
  2978.       Points       [0, -10; 125, 0]
  2979.       Branch {
  2980. DstBlock "u(t)"
  2981. DstPort 1
  2982.       }
  2983.       Branch {
  2984. DstBlock "Channel"
  2985. DstPort 1
  2986.       }
  2987.     }
  2988.     Line {
  2989.       SrcBlock       "Transmitter"
  2990.       SrcPort       3
  2991.       Points       [55, 0; 0, 40]
  2992.       Branch {
  2993. DstBlock "transmittednsymbols"
  2994. DstPort 1
  2995.       }
  2996.       Branch {
  2997. Points [150, 0]
  2998. DstBlock "Error rate"
  2999. DstPort 1
  3000.       }
  3001.     }
  3002.     Line {
  3003.       SrcBlock       "Transmitter"
  3004.       SrcPort       1
  3005.       Points       [55, 0]
  3006.       DstBlock       "binary data"
  3007.       DstPort       1
  3008.     }
  3009.     Line {
  3010.       SrcBlock       "Channel"
  3011.       SrcPort       1
  3012.       Points       [50, 0]
  3013.       Branch {
  3014. DstBlock "Receiver"
  3015. DstPort 1
  3016.       }
  3017.       Branch {
  3018. DstBlock "r(t)"
  3019. DstPort 1
  3020.       }
  3021.     }
  3022.     Line {
  3023.       SrcBlock       "Receiver"
  3024.       SrcPort       1
  3025.       Points       [30, 0; 0, 80]
  3026.       Branch {
  3027. DstBlock "detectednsymbols"
  3028. DstPort 1
  3029.       }
  3030.       Branch {
  3031. Points [-235, 0]
  3032. DstBlock "Error rate"
  3033. DstPort 2
  3034.       }
  3035.     }
  3036.   }
  3037. }