package Top; import GetPut::*; import UART::*; (* always_enabled *) interface Top; (* prefix="" *) method Action rx_in((* port="rx_in" *) bit b); method bit tx_out(); method Bit#(8) leds(); endinterface (* synthesize *) module mkTop(Top); let _ret <- mkUART(100_000_000, 115_200); disableFlowControl(_ret); Reg#(Bit#(8)) leds_out <- mkReg(0); rule recv; let b <- _ret.receive.get(); _ret.send.put(b); leds_out <= b; endrule method rx_in = _ret.phy.rx_in; method tx_out = _ret.phy.tx_out; method leds = leds_out._read; endmodule endpackage