System Verilog
Changes
LRM Changes
27-Jan-03
Status Key: Open -> Proposed->LRM->Accepted -> Closed (in LRM) -> Verified
The second value of LRM will be used to indicate that it should be placed in LRM.
ID Short name: Description: LRM Version Location: Change Status
CH-1 Accept new line in string New line can be included in SV3.1 3.1 Draft 1 Section 2.2 Syntax 2.1 REPLACE:
     string ::= " { Any_ASCII_Characters_except_new_line } " // from Annex A.8.8
WITH:
     string ::= " { Any_ASCII_Characters } " // from Annex A.8.8
Closed
CH-2 String/class from table String and Class are not integer types and should not be in Table 3-1 3.1 Draft 1 Section 3.3 Table 3-1 REMOVE: string and class from Table 3-1. Closed
CH-3 Integral types The definition of integral type is self-referential and should be defined earlier 3.1 Draft 1 Section 3.3.3 REPLACE:
     The term integral is used throughout this document to refer to the data types that can represent a single integral value. These are all the basic integer data types, packed struct, packed union, enum, and time.
WITH:
     The term integral is used throughout this document to refer to the data types that can represent a single basic integer data type, packed struct, packed union, enum, or time.

MOVE: 3.3.3 to 3.3.1
Closed
CH-4 Duplicate sentance Information is repeated after syntax definition. 3.1 Draft 1 Section 3.7, 4th paragraph, last sentance REMOVE: 'Uninitialized variables of type string are initialized to "".' Closed
CH-5 Illegal example Order of example is incorrect 3.1 Draft 1 Section 3.7 Example REPLACE:
     string a = {"Hi", b};
     string b = "";
WITH:
     string b = "";
     string a = {"Hi", b};
Closed
CH-6 Unicode Unicode support is inconsistent and problematic for integer conversion 3.1 Draft 1 Section 3.3 Table 3-1 REMOVE: "or a short int (Unicode)" Closed
CH-7 Type ocatal instead of octal 3.1 Draft 1 Section 3.7 actooct definition REPLACE: ocatal with octal Closed
CH-8 Replication Description of Replication is incomplete 3.1 Draft 1 Section 3.7 Table 3-2 replication operator ADD before "If Str is a literal": "If multiplier is non-constant or Str is of type string, the result is a string containing N concatenated copies of Str, where N is specified by the multiplier." Closed
CH-9 String Methods Add hext/oct/bin conversion string methods 3.1 Draft 1 Section 3.7 ADD after entry for -- itoa(i): "-- hextoa ( i) stores the ASCII hexadecimal representation of an integer as a string (inverse of atohex).\n -- octtoa (i) stores the ASCII octal representation of an integer as a string (inverse of atooct).\n -- bintoa (i) stores the ASCII binary representation of an integer as a string (inverse of atobin). realtoa (stores the ASCII representation of a real as a string (inverse of atoreal). Closed
CH-10 String Methods Details Add hext/oct/bin conversion string methods 3.1 Draft 1 Section C.12 String Methods detail Closed
CH-11 Event Definition Clarified event definition 3.1 Draft 1 Section 3.8 Replace with changes Closed
CH-12 Enumeration ShortHand Remove Enumeration Shorthand 3.1 Draft 1 Section 3.10.1 REMOVE: Starting at SystemVerilog also provides unitl the end of the section Closed
CH-13 Enumeration Examples Change Shorthand notation to typedefs 3.1 Draft 1 Section 3.10.2 example REPLACE: "enum opcode { add=10, sub[5], jmp[6:8] }" with "enum { add=10, sub[5], jmp[6:8] } ;" Closed
CH-14 Enumeration Examples Change Shorthand notation to typedefs 3.1 Draft 1 Section 3.10.3 example REPLACE: "enum Colors { red, green, blue, yellow, white, black };" with "typedef enum { red, green, blue, yellow, white, black } Colors; Closed
CH-15 Enumeration Examples Change Shorthand notation to typedefs 3.1 Draft 1 Section 3.10.4 example REPLACE: "enum Colors { red, green, blue, yellow, white, black };" with "typedef enum { red, green, blue, yellow, white, black } Colors; Closed
CH-16 Constant Properties Section on constant properties was missing 3.1 Draft 1 Section 11.17 Insert new section after section 11.16 Closed
CH-17 Event Details Detailed description modified 3.1 Draft 1 Section 12.6 through 12.7 (with renumbering of existing 12.8 to 12.9) Replace 12.6 and 12.7 with new 12.6, 12.7, 12.8 and move existing 12.8 to 12.9. Proposed, Verified LRM
CH-18 CycleDelay Clarify description and modify syntax 3.1 Draft 1 Section 13.10 and 13.11 REPLACE: Sections 13.10 and 13.11 with contents in link Closed
CH-19 Missing Program Keyword Add Program keyword to keyword table 3.1 Draft 1 Section B ADD the Program keyword to the table of keywords. It is new in SV 3.1 Closed
CH-20 Extra Keyword The async keyword is not required 3.1 Draft 1 Section B REMOVE the async keyword from the table of keywords. Closed
CH-21 String Casting Add section on allowable string casts 3.1 Draft 1 Section 3.7 Replace last sentance of paragraph before examples with contents in link Closed
CH-22 String Casting Example Allow implicit cast of reg to string 3.1 Draft 1 Section 3.7 example REPLACE: "b = r; // ERROR" with "b = r; // OK (implicit cast, some implementations may issue a warning)" Closed
CH-23 Illegal operators &~ and |~ were removed but are still in table 3.1 Draft 1 Section 7.9 Table 7-7 Remove &~ and |~ operators from table. Closed
CH-24 Alias extension Add the extension for aliases 3.1 Draft 1 Section 5.7 (new) Add attached to Section 5.7 Closed
CH-25 Random Constraints Add Random Constraint changes 3.1 Draft 1 Section 20 (new) Insert into Section 20, modify table 7-7 and add keywords to Annex B Closed
CH_26 Enumerated Type checking Add reference to type checking section 3.1 Draft 1 Section 3.10 Add end of section make change in link Closed
CH-27 Enumerated Type cast Add out of range value for cast 3.1 Draft 1 Section 3.10.3 Add end of section make change in link Closed
CH-28 Dynamic Cast Error Remove Fatal error requirement 3.1 Draft 1 Section 3.14 In paragraph starting "When called as task" make change in link Closed
CH-29 Dynamic Cast Value Change value on failure to unchanged 3.1 Draft 1 Section 3.14 In paragraph starting "When called as a function" make change in link Closed
CH-30 VeraLite Replace VeraLite with SystemVerilog 3.1 Draft 1 Section 4.2 In paragraphs starting "unpacked arrays" and "Note:" REPLACE: VeraLite with SystemVerilog Closed
CH-31 Unicode Remove Unicode from strings 3.1 Draft 1 Section 3.3 In Table 3.1 remove "or a short int (Unicode)" from the char description Closed
CH-32 Enumerated Type Iteration Replace operators with methods 3.1 Draft 1 Section 3.10.5 Replace Section 3.10.5 with contents in link Closed
CH-33 Built-in methods Add section to describe built-in methods 3.1 Draft 1 BetweenSection 7.9 and 7.10 Insert linked text as Section 7.10 Closed
CH-34 Scalar change Changed scalar to singular 3.1 Draft 1 Section 3.14 Replace all usages of the term "scalar" with "singular" Closed
CH-35 New in Dynamic Array Brackets missing 3.1 Draft 1 Section 4.6.1 REPLACE: [] around size in "= new[size]  [(src_array)];" with bold []s. Closed
CH-36 Array comptaible types Add clarification of compatible types 3.1 Draft 1 Section 4.7, end of first paragraph. ADD: "Compatible types are types that are assignment compatible." Closed
CH-37 Associative Array Index Remove expansion on integral type 3.1 Draft 1 Section 4.9.1, sentance starting "The array can be" REMOVE: "including integers, packed arrays of arbitrary length, string literals, and packed structures". Closed
CH-38 Ass. Array Index error Change wording from compiler to type check 3.1 Draft 1 Section 4.9.1, 4.9.2, and 4.9.3 REPLACE: "compiler error" with "type check error" Closed
CH-39 Ass. Array Delete Change from task to void function 3.1 Draft 1 Section 4.10.2 REPLACE: "task delete( [input index] );" with "function void delete( [input index] );" Closed
CH-40 Array Assignment Minor change 3.1 Draft 1 Section 4.7, in paragraph beginning "A dynamic array can be assigned" REPLACE: "Unlike assigning to a fixed size array, " with "Unlike assigning with a fixed-size array," Closed
CH-41 Various typos Collected from Brad Pierce 3.1 Draft 1 In attached. Make changes in link Closed
CH-42 Printf Replace printf usage 3.1 Draft 2 Section 20.2 last example Replace printf with $display and remove \n. Closed
CH-43 Side-Effects Function argument evaluation 3.1 Draft 2 Section 7.3 Make changes in link Closed
CH-44 Fork Join Statements 3.1 Draft 2 Section 9.7 Remove paragraph starting with "The statement(s) can be any valid ..." Closed
CH-45 Fork Join Determinism 3.1 Draft 2 Section 9.7 Remove paragraphs starting with "The spawned processes start ..." and "A fork...join none statement causes all the ...". Closed
CH-46 Clocking Domain Syntax 3.1 Draft 2 Section 13.2 In clocking_item definition add ; after default_skew.  In example where "default input #10ns output #2ns" add ; after #2ns. Closed
CH-47 Input and Output Skews AI-16: Clarify delay expressions 3.1 Draft 2 Section 13.3 Make changes in link Closed
CH-48 Input and Output Skews Clarify time change 3.1 Draft 2 Section 13.3 Replace "an infinitesimal delta before the clock event" with "at the end of the previous time step" in paragraph after example. Closed
CH-49 Clocking Domain Add interface 3.1 Draft 2 Section 13.6 Replace "module or a program" with "module, interface, or a program" in the last two paragraphs of section (this means two different places). Closed
CH-50 Clocking Domain Cycle delay 3.1 Draft 2 Section 13.10 Add "the default clocking" after "using" in example of ## [5]; Closed
CH-51 Clocking Domain Cycle delay 3.1 Draft 2 Section 13.10 Make brackets bold in BNF Closed
CH-52 Clocking Domain Cycle delay 3.1 Draft 2 Section 13.10 Change reference from 12.9 to 13.11 Closed
CH-53 Clocking Domain AI-20, 21: Default Clocking 3.1 Draft 2 Section 13.11 Make changes in link Closed
CH-54 Clocking Domain Default Clocking 3.1 Draft 2 Section 13.11 In example 1 and 2 add brackets for ## specification. i.e. change ## 5; to ## [5]; Closed
CH-55 Clocking Domain Default Clocking 3.1 Draft 2 Section 13.11 In Example 2 add "module processor ..." as first line of example, indent rest of example one more level, change endprogram to endmodule, add endmodule as last line of example (properly indented). Closed
CH-56 Signal Operations Synchronization 3.1 Draft 2 Section 14.2 Change @ to ## in BNF. Ignore, Closed
CH-57 Signal Operations Synchronization 3.1 Draft 2 Section 14.2 Remove bold on : after negedge in definition of "specific_edge" Closed
CH-58 Signal Operations Synchronization 3.1 Draft 2 Section 14.2 In last paragraph replace use of primitive with "event control" Closed
CH-59 Signal Operations Synchronization 3.1 Draft 2 Section 14.2 Change Signal Operations to Synchronous Operations for section title. Closed
CH-60 Signal Operations AI-31: Signal Sampling 3.1 Draft 2 Section 14.3 Make changes in link Closed
CH-61 Signal Operations Signal Drives 3.1 Draft 2 Section 14.4 Change @ to ## in BNF. Closed
CH-62 Signal Operations Signal Drives 3.1 Draft 2 Section 14.4 Change "@1 bus.data =" to "##1 bus.data =" in last example. Closed
CH-63 Signal Operations Drive/assignment 3.1 Draft 2 Section 14.4.2 Change @ in example to ##. Closed
CH-64 Program Block Declarations 3.1 Draft 2 Section 15.2 Replace "list_of_ports" with "list_of_port_declarations" in declaration and in paragraph after example. Closed
CH-65 Program Block Scope 3.1 Draft 2 Section 15.4 Remove next to last paragraph. Closed
CH-66 Program Block Multiple programs 3.1 Draft 2 Section 15.5 Change "via $root" in last sentance of first paragraph  to "via $root or hierarchical reference" Closed
CH-67 Program Block Multiple programs 3.1 Draft 2 Section 15.5 Move last paragraph to be the last paragraph of Section 15.1. Closed
CH-68 Program Block Eliminating races 3.1 Draft 2 Section 15.7 Remove the last paragraph. Closed
CH-69 Program Block Blocking tasks 3.1 Draft 2 Section 15.8 Remove "other design" from first and third sentance of paragraph. Closed
CH-70 Associate Array Delete change to function 3.1 Draft 2 Section 4.10.2 Change the word "task" in the last sentance of the third paragraph to "method". Closed
CH-71 $cast Singular definition 3.1 Draft 2 Section 3.14 Make changes in link Closed
CH-72 Associative array methods num method illegal definition 3.1 Draft 2 Section 4.10.1 Insert the word function in front of the declaration "int num();" Closed
CH-73 Associative array methods delete method change 3.1 Draft 2 Section 4.10.2 In the fourth paragraph change "delete method" to "delete() method" with delete in bold. (This was supposed to be done in CH41 but was missed). Closed
CH-74 Built-in methods AI-1: Add description of () usage 3.1 Draft 2 Section 7.10 and 10.5.5 Make changes in link Closed
CH-75 Array Assignment AI-2: Change compiler error  3.1 Draft 2 Section 4.7 Make changes in link Closed
CH-76 Dynamic arrays AI-4: New operator precedence 3.1 Draft 2 Section 4.6.1 Make changes in link Closed
CH-77 Arrays as arguments AI-5: Clarify pass by value for dynamic arrays 3.1 Draft 2 Section 4.8 Make changes in link Closed
CH-78 Associative Arrays AI-8: Clarify Table 4-1 3.1 Draft 2 Section 4.9.6 Make changes in link Closed
CH-79 Final Block AI-10, 41: Add final block to support process termination 3.1 Draft 2 Sections 8.1, 8.6, and 9.1 Make changes in link Closed
CH-80 Clocking Domain AI_13, 14, 15: BNF clarification 3.1 Draft 2 Section 13.2 Make changes in link Closed
CH-81 Clocking Domain AI-16: Step definition clarification 3.1 Draft 2 Section 13.2 Make changes in link Closed
CH-82 Wild equality/inequality AI-11: Sign extension 3.1 Draft 2 Section 7.5 Make changes in link Closed
CH-83 Signal Opertions Drive/assignment ambiguity resolved 3.1 Draft 2 Section 14.4.3 Remove Section 14.4.3 since the operator was changed Closed
CH-84 Clocking Domain AI-17: Clarify NBA 3.1 Draft 2 Section 13.3 Make changes in link Closed
CH-85 Clocking Domain AI-18, 19: Signals in Multiple CD 3.1 Draft 2 Section 13.5 Make changes in link Closed
CH-86 Clocking Domain Scope and Lifetime 3.1 Draft 2 Section 13.6 Make changes in link Closed
CH-87 Built-in methods Clarify use of method and preference 3.1 Draft 2 Section 7.10 Make changes in link Closed
CH-88 Process Remove process statement 3.1 Draft 2 Section 8.7 Make changes in link Closed
CH-89 Fork Join Replace all, any, none with join_none and join_any 3.1 Draft 2 Section 8.6, 9.7, 9.9.1, 9.9.2, 9.9.3, 11.24, 12.9, Annex B Make changes in link Closed
CH-90 Functions Remove assignment discard option and clean-up warning message. 3.1 Draft 2 Section 10.3.2 Make changes in link Closed
CH-91 Functions Default Argument Values 3.1 Draft 2 Section 10.5.3 Replace "scale (non-packed-array)" with singular Closed
CH-92 Functions Pass by reference 3.1 Draft 2 Section 10.5.2 Remove the use of "indirectly" in the first and second paragraphs Closed
CH-93 Signal Synchronization AI-22: Reference 13.9 3.1 Draft 2 Section 14.2 Make changes in link Closed
CH-94 Signal Synchronization AI-23: Use standard event control BNF 3.1 Draft 2 Section 14.2 Make changes in link Closed
CH-95 Signal Operations AI-25: Rename sections 3.1 Draft 2 Section 14.2, 14.3, 14.4 Rename 14.2 Synchronization to Synchronous Events, 14.3 from Signal Sampling to Input Sampling, 14.4 from Signal Drives to Synchronous Drives Closed
CH-96 Signal Operations AI-26, 27, 30, 32: Rework Synchronous Drives section 3.1 Draft 2 Section 14.4 Make changes in link Closed
CH-97 Signal Operations AI-31: Add multiple clocking domain support to drive resolution 3.1 Draft 2 Section 14.4.2 Make changes in link Closed
CH-98 Signal Operations AI-33: Rework section on drives 3.1 Draft 2 Section 14.4.1 Make changes in link Closed
CH-99 Signal Operations AI-34: Add reg vs. wire distinction and support for reg and variable 3.1 Draft 2 Section 14.4.2 Make changes in link Closed
CH-100 Processes AI-44: Resolve Jay's process issues 3.1 Draft 2 Section 9.9.1, 9.9.2, 9.9.3 Make changes in link Closed
CH-101 Signal Operations AI-24: Consolidate Section 13 and 14  3.1 Draft 2 Section 13 and 14 Make changes in link Closed
CH-102 Type Add handle definition 3.1 Draft 2 Section 3.1 and Section 3.7 Make changes in link Closed
CH-103 Functions Clean-up typos from Brad 3.1 Draft 2 Section 10.1, 10.3.2, 10.5, 10.5.1, 10.5.2, 10.5.3 Make changes in link Closed
CH-104 Classes Clean-up types 3.1 Draft 2 Section 11.1, 11.3, 11.7, 11.8, 11.9, 11.10, 11.14, 11.16, 11.18, 11.20, 11.22., 11.23, 11.24 Make changes in link Closed
CH-105 String Methods Remove informative comment 3.1 Draft 2 Section C.12 Remove the "(Informative)" from the front of the chapter. Closed
CH-106 Classes Word smithing 3.1 Draft 2 Section 11.4 Make changes in link Closed
CH-107 IP Synch and Comm Clean-up 3.1 Draft 2 Sections 12.1, 12.2, 12.2.3, 12.3, 12.4, 12.4.1, 12.4.3, 12.4.4, 12.4.5, 12.4.6, 12.4.7, 12.4.8, 12.5, 12.6, 12.6.1, 12.6.4, 12.8.1, 12.9 Make changes in link Closed
CH-108 Draft 3 Fixes Complete CH-103, CH-104, CH-107 3.1 Draft 3 Sections 10.5.1, 10.5.2, 11.4, 11.18, 12.2.3, 12.4.5, 12.4.6, 12.4.8, 12.5, C.19 Make changes in link Approved, LRM
CH-109 Dynamic and associative array indices and replace var with ref Swap 3.1 Draft 3 Sections 4.6, 4.6.1, 4.6.3, 4.7, 4.8, 4.9, 4.9.1, 4.10.1, 4.10.4, 4.10.5, 4.10.6, 4.10.7, 7.3, 10.5.2, 11.17, 11.21, 12.9, 20.3, B Make changes in link Approved, LRM
CH-110 IP Synch and Comm Edit changes from review 3.1 Draft 3 Sections 11.8, 11.14, 11.16, 11.24 Make changes in link Approved, LRM
CH-111 Draft 3 Fixes Pass by reference,  String, and List declarations, Mailbox, remove public 3.1 Draft 3 Sections 3.8, 3.10, 3.13, 3.15, 10.5.2, 11.20, 12.4.2 A.2.1.3, B, C Make changes in link Approved, LRM
CH-112 Scheduling Semantics New chapter 3.1 Draft 3 Section 14 Move Chapter 13 to Chapter 14 and insert the contents of the attached PDF as Chapter 13 (before clocking domain etc…) Renumber the contents of the PDF to be consistent with Chapter 13. Remove names and information before first sub-section. Approved, LRM
CH-113 Fix CH-60, CH-84, CH-94, CH-96, CH-98, CH-100, CH-101, CH-102 Rework based on scheduling semantics and change handle to dhandle 3.1 Draft 3 Sections 3.1, 3.7, 3.15, 8.9, 9.1, 9.9, 9.9.2, 9.9.3, 11.4, 13.3, 13.12, 13.13, 13,14, 13.14.1, 13.14.2, B Make changes in link Approved, LRM
CH-114 Resolve Editor's notes Remove all resolved editor notes and resolve some others 3.1 Draft 3 Section 3.4, 3.7, 3.12, 5.7, 7.9, 8.1, 8.4.1, 8.6, 9.6, 9.7, 9.9.2, 10.3.1, 10.2.3, 11, 11.4, 11.10, 12.1, 12.4.8, 13, 13.11, 13.12, 13.14.1, 14, 15, 15.3, 16, 20, 20.2, 20.20.3, 20.21, C, C.4 Make changes in link Approved, LRM
CH-115 New List definition Replacement for Annex D 3.1 Draft 3 Annex D Make changes in link and rename to Annex C Approved, LRM
CH-116 Random Constraints Review changes 3.1 Draft 3 Section 20.1, 20.2, 20.3, 20.3.2, 20.4, 20.6, 20.7, 20.8, 20.9, 20.10, 20.11, 20.12, 20.13.1, 20.13.2,  20.13.3, 20.14, 20.15, 20.17, 20.19.1, 20.19.3, 20.20.1, 20.21, 22.3, A Make changes in link Approved, LRM
CH-117 Action Items Resolve AI-46, AI-47, AI-48, AI-56, AI-70, AI-73, AI-80, AI-84 3.1 Draft 3 Section 2.2, 2.5, 10.4, 10.5.2, 10.5.4, 11.8.1, 11.20, 12.2.3, 12.4.5, 13.2, 13.3, 13.4, 17.6, 20.15, 20.16, A Make changes in link Approved, LRM
CH-118 Edit items Minor changes 3.1 Draft 3 Sections 12.3, 13.2, 13.7, 13.8, 13.10, 13.11, 13.14 Make changes in link Approved, LRM
CH-119 Action Item AI-88 3.1 Draft 3 Sections 3.9, 8.1, 8.10, 12.6, 12.7, 12.8, 12.8.1, 12.8.2, 13.7, 13.8, 13.10, 13.11, 13.14, 23.1, 23.3, A.6.4, A.6.5 Make changes in link Approved, LRM
CH-120 Import and Export Add for SV-CC 3.1 Draft 3 Section 10.6 Make changes in link Approved, LRM
CH-121 Action Items AI-3, AI-87, AI-89, AI-90, AI-93 3.1 Draft 3 Sections 4.7, 5.3, 13.2, 13.14, 20.9 Make changes in link Approved, LRM
CH-122 Action Items AI-35, AI-36, AI-37, AI-38, AI-39, AI-40, AI-69, AI-80 3.1 Draft 3 Section 5.4, 5.5, 15 Make changes in link Approved, LRM