>From: Brad Pierce <Brad.Pierce@synopsys.com> >The no-op semantics of Verilog out-of-bounds writes (for known indices) does seem weird. By analogy with the x-pessimism of much of the language, I would have expected maybe the entire array to be x'ed out. For known indices, this seems completely natural to me. An array was originally intended to represent a memory. If the address is fully decoded, an out-of-range address won't select this memory, so a write will have no effect. If the address is not fully decoded (i.e. the upper bits that make it out-of-range are ignored), then it should have been represented by only applying the decoded bits to the memory. Then it would have the same "wrap-around" effect as the real hardware. So I don't think this is at all weird. For unknown indexes, I agree that a no-op write is serious x-optimism. To avoid this optimism, it really should X the whole memory, or the addresses for every possible address considering X to be 0 or 1. This presumably was not done because it would be so expensive. 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 Thu May 7 11:45:47 2009
This archive was generated by hypermail 2.1.8 : Thu May 07 2009 - 11:48:01 PDT