Source code for hwtLib.examples.errors.unusedSubunit

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from hwt.hwIOs.std import HwIOSignal
from hwt.hwModule import HwModule
from hwt.pyUtils.typingFuture import override


[docs] class ExampleChild(HwModule): @override def hwDeclr(self): self.c = HwIOSignal() self.d = HwIOSignal()._m() @override def hwImpl(self): self.d(self.c)
[docs] class UnusedSubunit(HwModule): @override def hwDeclr(self): self.a = HwIOSignal() self.b = HwIOSignal()._m() self.child = ExampleChild() @override def hwImpl(self): # self.child left unconnected -> error self.b(self.a)
[docs] class UnusedSubunit2(HwModule): @override def hwDeclr(self): self.a = HwIOSignal() self.b = HwIOSignal()._m() self.child0 = ExampleChild() self.child1 = ExampleChild() self.child2 = ExampleChild() @override def hwImpl(self): # chain of children is left unconnected -> error self.b(self.a) self.child1.c(self.child0.d) self.child2.c(self.child1.d)
if __name__ == "__main__": from hwt.synth import to_rtl_str m = UnusedSubunit2() # hwt.serializer.exceptions.SerializerException print(to_rtl_str(m))