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

matlab例程

开发平台:

Matlab

  1.       ShowPortLabels       on
  2.       TreatAsAtomicUnit       off
  3.       RTWSystemCode       "Auto"
  4.       RTWFcnNameOpts       "Auto"
  5.       RTWFileNameOpts       "Auto"
  6.       MaskDisplay       "disp(['Dither' 10 'Generator'])"
  7.       MaskIconFrame       on
  8.       MaskIconOpaque       on
  9.       MaskIconRotate       "none"
  10.       MaskIconUnits       "autoscale"
  11.       System {
  12. Name "Subsystem2"
  13. Location [567, 87, 890, 297]
  14. Open off
  15. ModelBrowserVisibility off
  16. ModelBrowserWidth 200
  17. ScreenColor "automatic"
  18. PaperOrientation "landscape"
  19. PaperPositionMode "auto"
  20. PaperType "usletter"
  21. PaperUnits "inches"
  22. ZoomFactor "100"
  23. Block {
  24.   BlockType   Reference
  25.   Name   "Constant"
  26.   Ports   [0, 1]
  27.   Position   [219, 145, 301, 185]
  28.   Orientation   "up"
  29.   NamePlacement   "alternate"
  30.   ShowName   off
  31.   SourceBlock   "fixpt_lib_3p1/Sources/Constant"
  32.   SourceType   "Fixed-Point Constant"
  33.   constval   "0.0"
  34.   OutputDataTypeScalingMode "Specify via dialog"
  35.   OutDataType   "ufix(23)"
  36.   OutScaling   "2^0"
  37.   ConRadixGroup   "Use Specified Scaling"
  38.   DblOver   off
  39.   VectInt   on
  40. }
  41. Block {
  42.   BlockType   Constant
  43.   Name   "Constant1"
  44.   Position   [126, 145, 204, 185]
  45.   Orientation   "up"
  46.   NamePlacement   "alternate"
  47.   ShowName   off
  48.   Value   "enable_dither"
  49.   VectorParams1D   on
  50. }
  51. Block {
  52.   BlockType   SubSystem
  53.   Name   "Subsystem1"
  54.   Ports   [0, 1]
  55.   Position   [30, 145, 110, 185]
  56.   Orientation   "up"
  57.   NamePlacement   "alternate"
  58.   ShowName   off
  59.   ShowPortLabels   on
  60.   TreatAsAtomicUnit   off
  61.   RTWSystemCode   "Auto"
  62.   RTWFcnNameOpts   "Auto"
  63.   RTWFileNameOpts   "Auto"
  64.   MaskDisplay   "disp(['DITHER' 10 'GENERATOR'])"
  65.   MaskIconFrame   on
  66.   MaskIconOpaque   on
  67.   MaskIconRotate   "none"
  68.   MaskIconUnits   "autoscale"
  69.   System {
  70.     Name     "Subsystem1"
  71.     Location     [500, 153, 997, 273]
  72.     Open     off
  73.     ModelBrowserVisibility  off
  74.     ModelBrowserWidth     200
  75.     ScreenColor     "automatic"
  76.     PaperOrientation     "landscape"
  77.     PaperPositionMode     "auto"
  78.     PaperType     "usletter"
  79.     PaperUnits     "inches"
  80.     ZoomFactor     "100"
  81.     Block {
  82.     BlockType     Reference
  83.     Name     "Conversion"
  84.     Ports     [1, 1]
  85.     Position     [245, 40, 285, 80]
  86.     ShowName     off
  87.     SourceBlock     "fixpt_lib_3p1/Data Type/Conversio"
  88. "n"
  89.     SourceType     "Fixed-Point to Fixed-Point Conver"
  90. "sion"
  91.     ConvertRealWorld     "Real World Value"
  92.     OutputDataTypeScalingMode "Specify via dialog"
  93.     OutDataType     "ufix(23)"
  94.     OutScaling     "2^0"
  95.     LockScale     off
  96.     RndMeth     "Nearest"
  97.     DoSatur     off
  98.     DblOver     off
  99.     dolog     on
  100.     }
  101.     Block {
  102.     BlockType     SubSystem
  103.     Name     "ShiftnArithmetic"
  104.     Ports     [1, 1]
  105.     Position     [150, 49, 190, 71]
  106.     ShowPortLabels     on
  107.     TreatAsAtomicUnit     off
  108.     RTWSystemCode     "Auto"
  109.     RTWFcnNameOpts     "Auto"
  110.     RTWFileNameOpts     "Auto"
  111.     MaskPromptString     "Shift bits right how many places "
  112. "(negative is shift left):|Shift binary point right how many places (negative "
  113. "is shift left):"
  114.     MaskStyleString     "edit,edit"
  115.     MaskTunableValueString  "on,on"
  116.     MaskCallbackString     "|"
  117.     MaskEnableString     "on,on"
  118.     MaskVisibilityString    "on,on"
  119.     MaskToolTipString     "on,on"
  120.     MaskVariables     "nBitShiftRight=@1;nBinPtShiftRigh"
  121. "t=@2;"
  122.     MaskInitialization     "netExponent = nBinPtShiftRight - "
  123. "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n  dstr = [dstr,' *"
  124. " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
  125. "ght > 0n  dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
  126. "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
  127. "\nEy = Eu'];nif nBinPtShiftRight > 0n  dstr = [dstr,' + ',num2str(nBinPtSh"
  128. "iftRight)];nelseif nBinPtShiftRight < 0n  dstr = [dstr,' - ',num2str(-nBinP"
  129. "tShiftRight)];nend"
  130.     MaskIconFrame     on
  131.     MaskIconOpaque     on
  132.     MaskIconRotate     "none"
  133.     MaskIconUnits     "autoscale"
  134.     MaskValueString     "(19-bits)|0"
  135.     MaskVariableAliases     ","
  136.     System {
  137.     Name     "ShiftnArithmetic"
  138.     Location     [151, 367, 640, 641]
  139.     Open     off
  140.     ModelBrowserVisibility  off
  141.     ModelBrowserWidth     200
  142.     ScreenColor     "automatic"
  143.     PaperOrientation     "landscape"
  144.     PaperPositionMode     "auto"
  145.     PaperType     "usletter"
  146.     PaperUnits     "inches"
  147.     ZoomFactor     "100"
  148.     Block {
  149.     BlockType     Inport
  150.     Name     "u"
  151.     Position     [25, 158, 55, 172]
  152.     Port     "1"
  153.     LatchInput     off
  154.     Interpolate     on
  155.     }
  156.     Block {
  157.     BlockType     Reference
  158.     Name     "Data TypenPropagation"
  159.     Ports     [3]
  160.     Position     [295, 50, 335, 90]
  161.     SourceBlock     "fixpt_lib_3p1/Data Type/Data Type"
  162. "nPropagation"
  163.     SourceType     "Fixed-Point Data Type Propagation"
  164.     PropDataTypeMode     "Inherit via propagation rule"
  165.     PropDataType     "sfix(16)"
  166.     IfRefDouble     "double"
  167.     IfRefSingle     "single"
  168.     IsSigned     "IsSigned1"
  169.     NumBitsBase     "NumBits1"
  170.     NumBitsMult     "1"
  171.     NumBitsAdd     "0"
  172.     NumBitsAllowFinal     "1:128"
  173.     PropScalingMode     "Inherit via propagation rule"
  174.     PropScaling     "2^-10"
  175.     ValuesUsedBestPrec     "[5 -7]"
  176.     SlopeBase     "Slope1"
  177.     SlopeMult     "2^nBinPtShiftRight"
  178.     SlopeAdd     "0"
  179.     BiasBase     "Bias1"
  180.     BiasMult     "2^netExponent"
  181.     BiasAdd     "0"
  182.     DblOver     off
  183.     }
  184.     Block {
  185.     BlockType     Reference
  186.     Name     "Gain"
  187.     Ports     [1, 1]
  188.     Position     [120, 143, 165, 187]
  189.     SourceBlock     "fixpt_lib_3p1/Math/Gain"
  190.     SourceType     "Fixed-Point Gain"
  191.     gainval     "2^netExponent"
  192.     GainDataTypeScalingMode "Specify via dialog"
  193.     GainDataType     "ufix(19)"
  194.     GainScaling     "2^-14"
  195.     VecRadixGroup     "Best Precision: Matrix-wise"
  196.     OutputDataTypeScalingMode "Specify via dialog"
  197.     OutDataType     "ufix(19)"
  198.     OutScaling     "2^0"
  199.     LockScale     off
  200.     RndMeth     "Floor"
  201.     DoSatur     off
  202.     DblOver     off
  203.     dolog     on
  204.     ElevsMatrix     "Element-wise(K.*u)"
  205.     }
  206.     Block {
  207.     BlockType     Outport
  208.     Name     "y"
  209.     Position     [345, 158, 375, 172]
  210.     Port     "1"
  211.     OutputWhenDisabled     "held"
  212.     InitialOutput     "[]"
  213.     }
  214.     Line {
  215.     SrcBlock     "u"
  216.     SrcPort     1
  217.     Points     [35, 0]
  218.     Branch {
  219.     DstBlock     "Gain"
  220.     DstPort     1
  221.     }
  222.     Branch {
  223.     Points     [0, -110; 160, 0]
  224.     Branch {
  225.     DstBlock     "Data TypenPropagation"
  226.     DstPort     1
  227.     }
  228.     Branch {
  229.     Points     [0, 15]
  230.     DstBlock     "Data TypenPropagation"
  231.     DstPort     2
  232.     }
  233.     }
  234.     }
  235.     Line {
  236.     SrcBlock     "Gain"
  237.     SrcPort     1
  238.     Points     [90, 0]
  239.     Branch {
  240.     DstBlock     "y"
  241.     DstPort     1
  242.     }
  243.     Branch {
  244.     Points     [0, -80]
  245.     DstBlock     "Data TypenPropagation"
  246.     DstPort     3
  247.     }
  248.     }
  249.     }
  250.     }
  251.     Block {
  252.     BlockType     SubSystem
  253.     Name     "Subsystem2"
  254.     Ports     [0, 1]
  255.     Position     [25, 26, 100, 94]
  256.     ShowName     off
  257.     ShowPortLabels     on
  258.     TreatAsAtomicUnit     off
  259.     RTWSystemCode     "Auto"
  260.     RTWFcnNameOpts     "Auto"
  261.     RTWFileNameOpts     "Auto"
  262.     MaskPromptString     "Shift register size (nbits):|Samp"
  263. "le time:"
  264.     MaskStyleString     "edit,edit"
  265.     MaskTunableValueString  "on,on"
  266.     MaskCallbackString     "|"
  267.     MaskEnableString     "on,on"
  268.     MaskVisibilityString    "on,on"
  269.     MaskToolTipString     "on,on"
  270.     MaskVariables     "nbit=@1;ts=@2;"
  271.     MaskDisplay     "disp(['Fixed-point' 10 'Random' 1"
  272. "0 'Number' 10 'Generator'])"
  273.     MaskIconFrame     on
  274.     MaskIconOpaque     on
  275.     MaskIconRotate     "none"
  276.     MaskIconUnits     "autoscale"
  277.     MaskValueString     "19|1/69.333e6"
  278.     MaskVariableAliases     ","
  279.     System {
  280.     Name     "Subsystem2"
  281.     Location     [432, 288, 966, 559]
  282.     Open     off
  283.     ModelBrowserVisibility  off
  284.     ModelBrowserWidth     200
  285.     ScreenColor     "automatic"
  286.     PaperOrientation     "landscape"
  287.     PaperPositionMode     "auto"
  288.     PaperType     "usletter"
  289.     PaperUnits     "inches"
  290.     ZoomFactor     "100"
  291.     Block {
  292.     BlockType     Reference
  293.     Name     "BitwisenOperator"
  294.     Ports     [2, 1]
  295.     Position     [210, 85, 250, 220]
  296.     SourceBlock     "fixpt_lib_3p1/Bits/BitwisenOpera"
  297. "tor"
  298.     SourceType     "Fixed-Point Bitwise Operator"
  299.     logicop     "XOR"
  300.     UseBitMask     off
  301.     NumInputPorts     "2"
  302.     BitMask     "bin2dec('11011001')"
  303.     BitMaskRealWorld     "Stored Integer"
  304.     }
  305.     Block {
  306.     BlockType     Reference
  307.     Name     "Conversion"
  308.     Ports     [1, 1]
  309.     Position     [120, 90, 160, 130]
  310.     SourceBlock     "fixpt_lib_3p1/Data Type/Conversio"
  311. "n"
  312.     SourceType     "Fixed-Point to Fixed-Point Conver"
  313. "sion"
  314.     ConvertRealWorld     "Real World Value"
  315.     OutputDataTypeScalingMode "Specify via dialog"
  316.     OutDataType     "ufix(nbit)"
  317.     OutScaling     "2^0"
  318.     LockScale     off
  319.     RndMeth     "Floor"
  320.     DoSatur     off
  321.     DblOver     off
  322.     dolog     on
  323.     }
  324.     Block {
  325.     BlockType     Reference
  326.     Name     "Conversion1"
  327.     Ports     [1, 1]
  328.     Position     [120, 180, 160, 220]
  329.     SourceBlock     "fixpt_lib_3p1/Data Type/Conversio"
  330. "n"
  331.     SourceType     "Fixed-Point to Fixed-Point Conver"
  332. "sion"
  333.     ConvertRealWorld     "Real World Value"
  334.     OutputDataTypeScalingMode "Specify via dialog"
  335.     OutDataType     "ufix(nbit)"
  336.     OutScaling     "2^0"
  337.     LockScale     off
  338.     RndMeth     "Floor"
  339.     DoSatur     off
  340.     DblOver     off
  341.     dolog     on
  342.     }
  343.     Block {
  344.     BlockType     Reference
  345.     Name     "Integer Delay1"
  346.     Ports     [1, 1]
  347.     Position     [29, 65, 61, 95]
  348.     Orientation     "down"
  349.     NamePlacement     "alternate"
  350.     ShowName     off
  351.     SourceBlock     "fixpt_lib_3p1/Delays & Holds/Inte"
  352. "ger Delay"
  353.     SourceType     "Fixed-Point Integer Delay"
  354.     vinit     "1"
  355.     samptime     "ts"
  356.     NumDelays     "1"
  357.     }
  358.     Block {
  359.     BlockType     Reference
  360.     Name     "Integer Delay2"
  361.     Ports     [1, 1]
  362.     Position     [29, 135, 61, 165]
  363.     Orientation     "down"
  364.     NamePlacement     "alternate"
  365.     ShowName     off
  366.     SourceBlock     "fixpt_lib_3p1/Delays & Holds/Inte"
  367. "ger Delay"
  368.     SourceType     "Fixed-Point Integer Delay"
  369.     vinit     "2"
  370.     samptime     "ts"
  371.     NumDelays     "1"
  372.     }
  373.     Block {
  374.     BlockType     SubSystem
  375.     Name     "Subsystem1"
  376.     Ports     [1, 1]
  377.     Position     [315, 124, 385, 186]
  378.     ShowName     off
  379.     ShowPortLabels     on
  380.     TreatAsAtomicUnit     off
  381.     RTWSystemCode     "Auto"
  382.     RTWFcnNameOpts     "Auto"
  383.     RTWFileNameOpts     "Auto"
  384.     MaskDisplay     "disp(['Cyclic' 10 'Right' 10 'Rot"
  385. "ator' 10 'ROR'])"
  386.     MaskIconFrame     on
  387.     MaskIconOpaque     on
  388.     MaskIconRotate     "none"
  389.     MaskIconUnits     "autoscale"
  390.     System {
  391.     Name     "Subsystem1"
  392.     Location     [420, 138, 957, 336]
  393.     Open     off
  394.     ModelBrowserVisibility  off
  395.     ModelBrowserWidth     200
  396.     ScreenColor     "automatic"
  397.     PaperOrientation     "landscape"
  398.     PaperPositionMode     "auto"
  399.     PaperType     "usletter"
  400.     PaperUnits     "inches"
  401.     ZoomFactor     "100"
  402.     Block {
  403.     BlockType     Inport
  404.     Name     "In1"
  405.     Position     [25, 108, 55, 122]
  406.     Port     "1"
  407.     LatchInput     off
  408.     Interpolate     on
  409.     }
  410.     Block {
  411.     BlockType     Reference
  412.     Name     "Bitwise ANDnwith mask"
  413.     Ports     [1, 1]
  414.     Position     [100, 90, 145, 140]
  415.     SourceBlock     "fixpt_lib_3p1/Bits/BitwisenOpera"
  416. "tor"
  417.     SourceType     "Fixed-Point Bitwise Operator"
  418.     logicop     "AND"
  419.     UseBitMask     on
  420.     NumInputPorts     "1"
  421.     BitMask     "bin2dec('1')"
  422.     BitMaskRealWorld     "Stored Integer"
  423.     }
  424.     Block {
  425.     BlockType     Reference
  426.     Name     "Bitwise OR"
  427.     Ports     [2, 1]
  428.     Position     [365, 29, 415, 71]
  429.     ShowName     off
  430.     SourceBlock     "fixpt_lib_3p1/Bits/BitwisenOpera"
  431. "tor"
  432.     SourceType     "Fixed-Point Bitwise Operator"
  433.     logicop     "OR"
  434.     UseBitMask     off
  435.     NumInputPorts     "2"
  436.     BitMask     "bin2dec('1')"
  437.     BitMaskRealWorld     "Stored Integer"
  438.     }
  439.     Block {
  440.     BlockType     SubSystem
  441.     Name     "ShiftnArithmetic"
  442.     Ports     [1, 1]
  443.     Position     [205, 104, 245, 126]
  444.     ShowPortLabels     on
  445.     TreatAsAtomicUnit     off
  446.     RTWSystemCode     "Auto"
  447.     RTWFcnNameOpts     "Auto"
  448.     RTWFileNameOpts     "Auto"
  449.     MaskPromptString     "Shift bits right how many places "
  450. "(negative is shift left):|Shift binary point right how many places (negative "
  451. "is shift left):"
  452.     MaskStyleString     "edit,edit"
  453.     MaskTunableValueString  "on,on"
  454.     MaskCallbackString     "|"
  455.     MaskEnableString     "on,on"
  456.     MaskVisibilityString    "on,on"
  457.     MaskToolTipString     "on,on"
  458.     MaskVariables     "nBitShiftRight=@1;nBinPtShiftRigh"
  459. "t=@2;"
  460.     MaskInitialization     "netExponent = nBinPtShiftRight - "
  461. "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n  dstr = [dstr,' *"
  462. " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
  463. "ght > 0n  dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
  464. "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
  465. "\nEy = Eu'];nif nBinPtShiftRight > 0n  dstr = [dstr,' + ',num2str(nBinPtSh"
  466. "iftRight)];nelseif nBinPtShiftRight < 0n  dstr = [dstr,' - ',num2str(-nBinP"
  467. "tShiftRight)];nend"
  468.     MaskIconFrame     on
  469.     MaskIconOpaque     on
  470.     MaskIconRotate     "none"
  471.     MaskIconUnits     "autoscale"
  472.     MaskValueString     "-(nbit-1)|0"
  473.     MaskVariableAliases     ","
  474.     System {
  475.     Name     "ShiftnArithmetic"
  476.     Location     [151, 367, 640, 641]
  477.     Open     off
  478.     ModelBrowserVisibility  off
  479.     ModelBrowserWidth     200
  480.     ScreenColor     "automatic"
  481.     PaperOrientation     "landscape"
  482.     PaperPositionMode     "auto"
  483.     PaperType     "usletter"
  484.     PaperUnits     "inches"
  485.     ZoomFactor     "100"
  486.     Block {
  487.     BlockType     Inport
  488.     Name     "u"
  489.     Position     [25, 158, 55, 172]
  490.     Port     "1"
  491.     LatchInput     off
  492.     Interpolate     on
  493.     }
  494.     Block {
  495.     BlockType     Reference
  496.     Name     "Data TypenPropagation"
  497.     Ports     [3]
  498.     Position     [295, 50, 335, 90]
  499.     SourceBlock     "fixpt_lib_3p1/Data Type/Data Type"
  500. "nPropagation"
  501.     SourceType     "Fixed-Point Data Type Propagation"
  502.     PropDataTypeMode     "Inherit via propagation rule"
  503.     PropDataType     "sfix(16)"
  504.     IfRefDouble     "double"
  505.     IfRefSingle     "single"
  506.     IsSigned     "IsSigned1"
  507.     NumBitsBase     "NumBits1"
  508.     NumBitsMult     "1"
  509.     NumBitsAdd     "0"
  510.     NumBitsAllowFinal     "1:128"
  511.     PropScalingMode     "Inherit via propagation rule"
  512.     PropScaling     "2^-10"
  513.     ValuesUsedBestPrec     "[5 -7]"
  514.     SlopeBase     "Slope1"
  515.     SlopeMult     "2^nBinPtShiftRight"
  516.     SlopeAdd     "0"
  517.     BiasBase     "Bias1"
  518.     BiasMult     "2^netExponent"
  519.     BiasAdd     "0"
  520.     DblOver     off
  521.     }
  522.     Block {
  523.     BlockType     Reference
  524.     Name     "Gain"
  525.     Ports     [1, 1]
  526.     Position     [120, 143, 165, 187]
  527.     SourceBlock     "fixpt_lib_3p1/Math/Gain"
  528.     SourceType     "Fixed-Point Gain"
  529.     gainval     "2^netExponent"
  530.     GainDataTypeScalingMode "Specify via dialog"
  531.     GainDataType     "ufix(19)"
  532.     GainScaling     "2^-14"
  533.     VecRadixGroup     "Best Precision: Matrix-wise"
  534.     OutputDataTypeScalingMode "Specify via dialog"
  535.     OutDataType     "ufix(19)"
  536.     OutScaling     "2^0"
  537.     LockScale     off
  538.     RndMeth     "Floor"
  539.     DoSatur     off
  540.     DblOver     off
  541.     dolog     on
  542.     ElevsMatrix     "Element-wise(K.*u)"
  543.     }
  544.     Block {
  545.     BlockType     Outport
  546.     Name     "y"
  547.     Position     [345, 158, 375, 172]
  548.     Port     "1"
  549.     OutputWhenDisabled     "held"
  550.     InitialOutput     "[]"
  551.     }
  552.     Line {
  553.     SrcBlock     "u"
  554.     SrcPort     1
  555.     Points     [35, 0]
  556.     Branch {
  557.     DstBlock     "Gain"
  558.     DstPort     1
  559.     }
  560.     Branch {
  561.     Points     [0, -110; 160, 0]
  562.     Branch {
  563.     DstBlock     "Data TypenPropagation"
  564.     DstPort     1
  565.     }
  566.     Branch {
  567.     Points     [0, 15]
  568.     DstBlock     "Data TypenPropagation"
  569.     DstPort     2
  570.     }
  571.     }
  572.     }
  573.     Line {
  574.     SrcBlock     "Gain"
  575.     SrcPort     1
  576.     Points     [90, 0]
  577.     Branch {
  578.     DstBlock     "y"
  579.     DstPort     1
  580.     }
  581.     Branch {
  582.     Points     [0, -80]
  583.     DstBlock     "Data TypenPropagation"
  584.     DstPort     3
  585.     }
  586.     }
  587.     }
  588.     }
  589.     Block {
  590.     BlockType     SubSystem
  591.     Name     "ShiftnArithmetic1"
  592.     Ports     [1, 1]
  593.     Position     [205, 29, 245, 51]
  594.     ShowPortLabels     on
  595.     TreatAsAtomicUnit     off
  596.     RTWSystemCode     "Auto"
  597.     RTWFcnNameOpts     "Auto"
  598.     RTWFileNameOpts     "Auto"
  599.     MaskPromptString     "Shift bits right how many places "
  600. "(negative is shift left):|Shift binary point right how many places (negative "
  601. "is shift left):"
  602.     MaskStyleString     "edit,edit"
  603.     MaskTunableValueString  "on,on"
  604.     MaskCallbackString     "|"
  605.     MaskEnableString     "on,on"
  606.     MaskVisibilityString    "on,on"
  607.     MaskToolTipString     "on,on"
  608.     MaskVariables     "nBitShiftRight=@1;nBinPtShiftRigh"
  609. "t=@2;"
  610.     MaskInitialization     "netExponent = nBinPtShiftRight - "
  611. "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n  dstr = [dstr,' *"
  612. " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
  613. "ght > 0n  dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
  614. "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
  615. "\nEy = Eu'];nif nBinPtShiftRight > 0n  dstr = [dstr,' + ',num2str(nBinPtSh"
  616. "iftRight)];nelseif nBinPtShiftRight < 0n  dstr = [dstr,' - ',num2str(-nBinP"
  617. "tShiftRight)];nend"
  618.     MaskIconFrame     on
  619.     MaskIconOpaque     on
  620.     MaskIconRotate     "none"
  621.     MaskIconUnits     "autoscale"
  622.     MaskValueString     "1|0"
  623.     MaskVariableAliases     ","
  624.     System {
  625.     Name     "ShiftnArithmetic1"
  626.     Location     [151, 367, 640, 641]
  627.     Open     off
  628.     ModelBrowserVisibility  off
  629.     ModelBrowserWidth     200
  630.     ScreenColor     "automatic"
  631.     PaperOrientation     "landscape"
  632.     PaperPositionMode     "auto"
  633.     PaperType     "usletter"
  634.     PaperUnits     "inches"
  635.     ZoomFactor     "100"
  636.     Block {
  637.     BlockType     Inport
  638.     Name     "u"
  639.     Position     [25, 158, 55, 172]
  640.     Port     "1"
  641.     LatchInput     off
  642.     Interpolate     on
  643.     }
  644.     Block {
  645.     BlockType     Reference
  646.     Name     "Data TypenPropagation"
  647.     Ports     [3]
  648.     Position     [295, 50, 335, 90]
  649.     SourceBlock     "fixpt_lib_3p1/Data Type/Data Type"
  650. "nPropagation"
  651.     SourceType     "Fixed-Point Data Type Propagation"
  652.     PropDataTypeMode     "Inherit via propagation rule"
  653.     PropDataType     "sfix(16)"
  654.     IfRefDouble     "double"
  655.     IfRefSingle     "single"
  656.     IsSigned     "IsSigned1"
  657.     NumBitsBase     "NumBits1"
  658.     NumBitsMult     "1"
  659.     NumBitsAdd     "0"
  660.     NumBitsAllowFinal     "1:128"
  661.     PropScalingMode     "Inherit via propagation rule"
  662.     PropScaling     "2^-10"
  663.     ValuesUsedBestPrec     "[5 -7]"
  664.     SlopeBase     "Slope1"
  665.     SlopeMult     "2^nBinPtShiftRight"
  666.     SlopeAdd     "0"
  667.     BiasBase     "Bias1"
  668.     BiasMult     "2^netExponent"
  669.     BiasAdd     "0"
  670.     DblOver     off
  671.     }
  672.     Block {
  673.     BlockType     Reference
  674.     Name     "Gain"
  675.     Ports     [1, 1]
  676.     Position     [120, 143, 165, 187]
  677.     SourceBlock     "fixpt_lib_3p1/Math/Gain"
  678.     SourceType     "Fixed-Point Gain"
  679.     gainval     "2^netExponent"
  680.     GainDataTypeScalingMode "Specify via dialog"
  681.     GainDataType     "ufix(19)"
  682.     GainScaling     "2^-14"
  683.     VecRadixGroup     "Best Precision: Matrix-wise"
  684.     OutputDataTypeScalingMode "Specify via dialog"
  685.     OutDataType     "ufix(19)"
  686.     OutScaling     "2^0"
  687.     LockScale     off
  688.     RndMeth     "Floor"
  689.     DoSatur     off
  690.     DblOver     off
  691.     dolog     on
  692.     ElevsMatrix     "Element-wise(K.*u)"
  693.     }
  694.     Block {
  695.     BlockType     Outport
  696.     Name     "y"
  697.     Position     [345, 158, 375, 172]
  698.     Port     "1"
  699.     OutputWhenDisabled     "held"
  700.     InitialOutput     "[]"
  701.     }
  702.     Line {
  703.     SrcBlock     "Gain"
  704.     SrcPort     1
  705.     Points     [90, 0]
  706.     Branch {
  707.     Points     [0, -80]
  708.     DstBlock     "Data TypenPropagation"
  709.     DstPort     3
  710.     }
  711.     Branch {
  712.     DstBlock     "y"
  713.     DstPort     1
  714.     }
  715.     }
  716.     Line {
  717.     SrcBlock     "u"
  718.     SrcPort     1
  719.     Points     [35, 0]
  720.     Branch {
  721.     Points     [0, -110; 160, 0]
  722.     Branch {
  723.     Points     [0, 15]
  724.     DstBlock     "Data TypenPropagation"
  725.     DstPort     2
  726.     }
  727.     Branch {
  728.     DstBlock     "Data TypenPropagation"
  729.     DstPort     1
  730.     }
  731.     }
  732.     Branch {
  733.     DstBlock     "Gain"
  734.     DstPort     1
  735.     }
  736.     }
  737.     }
  738.     }
  739.     Block {
  740.     BlockType     Outport
  741.     Name     "Out1"
  742.     Position     [475, 43, 505, 57]
  743.     Port     "1"
  744.     OutputWhenDisabled     "held"
  745.     InitialOutput     "[]"
  746.     }
  747.     Line {
  748.     SrcBlock     "In1"
  749.     SrcPort     1
  750.     Points     [0, 0; 15, 0]
  751.     Branch {
  752.     DstBlock     "Bitwise ANDnwith mask"
  753.     DstPort     1
  754.     }
  755.     Branch {
  756.     Points     [0, -75]
  757.     DstBlock     "ShiftnArithmetic1"
  758.     DstPort     1
  759.     }
  760.     }
  761.     Line {
  762.     SrcBlock     "Bitwise ANDnwith mask"
  763.     SrcPort     1
  764.     DstBlock     "ShiftnArithmetic"
  765.     DstPort     1
  766.     }
  767.     Line {
  768.     SrcBlock     "Bitwise OR"
  769.     SrcPort     1
  770.     DstBlock     "Out1"
  771.     DstPort     1
  772.     }
  773.     Line {
  774.     SrcBlock     "ShiftnArithmetic"
  775.     SrcPort     1
  776.     Points     [55, 0; 0, -55]
  777.     DstBlock     "Bitwise OR"
  778.     DstPort     2
  779.     }
  780.     Line {
  781.     SrcBlock     "ShiftnArithmetic1"
  782.     SrcPort     1
  783.     DstBlock     "Bitwise OR"
  784.     DstPort     1
  785.     }
  786.     }
  787.     }
  788.     Block {
  789.     BlockType     Outport
  790.     Name     "Out"
  791.     Position     [465, 148, 495, 162]
  792.     Port     "1"
  793.     OutputWhenDisabled     "held"
  794.     InitialOutput     "[]"
  795.     }
  796.     Line {
  797.     SrcBlock     "Integer Delay1"
  798.     SrcPort     1
  799.     Points     [0, 0; 0, 10]
  800.     Branch {
  801.     DstBlock     "Integer Delay2"
  802.     DstPort     1
  803.     }
  804.     Branch {
  805.     DstBlock     "Conversion"
  806.     DstPort     1
  807.     }
  808.     }
  809.     Line {
  810.     SrcBlock     "Integer Delay2"
  811.     SrcPort     1
  812.     Points     [0, 30]
  813.     DstBlock     "Conversion1"
  814.     DstPort     1
  815.     }
  816.     Line {
  817.     SrcBlock     "Conversion"
  818.     SrcPort     1
  819.     Points     [15, 0; 0, 10]
  820.     DstBlock     "BitwisenOperator"
  821.     DstPort     1
  822.     }
  823.     Line {
  824.     SrcBlock     "Conversion1"
  825.     SrcPort     1
  826.     Points     [15, 0; 0, -15]
  827.     DstBlock     "BitwisenOperator"
  828.     DstPort     2
  829.     }
  830.     Line {
  831.     SrcBlock     "Subsystem1"
  832.     SrcPort     1
  833.     Points     [55, 0]
  834.     Branch {
  835.     Points     [0, -125; -400, 0]
  836.     DstBlock     "Integer Delay1"
  837.     DstPort     1
  838.     }
  839.     Branch {
  840.     DstBlock     "Out"
  841.     DstPort     1
  842.     }
  843.     }
  844.     Line {
  845.     SrcBlock     "BitwisenOperator"
  846.     SrcPort     1
  847.     DstBlock     "Subsystem1"
  848.     DstPort     1
  849.     }
  850.     }
  851.     }
  852.     Block {
  853.     BlockType     Outport
  854.     Name     "Out"
  855.     Position     [340, 53, 370, 67]
  856.     Port     "1"
  857.     OutputWhenDisabled     "held"
  858.     InitialOutput     "[]"
  859.     }
  860.     Line {
  861.     SrcBlock     "Subsystem2"
  862.     SrcPort     1
  863.     DstBlock     "ShiftnArithmetic"
  864.     DstPort     1
  865.     }
  866.     Line {
  867.     SrcBlock     "Conversion"
  868.     SrcPort     1
  869.     DstBlock     "Out"
  870.     DstPort     1
  871.     }
  872.     Line {
  873.     SrcBlock     "ShiftnArithmetic"
  874.     SrcPort     1
  875.     DstBlock     "Conversion"
  876.     DstPort     1
  877.     }
  878.   }
  879. }
  880. Block {
  881.   BlockType   Switch
  882.   Name   "Switch"
  883.   Position   [150, 65, 180, 95]
  884.   Orientation   "up"
  885.   NamePlacement   "alternate"
  886.   Threshold   "0"
  887. }
  888. Block {
  889.   BlockType   Outport
  890.   Name   "Out"
  891.   Position   [150, 25, 180, 40]
  892.   Orientation   "up"
  893.   Port   "1"
  894.   OutputWhenDisabled   "held"
  895.   InitialOutput   "[]"
  896. }
  897. Line {
  898.   SrcBlock   "Constant1"
  899.   SrcPort   1
  900.   DstBlock   "Switch"
  901.   DstPort   2
  902. }
  903. Line {
  904.   SrcBlock   "Constant"
  905.   SrcPort   1
  906.   Points   [0, -10; -85, 0]
  907.   DstBlock   "Switch"
  908.   DstPort   3
  909. }
  910. Line {
  911.   SrcBlock   "Subsystem1"
  912.   SrcPort   1
  913.   Points   [0, -10; 85, 0]
  914.   DstBlock   "Switch"
  915.   DstPort   1
  916. }
  917. Line {
  918.   SrcBlock   "Switch"
  919.   SrcPort   1
  920.   DstBlock   "Out"
  921.   DstPort   1
  922. }
  923.       }
  924.     }
  925.     Block {
  926.       BlockType       SubSystem
  927.       Name       "Subsystem3"
  928.       Ports       [1, 1]
  929.       Position       [535, 66, 605, 114]
  930.       ShowName       off
  931.       ShowPortLabels       on
  932.       TreatAsAtomicUnit       off
  933.       RTWSystemCode       "Auto"
  934.       RTWFcnNameOpts       "Auto"
  935.       RTWFileNameOpts       "Auto"
  936.       MaskDisplay       "disp(['Sine/Cosine\nLookup'])"
  937.       MaskIconFrame       on
  938.       MaskIconOpaque       on
  939.       MaskIconRotate       "none"
  940.       MaskIconUnits       "autoscale"
  941.       System {
  942. Name "Subsystem3"
  943. Location [306, 317, 991, 524]
  944. Open off
  945. ModelBrowserVisibility off
  946. ModelBrowserWidth 200
  947. ScreenColor "automatic"
  948. PaperOrientation "landscape"
  949. PaperPositionMode "auto"
  950. PaperType "usletter"
  951. PaperUnits "inches"
  952. ZoomFactor "100"
  953. Block {
  954.   BlockType   Inport
  955.   Name   "In"
  956.   Position   [15, 113, 45, 127]
  957.   Port   "1"
  958.   LatchInput   off
  959.   Interpolate   on
  960. }
  961. Block {
  962.   BlockType   Reference
  963.   Name   "MultiportnSelector"
  964.   Ports   [1, 2]
  965.   Position   [325, 88, 405, 132]
  966.   SourceBlock   "dspindex/MultiportnSelector"
  967.   SourceType   "Multiport Selector"
  968.   rowsOrCols   "Rows"
  969.   idxCellArray   "{ 1, 2 }"
  970.   idxErrMode   "Clip Index"
  971. }
  972. Block {
  973.   BlockType   RealImagToComplex
  974.   Name   "Real-Imag tonComplex"
  975.   Ports   [2, 1]
  976.   Position   [485, 89, 515, 131]
  977.   Input   "RealAndImag"
  978.   ConstantPart   "0"
  979. }
  980. Block {
  981.   BlockType   Selector
  982.   Name   "Selector"
  983.   Ports   [2, 1]
  984.   Position   [215, 91, 255, 129]
  985.   InputType   "Vector"
  986.   ElementSrc   "External"
  987.   Elements   "[1 3]"
  988.   RowSrc   "Internal"
  989.   Rows   "1"
  990.   ColumnSrc   "Internal"
  991.   Columns   "1"
  992.   InputPortWidth   "2^18"
  993. }
  994. Block {
  995.   BlockType   SubSystem
  996.   Name   "Sin-CosnLookupnIndices"
  997.   Ports   [1, 1]
  998.   Position   [90, 104, 140, 136]
  999.   ShowPortLabels   on
  1000.   TreatAsAtomicUnit   off
  1001.   RTWSystemCode   "Auto"
  1002.   RTWFcnNameOpts   "Auto"
  1003.   RTWFileNameOpts   "Auto"
  1004.   System {
  1005.     Name     "Sin-CosnLookupnIndices"
  1006.     Location     [305, 376, 750, 521]
  1007.     Open     off
  1008.     ModelBrowserVisibility  off
  1009.     ModelBrowserWidth     200
  1010.     ScreenColor     "automatic"
  1011.     PaperOrientation     "landscape"
  1012.     PaperPositionMode     "auto"
  1013.     PaperType     "usletter"
  1014.     PaperUnits     "inches"
  1015.     ZoomFactor     "100"
  1016.     Block {
  1017.     BlockType     Inport
  1018.     Name     "In"
  1019.     Position     [120, 28, 150, 42]
  1020.     Port     "1"
  1021.     LatchInput     off
  1022.     Interpolate     on
  1023.     }
  1024.     Block {
  1025.     BlockType     Constant
  1026.     Name     "Constant"
  1027.     Position     [322, 90, 388, 120]
  1028.     Orientation     "up"
  1029.     NamePlacement     "alternate"
  1030.     ShowName     off
  1031.     Value     "uint32(1)"
  1032.     VectorParams1D     on
  1033.     }
  1034.     Block {
  1035.     BlockType     Reference
  1036.     Name     "Conversion"
  1037.     Ports     [1, 1]
  1038.     Position     [260, 25, 300, 65]
  1039.     SourceBlock     "fixpt_lib_3p1/Data Type/Conversio"
  1040. "n"
  1041.     SourceType     "Fixed-Point to Fixed-Point Conver"
  1042. "sion"
  1043.     ConvertRealWorld     "Stored Integer"
  1044.     OutputDataTypeScalingMode "Specify via dialog"
  1045.     OutDataType     "uint(32)"
  1046.     OutScaling     "2^0"
  1047.     LockScale     off
  1048.     RndMeth     "Floor"
  1049.     DoSatur     off
  1050.     DblOver     off
  1051.     dolog     on
  1052.     }
  1053.     Block {
  1054.     BlockType     Reference
  1055.     Name     "Index"
  1056.     Ports     [0, 1]
  1057.     Position     [25, 40, 95, 70]
  1058.     SourceBlock     "fixpt_lib_3p1/Sources/Constant"
  1059.     SourceType     "Fixed-Point Constant"
  1060.     constval     "[0,  2^18/4]"
  1061.     OutputDataTypeScalingMode "Specify via dialog"
  1062.     OutDataType     "ufix(18)"
  1063.     OutScaling     "2^0"
  1064.     ConRadixGroup     "Use Specified Scaling"
  1065.     DblOver     off
  1066.     VectInt     on
  1067.     }
  1068.     Block {
  1069.     BlockType     Reference
  1070.     Name     "Sum1"
  1071.     Ports     [2, 1]
  1072.     Position     [175, 25, 215, 65]
  1073.     SourceBlock     "fixpt_lib_3p1/Math/Sum"
  1074.     SourceType     "Fixed-Point Sum"
  1075.     listofsigns     "++"
  1076.     OutputDataTypeScalingMode "Specify via dialog"
  1077.     OutDataType     "ufix(18)"
  1078.     OutScaling     "2^0"
  1079.     LockScale     off
  1080.     RndMeth     "Floor"
  1081.     DoSatur     off
  1082.     DblOver     off
  1083.     dolog     on
  1084.     }
  1085.     Block {
  1086.     BlockType     Sum
  1087.     Name     "Sum2"
  1088.     Ports     [2, 1]
  1089.     Position     [345, 35, 365, 55]
  1090.     ShowName     off
  1091.     IconShape     "round"
  1092.     Inputs     "|++"
  1093.     SaturateOnIntegerOverflow on
  1094.     }
  1095.     Block {
  1096.     BlockType     Outport
  1097.     Name     "Out"
  1098.     Position     [390, 38, 420, 52]
  1099.     Port     "1"
  1100.     OutputWhenDisabled     "held"
  1101.     InitialOutput     "[]"
  1102.     }
  1103.     Line {
  1104.     SrcBlock     "Index"
  1105.     SrcPort     1
  1106.     DstBlock     "Sum1"
  1107.     DstPort     2
  1108.     }
  1109.     Line {
  1110.     SrcBlock     "Sum1"
  1111.     SrcPort     1
  1112.     DstBlock     "Conversion"
  1113.     DstPort     1
  1114.     }
  1115.     Line {
  1116.     SrcBlock     "Conversion"
  1117.     SrcPort     1
  1118.     DstBlock     "Sum2"
  1119.     DstPort     1
  1120.     }
  1121.     Line {
  1122.     SrcBlock     "Constant"
  1123.     SrcPort     1
  1124.     DstBlock     "Sum2"
  1125.     DstPort     2
  1126.     }
  1127.     Line {
  1128.     SrcBlock     "In"
  1129.     SrcPort     1
  1130.     DstBlock     "Sum1"
  1131.     DstPort     1
  1132.     }
  1133.     Line {
  1134.     SrcBlock     "Sum2"
  1135.     SrcPort     1
  1136.     DstBlock     "Out"
  1137.     DstPort     1
  1138.     }
  1139.   }
  1140. }
  1141. Block {
  1142.   BlockType   Reference
  1143.   Name   "Sine LUTnmemory values"
  1144.   Ports   [0, 1]
  1145.   Position   [25, 20, 95, 50]
  1146.   SourceBlock   "fixpt_lib_3p1/Sources/Constant"
  1147.   SourceType   "Fixed-Point Constant"
  1148.   constval   "sin( (0:  2^18-1) * (2^-17)  * pi)'"
  1149.   OutputDataTypeScalingMode "Specify via dialog"
  1150.   OutDataType   "sfix(20)"
  1151.   OutScaling   "2^-18"
  1152.   ConRadixGroup   "Use Specified Scaling"
  1153.   DblOver   off
  1154.   VectInt   off
  1155. }
  1156. Block {
  1157.   BlockType   Outport
  1158.   Name   "Out"
  1159.   Position   [605, 103, 635, 117]
  1160.   Port   "1"
  1161.   OutputWhenDisabled   "held"
  1162.   InitialOutput   "[]"
  1163. }
  1164. Line {
  1165.   SrcBlock   "Sine LUTnmemory values"
  1166.   SrcPort   1
  1167.   Points   [75, 0; 0, 65]
  1168.   DstBlock   "Selector"
  1169.   DstPort   1
  1170. }
  1171. Line {
  1172.   SrcBlock   "In"
  1173.   SrcPort   1
  1174.   DstBlock   "Sin-CosnLookupnIndices"
  1175.   DstPort   1
  1176. }
  1177. Line {
  1178.   SrcBlock   "Sin-CosnLookupnIndices"
  1179.   SrcPort   1
  1180.   DstBlock   "Selector"
  1181.   DstPort   2
  1182. }
  1183. Line {
  1184.   SrcBlock   "Selector"
  1185.   SrcPort   1
  1186.   DstBlock   "MultiportnSelector"
  1187.   DstPort   1
  1188. }
  1189. Line {
  1190.   SrcBlock   "Real-Imag tonComplex"
  1191.   SrcPort   1
  1192.   DstBlock   "Out"
  1193.   DstPort   1
  1194. }
  1195. Line {
  1196.   SrcBlock   "MultiportnSelector"
  1197.   SrcPort   1
  1198.   DstBlock   "Real-Imag tonComplex"
  1199.   DstPort   1
  1200. }
  1201. Line {
  1202.   SrcBlock   "MultiportnSelector"
  1203.   SrcPort   2
  1204.   DstBlock   "Real-Imag tonComplex"
  1205.   DstPort   2
  1206. }
  1207.       }
  1208.     }
  1209.     Block {
  1210.       BlockType       Sum
  1211.       Name       "Sum"
  1212.       Ports       [2, 1]
  1213.       Position       [105, 50, 125, 70]
  1214.       ShowName       off
  1215.       IconShape       "round"
  1216.       Inputs       "++|"
  1217.       SaturateOnIntegerOverflow off
  1218.     }
  1219.     Block {
  1220.       BlockType       Outport
  1221.       Name       "Out"
  1222.       Position       [695, 83, 725, 97]
  1223.       Port       "1"
  1224.       OutputWhenDisabled      "held"
  1225.       InitialOutput       "[]"
  1226.     }
  1227.     Line {
  1228.       SrcBlock       "Sum"
  1229.       SrcPort       1
  1230.       DstBlock       "Integer Delay"
  1231.       DstPort       1
  1232.     }
  1233.     Line {
  1234.       SrcBlock       "Integer Delay"
  1235.       SrcPort       1
  1236.       Points       [0, 0; 30, 0]
  1237.       Branch {
  1238. Points [0, -35; -135, 0]
  1239. DstBlock "Sum"
  1240. DstPort 1
  1241.       }
  1242.       Branch {
  1243. DstBlock "Subsystem"
  1244. DstPort 1
  1245.       }
  1246.     }
  1247.     Line {
  1248.       SrcBlock       "FREQ"
  1249.       SrcPort       1
  1250.       DstBlock       "Sum"
  1251.       DstPort       2
  1252.     }
  1253.     Line {
  1254.       SrcBlock       "PHASE"
  1255.       SrcPort       1
  1256.       Points       [190, 0; 0, -25]
  1257.       DstBlock       "Subsystem"
  1258.       DstPort       2
  1259.     }
  1260.     Line {
  1261.       SrcBlock       "Subsystem2"
  1262.       SrcPort       1
  1263.       Points       [0, -25]
  1264.       DstBlock       "Subsystem1"
  1265.       DstPort       2
  1266.     }
  1267.     Line {
  1268.       SrcBlock       "Subsystem"
  1269.       SrcPort       1
  1270.       DstBlock       "Subsystem1"
  1271.       DstPort       1
  1272.     }
  1273.     Line {
  1274.       SrcBlock       "Subsystem1"
  1275.       SrcPort       1
  1276.       DstBlock       "Subsystem3"
  1277.       DstPort       1
  1278.     }
  1279.     Line {
  1280.       SrcBlock       "Subsystem3"
  1281.       SrcPort       1
  1282.       DstBlock       "Out"
  1283.       DstPort       1
  1284.     }
  1285.   }
  1286. }
  1287. Block {
  1288.   BlockType   Outport
  1289.   Name   "Out"
  1290.   Position   [480, 93, 510, 107]
  1291.   Port   "1"
  1292.   OutputWhenDisabled   "held"
  1293.   InitialOutput   "[]"
  1294. }
  1295. Line {
  1296.   SrcBlock   "16-bit Phase Offset"
  1297.   SrcPort   1
  1298.   DstBlock   "Subsystem"
  1299.   DstPort   2
  1300. }
  1301. Line {
  1302.   SrcBlock   "32-bit Tuning Freq"
  1303.   SrcPort   1
  1304.   DstBlock   "Subsystem"
  1305.   DstPort   1
  1306. }
  1307. Line {
  1308.   SrcBlock   "Subsystem"
  1309.   SrcPort   1
  1310.   Points   [85, 0]
  1311.   Branch {
  1312.     DstBlock     "Out"
  1313.     DstPort     1
  1314.   }
  1315.   Branch {
  1316.     Points     [0, 45]
  1317.     DstBlock     "Goto"
  1318.     DstPort     1
  1319.   }
  1320. }
  1321.       }
  1322.     }
  1323.     Block {
  1324.       BlockType       SubSystem
  1325.       Name       "PFIR"
  1326.       Ports       [1, 1]
  1327.       Position       [172, 305, 288, 335]
  1328.       Orientation       "down"
  1329.       ShowName       off
  1330.       FontName       "Arial"
  1331.       FontSize       12
  1332.       ShowPortLabels       on
  1333.       TreatAsAtomicUnit       off
  1334.       RTWSystemCode       "Auto"
  1335.       RTWFcnNameOpts       "Auto"
  1336.       RTWFileNameOpts       "Auto"
  1337.       MaskPromptString       "PFIR coefficients|FINE (gain parameter)"
  1338.       MaskStyleString       "edit,edit"
  1339.       MaskTunableValueString  "on,on"
  1340.       MaskCallbackString      "|"
  1341.       MaskEnableString       "on,on"
  1342.       MaskVisibilityString    "on,on"
  1343.       MaskToolTipString       "on,on"
  1344.       MaskVariables       "h=@1;g=@2;"
  1345.       MaskDisplay       "disp('Programmable FIR')"
  1346.       MaskIconFrame       on
  1347.       MaskIconOpaque       on
  1348.       MaskIconRotate       "none"
  1349.       MaskIconUnits       "autoscale"
  1350.       MaskValueString       "[0.000732421875 0.00213623046875 -0.00024414062"
  1351. "5 -0.00253295898438 -0.00265502929688 0.00125122070313 0.00494384765625 0.003"
  1352. "20434570313 -0.00338745117188 -0.0074462890625 -0.00314331054688 0.0060119628"
  1353. "9063 0.00991821289063 0.0029296875 -0.00885009765625 -0.012939453125 -0.00320"
  1354. "434570313 0.01242065429688 0.01766967773438 0.00396728515625 -0.0181884765625"
  1355. " -0.02548217773438 -0.00469970703125 0.0286865234375 0.03897094726563 0.00488"
  1356. "28125 -0.05087280273438 -0.06988525390625 -0.004638671875 0.13491821289063 0."
  1357. "277587890625 0.33779907226563 0.277587890625 0.13491821289063 -0.004638671875"
  1358. " -0.06988525390625 -0.05087280273438 0.0048828125 0.03897094726563 0.02868652"
  1359. "34375 -0.00469970703125 -0.02548217773438 -0.0181884765625 0.00396728515625 0"
  1360. ".01766967773438 0.01242065429688 -0.00320434570313 -0.012939453125 -0.0088500"
  1361. "9765625 0.0029296875 0.00991821289063 0.00601196289063 -0.00314331054688 -0.0"
  1362. "074462890625 -0.00338745117188 0.00320434570313 0.00494384765625 0.0012512207"
  1363. "0313 -0.00265502929688 -0.00253295898438 -0.000244140625 0.00213623046875 0.0"
  1364. "00732421875]|1024"
  1365.       MaskVariableAliases     ","
  1366.       System {
  1367. Name "PFIR"
  1368. Location [29, 295, 965, 484]
  1369. Open off
  1370. ModelBrowserVisibility off
  1371. ModelBrowserWidth 200
  1372. ScreenColor "automatic"
  1373. PaperOrientation "landscape"
  1374. PaperPositionMode "auto"
  1375. PaperType "usletter"
  1376. PaperUnits "inches"
  1377. ZoomFactor "100"
  1378. Block {
  1379.   BlockType   Inport
  1380.   Name   "In"
  1381.   Position   [15, 38, 45, 52]
  1382.   Port   "1"
  1383.   LatchInput   off
  1384.   Interpolate   on
  1385. }
  1386. Block {
  1387.   BlockType   Reference
  1388.   Name   "Conversion"
  1389.   Ports   [1, 1]
  1390.   Position   [580, 60, 620, 100]
  1391.   SourceBlock   "fixpt_lib_3p1/Data Type/Conversion"
  1392.   SourceType   "Fixed-Point to Fixed-Point Conversion"
  1393.   ConvertRealWorld   "Real World Value"
  1394.   OutputDataTypeScalingMode "Specify via dialog"
  1395.   OutDataType   "sfix(24)"
  1396.   OutScaling   "2^12"
  1397.   LockScale   off
  1398.   RndMeth   "Nearest"
  1399.   DoSatur   off
  1400.   DblOver   off
  1401.   dolog   on
  1402. }
  1403. Block {
  1404.   BlockType   Reference
  1405.   Name   "Downsample"
  1406.   Ports   [1, 1]
  1407.   Position   [135, 28, 170, 62]
  1408.   SourceBlock   "dspsigops/Downsample"
  1409.   SourceType   "Downsample"
  1410.   N   "2"
  1411.   phase   "0"
  1412.   ic   "0"
  1413.   smode   "Allow multirate"
  1414.   fmode   "Maintain input frame size"
  1415. }
  1416. Block {
  1417.   BlockType   Reference
  1418.   Name   "Downsample1"
  1419.   Ports   [1, 1]
  1420.   Position   [135, 98, 170, 132]
  1421.   SourceBlock   "dspsigops/Downsample"
  1422.   SourceType   "Downsample"
  1423.   N   "2"
  1424.   phase   "0"
  1425.   ic   "0"
  1426.   smode   "Allow multirate"
  1427.   fmode   "Maintain input frame size"
  1428. }
  1429. Block {
  1430.   BlockType   Reference
  1431.   Name   "FIR"
  1432.   Ports   [1, 1]
  1433.   Position   [250, 25, 370, 65]
  1434.   SourceBlock   "fixpt_lib_3p1/Filters/FIR"
  1435.   SourceType   "Fixed-Point FIR"
  1436.   mgainval   "h(1:2:length(h))"
  1437.   vinit   "0"
  1438.   samptime   "-1"
  1439.   GainDataTypeScalingMode "Specify via dialog"
  1440.   GainDataType   "sfix( 16 )"
  1441.   GainScaling   "2^-14"
  1442.   MatRadixGroup   "Best Precision: Matrix-wise"
  1443.   OutputDataTypeScalingMode "Specify via dialog"
  1444.   OutDataType   "sfix(20)"
  1445.   OutScaling   "2^12"
  1446.   LockScale   off
  1447.   RndMeth   "Nearest"
  1448.   DoSatur   off
  1449.   DblOver   off
  1450.   dolog   on
  1451. }
  1452. Block {
  1453.   BlockType   Reference
  1454.   Name   "FIR1"
  1455.   Ports   [1, 1]
  1456.   Position   [250, 95, 370, 135]
  1457.   SourceBlock   "fixpt_lib_3p1/Filters/FIR"
  1458.   SourceType   "Fixed-Point FIR"
  1459.   mgainval   "h(2:2:length(h))"
  1460.   vinit   "0"
  1461.   samptime   "-1"
  1462.   GainDataTypeScalingMode "Specify via dialog"
  1463.   GainDataType   "sfix( 16 )"
  1464.   GainScaling   "2^-14"
  1465.   MatRadixGroup   "Best Precision: Matrix-wise"
  1466.   OutputDataTypeScalingMode "Specify via dialog"
  1467.   OutDataType   "sfix(20)"
  1468.   OutScaling   "2^12"
  1469.   LockScale   off
  1470.   RndMeth   "Nearest"
  1471.   DoSatur   off
  1472.   DblOver   off
  1473.   dolog   on
  1474. }
  1475. Block {
  1476.   BlockType   Goto
  1477.   Name   "Goto"
  1478.   Position   [835, 113, 915, 137]
  1479.   ShowName   off
  1480.   GotoTag   "PFIR_OUT"
  1481.   TagVisibility   "global"
  1482. }
  1483. Block {
  1484.   BlockType   Reference
  1485.   Name   "Integer Delay"
  1486.   Ports   [1, 1]
  1487.   Position   [47, 65, 73, 90]
  1488.   Orientation   "down"
  1489.   NamePlacement   "alternate"
  1490.   ShowName   off
  1491.   SourceBlock   "dspsigops/Integer Delay"
  1492.   SourceType   "Integer Delay"
  1493.   delay   "1"
  1494.   ic   "0"
  1495. }
  1496. Block {
  1497.   BlockType   SubSystem
  1498.   Name   "ShiftnArithmetic"
  1499.   Ports   [1, 1]
  1500.   Position   [705, 69, 745, 91]
  1501.   ShowPortLabels   on
  1502.   TreatAsAtomicUnit   off
  1503.   RTWSystemCode   "Auto"
  1504.   RTWFcnNameOpts   "Auto"
  1505.   RTWFileNameOpts   "Auto"
  1506.   MaskPromptString   "Shift bits right how many places (negative "
  1507. "is shift left):|Shift binary point right how many places (negative is shift l"
  1508. "eft):"
  1509.   MaskStyleString   "edit,edit"
  1510.   MaskTunableValueString  "on,on"
  1511.   MaskCallbackString   "|"
  1512.   MaskEnableString   "on,on"
  1513.   MaskVisibilityString   "on,on"
  1514.   MaskToolTipString   "on,on"
  1515.   MaskVariables   "nBitShiftRight=@1;nBinPtShiftRight=@2;"
  1516.   MaskInitialization   "netExponent = nBinPtShiftRight - nBitShiftR"
  1517. "ight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n  dstr = [dstr,' * 2^',num2s"
  1518. "tr(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRight > 0n "
  1519. " dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRight < 0n d"
  1520. "str = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'\nEy = Eu'"
  1521. "];nif nBinPtShiftRight > 0n  dstr = [dstr,' + ',num2str(nBinPtShiftRight)];"
  1522. "nelseif nBinPtShiftRight < 0n  dstr = [dstr,' - ',num2str(-nBinPtShiftRight"
  1523. ")];nend"
  1524.   MaskIconFrame   on
  1525.   MaskIconOpaque   on
  1526.   MaskIconRotate   "none"
  1527.   MaskIconUnits   "autoscale"
  1528.   MaskValueString   "-( log2(g) - 10 )|0"
  1529.   MaskVariableAliases   ","
  1530.   System {
  1531.     Name     "ShiftnArithmetic"
  1532.     Location     [463, 366, 952, 640]
  1533.     Open     off
  1534.     ModelBrowserVisibility  off
  1535.     ModelBrowserWidth     200
  1536.     ScreenColor     "automatic"
  1537.     PaperOrientation     "landscape"
  1538.     PaperPositionMode     "auto"
  1539.     PaperType     "usletter"
  1540.     PaperUnits     "inches"
  1541.     ZoomFactor     "100"
  1542.     Block {
  1543.       BlockType       Inport
  1544.       Name       "u"
  1545.       Position       [25, 158, 55, 172]
  1546.       Port       "1"
  1547.       LatchInput       off
  1548.       Interpolate       on
  1549.     }
  1550.     Block {
  1551.       BlockType       Reference
  1552.       Name       "Data TypenPropagation"
  1553.       Ports       [3]
  1554.       Position       [295, 50, 335, 90]
  1555.       SourceBlock       "fixpt_lib_3p1/Data Type/Data TypenProp"
  1556. "agation"
  1557.       SourceType       "Fixed-Point Data Type Propagation"
  1558.       PropDataTypeMode       "Inherit via propagation rule"
  1559.       PropDataType       "sfix(16)"
  1560.       IfRefDouble       "double"
  1561.       IfRefSingle       "single"
  1562.       IsSigned       "IsSigned1"
  1563.       NumBitsBase       "NumBits1"
  1564.       NumBitsMult       "1"
  1565.       NumBitsAdd       "0"
  1566.       NumBitsAllowFinal       "1:128"
  1567.       PropScalingMode       "Inherit via propagation rule"
  1568.       PropScaling       "2^-10"
  1569.       ValuesUsedBestPrec      "[5 -7]"
  1570.       SlopeBase       "Slope1"
  1571.       SlopeMult       "2^nBinPtShiftRight"
  1572.       SlopeAdd       "0"
  1573.       BiasBase       "Bias1"
  1574.       BiasMult       "2^netExponent"
  1575.       BiasAdd       "0"
  1576.       DblOver       off
  1577.     }
  1578.     Block {
  1579.       BlockType       Reference
  1580.       Name       "Gain"
  1581.       Ports       [1, 1]
  1582.       Position       [120, 143, 165, 187]
  1583.       SourceBlock       "fixpt_lib_3p1/Math/Gain"
  1584.       SourceType       "Fixed-Point Gain"
  1585.       gainval       "2^netExponent"
  1586.       GainDataTypeScalingMode "Specify via dialog"
  1587.       GainDataType       "sfix(24)"
  1588.       GainScaling       "2^-14"
  1589.       VecRadixGroup       "Best Precision: Matrix-wise"
  1590.       OutputDataTypeScalingMode "Specify via dialog"
  1591.       OutDataType       "sfix(24)"
  1592.       OutScaling       "2^12"
  1593.       LockScale       off
  1594.       RndMeth       "Floor"
  1595.       DoSatur       off
  1596.       DblOver       off
  1597.       dolog       on
  1598.       ElevsMatrix       "Element-wise(K.*u)"
  1599.     }
  1600.     Block {
  1601.       BlockType       Outport
  1602.       Name       "y"
  1603.       Position       [345, 158, 375, 172]
  1604.       Port       "1"
  1605.       OutputWhenDisabled      "held"
  1606.       InitialOutput       "[]"
  1607.     }
  1608.     Line {
  1609.       SrcBlock       "Gain"
  1610.       SrcPort       1
  1611.       Points       [90, 0]
  1612.       Branch {
  1613. Points [0, -80]
  1614. DstBlock "Data TypenPropagation"
  1615. DstPort 3
  1616.       }
  1617.       Branch {
  1618. DstBlock "y"
  1619. DstPort 1
  1620.       }
  1621.     }
  1622.     Line {
  1623.       SrcBlock       "u"
  1624.       SrcPort       1
  1625.       Points       [35, 0]
  1626.       Branch {
  1627. Points [0, -110; 160, 0]
  1628. Branch {
  1629.   Points   [0, 15]
  1630.   DstBlock   "Data TypenPropagation"
  1631.   DstPort   2
  1632. }
  1633. Branch {
  1634.   DstBlock   "Data TypenPropagation"
  1635.   DstPort   1
  1636. }
  1637.       }
  1638.       Branch {
  1639. DstBlock "Gain"
  1640. DstPort 1
  1641.       }
  1642.     }
  1643.   }
  1644. }
  1645. Block {
  1646.   BlockType   Reference
  1647.   Name   "Sum"
  1648.   Ports   [2, 1]
  1649.   Position   [450, 12, 500, 148]
  1650.   SourceBlock   "fixpt_lib_3p1/Math/Sum"
  1651.   SourceType   "Fixed-Point Sum"
  1652.   listofsigns   "++"
  1653.   OutputDataTypeScalingMode "Inherit via internal rule"
  1654.   OutDataType   "sfix(16)"
  1655.   OutScaling   "2^-10"
  1656.   LockScale   off
  1657.   RndMeth   "Nearest"
  1658.   DoSatur   off
  1659.   DblOver   off
  1660.   dolog   on
  1661. }
  1662. Block {
  1663.   BlockType   Outport
  1664.   Name   "Out"
  1665.   Position   [835, 73, 865, 87]
  1666.   Port   "1"
  1667.   OutputWhenDisabled   "held"
  1668.   InitialOutput   "[]"
  1669. }
  1670. Line {
  1671.   SrcBlock   "In"
  1672.   SrcPort   1
  1673.   Points   [0, 0; 10, 0]
  1674.   Branch {
  1675.     DstBlock     "Downsample"
  1676.     DstPort     1
  1677.   }
  1678.   Branch {
  1679.     DstBlock     "Integer Delay"
  1680.     DstPort     1
  1681.   }
  1682. }
  1683. Line {
  1684.   SrcBlock   "Integer Delay"
  1685.   SrcPort   1
  1686.   Points   [0, 20]
  1687.   DstBlock   "Downsample1"
  1688.   DstPort   1
  1689. }
  1690. Line {
  1691.   SrcBlock   "Downsample1"
  1692.   SrcPort   1
  1693.   DstBlock   "FIR1"
  1694.   DstPort   1
  1695. }
  1696. Line {
  1697.   SrcBlock   "Downsample"
  1698.   SrcPort   1
  1699.   DstBlock   "FIR"
  1700.   DstPort   1
  1701. }
  1702. Line {
  1703.   SrcBlock   "FIR1"
  1704.   SrcPort   1
  1705.   DstBlock   "Sum"
  1706.   DstPort   2
  1707. }
  1708. Line {
  1709.   SrcBlock   "FIR"
  1710.   SrcPort   1
  1711.   DstBlock   "Sum"
  1712.   DstPort   1
  1713. }
  1714. Line {
  1715.   SrcBlock   "Sum"
  1716.   SrcPort   1
  1717.   DstBlock   "Conversion"
  1718.   DstPort   1
  1719. }
  1720. Line {
  1721.   SrcBlock   "Conversion"
  1722.   SrcPort   1
  1723.   DstBlock   "ShiftnArithmetic"
  1724.   DstPort   1
  1725. }
  1726. Line {
  1727.   SrcBlock   "ShiftnArithmetic"
  1728.   SrcPort   1
  1729.   Points   [0, 0; 55, 0]
  1730.   Branch {
  1731.     DstBlock     "Out"
  1732.     DstPort     1
  1733.   }
  1734.   Branch {
  1735.     Points     [0, 45]
  1736.     DstBlock     "Goto"
  1737.     DstPort     1
  1738.   }
  1739. }
  1740.       }
  1741.     }
  1742.     Block {
  1743.       BlockType       Reference
  1744.       Name       "Product"
  1745.       Ports       [2, 1]
  1746.       Position       [210, 105, 250, 145]
  1747.       Orientation       "down"
  1748.       NamePlacement       "alternate"
  1749.       ShowName       off
  1750.       SourceBlock       "fixpt_lib_3p1/Math/Product"
  1751.       SourceType       "Fixed-Point Product"
  1752.       listofops       "**"
  1753.       OutputDataTypeScalingMode "Specify via dialog"
  1754.       OutDataType       "sfix(20)"
  1755.       OutScaling       "2^-18"
  1756.       LockScale       off
  1757.       RndMeth       "Nearest"
  1758.       DoSatur       off
  1759.       DblOver       off
  1760.       dolog       off
  1761.       ElevsMatrix       "Element-wise(.*)"
  1762.     }
  1763.     Block {
  1764.       BlockType       SubSystem
  1765.       Name       "Resampler"
  1766.       Ports       [1, 1]
  1767.       Position       [172, 365, 288, 395]
  1768.       Orientation       "down"
  1769.       ShowName       off
  1770.       FontName       "Arial"
  1771.       FontSize       12
  1772.       ShowPortLabels       on
  1773.       TreatAsAtomicUnit       off
  1774.       RTWSystemCode       "Auto"
  1775.       RTWFcnNameOpts       "Auto"
  1776.       RTWFileNameOpts       "Auto"
  1777.       MaskPromptString       "Resampling filter coefficients:|NDELAY|NDEC"
  1778.       MaskStyleString       "edit,edit,edit"
  1779.       MaskTunableValueString  "on,on,on"
  1780.       MaskCallbackString      "||"
  1781.       MaskEnableString       "on,on,on"
  1782.       MaskVisibilityString    "on,on,on"
  1783.       MaskToolTipString       "on,on,on"
  1784.       MaskVariables       "h=@1;Ndelay=@2;Ndec=@3;"
  1785.       MaskDisplay       "disp('Rate Conversion')"
  1786.       MaskIconFrame       on
  1787.       MaskIconOpaque       on
  1788.       MaskIconRotate       "none"
  1789.       MaskIconUnits       "autoscale"
  1790.       MaskValueString       "fir1(31,0.25)|4|3"
  1791.       MaskVariableAliases     ",,"
  1792.       System {
  1793. Name "Resampler"
  1794. Location [266, 164, 913, 279]
  1795. Open off
  1796. ModelBrowserVisibility off
  1797. ModelBrowserWidth 200
  1798. ScreenColor "automatic"
  1799. PaperOrientation "landscape"
  1800. PaperPositionMode "auto"
  1801. PaperType "usletter"
  1802. PaperUnits "inches"
  1803. ZoomFactor "100"
  1804. Block {
  1805.   BlockType   Inport
  1806.   Name   "In"
  1807.   Position   [25, 28, 55, 42]
  1808.   Port   "1"
  1809.   LatchInput   off
  1810.   Interpolate   on
  1811. }
  1812. Block {
  1813.   BlockType   Reference
  1814.   Name   "Downsample"
  1815.   Ports   [1, 1]
  1816.   Position   [455, 18, 490, 52]
  1817.   SourceBlock   "dspsigops/Downsample"
  1818.   SourceType   "Downsample"
  1819.   N   "Ndec"
  1820.   phase   "0"
  1821.   ic   "0"
  1822.   smode   "Allow multirate"
  1823.   fmode   "Maintain input frame size"
  1824. }
  1825. Block {
  1826.   BlockType   Reference
  1827.   Name   "FIR"
  1828.   Ports   [1, 1]
  1829.   Position   [250, 15, 370, 55]
  1830.   SourceBlock   "fixpt_lib_3p1/Filters/FIR"
  1831.   SourceType   "Fixed-Point FIR"
  1832.   mgainval   "h"
  1833.   vinit   "0.0"
  1834.   samptime   "-1"
  1835.   GainDataTypeScalingMode "Specify via dialog"
  1836.   GainDataType   "sfix( 12 )"
  1837.   GainScaling   "2^-14"
  1838.   MatRadixGroup   "Best Precision: Matrix-wise"
  1839.   OutputDataTypeScalingMode "Specify via dialog"
  1840.   OutDataType   "sfix(24)"
  1841.   OutScaling   "2^12"
  1842.   LockScale   off
  1843.   RndMeth   "Nearest"
  1844.   DoSatur   on
  1845.   DblOver   off
  1846.   dolog   on
  1847. }
  1848. Block {
  1849.   BlockType   Goto
  1850.   Name   "Goto"
  1851.   Position   [575, 75, 630, 95]
  1852.   ShowName   off
  1853.   GotoTag   "RS_OUT"
  1854.   TagVisibility   "global"
  1855. }
  1856. Block {
  1857.   BlockType   Reference
  1858.   Name   "Upsample"
  1859.   Ports   [1, 1]
  1860.   Position   [135, 18, 170, 52]
  1861.   SourceBlock   "dspsigops/Upsample"
  1862.   SourceType   "Upsample"
  1863.   N   "Ndelay"
  1864.   phase   "0"
  1865.   ic   "0"
  1866.   mode   "Maintain input frame size"
  1867. }
  1868. Block {
  1869.   BlockType   Outport
  1870.   Name   "Out"
  1871.   Position   [580, 28, 610, 42]
  1872.   Port   "1"
  1873.   OutputWhenDisabled   "held"
  1874.   InitialOutput   "[]"
  1875. }
  1876. Line {
  1877.   SrcBlock   "In"
  1878.   SrcPort   1
  1879.   DstBlock   "Upsample"
  1880.   DstPort   1
  1881. }
  1882. Line {
  1883.   SrcBlock   "Upsample"
  1884.   SrcPort   1
  1885.   DstBlock   "FIR"
  1886.   DstPort   1
  1887. }
  1888. Line {
  1889.   SrcBlock   "FIR"
  1890.   SrcPort   1
  1891.   DstBlock   "Downsample"
  1892.   DstPort   1
  1893. }
  1894. Line {
  1895.   SrcBlock   "Downsample"
  1896.   SrcPort   1
  1897.   Points   [0, 0; 35, 0]
  1898.   Branch {
  1899.     DstBlock     "Out"
  1900.     DstPort     1
  1901.   }
  1902.   Branch {
  1903.     Points     [0, 50]
  1904.     DstBlock     "Goto"
  1905.     DstPort     1
  1906.   }
  1907. }
  1908.       }
  1909.     }
  1910.     Block {
  1911.       BlockType       SubSystem
  1912.       Name       "Subsystem3"
  1913.       Ports       []
  1914.       Position       [40, 310, 81, 350]
  1915.       BackgroundColor       "lightBlue"
  1916.       ShowName       off
  1917.       ShowPortLabels       on
  1918.       TreatAsAtomicUnit       off
  1919.       RTWSystemCode       "Auto"
  1920.       RTWFcnNameOpts       "Auto"
  1921.       RTWFileNameOpts       "Auto"
  1922.       MaskDisplay       "disp('Scopes')"
  1923.       MaskIconFrame       on
  1924.       MaskIconOpaque       on
  1925.       MaskIconRotate       "none"
  1926.       MaskIconUnits       "autoscale"
  1927.       System {
  1928. Name "Subsystem3"
  1929. Location [240, 165, 817, 658]
  1930. Open off
  1931. ModelBrowserVisibility off
  1932. ModelBrowserWidth 200
  1933. ScreenColor "automatic"
  1934. PaperOrientation "landscape"
  1935. PaperPositionMode "auto"
  1936. PaperType "usletter"
  1937. PaperUnits "inches"
  1938. ZoomFactor "100"
  1939. Block {
  1940.   BlockType   Reference
  1941.   Name   "CIC"
  1942.   Ports   [1]
  1943.   Position   [505, 190, 540, 240]
  1944.   SourceBlock   "dspsnks3/SpectrumnScope"
  1945.   SourceType   "Spectrum Scope"
  1946.   ScopeProperties   on
  1947.   Domain   "Frequency"
  1948.   HorizSpan   "1"
  1949.   UseBuffer   on
  1950.   BufferSize   "1024"
  1951.   Overlap   "0"
  1952.   inpFftLenInherit   off
  1953.   FFTlength   "128"
  1954.   numAvg   "2"
  1955.   DisplayProperties   off
  1956.   AxisGrid   on
  1957.   Memory   off
  1958.   FrameNumber   on
  1959.   AxisLegend   off
  1960.   AxisZoom   off
  1961.   OpenScopeAtSimStart   on
  1962.   OpenScopeImmediately   off
  1963.   FigPos   "[260 183 537 310]"
  1964.   AxisProperties   off
  1965.   XUnits   "Hertz"
  1966.   XRange   "[-Fs/2...Fs/2]"
  1967.   InheritXIncr   on
  1968.   XIncr   "1.0"
  1969.   XLabel   "Samples"
  1970.   YUnits   "dB"
  1971.   YMin   "43.8708686815548"
  1972.   YMax   "212.851303604382"
  1973.   YLabel   "Magnitude, dB"
  1974.   LineProperties   off
  1975. }
  1976. Block {
  1977.   BlockType   Scope
  1978.   Name   "CIC DecimatornOutput"
  1979.   Ports   [2]
  1980.   Position   [375, 166, 405, 199]
  1981.   Floating   off
  1982.   Location   [234, 148, 579, 358]
  1983.   Open   off
  1984.   NumInputPorts   "2"
  1985.   TickLabels   "OneTimeTick"
  1986.   ZoomMode   "on"
  1987.   List {
  1988.     ListType     AxesTitles
  1989.     axes1     "%<SignalLabel>"
  1990.     axes2     "%<SignalLabel>"
  1991.   }
  1992.   List {
  1993.     ListType     SelectedSignals
  1994.     axes1     ""
  1995.     axes2     ""
  1996.   }
  1997.   Grid   "on"
  1998.   TimeRange   "0.0003"
  1999.   YMin   "-1e+009~-1e+009"
  2000.   YMax   "1e+009~1e+009"
  2001.   SaveToWorkspace   off
  2002.   SaveName   "ScopeData2"
  2003.   DataFormat   "StructureWithTime"
  2004.   LimitDataPoints   on
  2005.   MaxDataPoints   "50000"
  2006.   Decimation   "1"
  2007.   SampleInput   off
  2008.   SampleTime   "0"
  2009. }
  2010. Block {
  2011.   BlockType   Scope
  2012.   Name   "CompensationnFIR Output"
  2013.   Ports   [2]
  2014.   Position   [380, 236, 410, 269]
  2015.   Floating   off
  2016.   Location   [457, 66, 802, 292]
  2017.   Open   off
  2018.   NumInputPorts   "2"
  2019.   TickLabels   "OneTimeTick"
  2020.   ZoomMode   "on"
  2021.   List {
  2022.     ListType     AxesTitles
  2023.     axes1     "%<SignalLabel>"
  2024.     axes2     "%<SignalLabel>"
  2025.   }
  2026.   List {
  2027.     ListType     SelectedSignals
  2028.     axes1     ""
  2029.     axes2     ""
  2030.   }
  2031.   Grid   "on"
  2032.   TimeRange   "0.0003"
  2033.   YMin   "-1e+009~-1e+009"
  2034.   YMax   "1e+009~1e+009"
  2035.   SaveToWorkspace   off
  2036.   SaveName   "ScopeData3"
  2037.   DataFormat   "StructureWithTime"
  2038.   LimitDataPoints   on
  2039.   MaxDataPoints   "50000"
  2040.   Decimation   "1"
  2041.   SampleInput   off
  2042.   SampleTime   "0"
  2043. }
  2044. Block {
  2045.   BlockType   ComplexToRealImag
  2046.   Name   "Complex tonReal-Imag"
  2047.   Ports   [1, 1]
  2048.   Position   [200, 35, 230, 65]
  2049.   Output   "Real"
  2050. }
  2051. Block {
  2052.   BlockType   ComplexToRealImag
  2053.   Name   "Complex tonReal-Imag1"
  2054.   Ports   [1, 1]
  2055.   Position   [200, 100, 230, 130]
  2056.   Output   "Real"
  2057. }
  2058. Block {
  2059.   BlockType   ComplexToRealImag
  2060.   Name   "Complex tonReal-Imag2"
  2061.   Ports   [1, 2]
  2062.   Position   [200, 167, 230, 198]
  2063.   Output   "RealAndImag"
  2064. }
  2065. Block {
  2066.   BlockType   ComplexToRealImag
  2067.   Name   "Complex tonReal-Imag3"
  2068.   Ports   [1, 2]
  2069.   Position   [205, 237, 235, 268]
  2070.   Output   "RealAndImag"
  2071. }
  2072. Block {
  2073.   BlockType   ComplexToRealImag
  2074.   Name   "Complex tonReal-Imag4"
  2075.   Ports   [1, 2]
  2076.   Position   [205, 307, 235, 338]
  2077.   Output   "RealAndImag"
  2078. }
  2079. Block {
  2080.   BlockType   ComplexToRealImag
  2081.   Name   "Complex tonReal-Imag5"
  2082.   Ports   [1, 2]
  2083.   Position   [205, 377, 235, 408]
  2084.   Output   "RealAndImag"
  2085. }
  2086. Block {
  2087.   BlockType   DataTypeConversion
  2088.   Name   "Data Type Conversion"
  2089.   Position   [300, 36, 355, 64]
  2090.   ShowName   off
  2091.   DataType   "double"
  2092.   SaturateOnIntegerOverflow on
  2093. }
  2094. Block {
  2095.   BlockType   Scope
  2096.   Name   "Digital MixernReal Output"
  2097.   Ports   [1]
  2098.   Position   [380, 99, 410, 131]
  2099.   Floating   off
  2100.   Location   [237, 151, 581, 328]
  2101.   Open   off
  2102.   NumInputPorts   "1"
  2103.   TickLabels   "OneTimeTick"
  2104.   ZoomMode   "on"
  2105.   List {
  2106.     ListType     AxesTitles
  2107.     axes1     "%<SignalLabel>"
  2108.   }
  2109.   List {
  2110.     ListType     SelectedSignals
  2111.     axes1     ""
  2112.   }
  2113.   Grid   "on"
  2114.   TimeRange   "0.0003"
  2115.   YMin   "-1"
  2116.   YMax   "1"
  2117.   SaveToWorkspace   off
  2118.   SaveName   "ScopeData"
  2119.   DataFormat   "StructureWithTime"
  2120.   LimitDataPoints   on
  2121.   MaxDataPoints   "50000"
  2122.   Decimation   "1"
  2123.   SampleInput   off
  2124.   SampleTime   "0"
  2125. }
  2126. Block {
  2127.   BlockType   From
  2128.   Name   "From"
  2129.   Position   [25, 35, 110, 65]
  2130.   CloseFcn   "tagdialog Close"
  2131.   GotoTag   "NCO_IQ"
  2132. }
  2133. Block {
  2134.   BlockType   From
  2135.   Name   "From1"
  2136.   Position   [25, 100, 110, 130]
  2137.   CloseFcn   "tagdialog Close"
  2138.   GotoTag   "MIXER_OUT"
  2139. }
  2140. Block {
  2141.   BlockType   From
  2142.   Name   "From2"
  2143.   Position   [25, 170, 110, 200]
  2144.   CloseFcn   "tagdialog Close"
  2145.   GotoTag   "CIC_OUT"
  2146. }
  2147. Block {
  2148.   BlockType   From
  2149.   Name   "From3"
  2150.   Position   [25, 240, 110, 270]
  2151.   CloseFcn   "tagdialog Close"
  2152.   GotoTag   "CFIR_OUT"
  2153. }
  2154. Block {
  2155.   BlockType   From
  2156.   Name   "From4"
  2157.   Position   [25, 310, 110, 340]
  2158.   CloseFcn   "tagdialog Close"
  2159.   GotoTag   "PFIR_OUT"
  2160. }
  2161. Block {
  2162.   BlockType   From
  2163.   Name   "From5"
  2164.   Position   [25, 380, 110, 410]
  2165.   CloseFcn   "tagdialog Close"
  2166.   GotoTag   "RS_OUT"
  2167. }
  2168. Block {
  2169.   BlockType   Gain
  2170.   Name   "Gain"
  2171.   Position   [405, 34, 460, 66]
  2172.   Gain   "1/24"
  2173.   Multiplication   "Element-wise(K.*u)"
  2174.   SaturateOnIntegerOverflow on
  2175. }
  2176. Block {
  2177.   BlockType   Reference
  2178.   Name   "NCO "
  2179.   Ports   [1]
  2180.   Position   [505, 25, 540, 75]
  2181.   SourceBlock   "dspsnks3/SpectrumnScope"
  2182.   SourceType   "Spectrum Scope"
  2183.   ScopeProperties   on
  2184.   Domain   "Frequency"
  2185.   HorizSpan   "1"
  2186.   UseBuffer   on
  2187.   BufferSize   "8192"
  2188.   Overlap   "0"
  2189.   inpFftLenInherit   off
  2190.   FFTlength   "128"
  2191.   numAvg   "2"
  2192.   DisplayProperties   off
  2193.   AxisGrid   on
  2194.   Memory   off
  2195.   FrameNumber   on
  2196.   AxisLegend   off
  2197.   AxisZoom   off
  2198.   OpenScopeAtSimStart   on
  2199.   OpenScopeImmediately   off
  2200.   FigPos   "[107 280 536 308]"
  2201.   AxisProperties   off
  2202.   XUnits   "Hertz"
  2203.   XRange   "[0...Fs/2]"
  2204.   InheritXIncr   on
  2205.   XIncr   "1.0"
  2206.   XLabel   "Samples"
  2207.   YUnits   "dB"
  2208.   YMin   "-160"
  2209.   YMax   "5"
  2210.   YLabel   "Magnitude, dB"
  2211.   LineProperties   off
  2212. }
  2213. Block {
  2214.   BlockType   Scope
  2215.   Name   "ProgrammablenFIR Output"
  2216.   Ports   [2]
  2217.   Position   [380, 306, 410, 339]
  2218.   Floating   off
  2219.   Location   [586, 146, 928, 356]
  2220.   Open   off
  2221.   NumInputPorts   "2"
  2222.   TickLabels   "OneTimeTick"
  2223.   ZoomMode   "on"
  2224.   List {
  2225.     ListType     AxesTitles
  2226.     axes1     "%<SignalLabel>"
  2227.     axes2     "%<SignalLabel>"
  2228.   }
  2229.   List {
  2230.     ListType     SelectedSignals
  2231.     axes1     ""
  2232.     axes2     ""
  2233.   }
  2234.   Grid   "on"
  2235.   TimeRange   "0.0003"
  2236.   YMin   "-1e+009~-1e+009"
  2237.   YMax   "1e+009~1e+009"
  2238.   SaveToWorkspace   off
  2239.   SaveName   "ScopeData4"
  2240.   DataFormat   "StructureWithTime"
  2241.   LimitDataPoints   on
  2242.   MaxDataPoints   "50000"
  2243.   Decimation   "1"
  2244.   SampleInput   off
  2245.   SampleTime   "0"
  2246. }
  2247. Block {
  2248.   BlockType   Reference
  2249.   Name   "Resamp"
  2250.   Ports   [1]
  2251.   Position   [505, 415, 540, 465]
  2252.   SourceBlock   "dspsnks3/SpectrumnScope"
  2253.   SourceType   "Spectrum Scope"
  2254.   ScopeProperties   on
  2255.   Domain   "Frequency"
  2256.   HorizSpan   "1"
  2257.   UseBuffer   on
  2258.   BufferSize   "512"
  2259.   Overlap   "0"
  2260.   inpFftLenInherit   off
  2261.   FFTlength   "128"
  2262.   numAvg   "2"
  2263.   DisplayProperties   off
  2264.   AxisGrid   on
  2265.   Memory   off
  2266.   FrameNumber   on
  2267.   AxisLegend   off
  2268.   AxisZoom   off
  2269.   OpenScopeAtSimStart   on
  2270.   OpenScopeImmediately   off
  2271.   FigPos   "[360 61 535 305]"
  2272.   AxisProperties   off
  2273.   XUnits   "Hertz"
  2274.   XRange   "[-Fs/2...Fs/2]"
  2275.   InheritXIncr   on
  2276.   XIncr   "1.0"
  2277.   XLabel   "Samples"
  2278.   YUnits   "dB"
  2279.   YMin   "70.0823242463192"
  2280.   YMax   "209.614555683789"
  2281.   YLabel   "Magnitude, dB"
  2282.   LineProperties   off
  2283. }
  2284. Block {
  2285.   BlockType   Scope
  2286.   Name   "ResamplernOutput"
  2287.   Ports   [2]
  2288.   Position   [380, 376, 410, 409]
  2289.   Floating   off
  2290.   Location   [458, 70, 801, 296]
  2291.   Open   on
  2292.   NumInputPorts   "2"
  2293.   TickLabels   "OneTimeTick"
  2294.   ZoomMode   "on"
  2295.   List {
  2296.     ListType     AxesTitles
  2297.     axes1     "%<SignalLabel>"
  2298.     axes2     "%<SignalLabel>"
  2299.   }
  2300.   List {
  2301.     ListType     SelectedSignals
  2302.     axes1     ""
  2303.     axes2     ""
  2304.   }
  2305.   Grid   "on"
  2306.   TimeRange   "0.0003"
  2307.   YMin   "-2e+008~-2e+008"
  2308.   YMax   "2e+008~2e+008"
  2309.   SaveToWorkspace   off
  2310.   SaveName   "ScopeData5"
  2311.   DataFormat   "StructureWithTime"
  2312.   LimitDataPoints   on
  2313.   MaxDataPoints   "50000"
  2314.   Decimation   "1"
  2315.   SampleInput   off
  2316.   SampleTime   "0"
  2317. }
  2318. Line {
  2319.   SrcBlock   "From"
  2320.   SrcPort   1
  2321.   DstBlock   "Complex tonReal-Imag"
  2322.   DstPort   1
  2323. }
  2324. Line {
  2325.   SrcBlock   "From1"
  2326.   SrcPort   1
  2327.   DstBlock   "Complex tonReal-Imag1"
  2328.   DstPort   1
  2329. }
  2330. Line {
  2331.   SrcBlock   "From2"
  2332.   SrcPort   1
  2333.   Points   [20, 0]
  2334.   Branch {
  2335.     DstBlock     "Complex tonReal-Imag2"
  2336.     DstPort     1
  2337.   }
  2338.   Branch {
  2339.     Points     [0, 30]
  2340.     DstBlock     "CIC"
  2341.     DstPort     1
  2342.   }
  2343. }
  2344. Line {
  2345.   SrcBlock   "Complex tonReal-Imag"
  2346.   SrcPort   1
  2347.   DstBlock   "Data Type Conversion"
  2348.   DstPort   1
  2349. }
  2350. Line {
  2351.   SrcBlock   "Complex tonReal-Imag1"
  2352.   SrcPort   1
  2353.   DstBlock   "Digital MixernReal Output"
  2354.   DstPort   1
  2355. }
  2356. Line {
  2357.   SrcBlock   "Complex tonReal-Imag2"
  2358.   SrcPort   1
  2359.   DstBlock   "CIC DecimatornOutput"
  2360.   DstPort   1
  2361. }
  2362. Line {
  2363.   SrcBlock   "Complex tonReal-Imag2"
  2364.   SrcPort   2
  2365.   DstBlock   "CIC DecimatornOutput"
  2366.   DstPort   2
  2367. }
  2368. Line {
  2369.   SrcBlock   "Gain"
  2370.   SrcPort   1
  2371.   DstBlock   "NCO "
  2372.   DstPort   1
  2373. }
  2374. Line {
  2375.   SrcBlock   "Data Type Conversion"
  2376.   SrcPort   1
  2377.   DstBlock   "Gain"
  2378.   DstPort   1
  2379. }
  2380. Line {
  2381.   SrcBlock   "From3"
  2382.   SrcPort   1
  2383.   DstBlock   "Complex tonReal-Imag3"
  2384.   DstPort   1
  2385. }
  2386. Line {
  2387.   SrcBlock   "Complex tonReal-Imag3"
  2388.   SrcPort   1
  2389.   DstBlock   "CompensationnFIR Output"
  2390.   DstPort   1
  2391. }
  2392. Line {
  2393.   SrcBlock   "Complex tonReal-Imag3"
  2394.   SrcPort   2
  2395.   DstBlock   "CompensationnFIR Output"
  2396.   DstPort   2
  2397. }
  2398. Line {
  2399.   SrcBlock   "From4"
  2400.   SrcPort   1
  2401.   DstBlock   "Complex tonReal-Imag4"
  2402.   DstPort   1
  2403. }
  2404. Line {
  2405.   SrcBlock   "Complex tonReal-Imag4"
  2406.   SrcPort   2
  2407.   DstBlock   "ProgrammablenFIR Output"
  2408.   DstPort   2
  2409. }
  2410. Line {
  2411.   SrcBlock   "Complex tonReal-Imag4"
  2412.   SrcPort   1
  2413.   DstBlock   "ProgrammablenFIR Output"
  2414.   DstPort   1
  2415. }
  2416. Line {
  2417.   SrcBlock   "From5"
  2418.   SrcPort   1
  2419.   Points   [25, 0]
  2420.   Branch {
  2421.     DstBlock     "Complex tonReal-Imag5"
  2422.     DstPort     1
  2423.   }
  2424.   Branch {
  2425.     Points     [0, 45]
  2426.     DstBlock     "Resamp"
  2427.     DstPort     1
  2428.   }
  2429. }
  2430. Line {
  2431.   SrcBlock   "Complex tonReal-Imag5"
  2432.   SrcPort   2
  2433.   DstBlock   "ResamplernOutput"
  2434.   DstPort   2
  2435. }
  2436. Line {
  2437.   SrcBlock   "Complex tonReal-Imag5"
  2438.   SrcPort   1
  2439.   DstBlock   "ResamplernOutput"
  2440.   DstPort   1
  2441. }
  2442.       }
  2443.     }
  2444.     Block {
  2445.       BlockType       Terminator
  2446.       Name       "Terminator"
  2447.       Position       [220, 425, 240, 445]
  2448.       Orientation       "down"
  2449.       NamePlacement       "alternate"
  2450.       ShowName       off
  2451.     }
  2452.     Line {
  2453.       SrcBlock       "GSM Source"
  2454.       SrcPort       1
  2455.       Points       [75, 0]
  2456.       DstBlock       "Product"
  2457.       DstPort       1
  2458.     }
  2459.     Line {
  2460.       SrcBlock       "NCO"
  2461.       SrcPort       1
  2462.       DstBlock       "Product"
  2463.       DstPort       2
  2464.     }
  2465.     Line {
  2466.       SrcBlock       "Product"
  2467.       SrcPort       1
  2468.       DstBlock       "CIC"
  2469.       DstPort       1
  2470.     }
  2471.     Line {
  2472.       SrcBlock       "CIC"
  2473.       SrcPort       1
  2474.       DstBlock       "CFIR1"
  2475.       DstPort       1
  2476.     }
  2477.     Line {
  2478.       SrcBlock       "Resampler"
  2479.       SrcPort       1
  2480.       DstBlock       "Terminator"
  2481.       DstPort       1
  2482.     }
  2483.     Line {
  2484.       SrcBlock       "CFIR1"
  2485.       SrcPort       1
  2486.       DstBlock       "PFIR"
  2487.       DstPort       1
  2488.     }
  2489.     Line {
  2490.       SrcBlock       "PFIR"
  2491.       SrcPort       1
  2492.       DstBlock       "Resampler"
  2493.       DstPort       1
  2494.     }
  2495.     Annotation {
  2496.       Position       [83, 366]
  2497.       Text       "Instrumentation"
  2498.       FontSize       12
  2499.     }
  2500.     Annotation {
  2501.       Position       [334, 159]
  2502.       Text       "69.333nMSPS"
  2503.       FontName       "Arial"
  2504.       FontSize       12
  2505.     }
  2506.     Annotation {
  2507.       Position       [334, 229]
  2508.       Text       "1.0833nMSPS"
  2509.       FontName       "Arial"
  2510.       FontSize       12
  2511.     }
  2512.     Annotation {
  2513.       Position       [334, 289]
  2514.       Text       "541.66nKSPS"
  2515.       FontName       "Arial"
  2516.       FontSize       12
  2517.     }
  2518.     Annotation {
  2519.       Position       [334, 349]
  2520.       Text       "270.83nKSPS"
  2521.       FontName       "Arial"
  2522.       FontSize       12
  2523.     }
  2524.   }
  2525. }