📄 crc.mdl
字号:
Name "Constant"
Position [335, 125, 365, 155]
Value "0"
OutDataType "sfix(16)"
OutScaling "2^0"
}
Block {
BlockType Reference
Name "Error Rate\nCalculation"
Ports [2, 1]
Position [80, 27, 155, 78]
SourceBlock "commsink2/Error Rate\nCalculation"
SourceType "Error Rate Calculation"
N "0"
st_delay "0"
cp_mode "Entire frame"
subframe "[]"
PMode "Port"
WsName "ErrorVec"
RsMode2 off
stop off
numErr "100"
maxBits "1e6"
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator"
Position [395, 47, 425, 78]
Operator ">"
InputSameDT off
LogicOutDataTypeMode "boolean"
OutDataTypeStr "boolean"
}
Block {
BlockType Selector
Name "Selector"
Ports [1, 1]
Position [190, 36, 230, 74]
InputPortWidth "3"
IndexOptions "Index vector (dialog)"
Indices "[2]"
OutputSizes "1"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [295, 45, 315, 65]
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
OutDataType "sfix(16)"
OutScaling "2^0"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType UnitDelay
Name "Unit Delay"
Position [255, 108, 290, 142]
}
Block {
BlockType Outport
Name "Frame Quality"
Position [485, 58, 515, 72]
IconDisplay "Port number"
}
Line {
SrcBlock "tx"
SrcPort 1
DstBlock "Error Rate\nCalculation"
DstPort 1
}
Line {
SrcBlock "rx"
SrcPort 1
DstBlock "Error Rate\nCalculation"
DstPort 2
}
Line {
SrcBlock "Selector"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "Sum"
DstPort 1
}
Branch {
DstBlock "Unit Delay"
DstPort 1
}
}
Line {
SrcBlock "Error Rate\nCalculation"
SrcPort 1
DstBlock "Selector"
DstPort 1
}
Line {
SrcBlock "Unit Delay"
SrcPort 1
Points [10, 0]
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Relational\nOperator"
DstPort 1
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [5, 0; 0, -70]
DstBlock "Relational\nOperator"
DstPort 2
}
Line {
SrcBlock "Relational\nOperator"
SrcPort 1
DstBlock "Frame Quality"
DstPort 1
}
}
}
Block {
BlockType Reference
Name "CRC-N Generator"
Ports [1, 1]
Position [130, 35, 220, 85]
SourceBlock "commcrc2/CRC-N Generator"
SourceType "CRC-N Generator"
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"
crcMethod "CRC-16"
iniStates "[0]"
numChecksums "1"
}
Block {
BlockType Reference
Name "CRC-N Syndrome\nDetector"
Ports [1, 2]
Position [175, 182, 265, 233]
SourceBlock "commcrc2/CRC-N Syndrome\nDetector"
SourceType "CRC-N Syndrome Detector"
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"
crcMethod "CRC-16"
iniStates "[0]"
numChecksums "1"
}
Block {
BlockType Reference
Name "Cumulative\nSum"
Ports [1, 1]
Position [55, 417, 135, 453]
DialogController "dspDDGCreate"
DialogControllerArgs "DataTag1"
SourceBlock "dspmathops/Cumulative\nSum"
SourceType "Cumulative Sum"
dim "Channels (running sum)"
reset_popup "None"
accumMode "Same as input"
accumWordLength "32"
accumFracLength "30"
outputMode "Same as accumulator"
outputWordLength "16"
outputFracLength "15"
roundingMode "Floor"
overflowMode off
LockScale off
}
Block {
BlockType DataTypeConversion
Name "Data Type Conversion"
Position [385, 238, 460, 272]
OutDataTypeMode "double"
OutDataType "sfix(16)"
OutScaling "2^0"
OutDataTypeStr "double"
RndMeth "Floor"
SaturateOnIntegerOverflow off
}
Block {
BlockType Display
Name "Display"
Ports [1]
Position [235, 420, 325, 450]
Decimation "1"
Lockdown off
}
Block {
BlockType Reference
Name "Pad"
Ports [1, 1]
Position [265, 40, 340, 80]
SourceBlock "dspsigops/Pad"
SourceType "Pad"
padAlong "Columns"
dimsToPad "1"
valSrc "Specify via dialog"
padVal "0"
spec "Output size"
padNumOutRowsSpecMethod "User-specified"
numOutRows "FrameLength"
padNumOutColsSpecMethod "User-specified"
numOutCols "1"
isVarDimsMode off
padBeginning "0"
padEnd "0"
outSizeMode "User-specified"
outSize "1"
padSigAt "End"
trunc_flag "None"
outputMode "Same as input"
outputWordLength "0"
outputFracLength "0"
accumMode "Same as input"
accumWordLength "0"
accumFracLength "0"
roundingMode "Floor"
overflowMode off
LockScale off
truncOrWrapMode "Truncate"
wrap_flag "None"
}
Block {
BlockType Reference
Name "Pad1"
Ports [1, 1]
Position [35, 190, 110, 230]
SourceBlock "dspsigops/Pad"
SourceType "Pad"
padAlong "Columns"
dimsToPad "1"
valSrc "Specify via dialog"
padVal "0"
spec "Output size"
padNumOutRowsSpecMethod "User-specified"
numOutRows "ProtectedDataWithCRC"
padNumOutColsSpecMethod "User-specified"
numOutCols "1"
isVarDimsMode off
padBeginning "0"
padEnd "0"
outSizeMode "User-specified"
outSize "1"
padSigAt "End"
trunc_flag "None"
outputMode "Same as input"
outputWordLength "0"
outputFracLength "0"
accumMode "Same as input"
accumWordLength "0"
accumFracLength "0"
roundingMode "Floor"
overflowMode off
LockScale off
truncOrWrapMode "Truncate"
wrap_flag "None"
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator"
Position [310, 237, 340, 268]
Operator "=="
InputSameDT off
LogicOutDataTypeMode "boolean"
OutDataTypeStr "boolean"
}
Block {
BlockType Terminator
Name "Terminator"
Position [360, 195, 380, 215]
}
Block {
BlockType ToWorkspace
Name "To Workspace"
Position [240, 493, 360, 527]
VariableName "MissedFrameNumber"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Line {
SrcBlock "Bernoulli Binary\nGenerator"
SrcPort 1
DstBlock "CRC-N Generator"
DstPort 1
}
Line {
SrcBlock "CRC-N Generator"
SrcPort 1
Points [15, 0]
Branch {
DstBlock "Pad"
DstPort 1
}
Branch {
Points [0, 80; -235, 0; 0, 175]
DstBlock "Bit Comparison"
DstPort 1
}
}
Line {
SrcBlock "Pad"
SrcPort 1
DstBlock "Binary Symmetric\nChannel"
DstPort 1
}
Line {
SrcBlock "Pad1"
SrcPort 1
Points [25, 0]
Branch {
DstBlock "CRC-N Syndrome\nDetector"
DstPort 1
}
Branch {
Points [0, 70; -70, 0]
DstBlock "Bit Comparison"
DstPort 2
}
}
Line {
SrcBlock "Binary Symmetric\nChannel"
SrcPort 1
Points [0, 115; -455, 0]
DstBlock "Pad1"
DstPort 1
}
Line {
SrcBlock "Bit Comparison"
SrcPort 1
Points [90, 0]
DstBlock "Relational\nOperator"
DstPort 2
}
Line {
SrcBlock "CRC-N Syndrome\nDetector"
SrcPort 1
Points [10, 0; 0, 50]
DstBlock "Relational\nOperator"
DstPort 1
}
Line {
SrcBlock "Relational\nOperator"
SrcPort 1
DstBlock "Data Type Conversion"
DstPort 1
}
Line {
SrcBlock "Data Type Conversion"
SrcPort 1
Points [15, 0; 0, 150; -440, 0]
DstBlock "Cumulative\nSum"
DstPort 1
}
Line {
SrcBlock "Cumulative\nSum"
SrcPort 1
Points [40, 0]
Branch {
DstBlock "Display"
DstPort 1
}
Branch {
Points [0, 75]
DstBlock "To Workspace"
DstPort 1
}
}
Line {
SrcBlock "CRC-N Syndrome\nDetector"
SrcPort 2
Points [70, 0; 0, -15]
DstBlock "Terminator"
DstPort 1
}
}
}
MatData {
NumRecords 2
DataRecord {
Tag DataTag1
Data " %)30 . < 8 ( 0 % \" $ ! 0 . 0 8 ( ! % \" $ - 0 0 #0 $-U;75L871I=F53=6T "
}
DataRecord {
Tag DataTag0
Data " %)30 . > 8 ( 0 % \" $ ! 0 . 2 8 ( ! % \" $ 2 0 0 $@ $)E<FYO=6QL:4)I;F%R>4=E;@ "
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -