📄 mvitdecoding_punc.mdl
字号:
BlockType FrameConversion
OutFrame "Frame based"
}
Block {
BlockType Gain
Gain "1"
Multiplication "Element-wise(K.*u)"
ParameterDataTypeMode "Same as input"
ParameterDataType "sfix(16)"
ParameterScalingMode "Best Precision: Matrix-wise"
ParameterScaling "2^0"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Ground
}
Block {
BlockType Inport
Port "1"
UseBusObject off
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
LatchByDelayingOutsideSignal off
LatchByCopyingInsideSignal off
Interpolate on
}
Block {
BlockType Outport
Port "1"
UseBusObject off
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType RelationalOperator
Operator ">="
InputSameDT on
LogicOutDataTypeMode "Logical (see Configuration Parameters: Optimiza"
"tion)"
LogicDataType "uint(8)"
ZeroCross on
SampleTime "-1"
}
Block {
BlockType "S-Function"
FunctionName "system"
SFunctionModules "''"
PortCounts "[]"
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
PermitHierarchicalResolution "All"
TreatAsAtomicUnit off
SystemSampleTime "-1"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType ToWorkspace
VariableName "simulink_output"
MaxDataPoints "1000"
Decimation "1"
SampleTime "0"
FixptAsFi off
}
}
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 "mvitdecoding_punc"
Location [53, 484, 829, 878]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 212
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"
ReportName "simulink-default.rpt"
Block {
BlockType Reference
Name "AWGN\nChannel"
Ports [1, 1]
Position [627, 195, 693, 250]
Orientation "down"
NamePlacement "alternate"
SourceBlock "commchan3/AWGN\nChannel"
SourceType "AWGN Channel"
ShowPortLabels on
SystemSampleTime "-1"
FunctionWithSeparateData off
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
seed "67"
noiseMode "Signal to noise ratio (Eb/No)"
EbNodB "EbNo"
EsNodB "10"
SNRdB "10"
bitsPerSym "1"
Ps "1"
Tsym "3/4"
variance "1"
}
Block {
BlockType Reference
Name "BPSK\nModulator\nBaseband1"
Ports [1, 1]
Position [470, 96, 545, 144]
SourceBlock "commdigbbndpm3/BPSK\nModulator\nBaseband"
SourceType "BPSK Modulator Baseband"
ShowPortLabels on
SystemSampleTime "-1"
FunctionWithSeparateData off
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
Ph "0"
outDtype "double"
outWordLen "16"
outUDDataType "sfix(16)"
outFracLenMode "Best precision"
outFracLen "15"
}
Block {
BlockType Reference
Name "Bernoulli Random\nBinary Generator"
Ports [0, 1]
Position [25, 98, 105, 142]
DialogController "commDDGCreate"
DialogControllerArgs "DataTag0"
SourceBlock "commrandsrc2/Bernoulli Binary\nGenerator"
SourceType "Bernoulli Binary Generator"
ShowPortLabels on
SystemSampleTime "-1"
FunctionWithSeparateData off
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
P "0.5"
seed "435345"
Ts "1"
frameBased on
sampPerFrame "300"
orient off
outDataType "boolean"
}
Block {
BlockType Reference
Name "Convolutional \nEncoder"
Ports [1, 1]
Position [260, 95, 355, 145]
SourceBlock "commcnvcod2/Convolutional\nEncoder"
SourceType "Convolutional Encoder"
trellis "poly2trellis(7, [171 133])"
opMode "Continuous"
usePuncVector on
punctureVector "[1 1 0 1 1 0].'"
reset "Unused parameter value"
}
Block {
BlockType Display
Name "Display"
Ports [1]
Position [370, 191, 465, 259]
Decimation "1"
Lockdown off
}
Block {
BlockType Reference
Name "Error Rate Calculation"
Ports [2, 1]
Position [150, 199, 245, 246]
SourceBlock "commsink2/Error Rate\nCalculation"
SourceType "Error Rate Calculation"
N "96"
st_delay "0"
cp_mode "Entire frame"
subframe "[]"
PMode "Port"
WsName "ErrorVec"
RsMode2 off
stop on
numErr "maxNumErrs"
maxBits "maxNumBits"
}
Block {
BlockType SubSystem
Name "Soft Output\nDemodulator"
Ports [1, 1]
Position [480, 303, 545, 347]
Orientation "left"
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "Soft Output\nDemodulator"
Location [394, 762, 1130, 902]
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 [20, 43, 50, 57]
IconDisplay "Port number"
}
Block {
BlockType ComplexToRealImag
Name "Complex to\nReal-Imag"
Ports [1, 1]
Position [130, 27, 210, 73]
Output "Real"
}
Block {
BlockType Gain
Name "Gain"
Position [290, 35, 320, 65]
Gain "-1"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Reference
Name "Uniform\nEncoder"
Ports [1, 1]
Position [415, 29, 485, 71]
SourceBlock "dspquant2/Uniform\nEncoder"
SourceType "Uniform Encoder"
peak "2"
bits "nBits"
otype "Unsigned integer"
}
Block {
BlockType Outport
Name "Out1"
Position [610, 43, 640, 57]
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
SrcBlock "Uniform\nEncoder"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "Complex to\nReal-Imag"
SrcPort 1
DstBlock "Gain"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Complex to\nReal-Imag"
DstPort 1
}
Line {
SrcBlock "Gain"
SrcPort 1
DstBlock "Uniform\nEncoder"
DstPort 1
}
}
}
Block {
BlockType ToWorkspace
Name "To Workspace"
Position [285, 240, 345, 270]
VariableName "BER"
MaxDataPoints "1"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType Reference
Name "Viterbi Decoder"
Ports [1, 1]
Position [265, 299, 355, 351]
Orientation "left"
DialogController "commDDGCreate"
DialogControllerArgs "DataTag1"
SourceBlock "commcnvcod2/Viterbi Decoder"
SourceType "Viterbi Decoder"
trellis "poly2trellis(7, [171 133])"
isPunctured on
punctureVector "[1 1 0 1 1 0].'"
dectype "Soft Decision"
runSigValErrCheck off
nsdecb "nBits"
tbdepth "96"
erasures off
opmode "Continuous"
reset off
outDataType "boolean"
}
Line {
SrcBlock "Convolutional \nEncoder"
SrcPort 1
DstBlock "BPSK\nModulator\nBaseband1"
DstPort 1
}
Line {
SrcBlock "Bernoulli Random\nBinary Generator"
SrcPort 1
Points [0, 0; 15, 0]
Branch {
DstBlock "Convolutional \nEncoder"
DstPort 1
}
Branch {
Points [0, 90]
DstBlock "Error Rate Calculation"
DstPort 1
}
}
Line {
SrcBlock "Error Rate Calculation"
SrcPort 1
Points [15, 0]
Branch {
DstBlock "Display"
DstPort 1
}
Branch {
Points [0, 30]
DstBlock "To Workspace"
DstPort 1
}
}
Line {
SrcBlock "Viterbi Decoder"
SrcPort 1
Points [-135, 0; 0, -90]
DstBlock "Error Rate Calculation"
DstPort 2
}
Line {
SrcBlock "Soft Output\nDemodulator"
SrcPort 1
DstBlock "Viterbi Decoder"
DstPort 1
}
Line {
SrcBlock "BPSK\nModulator\nBaseband1"
SrcPort 1
Points [110, 0]
DstBlock "AWGN\nChannel"
DstPort 1
}
Line {
SrcBlock "AWGN\nChannel"
SrcPort 1
Points [0, 70]
DstBlock "Soft Output\nDemodulator"
DstPort 1
}
Annotation {
Name "Soft-Decision Viterbi Decoding with Puncturing"
Position [225, 43]
DropShadow on
UseDisplayTextAsClickCallback off
FontName "Arial"
FontSize 12
FontWeight "bold"
}
}
}
MatData {
NumRecords 2
DataRecord {
Tag DataTag1
Data " %)30 . < 8 ( 0 % "
"\" $ ! 0 . 0 8 ( ! % \" $ "
". 0 0 #@ %9I=&5R8FE$96-O9&5R "
}
DataRecord {
Tag DataTag0
Data " %)30 . > 8 ( 0 % "
"\" $ ! 0 . 2 8 ( ! % \" $ "
"2 0 0 $@ $)E<FYO=6QL:4)I;F%R>4=E;@ "
}
}
# Finite State Machines
#
# Stateflow Version 6.4 (R2006a) dated Apr 12 2006, 00:09:06
#
#
Stateflow {
machine {
id 1
name "mvitdecoding_punc"
created "15-Dec-2004 12:28:42"
isLibrary 0
firstTarget 2
sfVersion 64014000
}
target {
id 2
name "sfun"
description "Default Simulink S-Function Target."
machine 1
linkNode [1 0 0]
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -