LCG.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/usr/bin/python3
  2. # This file was automatically generated from drawio2cbd with the command:
  3. # /home/red/git/DrawioConvert/__main__.py LCG.xml -av -F CBD -e LCG -t 100
  4. from CBD.CBD import *
  5. from CBD.lib.std import *
  6. from CBD.lib.endpoints import SignalCollectorBlock
  7. class LCG(CBD):
  8. def __init__(self, block_name, a=(1), c=(4), x0=(0), m=(9)):
  9. CBD.__init__(self, block_name, input_ports=[], output_ports=[])
  10. # Create the Blocks
  11. self.addBlock(ConstantBlock("a", value=(a)))
  12. self.addBlock(ConstantBlock("x0", value=(x0)))
  13. self.addBlock(ConstantBlock("c", value=(c)))
  14. self.addBlock(ConstantBlock("m", value=(m)))
  15. self.addBlock(DelayBlock("delay"))
  16. self.addBlock(ProductBlock("mult"))
  17. self.addBlock(AdderBlock("sum"))
  18. self.addBlock(ModuloBlock("mod"))
  19. self.addBlock(SignalCollectorBlock("collector"))
  20. # Create the Connections
  21. self.addConnection("x0", "delay", output_port_name='OUT1', input_port_name='IC')
  22. self.addConnection("a", "mult", output_port_name='OUT1', input_port_name='IN1')
  23. self.addConnection("delay", "mult", output_port_name='OUT1', input_port_name='IN2')
  24. self.addConnection("mult", "sum", output_port_name='OUT1', input_port_name='IN1')
  25. self.addConnection("c", "sum", output_port_name='OUT1', input_port_name='IN2')
  26. self.addConnection("m", "mod", output_port_name='OUT1', input_port_name='IN2')
  27. self.addConnection("sum", "mod", output_port_name='OUT1', input_port_name='IN1')
  28. self.addConnection("mod", "delay", output_port_name='OUT1', input_port_name='IN1')
  29. self.addConnection("mod", "collector", output_port_name='OUT1', input_port_name='IN1')