Skip to content

Commit

Permalink
Specify absolute path correctly
Browse files Browse the repository at this point in the history
  • Loading branch information
williamyang98 committed Feb 7, 2025
1 parent 0b7ccf6 commit 81039bc
Show file tree
Hide file tree
Showing 14 changed files with 93 additions and 93 deletions.
4 changes: 2 additions & 2 deletions docs/content/docs/design/flex_pcb.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,15 @@ Flex PCB polyimide material comes in several varieties.
Flex pcb requires handling transition of transmission line from FR4 stackup to flex PCB stackup.
- Requires careful design to avoid impedance discontinuities at flex PCB connection.
- Involves designing transmission line tapers to maintain impedance target across connector transition.
- [Transmission line design]({{< abs_url link="/docs/design/transmission_line" >}})
- [Transmission line design]({{< abs_url link="docs/design/transmission_line" >}})

### Transmission line design on flex pcb
Flex pcb has a very thin dielectric core for easy bending.
- Thin dielectric means transmission line needs to be designed with extremely thin traces.
- Calculations with a solid ground plane puts trace width at < 0.05mm which is not manufacturable.
- Requires using a hatched ground plane to achieve target impedance at manufacturable 0.1mm trace width.
- Hatched ground plane needs very careful design considerations and is not trivial to design.
- [Hatched ground plane design]({{< abs_url link="/docs/design/hatched_ground_plane" >}})
- [Hatched ground plane design]({{< abs_url link="docs/design/hatched_ground_plane" >}})

### Design and manufacturing complexity
Additional complexity due to multiple boards.
Expand Down
8 changes: 4 additions & 4 deletions docs/content/docs/design/transmission_line/flex_connection.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,8 @@ Transitioning our transmission line from an FR4 stackup to a flexible PCB stacku

### Hatched ground plane
If the transmission line signal traces have the same width, using a suitably designed hatched ground plane will increase the impedance to meet our impedance target.
- See [designing hatched ground plane](/docs/design/transmission_line/hatched_ground_plane) for more details.
- See [simulating hatched ground plane](/docs/design/open_ems/hatched_ground) for more details.
- See [designing hatched ground plane]({{< abs_url link=docs/design/transmission_line/hatched_ground_plane >}}) for more details.
- See [simulating hatched ground plane]({{< abs_url link=docs/design/open_ems/hatched_ground >}}) for more details.

## Vertical transmission line connection
{{< responsive_image key="jlcpcb_stackup_connection" >}}
Expand All @@ -121,7 +121,7 @@ Transition from FR4 stackup to flexible PCB involves a vertical solder connectio
- The E-fields between the signal traces and ground planes have to switch layers.
- Broadside coupling means stronger E-fields and more energy being carried compared to the coplanar ground traces which use edge coupling.
- Capacitive coupling is greater through a broadside connection since the traces are 0.1mm wide, compared to the edge side coupling which occurs over a 0.012mm or 0.035mm
- This was verified through an [open EMS simulation]({{< abs_url link="/docs/design/open_ems/" >}}).
- This was verified through an [open EMS simulation]({{< abs_url link="docs/design/open_ems/" >}}).

### Tapered connection
{{< responsive_image key="flex_pcb_transmission_line_taper" >}}
Expand All @@ -134,7 +134,7 @@ A taper is a gradual change in the geometry of a transmission line that attempts
- Linear taper just requires the polyline tool in KiCAD.

### Parametric optimisation of taper
To verify the performance of the taper [openEMS]({{< abs_url link="/docs/design/open_ems/taper" >}}) was used.
To verify the performance of the taper [openEMS]({{< abs_url link="docs/design/open_ems/taper" >}}) was used.
- Simulated stackup with flex PCB connected to FR4 transmission line as a 3 layer board.
- Layers were: ```[FR4 ground, signal traces, flex PCB ground]```.
- The soldered signal traces were approximated as an ideal single trace on a single layer.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ params:
- No easy equation to get impedance measurement (fill factor approximation does not model this adequately).
- Design of hatched ground plane must meet manufacturing capabilities of JLCPCB.
- Requires parametric search with simulation software.
- Refer to this section about simulating circuits with [openEMS]({{< abs_url link="/docs/design/open_ems/hatched_ground" >}}).
- Refer to this section about simulating circuits with [openEMS]({{< abs_url link="docs/design/open_ems/hatched_ground" >}}).

## Determining parameters
There are three major parameters to consider:
Expand All @@ -28,8 +28,8 @@ There are three major parameters to consider:

Since we need to be above the minimum trace width for JLCPCB to manufacture it, we should select a fixed trace width of 0.1mm.
- This is similar the trace width of 0.13mm for our transmission line on the FR4 substrate for both the M.2 cad and Oculink port board.
- This means we will have an easier time designing a taper geometry when connecting the flex connector to our boards (discussed [here]({{< abs_url link="/docs/design/transmission_line/flex_connection" >}})).
- This means we will have an easier time designing a taper geometry when connecting the flex connector to our boards (discussed [here]({{< abs_url link="docs/design/transmission_line/flex_connection" >}})).
- Means we only need to perform a parametric search with two variables (the hatch width and gap) which is less time consuming.

## Additional design considerations
Refer to minimising [intra-pair skew]({{< abs_url link="/docs/design/transmission_line/skew_requirements#hatched-ground-plane" >}}) for hatched ground planes and differential pairs.
Refer to minimising [intra-pair skew]({{< abs_url link="docs/design/transmission_line/skew_requirements#hatched-ground-plane" >}}) for hatched ground planes and differential pairs.
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ The following are phenomena that can contribute to intra-pair skew and methods t
- Here is a pdf from Isola group who are a copper clad laminate and prepreg materials manufacturer.
- {{< pdf_link key="isola_group_fibre_weave_patterns" >}}
- It contains various high quality images of fibre weave patterns and their fill factor measurements.
- They also include treatment processes for bonding the prepreg and core to copper layers and how that effects the copper smoothness which is relevant for [skin effect]({{< abs_url link="/docs/design/transmission_line/skin_effect" >}}).
- They also include treatment processes for bonding the prepreg and core to copper layers and how that effects the copper smoothness which is relevant for [skin effect]({{< abs_url link="docs/design/transmission_line/skin_effect" >}}).


#### JLCPCB controlled impedance stackup
Expand Down
2 changes: 1 addition & 1 deletion docs/content/docs/design/transmission_line/structures.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Given our tight routing requirements our PCIe lanes would be extremely close tog
- Adding a ground plane to confine the electric field generated by the differential pair (almost always helps).
- Adding coplanar guard traces to separate adjacent lanes and add additional E-field confinement.
- Sometimes can worsen crosstalk if guard trace is high impedance and functions closer to a resonant tank than a ground trace.
- Can be improved by turning coplanar guard traces into a [via fence]({{< abs_url link="/docs/design/via_fence" >}}) by stitching them to a ground plane
- Can be improved by turning coplanar guard traces into a [via fence]({{< abs_url link="docs/design/via_fence" >}}) by stitching them to a ground plane
- This guarantees coplanar guard trace is low impedance.
- Also adds additional grounding with vias which further improves E-field confinement and prevents inter-lane crosstalk.

Expand Down
2 changes: 1 addition & 1 deletion docs/content/docs/design/transmission_line/via_jumps.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ params:
- There is no closed form equation for the impedance of a coaxial via with a teardrop taper.
- This means running a parametric search through a simulation to determine the optimal parameter values.
- Very difficult to do given the number of parameters for the coaxial via and teardrop taper which all impact performance.
- Refer to this section about simulating circuits with [openEMS]({{< abs_url link="/docs/design/openEMS" >}}).
- Refer to this section about simulating circuits with [openEMS]({{< abs_url link="docs/design/openEMS" >}}).

## Via stubs
{{< responsive_image key="sierra_express_via_stub_back_drilling" >}}
Expand Down
2 changes: 1 addition & 1 deletion docs/content/docs/manufacturing/electrical_testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ params:
## Single board validation
- Oculink port has a small pitch of 0.2mm which can easily create solder bridges.
- Validate this by connecting the Oculink port to the unpowered PCIe eGPU board.
- Refer to [M.2 pinout]({{< abs_url link="/docs/specifications/components/" >}}) and [PCIe pinout]({{< abs_url link="/docs/specifications/pcie_specification/" >}}) for the electrical connections to test for.
- Refer to [M.2 pinout]({{< abs_url link="docs/specifications/components/" >}}) and [PCIe pinout]({{< abs_url link="docs/specifications/pcie_specification/" >}}) for the electrical connections to test for.
- Depending on the design the PCIe lanes may be connected in opposite polarity and/or in opposite orders.
- Check for short circuits and bad connections.
- Use a magnifying glass to position multimeter probes onto the exposed electrical contacts.
Expand Down
4 changes: 2 additions & 2 deletions docs/content/docs/manufacturing/reflow_soldering.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The Mechanic IX5 can be used to follow an arbitrary reflow profile (including th
3. Place oculink port carefully onto SMD pads as to align them correctly.
4. Follow reflow profile with a target temperature of 220°C and keep it there for 60 seconds before ramping it down.
5. Visually confirm that there are no solder bridges on visible connections.
6. Validate that there are no shorts or bad connections following [electrical testing]({{< abs_url link="/docs/manufacturing/electrical_testing" >}}).
6. Validate that there are no shorts or bad connections following [electrical testing]({{< abs_url link="docs/manufacturing/electrical_testing" >}}).
- Due to simple design of circuit the complications should only occur with the Oculink port itself.
- Here excessive or insufficient solder paste can result in short circuits or a missing electrical connection.
- Repeat steps 1 to 5 until the Oculink port is soldered correctly.
Expand Down Expand Up @@ -71,7 +71,7 @@ This process is only required for the two part board which is connected over the
- Since there are no spring contacts, the z-height tolerance of the connection is very low.
- To guarantee a good electrical connection the reflow process has to occur while the pads are under compressive pressure.
- Be careful not to disturb the existing connections such as the Oculink port and capacitors.
10. Perform electrical tests as described in [electrical testing]({{< abs_url link="/docs/manufacturing/electrical_testing" >}}).
10. Perform electrical tests as described in [electrical testing]({{< abs_url link="docs/manufacturing/electrical_testing" >}}).
- This is done to make sure shorts don't occur due at the flexible PCB connection with the Oculink port board.
- If shorts do occur at this step repeat steps 1 to 10 with less solder on the pads.
- If these is a missing electrical connection make sure that sufficient pressure has been applied during reflow.
Expand Down
8 changes: 4 additions & 4 deletions docs/content/docs/results/discussion.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ sequenceDiagram;
{{< carousel key="custom_adapters" >}}
<div class="carousel-item">
<div class="responsive-image">
<img src="{{< abs_url link=/images/diagrams/kicad_single_board_render.png >}}" style="max-height: 200px">
<img src="{{< abs_url link=images/diagrams/kicad_single_board_render.png >}}" style="max-height: 200px">
</div>
</div>
<div class="carousel-item">
<div class="responsive-image">
<img src="{{< abs_url link=/images/diagrams/kicad_flex_connector_render.png >}}" style="max-height: 220px">
<img src="{{< abs_url link=images/diagrams/kicad_flex_connector_render.png >}}" style="max-height: 220px">
</div>
</div>
{{< /carousel >}}
Expand All @@ -45,12 +45,12 @@ sequenceDiagram;
{{< carousel key="aliexpress_adapters" >}}
<div class="carousel-item">
<div class="responsive-image">
<img src="{{< abs_url link=/images/diagrams/adtlink_f4c_m2_to_oculink_adapter_photo.png >}}">
<img src="{{< abs_url link=images/diagrams/adtlink_f4c_m2_to_oculink_adapter_photo.png >}}">
</div>
</div>
<div class="carousel-item">
<div class="responsive-image">
<img src="{{< abs_url link=/images/diagrams/aliexpress_m2_oculink_pcie4_extension.png >}}" style="max-height: 220px">
<img src="{{< abs_url link=images/diagrams/aliexpress_m2_oculink_pcie4_extension.png >}}" style="max-height: 220px">
</div>
</div>
{{< /carousel >}}
Expand Down
Loading

0 comments on commit 81039bc

Please sign in to comment.