Skip to content

Multiple Networks on Processor #9

@keegandent

Description

@keegandent

Problem(?)

The current fpga.Processor has incomplete compliance with the Framework API in that it only supports one network per processor.

Proposed Solution

It should not be too difficult to add support for multiple networks to the RTL design. The source packets will need a "network index" field, and the behavior of sink packets should be unaffected as the processor design is still synchronous.

Hurdles

  • Considering the index associated with a given network has no bearing on the performance of that network, it may be better to associate EDA projects and hashes to network combinations and not permutations, with the software handling index mapping
  • Under the assumed paradigm of a single packet structure corresponding to both networks, there is significant wasted communication bandwidth for networks with different input or output number of neurons. Heterogeneous packet structures would introduce complexity.
  • Networks will need identical processor parameters unless we want to implement compatibility logic.

Expected API Impact

This will create a non-breaking API change in various fpga.Processor methods

Metadata

Metadata

Assignees

No one assigned

    Labels

    defer/delayImpeded or irrelevant due to other issueframeworkTENNLAB Framework interoperability or API compliancertlRegister Transfer Level hardware design

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions