taming complex chip designs with beautiful diagrams
play

Taming complex chip designs with beautiful diagrams Titouan Vervack - PowerPoint PPT Presentation

EclipseCon Europe, Ludwigsburg 2017-10-24 Taming complex chip designs with beautiful diagrams Titouan Vervack redefine.digital.design: Helping you deal with complexity in VHDL and Verilog. Ghent 2 Sigasi 3 What do we do? Eclipse-based VHDL


  1. EclipseCon Europe, Ludwigsburg 2017-10-24 Taming complex chip designs with beautiful diagrams Titouan Vervack redefine.digital.design: Helping you deal with complexity in VHDL and Verilog.

  2. Ghent 2

  3. Sigasi 3

  4. What do we do? Eclipse-based VHDL & SystemVerilog IDE 4

  5. Chip design 5

  6. Chip design 5

  7. Hardware Description Language (HDL) entity and_or_top is Port( A : in bit; -- NAND gate input B : in bit; -- NAND gate input Q : out bit -- NAND gate output ); end and_or_top; architecture Behavioral of and_or_top is begin Q <= A nand B; -- 2 input NAND gate end Behavioral; ● VHDL ● (System)Verilog 6

  8. Graphical editors with HDL HDL code 7

  9. Graphical editors with HDL Generate Graphical HDL code 7

  10. Graphical editors with HDL Generate Compile Warnings & Graphical HDL code Errors 7

  11. Graphical editors with HDL Generate Compile Warnings & Graphical HDL code Errors 7

  12. Graphical editors with HDL ? Generate Compile Warnings & Graphical HDL code Errors 7

  13. Graphical editors with HDL 8

  14. Graphical editors with HDL 9

  15. Graphical editors with HDL ? Generate Compile Warnings & Graphical HDL code Errors 10

  16. Graphical editors with HDL ? Generate Compile Warnings & Graphical HDL code Errors 11

  17. Graphical editors with HDL Navigate Generate Compile Warnings & Graphical view HDL code Errors 12

  18. Graphical View of structure 13

  19. Text-based design with graphical views ELK (Eclipse Layout Kernel) KlighD (Kieler Light Weight Diagrams) Graphviz DOT GEF & Zest 14

  20. Graphical <-> source interaction 15

  21. Graphical <-> source interaction 15

  22. Graphical <-> source interaction 15

  23. Graphical <-> source interaction 15

  24. Graphical <-> source interaction 15

  25. Text-based design with graphical views Perfect solution? ● Cluttered ● Too much detail (e.g. 20MB SVG file) ● No focus 16

  26. Text-based design with graphical views 17

  27. Text-based design with graphical views 18

  28. UI configuration 19

  29. Text-based design with graphical views Goals: ● Filtering ● Mergable ● Reproducible Serializable ● ● Simplify collaboration ● Ability to highlight important parts 20

  30. Our updated view HDL code 21

  31. Our updated view HDL code Navigate C o m p i l e Warnings & Errors 21

  32. Our updated view HDL code Navigate Navigate e t a C r o e m n p e i l e G Warnings & Graphical Errors 21

  33. Our updated view HDL code Navigate Navigate e t a C r o e m n p e i l e G Warnings & Graphical Errors DSL 21

  34. Our updated view HDL code Navigate Navigate e t a C r o e m n p e i l e G Warnings & Graphical Errors DSL 21

  35. Our updated view HDL code Navigate Navigate e t a C r o e m n p e i l e G Warnings & Graphical Compile Errors e t a g i v a N DSL 21

  36. Our updated view HDL code Navigate Navigate e t a C r o e m n p e i l e G Warnings & Graphical Compile Errors Navigate e t a g i G v e a n N e r a t e DSL 21

  37. DSL Separate file: ● Does not taint the original source code ● Multiple views for one source Clocking/reset structure ○ ○ Data flow ● Can be generated (group all wires between blocks) 22

  38. Demo DEMO 23

  39. Testing ● DSL is fully covered ● UI: assume framework works ● SVG export: font size differences are a challenge 24

  40. Testing ● DSL is fully covered ● UI: assume framework works ● SVG export: font size differences are a challenge 25

  41. Testing ● DSL is fully covered ● UI: assume framework works ● SVG export: font size differences are a challenge 26

  42. Conclusion ● Use graphical views, not graphical editors ● One on one projection is often not what you want ● ELK + Xtext + Eclipse 27

  43. Evaluate the Sessions Sign in and vote at eclipsecon.org - 1 0 + 1

Recommend


More recommend