Skip to content

Commit

Permalink
📚 Presentation outline plan
Browse files Browse the repository at this point in the history
  • Loading branch information
daquintero committed Jun 10, 2024
1 parent 4dd8f46 commit 673b121
Show file tree
Hide file tree
Showing 6 changed files with 65 additions and 21 deletions.
Binary file added docs/_static/resources/fsic_2024_presentation.odp
Binary file not shown.
3 changes: 3 additions & 0 deletions docs/examples/10_demo_full_flow/10_demo_full_flow.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# # `piel` Electronic-Photonic Co-Design - Full Flow Demo

# The goal of this notebook is to demonstrate some of the codesign functionality in a photonics-first electronically-specified system.
34 changes: 26 additions & 8 deletions docs/resources/fsic_2024_presentation/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,30 @@ FSIC 2024 Talk Outline

This page involves the outline and resources related to of the presentation: *Integrating Mixed-Signal Microelectronics and Photonics: A Co-Design Approach with piel* for the `2024 Free Silicon Conference (FSiC) <https://wiki.f-si.org/index.php/FSiC2024>`_.

- What?
- python library, container of a collection of examples of co-design flows, and useful functions that streamline interaction between toolsets specifically for co-design, proper dependency management for reproducibility*

Outline
^^^^^^^^

- Motivation
- Why co-design?
- Basic applications of photonics and electronics TODO add ref to codesign flows
- Opto-electronic control (system diagram with picture referencing Joel's paper)
- Electro-optic control (system diagram referencing neuromorphic photonic systems)
- Modelling concurrent photonic-electronic systems
- Diagram picture here.
- This is what we want to model.
- Introduction to ``piel``
- Python library, container of a collection of examples of co-design flows, and useful functions that streamline interaction between toolsets specifically for co-design, proper dependency management for reproducibility*
- Uses existing functionality from toolsets, aims to proper dependency management functions and interactions so you don't get horrible conflicts.
- Why?
- applications of electronic-photonic systems. Massive pain of proprietary toolsets, not easy to interact with.
- Power of open source PDKs in this context.
- Was working on quantum photonic systems and it was a massive pain to simulate how the system behaved.
- How?
-
- Why?
- Applications of electronic-photonic systems. Massive pain of proprietary toolsets, not easy to interact with.
- Power of open source PDKs in this context.
- Was working on quantum photonic systems and it was a massive pain to simulate how the system behaved.
- TODO possibly talk about design flows if need be
- Let's go through an example.
- Create a 10_full_flow example.
- Say, we have an optical function we want to demonstrate or implement, extract the logic for that.
- Go through the flow of implementing that logic via amaranth, syntheziging that logic via openlane, extracting performance parameters accordingly, modelling the analog amplifier accordingly and implementing it via gdsfactory with sky130
- Model the component with analog, digital circuits simulators accordingly. In the future, add the mixed-signal with full-concurrency for photonic time-domain signals.
- This is a good example.
- We can explore say, a cocotb-signal being used to model the transmission of a photonic network.
4 changes: 2 additions & 2 deletions docs/resources/index.rst
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
**************************
Resources & Presentations
Resources
**************************

This page contains a collection of resources related to `piel` in some form.
This page contains a collection of resources related to ``piel`` in some form.

.. toctree::
:maxdepth: 2
Expand Down
43 changes: 33 additions & 10 deletions docs/sections/codesign/principles/interactions/flows.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,39 @@ Design Flows
Let's consider the fundamental principles between electronic-photonic codesign flows, and the corresponding modelling at each stage.
In this section, we will explore some design flow relationships between co-designed systems.

In pure mixed-signal microelectronics, there are already some established design flows normally for systems in the same chip.

For example:
- `Cadence Mixed-Signal Implementation Options <https://www.cadence.com/en_US/home/solutions/mixed-signal-solutions/mixed-signal-implementation.html.html>`_
- `Cadence Verification Overview Whitepaper - Demystifying Mixed-Signal Simulation for Digital Verification Engineers <https://www.cadence.com/en_US/home/resources/white-papers/demystifying-mixed-signal-simulation-for-digital-verification-engineers-wp.html>`_

There is also some further work in the direction of silicon chiplet design, where different chips are connected together in an interposer to form a system rather than on a single-die. This is pretty handy for multi technology chips.

For example,
- `Building An Open Chiplet Economy <https://www.opencompute.org/blog/building-an-open-chiplet-economy>`_
- `ZeroAsic Chiplet Solution <https://www.zeroasic.com/>`_

Eventually, in photonics, we will want to jump on this bandwagon, and there is some movement in this direction anyways.

So let's summarise the existing mixed-signal design flows we know from these above:

.. list-table::
:widths: 40 60
:header-rows: 1

* - Name
- Description
- References
* - Analogue-on-Top
-
- `In Cadence <https://www.cadence.com/en_US/home/solutions/mixed-signal-solutions/mixed-signal-implementation.html.html>`_
* - Digital-on-Top
-
- `In Cadence <https://www.cadence.com/en_US/home/solutions/mixed-signal-solutions/mixed-signal-implementation.html.html>`_
* - Mixed-Signal-on-Top
-
- `In Cadence <https://www.cadence.com/en_US/home/solutions/mixed-signal-solutions/mixed-signal-implementation.html.html>`_

Domain Principles
^^^^^^^^^^^^^^^^^^

Expand All @@ -14,13 +47,3 @@ The photonics domain can be divided into passive photonics, not discussed here,
Frequently, an analogue electronic signal drives or is generated by an *active* photonic device. For now, we will concern ourselves with analogue electronic signals that operate at multiple order of magnitude below of the frequencies of tera-hertz optical electromagnetic signals. However, there has been much research into the interaction of terahertz electronics and photonics which has led to interesting physical effects and applications, but maybe we discuss this in another section.

If we are interacting with these analogue signals through a modern computer, it means that we are *discretising* the analogue signals. In many applications, we need to consider the digital-logic control or readout of analogue signals from a photonic system.

Common Examples
^^^^^^^^^^^^^^^^

Let's explore some common design flows in the context of common design examples:

Controlling a electro-optic switch lattice
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Many integrated electronic-photonic systems involve this application implementation: such as neuro-morphic AI systems, HPC matrix multipliers, data-center transceivers, quantum-photonic interferometers, etc. See the applications page for reference. TODO add link.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ A primer on common photonic-electronic systems

We will explore some common photonic-electronic systems and discuss the design flows involved afterwards.

An Opto-electronic System
An Opto-Electronic System
^^^^^^^^^^^^^^^^^^^^^^^^^^

A relatively-common system is one where an electronic signal is generated from a photonic device. This involves the readout of photodetectors such as silicon photodiodes, photoresistors, or more-quantum-focused single-photon detectors such as superconducting nanowires. TODO ref.
Expand Down

0 comments on commit 673b121

Please sign in to comment.