Scineric Workspace Technical Introduction


Published on

This presentation gives an introduction to the technical file and version control management problems typically experienced by engineers in the Electronic Design Automation (EDA) industry.

We start off by discussing the complexities and challenges of managing complex designs, using FPGA design as our example. Next we look at the IEEE IP-XACT standard which was created to address these issues. Lastly, we discuss possible solutions and show how Scineric Workspace, which is based on this IEEE standard, can be used to solve most of these problems.

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Scineric Workspace Technical Introduction

  1. 1. J.P. Naudé
  2. 2. Structured File, Build and Package ManagementA Detailed Technical Introduction
  3. 3. A Quick Introduction Scineric Workspace is a research tool that was created tohelp firmware designers manage their files, builds and packages in a structured way and in a central place. © CSIR 2013
  4. 4. The name and logo Scientific + Generic = Scineric“Oortjies van die seekoei” © CSIR 2013
  5. 5. Background Why Is It Needed &What Are The Challenges
  6. 6. Setting The Stage C:FirmwareBuildsMyDesign IPRepository Coresof building blocks RTLDesign Building System on Lib A Blocks Related Items Chip Lib B Vendor Toolchain Lib C C++ to RTLC:FirmwareRepository © CSIR 2013
  7. 7. Somewhere In The Future C:FirmwareBuildsXYZ RTL Building RTL Building RTL Building IPRepository Blocks Blocks Blocks Coresof building blocks RTL Building RTL Building RTL Building System on Lib A Blocks Blocks Blocks Chip Lib B Lib C C++ to RTL Building Blocks RTL Building Blocks RTL Building Blocks RTLC:FirmwareRepository © CSIR 2013
  8. 8. Challenges: Design Level• Version control C:FirmwareBuildsMyDesign• Unified design structure RTL Building Design Related Blocks Items• Interoperability of tools• Different tool chains• Configuration management © CSIR 2013
  9. 9. Challenges: Repository Level RTL RTL RTL• Changes to a building Buil din g Buil din g Buil din g block affects multiple Blo cks RTL Buil Blo cks RTL Buil Blo cks RTL Buil designs din g Blo din g Blo din g Blo• Documentation & cks RTL Buil din cks RTL Buil din cks RTL Buil din reporting g Blo cks g Blo cks g Blo cks• Maintainers & issue tracking• Design locking• Version tagging © CSIR 2013
  10. 10. Challenges: System Level• Reporting on system & R T L R T L R T L project level B u il R B u il R B u il R• Keeping old designs in d d d T T T i i i L L L n n n B B B g g g a working state u B il R d T o l u B il R d T o l u B il R d T o l• Physical size of everything i i i L c L c L c n n n B k B k B k g g g u s u s u s B B B• Hardware & firmware just il l d o i il l d o i il d o i l c c c subsystem in bigger system n n n k k k g g g s s s B B B l l l o o o c c c k k k s s s © CSIR 2013
  11. 11. It’s the year 201320nm devices in production yet,most EDA tools doesn’t even support version control however, things are changing
  12. 12. IP-XACT: We Are Not Alone• IP-XACT Standard published by IEEE in 2009• Huge in scope, subset of standard addresses the challenges described here• Lack of user friendly tools, industry adoption slow © CSIR 2013
  13. 13. IP-XACT: How Does It Work• On design level, designs tagged using VLNV tags• You add one IP-XACT based xml file to your design’s directory which is used to describe and manage your design © CSIR 2013
  14. 14. IP-XACT: How Does It Work• This IP-XACT component file stores the information needed to solve the many of the challenges discussed• You don’t need to know that it exists. The goal is that things just work from a user perspective © CSIR 2013
  15. 15. Where Does Scineric Fit In?
  16. 16. Scineric: An IP-XACT based IDE• Scineric is an IP-XACT driven IDE• It extends the standard to help address the challenges mentioned• Its modern, fresh and doesn’t lock you in © CSIR 2013
  17. 17. Scineric GUI and the Scineric Tcl Shell © CSIR 2013
  18. 18. SolutionsAddressing The Challenges
  19. 19. Solutions: Design Level C:FirmwareBuildsMyDesign RTL Building Design Related Blocks Items
  20. 20. Solutions: Design Level : Unified Structures Design Structures, shared by teams Classify Files, anyone can extend it… © CSIR 2013
  21. 21. Solutions: Design Level : Version Control Clever VersionControl Front-end We Know What’s Design structures Generated guides itGit and SubversionClean What You Don’t Need Extend The Rules Per Design © CSIR 2013
  22. 22. Solutions: Design Level : Different Tool ChainsPlunify, Xilinx, Altera Builds Are Xml Files, Share & Reuse Them Team SettingsBuild Management & Customizable, Do Anything Export Targets © CSIR 2013
  23. 23. Solutions: Design Level : Configuration Management Package Design Team Specific Packages(again, unified package structure) R R R T T T L L L R R R B T B T B T u L u L u L i i i l B l B l B d u d u d u i i i n l n l n l Store Everything g d g d g d i i i B n B n B n l g l g l g o o o c B c B c B © CSIR 2013 k l k l k l
  24. 24. Solutions: Repository Level RTL RTL RTL Buil Buil Buil din din din g g g Blo Blo Blo cks cks cks RTL RTL RTL Buil Buil Buil din din din g g g Blo Blo Blo cks cks cks
  25. 25. Solutions: Repository Level : Version Tags Version Tags Keeps Track Of All Downstream Repositories R R R T T T L L L B B B R ui R ui R ui T ld T ld T ld L in L in L in Bg Bg Bg ui Bl ui Bl ui Bl ld o ld o ld o in c in c in c gk gk gk Bl s Bl s Bl s © CSIR 2013 o o o
  26. 26. Solutions: Repository Level : Locking Repository Wide Summary © CSIR 2013
  27. 27. Solutions: Repository Level : Locking Continued Design Locks Enabled Opening A Locked Design Getting A Lock Releasing A Lock © CSIR 2013
  28. 28. Solutions: Repository Level : Maintainers & Issue Tracking Repository Wide Summary © CSIR 2013
  29. 29. Solutions: Repository Level : Documentation & ReportingDocumentation Generation & Guidelines Repository Wide Reporting • Per Project, Maintainer, Development Stage Reports • Detailed design reports: • Graphical time history • Time allocation history per task • Health reports • Different export formats? © CSIR 2013
  30. 30. Solutions: System Level
  31. 31. Solutions: System Level : Keep Old Designs Working Continuous Integration using Jenkins ( Jenkins is an application that monitors executions of repeated jobs, such as building a software project. Jenkins targets software, but Scineric allows you to build firmware using it © CSIR 2013
  32. 32. Solutions: System Level : Keep Old Designs Working ContinuedLink Design To Jenkins Job Create Script Files For BuildReady To Use Launch Scripts Firmware Build In Jenkins Build Trends Over Time © CSIR 2013
  33. 33. Get it at