self.bridge_pads = UARTPads()
# # #
-
+
# Route rx pad:
# when sel==0, route it to shared rx and bridge rx
# when sel==1, route it only to bridge rx
"write": 0x01,
"read": 0x02
}
+
def __init__(self, pads, clk_freq, baudrate=115200, share_uart=False):
self.wishbone = wishbone.Interface()
if share_uart:
self._sel = CSRStorage()
-
- # # #
-
+
+ # # #
+
if share_uart:
mux = UARTMux(pads)
uart = UARTPHYSerial(mux.bridge_pads, clk_freq, baudrate)
data_sink.ack.eq(fifo.sink.ack),
fifo.source.ack.eq(fifo.fifo.level >= self.offset),
- If(trigger_sink.stb & trigger_sink.hit, NextState("POST_HIT_RECORDING"))
+ If(trigger_sink.stb & trigger_sink.hit,
+ NextState("POST_HIT_RECORDING")
+ )
)
fsm.act("POST_HIT_RECORDING",
self.post_hit.eq(1),
If(self.qualifier,
- fifo.sink.stb.eq(trigger_sink.stb & trigger_sink.hit & data_sink.stb)
+ fifo.sink.stb.eq(trigger_sink.stb &
+ trigger_sink.hit &
+ data_sink.stb)
).Else(
fifo.sink.stb.eq(data_sink.stb)
),
fifo.sink.data.eq(data_sink.data),
data_sink.ack.eq(fifo.sink.ack),
- If(~fifo.sink.ack | (fifo.fifo.level >= self.length), NextState("IDLE"))
+ If(~fifo.sink.ack | (fifo.fifo.level >= self.length),
+ NextState("IDLE")
+ )
)
"la": 17
}
csr_map.update(SoC.csr_map)
+
def __init__(self, platform):
clk_freq = int((1/(platform.default_clk_period))*1000000000)
SoC.__init__(self, platform, clk_freq,
for i in range(8):
io.write(led_data)
time.sleep(i*i*0.0020)
- led_data = (led_data<<1)
+ led_data = (led_data << 1)
# Led >>
ledData = 128
for i in range(8):
io.write(led_data)
time.sleep(i*i*0.0020)
- led_data = (led_data>>1)
+ led_data = (led_data >> 1)
def main(wb):
# XXX : sys_clk must be faster than capture_clk, add Converter on data to remove this limitation
if self.clk_domain is not "sys":
self.submodules.fifo = AsyncFIFO(self.sink.description, 32)
- self.submodules += RenameClockDomains(self.fifo, {"write": self.clk_domain, "read": "sys"})
+ self.submodules += RenameClockDomains(self.fifo,
+ {"write": self.clk_domain, "read": "sys"})
self.comb += Record.connect(sink, self.fifo.sink)
sink = self.fifo.source
return r
def generate_version(self):
- r = "$version\n"
+ r = "$version\n"
r += "\tmiscope VCD dump\n"
r += "$end\n"
return r
def generate_comment(self):
- r = "$comment\n"
+ r = "$comment\n"
r += self.comment
r += "\n$end\n"
return r
def generate_timescale(self):
- r = "$timescale "
+ r = "$timescale "
r += self.timescale
r += " $end\n"
return r
def generate_scope(self):
- r = "$scope "
+ r = "$scope "
r += self.timescale
r += " $end\n"
return r
return r
def generate_unscope(self):
- r = "$unscope "
+ r = "$unscope "
r += " $end\n"
return r
def generate_enddefinitions(self):
- r = "$enddefinitions "
+ r = "$enddefinitions "
r += " $end\n"
return r
def generate_dumpvars(self):
- r = "$dumpvars\n"
+ r = "$dumpvars\n"
for var in self.vars:
r += "b"
r += dec2bin(var.val, var.width)