But that is in contradiction to the P1800 LRM. SystemVerilog designs are required to have one-file is one-compilation-unit semantics as the default (See 19.3). This is definitely a safer paradigm moving forward, as IP developed by different teams is guaranteed to be safe from surprising interactions due to Verilog's peculiarities with "stream-of-text" processing. As SystemVerilog designs are only going to get larger and more complex, having some rational safety guarantees like this makes a lot of sense to me. There will be some compatability issues in the meantime. I had thought to distinguish between compiler directives and SV language objects in compilation unit scope. The reason being is that normal language objects don't pose any backwards compatability issues with Verilog, since those objects can't exist at "file scope" in Verilog. But compiler directives can, and thus the new rules create a deviation from old Verilog behavior. After reading this debate, I would be fine with treating compiler directives the same as plain Verilog objects. The argument about insulating different parts of large designs from surprising interactions applies to compiler directives as well as plain Verilog objects. It should be easy for users to throw on a tool switch to get Verilog compatability if they want to stick with the old ways for their SystemVerilog designs. In fact, compliant tools are required to provide such a switch in 19.3. Regards, Doug > -----Original Message----- > > >From: "Bresticker, Shalom" <shalom.bresticker@intel.com> > > >As a user, I disagree. > > > >This is breaking more than 15 years of legacy use-models. > > > >When you give a sequence of files to a tool, users expect that the > >compiler directives hold from file to file. If you want to compile or > >synthesize them separately, then you compile or synthesize them > >separately. > > Implementors would be wise to make this the default. If they want > a mode where a sequence of files is compiled in one invocation, but > each is treated as a separate compilation unit, a command line > option could be used to specify this. > > Steven Sharp > sharp@cadence.com > >Received on Wed Jan 25 10:46:30 2006
This archive was generated by hypermail 2.1.8 : Wed Jan 25 2006 - 10:46:55 PST