-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
defer/delayImpeded or irrelevant due to other issueImpeded or irrelevant due to other issueframeworkTENNLAB Framework interoperability or API complianceTENNLAB Framework interoperability or API compliancertlRegister Transfer Level hardware designRegister Transfer Level hardware design
Description
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
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
defer/delayImpeded or irrelevant due to other issueImpeded or irrelevant due to other issueframeworkTENNLAB Framework interoperability or API complianceTENNLAB Framework interoperability or API compliancertlRegister Transfer Level hardware designRegister Transfer Level hardware design