##// END OF EJS Templates
Sources reorganized...
paul -
r126:5ae10b1b8078 VHDLib206
parent child
Show More
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
@@ -0,0 +1,11
1 {
2 "folders":
3 [
4 {
5 "path": "/opt/DEV_PLE/FSW-qt/bin"
6 },
7 {
8 "path": "spectralmatrix"
9 }
10 ]
11 }
@@ -0,0 +1,282
1 {
2 "auto_complete":
3 {
4 "selected_items":
5 [
6 [
7 "data",
8 "dataInIntReorganized"
9 ],
10 [
11 "index",
12 "indexTransformDecimationInFrequency"
13 ],
14 [
15 "in",
16 "indexTransformDecimationInFrequency"
17 ],
18 [
19 "dft",
20 "dft_val"
21 ],
22 [
23 "butter",
24 "butterflyProcessor"
25 ],
26 [
27 "chec",
28 "checkbox_sy_lfr_bw"
29 ],
30 [
31 "send",
32 "sendLoadCommonPar"
33 ],
34 [
35 "groupbo",
36 "groupbox_tc_lfr_load_common_par"
37 ],
38 [
39 "l",
40 "layout_tc"
41 ],
42 [
43 "button",
44 "button_tc_lfr_load_common_par"
45 ],
46 [
47 "a",
48 "addWidget"
49 ],
50 [
51 "group",
52 "groupbox_tc_lfr_load_common_par"
53 ],
54 [
55 "c",
56 "common"
57 ],
58 [
59 "laben",
60 "label_UNKNOWN_nb"
61 ],
62 [
63 "UN",
64 "UNKNOWN_nb"
65 ]
66 ]
67 },
68 "buffers":
69 [
70 {
71 "file": "spectralmatrix/readmatrix.py",
72 "settings":
73 {
74 "buffer_size": 1115,
75 "line_ending": "Unix"
76 }
77 }
78 ],
79 "build_system": "",
80 "command_palette":
81 {
82 "height": 392.0,
83 "selected_items":
84 [
85 ],
86 "width": 392.0
87 },
88 "console":
89 {
90 "height": 0.0
91 },
92 "distraction_free":
93 {
94 "menu_visible": true,
95 "show_minimap": false,
96 "show_open_files": false,
97 "show_tabs": false,
98 "side_bar_visible": false,
99 "status_bar_visible": false
100 },
101 "file_history":
102 [
103 "/opt/DEV_PLE/FSW-qt/bin/spectralmatrix/asm_f0_test_20140403_case1.txt",
104 "/opt/DEV_PLE/FSW-qt/bin/spectralmatrix/asm_f0_test_paul_1.txt",
105 "/opt/DEV_PLE/FSW-qt/bin/load_spectral_matrix.py",
106 "/opt/DEV_PLE/FSW-qt/bin/floatconversion.py",
107 "/opt/VALIDATION/waveform_analysis/main_sbm2.py",
108 "/opt/VALIDATION/waveform_analysis/main_cwf_f1.py",
109 "/opt/VALIDATION/waveform_analysis/main_cwf_f3.py",
110 "/opt/VALIDATION/waveform_analysis/main_cwf_f2.py",
111 "/opt/VALIDATION/waveform_analysis/main_128.py",
112 "/opt/VALIDATION/waveform_analysis/main_64.py",
113 "/opt/LFR_EMULATOR/SRC/testing_FFT.py",
114 "/opt/LFR_EMULATOR/main.py",
115 "/opt/LFR_EMULATOR/fft_8_decimation_in_frequency.py",
116 "/opt/LFR_EMULATOR/index_transform_decimation_in_frequency.py",
117 "/opt/LFR_EMULATOR/efficient_complex_multiplier.py",
118 "/opt/LFR_EMULATOR/butterfly_processor.py",
119 "/opt/LFR_EMULATOR/twiddle_factors.py",
120 "/opt/LFR_EMULATOR/SRC/filters.py",
121 "/opt/LFR_EMULATOR/SRC/test_cases1.py",
122 "/opt/VALIDATION/lfrverif/LFR_SVS/SVS-0001/Step02/UploadDumpMemory.py",
123 "/opt/VALIDATION/lfrverif/LFR_SVS/SVS-0001/Step02/UploadDumpMemory (copy).py",
124 "/opt/VALIDATION/lfrverif/LFR_SVS/SVS-0001/Step01/grspw_registers.py",
125 "/opt/VALIDATION/lfrverif/LFR_SVS/SVS-0002/tc_during_matrix_transmission.py",
126 "/opt/VALIDATION/lfrverif/common/actions_tc_lfr_launcher.py",
127 "/opt/VALIDATION/lfrverif/common/test_monitor.py",
128 "/opt/VALIDATION/validation.sublime-workspace",
129 "/opt/VALIDATION/validation.sublime-project",
130 "/opt/PYTHON/lfrverif/test1/test1main.py",
131 "/opt/PYTHON/lfrverif/test1/test1launcher.py",
132 "/opt/PYTHON/lfrverif/common/crcforlfr.py",
133 "/opt/PYTHON/lfrverif/common/tcparams.py",
134 "/opt/PYTHON/lfrverif/test1/testgui.py",
135 "/opt/PYTHON/lfrverif/test1/tcmonitor.py",
136 "/opt/PYTHON/lfrverif/test1/lppmoncfg.py",
137 "/opt/PYTHON/lfrverif/test1/wfdisplay.py",
138 "/opt/PYTHON/lfrverif/test1/lppmonplot.py",
139 "/opt/PYTHON/lfrverif/test1/tmmonitor.py"
140 ],
141 "find":
142 {
143 "height": 34.0
144 },
145 "find_in_files":
146 {
147 "height": 0.0,
148 "where_history":
149 [
150 "/opt/VALIDATION/lfrverif",
151 "/opt/VALIDATION/lfrverif/LFR_SVS"
152 ]
153 },
154 "find_state":
155 {
156 "case_sensitive": false,
157 "find_history":
158 [
159 "snapshots",
160 "def displayInfoSendTc",
161 "dump",
162 "tc_lfr_dump_par",
163 "processpac",
164 "WriteSPWDelay",
165 "sendPacket",
166 "sendLoadCommonPar"
167 ],
168 "highlight": true,
169 "in_selection": false,
170 "preserve_case": false,
171 "regex": false,
172 "replace_history":
173 [
174 ],
175 "reverse": false,
176 "show_context": true,
177 "use_buffer2": true,
178 "whole_word": false,
179 "wrap": true
180 },
181 "groups":
182 [
183 {
184 "selected": 0,
185 "sheets":
186 [
187 {
188 "buffer": 0,
189 "file": "spectralmatrix/readmatrix.py",
190 "settings":
191 {
192 "buffer_size": 1115,
193 "regions":
194 {
195 },
196 "selection":
197 [
198 [
199 208,
200 208
201 ]
202 ],
203 "settings":
204 {
205 "syntax": "Packages/Python/Python.tmLanguage"
206 },
207 "translation.x": 0.0,
208 "translation.y": 0.0,
209 "zoom_level": 1.0
210 },
211 "type": "text"
212 }
213 ]
214 }
215 ],
216 "incremental_find":
217 {
218 "height": 0.0
219 },
220 "input":
221 {
222 "height": 0.0
223 },
224 "layout":
225 {
226 "cells":
227 [
228 [
229 0,
230 0,
231 1,
232 1
233 ]
234 ],
235 "cols":
236 [
237 0.0,
238 1.0
239 ],
240 "rows":
241 [
242 0.0,
243 1.0
244 ]
245 },
246 "menu_visible": true,
247 "output.exec":
248 {
249 "height": 257.0
250 },
251 "replace":
252 {
253 "height": 0.0
254 },
255 "save_all_on_build": true,
256 "select_file":
257 {
258 "height": 0.0,
259 "selected_items":
260 [
261 ],
262 "width": 0.0
263 },
264 "select_project":
265 {
266 "height": 500.0,
267 "selected_items":
268 [
269 [
270 "",
271 "/opt/VALIDATION/waveform_analysis/wfmr_plots.sublime-project"
272 ]
273 ],
274 "width": 380.0
275 },
276 "show_minimap": true,
277 "show_open_files": false,
278 "show_tabs": true,
279 "side_bar_visible": true,
280 "side_bar_width": 255.0,
281 "status_bar_visible": true
282 }
@@ -0,0 +1,57
1 #!/usr/bin/lppmon -e
2
3 ####################
4 ## BUILD THE DATA ##
5 ####################
6
7 with open('/opt/DEV_PLE/FSW-qt/bin/spectralmatrix/asm_f0_test_20140403_case2.txt', 'r') as f:
8 listOfLines = []
9 for line in f.readlines():
10 listOfLines.append(line)
11
12 data = listOfLines[10] # line 10 contains the data
13 data = data.split() # get the data from the global string
14
15 dataInFloat = []
16 nbData = len(data)
17 print "nbData = " + str(nbData)
18 for i in range( nbData ):
19 dataInFloat.append( float( data[i] ) ) # convert each string into a float
20
21 # reorganize the data to have a matrix in the VHDL format
22 # INPUT (ICD format)
23 # matrix_0[0 .. 24] matrix_1[0 .. 24] .. matrix_127[0 .. 24]
24 # OUTPUT (VHDL format)
25 # component_0[0 .. 127] component_1[0 .. 127] .. component_24[0 .. 127]
26
27 dataInFloatReorganized = []
28 dataInIntReorganized = []
29 nbComponentsByMatrix = 25
30 nbFrequencyBins = 128
31 for indexComponent in range(nbComponentsByMatrix):
32 for frequencyBin in range(nbFrequencyBins):
33 dataInFloatReorganized.append(
34 dataInFloat[ indexComponent + frequencyBin * nbComponentsByMatrix ]
35 )
36 dataInIntReorganized.append(
37 int( dataInFloat[ indexComponent + frequencyBin * nbComponentsByMatrix ] )
38 )
39
40 ####################
41 ## WRITE THE DATA ##
42 ####################
43
44 address_to_read = 0x80000f08
45 val = RMAPPlugin0.Read( address_to_read, 1)
46 matrixF0_Address0 = val[0]
47 print str( len(dataInIntReorganized) ) + " data to write"
48 RMAPPlugin0.Write( matrixF0_Address0, dataInIntReorganized )
49 print str( len(dataInIntReorganized) ) + " data written @" + hex(matrixF0_Address0)
50
51
52
53
54
55
56
57
@@ -0,0 +1,22
1 #!/usr/bin/lppmon -e
2 import math
3
4 address_to_read = 0x80000f08
5 val = RMAPPlugin0.Read( address_to_read, 1)
6 matrixF0_Address0 = val[0]
7 print hex(matrixF0_Address0)
8
9 teta = []
10 for i in range(128):
11 teta.append( i * 2 * math.pi / 128 )
12 amplitude = 10000
13
14 # BUILD THE DATA
15 dataToWrite = []
16 for frequencyBin in range(128):
17 for component in range (25):
18 dataToWrite.append( amplitude * math.sin( teta[frequencyBin] * component ) )
19
20 # WRITE THE DATA
21 print len(dataToWrite)
22 RMAPPlugin0.Write( matrixF0_Address0, dataToWrite )
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
@@ -0,0 +1,34
1 with open('asm_f0_test_paul_1.txt', 'r') as f:
2 listOfLines = []
3 for line in f.readlines():
4 listOfLines.append(line)
5
6 data = listOfLines[10] # line 9 contains the data
7 data = data.split() # get the data from the global string
8
9 dataInFloat = []
10 nbData = len(data)
11 print "nbData = " + str(nbData)
12 for i in range( nbData ):
13 dataInFloat.append( float( data[i] ) ) # convert each string into a float
14
15 # reorganize the data to have a matrix in the VHDL format
16 # input format (ICD format)
17 # matrix_0[0 .. 24] matrix_1[0 .. 24] .. matrix_127[0 .. 127]
18 # output format (VHDL format)
19 # component_0[0 .. 127] component_1[0 .. 127] .. component_24[0 .. 127]
20
21 dataInFloatReorganized = []
22 dataInIntReorganized = []
23 nbComponentsByMatrix = 25
24 nbFrequencyBins = 128
25 for indexComponent in range(nbComponentsByMatrix):
26 for frequencyBin in range(nbFrequencyBins):
27 dataInFloatReorganized.append(
28 dataInFloat[ indexComponent + frequencyBin * nbComponentsByMatrix ]
29 )
30 dataInIntReorganized.append(
31 int( dataInFloat[ indexComponent + frequencyBin * nbComponentsByMatrix ] )
32 )
33
34 print dataInIntReorganized
@@ -0,0 +1,201
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by QtCreator 3.0.1, 2014-04-27T16:41:56. -->
4 <qtcreator>
5 <data>
6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
7 <value type="int">0</value>
8 </data>
9 <data>
10 <variable>ProjectExplorer.Project.EditorSettings</variable>
11 <valuemap type="QVariantMap">
12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
14 <value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
15 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
16 <value type="QString" key="language">Cpp</value>
17 <valuemap type="QVariantMap" key="value">
18 <value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
19 </valuemap>
20 </valuemap>
21 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
22 <value type="QString" key="language">QmlJS</value>
23 <valuemap type="QVariantMap" key="value">
24 <value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
25 </valuemap>
26 </valuemap>
27 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
28 <value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
29 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
30 <value type="int" key="EditorConfiguration.IndentSize">4</value>
31 <value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
32 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
33 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
34 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
35 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
36 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
37 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
38 <value type="int" key="EditorConfiguration.TabSize">8</value>
39 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
40 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
41 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
42 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
43 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
44 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
45 </valuemap>
46 </data>
47 <data>
48 <variable>ProjectExplorer.Project.PluginSettings</variable>
49 <valuemap type="QVariantMap"/>
50 </data>
51 <data>
52 <variable>ProjectExplorer.Project.Target.0</variable>
53 <valuemap type="QVariantMap">
54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop-Qt 4.8.3 in PATH (System)</value>
55 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop-Qt 4.8.3 in PATH (System)</value>
56 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{be73cf6a-f9d8-4d5a-8adf-adc2d83e2e44}</value>
57 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
58 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
59 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
60 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
61 <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory"></value>
62 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
63 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
64 <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
65 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
66 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
67 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
68 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
69 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">false</value>
70 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
71 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
72 </valuemap>
73 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
74 <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
75 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
76 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
77 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
78 <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
79 <value type="QString">-w</value>
80 <value type="QString">-r</value>
81 </valuelist>
82 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
83 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
84 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
85 </valuemap>
86 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
88 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
89 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
90 </valuemap>
91 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
92 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
93 <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
96 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
97 <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
98 <value type="QString">-w</value>
99 <value type="QString">-r</value>
100 </valuelist>
101 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
102 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
103 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
104 </valuemap>
105 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
106 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
107 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
108 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
109 </valuemap>
110 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
111 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
112 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
115 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
116 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
117 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
118 </valuemap>
119 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">1</value>
120 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
121 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
122 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
124 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
125 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
126 </valuemap>
127 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
128 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
131 </valuemap>
132 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
133 <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
134 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
135 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
136 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
137 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
138 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
139 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
140 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
141 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
142 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
143 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
144 <value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
145 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
146 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
147 <value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
148 <value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
149 <value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
150 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
151 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
152 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
153 <value type="int">0</value>
154 <value type="int">1</value>
155 <value type="int">2</value>
156 <value type="int">3</value>
157 <value type="int">4</value>
158 <value type="int">5</value>
159 <value type="int">6</value>
160 <value type="int">7</value>
161 <value type="int">8</value>
162 <value type="int">9</value>
163 <value type="int">10</value>
164 <value type="int">11</value>
165 <value type="int">12</value>
166 <value type="int">13</value>
167 <value type="int">14</value>
168 </valuelist>
169 <value type="int" key="PE.EnvironmentAspect.Base">2</value>
170 <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
171 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">fsw-qt</value>
172 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
173 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/opt/DEV_PLE/FSW-qt/fsw-qt.pro</value>
174 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
175 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">fsw-qt.pro</value>
176 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
177 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</value>
178 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
179 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
180 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
181 <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">false</value>
182 <value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
183 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
184 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
185 </valuemap>
186 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
187 </valuemap>
188 </data>
189 <data>
190 <variable>ProjectExplorer.Project.TargetCount</variable>
191 <value type="int">1</value>
192 </data>
193 <data>
194 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
195 <value type="QByteArray">{cdbf9cdc-1e84-406e-889b-c4feef49e75c}</value>
196 </data>
197 <data>
198 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
199 <value type="int">15</value>
200 </data>
201 </qtcreator>
@@ -0,0 +1,35
1 #ifndef AVF0_PRC0_H_INCLUDED
2 #define AVF0_PRC0_H_INCLUDED
3
4 #include "fsw_processing.h"
5
6 typedef struct {
7 unsigned int norm_bp1;
8 unsigned int norm_bp2;
9 unsigned int norm_asm;
10 unsigned int burst_sbm_bp1;
11 unsigned int burst_sbm_bp2;
12 unsigned int burst_bp1;
13 unsigned int burst_bp2;
14 unsigned int sbm1_bp1;
15 unsigned int sbm1_bp2;
16 unsigned int sbm2_bp1;
17 unsigned int sbm2_bp2;
18 } nb_sm_before_bp_asm_f0;
19
20 //************
21 // RTEMS TASKS
22 rtems_task avf0_task( rtems_task_argument lfrRequestedMode );
23 rtems_task prc0_task( rtems_task_argument lfrRequestedMode );
24
25 //**********
26 // FUNCTIONS
27
28 void reset_nb_sm_f0( unsigned char lfrMode );
29
30 //*******
31 // EXTERN
32 extern struct ring_node_sm *ring_node_for_averaging_sm_f0;
33 extern rtems_status_code get_message_queue_id_prc0( rtems_id *queue_id );
34
35 #endif // AVF0_PRC0_H_INCLUDED
@@ -0,0 +1,33
1 #ifndef AVF1_PRC1_H
2 #define AVF1_PRC1_H
3
4 #include "fsw_processing.h"
5
6 typedef struct {
7 unsigned int norm_bp1;
8 unsigned int norm_bp2;
9 unsigned int norm_asm;
10 unsigned int burst_sbm_bp1;
11 unsigned int burst_sbm_bp2;
12 unsigned int burst_bp1;
13 unsigned int burst_bp2;
14 unsigned int sbm2_bp1;
15 unsigned int sbm2_bp2;
16 } nb_sm_before_bp_asm_f1;
17
18 //************
19 // RTEMS TASKS
20 rtems_task avf1_task( rtems_task_argument lfrRequestedMode );
21 rtems_task prc1_task( rtems_task_argument lfrRequestedMode );
22
23 //**********
24 // FUNCTIONS
25
26 void reset_nb_sm_f1( unsigned char lfrMode );
27
28 //*******
29 // EXTERN
30 extern struct ring_node_sm *ring_node_for_averaging_sm_f1;
31 extern rtems_status_code get_message_queue_id_prc1( rtems_id *queue_id );
32
33 #endif // AVF1_PRC1_H
@@ -0,0 +1,28
1 #ifndef AVF2_PRC2_H
2 #define AVF2_PRC2_H
3
4 #include "fsw_processing.h"
5
6 typedef struct {
7 unsigned int norm_bp1;
8 unsigned int norm_bp2;
9 unsigned int norm_asm;
10 } nb_sm_before_bp_asm_f2;
11
12 //************
13 // RTEMS TASKS
14 rtems_task avf2_task( rtems_task_argument lfrRequestedMode );
15 rtems_task prc2_task( rtems_task_argument lfrRequestedMode );
16
17 //**********
18 // FUNCTIONS
19
20 void reset_nb_sm_f2( void );
21 void SM_average_f2( float *averaged_spec_mat_f2, ring_node_sm *ring_node, unsigned int nbAverageNormF2 );
22
23 //*******
24 // EXTERN
25 extern struct ring_node_sm *ring_node_for_averaging_sm_f2;
26 extern rtems_status_code get_message_queue_id_prc2( rtems_id *queue_id );
27
28 #endif // AVF2_PRC2_H
@@ -0,0 +1,65
1 #ifndef FSW_PARAMS_PROCESSING_H
2 #define FSW_PARAMS_PROCESSING_H
3
4 #define NB_BINS_PER_SM 128
5 #define NB_VALUES_PER_SM 25
6 #define TOTAL_SIZE_SM 3200 // 25 * 128
7 #define TOTAL_SIZE_NORM_BP1_F0 99 // 11 * 9 = 99
8 #define TOTAL_SIZE_NORM_BP1_F1 117 // 13 * 9 = 117
9 #define TOTAL_SIZE_NORM_BP1_F2 108 // 12 * 9 = 108
10 #define TOTAL_SIZE_SBM1_BP1_F0 198 // 22 * 9 = 198
11 //
12 #define NB_RING_NODES_SM_F0 12 // AT LEAST 3
13 #define NB_RING_NODES_ASM_BURST_SBM_F0 10 // AT LEAST 3
14 #define NB_RING_NODES_ASM_NORM_F0 10 // AT LEAST 3
15 #define NB_RING_NODES_SM_F1 3 // AT LEAST 3
16 #define NB_RING_NODES_ASM_BURST_SBM_F1 5 // AT LEAST 3
17 #define NB_RING_NODES_ASM_NORM_F1 5 // AT LEAST 3
18 #define NB_RING_NODES_SM_F2 3 // AT LEAST 3
19 #define NB_RING_NODES_ASM_BURST_SBM_F2 3 // AT LEAST 3
20 #define NB_RING_NODES_ASM_NORM_F2 3 // AT LEAST 3
21 //
22 #define NB_BINS_PER_ASM_F0 88
23 #define NB_BINS_PER_PKT_ASM_F0 44
24 #define TOTAL_SIZE_ASM_F0_IN_BYTES 4400 // 25 * 88 * 2
25 #define ASM_F0_INDICE_START 17 // 88 bins
26 #define ASM_F0_INDICE_STOP 104 // 2 packets of 44 bins
27 //
28 #define NB_BINS_PER_ASM_F1 104
29 #define NB_BINS_PER_PKT_ASM_F1 52
30 #define TOTAL_SIZE_ASM_F1_IN_BYTES 5200 // 25 * 104 * 2
31 #define ASM_F1_INDICE_START 6 // 104 bins
32 #define ASM_F1_INDICE_STOP 109 // 2 packets of 52 bins
33 //
34 #define NB_BINS_PER_ASM_F2 96
35 #define NB_BINS_PER_PKT_ASM_F2 48
36 #define TOTAL_SIZE_ASM_F2_IN_BYTES 4800 // 25 * 96 * 2
37 #define ASM_F2_INDICE_START 7 // 96 bins
38 #define ASM_F2_INDICE_STOP 102 // 2 packets of 48 bins
39 //
40 #define NB_BINS_COMPRESSED_SM_F0 11
41 #define NB_BINS_COMPRESSED_SM_F1 13
42 #define NB_BINS_COMPRESSED_SM_F2 12
43 #define NB_BINS_COMPRESSED_SM_SBM_F0 22
44 #define NB_BINS_COMPRESSED_SM_SBM_F1 26
45 #define NB_BINS_COMPRESSED_SM_SBM_F2 24
46 //
47 #define NB_BINS_TO_AVERAGE_ASM_F0 8
48 #define NB_BINS_TO_AVERAGE_ASM_F1 8
49 #define NB_BINS_TO_AVERAGE_ASM_F2 8
50 #define NB_BINS_TO_AVERAGE_ASM_SBM_F0 4
51 #define NB_BINS_TO_AVERAGE_ASM_SBM_F1 4
52 #define NB_BINS_TO_AVERAGE_ASM_SBM_F2 4
53 //
54 #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F0 275 // 11 * 25 WORDS
55 #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F1 325 // 13 * 25 WORDS
56 #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F2 300 // 12 * 25 WORDS
57 #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F0 550 // 22 * 25 WORDS
58 #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F1 650 // 26 * 25 WORDS
59 #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F2 600 // 24 * 25 WORDS
60 // GENERAL
61 #define NB_SM_BEFORE_AVF0 8 // must be 8 due to the SM_average() function
62 #define NB_SM_BEFORE_AVF1 8 // must be 8 due to the SM_average() function
63 #define NB_SM_BEFORE_AVF2 1 // must be 1 due to the SM_average_f2() function
64
65 #endif // FSW_PARAMS_PROCESSING_H
@@ -0,0 +1,238
1 #ifndef FSW_PROCESSING_H_INCLUDED
2 #define FSW_PROCESSING_H_INCLUDED
3
4 #include <rtems.h>
5 #include <grspw.h>
6 #include <math.h>
7 #include <stdlib.h> // abs() is in the stdlib
8 #include <stdio.h> // printf()
9 #include <math.h>
10
11 #include "fsw_params.h"
12 #include "fsw_spacewire.h"
13
14 typedef struct ring_node_sm
15 {
16 struct ring_node_sm *previous;