As Shalom has already pointed out, concatenation will not work for expressions that have a complex data type. W.r.t. new modeling capabilities/succinctness, the main benefit this feature will provide is the ability to perform arbitrary slicing in a single expression tree, without introducing artificial variables and assignments. As of now, Verilog expressions provide means to express very complex logic, but for some reason they do not provide a way to do a simple slicing operation of another expression. --Yulik. -----Original Message----- From: Michael (Mac) McNamara [mailto:mcnamara@cadence.com] Sent: Wednesday, March 07, 2007 2:25 AM To: Steven Sharp; Arturo.Salz@synopsys.com; Bresticker, Shalom; Feldman, Yulik; sv-bc@eda.org Subject: RE: [sv-bc] part selects on arbitrary expressions I agree that this enhancement adds no new modeling capability - it just delivers some succinctness. (most every language feature after turing's Mark and Advance commands are of this form) To restate my point succinctly, were folks to still wish to deliver this enhancement, I would guide to using the concatenate rather than defining a new meaning for a parentetical grouping. -mac mcnamara@cadence.com -----Original Message----- From: Steven Sharp [mailto:sharp] Sent: Tuesday, March 06, 2007 04:02 PM Pacific Standard Time To: Steven Sharp; Arturo.Salz@synopsys.com; shalom.bresticker@intel.com; yulik.feldman@intel.com; sv-bc@eda.org; Michael (Mac) McNamara Subject: RE: [sv-bc] part selects on arbitrary expressions >Are you suggesting we dispense with slicing altogether? >Shifting, masking, and casting are tedious and error prone. Based on the discussion, there are complex issues that would need to be resolved before allowing part selects on arbitrary expressions. Given that there is already a way of getting the proposed functionality, I don't think the effort to work this out is a high priority at this time. In procedural code, an intermediate variable can be used to hold the expression value and allow a part select. In any situation where an intermediate variable is not a possibility, the functionality can still be obtained with a shift and cast. Steven Sharp sharp@cadence.com -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Mar 7 05:32:02 2007
This archive was generated by hypermail 2.1.8 : Wed Mar 07 2007 - 05:32:13 PST