ds_ss_rake.mdl
上传用户:asli888
上传日期:2013-05-03
资源大小:7045k
文件大小:66k
源码类别:

matlab例程

开发平台:

Matlab

  1. Model {
  2.   Name   "ds_ss_rake"
  3.   Version   4.00
  4.   Description   "Simulation for a single code and multiple user down"
  5. "link  nwithout coding. Major blocks are from block library umts_blks. n n"
  6.   SampleTimeColors   on
  7.   LibraryLinkDisplay   "none"
  8.   WideLines   off
  9.   ShowLineDimensions   on
  10.   ShowPortDataTypes   off
  11.   ShowStorageClass   off
  12.   ExecutionOrder   off
  13.   RecordCoverage   off
  14.   CovPath   "/"
  15.   CovSaveName   "covdata"
  16.   CovMetricSettings   "dw"
  17.   CovNameIncrementing   off
  18.   CovHtmlReporting   on
  19.   BlockNameDataTip   off
  20.   BlockParametersDataTip  on
  21.   BlockDescriptionStringDataTip off
  22.   ToolBar   on
  23.   StatusBar   off
  24.   BrowserShowLibraryLinks on
  25.   BrowserLookUnderMasks   on
  26.   PreLoadFcn   "Tb=0.0001;PG=16;Tc=Tb/PG;fd=50;db=20;qpsk_phase_off"
  27. "set=pi/4;Drake=2;M=4;PathDelay=[0 1 2 3];PathProfile=[0.25 0.25 0.25 0.25];"
  28.   Created   "Wed Mar 24 13:16:54 1999"
  29.   Creator   "Panson Poon"
  30.   UpdateHistory   "UpdateHistoryNever"
  31.   ModifiedByFormat   "%<Auto>"
  32.   LastModifiedBy   "ckpoon"
  33.   ModifiedDateFormat   "%<Auto>"
  34.   LastModifiedDate   "Fri Jan 25 09:45:54 2002"
  35.   ModelVersionFormat   "1.%<AutoIncrement:40>"
  36.   ConfigurationManager   "none"
  37.   SimParamPage   "RTW"
  38.   StartTime   "0.0"
  39.   StopTime   "9999999999999999999"
  40.   SolverMode   "SingleTasking"
  41.   Solver   "FixedStepDiscrete"
  42.   RelTol   "1e-3"
  43.   AbsTol   "auto"
  44.   Refine   "1"
  45.   MaxStep   "auto"
  46.   MinStep   "auto"
  47.   MaxNumMinSteps   "-1"
  48.   InitialStep   "auto"
  49.   FixedStep   "auto"
  50.   MaxOrder   5
  51.   OutputOption   "RefineOutputTimes"
  52.   OutputTimes   "[]"
  53.   LoadExternalInput   off
  54.   ExternalInput   "[t, u]"
  55.   SaveTime   off
  56.   TimeSaveName   "tout"
  57.   SaveState   off
  58.   StateSaveName   "xout"
  59.   SaveOutput   off
  60.   OutputSaveName   "yout"
  61.   LoadInitialState   off
  62.   InitialState   "xInitial"
  63.   SaveFinalState   off
  64.   FinalStateName   "xFinal"
  65.   SaveFormat   "Array"
  66.   LimitDataPoints   off
  67.   MaxDataPoints   "1000"
  68.   Decimation   "1"
  69.   AlgebraicLoopMsg   "warning"
  70.   MinStepSizeMsg   "warning"
  71.   UnconnectedInputMsg   "warning"
  72.   UnconnectedOutputMsg   "warning"
  73.   UnconnectedLineMsg   "warning"
  74.   InheritedTsInSrcMsg   "warning"
  75.   SingleTaskRateTransMsg  "none"
  76.   MultiTaskRateTransMsg   "error"
  77.   IntegerOverflowMsg   "warning"
  78.   CheckForMatrixSingularity "none"
  79.   UnnecessaryDatatypeConvMsg "none"
  80.   Int32ToFloatConvMsg   "warning"
  81.   InvalidFcnCallConnMsg   "error"
  82.   SignalLabelMismatchMsg  "none"
  83.   LinearizationMsg   "none"
  84.   VectorMatrixConversionMsg "none"
  85.   SfunCompatibilityCheckMsg "none"
  86.   BlockPriorityViolationMsg "warning"
  87.   ArrayBoundsChecking   "none"
  88.   ConsistencyChecking   "none"
  89.   ZeroCross   on
  90.   Profile   off
  91.   SimulationMode   "normal"
  92.   RTWSystemTargetFile   "rsim.tlc"
  93.   RTWOptions   " -aEnforceIntegerDowncast=0 -aFoldNonRolledExpr=0 -"
  94. "aForceParamTrailComments=0 -aGenerateComments=1 -aIncHierarchyInIds=0 -aInlin"
  95. "eInvariantSignals=0 -aInlineParameters=0 -aLocalBlockOutputs=0 -aRTWVerbose=1"
  96. " -aRollThreshold=5 -aShowEliminatedStatements=1"
  97.   RTWInlineParameters   off
  98.   RTWRetainRTWFile   off
  99.   RTWTemplateMakefile   "rsim_default_tmf"
  100.   RTWMakeCommand   "make_rtw"
  101.   RTWGenerateCodeOnly   off
  102.   TLCProfiler   off
  103.   TLCDebug   off
  104.   TLCCoverage   off
  105.   AccelSystemTargetFile   "accel.tlc"
  106.   AccelTemplateMakefile   "accel_default_tmf"
  107.   AccelMakeCommand   "make_rtw"
  108.   TryForcingSFcnDF   off
  109.   ExtModeMexFile   "ext_comm"
  110.   ExtModeBatchMode   off
  111.   ExtModeTrigType   "manual"
  112.   ExtModeTrigMode   "oneshot"
  113.   ExtModeTrigPort   "1"
  114.   ExtModeTrigElement   "any"
  115.   ExtModeTrigDuration   1000
  116.   ExtModeTrigHoldOff   0
  117.   ExtModeTrigDelay   0
  118.   ExtModeTrigDirection   "rising"
  119.   ExtModeTrigLevel   0
  120.   ExtModeArchiveMode   "off"
  121.   ExtModeAutoIncOneShot   off
  122.   ExtModeIncDirWhenArm   off
  123.   ExtModeAddSuffixToVar   off
  124.   ExtModeWriteAllDataToWs off
  125.   ExtModeArmWhenConnect   off
  126.   ExtModeSkipDownloadWhenConnect off
  127.   ExtModeLogAll   on
  128.   ExtModeAutoUpdateStatusClock on
  129.   OptimizeBlockIOStorage  off
  130.   BufferReuse   on
  131.   ParameterPooling   on
  132.   BlockReductionOpt   off
  133.   RTWExpressionDepthLimit 5
  134.   BooleanDataType   off
  135.   BlockDefaults {
  136.     Orientation     "right"
  137.     ForegroundColor     "black"
  138.     BackgroundColor     "white"
  139.     DropShadow     off
  140.     NamePlacement     "normal"
  141.     FontName     "Helvetica"
  142.     FontSize     10
  143.     FontWeight     "normal"
  144.     FontAngle     "normal"
  145.     ShowName     on
  146.   }
  147.   AnnotationDefaults {
  148.     HorizontalAlignment     "center"
  149.     VerticalAlignment     "middle"
  150.     ForegroundColor     "black"
  151.     BackgroundColor     "white"
  152.     DropShadow     off
  153.     FontName     "Helvetica"
  154.     FontSize     10
  155.     FontWeight     "normal"
  156.     FontAngle     "normal"
  157.   }
  158.   LineDefaults {
  159.     FontName     "Helvetica"
  160.     FontSize     9
  161.     FontWeight     "normal"
  162.     FontAngle     "normal"
  163.   }
  164.   System {
  165.     Name     "ds_ss_rake"
  166.     Location     [149, 118, 1166, 710]
  167.     Open     on
  168.     ModelBrowserVisibility  off
  169.     ModelBrowserWidth     212
  170.     ScreenColor     "automatic"
  171.     PaperOrientation     "landscape"
  172.     PaperPositionMode     "auto"
  173.     PaperType     "a4letter"
  174.     PaperUnits     "inches"
  175.     ZoomFactor     "100"
  176.     ReportName     "simulink-default.rpt"
  177.     Block {
  178.       BlockType       SubSystem
  179.       Name       "AWGN generation"
  180.       Ports       [0, 1]
  181.       Position       [20, 106, 80, 154]
  182.       ShowPortLabels       on
  183.       TreatAsAtomicUnit       off
  184.       RTWSystemCode       "Auto"
  185.       RTWFcnNameOpts       "Auto"
  186.       RTWFileNameOpts       "Auto"
  187.       System {
  188. Name "AWGN generation"
  189. Location [418, 146, 867, 280]
  190. Open off
  191. ModelBrowserVisibility on
  192. ModelBrowserWidth 200
  193. ScreenColor "automatic"
  194. PaperOrientation "landscape"
  195. PaperPositionMode "auto"
  196. PaperType "usletter"
  197. PaperUnits "inches"
  198. ZoomFactor "100"
  199. Block {
  200.   BlockType   Reference
  201.   Name   "AWGNnChannel"
  202.   Ports   [1, 1]
  203.   Position   [180, 29, 260, 71]
  204.   SourceBlock   "commchan2/AWGNnChannel"
  205.   SourceType   "AWGN Channel"
  206.   seed   "12312431"
  207.   noiseMode   "Signal to noise ratio  (Es/No)"
  208.   EsNodB   "0"
  209.   SNRdB   "10"
  210.   Ps   "1"
  211.   Tsym   "Tb"
  212.   variance   "1"
  213. }
  214. Block {
  215.   BlockType   Constant
  216.   Name   "Constant"
  217.   Position   [25, 38, 55, 62]
  218.   ShowName   off
  219.   Value   "zeros(M,1)"
  220.   VectorParams1D   on
  221. }
  222. Block {
  223.   BlockType   Gain
  224.   Name   "Gain"
  225.   Position   [290, 35, 320, 65]
  226.   Gain   "sqrt(10^(-db/10))"
  227.   Multiplication   "Element-wise(K.*u)"
  228.   SaturateOnIntegerOverflow on
  229. }
  230. Block {
  231.   BlockType   RealImagToComplex
  232.   Name   "Real-Imag tonComplex1"
  233.   Ports   [1, 1]
  234.   Position   [75, 36, 115, 64]
  235.   ShowName   off
  236.   Input   "Real"
  237.   ConstantPart   "0"
  238. }
  239. Block {
  240.   BlockType   ZeroOrderHold
  241.   Name   "Zero-OrdernHold1"
  242.   Position   [140, 37, 160, 63]
  243.   ShowName   off
  244.   SampleTime   "Tb"
  245. }
  246. Block {
  247.   BlockType   Outport
  248.   Name   "Out1"
  249.   Position   [355, 43, 385, 57]
  250.   Port   "1"
  251.   OutputWhenDisabled   "held"
  252.   InitialOutput   "[]"
  253. }
  254. Line {
  255.   SrcBlock   "Zero-OrdernHold1"
  256.   SrcPort   1
  257.   DstBlock   "AWGNnChannel"
  258.   DstPort   1
  259. }
  260. Line {
  261.   SrcBlock   "Real-Imag tonComplex1"
  262.   SrcPort   1
  263.   DstBlock   "Zero-OrdernHold1"
  264.   DstPort   1
  265. }
  266. Line {
  267.   SrcBlock   "Constant"
  268.   SrcPort   1
  269.   DstBlock   "Real-Imag tonComplex1"
  270.   DstPort   1
  271. }
  272. Line {
  273.   SrcBlock   "AWGNnChannel"
  274.   SrcPort   1
  275.   DstBlock   "Gain"
  276.   DstPort   1
  277. }
  278. Line {
  279.   SrcBlock   "Gain"
  280.   SrcPort   1
  281.   DstBlock   "Out1"
  282.   DstPort   1
  283. }
  284.       }
  285.     }
  286.     Block {
  287.       BlockType       SubSystem
  288.       Name       "Decoding"
  289.       Ports       [1, 1]
  290.       Position       [705, 66, 750, 94]
  291.       NamePlacement       "alternate"
  292.       ShowName       off
  293.       ShowPortLabels       on
  294.       TreatAsAtomicUnit       off
  295.       RTWSystemCode       "Auto"
  296.       RTWFcnNameOpts       "Auto"
  297.       RTWFileNameOpts       "Auto"
  298.       System {
  299. Name "Decoding"
  300. Location [467, 497, 865, 675]
  301. Open off
  302. ModelBrowserVisibility off
  303. ModelBrowserWidth 200
  304. ScreenColor "automatic"
  305. PaperOrientation "landscape"
  306. PaperPositionMode "auto"
  307. PaperType "usletter"
  308. PaperUnits "inches"
  309. ZoomFactor "100"
  310. Block {
  311.   BlockType   Inport
  312.   Name   "In1"
  313.   Position   [15, 58, 45, 72]
  314.   Port   "1"
  315.   LatchInput   off
  316.   Interpolate   on
  317. }
  318. Block {
  319.   BlockType   Reference
  320.   Name   "Frame StatusnConversion"
  321.   Ports   [1, 1]
  322.   Position   [175, 50, 235, 80]
  323.   SourceBlock   "dspsigattribs/Frame StatusnConversion"
  324.   SourceType   "Frame Status Conversion"
  325.   growRefPort   off
  326.   outframe   "Frame-based"
  327. }
  328. Block {
  329.   BlockType   Reference
  330.   Name   "QPSKnDemodulatornBaseband"
  331.   Ports   [1, 1]
  332.   Position   [75, 40, 150, 90]
  333.   SourceBlock   "commdigbbndpm2/QPSKnDemodulatornBaseband"
  334.   SourceType   "QPSK Demodulator Baseband"
  335.   OutType   "Bit"
  336.   Dec   "Gray"
  337.   Ph   "qpsk_phase_offset"
  338.   numSamp   "1"
  339. }
  340. Block {
  341.   BlockType   Reference
  342.   Name   "Unbuffer"
  343.   Ports   [1, 1]
  344.   Position   [270, 41, 320, 89]
  345.   SourceBlock   "dspbuff3/Unbuffer"
  346.   SourceType   "Unbuffer"
  347.   ic   "0"
  348. }
  349. Block {
  350.   BlockType   Outport
  351.   Name   "Out1"
  352.   Position   [350, 58, 380, 72]
  353.   Port   "1"
  354.   OutputWhenDisabled   "held"
  355.   InitialOutput   "[]"
  356. }
  357. Line {
  358.   SrcBlock   "Frame StatusnConversion"
  359.   SrcPort   1
  360.   DstBlock   "Unbuffer"
  361.   DstPort   1
  362. }
  363. Line {
  364.   SrcBlock   "Unbuffer"
  365.   SrcPort   1
  366.   DstBlock   "Out1"
  367.   DstPort   1
  368. }
  369. Line {
  370.   SrcBlock   "QPSKnDemodulatornBaseband"
  371.   SrcPort   1
  372.   DstBlock   "Frame StatusnConversion"
  373.   DstPort   1
  374. }
  375. Line {
  376.   SrcBlock   "In1"
  377.   SrcPort   1
  378.   DstBlock   "QPSKnDemodulatornBaseband"
  379.   DstPort   1
  380. }
  381.       }
  382.     }
  383.     Block {
  384.       BlockType       Display
  385.       Name       "Display6"
  386.       Ports       [1]
  387.       Position       [775, 100, 865, 160]
  388.       Orientation       "left"
  389.       ShowName       off
  390.       Format       "short"
  391.       Decimation       "1"
  392.       Floating       off
  393.       SampleTime       "-1"
  394.     }
  395.     Block {
  396.       BlockType       SubSystem
  397.       Name       "EquivalentnRake meMRC1"
  398.       Ports       [4, 1]
  399.       Position       [545, 28, 685, 127]
  400.       NamePlacement       "alternate"
  401.       ShowName       off
  402.       ShowPortLabels       on
  403.       TreatAsAtomicUnit       off
  404.       RTWSystemCode       "Auto"
  405.       RTWFcnNameOpts       "Auto"
  406.       RTWFileNameOpts       "Auto"
  407.       MaskType       "Rake receiver (chip-spaced sampling)"
  408.       MaskDescription       "This Rake receiver is used for simulation with "
  409. "one sample per chip. The delay of the Rake receiver is equal to two symbol du"
  410. "rations, one for timing adjustment and the other due to symbol match filterin"
  411. "g."
  412.       MaskHelp       "file:///u:/ckpoon/mymatlab/mylib/rakeeqrx.html"
  413.       MaskPromptString       "Number of fingers :|Total delay (#Tc) :|Path de"
  414. "lay (#Tc) :|Processing gain :|Symbol time :|Chip time (sample time) :"
  415.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  416.       MaskTunableValueString  "on,on,on,on,on,on"
  417.       MaskCallbackString      "|||||"
  418.       MaskEnableString       "on,on,on,on,on,on"
  419.       MaskVisibilityString    "on,on,on,on,on,on"
  420.       MaskToolTipString       "on,on,on,on,on,on"
  421.       MaskVariables       "M=@1;TD=@2;D=@3;PG=@4;Tb=@5;Tc=@6;"
  422.       MaskInitialization      "TD=TD-PG; M; D = D(1:M);"
  423.       MaskDisplay       "disp('Rake\nReceiver\n(complex spreading)')"
  424.       MaskIconFrame       on
  425.       MaskIconOpaque       off
  426.       MaskIconRotate       "none"
  427.       MaskIconUnits       "autoscale"
  428.       MaskValueString       "M|(Drake)*PG|PathDelay|PG|Tb|Tc"
  429.       MaskVariableAliases     ",,,,,"
  430.       System {
  431. Name "EquivalentnRake meMRC1"
  432. Location [511, 204, 1116, 439]
  433. Open off
  434. ModelBrowserVisibility off
  435. ModelBrowserWidth 200
  436. ScreenColor "white"
  437. PaperOrientation "landscape"
  438. PaperPositionMode "auto"
  439. PaperType "usletter"
  440. PaperUnits "inches"
  441. ZoomFactor "100"
  442. Block {
  443.   BlockType   Inport
  444.   Name   "RxSig"
  445.   Position   [15, 44, 45, 56]
  446.   NamePlacement   "alternate"
  447.   Port   "1"
  448.   LatchInput   off
  449.   Interpolate   on
  450. }
  451. Block {
  452.   BlockType   Inport
  453.   Name   "SC"
  454.   Position   [15, 83, 45, 97]
  455.   Port   "2"
  456.   LatchInput   off
  457.   Interpolate   on
  458. }
  459. Block {
  460.   BlockType   Inport
  461.   Name   "noise"
  462.   Position   [450, 18, 480, 32]
  463.   Orientation   "left"
  464.   Port   "3"
  465.   LatchInput   off
  466.   Interpolate   on
  467. }
  468. Block {
  469.   BlockType   Inport
  470.   Name   "Weight"
  471.   Position   [160, 138, 190, 152]
  472.   Port   "4"
  473.   LatchInput   off
  474.   Interpolate   on
  475. }
  476. Block {
  477.   BlockType   SubSystem
  478.   Name   "Fingers"
  479.   Ports   [2, 1]
  480.   Position   [320, 36, 405, 89]
  481.   ShowPortLabels   on
  482.   TreatAsAtomicUnit   off
  483.   RTWSystemCode   "Auto"
  484.   RTWFcnNameOpts   "Auto"
  485.   RTWFileNameOpts   "Auto"
  486.   MaskType   "Finger for Rake receiver"
  487.   MaskPromptString   "Total delay :|Path delay (#Tc) :|Processing"
  488. " gain :|Symbol time :|Chip time :"
  489.   MaskStyleString   "edit,edit,edit,edit,edit"
  490.   MaskTunableValueString  "on,on,on,on,on"
  491.   MaskCallbackString   "||||"
  492.   MaskEnableString   "on,on,on,on,on"
  493.   MaskVisibilityString   "on,on,on,on,on"
  494.   MaskToolTipString   "on,on,on,on,on"
  495.   MaskVariables   "TD=@1;D=@2;PG=@3;Tb=@4;Tc=@5;"
  496.   MaskDisplay   "disp('Finger')"
  497.   MaskIconFrame   on
  498.   MaskIconOpaque   off
  499.   MaskIconRotate   "none"
  500.   MaskIconUnits   "autoscale"
  501.   MaskValueString   "TD|D|PG|Tb|Tc"
  502.   MaskVariableAliases   ",,,,"
  503.   System {
  504.     Name     "Fingers"
  505.     Location     [172, 267, 642, 465]
  506.     Open     off
  507.     ModelBrowserVisibility  off
  508.     ModelBrowserWidth     200
  509.     ScreenColor     "white"
  510.     PaperOrientation     "landscape"
  511.     PaperPositionMode     "auto"
  512.     PaperType     "usletter"
  513.     PaperUnits     "inches"
  514.     ZoomFactor     "100"
  515.     Block {
  516.       BlockType       Inport
  517.       Name       "In"
  518.       Position       [20, 78, 50, 92]
  519.       NamePlacement       "alternate"
  520.       Port       "1"
  521.       LatchInput       off
  522.       Interpolate       on
  523.     }
  524.     Block {
  525.       BlockType       Inport
  526.       Name       "SC"
  527.       Position       [20, 93, 50, 107]
  528.       Port       "2"
  529.       LatchInput       off
  530.       Interpolate       on
  531.     }
  532.     Block {
  533.       BlockType       Reference
  534.       Name       "Integer Delay"
  535.       Ports       [1, 1]
  536.       Position       [185, 76, 260, 114]
  537.       ShowName       off
  538.       SourceBlock       "dspbdsp2/Integer Delay"
  539.       SourceType       "Integer Delay"
  540.       delay       "TD-D"
  541.       ic       "0"
  542.       frame       off
  543.       df       on
  544.       numChans       "1"
  545.     }
  546.     Block {
  547.       BlockType       Product
  548.       Name       "Product2"
  549.       Ports       [2, 1]
  550.       Position       [100, 77, 130, 108]
  551.       ShowName       off
  552.       Inputs       "2"
  553.       Multiplication       "Element-wise(.*)"
  554.       SaturateOnIntegerOverflow on
  555.     }
  556.     Block {
  557.       BlockType       SubSystem
  558.       Name       "SMF"
  559.       Ports       [1, 1]
  560.       Position       [285, 68, 375, 122]
  561.       ShowPortLabels       on
  562.       TreatAsAtomicUnit       off
  563.       RTWSystemCode       "Auto"
  564.       RTWFcnNameOpts       "Auto"
  565.       RTWFileNameOpts       "Auto"
  566.       MaskType       "Symbol-matched filter for DS-SS"
  567.       MaskPromptString       "Symbol time :|Chip time :"
  568.       MaskStyleString       "edit,edit"
  569.       MaskTunableValueString  "on,on"
  570.       MaskCallbackString      "|"
  571.       MaskEnableString       "on,on"
  572.       MaskVisibilityString    "on,on"
  573.       MaskToolTipString       "on,on"
  574.       MaskVariables       "Tb=@1;Tc=@2;"
  575.       MaskDisplay       "disp('Symbol-Matched\nFilter')"
  576.       MaskIconFrame       on
  577.       MaskIconOpaque       on
  578.       MaskIconRotate       "none"
  579.       MaskIconUnits       "autoscale"
  580.       MaskValueString       "Tb|Tc"
  581.       MaskVariableAliases     ","
  582.       System {
  583. Name "SMF"
  584. Location [63, 705, 550, 882]
  585. Open off
  586. ModelBrowserVisibility off
  587. ModelBrowserWidth 200
  588. ScreenColor "white"
  589. PaperOrientation "landscape"
  590. PaperPositionMode "auto"
  591. PaperType "usletter"
  592. PaperUnits "inches"
  593. ZoomFactor "100"
  594. Block {
  595.   BlockType   Inport
  596.   Name   "*In"
  597.   Position   [15, 88, 45, 102]
  598.   Port   "1"
  599.   LatchInput   off
  600.   Interpolate   on
  601. }
  602. Block {
  603.   BlockType   ComplexToRealImag
  604.   Name   "Complex tonReal-Imag"
  605.   Ports   [1, 2]
  606.   Position   [125, 78, 155, 107]
  607.   ShowName   off
  608.   Output   "RealAndImag"
  609. }
  610. Block {
  611.   BlockType   Gain
  612.   Name   "Gain"
  613.   Position   [70, 80, 100, 110]
  614.   ShowName   off
  615.   Gain   "1/Tb"
  616.   Multiplication   "Element-wise(K.*u)"
  617.   SaturateOnIntegerOverflow on
  618. }
  619. Block {
  620.   BlockType   Reference
  621.   Name   "Integrate and Dump"
  622.   Ports   [1, 1]
  623.   Position   [180, 48, 260, 92]
  624.   ShowName   off
  625.   SourceBlock   "comminteg2/Integrate and Dump"
  626.   SourceType   "Integrate and Dump"
  627.   limit   "inf"
  628.   td   "Tb"
  629.   ts   "Tc"
  630. }
  631. Block {
  632.   BlockType   Reference
  633.   Name   "Integrate and Dump1"
  634.   Ports   [1, 1]
  635.   Position   [180, 98, 260, 142]
  636.   ShowName   off
  637.   SourceBlock   "comminteg2/Integrate and Dump"
  638.   SourceType   "Integrate and Dump"
  639.   limit   "inf"
  640.   td   "Tb"
  641.   ts   "Tc"
  642. }
  643. Block {
  644.   BlockType   RealImagToComplex
  645.   Name   "Real-Imag tonComplex"
  646.   Ports   [2, 1]
  647.   Position   [350, 78, 380, 107]
  648.   ShowName   off
  649.   Input   "RealAndImag"
  650.   ConstantPart   "0"
  651. }
  652. Block {
  653.   BlockType   ZeroOrderHold
  654.   Name   "Zero-OrdernHold"
  655.   Position   [290, 55, 320, 85]
  656.   ShowName   off
  657.   SampleTime   "Tb"
  658. }
  659. Block {
  660.   BlockType   ZeroOrderHold
  661.   Name   "Zero-OrdernHold1"
  662.   Position   [290, 105, 320, 135]
  663.   ShowName   off
  664.   SampleTime   "Tb"
  665. }
  666. Block {
  667.   BlockType   Outport
  668.   Name   "*Out"
  669.   Position   [415, 88, 445, 102]
  670.   Port   "1"
  671.   OutputWhenDisabled   "held"
  672.   InitialOutput   "[]"
  673. }
  674. Line {
  675.   SrcBlock   "*In"
  676.   SrcPort   1
  677.   DstBlock   "Gain"
  678.   DstPort   1
  679. }
  680. Line {
  681.   SrcBlock   "Gain"
  682.   SrcPort   1
  683.   DstBlock   "Complex tonReal-Imag"
  684.   DstPort   1
  685. }
  686. Line {
  687.   SrcBlock   "Integrate and Dump"
  688.   SrcPort   1
  689.   DstBlock   "Zero-OrdernHold"
  690.   DstPort   1
  691. }
  692. Line {
  693.   SrcBlock   "Complex tonReal-Imag"
  694.   SrcPort   1
  695.   Points   [5, 0]
  696.   DstBlock   "Integrate and Dump"
  697.   DstPort   1
  698. }
  699. Line {
  700.   SrcBlock   "Integrate and Dump1"
  701.   SrcPort   1
  702.   DstBlock   "Zero-OrdernHold1"
  703.   DstPort   1
  704. }
  705. Line {
  706.   SrcBlock   "Zero-OrdernHold"
  707.   SrcPort   1
  708.   Points   [10, 0]
  709.   DstBlock   "Real-Imag tonComplex"
  710.   DstPort   1
  711. }
  712. Line {
  713.   SrcBlock   "Zero-OrdernHold1"
  714.   SrcPort   1
  715.   Points   [10, 0]
  716.   DstBlock   "Real-Imag tonComplex"
  717.   DstPort   2
  718. }
  719. Line {
  720.   SrcBlock   "Real-Imag tonComplex"
  721.   SrcPort   1
  722.   DstBlock   "*Out"
  723.   DstPort   1
  724. }
  725. Line {
  726.   SrcBlock   "Complex tonReal-Imag"
  727.   SrcPort   2
  728.   Points   [5, 0]
  729.   DstBlock   "Integrate and Dump1"
  730.   DstPort   1
  731. }
  732.       }
  733.     }
  734.     Block {
  735.       BlockType       Outport
  736.       Name       "Out"
  737.       Position       [400, 88, 430, 102]
  738.       Port       "1"
  739.       OutputWhenDisabled      "held"
  740.       InitialOutput       "[]"
  741.     }
  742.     Line {
  743.       SrcBlock       "Integer Delay"
  744.       SrcPort       1
  745.       DstBlock       "SMF"
  746.       DstPort       1
  747.     }
  748.     Line {
  749.       SrcBlock       "SMF"
  750.       SrcPort       1
  751.       DstBlock       "Out"
  752.       DstPort       1
  753.     }
  754.     Line {
  755.       SrcBlock       "Product2"
  756.       SrcPort       1
  757.       DstBlock       "Integer Delay"
  758.       DstPort       1
  759.     }
  760.     Line {
  761.       SrcBlock       "In"
  762.       SrcPort       1
  763.       DstBlock       "Product2"
  764.       DstPort       1
  765.     }
  766.     Line {
  767.       SrcBlock       "SC"
  768.       SrcPort       1
  769.       DstBlock       "Product2"
  770.       DstPort       2
  771.     }
  772.     Annotation {
  773.       Position       [276, 145]
  774.       Text       "compensate for the delay of CMF (1Tc) a"
  775. "nd path"
  776.     }
  777.   }
  778. }
  779. Block {
  780.   BlockType   From
  781.   Name   "From16"
  782.   Position   [160, 174, 215, 196]
  783.   ShowName   off
  784.   CloseFcn   "tagdialog Close"
  785.   GotoTag   "Fingers"
  786. }
  787. Block {
  788.   BlockType   Goto
  789.   Name   "Goto4"
  790.   Position   [505, 50, 560, 70]
  791.   ShowName   off
  792.   GotoTag   "Fingers"
  793.   TagVisibility   "local"
  794. }
  795. Block {
  796.   BlockType   Math
  797.   Name   "MathnFunction16"
  798.   Ports   [1, 1]
  799.   Position   [245, 134, 265, 156]
  800.   ShowName   off
  801.   Operator   "conj"
  802.   OutputSignalType   "auto"
  803. }
  804. Block {
  805.   BlockType   Product
  806.   Name   "Produt16"
  807.   Ports   [2, 1]
  808.   Position   [285, 137, 315, 168]
  809.   ShowName   off
  810.   Inputs   "2"
  811.   Multiplication   "Element-wise(.*)"
  812.   SaturateOnIntegerOverflow on
  813. }
  814. Block {
  815.   BlockType   SubSystem
  816.   Name   "Subsystem1"
  817.   Ports   [1, 1]
  818.   Position   [205, 75, 250, 105]
  819.   ShowName   off
  820.   ShowPortLabels   on
  821.   TreatAsAtomicUnit   off
  822.   RTWSystemCode   "Auto"
  823.   RTWFcnNameOpts   "Auto"
  824.   RTWFileNameOpts   "Auto"
  825.   System {
  826.     Name     "Subsystem1"
  827.     Location     [197, 630, 505, 809]
  828.     Open     off
  829.     ModelBrowserVisibility  off
  830.     ModelBrowserWidth     200
  831.     ScreenColor     "automatic"
  832.     PaperOrientation     "landscape"
  833.     PaperPositionMode     "auto"
  834.     PaperType     "usletter"
  835.     PaperUnits     "inches"
  836.     ZoomFactor     "100"
  837.     Block {
  838.       BlockType       Inport
  839.       Name       "In1"
  840.       Position       [25, 43, 55, 57]
  841.       Port       "1"
  842.       LatchInput       off
  843.       Interpolate       on
  844.     }
  845.     Block {
  846.       BlockType       Reference
  847.       Name       "DSPnConstant"
  848.       Ports       [0, 1]
  849.       Position       [40, 99, 75, 131]
  850.       SourceBlock       "dspsrcs3/DSPnConstant"
  851.       SourceType       "DSP Constant"
  852.       Value       "ones(M,1)"
  853.       InterpretAs1D       "on"
  854.       SampleMode       "Discrete"
  855.       Ts       "Tc"
  856.       FramebasedOutput       "off"
  857.     }
  858.     Block {
  859.       BlockType       Reference
  860.       Name       "Integer Delay3"
  861.       Ports       [1, 1]
  862.       Position       [180, 45, 210, 75]
  863.       ShowName       off
  864.       SourceBlock       "dspsigops/Integer Delay"
  865.       SourceType       "Integer Delay"
  866.       delay       "D"
  867.       ic       "0"
  868.     }
  869.     Block {
  870.       BlockType       Product
  871.       Name       "Product"
  872.       Ports       [2, 1]
  873.       Position       [105, 44, 130, 71]
  874.       ShowName       off
  875.       Inputs       "2"
  876.       Multiplication       "Element-wise(.*)"
  877.       SaturateOnIntegerOverflow on
  878.     }
  879.     Block {
  880.       BlockType       Outport
  881.       Name       "Out1"
  882.       Position       [235, 53, 265, 67]
  883.       Port       "1"
  884.       OutputWhenDisabled      "held"
  885.       InitialOutput       "[]"
  886.     }
  887.     Line {
  888.       SrcBlock       "DSPnConstant"
  889.       SrcPort       1
  890.       Points       [10, 0]
  891.       DstBlock       "Product"
  892.       DstPort       2
  893.     }
  894.     Line {
  895.       SrcBlock       "In1"
  896.       SrcPort       1
  897.       DstBlock       "Product"
  898.       DstPort       1
  899.     }
  900.     Line {
  901.       SrcBlock       "Product"
  902.       SrcPort       1
  903.       DstBlock       "Integer Delay3"
  904.       DstPort       1
  905.     }
  906.     Line {
  907.       SrcBlock       "Integer Delay3"
  908.       SrcPort       1
  909.       DstBlock       "Out1"
  910.       DstPort       1
  911.     }
  912.   }
  913. }
  914. Block {
  915.   BlockType   Sum
  916.   Name   "Sum8"
  917.   Ports   [2, 1]
  918.   Position   [455, 48, 475, 72]
  919.   ShowName   off
  920.   IconShape   "rectangular"
  921.   Inputs   "++"
  922.   SaturateOnIntegerOverflow on
  923. }
  924. Block {
  925.   BlockType   Sum
  926.   Name   "Sum9"
  927.   Ports   [1, 1]
  928.   Position   [335, 143, 355, 167]
  929.   ShowName   off
  930.   IconShape   "rectangular"
  931.   Inputs   "+"
  932.   SaturateOnIntegerOverflow on
  933. }
  934. Block {
  935.   BlockType   Outport
  936.   Name   "Out"
  937.   Position   [380, 148, 410, 162]
  938.   Port   "1"
  939.   OutputWhenDisabled   "held"
  940.   InitialOutput   "0"
  941. }
  942. Line {
  943.   SrcBlock   "RxSig"
  944.   SrcPort   1
  945.   DstBlock   "Fingers"
  946.   DstPort   1
  947. }
  948. Line {
  949.   SrcBlock   "Produt16"
  950.   SrcPort   1
  951.   DstBlock   "Sum9"
  952.   DstPort   1
  953. }
  954. Line {
  955.   SrcBlock   "Sum9"
  956.   SrcPort   1
  957.   DstBlock   "Out"
  958.   DstPort   1
  959. }
  960. Line {
  961.   SrcBlock   "MathnFunction16"
  962.   SrcPort   1
  963.   DstBlock   "Produt16"
  964.   DstPort   1
  965. }
  966. Line {
  967.   SrcBlock   "Fingers"
  968.   SrcPort   1
  969.   DstBlock   "Sum8"
  970.   DstPort   2
  971. }
  972. Line {
  973.   SrcBlock   "noise"
  974.   SrcPort   1
  975.   Points   [-25, 0; 0, 30]
  976.   DstBlock   "Sum8"
  977.   DstPort   1
  978. }
  979. Line {
  980.   SrcBlock   "Sum8"
  981.   SrcPort   1
  982.   DstBlock   "Goto4"
  983.   DstPort   1
  984. }
  985. Line {
  986.   SrcBlock   "Weight"
  987.   SrcPort   1
  988.   DstBlock   "MathnFunction16"
  989.   DstPort   1
  990. }
  991. Line {
  992.   SrcBlock   "From16"
  993.   SrcPort   1
  994.   Points   [50, 0]
  995.   DstBlock   "Produt16"
  996.   DstPort   2
  997. }
  998. Line {
  999.   SrcBlock   "Subsystem1"
  1000.   SrcPort   1
  1001.   Points   [50, 0]
  1002.   DstBlock   "Fingers"
  1003.   DstPort   2
  1004. }
  1005. Line {
  1006.   SrcBlock   "SC"
  1007.   SrcPort   1
  1008.   DstBlock   "Subsystem1"
  1009.   DstPort   1
  1010. }
  1011.       }
  1012.     }
  1013.     Block {
  1014.       BlockType       Reference
  1015.       Name       "Error Rate Calculation"
  1016.       Ports       [2, 1]
  1017.       Position       [780, 44, 855, 91]
  1018.       ShowName       off
  1019.       SourceBlock       "commsink2/Error Rate Calculation"
  1020.       SourceType       "Error Rate Calculation"
  1021.       N       "2*Drake+2"
  1022.       st_delay       "2*Drake+2"
  1023.       cp_mode       "Entire frame"
  1024.       subframe       "[]"
  1025.       PMode       "Port"
  1026.       WsName       "ErrorVec"
  1027.       RsMode2       off
  1028.       stop       off
  1029.       numErr       "100"
  1030.       maxBits       "1e6"
  1031.     }
  1032.     Block {
  1033.       BlockType       From
  1034.       Name       "From16"
  1035.       Position       [390, 32, 430, 48]
  1036.       ShowName       off
  1037.       CloseFcn       "tagdialog Close"
  1038.       GotoTag       "RxSig1"
  1039.     }
  1040.     Block {
  1041.       BlockType       From
  1042.       Name       "From17"
  1043.       Position       [390, 57, 430, 73]
  1044.       ShowName       off
  1045.       CloseFcn       "tagdialog Close"
  1046.       GotoTag       "SC"
  1047.     }
  1048.     Block {
  1049.       BlockType       From
  1050.       Name       "From18"
  1051.       Position       [155, 252, 240, 268]
  1052.       Orientation       "left"
  1053.       ShowName       off
  1054.       CloseFcn       "tagdialog Close"
  1055.       GotoTag       "BER_MRC"
  1056.     }
  1057.     Block {
  1058.       BlockType       From
  1059.       Name       "From28"
  1060.       Position       [390, 82, 450, 98]
  1061.       ShowName       off
  1062.       CloseFcn       "tagdialog Close"
  1063.       GotoTag       "NoiseVect"
  1064.     }
  1065.     Block {
  1066.       BlockType       From
  1067.       Name       "From4"
  1068.       Position       [390, 107, 455, 123]
  1069.       ShowName       off
  1070.       CloseFcn       "tagdialog Close"
  1071.       GotoTag       "w_MRC1"
  1072.     }
  1073.     Block {
  1074.       BlockType       From
  1075.       Name       "From40"
  1076.       Position       [885, 122, 970, 138]
  1077.       Orientation       "left"
  1078.       ShowName       off
  1079.       CloseFcn       "tagdialog Close"
  1080.       GotoTag       "BER_MRC"
  1081.     }
  1082.     Block {
  1083.       BlockType       From
  1084.       Name       "From6"
  1085.       Position       [705, 47, 755, 63]
  1086.       ShowName       off
  1087.       CloseFcn       "tagdialog Close"
  1088.       GotoTag       "TxData"
  1089.     }
  1090.     Block {
  1091.       BlockType       Goto
  1092.       Name       "Goto11"
  1093.       Position       [105, 121, 175, 139]
  1094.       ShowName       off
  1095.       GotoTag       "NoiseVect"
  1096.       TagVisibility       "local"
  1097.     }
  1098.     Block {
  1099.       BlockType       Goto
  1100.       Name       "Goto2"
  1101.       Position       [310, 48, 365, 62]
  1102.       ShowName       off
  1103.       GotoTag       "w_MRC1"
  1104.       TagVisibility       "local"
  1105.     }
  1106.     Block {
  1107.       BlockType       Goto
  1108.       Name       "Goto5"
  1109.       Position       [320, 22, 365, 38]
  1110.       ShowName       off
  1111.       GotoTag       "RxSig1"
  1112.       TagVisibility       "local"
  1113.     }
  1114.     Block {
  1115.       BlockType       Goto
  1116.       Name       "Goto6"
  1117.       Position       [885, 62, 960, 78]
  1118.       ShowName       off
  1119.       GotoTag       "BER_MRC"
  1120.       TagVisibility       "local"
  1121.     }
  1122.     Block {
  1123.       BlockType       Reference
  1124.       Name       "Integer Delay"
  1125.       Ports       [1, 1]
  1126.       Position       [475, 102, 530, 128]
  1127.       ShowName       off
  1128.       SourceBlock       "dspbdsp2/Integer Delay"
  1129.       SourceType       "Integer Delay"
  1130.       delay       "Drake"
  1131.       ic       "0"
  1132.       frame       off
  1133.       df       on
  1134.       numChans       "1"
  1135.     }
  1136.     Block {
  1137.       BlockType       Math
  1138.       Name       "MathnFunction16"
  1139.       Ports       [1, 1]
  1140.       Position       [475, 54, 495, 76]
  1141.       ShowName       off
  1142.       Operator       "conj"
  1143.       OutputSignalType       "auto"
  1144.     }
  1145.     Block {
  1146.       BlockType       SubSystem
  1147.       Name       "Multipath Channel"
  1148.       Ports       [1, 2]
  1149.       Position       [110, 16, 195, 69]
  1150.       ShowPortLabels       on
  1151.       TreatAsAtomicUnit       off
  1152.       RTWSystemCode       "Auto"
  1153.       RTWFcnNameOpts       "Auto"
  1154.       RTWFileNameOpts       "Auto"
  1155.       MaskType       "Multipath Channel (Jakes model)"
  1156.       MaskPromptString       "Profile|Delay :|Number of generator :|Seed :|Do"
  1157. "ppler frequency (Hz) :|Sample time :"
  1158.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1159.       MaskTunableValueString  "on,on,on,on,on,on"
  1160.       MaskCallbackString      "|||||"
  1161.       MaskEnableString       "on,on,on,on,on,on"
  1162.       MaskVisibilityString    "on,on,on,on,on,on"
  1163.       MaskToolTipString       "on,on,on,on,on,on"
  1164.       MaskVariables       "P=@1;D=@2;No=@3;seed=@4;fd=@5;Ts=@6;"
  1165.       MaskIconFrame       on
  1166.       MaskIconOpaque       on
  1167.       MaskIconRotate       "none"
  1168.       MaskIconUnits       "autoscale"
  1169.       MaskValueString       "PathProfile|PathDelay|length(PathProfile)|1:len"
  1170. "gth(PathProfile)|fd|Tc"
  1171.       MaskVariableAliases     ",,,,,"
  1172.       System {
  1173. Name "Multipath Channel"
  1174. Location [365, 491, 835, 688]
  1175. Open off
  1176. ModelBrowserVisibility off
  1177. ModelBrowserWidth 200
  1178. ScreenColor "automatic"
  1179. PaperOrientation "landscape"
  1180. PaperPositionMode "auto"
  1181. PaperType "usletter"
  1182. PaperUnits "inches"
  1183. ZoomFactor "100"
  1184. Block {
  1185.   BlockType   Inport
  1186.   Name   "In1"
  1187.   Position   [25, 28, 55, 42]
  1188.   Port   "1"
  1189.   LatchInput   off
  1190.   Interpolate   on
  1191. }
  1192. Block {
  1193.   BlockType   Reference
  1194.   Name   "DSPnConstant"
  1195.   Ports   [0, 1]
  1196.   Position   [70, 65, 130, 85]
  1197.   SourceBlock   "dspsrcs3/DSPnConstant"
  1198.   SourceType   "DSP Constant"
  1199.   Value   "ones(length(D),1)"
  1200.   InterpretAs1D   off
  1201.   SampleMode   "Discrete"
  1202.   Ts   "Ts"
  1203.   FramebasedOutput   off
  1204. }
  1205. Block {
  1206.   BlockType   Reference
  1207.   Name   "Integer Delay1"
  1208.   Ports   [1, 1]
  1209.   Position   [230, 27, 275, 63]
  1210.   SourceBlock   "dspsigops/Integer Delay"
  1211.   SourceType   "Integer Delay"
  1212.   delay   "D"
  1213.   ic   "0"
  1214. }
  1215. Block {
  1216.   BlockType   Product
  1217.   Name   "Product"
  1218.   Ports   [2, 1]
  1219.   Position   [155, 26, 200, 59]
  1220.   Inputs   "2"
  1221.   Multiplication   "Element-wise(.*)"
  1222.   SaturateOnIntegerOverflow on
  1223. }
  1224. Block {
  1225.   BlockType   Product
  1226.   Name   "Product1"
  1227.   Ports   [2, 1]
  1228.   Position   [305, 36, 350, 69]
  1229.   Inputs   "2"
  1230.   Multiplication   "Element-wise(.*)"
  1231.   SaturateOnIntegerOverflow on
  1232. }
  1233. Block {
  1234.   BlockType   SubSystem
  1235.   Name   "Rayleigh Fading"
  1236.   Ports   [0, 1]
  1237.   Position   [25, 98, 80, 142]
  1238.   AncestorBlock   "umts_blks/Multipath Channel/Rayleigh Fading"
  1239.   ShowPortLabels   on
  1240.   TreatAsAtomicUnit   off
  1241.   RTWSystemCode   "Auto"
  1242.   RTWFcnNameOpts   "Auto"
  1243.   RTWFileNameOpts   "Auto"
  1244.   MaskType   "Complex Rayleigh Fading Generator (Jakes mo"
  1245. "del)"
  1246.   MaskPromptString   "Power :|Seed :|Number of generators :|Doppl"
  1247. "er frequency :|Sample time :"
  1248.   MaskStyleString   "edit,edit,edit,edit,edit"
  1249.   MaskTunableValueString  "on,on,on,on,on"
  1250.   MaskCallbackString   "||||"
  1251.   MaskEnableString   "on,on,on,on,on"
  1252.   MaskVisibilityString   "on,on,on,on,on"
  1253.   MaskToolTipString   "on,on,on,on,on"
  1254.   MaskVariables   "P=@1;N=@2;No=@3;fd=@4;Ts=@5;"
  1255.   MaskIconFrame   on
  1256.   MaskIconOpaque   on
  1257.   MaskIconRotate   "none"
  1258.   MaskIconUnits   "autoscale"
  1259.   MaskValueString   "P|seed|No|fd|Ts"
  1260.   MaskVariableAliases   ",,,,"
  1261.   System {
  1262.     Name     "Rayleigh Fading"
  1263.     Location     [146, 505, 476, 660]
  1264.     Open     off
  1265.     ModelBrowserVisibility  on
  1266.     ModelBrowserWidth     200
  1267.     ScreenColor     "automatic"
  1268.     PaperOrientation     "landscape"
  1269.     PaperPositionMode     "auto"
  1270.     PaperType     "usletter"
  1271.     PaperUnits     "inches"
  1272.     ZoomFactor     "100"
  1273.     Block {
  1274.       BlockType       SubSystem
  1275.       Name       "Rayliegh Fading"
  1276.       Ports       [0, 2]
  1277.       Position       [25, 27, 100, 58]
  1278.       ShowPortLabels       on
  1279.       TreatAsAtomicUnit       off
  1280.       RTWSystemCode       "Auto"
  1281.       RTWFcnNameOpts       "Auto"
  1282.       RTWFileNameOpts       "Auto"
  1283.       MaskType       "Complex Fading Channel Simulator"
  1284.       MaskDescription       "Using multiple (No+1) sinusoidal genera"
  1285. "tors to approximate a complex Gaussian random process with Doppler spectrum s"
  1286. "hape. This mobel can be used to generate upto No independent Gaussian process"
  1287. "es for simulating a multipath fading channel."
  1288.       MaskPromptString       "Path Nummber (<= No) :|Sample Time :|Qu"
  1289. "adrature phase Power :|In-phase Power :|Number of Generators (No) :|Doppler F"
  1290. "requency (rad/sec) :"
  1291.       MaskStyleString       "edit,edit,edit,edit,edit,edit"
  1292.       MaskTunableValueString  "on,on,on,on,on,on"
  1293.       MaskCallbackString      "|||||"
  1294.       MaskEnableString       "on,on,on,on,on,on"
  1295.       MaskVisibilityString    "on,on,on,on,on,on"
  1296.       MaskToolTipString       "on,on,on,on,on,on"
  1297.       MaskVariables       "N=@1;Ts=@2;Pq=@3;Pi=@4;No=@5;Wd=@6;"
  1298.       MaskInitialization      "x=[];nfor n=1:length(N);x=[x; pi/2+((2"
  1299. "*pi*(N(n)-1)*(1:No)./(No+1))+(pi*(1:No)./(No+1)))];endn"
  1300.       MaskIconFrame       on
  1301.       MaskIconOpaque       on
  1302.       MaskIconRotate       "none"
  1303.       MaskIconUnits       "autoscale"
  1304.       MaskValueString       "N|Ts|0.5*P|0.5*P|No|2*pi*fd"
  1305.       MaskVariableAliases     ",,,,,"
  1306.       System {
  1307. Name "Rayliegh Fading"
  1308. Location [96, 94, 781, 385]
  1309. Open off
  1310. ModelBrowserVisibility on
  1311. ModelBrowserWidth 200
  1312. ScreenColor "white"
  1313. PaperOrientation "landscape"
  1314. PaperPositionMode "auto"
  1315. PaperType "usletter"
  1316. PaperUnits "inches"
  1317. ZoomFactor "100"
  1318. Block {
  1319.   BlockType   Sin
  1320.   Name   "Cosine1"
  1321.   Position   [15, 95, 45, 125]
  1322.   SineType   "Time-based"
  1323.   Amplitude   "1"
  1324.   Bias   "0"
  1325.   Frequency   "ones(length(N),1)*Wd*cos( (2*pi*(1:"
  1326. "No)) ./ (2*(2*No+1)) )"
  1327.   Phase   "x"
  1328.   Samples   "10"
  1329.   Offset   "0"
  1330.   SampleTime   "Ts"
  1331.   VectorParams1D   off
  1332. }
  1333. Block {
  1334.   BlockType   Sin
  1335.   Name   "Cosine2"
  1336.   Position   [90, 95, 120, 125]
  1337.   SineType   "Time-based"
  1338.   Amplitude   "0.7071"
  1339.   Bias   "0"
  1340.   Frequency   "ones(length(N),1)*Wd"
  1341.   Phase   "pi/2"
  1342.   Samples   "10"
  1343.   Offset   "0"
  1344.   SampleTime   "Ts"
  1345.   VectorParams1D   off
  1346. }
  1347. Block {
  1348.   BlockType   Reference
  1349.   Name   "DSPnConstant"
  1350.   Ports   [0, 1]
  1351.   Position   [200, 210, 295, 230]
  1352.   ShowName   off
  1353.   SourceBlock   "dspsrcs3/DSPnConstant"
  1354.   SourceType   "DSP Constant"
  1355.   Value   "ones(No+1,1)"
  1356.   InterpretAs1D   off
  1357.   SampleMode   "Discrete"
  1358.   Ts   "Ts"
  1359.   FramebasedOutput   off
  1360. }
  1361. Block {
  1362.   BlockType   Gain
  1363.   Name   "Gain"
  1364.   Position   [460, 65, 490, 95]
  1365.   Gain   "sqrt(Pi(:)/No)"
  1366.   Multiplication   "Element-wise(K.*u)"
  1367.   SaturateOnIntegerOverflow on
  1368. }
  1369. Block {
  1370.   BlockType   Gain
  1371.   Name   "Gain1"
  1372.   Position   [105, 30, 135, 60]
  1373.   Gain   "ones(length(N),1)*2*cos((pi*(1:No))"
  1374. "./(No+1))"
  1375.   Multiplication   "Element-wise(K.*u)"
  1376.   SaturateOnIntegerOverflow on
  1377. }
  1378. Block {
  1379.   BlockType   Gain
  1380.   Name   "Gain2"
  1381.   Position   [105, 165, 135, 195]
  1382.   Gain   "ones(length(N),1)*2*sin((pi*(1:No))"
  1383. "./(No+1))"
  1384.   Multiplication   "Element-wise(K.*u)"
  1385.   SaturateOnIntegerOverflow on
  1386. }
  1387. Block {
  1388.   BlockType   Gain
  1389.   Name   "Gain3"
  1390.   Position   [160, 65, 190, 95]
  1391.   Gain   "2*cos(0)"
  1392.   Multiplication   "Element-wise(K.*u)"
  1393.   SaturateOnIntegerOverflow on
  1394. }
  1395. Block {
  1396.   BlockType   Gain
  1397.   Name   "Gain4"
  1398.   Position   [160, 125, 190, 155]
  1399.   Gain   "2*sin(0)"
  1400.   Multiplication   "Element-wise(K.*u)"
  1401.   SaturateOnIntegerOverflow on
  1402. }
  1403. Block {
  1404.   BlockType   Gain
  1405.   Name   "Gain5"
  1406.   Position   [460, 145, 490, 175]
  1407.   Gain   "sqrt(Pq(:)/(No+1))"
  1408.   Multiplication   "Element-wise(K.*u)"
  1409.   SaturateOnIntegerOverflow on
  1410. }
  1411. Block {
  1412.   BlockType   Reference
  1413.   Name   "MatrixnConcatenation"
  1414.   Ports   [2, 1]
  1415.   Position   [220, 49, 275, 91]
  1416.   SourceBlock   "simulink3/Signalsn& Systems/Matrix"
  1417. "nConcatenation"
  1418.   SourceType   "Matrix Concatenation"
  1419.   numInports   "2"
  1420.   catMethod   "Horizontal"
  1421. }
  1422. Block {
  1423.   BlockType   Reference
  1424.   Name   "MatrixnConcatenation1"
  1425.   Ports   [2, 1]
  1426.   Position   [220, 129, 275, 171]
  1427.   SourceBlock   "simulink3/Signalsn& Systems/Matrix"
  1428. "nConcatenation"
  1429.   SourceType   "Matrix Concatenation"
  1430.   numInports   "2"
  1431.   catMethod   "Horizontal"
  1432. }
  1433. Block {
  1434.   BlockType   Reference
  1435.   Name   "Matrix Multiply"
  1436.   Ports   [2, 1]
  1437.   Position   [355, 61, 410, 99]
  1438.   SourceBlock   "dspmtrx3/Matrix Multiply"
  1439.   SourceType   "Matrix Multiply"
  1440.   numInputPorts   "2"
  1441.   OptimizationLevel   "None"
  1442. }
  1443. Block {
  1444.   BlockType   Reference
  1445.   Name   "Matrix Multiply1"
  1446.   Ports   [2, 1]
  1447.   Position   [355, 141, 410, 179]
  1448.   SourceBlock   "dspmtrx3/Matrix Multiply"
  1449.   SourceType   "Matrix Multiply"
  1450.   numInputPorts   "2"
  1451.   OptimizationLevel   "None"
  1452. }
  1453. Block {
  1454.   BlockType   Outport
  1455.   Name   "I Ch"
  1456.   Position   [530, 70, 550, 90]
  1457.   Port   "1"
  1458.   OutputWhenDisabled   "held"
  1459.   InitialOutput   "0"
  1460. }
  1461. Block {
  1462.   BlockType   Outport
  1463.   Name   "Q Ch"
  1464.   Position   [530, 150, 550, 170]
  1465.   Port   "2"
  1466.   OutputWhenDisabled   "held"
  1467.   InitialOutput   "0"
  1468. }
  1469. Line {
  1470.   SrcBlock   "DSPnConstant"
  1471.   SrcPort   1
  1472.   Points   [25, 0; 0, -50]
  1473.   Branch {
  1474.     DstBlock     "Matrix Multiply1"
  1475.     DstPort     2
  1476.   }
  1477.   Branch {
  1478.     Points     [0, -80]
  1479.     DstBlock     "Matrix Multiply"
  1480.     DstPort     2
  1481.   }
  1482. }
  1483. Line {
  1484.   SrcBlock   "MatrixnConcatenation1"
  1485.   SrcPort   1
  1486.   DstBlock   "Matrix Multiply1"
  1487.   DstPort   1
  1488. }
  1489. Line {
  1490.   SrcBlock   "MatrixnConcatenation"
  1491.   SrcPort   1
  1492.   DstBlock   "Matrix Multiply"
  1493.   DstPort   1
  1494. }
  1495. Line {
  1496.   SrcBlock   "Gain2"
  1497.   SrcPort   1
  1498.   Points   [65, 0]
  1499.   DstBlock   "MatrixnConcatenation1"
  1500.   DstPort   2
  1501. }
  1502. Line {
  1503.   SrcBlock   "Gain1"
  1504.   SrcPort   1
  1505.   Points   [65, 0]
  1506.   DstBlock   "MatrixnConcatenation"
  1507.   DstPort   1
  1508. }
  1509. Line {
  1510.   SrcBlock   "Gain3"
  1511.   SrcPort   1
  1512.   DstBlock   "MatrixnConcatenation"
  1513.   DstPort   2
  1514. }
  1515. Line {
  1516.   SrcBlock   "Gain4"
  1517.   SrcPort   1
  1518.   DstBlock   "MatrixnConcatenation1"
  1519.   DstPort   1
  1520. }
  1521. Line {
  1522.   SrcBlock   "Cosine1"
  1523.   SrcPort   1
  1524.   Points   [0, 0; 25, 0]
  1525.   Branch {
  1526.     Points     [0, -65]
  1527.     DstBlock     "Gain1"
  1528.     DstPort     1
  1529.   }
  1530.   Branch {
  1531.     Points     [0, 70]
  1532.     DstBlock     "Gain2"
  1533.     DstPort     1
  1534.   }
  1535. }
  1536. Line {
  1537.   SrcBlock   "Cosine2"
  1538.   SrcPort   1
  1539.   Points   [0, 0; 15, 0]
  1540.   Branch {
  1541.     Points     [0, -30]
  1542.     DstBlock     "Gain3"
  1543.     DstPort     1
  1544.   }
  1545.   Branch {
  1546.     Points     [0, 30]
  1547.     DstBlock     "Gain4"
  1548.     DstPort     1
  1549.   }
  1550. }
  1551. Line {
  1552.   SrcBlock   "Gain5"
  1553.   SrcPort   1
  1554.   DstBlock   "Q Ch"
  1555.   DstPort   1
  1556. }
  1557. Line {
  1558.   SrcBlock   "Gain"
  1559.   SrcPort   1
  1560.   DstBlock   "I Ch"
  1561.   DstPort   1
  1562. }
  1563. Line {
  1564.   SrcBlock   "Matrix Multiply"
  1565.   SrcPort   1
  1566.   DstBlock   "Gain"
  1567.   DstPort   1
  1568. }
  1569. Line {
  1570.   SrcBlock   "Matrix Multiply1"
  1571.   SrcPort   1
  1572.   DstBlock   "Gain5"
  1573.   DstPort   1
  1574. }
  1575.       }
  1576.     }
  1577.     Block {
  1578.       BlockType       RealImagToComplex
  1579.       Name       "Real-Imag tonComplex"
  1580.       Ports       [2, 1]
  1581.       Position       [140, 28, 170, 57]
  1582.       Input       "RealAndImag"
  1583.       ConstantPart       "0"
  1584.     }
  1585.     Block {
  1586.       BlockType       Outport
  1587.       Name       "Out1"
  1588.       Position       [215, 38, 245, 52]
  1589.       Port       "1"
  1590.       OutputWhenDisabled      "held"
  1591.       InitialOutput       "[]"
  1592.     }
  1593.     Line {
  1594.       SrcBlock       "Real-Imag tonComplex"
  1595.       SrcPort       1
  1596.       DstBlock       "Out1"
  1597.       DstPort       1
  1598.     }
  1599.     Line {
  1600.       SrcBlock       "Rayliegh Fading"
  1601.       SrcPort       1
  1602.       DstBlock       "Real-Imag tonComplex"
  1603.       DstPort       1
  1604.     }
  1605.     Line {
  1606.       SrcBlock       "Rayliegh Fading"
  1607.       SrcPort       2
  1608.       DstBlock       "Real-Imag tonComplex"
  1609.       DstPort       2
  1610.     }
  1611.   }
  1612. }
  1613. Block {
  1614.   BlockType   Sum
  1615.   Name   "Sum"
  1616.   Ports   [1, 1]
  1617.   Position   [370, 45, 390, 65]
  1618.   ShowName   off
  1619.   IconShape   "rectangular"
  1620.   Inputs   "+"
  1621.   SaturateOnIntegerOverflow on
  1622. }
  1623. Block {
  1624.   BlockType   Outport
  1625.   Name   "Out1"
  1626.   Position   [415, 48, 445, 62]
  1627.   Port   "1"
  1628.   OutputWhenDisabled   "held"
  1629.   InitialOutput   "[]"
  1630. }
  1631. Block {
  1632.   BlockType   Outport
  1633.   Name   "CIR"
  1634.   Position   [415, 113, 445, 127]
  1635.   Port   "2"
  1636.   OutputWhenDisabled   "held"
  1637.   InitialOutput   "[]"
  1638. }
  1639. Line {
  1640.   SrcBlock   "Rayleigh Fading"
  1641.   SrcPort   1
  1642.   Points   [205, 0]
  1643.   Branch {
  1644.     DstBlock     "CIR"
  1645.     DstPort     1
  1646.   }
  1647.   Branch {
  1648.     DstBlock     "Product1"
  1649.     DstPort     2
  1650.   }
  1651. }
  1652. Line {
  1653.   SrcBlock   "Sum"
  1654.   SrcPort   1
  1655.   DstBlock   "Out1"
  1656.   DstPort   1
  1657. }
  1658. Line {
  1659.   SrcBlock   "In1"
  1660.   SrcPort   1
  1661.   DstBlock   "Product"
  1662.   DstPort   1
  1663. }
  1664. Line {
  1665.   SrcBlock   "Product1"
  1666.   SrcPort   1
  1667.   DstBlock   "Sum"
  1668.   DstPort   1
  1669. }
  1670. Line {
  1671.   SrcBlock   "DSPnConstant"
  1672.   SrcPort   1
  1673.   Points   [0, -25]
  1674.   DstBlock   "Product"
  1675.   DstPort   2
  1676. }
  1677. Line {
  1678.   SrcBlock   "Product"
  1679.   SrcPort   1
  1680.   DstBlock   "Integer Delay1"
  1681.   DstPort   1
  1682. }
  1683. Line {
  1684.   SrcBlock   "Integer Delay1"
  1685.   SrcPort   1
  1686.   DstBlock   "Product1"
  1687.   DstPort   1
  1688. }
  1689.       }
  1690.     }
  1691.     Block {
  1692.       BlockType       SubSystem
  1693.       Name       "SMF"
  1694.       Ports       [1, 1]
  1695.       Position       [225, 42, 285, 68]
  1696.       ShowPortLabels       on
  1697.       TreatAsAtomicUnit       off
  1698.       RTWSystemCode       "Auto"
  1699.       RTWFcnNameOpts       "Auto"
  1700.       RTWFileNameOpts       "Auto"
  1701.       MaskType       "Symbol-matched filter for DS-SS"
  1702.       MaskPromptString       "Symbol time :|Chip time :"
  1703.       MaskStyleString       "edit,edit"
  1704.       MaskTunableValueString  "on,on"
  1705.       MaskCallbackString      "|"
  1706.       MaskEnableString       "on,on"
  1707.       MaskVisibilityString    "on,on"
  1708.       MaskToolTipString       "on,on"
  1709.       MaskVariables       "Tb=@1;Tc=@2;"
  1710.       MaskDisplay       "disp('Symbol-Matched\nFilter')"
  1711.       MaskIconFrame       on
  1712.       MaskIconOpaque       on
  1713.       MaskIconRotate       "none"
  1714.       MaskIconUnits       "autoscale"
  1715.       MaskValueString       "Tb|Tc"
  1716.       MaskVariableAliases     ","
  1717.       System {
  1718. Name "SMF"
  1719. Location [63, 705, 550, 882]
  1720. Open off
  1721. ModelBrowserVisibility off
  1722. ModelBrowserWidth 200
  1723. ScreenColor "white"
  1724. PaperOrientation "landscape"
  1725. PaperPositionMode "auto"
  1726. PaperType "usletter"
  1727. PaperUnits "inches"
  1728. ZoomFactor "100"
  1729. Block {
  1730.   BlockType   Inport
  1731.   Name   "*In"
  1732.   Position   [15, 88, 45, 102]
  1733.   Port   "1"
  1734.   LatchInput   off
  1735.   Interpolate   on
  1736. }
  1737. Block {
  1738.   BlockType   ComplexToRealImag
  1739.   Name   "Complex tonReal-Imag"
  1740.   Ports   [1, 2]
  1741.   Position   [125, 78, 155, 107]
  1742.   ShowName   off
  1743.   Output   "RealAndImag"
  1744. }
  1745. Block {
  1746.   BlockType   Gain
  1747.   Name   "Gain"
  1748.   Position   [70, 80, 100, 110]
  1749.   ShowName   off
  1750.   Gain   "1/Tb"
  1751.   Multiplication   "Element-wise(K.*u)"
  1752.   SaturateOnIntegerOverflow on
  1753. }
  1754. Block {
  1755.   BlockType   Reference
  1756.   Name   "Integrate and Dump"
  1757.   Ports   [1, 1]
  1758.   Position   [180, 48, 260, 92]
  1759.   ShowName   off
  1760.   SourceBlock   "comminteg2/Integrate and Dump"
  1761.   SourceType   "Integrate and Dump"
  1762.   limit   "inf"
  1763.   td   "Tb"
  1764.   ts   "Tc"
  1765. }
  1766. Block {
  1767.   BlockType   Reference
  1768.   Name   "Integrate and Dump1"
  1769.   Ports   [1, 1]
  1770.   Position   [180, 98, 260, 142]
  1771.   ShowName   off
  1772.   SourceBlock   "comminteg2/Integrate and Dump"
  1773.   SourceType   "Integrate and Dump"
  1774.   limit   "inf"
  1775.   td   "Tb"
  1776.   ts   "Tc"
  1777. }
  1778. Block {
  1779.   BlockType   RealImagToComplex
  1780.   Name   "Real-Imag tonComplex"
  1781.   Ports   [2, 1]
  1782.   Position   [350, 78, 380, 107]
  1783.   ShowName   off
  1784.   Input   "RealAndImag"
  1785.   ConstantPart   "0"
  1786. }
  1787. Block {
  1788.   BlockType   ZeroOrderHold
  1789.   Name   "Zero-OrdernHold"
  1790.   Position   [290, 55, 320, 85]
  1791.   ShowName   off
  1792.   SampleTime   "Tb"
  1793. }
  1794. Block {
  1795.   BlockType   ZeroOrderHold
  1796.   Name   "Zero-OrdernHold1"
  1797.   Position   [290, 105, 320, 135]
  1798.   ShowName   off
  1799.   SampleTime   "Tb"
  1800. }
  1801. Block {
  1802.   BlockType   Outport
  1803.   Name   "*Out"
  1804.   Position   [415, 88, 445, 102]
  1805.   Port   "1"
  1806.   OutputWhenDisabled   "held"
  1807.   InitialOutput   "[]"
  1808. }
  1809. Line {
  1810.   SrcBlock   "Complex tonReal-Imag"
  1811.   SrcPort   2
  1812.   Points   [5, 0]
  1813.   DstBlock   "Integrate and Dump1"
  1814.   DstPort   1
  1815. }
  1816. Line {
  1817.   SrcBlock   "Real-Imag tonComplex"
  1818.   SrcPort   1
  1819.   DstBlock   "*Out"
  1820.   DstPort   1
  1821. }
  1822. Line {
  1823.   SrcBlock   "Zero-OrdernHold1"
  1824.   SrcPort   1
  1825.   Points   [10, 0]
  1826.   DstBlock   "Real-Imag tonComplex"
  1827.   DstPort   2
  1828. }
  1829. Line {
  1830.   SrcBlock   "Zero-OrdernHold"
  1831.   SrcPort   1
  1832.   Points   [10, 0]
  1833.   DstBlock   "Real-Imag tonComplex"
  1834.   DstPort   1
  1835. }
  1836. Line {
  1837.   SrcBlock   "Integrate and Dump1"
  1838.   SrcPort   1
  1839.   DstBlock   "Zero-OrdernHold1"
  1840.   DstPort   1
  1841. }
  1842. Line {
  1843.   SrcBlock   "Complex tonReal-Imag"
  1844.   SrcPort   1
  1845.   Points   [5, 0]
  1846.   DstBlock   "Integrate and Dump"
  1847.   DstPort   1
  1848. }
  1849. Line {
  1850.   SrcBlock   "Integrate and Dump"
  1851.   SrcPort   1
  1852.   DstBlock   "Zero-OrdernHold"
  1853.   DstPort   1
  1854. }
  1855. Line {
  1856.   SrcBlock   "Gain"
  1857.   SrcPort   1
  1858.   DstBlock   "Complex tonReal-Imag"
  1859.   DstPort   1
  1860. }
  1861. Line {
  1862.   SrcBlock   "*In"
  1863.   SrcPort   1
  1864.   DstBlock   "Gain"
  1865.   DstPort   1
  1866. }
  1867.       }
  1868.     }
  1869.     Block {
  1870.       BlockType       SubSystem
  1871.       Name       "Stop Control"
  1872.       Ports       [1]
  1873.       Position       [15, 189, 120, 231]
  1874.       Orientation       "left"
  1875.       NamePlacement       "alternate"
  1876.       ShowPortLabels       on
  1877.       TreatAsAtomicUnit       off
  1878.       RTWSystemCode       "Auto"
  1879.       RTWFcnNameOpts       "Auto"
  1880.       RTWFileNameOpts       "Auto"
  1881.       MaskType       "Stop Control for BER Simulations"
  1882.       MaskPromptString       "Maximum number of samples :|Minimum number of e"
  1883. "rrors :|Minimum number of samples :|Sample time (Tsam) :"
  1884.       MaskStyleString       "edit,edit,edit,edit"
  1885.       MaskTunableValueString  "on,on,on,on"
  1886.       MaskCallbackString      "|||"
  1887.       MaskEnableString       "on,on,on,on"
  1888.       MaskVisibilityString    "on,on,on,on"
  1889.       MaskToolTipString       "on,on,on,on"
  1890.       MaskVariables       "MaxSamples=@1;MinErrors=@2;MinSamples=@3;Tsam=@"
  1891. "4;"
  1892.       MaskDisplay       "disp(['Simulation Stop\nControl']);"
  1893.       MaskIconFrame       on
  1894.       MaskIconOpaque       off
  1895.       MaskIconRotate       "none"
  1896.       MaskIconUnits       "autoscale"
  1897.       MaskValueString       "1e7|200|5e5|Tb/2"
  1898.       MaskVariableAliases     ",,,"
  1899.       System {
  1900. Name "Stop Control"
  1901. Location [384, 590, 923, 663]
  1902. Open off
  1903. ModelBrowserVisibility off
  1904. ModelBrowserWidth 200
  1905. ScreenColor "automatic"
  1906. PaperOrientation "landscape"
  1907. PaperPositionMode "auto"
  1908. PaperType "usletter"
  1909. PaperUnits "inches"
  1910. ZoomFactor "100"
  1911. Block {
  1912.   BlockType   Inport
  1913.   Name   "In1"
  1914.   Position   [30, 43, 60, 57]
  1915.   Port   "1"
  1916.   LatchInput   off
  1917.   Interpolate   on
  1918. }
  1919. Block {
  1920.   BlockType   Constant
  1921.   Name   "Constant"
  1922.   Position   [25, 83, 100, 107]
  1923.   ShowName   off
  1924.   Value   "MinSamples"
  1925.   VectorParams1D   on
  1926. }
  1927. Block {
  1928.   BlockType   Constant
  1929.   Name   "Constant1"
  1930.   Position   [25, 113, 100, 137]
  1931.   ShowName   off
  1932.   Value   "MinErrors"
  1933.   VectorParams1D   on
  1934. }
  1935. Block {
  1936.   BlockType   Constant
  1937.   Name   "Constant2"
  1938.   Position   [25, 143, 100, 167]
  1939.   ShowName   off
  1940.   Value   "MaxSamples"
  1941.   VectorParams1D   on
  1942. }
  1943. Block {
  1944.   BlockType   Demux
  1945.   Name   "Demux"
  1946.   Ports   [1, 3]
  1947.   Position   [85, 31, 90, 69]
  1948.   BackgroundColor   "black"
  1949.   ShowName   off
  1950.   Outputs   "3"
  1951.   BusSelectionMode   off
  1952. }
  1953. Block {
  1954.   BlockType   Logic
  1955.   Name   "LogicalnOperator"
  1956.   Ports   [2, 1]
  1957.   Position   [440, 127, 470, 158]
  1958.   ShowName   off
  1959.   Operator   "OR"
  1960.   Inputs   "2"
  1961. }
  1962. Block {
  1963.   BlockType   Logic
  1964.   Name   "LogicalnOperator1"
  1965.   Ports   [2, 1]
  1966.   Position   [305, 82, 335, 113]
  1967.   ShowName   off
  1968.   Operator   "AND"
  1969.   Inputs   "2"
  1970. }
  1971. Block {
  1972.   BlockType   RelationalOperator
  1973.   Name   "RelationalnOperator"
  1974.   Position   [380, 132, 410, 163]
  1975.   ShowName   off
  1976.   Operator   ">"
  1977. }
  1978. Block {
  1979.   BlockType   RelationalOperator
  1980.   Name   "RelationalnOperator1"
  1981.   Position   [200, 102, 230, 133]
  1982.   ShowName   off
  1983.   Operator   ">"
  1984. }
  1985. Block {
  1986.   BlockType   RelationalOperator
  1987.   Name   "RelationalnOperator2"
  1988.   Position   [250, 72, 280, 103]
  1989.   ShowName   off
  1990.   Operator   ">"
  1991. }
  1992. Block {
  1993.   BlockType   Stop
  1994.   Name   "Stop Simulation"
  1995.   Position   [495, 127, 530, 163]
  1996. }
  1997. Block {
  1998.   BlockType   Terminator
  1999.   Name   "Terminator"
  2000.   Position   [200, 30, 220, 50]
  2001.   NamePlacement   "alternate"
  2002.   ShowName   off
  2003. }
  2004. Block {
  2005.   BlockType   ZeroOrderHold
  2006.   Name   "upsampling4"
  2007.   Position   [120, 144, 145, 166]
  2008.   NamePlacement   "alternate"
  2009.   ShowName   off
  2010.   SampleTime   "Tsam"
  2011. }
  2012. Block {
  2013.   BlockType   ZeroOrderHold
  2014.   Name   "upsampling5"
  2015.   Position   [120, 114, 145, 136]
  2016.   NamePlacement   "alternate"
  2017.   ShowName   off
  2018.   SampleTime   "Tsam"
  2019. }
  2020. Block {
  2021.   BlockType   ZeroOrderHold
  2022.   Name   "upsampling6"
  2023.   Position   [120, 84, 145, 106]
  2024.   NamePlacement   "alternate"
  2025.   ShowName   off
  2026.   SampleTime   "Tsam"
  2027. }
  2028. Line {
  2029.   SrcBlock   "In1"
  2030.   SrcPort   1
  2031.   DstBlock   "Demux"
  2032.   DstPort   1
  2033. }
  2034. Line {
  2035.   SrcBlock   "RelationalnOperator"
  2036.   SrcPort   1
  2037.   DstBlock   "LogicalnOperator"
  2038.   DstPort   2
  2039. }
  2040. Line {
  2041.   SrcBlock   "Demux"
  2042.   SrcPort   2
  2043.   Points   [85, 0; 0, 60]
  2044.   DstBlock   "RelationalnOperator1"
  2045.   DstPort   1
  2046. }
  2047. Line {
  2048.   SrcBlock   "Demux"
  2049.   SrcPort   3
  2050.   Points   [130, 0]
  2051.   Branch {
  2052.     Points     [135, 0; 0, 80]
  2053.     DstBlock     "RelationalnOperator"
  2054.     DstPort     1
  2055.   }
  2056.   Branch {
  2057.     Points     [0, 20]
  2058.     DstBlock     "RelationalnOperator2"
  2059.     DstPort     1
  2060.   }
  2061. }
  2062. Line {
  2063.   SrcBlock   "RelationalnOperator2"
  2064.   SrcPort   1
  2065.   DstBlock   "LogicalnOperator1"
  2066.   DstPort   1
  2067. }
  2068. Line {
  2069.   SrcBlock   "RelationalnOperator1"
  2070.   SrcPort   1
  2071.   Points   [55, 0]
  2072.   DstBlock   "LogicalnOperator1"
  2073.   DstPort   2
  2074. }
  2075. Line {
  2076.   SrcBlock   "LogicalnOperator"
  2077.   SrcPort   1
  2078.   DstBlock   "Stop Simulation"
  2079.   DstPort   1
  2080. }
  2081. Line {
  2082.   SrcBlock   "LogicalnOperator1"
  2083.   SrcPort   1
  2084.   Points   [80, 0; 0, 35]
  2085.   DstBlock   "LogicalnOperator"
  2086.   DstPort   1
  2087. }
  2088. Line {
  2089.   SrcBlock   "Demux"
  2090.   SrcPort   1
  2091.   DstBlock   "Terminator"
  2092.   DstPort   1
  2093. }
  2094. Line {
  2095.   SrcBlock   "Constant2"
  2096.   SrcPort   1
  2097.   DstBlock   "upsampling4"
  2098.   DstPort   1
  2099. }
  2100. Line {
  2101.   SrcBlock   "upsampling4"
  2102.   SrcPort   1
  2103.   DstBlock   "RelationalnOperator"
  2104.   DstPort   2
  2105. }
  2106. Line {
  2107.   SrcBlock   "Constant1"
  2108.   SrcPort   1
  2109.   DstBlock   "upsampling5"
  2110.   DstPort   1
  2111. }
  2112. Line {
  2113.   SrcBlock   "upsampling5"
  2114.   SrcPort   1
  2115.   DstBlock   "RelationalnOperator1"
  2116.   DstPort   2
  2117. }
  2118. Line {
  2119.   SrcBlock   "Constant"
  2120.   SrcPort   1
  2121.   DstBlock   "upsampling6"
  2122.   DstPort   1
  2123. }
  2124. Line {
  2125.   SrcBlock   "upsampling6"
  2126.   SrcPort   1
  2127.   DstBlock   "RelationalnOperator2"
  2128.   DstPort   2
  2129. }
  2130.       }
  2131.     }
  2132.     Block {
  2133.       BlockType       ToWorkspace
  2134.       Name       "To Workspace"
  2135.       Position       [15, 245, 75, 275]
  2136.       Orientation       "left"
  2137.       VariableName       "ErrVect"
  2138.       MaxDataPoints       "1"
  2139.       Decimation       "1"
  2140.       SampleTime       "-1"
  2141.       SaveFormat       "Array"
  2142.     }
  2143.     Block {
  2144.       BlockType       SubSystem
  2145.       Name       "Transmitter"
  2146.       RequirementInfo       "{ }"
  2147.       Ports       [0, 1]
  2148.       Position       [20, 20, 90, 70]
  2149.       ShowPortLabels       on
  2150.       TreatAsAtomicUnit       off
  2151.       RTWSystemCode       "Auto"
  2152.       RTWFcnNameOpts       "Auto"
  2153.       RTWFileNameOpts       "Auto"
  2154.       System {
  2155. Name "Transmitter"
  2156. Location [187, 151, 588, 447]
  2157. Open off
  2158. ModelBrowserVisibility off
  2159. ModelBrowserWidth 200
  2160. ScreenColor "automatic"
  2161. PaperOrientation "landscape"
  2162. PaperPositionMode "auto"
  2163. PaperType "usletter"
  2164. PaperUnits "inches"
  2165. ZoomFactor "100"
  2166. Block {
  2167.   BlockType   SubSystem
  2168.   Name   "Data generator"
  2169.   Ports   [0, 1]
  2170.   Position   [15, 31, 80, 69]
  2171.   ShowPortLabels   on
  2172.   TreatAsAtomicUnit   off
  2173.   RTWSystemCode   "Auto"
  2174.   RTWFcnNameOpts   "Auto"
  2175.   RTWFileNameOpts   "Auto"
  2176.   System {
  2177.     Name     "Data generator"
  2178.     Location     [323, 141, 755, 301]
  2179.     Open     off
  2180.     ModelBrowserVisibility  off
  2181.     ModelBrowserWidth     200
  2182.     ScreenColor     "automatic"
  2183.     PaperOrientation     "landscape"
  2184.     PaperPositionMode     "auto"
  2185.     PaperType     "usletter"
  2186.     PaperUnits     "inches"
  2187.     ZoomFactor     "100"
  2188.     Block {
  2189.       BlockType       Reference
  2190.       Name       "Buffer"
  2191.       Ports       [1, 1]
  2192.       Position       [140, 25, 190, 75]
  2193.       SourceBlock       "dspbuff3/Buffer"
  2194.       SourceType       "Buffer"
  2195.       N       "2"
  2196.       V       "0"
  2197.       ic       "0"
  2198.     }
  2199.     Block {
  2200.       BlockType       Reference
  2201.       Name       "Convert 2-D to 1-D"
  2202.       Ports       [1, 1]
  2203.       Position       [280, 32, 340, 68]
  2204.       SourceBlock       "dspsigattribs/Convert 2-D to 1-D"
  2205.       SourceType       "Convert 2-D to 1-D"
  2206.     }
  2207.     Block {
  2208.       BlockType       Reference
  2209.       Name       "Frame StatusnConversion"
  2210.       Ports       [1, 1]
  2211.       Position       [210, 34, 260, 66]
  2212.       SourceBlock       "dspsigattribs/Frame StatusnConversion"
  2213.       SourceType       "Frame Status Conversion"
  2214.       growRefPort       "off"
  2215.       outframe       "Sample-based"
  2216.     }
  2217.     Block {
  2218.       BlockType       Goto
  2219.       Name       "Goto4"
  2220.       Position       [145, 112, 190, 128]
  2221.       ShowName       off
  2222.       GotoTag       "TxData"
  2223.       TagVisibility       "global"
  2224.     }
  2225.     Block {
  2226.       BlockType       Reference
  2227.       Name       "Random-IntegernGenerator"
  2228.       Ports       [0, 1]
  2229.       Position       [15, 28, 95, 72]
  2230.       SourceBlock       "commsource2/Random-IntegernGenerator"
  2231.       SourceType       "Random-Integer Generator"
  2232.       mul       "2"
  2233.       seed       "24680"
  2234.       Ts       "Tb/2"
  2235.       frameBased       "off"
  2236.       sampPerFrame       "2"
  2237.       orient       "off"
  2238.     }
  2239.     Block {
  2240.       BlockType       Outport
  2241.       Name       "Out1"
  2242.       Position       [365, 43, 395, 57]
  2243.       Port       "1"
  2244.       OutputWhenDisabled      "held"
  2245.       InitialOutput       "[]"
  2246.     }
  2247.     Line {
  2248.       SrcBlock       "Convert 2-D to 1-D"
  2249.       SrcPort       1
  2250.       DstBlock       "Out1"
  2251.       DstPort       1
  2252.     }
  2253.     Line {
  2254.       SrcBlock       "Frame StatusnConversion"
  2255.       SrcPort       1
  2256.       DstBlock       "Convert 2-D to 1-D"
  2257.       DstPort       1
  2258.     }
  2259.     Line {
  2260.       SrcBlock       "Buffer"
  2261.       SrcPort       1
  2262.       DstBlock       "Frame StatusnConversion"
  2263.       DstPort       1
  2264.     }
  2265.     Line {
  2266.       SrcBlock       "Random-IntegernGenerator"
  2267.       SrcPort       1
  2268.       Points       [5, 0]
  2269.       Branch {
  2270. DstBlock "Buffer"
  2271. DstPort 1
  2272.       }
  2273.       Branch {
  2274. Points [0, 70]
  2275. DstBlock "Goto4"
  2276. DstPort 1
  2277.       }
  2278.     }
  2279.   }
  2280. }
  2281. Block {
  2282.   BlockType   Goto
  2283.   Name   "Goto1"
  2284.   Position   [240, 197, 285, 213]
  2285.   ShowName   off
  2286.   GotoTag   "SC"
  2287.   TagVisibility   "global"
  2288. }
  2289. Block {
  2290.   BlockType   Lookup
  2291.   Name   "Look-UpnTable1"
  2292.   Position   [120, 151, 145, 179]
  2293.   ShowName   off
  2294.   InputValues   "[0 1]"
  2295.   OutputValues   "[1 -1]"
  2296. }
  2297. Block {
  2298.   BlockType   Lookup
  2299.   Name   "Look-UpnTable2"
  2300.   Position   [120, 221, 145, 249]
  2301.   ShowName   off
  2302.   InputValues   "[0 1]"
  2303.   OutputValues   "[1 -1]"
  2304. }
  2305. Block {
  2306.   BlockType   RealImagToComplex
  2307.   Name   "Real-Imag tonComplex1"
  2308.   Ports   [2, 1]
  2309.   Position   [170, 188, 200, 217]
  2310.   ShowName   off
  2311.   Input   "RealAndImag"
  2312.   ConstantPart   "0"
  2313. }
  2314. Block {
  2315.   BlockType   Reference
  2316.   Name   "Scrambling code"
  2317.   Ports   [0, 1]
  2318.   Position   [15, 143, 95, 187]
  2319.   SourceBlock   "commsource2/PN SequencenGenerator"
  2320.   SourceType   "PN Sequence Generator"
  2321.   poly   "[0 -7 -10]"
  2322.   ini_sta   "[1 0 0 0 0 0 0 0 0 0]"
  2323.   Ts   "Tc"
  2324.   frameBased   "off"
  2325.   sampPerFrame   "1"
  2326. }
  2327. Block {
  2328.   BlockType   Reference
  2329.   Name   "Scrambling code1"
  2330.   Ports   [0, 1]
  2331.   Position   [15, 213, 95, 257]
  2332.   SourceBlock   "commsource2/PN SequencenGenerator"
  2333.   SourceType   "PN Sequence Generator"
  2334.   poly   "[0 -6 -7 -9 -10]"
  2335.   ini_sta   "[1 0 0 0 0 0 0 0 0 0]"
  2336.   Ts   "Tc"
  2337.   frameBased   "off"
  2338.   sampPerFrame   "1"
  2339. }
  2340. Block {
  2341.   BlockType   SubSystem
  2342.   Name   "Spreading,nscrambling,nmodulation andnpu"
  2343. "lse shaping"
  2344.   Ports   [2, 1]
  2345.   Position   [245, 36, 325, 89]
  2346.   ShowPortLabels   on
  2347.   TreatAsAtomicUnit   off
  2348.   RTWSystemCode   "Auto"
  2349.   RTWFcnNameOpts   "Auto"
  2350.   RTWFileNameOpts   "Auto"
  2351.   System {
  2352.     Name     "Spreading,nscrambling,nmodulation andn"
  2353. "pulse shaping"
  2354.     Location     [20, 187, 573, 396]
  2355.     Open     off
  2356.     ModelBrowserVisibility  off
  2357.     ModelBrowserWidth     200
  2358.     ScreenColor     "automatic"
  2359.     PaperOrientation     "landscape"
  2360.     PaperPositionMode     "auto"
  2361.     PaperType     "usletter"
  2362.     PaperUnits     "inches"
  2363.     ZoomFactor     "100"
  2364.     Block {
  2365.       BlockType       Inport
  2366.       Name       "Data"
  2367.       Position       [15, 73, 45, 87]
  2368.       Port       "1"
  2369.       LatchInput       off
  2370.       Interpolate       on
  2371.     }
  2372.     Block {
  2373.       BlockType       Inport
  2374.       Name       "SC"
  2375.       Position       [15, 118, 45, 132]
  2376.       Port       "2"
  2377.       LatchInput       off
  2378.       Interpolate       on
  2379.     }
  2380.     Block {
  2381.       BlockType       Product
  2382.       Name       "Product2"
  2383.       Ports       [2, 1]
  2384.       Position       [305, 73, 335, 97]
  2385.       ShowName       off
  2386.       Inputs       "2"
  2387.       Multiplication       "Element-wise(.*)"
  2388.       SaturateOnIntegerOverflow on
  2389.     }
  2390.     Block {
  2391.       BlockType       Reference
  2392.       Name       "QPSKnModulatornBaseband"
  2393.       Ports       [1, 1]
  2394.       Position       [150, 56, 225, 104]
  2395.       NamePlacement       "alternate"
  2396.       SourceBlock       "commdigbbndpm2/QPSKnModulatornBaseban"
  2397. "d"
  2398.       SourceType       "QPSK Modulator Baseband"
  2399.       InType       "Bit"
  2400.       Enc       "Gray"
  2401.       Ph       "qpsk_phase_offset"
  2402.       numSamp       "1"
  2403.     }
  2404.     Block {
  2405.       BlockType       Outport
  2406.       Name       "Out1"
  2407.       Position       [360, 78, 390, 92]
  2408.       Port       "1"
  2409.       OutputWhenDisabled      "held"
  2410.       InitialOutput       "[]"
  2411.     }
  2412.     Line {
  2413.       SrcBlock       "QPSKnModulatornBaseband"
  2414.       SrcPort       1
  2415.       DstBlock       "Product2"
  2416.       DstPort       1
  2417.     }
  2418.     Line {
  2419.       SrcBlock       "Data"
  2420.       SrcPort       1
  2421.       DstBlock       "QPSKnModulatornBaseband"
  2422.       DstPort       1
  2423.     }
  2424.     Line {
  2425.       SrcBlock       "Product2"
  2426.       SrcPort       1
  2427.       DstBlock       "Out1"
  2428.       DstPort       1
  2429.     }
  2430.     Line {
  2431.       SrcBlock       "SC"
  2432.       SrcPort       1
  2433.       Points       [210, 0; 0, -35]
  2434.       DstBlock       "Product2"
  2435.       DstPort       2
  2436.     }
  2437.     Annotation {
  2438.       Position       [318, 58]
  2439.       Text       "ComplexnSpreading"
  2440.     }
  2441.   }
  2442. }
  2443. Block {
  2444.   BlockType   Outport
  2445.   Name   "TxSig"
  2446.   Position   [355, 58, 385, 72]
  2447.   Port   "1"
  2448.   OutputWhenDisabled   "held"
  2449.   InitialOutput   "[]"
  2450. }
  2451. Line {
  2452.   SrcBlock   "Data generator"
  2453.   SrcPort   1
  2454.   DstBlock   "Spreading,nscrambling,nmodulation andnpu"
  2455. "lse shaping"
  2456.   DstPort   1
  2457. }
  2458. Line {
  2459.   SrcBlock   "Spreading,nscrambling,nmodulation andnpu"
  2460. "lse shaping"
  2461.   SrcPort   1
  2462.   DstBlock   "TxSig"
  2463.   DstPort   1
  2464. }
  2465. Line {
  2466.   SrcBlock   "Scrambling code"
  2467.   SrcPort   1
  2468.   DstBlock   "Look-UpnTable1"
  2469.   DstPort   1
  2470. }
  2471. Line {
  2472.   SrcBlock   "Scrambling code1"
  2473.   SrcPort   1
  2474.   DstBlock   "Look-UpnTable2"
  2475.   DstPort   1
  2476. }
  2477. Line {
  2478.   SrcBlock   "Real-Imag tonComplex1"
  2479.   SrcPort   1
  2480.   Points   [10, 0]
  2481.   Branch {
  2482.     DstBlock     "Goto1"
  2483.     DstPort     1
  2484.   }
  2485.   Branch {
  2486.     Points     [0, -130]
  2487.     DstBlock     "Spreading,nscrambling,nmodulation andn"
  2488. "pulse shaping"
  2489.     DstPort     2
  2490.   }
  2491. }
  2492. Line {
  2493.   SrcBlock   "Look-UpnTable2"
  2494.   SrcPort   1
  2495.   Points   [0, -25]
  2496.   DstBlock   "Real-Imag tonComplex1"
  2497.   DstPort   2
  2498. }
  2499. Line {
  2500.   SrcBlock   "Look-UpnTable1"
  2501.   SrcPort   1
  2502.   Points   [0, 30]
  2503.   DstBlock   "Real-Imag tonComplex1"
  2504.   DstPort   1
  2505. }
  2506.       }
  2507.     }
  2508.     Line {
  2509.       SrcBlock       "From40"
  2510.       SrcPort       1
  2511.       DstBlock       "Display6"
  2512.       DstPort       1
  2513.     }
  2514.     Line {
  2515.       SrcBlock       "Transmitter"
  2516.       SrcPort       1
  2517.       DstBlock       "Multipath Channel"
  2518.       DstPort       1
  2519.     }
  2520.     Line {
  2521.       SrcBlock       "EquivalentnRake meMRC1"
  2522.       SrcPort       1
  2523.       DstBlock       "Decoding"
  2524.       DstPort       1
  2525.     }
  2526.     Line {
  2527.       SrcBlock       "Decoding"
  2528.       SrcPort       1
  2529.       DstBlock       "Error Rate Calculation"
  2530.       DstPort       2
  2531.     }
  2532.     Line {
  2533.       SrcBlock       "From16"
  2534.       SrcPort       1
  2535.       DstBlock       "EquivalentnRake meMRC1"
  2536.       DstPort       1
  2537.     }
  2538.     Line {
  2539.       SrcBlock       "From17"
  2540.       SrcPort       1
  2541.       DstBlock       "MathnFunction16"
  2542.       DstPort       1
  2543.     }
  2544.     Line {
  2545.       SrcBlock       "From4"
  2546.       SrcPort       1
  2547.       DstBlock       "Integer Delay"
  2548.       DstPort       1
  2549.     }
  2550.     Line {
  2551.       SrcBlock       "From28"
  2552.       SrcPort       1
  2553.       DstBlock       "EquivalentnRake meMRC1"
  2554.       DstPort       3
  2555.     }
  2556.     Line {
  2557.       SrcBlock       "Error Rate Calculation"
  2558.       SrcPort       1
  2559.       DstBlock       "Goto6"
  2560.       DstPort       1
  2561.     }
  2562.     Line {
  2563.       SrcBlock       "AWGN generation"
  2564.       SrcPort       1
  2565.       DstBlock       "Goto11"
  2566.       DstPort       1
  2567.     }
  2568.     Line {
  2569.       SrcBlock       "From6"
  2570.       SrcPort       1
  2571.       DstBlock       "Error Rate Calculation"
  2572.       DstPort       1
  2573.     }
  2574.     Line {
  2575.       SrcBlock       "From18"
  2576.       SrcPort       1
  2577.       Points       [0, 0; -10, 0]
  2578.       Branch {
  2579. DstBlock "To Workspace"
  2580. DstPort 1
  2581.       }
  2582.       Branch {
  2583. Points [0, -50]
  2584. DstBlock "Stop Control"
  2585. DstPort 1
  2586.       }
  2587.     }
  2588.     Line {
  2589.       SrcBlock       "Integer Delay"
  2590.       SrcPort       1
  2591.       DstBlock       "EquivalentnRake meMRC1"
  2592.       DstPort       4
  2593.     }
  2594.     Line {
  2595.       SrcBlock       "SMF"
  2596.       SrcPort       1
  2597.       DstBlock       "Goto2"
  2598.       DstPort       1
  2599.     }
  2600.     Line {
  2601.       SrcBlock       "MathnFunction16"
  2602.       SrcPort       1
  2603.       DstBlock       "EquivalentnRake meMRC1"
  2604.       DstPort       2
  2605.     }
  2606.     Line {
  2607.       SrcBlock       "Multipath Channel"
  2608.       SrcPort       2
  2609.       DstBlock       "SMF"
  2610.       DstPort       1
  2611.     }
  2612.     Line {
  2613.       SrcBlock       "Multipath Channel"
  2614.       SrcPort       1
  2615.       DstBlock       "Goto5"
  2616.       DstPort       1
  2617.     }
  2618.     Annotation {
  2619.       Position       [598, 205]
  2620.       Text       "restriction: number of channel paths should les"
  2621. "s than PG"
  2622.       FontName       "Arial"
  2623.       FontSize       14
  2624.       FontWeight       "bold"
  2625.     }
  2626.     Annotation {
  2627.       Position       [617, 156]
  2628.       Text       "QPSK modulation and ncomplex scrambling are us"
  2629. "ed."
  2630.       FontName       "Arial"
  2631.       FontSize       12
  2632.     }
  2633.     Annotation {
  2634.       Position       [612, 272]
  2635.       Text       "Type get_param(bdroot(gcb),'PreLoadFcn') in the"
  2636. " workspace to view initial settings.nTb: symbol duration, PG: processing gai"
  2637. "n, fd: Doppler frequency, nPathDelay: channel delay in chips, PathProfile: c"
  2638. "hannel power profile, Drake: processing delay due to RAKE receivernM: number"
  2639. " of fingers"
  2640.       FontName       "Arial"
  2641.       FontSize       14
  2642.     }
  2643.   }
  2644. }