⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 evm_library.mdl

📁 EVM的模块
💻 MDL
📖 第 1 页 / 共 4 页
字号:
	      SrcPort		      1
	      Points		      [0, 80]
	      DstBlock		      " Demux "
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      " Demux "
	      SrcPort		      1
	      DstBlock		      " Terminator "
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "noisyIn"
	      SrcPort		      1
	      DstBlock		      " SFunction "
	      DstPort		      1
	    }
	    Line {
	      Name		      "EVM"
	      Labels		      [0, 0]
	      SrcBlock		      " SFunction "
	      SrcPort		      2
	      DstBlock		      "EVM"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Reference
	  Name			  "Constellation\nPoints"
	  Ports			  [0, 1]
	  Position		  [40, 94, 75, 126]
	  SourceBlock		  "dspsrcs4/DSP\nConstant"
	  SourceType		  "DSP Constant"
	  ShowPortLabels	  "FromPortIcon"
	  SystemSampleTime	  "-1"
	  FunctionWithSeparateData "off"
	  RTWMemSecFuncInitTerm	  "Inherit from model"
	  RTWMemSecFuncExecute	  "Inherit from model"
	  RTWMemSecDataConstants  "Inherit from model"
	  RTWMemSecDataInternal	  "Inherit from model"
	  RTWMemSecDataParameters "Inherit from model"
	  Value			  "C"
	  SampleMode		  "Discrete"
	  discreteOutput	  "Frame-based"
	  continuousOutput	  "Sample-based"
	  sampTime		  "1"
	  framePeriod		  "inf"
	  additionalParams	  "off"
	  allowOverrides	  "on"
	  dataType		  "Inherit from 'Constant value'"
	  isSigned		  "on"
	  wordLen		  "16"
	  udDataType		  "sfix(16)"
	  fracBitsMode		  "Best precision"
	  numFracBits		  "15"
	  InterpretAs1D		  "-inf"
	  Ts			  "-inf"
	  FramebasedOutput	  "-inf"
	}
	Block {
	  BlockType		  Math
	  Name			  "Math\nFunction"
	  Ports			  [1, 1]
	  Position		  [340, 65, 370, 95]
	  ShowName		  off
	  Operator		  "sqrt"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Normalize"
	  Position		  [435, 64, 495, 96]
	  Gain			  "1/Pmax"
	  ParameterDataTypeMode	  "Inherit via internal rule"
	  OutDataTypeMode	  "Inherit via internal rule"
	  SaturateOnIntegerOverflow off
	}
	Block {
	  BlockType		  Outport
	  Name			  "RMS EVM"
	  Position		  [560, 73, 590, 87]
	  IconDisplay		  "Port number"
	  BusOutputAsStruct	  off
	}
	Line {
	  SrcBlock		  "Constellation\nPoints"
	  SrcPort		  1
	  Points		  [30, 0; 0, -15]
	  DstBlock		  "Compute\nEVM"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Normalize"
	  SrcPort		  1
	  DstBlock		  "RMS EVM"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Math\nFunction"
	  SrcPort		  1
	  DstBlock		  "Normalize"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "In1"
	  SrcPort		  1
	  DstBlock		  "Compute\nEVM"
	  DstPort		  1
	}
	Line {
	  Name			  "EVM"
	  Labels		  [0, 0; 1, 0]
	  SrcBlock		  "Compute\nEVM"
	  SrcPort		  1
	  DstBlock		  "Math\nFunction"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "EVM\nSimulink Blocks"
      Ports		      [1, 1]
      Position		      [60, 16, 110, 74]
      TreatAsAtomicUnit	      on
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      FunctionWithSeparateData off
      MaskHideContents	      off
      MaskType		      "Error Vector Magnitude"
      MaskDescription	      "Compute the Error Vector Magnitude by comparing"
" the input signal to the reference provided by the Signal Constellation param"
"eter."
      MaskHelp		      "<p>\nIf the RMS EVM box is checked, this block "
"outputs the RMS value of the EVM for each input frame, i.e., the output will "
"be a single value per input frame.\n</p>\n<p>\nIf the RMS EVM box is unchecke"
"d, this block will output the EVM value per input sample, i.e., the output wi"
"ll be of the same size as the input.\n</p>\n<p>To convert the output of this "
"block to dB, use the dB Conversion block from the Signal Processing Blockset "
"and set it to \"Power\" mode.</p>\n<p>To convert the output of this block to "
"a percentage value, simply multiply its output by 100.</p>"
      MaskPromptString	      "Signal constellation:|RMS EVM"
      MaskStyleString	      "edit,checkbox"
      MaskTunableValueString  "on,off"
      MaskCallbackString      "|"
      MaskEnableString	      "on,on"
      MaskVisibilityString    "on,on"
      MaskToolTipString	      "on,on"
      MaskVarAliasString      ","
      MaskVariables	      "sigconst=@1;doRMS=@2;"
      MaskInitialization      "C = sigconst(:).';\nPmax = max(abs(C)); % max p"
"ower point\nmyOut=find_system(gcbh,'LookUnderMasks','all','Name','myOutput');"
"\n\nif doRMS\n    set_param(myOut,'GotoTag','RMS_EVM')\nelse\n	set_par"
"am(myOut,'GotoTag','EVM')\nend"
      MaskDisplay	      "disp('EVM');"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      MaskValueString	      "[1+j -1+j -1-j 1-j]|on"
      MaskTabNameString	      ","
      System {
	Name			"EVM\nSimulink Blocks"
	Location		[862, 677, 1686, 1022]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	TiledPaperMargins	[0.500000, 0.500000, 0.500000, 0.500000]
	TiledPageScale		1
	ShowPageBoundaries	off
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "In1"
	  Position		  [30, 123, 60, 137]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Goto
	  Name			  "EVM_Out"
	  Position		  [470, 215, 540, 245]
	  GotoTag		  "EVM"
	  TagVisibility		  "local"
	}
	Block {
	  BlockType		  Reference
	  Name			  "General QAM\nDemodulator\nBaseband1"
	  Ports			  [1, 1]
	  Position		  [115, 189, 190, 241]
	  DialogController	  "commDDGCreate"
	  DialogControllerArgs	  "DataTag1"
	  SourceBlock		  "commdigbbndam3/General QAM\nDemodulator\nBa"
"seband"
	  SourceType		  "General QAM Demodulator Baseband"
	  SigCon		  "C"
	  OutType		  "Integer"
	  DecType		  "Hard decision"
	  VarSource		  "Dialog"
	  Variance		  "1"
	  outDtypeBit		  "Inherit via internal rule"
	  outDtype		  "Inherit via internal rule"
	}
	Block {
	  BlockType		  Reference
	  Name			  "General QAM\nModulator\nBaseband1"
	  Ports			  [1, 1]
	  Position		  [220, 189, 295, 241]
	  SourceBlock		  "commdigbbndam3/General QAM\nModulator\nBase"
"band"
	  SourceType		  "General QAM Modulator Baseband"
	  SigCon		  "C"
	  outDtype		  "double"
	  outWordLen		  "16"
	  outUDDataType		  "sfix(16)"
	  outFracLenMode	  "Best precision"
	  outFracLen		  "15"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Normalization\n(if necessary)"
	  Position		  [590, 107, 660, 153]
	  NamePlacement		  "alternate"
	  Gain			  "1/Pmax"
	}
	Block {
	  BlockType		  Reference
	  Name			  "RMS"
	  Ports			  [1, 1]
	  Position		  [440, 112, 515, 148]
	  SourceBlock		  "dspstat3/RMS"
	  SourceType		  "RMS"
	  run			  off
	  reset_popup		  "None"
	  Port {
	    PortNumber		    1
	    Name		    "RMS EVM"
	    RTWStorageClass	    "Auto"
	    DataLoggingNameMode	    "SignalName"
	  }
	}
	Block {
	  BlockType		  Goto
	  Name			  "RMS_EVM_Out"
	  Position		  [695, 115, 785, 145]
	  GotoTag		  "RMS_EVM"
	  TagVisibility		  "local"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [2, 1]
	  Position		  [310, 120, 330, 140]
	  ShowName		  off
	  IconShape		  "round"
	  Inputs		  "|+-"
	  CollapseMode		  "All dimensions"
	  InputSameDT		  off
	  OutDataTypeMode	  "Inherit via internal rule"
	}
	Block {
	  BlockType		  From
	  Name			  "myOutput"
	  Position		  [605, 209, 705, 241]
	  CloseFcn		  "tagdialog Close"
	  GotoTag		  "RMS_EVM"
	}
	Block {
	  BlockType		  Outport
	  Name			  "RMS EVM"
	  Position		  [750, 218, 780, 232]
	  IconDisplay		  "Port number"
	  BusOutputAsStruct	  off
	}
	Line {
	  SrcBlock		  "myOutput"
	  SrcPort		  1
	  DstBlock		  "RMS EVM"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  Points		  [50, 0]
	  Branch {
	    Points		    [0, 100]
	    DstBlock		    "EVM_Out"
	    DstPort		    1
	  }
	  Branch {
	    DstBlock		    "RMS"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "In1"
	  SrcPort		  1
	  Points		  [20, 0]
	  Branch {
	    Points		    [0, 85]
	    DstBlock		    "General QAM\nDemodulator\nBaseband1"
	    DstPort		    1
	  }
	  Branch {
	    DstBlock		    "Sum"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "General QAM\nModulator\nBaseband1"
	  SrcPort		  1
	  Points		  [20, 0]
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "General QAM\nDemodulator\nBaseband1"
	  SrcPort		  1
	  DstBlock		  "General QAM\nModulator\nBaseband1"
	  DstPort		  1
	}
	Line {
	  Name			  "RMS EVM"
	  Labels		  [0, 0]
	  SrcBlock		  "RMS"
	  SrcPort		  1
	  DstBlock		  "Normalization\n(if necessary)"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Normalization\n(if necessary)"
	  SrcPort		  1
	  DstBlock		  "RMS_EVM_Out"
	  DstPort		  1
	}
      }
    }
  }
}
MatData {
  NumRecords		  2
  DataRecord {
    Tag			    DataTag1
    Data		    "  %)30     .    <     8    (     0         %    "
"\"     $    !     0         .    0     8    (    !          %    \"     $    "
"/     0         0    #P   $=104U$96UO9'5L871O<@ "
  }
  DataRecord {
    Tag			    DataTag0
    Data		    "  %)30     .    :!\\   8    (     @         %    "
"\"     $    !     0         %  0 &@    $   !: P  4V9U;DYA;64                 "
"      !);G!U=%!O<G17:61T:                $]U='!U=%!O<G17:61T:               4"
"V9U;F-T:6]N4&%R86UE=&5R<P        !.=6UB97)/9E!A<F%M971E<G,          $1I<F5C=$"
"9E9614:')O=6=H            4V%M<&QE5&EM90                    !.=6UB97)/9D1I<V-"
"R971E4W1A=&5S     $1I<V-R971E4W1A=&5S24,             3G5M8F5R3V9#;VYT:6YU;W5S"
"4W1A=&5S  !#;VYT:6YU;W5S4W1A=&5S24,          $5X=&5R;F%L1&5C;&%R871I;VX      "
"   26YC;'5D94AE861E<G-497AT          !,:6)R87)Y1FEL97-497AT             %5S97"
")#;V1E5&5X=                   57-E<D-O9&5497AT;61L57!D871E      !5<V5R0V]D951"
"E>'1M9&Q$97)I=F%T:79E $=E;F5R871E5$Q#                    4&%N96Q);F1E>       "
"              !5<V53:6U3=')U8W0                  %-H;W=#;VUP:6QE4W1E<',      "
"       0W)E871E1&5B=6=-97@               !3879E0V]D94]N;'D                  $"
"EN<'5T4&]R=',                     3W5T<'5T4&]R=',                   !087)A;65"
"T97)S                     $EN<'5T1&%T851Y<&4P                3W5T<'5T1&%T851Y"
"<&4P              !);G!U=%-I9VYA;%1Y<&4P             $]U='!U=%-I9VYA;%1Y<&4P "
"           26Y&<F%M94)A<V5D,                 !/=71&<F%M94)A<V5D,             "
"   %1E;7!L871E5'EP90                          #@   #@    &    \"     0       "
"  !0    @    !    !0    $         $     4   !M>45630    X    P    !@    @    "
"$          4    (     0    (    !         !   @ M,0  #@   #     &    \"     0"
"         !0    @    !     0    $         $  ! #$    .    ,     8    (    !   "
"       %    \"                0         0          X    P    !@    @    $    "
"      4    (     0    $    !         !   0 S    #@   #     &    \"     0     "
"    !0    @    !     0    $         $  ! #$    .    0     8    (    !        "
"  %    \"     $    )     0         0    \"0   $EN:&5R:71E9          .    ,   "
"  8    (    !          %    \"     $    !     0         0  $ ,     X    P    "
"!@    @    $          4    (     0    $    !         !   0 P    #@   #     & "
"   \"     0         !0    @    !     0    $         $  ! #     .    ,     8  "
"  (    !          %    \"     $    !     0         0  $ ,     X   !8    !@   "
" @    $          4    (     0   \"0    !         !     D    \"B\\J(&5X=&5R;B!"
"D;W5B;&4@9G5N8RAD;W5B;&4@82D[(\"HO      X   !H    !@    @    $          4    "
"(     0   #<    !         !     W    \"B-I;F-L=61E(#QM871H+F@^\"B-I;F-L=61E(#"
"QC9FQO870^\"B-I;F-L=61E(#QC87-S97)T/@ .    ,     8    (    !          %    \""
"     $    !     0         0  $ \"@    X   #@ @  !@    @    $          4    ( "
"    0   *P\"   !         !    \"L @  \"B\\J(%1H:7,@<V%M<&QE('-E=',@=&AE(&]U='"
"!U=\"!E<75A;\"!T;R!T:&4@:6YP=70*(\" @(\" @(\" @>3!;,%T@/2!U,%LP73L*1F]R(&-O;7"
"!L97@@<VEG;F%L<R!U<V4Z('DP6S!=+G)E(#T@=3!;,%TN<F4[\"B @(\" @(\" @(\" @(\" @("
"\" @(\" @(\" @(\"!Y,%LP72YI;2 ]('4P6S!=+FEM.PH@(\" @(\" @(\" @(\" @(\" @(\" @"
"(\" @(\" @>3%;,%TN<F4@/2!U,5LP72YR93L*(\" @(\" @(\" @(\" @(\" @(\" @(\" @(\" "
"@('DQ6S!=+FEM(#T@=3%;,%TN:6T[*B\\*:6YT(&DL(&H[\"F1O=6)L92!M>4UI;CL*9&]U8FQE('"
"0[\"F1O=6)L92!F<F%M95-U;3TP.PIF;W(@*&D],#L@:3QU7W=I9'1H.R!I*RLI\"GL*(\" @(&UY"
"36EN(#T@1$),7TU!6#L*(\" @(&9O<B H:CTP.R!J/'!?=VED=&@P.R!J*RLI\"B @(\"![\"B @("
"\" @(\" @=#TH:6Y&<F%M95MI72YR92UC;VYS=%!T<U);:ETI*BAI;D9R86UE6VE=+G)E+6-O;G-T"
"4'1S4EMJ72D@*PH@(\" @(\" @(\"AI;D9R86UE6VE=+FEM+6-O;G-T4'1S25MJ72DJ*&EN1G)A;6"
"5;:5TN:6TM8V]N<W10='-)6VI=*3L*(\" @(\" @(\"!I9B H=\" \\(&UY36EN*0H@(\" @(\" @"
"(\" @(\"!M>4UI;B ]('0[\"B @(\"!]\"B @(\"!235-?159-6VE=/7-Q<G0H;7E-:6XI.PH@(\""
" @9G)A;653=6T@*ST@;7E-:6X[\"GT**E)-4U]%5DT@/2!S<7)T*&9R86UE4W5M+W5?=VED=&@I+R"
"@J<$UA>\"D[      X    P    !@    @    $          4    (               !      "
"   !          #@   #     &    \"     0         !0    @               $       "
"  $          .    ,     8    (    !          %    \"     $    !     0        "
" 0  $ ,0    X    P    !@    @    $          4    (     0    $    !         ! "
"  0 V    #@   #     &    \"     0         !0    @    !     0    $         $  "
"! #     .    2     8    (    !          %    \"     $    4     0         0   "
" %    # @(\" @(\" @(\" @(\" @(\" @(\" @      X    P    !@    @    $          "
"4    (     0    $    !         !   0 P    #@   #     &    \"     0         !0"
"    @    !     0    $         $  ! #     .    V 8   8    (     @         %   "
" \"     $    !     0         %  0 %     $    $ 0  3F%M90                    !"
"$871A5'EP90               $1I;7,                     4F]W                    "
"  !#;VUP;&5X:71Y             $9R86UE                    0V]L                 "
"     !)<U-I9VYE9                %=O<F1,96YG=&@             1FEX4&]I;G138V%L:6"
"YG5'EP90!&<F%C=&EO;DQE;F=T:        %-L;W!E                    0FEA<P         "
"                 #@   &@    &    \"     $         !0    @    !     0    $    "
"     #@   #@    &    \"     0         !0    @    !    !P    $         $     <"
"   !I;D9R86UE  X   !H    !@    @    !          4    (     0    $    !        "
"  X    X    !@    @    $          4    (     0    <    !         !     '    8"
"W)E86Q?5  .    8     8    (     0         %    \"     $    !     0         . "
"   ,     8    (    !          %    \"     $    #     0         0  , ,2U$  X  "
" !X    !@    @    !          4    (     0    $    !          X   !(    !@    "
"@    $          4    (     0   !$    !         !     1    1%E.04U)0T%,3%E?4TE"
":140         #@   '     &    \"     $         !0    @    !     0    $        "
" #@   $     &    \"     0         !0    @    !    \"P    $         $     L   "
"!#3TU03$587UE%4P      #@   '     &    \"     $         !0    @    !     0    "
"$         #@   $     &    \"     0         !0    @    !    \"0    $         $"
"     D   !&4D%-15]915,         #@   &     &    \"     $         !0    @    ! "
"    0    $         #@   #     &    \"     0         !0    @    !     0    $  "
"       $  ! #$    .    8     8    (     0         %    \"     $    !     0   "
"      .    ,     8    (    !          %    \"     $    !     0         0  $ ,"
"     X   !@    !@    @    !          4    (     0    $    !          X    P  "
"  !@    @    $          4    (     0    $    !         !   0 X    #@   &     "
"&    \"     $         !0    @    !     0    $         #@   #     &    \"     "

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -