We have a user who has found that different tools are disagreeing on whether a mixture of procedural and continuous assignments are allowed to different bits of a packed struct or array. IEEE Std 1800-2005 6.7 has the statement "It shall be an error to have a packed structure or array type written with a mixture of procedural and continuous assignments." This seems to forbid it, but could be interpreted as referring to an assignment to the packed object name, rather than the members or elements of it. Also, it does not match the sentence just ahead of this, which says "Multiple assignments made to independent elements of a variable are examined individually." Since different members of a packed struct or different elements of a packed array are independent, this says that they would be examined individually, so no restrictions would apply between them. There is also the description in the previous paragraph about the restriction being based on the longest static prefix. This restriction does not distinguish between packed and unpacked types. I do not see any technical reason to restrict this for packed structures and arrays, any more than for unpacked ones. The only difference I can see is that a packed object can also be written as the whole vector. That means an additional way that the bits can be referenced, and this must be taken into account when checking that the same bits are not written in two separate ways. Perhaps the quoted sentence was trying to say something about that. Does anyone know the original intent of this text and the reasons behind it? 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 Fri Sep 14 11:45:15 2007
This archive was generated by hypermail 2.1.8 : Fri Sep 14 2007 - 11:45:39 PDT