  Over the past decade alternative technologies have gained momentum as
conventional digital electronics continue to approach their limitations, due to
the end of Moore's Law and Dennard Scaling. At the same time, we are facing new
application challenges such as those due to the enormous increase in data. The
attention, has therefore, shifted from homogeneous computing to specialized
heterogeneous solutions. As an example, brain-inspired computing has re-emerged
as a viable solution for many applications. Such new processors, however, have
widened the abstraction gamut from device level to applications. Therefore,
efficient abstractions that can provide vertical design-flow tools for such
technologies became critical. Photonics in general, and neuromorphic photonics
in particular, are among the promising alternatives to electronics. While the
arsenal of device level toolbox for photonics, and high-level neural network
platforms are rapidly expanding, there has not been much work to bridge this
gap. Here, we present a design methodology to mitigate this problem by
extending high-level hardware-agnostic neural network design tools with
functional and performance models of photonic components. In this paper we
detail this tool and methodology by using design examples and associated
results. We show that adopting this approach enables designers to efficiently
navigate the design space and devise hardware-aware systems with alternative
technologies.
