def get_fpga_mods()

in py/run_fpga_resnet.py [0:0]


def get_fpga_mods(model):
    def append_mod(mods, m, name):
        mods.append([name, m])

    mods = []

    for m, name in zip([model.conv1, model.maxpool],
                       ['conv1', 'maxpool']):
        append_mod(mods, m, name)

    for layer, layer_name in zip([model.layer1, model.layer2, model.layer3, model.layer4],
                                 ['layer1', 'layer2', 'layer3', 'layer4']):
        for idx, seq in enumerate(layer):
            for m, name in zip([seq.conv1, seq.conv2],
                               ['conv1', 'conv2']):
                append_mod(mods, m,
                           '{}.{}.{}'.format(layer_name, idx, name))

            if (hasattr(seq, 'conv3')):
                append_mod(mods, seq.conv3,
                           '{}.{}.{}'.format(layer_name, idx, 'conv3'))

            if (seq.downsample):
                append_mod(mods, seq.downsample,
                           '{}.{}.{}.0'.format(layer_name, idx, 'downsample'))

            append_mod(mods, seq.add,
                       '{}.{}.{}'.format(layer_name, idx, 'add'))

    for m, name in zip([model.avgpool, model.fc], ['avgpool', 'fc']):
        append_mod(mods, m, name)

    return mods