Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
eine committed Feb 5, 2020
0 parents commit b319045
Show file tree
Hide file tree
Showing 49 changed files with 1,419 additions and 0 deletions.
51 changes: 51 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Contributing

Contributions are welcome!

## Adding a resource

Most awesome lists are written in a single long Markdown file (see [awesome-list](https://github.com/topics/awesome-list)). However, in this repository each resource is described in a separate Markdown file (see [content/items](../content/items)). The frontmatter is used to provide data about the resource, while the body can contain a long description. The prototype of the frontmatter is the following:

```yml
---
title: "name of the tool"
description: "description"
author: ["first author", "second author"]
links:
gh: "https://github.com/user/repo"
gl: "https://gitlab.com/user/repo"
web: "https://example.com"
docs: "https://doc.example.com"
tags: [
"a_tag",
"another_tag"
]
categories: [
"a_category"
]
---

Long description of the resource
```

> NOTE: links are optional, and non-exclusive.
Further guidelines:

* Add one resource/file per pull request and explain why it is awesome.
* Keep descriptions in the frontmatter concise.
* See list of defined categories in [config.yml](../config.yml).
* Add a new category if needed. If done, a description of the category must be included.
* Regular chores:
* Search previous suggestions before making a new one.
* Check spelling and grammar.
* Remove any trailing whitespace.

## Modifying the site/theme

The website is built with [Hugo](https://github.com/gohugoio/hugo), using a theme based on [Bare Hugo](https://github.com/orf/bare-hugo-theme). The theme is a submodule of the `master` branch. However, at the same time, the customized version is hosted in branch `theme` of this same repo. Hence, users willing to contribute to the theme need to:

- Clone this repo recursively, or `git submodule init` and `git submodule update`.
- Change directory to `themes/bare-hugo-theme`.
- Make changes, commit them and push a feature branch.
- Open a pull request againt branch `theme`, NOT `master`.
46 changes: 46 additions & 0 deletions .github/workflows/site.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: 'site'

on:
push:
pull_request:
schedule:
- cron: '0 0 * * 5'

jobs:
site:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
with:
submodules: recursive
- name: Get Hugo and Theme
run: |
curl -fsSL https://github.com/gohugoio/hugo/releases/download/v0.62.1/hugo_extended_0.62.1_Linux-64bit.tar.gz | sudo tar xzf - -C /usr/local/bin hugo
sudo chmod +x /usr/local/bin/hugo
- name: Build site
run: |
hugo version
hugo
- uses: actions/upload-artifact@master
with:
name: site
path: public
- name: 'publish site to gh-pages'
if: github.event_name != 'pull_request' && github.repository == 'hdl/awesome'
env:
GH_DEPKEY: ${{ secrets.GHA_DEPLOY_KEY }}
run: |
cd public/
touch .nojekyll
git init
git add .
git config --local user.email "push@gha"
git config --local user.name "GHA"
git commit -a -m "update ${{ github.sha }}"
git remote add origin "git@github.com:${{ github.repository }}"
eval `ssh-agent -t 60 -s`
echo "$GH_DEPKEY" | ssh-add -
mkdir -p ~/.ssh/
ssh-keyscan github.com >> ~/.ssh/known_hosts
git push -u origin +HEAD:gh-pages
ssh-agent -k
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "themes/bare-hugo-theme"]
path = themes/bare-hugo-theme
url = https://github.com/hdl/awesome
41 changes: 41 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# CC0 1.0 Universal

CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.

### Statement of Purpose

The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").

Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.

For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.

1. __Copyright and Related Rights.__ A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:

i. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;

ii. moral rights retained by the original author(s) and/or performer(s);

iii. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;

iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;

v. rights protecting the extraction, dissemination, use and reuse of data in a Work;

vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and

vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.

2. __Waiver.__ To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.

3. __Public License Fallback.__ Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.

4. __Limitations and Disclaimers.__

a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.

b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.

c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.

d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.
27 changes: 27 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
**This repository is in a very early planning phase, and it was uploaded in order to gather feedback from the community. This branch should be expected to be force-pushed without prior notice. We encourage users/contributors/collegues to open issues to bring up the matters for discussion before contributing modifications.**

# Awesome resources for Hardware Description

<p align="center">
<a title="hdl.github.io/awesome" href="https://hdl.github.io/awesome"><img src="https://img.shields.io/website.svg?label=hdl.github.io%2Fawesome&longCache=true&style=flat-square&url=http%3A%2F%2Fhdl.github.io%2Fawesome%2Findex.html"></a><!--
-->
<a title="'site' workflow Status" href="https://github.com/hdl/swesome/actions?query=workflow%3Asite"><img alt="'site' workflow Status" src="https://img.shields.io/github/workflow/status/hdl/awesome/site?longCache=true&style=flat-square&label=CI%20site"></a><!--
-->
<a title="CC0 - Public Domain" href="https://github.com/hdl/awesome/blob/master/LICENSE.md"><img src="https://img.shields.io/github/license/hdl/awesome.svg?longCache=true&style=flat-square"></a><!--
-->
</p>

A curated list of awesome tools, frameworks, IP cores, libraries, and more!

If you miss any project, check the [issues and pull requests](https://github.com/HDL/awesome/issues?utf8=%E2%9C%93&q=) of this repo. Some proposals might be kept on hold until they get enough reaction from the community. Should it still be missing, open a [Pull Request](https://github.com/HDL/awesome/compare)! See [CONTRIBUTING](./github/CONTRIBUTING.md) for guidelines about how to clasify new projects.

## References

This repository was created on 2020/02/02 to merge the content of the following existing lists:

- [vhdl/awesome-vhdl](https://github.com/vhdl/awesome-vhdl)
- [drom/awesome-hdl](https://github.com/drom/awesome-hdl)
- [fukatani/awesome-hdl](https://github.com/fukatani/awesome-hdl)
- [ben-marshall/awesome-open-hardware-verification](https://github.com/ben-marshall/awesome-open-hardware-verification)

Find other awesome lists: [github.com/topics/awesome-list](https://github.com/topics/awesome-list)
48 changes: 48 additions & 0 deletions config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
baseURL: "https://hdl.github.io/awesome"
title: "Awesome resources for Hardware Description"
theme: "bare-hugo-theme"
enableGitInfo: true

params:
shorttitle: "Awesome HDL"
description: 'Tools, frameworks, IP cores, libraries and more!'
# PostCSS is harder than it should be to get working on a theme
# example site. It's easy on _your_ site.
postcss: false
social:
- icon: "github-circle"
url: "https://github.com/hdl/awesome"
categories:
"Libraries": ""
"Libraries:IP Core Libraries": "libraries containing multiple IP cores"
"Libraries:IP Core Collections": "collections containing multiple IP cores"
"IP Cores": "single IP cores"
"Frameworks": ""
"Frameworks:Verification": "frameworks for verification"
"Verification Models": "single verification models"
"Verification Models:Memory": "verification model for Memories"
"Verification Models:Interface": "verification model for Interfaces"
"Tools": ""
"Tools:Grammars": ""
"Tools:Parsers": ""
"Tools:Simulators": ""
"Tools:Package Managers": ""
"Tools:Waveform Viewer": ""
"Services": ""
"Services:Code Quality": ""
"Services:Continuous Integration": ""
"Services:Continuous Documentation": ""
"Resources": ""
"Resources:Books": ""
"Resources:Twitter": ""
"Resources:Websites": ""
"Resources:Weekly": ""

menu:
main:
- identifier: "categories"
name: "Categories"
url: "/categories/"
- identifier: "tags"
name: "Tags"
url: "/tags/"
5 changes: 5 additions & 0 deletions content/items/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
+++
aliases = ["all", "projects", "tools"]
title = "All awesome resources"
tags = ["index"]
+++
21 changes: 21 additions & 0 deletions content/items/cocotb.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: "Coroutine Co-simulation Test Bench (cocotb)"
description: "A coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python"
author: ["author"]
links:
gh: "https://github.com/cocotb/cocotb"
docs: "https://cocotb.rtfd.io"
tags: [
"verification",
"vhdl",
"verilog",
"systemverilog",
]
categories: [
"Frameworks"
]
---

This is a long description...
<!--more-->
... about cocotb.
17 changes: 17 additions & 0 deletions content/items/eda-twiki.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: "eda-twiki"
description: "Wiki of the VHDL Analysis and Standardization Group (VASG)"
author: ["author"]
links:
web: "http://www.eda-twiki.org/cgi-bin/view.cgi/P1076/WebHome"
tags: [
"vhdl"
]
categories: [
"Resources:Websites"
]
---

This is a long description...
<!--more-->
... about eda-twiki.
15 changes: 15 additions & 0 deletions content/items/fphdl.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: "fphdl"
description: "VHDL-2008 Support Library"
author: ["author"]
links:
gh: "https://github.com/FPHDL/fphdl/"
tags: [
"libraries",
"vhdl",
]
---

This is a long description...
<!--more-->
... about fphdl.
20 changes: 20 additions & 0 deletions content/items/ghdl.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: "GHDL"
description: "Open-source analyzer, compiler, simulator and synthesiser for VHDL"
author: ["Tristan Gingold"]
links:
gh: "https://github.com/ghdl/ghdl"
docs: "https://ghdl.rtfd.io"
tags: [
"analiser",
"compiler",
"simulator",
"synthesis",
"parser",
"vhdl",
]
---

This is a long description...
<!--more-->
... about GHDL.
17 changes: 17 additions & 0 deletions content/items/hdlConvertor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: "hdlConvertor"
description: "System Verilog and VHDL parser, preprocessor and code generator for Python/C++ written"
author: ["author"]
links:
gh: "https://github.com/Nic30/hdlConvertor"
tags: [
"parser",
"preprocessor",
"vhdl",
"systemverilog",
]
---

This is a long description...
<!--more-->
... about hdlConvertor.
15 changes: 15 additions & 0 deletions content/items/iverilog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: "Icarus Verilog (iverilog)"
description: "Verilog simulation and synthesis tool"
author: ["author"]
links:
web: "http://iverilog.icarus.com/"
tags: [
"simulator",
"verilog",
]
---

This is a long description...
<!--more-->
... about iverilog.
16 changes: 16 additions & 0 deletions content/items/netlistsvg.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: "netlistsvg"
description: "Draw SVG schematics from a Yosys JSON netlists"
author: ["author"]
links:
gh: "https://github.com/nturley/netlistsvg"
tags: [
"netlist",
"schematics",
"documentation",
]
---

This is a long description...
<!--more-->
... about netlistsvg.
15 changes: 15 additions & 0 deletions content/items/nvc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: "NVC"
description: "A GPLv3 VHDL compiler and simulator aiming for IEEE 1076-2002 compliance"
author: ["author"]
links:
gh: "https://github.com/nickg/nvc"
tags: [
"synthesis",
"vhdl",
]
---

This is a long description...
<!--more-->
... about nvc.
20 changes: 20 additions & 0 deletions content/items/osvvm.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: "Open Source VHDL Verification Methodology (OSVVM)"
description: "description"
author: ["Jim Lewis"]
links:
gh: "https://github.com/OSVVM/OSVVM"
tags: [
"verification",
"framework",
"vhdl",
]
categories: [
"Frameworks",
"Frameworks:Verification"
]
---

This is a long description...
<!--more-->
... about OSVVM.
Loading

0 comments on commit b319045

Please # to comment.