dspddc_R12p1.mdl
上传用户:asli888
上传日期:2013-05-03
资源大小:7045k
文件大小:132k
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskDisplay "disp(['Dither' 10 'Generator'])"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- System {
- Name "Subsystem2"
- Location [567, 87, 890, 297]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Reference
- Name "Constant"
- Ports [0, 1]
- Position [219, 145, 301, 185]
- Orientation "up"
- NamePlacement "alternate"
- ShowName off
- SourceBlock "fixpt_lib_3p1/Sources/Constant"
- SourceType "Fixed-Point Constant"
- constval "0.0"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(23)"
- OutScaling "2^0"
- ConRadixGroup "Use Specified Scaling"
- DblOver off
- VectInt on
- }
- Block {
- BlockType Constant
- Name "Constant1"
- Position [126, 145, 204, 185]
- Orientation "up"
- NamePlacement "alternate"
- ShowName off
- Value "enable_dither"
- VectorParams1D on
- }
- Block {
- BlockType SubSystem
- Name "Subsystem1"
- Ports [0, 1]
- Position [30, 145, 110, 185]
- Orientation "up"
- NamePlacement "alternate"
- ShowName off
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskDisplay "disp(['DITHER' 10 'GENERATOR'])"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- System {
- Name "Subsystem1"
- Location [500, 153, 997, 273]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Reference
- Name "Conversion"
- Ports [1, 1]
- Position [245, 40, 285, 80]
- ShowName off
- SourceBlock "fixpt_lib_3p1/Data Type/Conversio"
- "n"
- SourceType "Fixed-Point to Fixed-Point Conver"
- "sion"
- ConvertRealWorld "Real World Value"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(23)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType SubSystem
- Name "ShiftnArithmetic"
- Ports [1, 1]
- Position [150, 49, 190, 71]
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Shift bits right how many places "
- "(negative is shift left):|Shift binary point right how many places (negative "
- "is shift left):"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "nBitShiftRight=@1;nBinPtShiftRigh"
- "t=@2;"
- MaskInitialization "netExponent = nBinPtShiftRight - "
- "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n dstr = [dstr,' *"
- " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
- "ght > 0n dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
- "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
- "\nEy = Eu'];nif nBinPtShiftRight > 0n dstr = [dstr,' + ',num2str(nBinPtSh"
- "iftRight)];nelseif nBinPtShiftRight < 0n dstr = [dstr,' - ',num2str(-nBinP"
- "tShiftRight)];nend"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "(19-bits)|0"
- MaskVariableAliases ","
- System {
- Name "ShiftnArithmetic"
- Location [151, 367, 640, 641]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "u"
- Position [25, 158, 55, 172]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Data TypenPropagation"
- Ports [3]
- Position [295, 50, 335, 90]
- SourceBlock "fixpt_lib_3p1/Data Type/Data Type"
- "nPropagation"
- SourceType "Fixed-Point Data Type Propagation"
- PropDataTypeMode "Inherit via propagation rule"
- PropDataType "sfix(16)"
- IfRefDouble "double"
- IfRefSingle "single"
- IsSigned "IsSigned1"
- NumBitsBase "NumBits1"
- NumBitsMult "1"
- NumBitsAdd "0"
- NumBitsAllowFinal "1:128"
- PropScalingMode "Inherit via propagation rule"
- PropScaling "2^-10"
- ValuesUsedBestPrec "[5 -7]"
- SlopeBase "Slope1"
- SlopeMult "2^nBinPtShiftRight"
- SlopeAdd "0"
- BiasBase "Bias1"
- BiasMult "2^netExponent"
- BiasAdd "0"
- DblOver off
- }
- Block {
- BlockType Reference
- Name "Gain"
- Ports [1, 1]
- Position [120, 143, 165, 187]
- SourceBlock "fixpt_lib_3p1/Math/Gain"
- SourceType "Fixed-Point Gain"
- gainval "2^netExponent"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "ufix(19)"
- GainScaling "2^-14"
- VecRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(19)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- ElevsMatrix "Element-wise(K.*u)"
- }
- Block {
- BlockType Outport
- Name "y"
- Position [345, 158, 375, 172]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "u"
- SrcPort 1
- Points [35, 0]
- Branch {
- DstBlock "Gain"
- DstPort 1
- }
- Branch {
- Points [0, -110; 160, 0]
- Branch {
- DstBlock "Data TypenPropagation"
- DstPort 1
- }
- Branch {
- Points [0, 15]
- DstBlock "Data TypenPropagation"
- DstPort 2
- }
- }
- }
- Line {
- SrcBlock "Gain"
- SrcPort 1
- Points [90, 0]
- Branch {
- DstBlock "y"
- DstPort 1
- }
- Branch {
- Points [0, -80]
- DstBlock "Data TypenPropagation"
- DstPort 3
- }
- }
- }
- }
- Block {
- BlockType SubSystem
- Name "Subsystem2"
- Ports [0, 1]
- Position [25, 26, 100, 94]
- ShowName off
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Shift register size (nbits):|Samp"
- "le time:"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "nbit=@1;ts=@2;"
- MaskDisplay "disp(['Fixed-point' 10 'Random' 1"
- "0 'Number' 10 'Generator'])"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "19|1/69.333e6"
- MaskVariableAliases ","
- System {
- Name "Subsystem2"
- Location [432, 288, 966, 559]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Reference
- Name "BitwisenOperator"
- Ports [2, 1]
- Position [210, 85, 250, 220]
- SourceBlock "fixpt_lib_3p1/Bits/BitwisenOpera"
- "tor"
- SourceType "Fixed-Point Bitwise Operator"
- logicop "XOR"
- UseBitMask off
- NumInputPorts "2"
- BitMask "bin2dec('11011001')"
- BitMaskRealWorld "Stored Integer"
- }
- Block {
- BlockType Reference
- Name "Conversion"
- Ports [1, 1]
- Position [120, 90, 160, 130]
- SourceBlock "fixpt_lib_3p1/Data Type/Conversio"
- "n"
- SourceType "Fixed-Point to Fixed-Point Conver"
- "sion"
- ConvertRealWorld "Real World Value"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(nbit)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Reference
- Name "Conversion1"
- Ports [1, 1]
- Position [120, 180, 160, 220]
- SourceBlock "fixpt_lib_3p1/Data Type/Conversio"
- "n"
- SourceType "Fixed-Point to Fixed-Point Conver"
- "sion"
- ConvertRealWorld "Real World Value"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(nbit)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Reference
- Name "Integer Delay1"
- Ports [1, 1]
- Position [29, 65, 61, 95]
- Orientation "down"
- NamePlacement "alternate"
- ShowName off
- SourceBlock "fixpt_lib_3p1/Delays & Holds/Inte"
- "ger Delay"
- SourceType "Fixed-Point Integer Delay"
- vinit "1"
- samptime "ts"
- NumDelays "1"
- }
- Block {
- BlockType Reference
- Name "Integer Delay2"
- Ports [1, 1]
- Position [29, 135, 61, 165]
- Orientation "down"
- NamePlacement "alternate"
- ShowName off
- SourceBlock "fixpt_lib_3p1/Delays & Holds/Inte"
- "ger Delay"
- SourceType "Fixed-Point Integer Delay"
- vinit "2"
- samptime "ts"
- NumDelays "1"
- }
- Block {
- BlockType SubSystem
- Name "Subsystem1"
- Ports [1, 1]
- Position [315, 124, 385, 186]
- ShowName off
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskDisplay "disp(['Cyclic' 10 'Right' 10 'Rot"
- "ator' 10 'ROR'])"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- System {
- Name "Subsystem1"
- Location [420, 138, 957, 336]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "In1"
- Position [25, 108, 55, 122]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Bitwise ANDnwith mask"
- Ports [1, 1]
- Position [100, 90, 145, 140]
- SourceBlock "fixpt_lib_3p1/Bits/BitwisenOpera"
- "tor"
- SourceType "Fixed-Point Bitwise Operator"
- logicop "AND"
- UseBitMask on
- NumInputPorts "1"
- BitMask "bin2dec('1')"
- BitMaskRealWorld "Stored Integer"
- }
- Block {
- BlockType Reference
- Name "Bitwise OR"
- Ports [2, 1]
- Position [365, 29, 415, 71]
- ShowName off
- SourceBlock "fixpt_lib_3p1/Bits/BitwisenOpera"
- "tor"
- SourceType "Fixed-Point Bitwise Operator"
- logicop "OR"
- UseBitMask off
- NumInputPorts "2"
- BitMask "bin2dec('1')"
- BitMaskRealWorld "Stored Integer"
- }
- Block {
- BlockType SubSystem
- Name "ShiftnArithmetic"
- Ports [1, 1]
- Position [205, 104, 245, 126]
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Shift bits right how many places "
- "(negative is shift left):|Shift binary point right how many places (negative "
- "is shift left):"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "nBitShiftRight=@1;nBinPtShiftRigh"
- "t=@2;"
- MaskInitialization "netExponent = nBinPtShiftRight - "
- "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n dstr = [dstr,' *"
- " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
- "ght > 0n dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
- "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
- "\nEy = Eu'];nif nBinPtShiftRight > 0n dstr = [dstr,' + ',num2str(nBinPtSh"
- "iftRight)];nelseif nBinPtShiftRight < 0n dstr = [dstr,' - ',num2str(-nBinP"
- "tShiftRight)];nend"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "-(nbit-1)|0"
- MaskVariableAliases ","
- System {
- Name "ShiftnArithmetic"
- Location [151, 367, 640, 641]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "u"
- Position [25, 158, 55, 172]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Data TypenPropagation"
- Ports [3]
- Position [295, 50, 335, 90]
- SourceBlock "fixpt_lib_3p1/Data Type/Data Type"
- "nPropagation"
- SourceType "Fixed-Point Data Type Propagation"
- PropDataTypeMode "Inherit via propagation rule"
- PropDataType "sfix(16)"
- IfRefDouble "double"
- IfRefSingle "single"
- IsSigned "IsSigned1"
- NumBitsBase "NumBits1"
- NumBitsMult "1"
- NumBitsAdd "0"
- NumBitsAllowFinal "1:128"
- PropScalingMode "Inherit via propagation rule"
- PropScaling "2^-10"
- ValuesUsedBestPrec "[5 -7]"
- SlopeBase "Slope1"
- SlopeMult "2^nBinPtShiftRight"
- SlopeAdd "0"
- BiasBase "Bias1"
- BiasMult "2^netExponent"
- BiasAdd "0"
- DblOver off
- }
- Block {
- BlockType Reference
- Name "Gain"
- Ports [1, 1]
- Position [120, 143, 165, 187]
- SourceBlock "fixpt_lib_3p1/Math/Gain"
- SourceType "Fixed-Point Gain"
- gainval "2^netExponent"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "ufix(19)"
- GainScaling "2^-14"
- VecRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(19)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- ElevsMatrix "Element-wise(K.*u)"
- }
- Block {
- BlockType Outport
- Name "y"
- Position [345, 158, 375, 172]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "u"
- SrcPort 1
- Points [35, 0]
- Branch {
- DstBlock "Gain"
- DstPort 1
- }
- Branch {
- Points [0, -110; 160, 0]
- Branch {
- DstBlock "Data TypenPropagation"
- DstPort 1
- }
- Branch {
- Points [0, 15]
- DstBlock "Data TypenPropagation"
- DstPort 2
- }
- }
- }
- Line {
- SrcBlock "Gain"
- SrcPort 1
- Points [90, 0]
- Branch {
- DstBlock "y"
- DstPort 1
- }
- Branch {
- Points [0, -80]
- DstBlock "Data TypenPropagation"
- DstPort 3
- }
- }
- }
- }
- Block {
- BlockType SubSystem
- Name "ShiftnArithmetic1"
- Ports [1, 1]
- Position [205, 29, 245, 51]
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Shift bits right how many places "
- "(negative is shift left):|Shift binary point right how many places (negative "
- "is shift left):"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "nBitShiftRight=@1;nBinPtShiftRigh"
- "t=@2;"
- MaskInitialization "netExponent = nBinPtShiftRight - "
- "nBitShiftRight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n dstr = [dstr,' *"
- " 2^',num2str(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRi"
- "ght > 0n dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRig"
- "ht < 0n dstr = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'"
- "\nEy = Eu'];nif nBinPtShiftRight > 0n dstr = [dstr,' + ',num2str(nBinPtSh"
- "iftRight)];nelseif nBinPtShiftRight < 0n dstr = [dstr,' - ',num2str(-nBinP"
- "tShiftRight)];nend"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "1|0"
- MaskVariableAliases ","
- System {
- Name "ShiftnArithmetic1"
- Location [151, 367, 640, 641]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "u"
- Position [25, 158, 55, 172]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Data TypenPropagation"
- Ports [3]
- Position [295, 50, 335, 90]
- SourceBlock "fixpt_lib_3p1/Data Type/Data Type"
- "nPropagation"
- SourceType "Fixed-Point Data Type Propagation"
- PropDataTypeMode "Inherit via propagation rule"
- PropDataType "sfix(16)"
- IfRefDouble "double"
- IfRefSingle "single"
- IsSigned "IsSigned1"
- NumBitsBase "NumBits1"
- NumBitsMult "1"
- NumBitsAdd "0"
- NumBitsAllowFinal "1:128"
- PropScalingMode "Inherit via propagation rule"
- PropScaling "2^-10"
- ValuesUsedBestPrec "[5 -7]"
- SlopeBase "Slope1"
- SlopeMult "2^nBinPtShiftRight"
- SlopeAdd "0"
- BiasBase "Bias1"
- BiasMult "2^netExponent"
- BiasAdd "0"
- DblOver off
- }
- Block {
- BlockType Reference
- Name "Gain"
- Ports [1, 1]
- Position [120, 143, 165, 187]
- SourceBlock "fixpt_lib_3p1/Math/Gain"
- SourceType "Fixed-Point Gain"
- gainval "2^netExponent"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "ufix(19)"
- GainScaling "2^-14"
- VecRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(19)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- ElevsMatrix "Element-wise(K.*u)"
- }
- Block {
- BlockType Outport
- Name "y"
- Position [345, 158, 375, 172]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Gain"
- SrcPort 1
- Points [90, 0]
- Branch {
- Points [0, -80]
- DstBlock "Data TypenPropagation"
- DstPort 3
- }
- Branch {
- DstBlock "y"
- DstPort 1
- }
- }
- Line {
- SrcBlock "u"
- SrcPort 1
- Points [35, 0]
- Branch {
- Points [0, -110; 160, 0]
- Branch {
- Points [0, 15]
- DstBlock "Data TypenPropagation"
- DstPort 2
- }
- Branch {
- DstBlock "Data TypenPropagation"
- DstPort 1
- }
- }
- Branch {
- DstBlock "Gain"
- DstPort 1
- }
- }
- }
- }
- Block {
- BlockType Outport
- Name "Out1"
- Position [475, 43, 505, 57]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "In1"
- SrcPort 1
- Points [0, 0; 15, 0]
- Branch {
- DstBlock "Bitwise ANDnwith mask"
- DstPort 1
- }
- Branch {
- Points [0, -75]
- DstBlock "ShiftnArithmetic1"
- DstPort 1
- }
- }
- Line {
- SrcBlock "Bitwise ANDnwith mask"
- SrcPort 1
- DstBlock "ShiftnArithmetic"
- DstPort 1
- }
- Line {
- SrcBlock "Bitwise OR"
- SrcPort 1
- DstBlock "Out1"
- DstPort 1
- }
- Line {
- SrcBlock "ShiftnArithmetic"
- SrcPort 1
- Points [55, 0; 0, -55]
- DstBlock "Bitwise OR"
- DstPort 2
- }
- Line {
- SrcBlock "ShiftnArithmetic1"
- SrcPort 1
- DstBlock "Bitwise OR"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [465, 148, 495, 162]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Integer Delay1"
- SrcPort 1
- Points [0, 0; 0, 10]
- Branch {
- DstBlock "Integer Delay2"
- DstPort 1
- }
- Branch {
- DstBlock "Conversion"
- DstPort 1
- }
- }
- Line {
- SrcBlock "Integer Delay2"
- SrcPort 1
- Points [0, 30]
- DstBlock "Conversion1"
- DstPort 1
- }
- Line {
- SrcBlock "Conversion"
- SrcPort 1
- Points [15, 0; 0, 10]
- DstBlock "BitwisenOperator"
- DstPort 1
- }
- Line {
- SrcBlock "Conversion1"
- SrcPort 1
- Points [15, 0; 0, -15]
- DstBlock "BitwisenOperator"
- DstPort 2
- }
- Line {
- SrcBlock "Subsystem1"
- SrcPort 1
- Points [55, 0]
- Branch {
- Points [0, -125; -400, 0]
- DstBlock "Integer Delay1"
- DstPort 1
- }
- Branch {
- DstBlock "Out"
- DstPort 1
- }
- }
- Line {
- SrcBlock "BitwisenOperator"
- SrcPort 1
- DstBlock "Subsystem1"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [340, 53, 370, 67]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Subsystem2"
- SrcPort 1
- DstBlock "ShiftnArithmetic"
- DstPort 1
- }
- Line {
- SrcBlock "Conversion"
- SrcPort 1
- DstBlock "Out"
- DstPort 1
- }
- Line {
- SrcBlock "ShiftnArithmetic"
- SrcPort 1
- DstBlock "Conversion"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Switch
- Name "Switch"
- Position [150, 65, 180, 95]
- Orientation "up"
- NamePlacement "alternate"
- Threshold "0"
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [150, 25, 180, 40]
- Orientation "up"
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Constant1"
- SrcPort 1
- DstBlock "Switch"
- DstPort 2
- }
- Line {
- SrcBlock "Constant"
- SrcPort 1
- Points [0, -10; -85, 0]
- DstBlock "Switch"
- DstPort 3
- }
- Line {
- SrcBlock "Subsystem1"
- SrcPort 1
- Points [0, -10; 85, 0]
- DstBlock "Switch"
- DstPort 1
- }
- Line {
- SrcBlock "Switch"
- SrcPort 1
- DstBlock "Out"
- DstPort 1
- }
- }
- }
- Block {
- BlockType SubSystem
- Name "Subsystem3"
- Ports [1, 1]
- Position [535, 66, 605, 114]
- ShowName off
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskDisplay "disp(['Sine/Cosine\nLookup'])"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- System {
- Name "Subsystem3"
- Location [306, 317, 991, 524]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "In"
- Position [15, 113, 45, 127]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "MultiportnSelector"
- Ports [1, 2]
- Position [325, 88, 405, 132]
- SourceBlock "dspindex/MultiportnSelector"
- SourceType "Multiport Selector"
- rowsOrCols "Rows"
- idxCellArray "{ 1, 2 }"
- idxErrMode "Clip Index"
- }
- Block {
- BlockType RealImagToComplex
- Name "Real-Imag tonComplex"
- Ports [2, 1]
- Position [485, 89, 515, 131]
- Input "RealAndImag"
- ConstantPart "0"
- }
- Block {
- BlockType Selector
- Name "Selector"
- Ports [2, 1]
- Position [215, 91, 255, 129]
- InputType "Vector"
- ElementSrc "External"
- Elements "[1 3]"
- RowSrc "Internal"
- Rows "1"
- ColumnSrc "Internal"
- Columns "1"
- InputPortWidth "2^18"
- }
- Block {
- BlockType SubSystem
- Name "Sin-CosnLookupnIndices"
- Ports [1, 1]
- Position [90, 104, 140, 136]
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- System {
- Name "Sin-CosnLookupnIndices"
- Location [305, 376, 750, 521]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "In"
- Position [120, 28, 150, 42]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Constant
- Name "Constant"
- Position [322, 90, 388, 120]
- Orientation "up"
- NamePlacement "alternate"
- ShowName off
- Value "uint32(1)"
- VectorParams1D on
- }
- Block {
- BlockType Reference
- Name "Conversion"
- Ports [1, 1]
- Position [260, 25, 300, 65]
- SourceBlock "fixpt_lib_3p1/Data Type/Conversio"
- "n"
- SourceType "Fixed-Point to Fixed-Point Conver"
- "sion"
- ConvertRealWorld "Stored Integer"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "uint(32)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Reference
- Name "Index"
- Ports [0, 1]
- Position [25, 40, 95, 70]
- SourceBlock "fixpt_lib_3p1/Sources/Constant"
- SourceType "Fixed-Point Constant"
- constval "[0, 2^18/4]"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(18)"
- OutScaling "2^0"
- ConRadixGroup "Use Specified Scaling"
- DblOver off
- VectInt on
- }
- Block {
- BlockType Reference
- Name "Sum1"
- Ports [2, 1]
- Position [175, 25, 215, 65]
- SourceBlock "fixpt_lib_3p1/Math/Sum"
- SourceType "Fixed-Point Sum"
- listofsigns "++"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "ufix(18)"
- OutScaling "2^0"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Sum
- Name "Sum2"
- Ports [2, 1]
- Position [345, 35, 365, 55]
- ShowName off
- IconShape "round"
- Inputs "|++"
- SaturateOnIntegerOverflow on
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [390, 38, 420, 52]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Index"
- SrcPort 1
- DstBlock "Sum1"
- DstPort 2
- }
- Line {
- SrcBlock "Sum1"
- SrcPort 1
- DstBlock "Conversion"
- DstPort 1
- }
- Line {
- SrcBlock "Conversion"
- SrcPort 1
- DstBlock "Sum2"
- DstPort 1
- }
- Line {
- SrcBlock "Constant"
- SrcPort 1
- DstBlock "Sum2"
- DstPort 2
- }
- Line {
- SrcBlock "In"
- SrcPort 1
- DstBlock "Sum1"
- DstPort 1
- }
- Line {
- SrcBlock "Sum2"
- SrcPort 1
- DstBlock "Out"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Reference
- Name "Sine LUTnmemory values"
- Ports [0, 1]
- Position [25, 20, 95, 50]
- SourceBlock "fixpt_lib_3p1/Sources/Constant"
- SourceType "Fixed-Point Constant"
- constval "sin( (0: 2^18-1) * (2^-17) * pi)'"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(20)"
- OutScaling "2^-18"
- ConRadixGroup "Use Specified Scaling"
- DblOver off
- VectInt off
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [605, 103, 635, 117]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Sine LUTnmemory values"
- SrcPort 1
- Points [75, 0; 0, 65]
- DstBlock "Selector"
- DstPort 1
- }
- Line {
- SrcBlock "In"
- SrcPort 1
- DstBlock "Sin-CosnLookupnIndices"
- DstPort 1
- }
- Line {
- SrcBlock "Sin-CosnLookupnIndices"
- SrcPort 1
- DstBlock "Selector"
- DstPort 2
- }
- Line {
- SrcBlock "Selector"
- SrcPort 1
- DstBlock "MultiportnSelector"
- DstPort 1
- }
- Line {
- SrcBlock "Real-Imag tonComplex"
- SrcPort 1
- DstBlock "Out"
- DstPort 1
- }
- Line {
- SrcBlock "MultiportnSelector"
- SrcPort 1
- DstBlock "Real-Imag tonComplex"
- DstPort 1
- }
- Line {
- SrcBlock "MultiportnSelector"
- SrcPort 2
- DstBlock "Real-Imag tonComplex"
- DstPort 2
- }
- }
- }
- Block {
- BlockType Sum
- Name "Sum"
- Ports [2, 1]
- Position [105, 50, 125, 70]
- ShowName off
- IconShape "round"
- Inputs "++|"
- SaturateOnIntegerOverflow off
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [695, 83, 725, 97]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Sum"
- SrcPort 1
- DstBlock "Integer Delay"
- DstPort 1
- }
- Line {
- SrcBlock "Integer Delay"
- SrcPort 1
- Points [0, 0; 30, 0]
- Branch {
- Points [0, -35; -135, 0]
- DstBlock "Sum"
- DstPort 1
- }
- Branch {
- DstBlock "Subsystem"
- DstPort 1
- }
- }
- Line {
- SrcBlock "FREQ"
- SrcPort 1
- DstBlock "Sum"
- DstPort 2
- }
- Line {
- SrcBlock "PHASE"
- SrcPort 1
- Points [190, 0; 0, -25]
- DstBlock "Subsystem"
- DstPort 2
- }
- Line {
- SrcBlock "Subsystem2"
- SrcPort 1
- Points [0, -25]
- DstBlock "Subsystem1"
- DstPort 2
- }
- Line {
- SrcBlock "Subsystem"
- SrcPort 1
- DstBlock "Subsystem1"
- DstPort 1
- }
- Line {
- SrcBlock "Subsystem1"
- SrcPort 1
- DstBlock "Subsystem3"
- DstPort 1
- }
- Line {
- SrcBlock "Subsystem3"
- SrcPort 1
- DstBlock "Out"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [480, 93, 510, 107]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "16-bit Phase Offset"
- SrcPort 1
- DstBlock "Subsystem"
- DstPort 2
- }
- Line {
- SrcBlock "32-bit Tuning Freq"
- SrcPort 1
- DstBlock "Subsystem"
- DstPort 1
- }
- Line {
- SrcBlock "Subsystem"
- SrcPort 1
- Points [85, 0]
- Branch {
- DstBlock "Out"
- DstPort 1
- }
- Branch {
- Points [0, 45]
- DstBlock "Goto"
- DstPort 1
- }
- }
- }
- }
- Block {
- BlockType SubSystem
- Name "PFIR"
- Ports [1, 1]
- Position [172, 305, 288, 335]
- Orientation "down"
- ShowName off
- FontName "Arial"
- FontSize 12
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "PFIR coefficients|FINE (gain parameter)"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "h=@1;g=@2;"
- MaskDisplay "disp('Programmable FIR')"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "[0.000732421875 0.00213623046875 -0.00024414062"
- "5 -0.00253295898438 -0.00265502929688 0.00125122070313 0.00494384765625 0.003"
- "20434570313 -0.00338745117188 -0.0074462890625 -0.00314331054688 0.0060119628"
- "9063 0.00991821289063 0.0029296875 -0.00885009765625 -0.012939453125 -0.00320"
- "434570313 0.01242065429688 0.01766967773438 0.00396728515625 -0.0181884765625"
- " -0.02548217773438 -0.00469970703125 0.0286865234375 0.03897094726563 0.00488"
- "28125 -0.05087280273438 -0.06988525390625 -0.004638671875 0.13491821289063 0."
- "277587890625 0.33779907226563 0.277587890625 0.13491821289063 -0.004638671875"
- " -0.06988525390625 -0.05087280273438 0.0048828125 0.03897094726563 0.02868652"
- "34375 -0.00469970703125 -0.02548217773438 -0.0181884765625 0.00396728515625 0"
- ".01766967773438 0.01242065429688 -0.00320434570313 -0.012939453125 -0.0088500"
- "9765625 0.0029296875 0.00991821289063 0.00601196289063 -0.00314331054688 -0.0"
- "074462890625 -0.00338745117188 0.00320434570313 0.00494384765625 0.0012512207"
- "0313 -0.00265502929688 -0.00253295898438 -0.000244140625 0.00213623046875 0.0"
- "00732421875]|1024"
- MaskVariableAliases ","
- System {
- Name "PFIR"
- Location [29, 295, 965, 484]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "In"
- Position [15, 38, 45, 52]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Conversion"
- Ports [1, 1]
- Position [580, 60, 620, 100]
- SourceBlock "fixpt_lib_3p1/Data Type/Conversion"
- SourceType "Fixed-Point to Fixed-Point Conversion"
- ConvertRealWorld "Real World Value"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(24)"
- OutScaling "2^12"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Reference
- Name "Downsample"
- Ports [1, 1]
- Position [135, 28, 170, 62]
- SourceBlock "dspsigops/Downsample"
- SourceType "Downsample"
- N "2"
- phase "0"
- ic "0"
- smode "Allow multirate"
- fmode "Maintain input frame size"
- }
- Block {
- BlockType Reference
- Name "Downsample1"
- Ports [1, 1]
- Position [135, 98, 170, 132]
- SourceBlock "dspsigops/Downsample"
- SourceType "Downsample"
- N "2"
- phase "0"
- ic "0"
- smode "Allow multirate"
- fmode "Maintain input frame size"
- }
- Block {
- BlockType Reference
- Name "FIR"
- Ports [1, 1]
- Position [250, 25, 370, 65]
- SourceBlock "fixpt_lib_3p1/Filters/FIR"
- SourceType "Fixed-Point FIR"
- mgainval "h(1:2:length(h))"
- vinit "0"
- samptime "-1"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "sfix( 16 )"
- GainScaling "2^-14"
- MatRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(20)"
- OutScaling "2^12"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Reference
- Name "FIR1"
- Ports [1, 1]
- Position [250, 95, 370, 135]
- SourceBlock "fixpt_lib_3p1/Filters/FIR"
- SourceType "Fixed-Point FIR"
- mgainval "h(2:2:length(h))"
- vinit "0"
- samptime "-1"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "sfix( 16 )"
- GainScaling "2^-14"
- MatRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(20)"
- OutScaling "2^12"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Goto
- Name "Goto"
- Position [835, 113, 915, 137]
- ShowName off
- GotoTag "PFIR_OUT"
- TagVisibility "global"
- }
- Block {
- BlockType Reference
- Name "Integer Delay"
- Ports [1, 1]
- Position [47, 65, 73, 90]
- Orientation "down"
- NamePlacement "alternate"
- ShowName off
- SourceBlock "dspsigops/Integer Delay"
- SourceType "Integer Delay"
- delay "1"
- ic "0"
- }
- Block {
- BlockType SubSystem
- Name "ShiftnArithmetic"
- Ports [1, 1]
- Position [705, 69, 745, 91]
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Shift bits right how many places (negative "
- "is shift left):|Shift binary point right how many places (negative is shift l"
- "eft):"
- MaskStyleString "edit,edit"
- MaskTunableValueString "on,on"
- MaskCallbackString "|"
- MaskEnableString "on,on"
- MaskVisibilityString "on,on"
- MaskToolTipString "on,on"
- MaskVariables "nBitShiftRight=@1;nBinPtShiftRight=@2;"
- MaskInitialization "netExponent = nBinPtShiftRight - nBitShiftR"
- "ight;ndstr = ['Vy = Vu'];nif netExponent ~= 0n dstr = [dstr,' * 2^',num2s"
- "tr(netExponent)];nendndstr = [dstr,'\nQy = Qu'];nif nBitShiftRight > 0n "
- " dstr = [dstr,' >> ',num2str(nBitShiftRight)];nelseif nBitShiftRight < 0n d"
- "str = [dstr,' << ',num2str(-nBitShiftRight)];nendndstr = [dstr,'\nEy = Eu'"
- "];nif nBinPtShiftRight > 0n dstr = [dstr,' + ',num2str(nBinPtShiftRight)];"
- "nelseif nBinPtShiftRight < 0n dstr = [dstr,' - ',num2str(-nBinPtShiftRight"
- ")];nend"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "-( log2(g) - 10 )|0"
- MaskVariableAliases ","
- System {
- Name "ShiftnArithmetic"
- Location [463, 366, 952, 640]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "u"
- Position [25, 158, 55, 172]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Data TypenPropagation"
- Ports [3]
- Position [295, 50, 335, 90]
- SourceBlock "fixpt_lib_3p1/Data Type/Data TypenProp"
- "agation"
- SourceType "Fixed-Point Data Type Propagation"
- PropDataTypeMode "Inherit via propagation rule"
- PropDataType "sfix(16)"
- IfRefDouble "double"
- IfRefSingle "single"
- IsSigned "IsSigned1"
- NumBitsBase "NumBits1"
- NumBitsMult "1"
- NumBitsAdd "0"
- NumBitsAllowFinal "1:128"
- PropScalingMode "Inherit via propagation rule"
- PropScaling "2^-10"
- ValuesUsedBestPrec "[5 -7]"
- SlopeBase "Slope1"
- SlopeMult "2^nBinPtShiftRight"
- SlopeAdd "0"
- BiasBase "Bias1"
- BiasMult "2^netExponent"
- BiasAdd "0"
- DblOver off
- }
- Block {
- BlockType Reference
- Name "Gain"
- Ports [1, 1]
- Position [120, 143, 165, 187]
- SourceBlock "fixpt_lib_3p1/Math/Gain"
- SourceType "Fixed-Point Gain"
- gainval "2^netExponent"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "sfix(24)"
- GainScaling "2^-14"
- VecRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(24)"
- OutScaling "2^12"
- LockScale off
- RndMeth "Floor"
- DoSatur off
- DblOver off
- dolog on
- ElevsMatrix "Element-wise(K.*u)"
- }
- Block {
- BlockType Outport
- Name "y"
- Position [345, 158, 375, 172]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "Gain"
- SrcPort 1
- Points [90, 0]
- Branch {
- Points [0, -80]
- DstBlock "Data TypenPropagation"
- DstPort 3
- }
- Branch {
- DstBlock "y"
- DstPort 1
- }
- }
- Line {
- SrcBlock "u"
- SrcPort 1
- Points [35, 0]
- Branch {
- Points [0, -110; 160, 0]
- Branch {
- Points [0, 15]
- DstBlock "Data TypenPropagation"
- DstPort 2
- }
- Branch {
- DstBlock "Data TypenPropagation"
- DstPort 1
- }
- }
- Branch {
- DstBlock "Gain"
- DstPort 1
- }
- }
- }
- }
- Block {
- BlockType Reference
- Name "Sum"
- Ports [2, 1]
- Position [450, 12, 500, 148]
- SourceBlock "fixpt_lib_3p1/Math/Sum"
- SourceType "Fixed-Point Sum"
- listofsigns "++"
- OutputDataTypeScalingMode "Inherit via internal rule"
- OutDataType "sfix(16)"
- OutScaling "2^-10"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog on
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [835, 73, 865, 87]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "In"
- SrcPort 1
- Points [0, 0; 10, 0]
- Branch {
- DstBlock "Downsample"
- DstPort 1
- }
- Branch {
- DstBlock "Integer Delay"
- DstPort 1
- }
- }
- Line {
- SrcBlock "Integer Delay"
- SrcPort 1
- Points [0, 20]
- DstBlock "Downsample1"
- DstPort 1
- }
- Line {
- SrcBlock "Downsample1"
- SrcPort 1
- DstBlock "FIR1"
- DstPort 1
- }
- Line {
- SrcBlock "Downsample"
- SrcPort 1
- DstBlock "FIR"
- DstPort 1
- }
- Line {
- SrcBlock "FIR1"
- SrcPort 1
- DstBlock "Sum"
- DstPort 2
- }
- Line {
- SrcBlock "FIR"
- SrcPort 1
- DstBlock "Sum"
- DstPort 1
- }
- Line {
- SrcBlock "Sum"
- SrcPort 1
- DstBlock "Conversion"
- DstPort 1
- }
- Line {
- SrcBlock "Conversion"
- SrcPort 1
- DstBlock "ShiftnArithmetic"
- DstPort 1
- }
- Line {
- SrcBlock "ShiftnArithmetic"
- SrcPort 1
- Points [0, 0; 55, 0]
- Branch {
- DstBlock "Out"
- DstPort 1
- }
- Branch {
- Points [0, 45]
- DstBlock "Goto"
- DstPort 1
- }
- }
- }
- }
- Block {
- BlockType Reference
- Name "Product"
- Ports [2, 1]
- Position [210, 105, 250, 145]
- Orientation "down"
- NamePlacement "alternate"
- ShowName off
- SourceBlock "fixpt_lib_3p1/Math/Product"
- SourceType "Fixed-Point Product"
- listofops "**"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(20)"
- OutScaling "2^-18"
- LockScale off
- RndMeth "Nearest"
- DoSatur off
- DblOver off
- dolog off
- ElevsMatrix "Element-wise(.*)"
- }
- Block {
- BlockType SubSystem
- Name "Resampler"
- Ports [1, 1]
- Position [172, 365, 288, 395]
- Orientation "down"
- ShowName off
- FontName "Arial"
- FontSize 12
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskPromptString "Resampling filter coefficients:|NDELAY|NDEC"
- MaskStyleString "edit,edit,edit"
- MaskTunableValueString "on,on,on"
- MaskCallbackString "||"
- MaskEnableString "on,on,on"
- MaskVisibilityString "on,on,on"
- MaskToolTipString "on,on,on"
- MaskVariables "h=@1;Ndelay=@2;Ndec=@3;"
- MaskDisplay "disp('Rate Conversion')"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- MaskValueString "fir1(31,0.25)|4|3"
- MaskVariableAliases ",,"
- System {
- Name "Resampler"
- Location [266, 164, 913, 279]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Inport
- Name "In"
- Position [25, 28, 55, 42]
- Port "1"
- LatchInput off
- Interpolate on
- }
- Block {
- BlockType Reference
- Name "Downsample"
- Ports [1, 1]
- Position [455, 18, 490, 52]
- SourceBlock "dspsigops/Downsample"
- SourceType "Downsample"
- N "Ndec"
- phase "0"
- ic "0"
- smode "Allow multirate"
- fmode "Maintain input frame size"
- }
- Block {
- BlockType Reference
- Name "FIR"
- Ports [1, 1]
- Position [250, 15, 370, 55]
- SourceBlock "fixpt_lib_3p1/Filters/FIR"
- SourceType "Fixed-Point FIR"
- mgainval "h"
- vinit "0.0"
- samptime "-1"
- GainDataTypeScalingMode "Specify via dialog"
- GainDataType "sfix( 12 )"
- GainScaling "2^-14"
- MatRadixGroup "Best Precision: Matrix-wise"
- OutputDataTypeScalingMode "Specify via dialog"
- OutDataType "sfix(24)"
- OutScaling "2^12"
- LockScale off
- RndMeth "Nearest"
- DoSatur on
- DblOver off
- dolog on
- }
- Block {
- BlockType Goto
- Name "Goto"
- Position [575, 75, 630, 95]
- ShowName off
- GotoTag "RS_OUT"
- TagVisibility "global"
- }
- Block {
- BlockType Reference
- Name "Upsample"
- Ports [1, 1]
- Position [135, 18, 170, 52]
- SourceBlock "dspsigops/Upsample"
- SourceType "Upsample"
- N "Ndelay"
- phase "0"
- ic "0"
- mode "Maintain input frame size"
- }
- Block {
- BlockType Outport
- Name "Out"
- Position [580, 28, 610, 42]
- Port "1"
- OutputWhenDisabled "held"
- InitialOutput "[]"
- }
- Line {
- SrcBlock "In"
- SrcPort 1
- DstBlock "Upsample"
- DstPort 1
- }
- Line {
- SrcBlock "Upsample"
- SrcPort 1
- DstBlock "FIR"
- DstPort 1
- }
- Line {
- SrcBlock "FIR"
- SrcPort 1
- DstBlock "Downsample"
- DstPort 1
- }
- Line {
- SrcBlock "Downsample"
- SrcPort 1
- Points [0, 0; 35, 0]
- Branch {
- DstBlock "Out"
- DstPort 1
- }
- Branch {
- Points [0, 50]
- DstBlock "Goto"
- DstPort 1
- }
- }
- }
- }
- Block {
- BlockType SubSystem
- Name "Subsystem3"
- Ports []
- Position [40, 310, 81, 350]
- BackgroundColor "lightBlue"
- ShowName off
- ShowPortLabels on
- TreatAsAtomicUnit off
- RTWSystemCode "Auto"
- RTWFcnNameOpts "Auto"
- RTWFileNameOpts "Auto"
- MaskDisplay "disp('Scopes')"
- MaskIconFrame on
- MaskIconOpaque on
- MaskIconRotate "none"
- MaskIconUnits "autoscale"
- System {
- Name "Subsystem3"
- Location [240, 165, 817, 658]
- Open off
- ModelBrowserVisibility off
- ModelBrowserWidth 200
- ScreenColor "automatic"
- PaperOrientation "landscape"
- PaperPositionMode "auto"
- PaperType "usletter"
- PaperUnits "inches"
- ZoomFactor "100"
- Block {
- BlockType Reference
- Name "CIC"
- Ports [1]
- Position [505, 190, 540, 240]
- SourceBlock "dspsnks3/SpectrumnScope"
- SourceType "Spectrum Scope"
- ScopeProperties on
- Domain "Frequency"
- HorizSpan "1"
- UseBuffer on
- BufferSize "1024"
- Overlap "0"
- inpFftLenInherit off
- FFTlength "128"
- numAvg "2"
- DisplayProperties off
- AxisGrid on
- Memory off
- FrameNumber on
- AxisLegend off
- AxisZoom off
- OpenScopeAtSimStart on
- OpenScopeImmediately off
- FigPos "[260 183 537 310]"
- AxisProperties off
- XUnits "Hertz"
- XRange "[-Fs/2...Fs/2]"
- InheritXIncr on
- XIncr "1.0"
- XLabel "Samples"
- YUnits "dB"
- YMin "43.8708686815548"
- YMax "212.851303604382"
- YLabel "Magnitude, dB"
- LineProperties off
- }
- Block {
- BlockType Scope
- Name "CIC DecimatornOutput"
- Ports [2]
- Position [375, 166, 405, 199]
- Floating off
- Location [234, 148, 579, 358]
- Open off
- NumInputPorts "2"
- TickLabels "OneTimeTick"
- ZoomMode "on"
- List {
- ListType AxesTitles
- axes1 "%<SignalLabel>"
- axes2 "%<SignalLabel>"
- }
- List {
- ListType SelectedSignals
- axes1 ""
- axes2 ""
- }
- Grid "on"
- TimeRange "0.0003"
- YMin "-1e+009~-1e+009"
- YMax "1e+009~1e+009"
- SaveToWorkspace off
- SaveName "ScopeData2"
- DataFormat "StructureWithTime"
- LimitDataPoints on
- MaxDataPoints "50000"
- Decimation "1"
- SampleInput off
- SampleTime "0"
- }
- Block {
- BlockType Scope
- Name "CompensationnFIR Output"
- Ports [2]
- Position [380, 236, 410, 269]
- Floating off
- Location [457, 66, 802, 292]
- Open off
- NumInputPorts "2"
- TickLabels "OneTimeTick"
- ZoomMode "on"
- List {
- ListType AxesTitles
- axes1 "%<SignalLabel>"
- axes2 "%<SignalLabel>"
- }
- List {
- ListType SelectedSignals
- axes1 ""
- axes2 ""
- }
- Grid "on"
- TimeRange "0.0003"
- YMin "-1e+009~-1e+009"
- YMax "1e+009~1e+009"
- SaveToWorkspace off
- SaveName "ScopeData3"
- DataFormat "StructureWithTime"
- LimitDataPoints on
- MaxDataPoints "50000"
- Decimation "1"
- SampleInput off
- SampleTime "0"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag"
- Ports [1, 1]
- Position [200, 35, 230, 65]
- Output "Real"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag1"
- Ports [1, 1]
- Position [200, 100, 230, 130]
- Output "Real"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag2"
- Ports [1, 2]
- Position [200, 167, 230, 198]
- Output "RealAndImag"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag3"
- Ports [1, 2]
- Position [205, 237, 235, 268]
- Output "RealAndImag"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag4"
- Ports [1, 2]
- Position [205, 307, 235, 338]
- Output "RealAndImag"
- }
- Block {
- BlockType ComplexToRealImag
- Name "Complex tonReal-Imag5"
- Ports [1, 2]
- Position [205, 377, 235, 408]
- Output "RealAndImag"
- }
- Block {
- BlockType DataTypeConversion
- Name "Data Type Conversion"
- Position [300, 36, 355, 64]
- ShowName off
- DataType "double"
- SaturateOnIntegerOverflow on
- }
- Block {
- BlockType Scope
- Name "Digital MixernReal Output"
- Ports [1]
- Position [380, 99, 410, 131]
- Floating off
- Location [237, 151, 581, 328]
- Open off
- NumInputPorts "1"
- TickLabels "OneTimeTick"
- ZoomMode "on"
- List {
- ListType AxesTitles
- axes1 "%<SignalLabel>"
- }
- List {
- ListType SelectedSignals
- axes1 ""
- }
- Grid "on"
- TimeRange "0.0003"
- YMin "-1"
- YMax "1"
- SaveToWorkspace off
- SaveName "ScopeData"
- DataFormat "StructureWithTime"
- LimitDataPoints on
- MaxDataPoints "50000"
- Decimation "1"
- SampleInput off
- SampleTime "0"
- }
- Block {
- BlockType From
- Name "From"
- Position [25, 35, 110, 65]
- CloseFcn "tagdialog Close"
- GotoTag "NCO_IQ"
- }
- Block {
- BlockType From
- Name "From1"
- Position [25, 100, 110, 130]
- CloseFcn "tagdialog Close"
- GotoTag "MIXER_OUT"
- }
- Block {
- BlockType From
- Name "From2"
- Position [25, 170, 110, 200]
- CloseFcn "tagdialog Close"
- GotoTag "CIC_OUT"
- }
- Block {
- BlockType From
- Name "From3"
- Position [25, 240, 110, 270]
- CloseFcn "tagdialog Close"
- GotoTag "CFIR_OUT"
- }
- Block {
- BlockType From
- Name "From4"
- Position [25, 310, 110, 340]
- CloseFcn "tagdialog Close"
- GotoTag "PFIR_OUT"
- }
- Block {
- BlockType From
- Name "From5"
- Position [25, 380, 110, 410]
- CloseFcn "tagdialog Close"
- GotoTag "RS_OUT"
- }
- Block {
- BlockType Gain
- Name "Gain"
- Position [405, 34, 460, 66]
- Gain "1/24"
- Multiplication "Element-wise(K.*u)"
- SaturateOnIntegerOverflow on
- }
- Block {
- BlockType Reference
- Name "NCO "
- Ports [1]
- Position [505, 25, 540, 75]
- SourceBlock "dspsnks3/SpectrumnScope"
- SourceType "Spectrum Scope"
- ScopeProperties on
- Domain "Frequency"
- HorizSpan "1"
- UseBuffer on
- BufferSize "8192"
- Overlap "0"
- inpFftLenInherit off
- FFTlength "128"
- numAvg "2"
- DisplayProperties off
- AxisGrid on
- Memory off
- FrameNumber on
- AxisLegend off
- AxisZoom off
- OpenScopeAtSimStart on
- OpenScopeImmediately off
- FigPos "[107 280 536 308]"
- AxisProperties off
- XUnits "Hertz"
- XRange "[0...Fs/2]"
- InheritXIncr on
- XIncr "1.0"
- XLabel "Samples"
- YUnits "dB"
- YMin "-160"
- YMax "5"
- YLabel "Magnitude, dB"
- LineProperties off
- }
- Block {
- BlockType Scope
- Name "ProgrammablenFIR Output"
- Ports [2]
- Position [380, 306, 410, 339]
- Floating off
- Location [586, 146, 928, 356]
- Open off
- NumInputPorts "2"
- TickLabels "OneTimeTick"
- ZoomMode "on"
- List {
- ListType AxesTitles
- axes1 "%<SignalLabel>"
- axes2 "%<SignalLabel>"
- }
- List {
- ListType SelectedSignals
- axes1 ""
- axes2 ""
- }
- Grid "on"
- TimeRange "0.0003"
- YMin "-1e+009~-1e+009"
- YMax "1e+009~1e+009"
- SaveToWorkspace off
- SaveName "ScopeData4"
- DataFormat "StructureWithTime"
- LimitDataPoints on
- MaxDataPoints "50000"
- Decimation "1"
- SampleInput off
- SampleTime "0"
- }
- Block {
- BlockType Reference
- Name "Resamp"
- Ports [1]
- Position [505, 415, 540, 465]
- SourceBlock "dspsnks3/SpectrumnScope"
- SourceType "Spectrum Scope"
- ScopeProperties on
- Domain "Frequency"
- HorizSpan "1"
- UseBuffer on
- BufferSize "512"
- Overlap "0"
- inpFftLenInherit off
- FFTlength "128"
- numAvg "2"
- DisplayProperties off
- AxisGrid on
- Memory off
- FrameNumber on
- AxisLegend off
- AxisZoom off
- OpenScopeAtSimStart on
- OpenScopeImmediately off
- FigPos "[360 61 535 305]"
- AxisProperties off
- XUnits "Hertz"
- XRange "[-Fs/2...Fs/2]"
- InheritXIncr on
- XIncr "1.0"
- XLabel "Samples"
- YUnits "dB"
- YMin "70.0823242463192"
- YMax "209.614555683789"
- YLabel "Magnitude, dB"
- LineProperties off
- }
- Block {
- BlockType Scope
- Name "ResamplernOutput"
- Ports [2]
- Position [380, 376, 410, 409]
- Floating off
- Location [458, 70, 801, 296]
- Open on
- NumInputPorts "2"
- TickLabels "OneTimeTick"
- ZoomMode "on"
- List {
- ListType AxesTitles
- axes1 "%<SignalLabel>"
- axes2 "%<SignalLabel>"
- }
- List {
- ListType SelectedSignals
- axes1 ""
- axes2 ""
- }
- Grid "on"
- TimeRange "0.0003"
- YMin "-2e+008~-2e+008"
- YMax "2e+008~2e+008"
- SaveToWorkspace off
- SaveName "ScopeData5"
- DataFormat "StructureWithTime"
- LimitDataPoints on
- MaxDataPoints "50000"
- Decimation "1"
- SampleInput off
- SampleTime "0"
- }
- Line {
- SrcBlock "From"
- SrcPort 1
- DstBlock "Complex tonReal-Imag"
- DstPort 1
- }
- Line {
- SrcBlock "From1"
- SrcPort 1
- DstBlock "Complex tonReal-Imag1"
- DstPort 1
- }
- Line {
- SrcBlock "From2"
- SrcPort 1
- Points [20, 0]
- Branch {
- DstBlock "Complex tonReal-Imag2"
- DstPort 1
- }
- Branch {
- Points [0, 30]
- DstBlock "CIC"
- DstPort 1
- }
- }
- Line {
- SrcBlock "Complex tonReal-Imag"
- SrcPort 1
- DstBlock "Data Type Conversion"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag1"
- SrcPort 1
- DstBlock "Digital MixernReal Output"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag2"
- SrcPort 1
- DstBlock "CIC DecimatornOutput"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag2"
- SrcPort 2
- DstBlock "CIC DecimatornOutput"
- DstPort 2
- }
- Line {
- SrcBlock "Gain"
- SrcPort 1
- DstBlock "NCO "
- DstPort 1
- }
- Line {
- SrcBlock "Data Type Conversion"
- SrcPort 1
- DstBlock "Gain"
- DstPort 1
- }
- Line {
- SrcBlock "From3"
- SrcPort 1
- DstBlock "Complex tonReal-Imag3"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag3"
- SrcPort 1
- DstBlock "CompensationnFIR Output"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag3"
- SrcPort 2
- DstBlock "CompensationnFIR Output"
- DstPort 2
- }
- Line {
- SrcBlock "From4"
- SrcPort 1
- DstBlock "Complex tonReal-Imag4"
- DstPort 1
- }
- Line {
- SrcBlock "Complex tonReal-Imag4"
- SrcPort 2
- DstBlock "ProgrammablenFIR Output"
- DstPort 2
- }
- Line {
- SrcBlock "Complex tonReal-Imag4"
- SrcPort 1
- DstBlock "ProgrammablenFIR Output"
- DstPort 1
- }
- Line {
- SrcBlock "From5"
- SrcPort 1
- Points [25, 0]
- Branch {
- DstBlock "Complex tonReal-Imag5"
- DstPort 1
- }
- Branch {
- Points [0, 45]
- DstBlock "Resamp"
- DstPort 1
- }
- }
- Line {
- SrcBlock "Complex tonReal-Imag5"
- SrcPort 2
- DstBlock "ResamplernOutput"
- DstPort 2
- }
- Line {
- SrcBlock "Complex tonReal-Imag5"
- SrcPort 1
- DstBlock "ResamplernOutput"
- DstPort 1
- }
- }
- }
- Block {
- BlockType Terminator
- Name "Terminator"
- Position [220, 425, 240, 445]
- Orientation "down"
- NamePlacement "alternate"
- ShowName off
- }
- Line {
- SrcBlock "GSM Source"
- SrcPort 1
- Points [75, 0]
- DstBlock "Product"
- DstPort 1
- }
- Line {
- SrcBlock "NCO"
- SrcPort 1
- DstBlock "Product"
- DstPort 2
- }
- Line {
- SrcBlock "Product"
- SrcPort 1
- DstBlock "CIC"
- DstPort 1
- }
- Line {
- SrcBlock "CIC"
- SrcPort 1
- DstBlock "CFIR1"
- DstPort 1
- }
- Line {
- SrcBlock "Resampler"
- SrcPort 1
- DstBlock "Terminator"
- DstPort 1
- }
- Line {
- SrcBlock "CFIR1"
- SrcPort 1
- DstBlock "PFIR"
- DstPort 1
- }
- Line {
- SrcBlock "PFIR"
- SrcPort 1
- DstBlock "Resampler"
- DstPort 1
- }
- Annotation {
- Position [83, 366]
- Text "Instrumentation"
- FontSize 12
- }
- Annotation {
- Position [334, 159]
- Text "69.333nMSPS"
- FontName "Arial"
- FontSize 12
- }
- Annotation {
- Position [334, 229]
- Text "1.0833nMSPS"
- FontName "Arial"
- FontSize 12
- }
- Annotation {
- Position [334, 289]
- Text "541.66nKSPS"
- FontName "Arial"
- FontSize 12
- }
- Annotation {
- Position [334, 349]
- Text "270.83nKSPS"
- FontName "Arial"
- FontSize 12
- }
- }
- }