Files
awesome-electronics/contributing.md
2024-01-08 18:00:07 -03:00

4.8 KiB

Contribution Guidelines

Table of Contents

Adding to this list

Please ensure your pull request adheres to the following guidelines:

  • Search previous suggestions before making a new one, as yours may be a duplicate.
  • Make an individual pull request for each suggestion.
  • Use title-casing (AP style).
  • Use the following format: [Link Name](link)
  • Link additions should be added to the bottom of the relevant category.
  • New categories or improvements to the existing categorization are welcome.
  • Check your spelling and grammar.
  • The pull request and commit should have a useful title.

Thank you for your suggestions!

Adding something to an awesome list

If you have something awesome to contribute to an awesome list, this is how you do it.

You'll need a GitHub account!

  1. Access the awesome list's GitHub page. For example: https://github.com/sindresorhus/awesome
  2. Click on the readme.md file: Step 2 Click on Readme.md
  3. Now click on the edit icon. Step 3 - Click on Edit
  4. You can start editing the text of the file in the in-browser editor. Make sure you follow guidelines above. You can use GitHub Flavored Markdown. Step 4 - Edit the file
  5. Say why you're proposing the changes, and then click on "Propose file change". Step 5 - Propose Changes
  6. Submit the pull request!

Updating your Pull Request

Sometimes, a maintainer of an awesome list will ask you to edit your Pull Request before it is included. This is normally due to spelling errors or because your PR didn't match the awesome-* list guidelines.

Here is a write up on how to change a Pull Request, and the different ways you can do that.

EDAs category description

Simulation

EDA tools allow designers to simulate the behavior of electronic circuits before they are physically built. This helps in identifying and addressing potential issues and optimizing the performance of the design.

HDL & Synthesis

EDA tools that support languages like Verilog and VHDL, which are used to describe the functionality and behavior of digital circuits and systems. The synthesis process involves translating a high-level description of a circuit into a netlist or a set of low-level components. This is a crucial step in the design flow, especially for digital circuits.

Verification

This involves checking the correctness and functionality of a design through various techniques, including formal verification, timing, and testing. EDA tools are used to analyze the timing characteristics of a design, ensuring that signals meet the required timing constraints.

PCB design

It involves creating the physical layout of components and their interconnections on a PCB (Printed Circuit Board). It translates the logical and functional aspects of a circuit design into a tangible, manufacturable form. Key aspects of EDA with PCB design capabilities are:

  • Component Placement: Such as integrated circuits (ICs), resistors, capacitors, and connectors, onto the PCB.
  • Routing: involves creating the copper traces that connect the pins of different components on the PCB. EDAs for PCB design can verifi aspects such as signal integrity, impedance matching, minimizing electromagnetic interference (EMI), and avoiding signal crosstalk.
  • Design Rule Check (DRC): EDA tools perform design rule checks to ensure that the layout adheres to the manufacturer's specifications and constraints.7
  • Gerber Files: After the PCB layout is complete and verified, Gerber files are generated. These files contain the information needed for PCB fabrication, including copper layers, silkscreen, and solder mask.
  • 3D Visualization: Some advanced EDA tools offer 3D visualization features, allowing designers to view the PCB layout in a three-dimensional space.