Dynamic Parameter Configuration of SystemC Models

Published  . 0 views
↓ Download
Dynamic Parameter Configuration of SystemC Models
1 / 1
Dynamic Parameter Configuration of SystemC Models - slide 1 of 16 Dynamic Parameter Configuration of SystemC Models - slide 2 of 16 Dynamic Parameter Configuration of SystemC Models - slide 3 of 16 Dynamic Parameter Configuration of SystemC Models - slide 4 of 16 Dynamic Parameter Configuration of SystemC Models - slide 5 of 16 Dynamic Parameter Configuration of SystemC Models - slide 6 of 16 Dynamic Parameter Configuration of SystemC Models - slide 7 of 16 Dynamic Parameter Configuration of SystemC Models - slide 8 of 16 Dynamic Parameter Configuration of SystemC Models - slide 9 of 16 Dynamic Parameter Configuration of SystemC Models - slide 10 of 16 Dynamic Parameter Configuration of SystemC Models - slide 11 of 16 Dynamic Parameter Configuration of SystemC Models - slide 12 of 16 Dynamic Parameter Configuration of SystemC Models - slide 13 of 16 Dynamic Parameter Configuration of SystemC Models - slide 14 of 16 Dynamic Parameter Configuration of SystemC Models - slide 15 of 16 Dynamic Parameter Configuration of SystemC Models - slide 16 of 16
Description: Dynamic Parameter Configuration of SystemC Models Accellera Systems Initiative 1 Shruti Baindur Simranjit Singh Anand Patil Index Motivation Traditional Approach and its Drawbacks Solution Approach Dynamic Configurator Overview

Related Topics

Download Presentation

"Dynamic Parameter Configuration of SystemC Models" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentation Transcript

slide1. Dynamic Parameter Configuration of SystemC Models © Accellera Systems Initiative 1 Shruti Baindur
Simranjit Singh
Anand Patil<br>
slide2. Index Motivation
Traditional Approach and its Drawbacks
Solution Approach
Dynamic Configurator Overview
Configuration at Run-Time
Conclusion © Accellera Systems Initiative 2<br>
slide3. Configuring a VP for different use cases Motivation Early Software Development
Debug message
Exit on Error condition
Runtime configurations Architectural Exploration
Memory size
Memory address offset
Delay/Wait cycles
Register offset Performance Analysis
Timing information
Cycle timing © Accellera Systems Initiative 3 Configurability<br>
slide4. Traditional Approach Parameters of a design set at construction time
Drawbacks
Recompile for every parameter value change
Maintaining different configurations is difficult
VP user does not have flexibility to change values
VP tools provide mechanism for configuration
Drawbacks
Approach is tool dependent
Reuse of setup with another tool not possible © Accellera Systems Initiative 4<br>
slide5. Solution Approach © Accellera Systems Initiative 5 Config Data Base Configuration Data Base
- Can be an input file like XML or INI Complete System in the form of an executable A mechanism that sets parameter values dynamically System.exe CPU I2C Memory Configuration Reader Configuration Reader
- Reads & stores configuration data base
- Provides configuration information<br>
slide6. Dynamic Configuration at Infineon © Accellera Systems Initiative 6 Parameter file Configuration file
- Is a XML file
- Uses SystemC like hierarchy to differentiate between parameters System.exe CPU I2C Memory Configuration Reader Module implementation
- Parameters special class inherited from ‘sc_attribute’
- During construction, queries configurator for values Configurator is a SystemC module
- Reads in configuration file in XML format - If parameter string found in database sets value<br>
slide7. Dynamic Configuration © Accellera Systems Initiative 7 @ Construction time System.exe Configurator Module1 Parameter1 Parameter XML Module2 Parameter1 Reader Parameter Database Parameter Info Handler Query value Returns control If parameter string match set value Value : 10 20 Stores reference to the parameter<br>
slide8. Parameter Configuration File Configure complete system
Parameter for each module instance can be configured
Also supports YAML file format © Accellera Systems Initiative 8 System.exe CPU I2C Memory Configurator Parameter.XML hierarchy
System
|---CPU
| |---Core1
| |--- Dvalue
| |--- Value
|---Memory
| |---StartAddr
| |--- Dvalue
| |--- Value
|---I2C
| |---Param
| |--- Dvalue
| |--- Value<br>
slide9. Parameter GUI Tedious to modify XML file however big or small
Mechanism to simplify file handling © Accellera Systems Initiative 9 System.exe CPU I2C Memory Configurator Parameter XML Parameter GUI System Meta Information PyQt Based GUI
- Reads parameter XML file
- User modifies value
- Tool dumps a new file with new values System Meta Generation Mechanism
Has system meta information of the design
Generates initial XML file Modify existing XML file by taking the already available XML file It is possible to have many configuration files<br>
slide10. For New Designs Possibility to re-use old parameter information © Accellera Systems Initiative 10 System.exe CPU I2C Memory Configurator Parameter XML Parameter GUI System Meta Information System Meta Generation Mechanism
New parameters added to metadata Updated configuration file with new parameter entries - Takes old configuration file<br>
slide11. Configuration at Run-Time Need to update configuration during simulation
E.g. Activation of debug messages
APIs to set parameter values at run time provided

Configuration runtime scenario for a VP
From within
An extra module within VP that sets new parameter values
From the outside
Using an interface that communicates with VP to set new values © Accellera Systems Initiative 11<br>
slide12. Configuration within VP © Accellera Systems Initiative 12 System.exe Configurator Module1 Parameter1 Module2 Parameter1 Reader Parameter Database Parameter Info Handler Action Control @100 ns: Module1.Parameter1 @101 ns: Module2.Parameter1 Sets value from Action Control unit @ Run time Request Set value Updates referenced value<br>
slide13. Configuration outside VP © Accellera Systems Initiative 13 System.exe Configurator Module1 Parameter1 Module2 Parameter1 Reader Parameter Database Parameter Info Handler Interface(e.g. Python) @100 ns: Module1.Parameter1 @101 ns: Module2.Parameter1 Requests set value using functions exposed to interface Updates referenced value Sets value from command line @ Run time<br>
slide14. Related Work Configuration Control and Inspection (CCI WG)
Provides solution similar to Configurator
CCI : ‘Broker’  Infineon: ‘Configurator’
CCI : ‘Parameter’  Infineon: Special class called ‘Attribute’
Many other features provided
Is not yet available as a standard
In future it will be possible to easily migrate to CCI
Structure is similar
Present setup updated to use CCI underneath © Accellera Systems Initiative 14<br>
slide15. Conclusion Generic solution to configure modules
Mechanism is tool agnostic and can run standalone
Saves time as re-compilation time for parameter changes is reduced
Enables configurable design © Accellera Systems Initiative 15<br>
slide16. Questions? © Accellera Systems Initiative 16<br>