Param(UintType(4, default=ConstExpr(UintType(4, default=10))), 'WIDTH')
Param(ArrayType(IntegerType(), 3), 'CONFIG')
Port(UintType(8), 'data_in', direction=IN)
Port(UintType(Param(UintType(4, default=ConstExpr(UintType(4, default=10))), 'WIDTH')), 'data_out', direction=OUT)
Port(ArrayType(UintType(16), 8), 'mem_a', direction=IN)
Port(ArrayType(UintType(16), 8), 'mem_b', direction=IN)
Port(ArrayType(UintType(32), 4), 'result_x', direction=OUT)
Port(ArrayType(UintType(32), 4), 'result_y', direction=OUT)
Port(ArrayType(ArrayType(UintType(2), 4, direction=DOWN, packed=True), 2), 'packed_unpacked', direction=IN)
