Model { Name "viterunb" Version 4.00 SampleTimeColors on LibraryLinkDisplay "none" WideLines off ShowLineDimensions off ShowPortDataTypes off RecordCoverage off CovPath "/" CovSaveName "covdata" CovNameIncrementing off CovHtmlReporting on BlockNameDataTip off BlockParametersDataTip on BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off PreLoadFcn "ungerboe;" CloseFcn "bdclose('ungerboe')" Created "Thu Sep 03 22:46:52 1998" Creator "mikem" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "ysong" ModifiedDateFormat "%" LastModifiedDate "Wed Aug 23 12:03:22 2000" ModelVersionFormat "1.%" ConfigurationManager "none" SimParamPage "Solver" StartTime "0.0" StopTime "999999" SolverMode "SingleTasking" Solver "VariableStepDiscrete" RelTol "1e-3" AbsTol "1e-6" Refine "1" MaxStep "auto" MinStep "auto" MaxNumMinSteps "-1" InitialStep "auto" FixedStep "auto" MaxOrder 5 OutputOption "RefineOutputTimes" OutputTimes "[]" LoadExternalInput off ExternalInput "[t, u]" SaveTime off TimeSaveName "tout" SaveState off StateSaveName "xout" SaveOutput off OutputSaveName "yout" LoadInitialState off InitialState "xInitial" SaveFinalState off FinalStateName "xFinal" SaveFormat "Array" LimitDataPoints off MaxDataPoints "1000" Decimation "1" AlgebraicLoopMsg "warning" MinStepSizeMsg "warning" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" InheritedTsInSrcMsg "warning" SingleTaskRateTransMsg "none" MultiTaskRateTransMsg "error" IntegerOverflowMsg "none" CheckForMatrixSingularity "none" UnnecessaryDatatypeConvMsg "none" Int32ToFloatConvMsg "warning" SignalLabelMismatchMsg "none" LinearizationMsg "none" VectorMatrixConversionMsg "none" SfunCompatibilityCheckMsg "none" BlockPriorityViolationMsg "warning" ArrayBoundsChecking "none" ConsistencyChecking "none" ZeroCross on Profile off SimulationMode "normal" RTWSystemTargetFile "grt.tlc" RTWInlineParameters off RTWRetainRTWFile off RTWTemplateMakefile "grt_default_tmf" RTWMakeCommand "make_rtw" RTWGenerateCodeOnly off TLCProfiler off TLCDebug off TLCCoverage off AccelSystemTargetFile "accel.tlc" AccelTemplateMakefile "accel_default_tmf" AccelMakeCommand "make_rtw" ExtModeMexFile "ext_comm" ExtModeBatchMode off ExtModeTrigType "manual" ExtModeTrigMode "oneshot" 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 off ExtModeLogAll on OptimizeBlockIOStorage on BufferReuse on ParameterPooling on BlockReductionOpt off BooleanDataType off 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 "viterunb" Location [200, 90, 974, 531] 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 Reference Name "AWGN\nchannel" Ports [1, 1] Position [360, 163, 440, 207] ShowName off SourceBlock "commchan/AWGN\nchannel" SourceType "AWGN Channel" seed "123456" noiseMode "Variance from mask" EsNodB "10" SNRdB "10" Ps "1" Tsym "1" variance "0.02" FrameBased off nChans "1" } Block { BlockType Reference Name "Binary vector\nconvol decode2" Ports [2, 2] Position [370, 298, 450, 342] ShowName off SourceBlock "comcdcon/Binary vector\nconvolution decode" SourceType "Vector I/O convolution decode" gen "'ungerboe'" leng "3" tran_prob "0" plot_flag "18" thd ".5" } Block { BlockType Reference Name "Binary vector\nconvol encode" Ports [2, 1] Position [300, 73, 380, 117] ShowName off SourceBlock "comcdcon/Binary vector\nconvolution encode" SourceType "Vector I/O convolution encode" tf "'ungerboe'" thd ".5" } Block { BlockType Demux Name "Demux" Ports [1, 2] Position [285, 285, 325, 320] ForegroundColor "blue" ShowName off Outputs "[1 2]" BusSelectionMode off } Block { BlockType Demux Name "Demux1" Ports [1, 2] Position [235, 60, 275, 95] ShowName off Outputs "2" BusSelectionMode off } Block { BlockType Reference Name "Error rate1" Ports [2] Position [675, 173, 755, 217] ShowName off SourceBlock "com_sour/Error rate" SourceType "Symbol/bit error counter" K "2" num_lin "20" TDelay "4" Sample "1" } Block { BlockType Reference Name "Integer Delay" Ports [1, 1] Position [385, 247, 430, 283] ShowName off SourceBlock "dspbdsp2/Integer Delay" SourceType "Integer Delay" delay "3" ic "0" frame off df on numChans "1" } Block { BlockType Reference Name "Integer scalar\nto vector" Ports [1, 1] Position [135, 58, 215, 102] ShowName off SourceBlock "com_util/Integer scalar\nto vector" SourceType "Decimal to base M vector" len "2" p "2" } Block { BlockType Reference Name "Integer scalar\nto vector1" Ports [1, 1] Position [185, 283, 265, 327] ShowName off SourceBlock "com_util/Integer scalar\nto vector" SourceType "Decimal to base M vector" len "3" p "2" } Block { BlockType Reference Name "Integer vector\nto scalar" Ports [1, 1] Position [540, 283, 620, 327] ShowName off SourceBlock "com_util/Integer vector\nto scalar" SourceType "Base M vector to decimal integer" p "2" } Block { BlockType Reference Name "Integer vector\nto scalar1" Ports [1, 1] Position [475, 68, 555, 112] ShowName off SourceBlock "com_util/Integer vector\nto scalar" SourceType "Base M vector to decimal integer" p "2" } Block { BlockType Reference Name "MPSK demod\nbaseband" Ports [1, 1] Position [510, 163, 590, 207] ShowName off SourceBlock "commdigbbnd/MPSK demod\nbaseband" SourceType "Baseband MPSK demodulation" M "8" td "1" Ph "0" ts "0.01" } Block { BlockType Reference Name "MPSK mod\nbaseband" Ports [1, 1] Position [205, 163, 285, 207] ShowName off SourceBlock "commdigbbnd/MPSK mod\nbaseband" SourceType "Baseband MPSK modulation" M "8" td "1" Ph "0" } Block { BlockType Mux Name "Mux" Ports [2, 1] Position [415, 71, 450, 104] ShowName off Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux1" Ports [2, 1] Position [485, 286, 520, 319] ForegroundColor "blue" ShowName off Inputs "2" DisplayOption "none" } Block { BlockType Reference Name "Sampled read with\nsynchronized pulse" Ports [0, 2] Position [15, 68, 95, 112] ShowName off SourceBlock "com_sour/Sampled read with\nsynchronized pulse" SourceType "Read from workspace" var "randint(300,1,2^2)" td "1" cyc "1" ini "0" } Block { BlockType Terminator Name "Terminator_1" Position [465, 325, 475, 335] ForegroundColor "blue" ShowName off } Block { BlockType SubSystem Name "information" Ports [] Position [695, 235, 740, 276] ForegroundColor "magenta" ShowName off ShowPortLabels on TreatAsAtomicUnit off RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" MaskDisplay "disp('?')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" System { Name "information" Location [362, 143, 976, 301] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Annotation { Position [312, 37] Text "This example simulates an 8-PSK Trellis Cod" "e Modulation. The first row of the the block diagram is\nthe transmission par" "t. The second row of the block diagram is the modulation/demodulation and \n" "channel part. The third row is the signal recovery part.\n" } Annotation { Position [237, 97] Text "The convolution code structure is given in" " the block diagram \"ungerboe\"." } Annotation { Position [202, 132] Text "For fast simulation, set the Trellis figure" " plot length to be 0." } } } Block { BlockType SubSystem Name "transfer function" Ports [] Position [680, 285, 760, 332] ForegroundColor "magenta" ShowName off OpenFcn "ungerboe;tf = sim2tran('ungerboe');N_con_demo=t" "f(1,size(tf,2));K_con_demo=tf(2,size(tf,2));" ShowPortLabels on TreatAsAtomicUnit off RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" MaskDisplay "disp('Generating\\ntran_func')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" System { Name "transfer function" Location [362, 143, 782, 289] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on } } Line { SrcBlock "Sampled read with\nsynchronized pulse" SrcPort 1 Points [10, 0] Branch { Points [0, -35; 540, 0; 0, 140] DstBlock "Error rate1" DstPort 1 } Branch { DstBlock "Integer scalar\nto vector" DstPort 1 } } Line { SrcBlock "Mux1" SrcPort 1 DstBlock "Integer vector\nto scalar" DstPort 1 } Line { SrcBlock "Sampled read with\nsynchronized pulse" SrcPort 2 Points [10, 0; 0, 25] Branch { Points [175, 0] DstBlock "Binary vector\nconvol encode" DstPort 2 } Branch { Points [0, 220; 235, 0; 0, -15] DstBlock "Binary vector\nconvol decode2" DstPort 2 } } Line { SrcBlock "Integer Delay" SrcPort 1 Points [35, 0] DstBlock "Mux1" DstPort 1 } Line { SrcBlock "Demux" SrcPort 1 Points [15, 0; 0, -30] DstBlock "Integer Delay" DstPort 1 } Line { SrcBlock "Binary vector\nconvol decode2" SrcPort 1 DstBlock "Mux1" DstPort 2 } Line { SrcBlock "Demux" SrcPort 2 DstBlock "Binary vector\nconvol decode2" DstPort 1 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Integer vector\nto scalar1" DstPort 1 } Line { SrcBlock "Demux1" SrcPort 1 Points [105, 0; 0, 10] DstBlock "Mux" DstPort 1 } Line { SrcBlock "Binary vector\nconvol encode" SrcPort 1 DstBlock "Mux" DstPort 2 } Line { SrcBlock "Demux1" SrcPort 2 DstBlock "Binary vector\nconvol encode" DstPort 1 } Line { SrcBlock "Integer scalar\nto vector" SrcPort 1 DstBlock "Demux1" DstPort 1 } Line { SrcBlock "Integer scalar\nto vector1" SrcPort 1 DstBlock "Demux" DstPort 1 } Line { SrcBlock "Integer vector\nto scalar" SrcPort 1 Points [25, 0; 0, -100] DstBlock "Error rate1" DstPort 2 } Line { SrcBlock "Binary vector\nconvol decode2" SrcPort 2 DstBlock "Terminator_1" DstPort 1 } Line { SrcBlock "AWGN\nchannel" SrcPort 1 DstBlock "MPSK demod\nbaseband" DstPort 1 } Line { SrcBlock "MPSK mod\nbaseband" SrcPort 1 DstBlock "AWGN\nchannel" DstPort 1 } Line { SrcBlock "MPSK demod\nbaseband" SrcPort 1 Points [10, 0; 0, 40; -435, 0] DstBlock "Integer scalar\nto vector1" DstPort 1 } Line { SrcBlock "Integer vector\nto scalar1" SrcPort 1 Points [10, 0; 0, 45; -400, 0; 0, 50] DstBlock "MPSK mod\nbaseband" DstPort 1 } Annotation { Position [377, 17] ForegroundColor "red" Text "Ungerboeck Trellis Code Modulation" FontSize 12 FontWeight "bold" } Annotation { Position [380, 417] Text "Warning: This model is obsolete and may be remo" "ved in the future." FontName "Arial" FontSize 12 } } }