?? turbo_code_punc.mdl
字號:
SystemSampleTime "-1"
FunctionWithSeparateData "off"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
N "Len"
seed "Seed"
}
Block {
BlockType Terminator
Name "Terminator1"
Position [460, 200, 480, 220]
}
Block {
BlockType Terminator
Name "Terminator2"
Position [70, 225, 90, 245]
Orientation "left"
NamePlacement "alternate"
}
Block {
BlockType Outport
Name "Out1"
Position [25, 43, 55, 57]
Orientation "left"
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
SrcBlock "APP Decoder1"
SrcPort 1
Points [0, 0]
DstBlock "Random\nDeinterleaver"
DstPort 1
}
Line {
SrcBlock "APP Decoder"
SrcPort 2
Points [0, 20]
DstBlock "Terminator1"
DstPort 1
}
Line {
SrcBlock "APP Decoder1"
SrcPort 2
Points [0, -5]
DstBlock "Terminator2"
DstPort 1
}
Line {
SrcBlock "Random\nDeinterleaver"
SrcPort 1
Points [0, -15; 30, 0]
Branch {
DstBlock "Delay"
DstPort 1
}
Branch {
DstBlock "Hard Decision1"
DstPort 1
}
}
Line {
SrcBlock "Random\nInterleaver3"
SrcPort 1
DstBlock "APP Decoder1"
DstPort 1
}
Line {
SrcBlock "APP Decoder"
SrcPort 1
Points [0, 10]
DstBlock "Random\nInterleaver3"
DstPort 1
}
Line {
SrcBlock "Frame Reset"
SrcPort 1
DstBlock "APP Decoder"
DstPort 1
}
Line {
SrcBlock "Delay"
SrcPort 1
Points [0, 0]
DstBlock "Frame Reset"
DstPort 1
}
Line {
SrcBlock "Discrete Pulse\nGenerator"
SrcPort 1
Points [10, 0; 0, -20]
DstBlock "Frame Reset"
DstPort 2
}
Line {
SrcBlock "Hard Decision1"
SrcPort 1
Points [0, 0]
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
Points [5, 0]
DstBlock "APP Decoder"
DstPort 2
}
Line {
SrcBlock "In2"
SrcPort 1
Points [0, 0]
DstBlock "APP Decoder1"
DstPort 2
}
}
}
Block {
BlockType SubSystem
Name "turbo_encoder"
Ports [1, 1]
Position [355, 130, 430, 190]
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "turbo_encoder"
Location [20, 160, 1011, 566]
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 [25, 48, 55, 62]
IconDisplay "Port number"
}
Block {
BlockType Reference
Name "Convolutional\nEncoder"
Ports [1, 1]
Position [220, 30, 340, 90]
SourceBlock "commcnvcod2/Convolutional\nEncoder"
SourceType "Convolutional Encoder"
trellis "trellis"
opMode "Continuous"
usePuncVector "off"
punctureVector "[ 1 1 0 1 0 1]'"
reset "Unused parameter value"
}
Block {
BlockType Reference
Name "Convolutional\nEncoder1"
Ports [1, 1]
Position [225, 120, 345, 180]
SourceBlock "commcnvcod2/Convolutional\nEncoder"
SourceType "Convolutional Encoder"
trellis "trellis"
opMode "Truncated (reset every frame)"
usePuncVector "off"
punctureVector "[ 1 1 0 1 0 1]'"
reset "Unused parameter value"
}
Block {
BlockType Reference
Name "Deinterlacer"
Ports [1, 2]
Position [375, 43, 455, 92]
SourceBlock "commsequence2/Deinterlacer"
SourceType "Deinterlacer"
}
Block {
BlockType Reference
Name "Deinterlacer1"
Ports [1, 2]
Position [375, 123, 455, 172]
SourceBlock "commsequence2/Deinterlacer"
SourceType "Deinterlacer"
}
Block {
BlockType Reference
Name "Matrix\nConcatenate"
Ports [3, 1]
Position [535, 61, 585, 119]
SourceBlock "simulink_obsolete/Matrix\nConcatenation"
SourceType "Matrix Concatenation"
numInports "3"
catMethod "Vertical"
}
Block {
BlockType Reference
Name "Puncture\nto make 1/2 code rate"
Ports [1, 1]
Position [735, 68, 815, 112]
SourceBlock "commsequence2/Puncture"
SourceType "Puncture"
punctureVector "[1 1 0 1 0 1].'"
}
Block {
BlockType Reference
Name "Random\nInterleaver"
Ports [1, 1]
Position [125, 123, 205, 177]
SourceBlock "commblkintrlv2/Random\nInterleaver"
SourceType "Random Interleaver"
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"
N "Len"
seed "Seed"
}
Block {
BlockType Terminator
Name "Terminator3"
Position [480, 125, 500, 145]
}
Block {
BlockType Reference
Name "Unipolar to\nBipolar\nConverter"
Ports [1, 1]
Position [850, 62, 885, 118]
NamePlacement "alternate"
SourceBlock "commutil2/Unipolar to\nBipolar\nConverter"
SourceType "Unipolar to Bipolar Converter"
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"
M "2"
polarity "Positive"
dataType "double"
}
Block {
BlockType Reference
Name "read from \ncolumn to row"
Ports [1, 1]
Position [625, 63, 705, 117]
SourceBlock "commblkintrlv2/Matrix\nInterleaver"
SourceType "Matrix Interleaver"
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"
Nrows "3"
Ncols "Len"
}
Block {
BlockType Outport
Name "encoded"
Position [940, 83, 970, 97]
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
SrcBlock "In1"
SrcPort 1
Points [0, 0; 15, 0]
Branch {
Points [130, 0]
DstBlock "Convolutional\nEncoder"
DstPort 1
}
Branch {
Labels [2, 0]
Points [0, 95]
DstBlock "Random\nInterleaver"
DstPort 1
}
}
Line {
SrcBlock "Unipolar to\nBipolar\nConverter"
SrcPort 1
DstBlock "encoded"
DstPort 1
}
Line {
SrcBlock "Random\nInterleaver"
SrcPort 1
DstBlock "Convolutional\nEncoder1"
DstPort 1
}
Line {
SrcBlock "Convolutional\nEncoder"
SrcPort 1
Points [15, 0]
DstBlock "Deinterlacer"
DstPort 1
}
Line {
SrcBlock "Convolutional\nEncoder1"
SrcPort 1
Points [0, 0]
DstBlock "Deinterlacer1"
DstPort 1
}
Line {
SrcBlock "Deinterlacer1"
SrcPort 1
Points [0, 0]
DstBlock "Terminator3"
DstPort 1
}
Line {
SrcBlock "Deinterlacer"
SrcPort 1
Points [30, 0; 0, 15]
DstBlock "Matrix\nConcatenate"
DstPort 1
}
Line {
SrcBlock "Deinterlacer"
SrcPort 2
Points [15, 0; 0, 10]
DstBlock "Matrix\nConcatenate"
DstPort 2
}
Line {
SrcBlock "Deinterlacer1"
SrcPort 2
Points [60, 0]
DstBlock "Matrix\nConcatenate"
DstPort 3
}
Line {
SrcBlock "read from \ncolumn to row"
SrcPort 1
DstBlock "Puncture\nto make 1/2 code rate"
DstPort 1
}
Line {
SrcBlock "Matrix\nConcatenate"
SrcPort 1
DstBlock "read from \ncolumn to row"
DstPort 1
}
Line {
SrcBlock "Puncture\nto make 1/2 code rate"
SrcPort 1
DstBlock "Unipolar to\nBipolar\nConverter"
DstPort 1
}
}
}
Line {
SrcBlock "Multiple Error Rate Calculation1"
SrcPort 1
DstBlock "Display"
DstPort 1
}
Line {
SrcBlock "turbo_decoder"
SrcPort 1
Points [-115, 0; 0, -150]
DstBlock "Multiple Error Rate Calculation1"
DstPort 2
}
Line {
Labels [0, 0]
SrcBlock "Bernoulli Binary\nGenerator"
SrcPort 1
Points [45, 0]
Branch {
DstBlock "turbo_encoder"
DstPort 1
}
Branch {
Points [0, 145]
DstBlock "Multiple Error Rate Calculation1"
DstPort 1
}
}
Line {
SrcBlock "receiver_front_end"
SrcPort 1
DstBlock "turbo_decoder"
DstPort 1
}
Line {
SrcBlock "receiver_front_end"
SrcPort 2
DstBlock "turbo_decoder"
DstPort 2
}
Line {
SrcBlock "turbo_encoder"
SrcPort 1
Points [125, 0]
DstBlock "AWGN\nChannel"
DstPort 1
}
Line {
SrcBlock "AWGN\nChannel"
SrcPort 1
Points [0, 130]
DstBlock "receiver_front_end"
DstPort 1
}
Annotation {
Position [39, 50]
UseDisplayTextAsClickCallback off
}
Annotation {
Name "A punctured turbo code simulation\nIn Soo Ahn\n"
"Dept. of Electrical and Computer Engineering\nBradley University\nPeoria, IL "
"61625"
Position [372, 68]
ForegroundColor "blue"
DropShadow on
UseDisplayTextAsClickCallback off
FontSize 14
}
Annotation {
Name "Generator polynomials\nG1 = [1 1 1 1 1]\nG2 = ["
"1 0 0 0 1]\nwith puncturing"
Position [691, 69]
UseDisplayTextAsClickCallback off
FontSize 16
}
}
}
MatData {
NumRecords 2
DataRecord {
Tag DataTag1
Data " %)30 . 8 8 ( 0 % "
"\" $ ! 0 . , 8 ( ! % \" $ "
"$ 0 0 0 365A;@"
}
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.5 (R2006b) dated Aug 8 2006, 21:09:58
#
#
Stateflow {
machine {
id 1
name "turbo_code_punc"
created "22-Nov-2006 17:46:50"
isLibrary 0
firstTarget 2
sfVersion 65014000
}
target {
id 2
name "sfun"
description "Default Simulink S-Function Target."
machine 1
linkNode [1 0 0]
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -