SV-BC Separate Compilation discussion 7/15/03 Attendees 00000 76654 12012 53928 00000 33333 aaaaa Karen Pieper -aaaa Randy Misustin -a--a Dennis Brophy ----a Danny Jacobi aaaaa Brad Pierce aaa-a Dave Rich ---aa Francoise Martinolle a-aa- Matt Maidment a-a-- Tom Kiley -a--- Johny Srouji aa--- Jay Lawrence a---- Arturo Salz a---- Peter Flake We started with a discussion of Karen's proposal for separate compilation support. We noted that a many or most Verilog users are used to putting all of their Verilog code on one line for the tool. For this usage model, $root is not a real problem. For tools that allow true separate compilation, this idea that $root keeps growing is a real issue. How do you know when to replace pieces? How do you know when to start over, and so on. We also noted that procedural statements are allowed in root. We took a straw poll to see if there was agreement to remove them. Here are the results: Peter, Matt want to leave procedural stmts in $root Dave, Jay, Karen, Tom, Arturo are for removing Brad abstains Peter indicates that this is useful as a debugging feature. Peter would be happy if it was a tool choice to support this feature. We also discussed the impact of $root on co-linking with VHDL. We agreed that $root did not pose a risk to the VHDL interpretation, but that the issues surrounding how many $roots there were and how they merged together still existed. We tried to take a straw poll about $root. It was felt too difficult to vote given the large design space for solving the problem, so several people voiced their opinions: Jay: nothing that has to be elaborated should live between modules including classes with static variables, non-reentrant tasks and functions. Dave: within a compilation unit, there needs to be "local" global data Matt: $root for holding static variables is good for early design, but he can only justify it for testbenches. Namespaces would be ok as a replacement. Karen will put together 3 versions of the proposal and we can do a straw poll. The next meeting to discuss separate compilation support is scheduled for 9am Pacific on Tuesday 7/29 at 9am.