vram/VRAM: a little more documentation tweaking
This commit is contained in:
parent
16af267ab6
commit
23a78eee9e
|
@ -69,8 +69,10 @@ interface VRAM;
|
||||||
interface VRAMServer sprite;
|
interface VRAMServer sprite;
|
||||||
endinterface
|
endinterface
|
||||||
|
|
||||||
// mkVRAM constructs a VRAM of the requested size. Memory access is
|
// mkVRAM constructs a VRAM of the requested size. The memory size must be a multiple of
|
||||||
// spread across two internal ports as follows:
|
// 4KiB, with a maximum of 128KiB.
|
||||||
|
//
|
||||||
|
// Memory accesses are spread across two internal ports as follows:
|
||||||
//
|
//
|
||||||
// Port A: strict most-important-wins priority: CPU, then debugger,
|
// Port A: strict most-important-wins priority: CPU, then debugger,
|
||||||
// then palette DAC.
|
// then palette DAC.
|
||||||
|
@ -85,8 +87,8 @@ module mkVRAM(Integer num_kilobytes, VRAM ifc);
|
||||||
MemArbiter#(3, VRAMAddr) arbB <- mkRoundRobinMemArbiter();
|
MemArbiter#(3, VRAMAddr) arbB <- mkRoundRobinMemArbiter();
|
||||||
Vector#(3, VRAMServer) portB <- mkArbitratedVRAMServers(ram.portB, arbB);
|
Vector#(3, VRAMServer) portB <- mkArbitratedVRAMServers(ram.portB, arbB);
|
||||||
|
|
||||||
// Connect up the arbiters so they correctly prevent write-write
|
// Connect the arbiters together so they correctly prevent
|
||||||
// and write-read conflicts.
|
// write-write and write-read conflicts.
|
||||||
mkConnection(arbA, arbB);
|
mkConnection(arbA, arbB);
|
||||||
|
|
||||||
interface cpu = portA[0];
|
interface cpu = portA[0];
|
||||||
|
|
Loading…
Reference in New Issue