Advertisement
Guest User

Untitled

a guest
Sep 8th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. jamie@t2:/tmp$ cat minimal_demo.py
  2.  
  3.  
  4.  
  5. from migen import *
  6. from migen.fhdl.verilog import convert
  7.  
  8. class Test(Module):
  9. def __init__(self):
  10. self.A = Signal(4)
  11. self.B = Signal(4)
  12. self.out = Signal()
  13. self.out2 = Signal()
  14. self.comb += [
  15. If(self.A==7, If(self.B==4, self.out.eq(1))).Else(self.out.eq(0)),
  16. If(wrap(self.A==7) & wrap(self.B==4), self.out2.eq(1)).Else(self.out2.eq(0)),
  17. ]
  18.  
  19. t = Test()
  20. ios=set([t.A, t.B, t.out, t.out2])
  21. convert(t, ios=ios).write("demo.v")
  22. jamie@t2:/tmp$ cat demo.v
  23. /* Machine-generated using Migen */
  24. module top(
  25. output reg demoSignal,
  26. output reg demoDefaultHighSignal,
  27. input sys_clk,
  28. output reg sys_rst
  29. );
  30.  
  31.  
  32.  
  33. always @(posedge sys_clk) begin
  34. demoSignal <= 1'd1;
  35. demoDefaultHighSignal <= 1'd0;
  36. sys_rst <= 1'd1;
  37. if (sys_rst) begin
  38. demoSignal <= 1'd0;
  39. demoDefaultHighSignal <= 1'd1;
  40. end
  41. end
  42.  
  43. endmodule
  44. jamie@t2:/tmp$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement