📄 rf.mdl
字号:
Library {
Name "RF"
Version 4.00
Description "Blocks useful for simulation of wireless communicat"
"ion systems. Originally intended for the simulation of \nGPS transmitter, ch"
"annel, and receiver, and later adapted for other uses. This is a work in pro"
"gress; no\nclaims or guarantees are made concerning accuracy, completeness, o"
"r fitness for any purpose."
LibraryLinkDisplay "none"
CovSaveName "covdata"
CovNameIncrementing off
CovHtmlReporting on
BlockNameDataTip off
BlockParametersDataTip on
BlockDescriptionStringDataTip off
ToolBar on
StatusBar on
BrowserShowLibraryLinks off
BrowserLookUnderMasks off
Created "Thu May 27 14:40:03 1999"
Creator "Jackson Harvey, Analog Design Group, University of "
"Minnesota"
UpdateHistory "UpdateHistoryWhenSave"
ModifiedByFormat "%<Auto>"
LastModifiedBy "jharvey"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Mon Apr 16 18:15:06 2001"
ModifiedComment "jharvey -- Mon Apr 16 18:15:06 2001 -- Version 1.15"
"\nNonlinear transfer function was made compressive\n"
ModifiedHistory "jharvey -- Mon Apr 16 18:15:06 2001 -- Version 1.15"
"\nNonlinear transfer function was made compressive\n\n\njharvey -- Fri Jan 19"
" 15:13:26 2001 -- Version 1.14\n\n\n\n"
ModelVersionFormat "1.%<AutoIncrement:15>"
ConfigurationManager "none"
SimParamPage "Solver"
AlgebraicLoopMsg "warning"
MinStepSizeMsg "warning"
UnconnectedInputMsg "warning"
UnconnectedOutputMsg "warning"
UnconnectedLineMsg "warning"
InheritedTsInSrcMsg "warning"
SingleTaskRateTransMsg "none"
MultiTaskRateTransMsg "error"
IntegerOverflowMsg "warning"
CheckForMatrixSingularity "none"
UnnecessaryDatatypeConvMsg "none"
Int32ToFloatConvMsg "warning"
SignalLabelMismatchMsg "none"
LinearizationMsg "none"
VectorMatrixConversionMsg "none"
SfunCompatibilityCheckMsg "none"
BlockPriorityViolationMsg "warning"
ArrayBoundsChecking "none"
ConsistencyChecking "none"
Profile off
SimulationMode "normal"
RTWRetainRTWFile off
RTWMakeCommand "make_rtw"
RTWGenerateCodeOnly off
TLCProfiler off
TLCDebug off
TLCCoverage off
ExtModeMexFile "ext_comm"
ExtModeBatchMode off
ExtModeTrigType "manual"
ExtModeTrigMode "normal"
ExtModeTrigPort "1"
ExtModeTrigElement "any"
ExtModeTrigDuration 1000
ExtModeTrigHoldOff 0
ExtModeTrigDelay 0
ExtModeTrigDirection "rising"
ExtModeTrigLevel 0
ExtModeArchiveMode "off"
ExtModeAutoIncOneShot off
ExtModeIncDirWhenArm off
ExtModeAddSuffixToVar off
ExtModeWriteAllDataToWs off
ExtModeArmWhenConnect on
ExtModeLogAll on
BlockDefaults {
Orientation "right"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
NamePlacement "normal"
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
ShowName on
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Helvetica"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "RF"
Location [354, 326, 823, 655]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
ReportName "simulink-default.rpt"
Block {
BlockType SubSystem
Name "A/D Blocks"
Ports []
Position [153, 181, 229, 239]
BackgroundColor "green"
DropShadow on
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "A/D Blocks"
MaskDisplay "disp('A/D Blocks')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "A/D Blocks"
Location [178, 92, 858, 650]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType SubSystem
Name "2nd Order\nDecimation\nFilter1"
Ports [1, 1]
Position [355, 429, 405, 471]
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "Second Order Decimation Filter"
MaskDescription "Second Order Decimation Filter. Input is p"
"assed through asecond order 'integrate and dump' filter, and then downsampled"
"."
MaskHelp "Second Order Decimation Filter. Input is p"
"assed through asecond order 'integrate and dump' filter, and then downsampled"
"."
MaskPromptString "Decimation Factor (N)|Sampling Rate"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVariables "N=@1;fs=@2;"
MaskDisplay "plot(0,0,100,100,[10,20,20],[30,10,90],[30,"
"20],[30,10],[80,80,40,40],[90,10,90,10])"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "32|1E6"
MaskVariableAliases ","
System {
Name "2nd Order\nDecimation\nFilter1"
Location [737, 432, 1129, 610]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "Data In"
Position [55, 48, 85, 62]
Port "1"
Interpolate on
}
Block {
BlockType Reference
Name "Downsample"
Ports [1, 1]
Position [190, 38, 230, 72]
SourceBlock "dspbdsp/Downsample"
SourceType "Downsample"
N "N"
phase "0"
ts "1/fs"
}
Block {
BlockType Reference
Name "Second-Order\nIntegrator"
Ports [1, 1]
Position [115, 31, 160, 79]
SourceBlock "RF/A//D Blocks/Second-Order\nIntegrator"
SourceType "Second Order Integrate and Dump"
fs "fs"
N "N"
}
Block {
BlockType Outport
Name "Data Out"
Position [260, 48, 290, 62]
Port "1"
OutputWhenDisabled "held"
InitialOutput "0"
}
Line {
SrcBlock "Downsample"
SrcPort 1
DstBlock "Data Out"
DstPort 1
}
Line {
SrcBlock "Second-Order\nIntegrator"
SrcPort 1
DstBlock "Downsample"
DstPort 1
}
Line {
SrcBlock "Data In"
SrcPort 1
DstBlock "Second-Order\nIntegrator"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "3rd Order\nDecimation\nFilter"
Ports [1, 1]
Position [455, 434, 505, 476]
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "Third Order Decimation Filter"
MaskDescription "Third Order Decimation Filter. Input is pa"
"ssed through a third order 'integrate and dump' filter, and then downsampled."
MaskHelp "Second Order Decimation Filter. Input is p"
"assed through a thirdd order 'integrate and dump' filter, and then downsample"
"d."
MaskPromptString "Decimation Factor (N)|Sampling Rate"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVariables "N=@1;fs=@2;"
MaskDisplay "plot(0,0,100,100,[10,20,20],[30,10,90],[30,"
"20],[30,10],[80,80,40,40],[90,10,90,10])"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "12|1350E6*2"
MaskVariableAliases ","
System {
Name "3rd Order\nDecimation\nFilter"
Location [679, 559, 1071, 737]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "Data In"
Position [55, 48, 85, 62]
Port "1"
Interpolate on
}
Block {
BlockType Reference
Name "Downsample"
Ports [1, 1]
Position [190, 38, 230, 72]
SourceBlock "dspbdsp/Downsample"
SourceType "Downsample"
N "N"
phase "0"
ts "1/fs"
}
Block {
BlockType Reference
Name "Third-Order\nIntegrator"
Ports [1, 1]
Position [115, 31, 160, 79]
SourceBlock "RF/A//D Blocks/Third-Order\nIntegrator"
SourceType "Third Order Integrate and Dump"
fs "fs"
N "N"
}
Block {
BlockType Outport
Name "Data Out"
Position [260, 48, 290, 62]
Port "1"
OutputWhenDisabled "held"
InitialOutput "0"
}
Line {
SrcBlock "Downsample"
SrcPort 1
DstBlock "Data Out"
DstPort 1
}
Line {
SrcBlock "Third-Order\nIntegrator"
SrcPort 1
DstBlock "Downsample"
DstPort 1
}
Line {
SrcBlock "Data In"
SrcPort 1
DstBlock "Third-Order\nIntegrator"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "4th Order Quadrature\nBandpass Sigma-Delta"
Ports [1, 1]
Position [100, 80, 140, 130]
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "Fourth Order Quadrature Bandpass Sigma-Delt"
"a"
MaskDescription "Fourth Order Quadrature Bandpass Sigma-Delt"
"a. After Stephen Jantzi, \"Quadrature Bandpass Delta-Sigma Modulation for Di"
"gital Radio,\" Ph.D. dissertation, University of Toronto. More information o"
"n parameters can be found in the above reference."
MaskHelp "Fourth Order Quadrature Bandpass Sigma-Delt"
"a. After Stephen Jantzi, \"Quadrature Bandpass Delta-Sigma Modulation for Di"
"gital Radio,\" Ph.D. dissertation, University of Toronto. More information o"
"n parameters can be found in the above reference."
MaskPromptString "Noise Transfer Function Poles (4)|Noise Tra"
"nsfer Function Zeros (4)|Signal Transfer Function Zeros (3)|Maximum Signal Ga"
"in (usually 1)|Sampling Frequency"
MaskStyleString "edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on"
MaskCallbackString "||||"
MaskEnableString "on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on"
MaskToolTipString "on,on,on,on,on"
MaskVariables "NTF_Poles=@1;NTF_Zeros=@2;STF_Zeros=@3;STF_"
"Gain=@4;fs=@5;"
MaskInitialization "ts = 1/fs;\n\n[H,W]=freqz(poly(STF_Zeros),p"
"oly(NTF_Poles));\nk = -STF_Gain / max(H);\n\n% Calculate modulator coefficien"
"ts\nd = real(NTF_Zeros) - 1;\nc = imag(NTF_Zeros);\n\nBeta = poly(NTF_Poles);"
"\nz = NTF_Zeros;\nB(4) = - (z(4)+z(3)+z(2)+z(1)) - Beta(2);\nB(3)=B(4)*(z(3)+"
"z(2)+z(1))+z(4)*z(3)+z(4)*z(2)+z(4)*z(1)+z(3)*z(2);\nB(3) = B(3)+z(3)*z(1)+z("
"2)*z(1)-Beta(3);\nB(2) = -B(4)*(z(3)*z(2)+z(3)*z(1)+z(2)*z(1)) + B(3)*(z(2)+z"
"(1));\nB(2) = B(2) - (z(4)*z(3)*z(2)+z(4)*z(3)*z(1)+z(4)*z(2)*z(1)+z(3)*z(2)*"
"z(1)) - Beta(4);\nB(1) = B(4)*z(3)*z(2)*z(1) - B(3)*z(2)*z(1) + B(2)*z(1);\nB"
"(1) = B(1) + z(4)*z(3)*z(2)*z(1) - Beta(5);\nb = real(B);\nf = imag(B);\n\nAl"
"pha = k*poly(STF_Zeros);\nA(4) = Alpha(1);\nA(3) = A(4)*(z(3)+z(2)+z(1)) + Al"
"pha(2);\nA(2) = -A(4)*(z(3)*z(2)+z(3)*z(1)+z(2)*z(1)) + A(3)*(z(2)+z(1)) + Al"
"pha(3);\nA(1) = A(4)*z(3)*z(2)*z(1) - A(3)*z(2)*z(1) + A(2)*z(1) + Alpha(4);"
"\na = real(A);\ne = imag(A);\n"
MaskDisplay "plot(0,0,100,100,[40,10],[80,80],[40,10,20,"
"10,40],[40,40,60,80,80],[50,90,70,50],[40,40,80,40])"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "conj([0.67605+0.28003i 0.84752+0.10317i 0.6"
"7224+0.52633i 0.87023-0.35538i])|conj([0.94544+0.3258i 0.92388+0.38268i 0.898"
"9+0.43815i 0.92388-0.38268i])|conj([0.79335-0.60876i 0.13053+0.99144i 0.87023"
"-0.35538i])|0.95|80E6"
MaskVariableAliases ",,,,"
System {
Name "4th Order Quadrature\nBandpass Sigma-Delt"
"a"
Location [19, 83, 1001, 547]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "In1"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -