Document RFC 62.

This includes a few minor code changes:
- Removing redundant `lib.memory.Memory.Init = hdl.MemoryData.Init`
  re-export;
- Renaming `FrozenError` to `FrozenMemory` and moving it to `.hdl`;
- Marking `ReadPort` and `WritePort` as `@final`.
This commit is contained in:
Catherine 2024-04-09 15:21:02 +00:00
parent 38ad35757b
commit 7dd93bea57
5 changed files with 105 additions and 44 deletions

View file

@ -439,15 +439,15 @@ class MemoryTestCase(FHDLTestCase):
m = memory.Memory(shape=unsigned(8), depth=4, init=[])
m.write_port()
m.elaborate(None)
with self.assertRaisesRegex(memory.FrozenError,
with self.assertRaisesRegex(memory.FrozenMemory,
r"^Cannot add a memory port to a memory that has already been elaborated$"):
m.write_port()
with self.assertRaisesRegex(memory.FrozenError,
with self.assertRaisesRegex(memory.FrozenMemory,
r"^Cannot add a memory port to a memory that has already been elaborated$"):
m.read_port()
with self.assertRaisesRegex(memory.FrozenError,
with self.assertRaisesRegex(memory.FrozenMemory,
r"^Cannot set 'init' on a memory that has already been elaborated$"):
m.init = [1, 2, 3, 4]
with self.assertRaisesRegex(memory.FrozenError,
with self.assertRaisesRegex(memory.FrozenMemory,
r"^Cannot set 'init' on a memory that has already been elaborated$"):
m.init[0] = 1