Skip to content

Commit

Permalink
framebuffer: switch to real DMA
Browse files Browse the repository at this point in the history
  • Loading branch information
Sebastien Bourdeauducq committed Jul 6, 2012
1 parent ce82f18 commit 3add962
Showing 1 changed file with 1 addition and 21 deletions.
22 changes: 1 addition & 21 deletions milkymist/framebuffer/__init__.py
Expand Up @@ -207,25 +207,6 @@ def sim_fifo_gen():
yield t
print("H/V:" + str(t.value["hsync"]) + str(t.value["vsync"]))

class FakeDMA(Actor):
def __init__(self, port):
self.port = port
super().__init__(
("address", Sink, [("a", BV(self.port.hub.aw))]),
("data", Source, [("d", BV(self.port.hub.dw))]))

def get_fragment(self):
pixel = Signal(BV(32))
comb = [
self.endpoints["address"].ack.eq(1),
self.endpoints["data"].stb.eq(1),
self.token("data").d.eq(Replicate(pixel, 4))
]
sync = [
If(self.endpoints["data"].ack, pixel.eq(pixel + 1))
]
return Fragment(comb, sync)

class Framebuffer:
def __init__(self, address, asmiport, simulation=False):
asmi_bits = asmiport.hub.aw
Expand All @@ -237,8 +218,7 @@ def __init__(self, address, asmiport, simulation=False):
fi = ActorNode(_FrameInitiator(asmi_bits, length_bits, alignment_bits))
adrloop = ActorNode(misc.IntSequence(length_bits, asmi_bits))
adrbuffer = ActorNode(plumbing.Buffer)
#dma = ActorNode(dma_asmi.SequentialReader(asmiport))
dma = ActorNode(FakeDMA(asmiport))
dma = ActorNode(dma_asmi.SequentialReader(asmiport))
cast = ActorNode(structuring.Cast(asmiport.hub.dw, packed_pixels))
unpack = ActorNode(structuring.Unpack(pack_factor, _pixel_layout))
vtg = ActorNode(VTG())
Expand Down

0 comments on commit 3add962

Please sign in to comment.