As of August 2020 the site you are on (wiki.newae.com) is deprecated, and content is now at rtfm.newae.com.

Difference between revisions of "Common Tool Information"

From ChipWhisperer Wiki
Jump to: navigation, search
(Class Diagram)
(Class Diagram)
Line 10: Line 10:
 
[[File:Cw classdiagram.png|1100x1100px]]
 
[[File:Cw classdiagram.png|1100x1100px]]
  
The general architectural idea is to start the Flow with a TraceSource, allow the connection off multiple preprocessing modules (that are both a TraceObserver and a TraceSource) and end the chain in an TraceObserver (that can be a widget or an AnalysisSource).
+
The general architectural idea is to start the Flow with a TraceSource, allow the connection off multiple preprocessing modules (that are both a TraceObserver and a TraceSource) and end the chain in an TraceObserver (that can be a widget or an AnalysisSource). The sigTracesChanged signal (in the TraceSource objects) is used to propagate this notification through the chain and activate a callback method (processTraces) in the ActiveTraceObserver objects (like the WaveFormWidget) to read the new data. The PassiveTraceObservers (like the AnalysisSource and the TraceRecorder widget) will ignore this signal and the processSignal() should be called manually.
  
 
 
   [TraceSource] -> [(Active)TraceObserver, TraceSource] -> [(Passive/Active)TraceObserver]
 
   [TraceSource] -> [(Active)TraceObserver, TraceSource] -> [(Passive/Active)TraceObserver]
 
         |                          |                                    |
 
         |                          |                                    |

Revision as of 09:17, 14 July 2016

Loading/Saving the Project

The save option inside the file menu of both the Capture and Analyzer tools creates the project directoryes and the .cwp file with traces information that is shared between both tools. The exact content of this file can be viewed and edited in the "Project Text Editor" widget.

The traces data is captured to the tmp directory if no project was created. In this case, the "Consolidate" option in the Project menu can be used to copy/move this files to the current Project directory as soon as you create one. This option may also be usefull if you manually added existing traces (editing the .cwp file or using the import option in the Trace Manager) to the project.

Loading/Saving the Settings

The settings are not saved with the project (we may improve it in the future), but instead, you can use the "Save Settings" option (inside the Project menu) to dump this information to the "settings.cwset" file, inside the project directory. Once saved, the settings can be re-loaded using the load button in the settings tabs (general, scope, traget,...). Another possibility would be to use the Save Button and choose different filenames for each settings profile that you wanto to use.

Class Diagram

Cw classdiagram.png

The general architectural idea is to start the Flow with a TraceSource, allow the connection off multiple preprocessing modules (that are both a TraceObserver and a TraceSource) and end the chain in an TraceObserver (that can be a widget or an AnalysisSource). The sigTracesChanged signal (in the TraceSource objects) is used to propagate this notification through the chain and activate a callback method (processTraces) in the ActiveTraceObserver objects (like the WaveFormWidget) to read the new data. The PassiveTraceObservers (like the AnalysisSource and the TraceRecorder widget) will ignore this signal and the processSignal() should be called manually.

 [TraceSource] -> [(Active)TraceObserver, TraceSource] -> [(Passive/Active)TraceObserver]
       |                           |                                     |
     Channel               PreprocessingBase                       AnalysisSource -----------> [AnalysisObserver]
  TraceManager                                                      TraceRecorder                       |
                                                                    WaveFormWidget              [AttackObserver]
                                                                                                        |
                                                                                Analysis Widgets (ResultsTable, CorrelationVsTrace, ...)