Skip to content

Commit 865f79a

Browse files
committed
Make GDS workflow to include the correct files, inline readme.md
1 parent 90fdbd2 commit 865f79a

File tree

8 files changed

+26
-16
lines changed

8 files changed

+26
-16
lines changed

.github/workflows/docs.yaml

+1-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,8 @@ jobs:
1919
uses: actions/setup-python@v4
2020
with:
2121
python-version: '3.7.7'
22-
cache: 'pip'
23-
- run: pip install -r requirements.txt
22+
- run: pip install requests PyYAML
2423

2524
# fetch the Verilog from Wokwi API
2625
- name: fetch Verilog and build config
2726
run: ./configure.py --check-docs
28-

.github/workflows/gds.yaml

+5-5
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@ jobs:
3434
uses: actions/setup-python@v4
3535
with:
3636
python-version: '3.7.7'
37-
cache: 'pip'
38-
- run: pip install -r requirements.txt
37+
- run: pip install requests PyYAML
3938

4039
# fetch the Verilog from Wokwi API
4140
- name: fetch Verilog and build config
@@ -59,7 +58,7 @@ jobs:
5958

6059
- name: add summary
6160
run: ./configure.py --get-stats >> $GITHUB_STEP_SUMMARY
62-
61+
6362
- name: populate src cache
6463
uses: actions/cache@v3
6564
with:
@@ -137,7 +136,7 @@ jobs:
137136

138137
- name: gds2gltf
139138
run: |
140-
python -m pip install -r requirements.txt
139+
python -m pip install numpy gdspy triangle pygltflib
141140
cp runs/wokwi/results/final/gds/*.gds tinytapeout.gds
142141
python3 gds2gltf.py tinytapeout.gds
143142
cp tinytapeout.gds.gltf viewer/
@@ -173,7 +172,8 @@ jobs:
173172
path: |
174173
src/*
175174
runs/wokwi/results/final/*
176-
runs/wokwi/reports/final_summary_report.csv
175+
runs/wokwi/reports/metrics.csv
176+
runs/wokwi/reports/synthesis/1-synthesis.AREA 0.stat.rpt
177177
178178
pages:
179179
needs:

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.DS_Store
2+
.idea
3+
.vscode
4+
*.vcd

README.md

+9-2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,13 @@ When you edit the info.yaml to choose a different ID, the [GitHub Action](.githu
1414

1515
After that, the action uses the open source ASIC tool called [OpenLane](https://www.zerotoasiccourse.com/terminology/openlane/) to build the files needed to fabricate an ASIC.
1616

17+
# Setup
18+
19+
Due to Github limitations, you need to do some work to get everything to work.
20+
21+
1. Go to Actons tab and press enable Github Actions
22+
2. Go to Settings tab and select Pages, then change Source from `Deploy from a branch` to `Github Actions`
23+
1724
# What files get made?
1825

1926
When the action is complete, you can click on the 'Actions' tab above, choose the 'gds' action and then click on the latest result.
@@ -26,8 +33,8 @@ You should see a page with the results of the build:
2633

2734
You can also download a zipped artifact that contains:
2835

29-
* runs/wokwi/reports/final_summary_report.csv - CSV file with lots of details about the design
30-
* runs/wokwi/reports/synthesis/1-synthesis.stat.rpt.strategy4 - list of the [standard cells](https://www.zerotoasiccourse.com/terminology/standardcell/) used by your design
36+
* runs/wokwi/reports/metrics.csv - CSV file with lots of details about the design
37+
* runs/wokwi/reports/synthesis/1-synthesis.AREA 0.stat.rpt - list of the [standard cells](https://www.zerotoasiccourse.com/terminology/standardcell/) used by your design
3138
* runs/wokwi/results/final/gds/user_module.gds - the final [GDS](https://www.zerotoasiccourse.com/terminology/gds2/) file needed to make your design
3239

3340
# What next?

info.yaml

-1
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,3 @@ documentation:
4242
- segment f
4343
- segment g
4444
- none
45-

requirements.txt

-2
This file was deleted.

src/template.v

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
// Remember to include your top module name in the info.yaml file
33
`default_netname none
44

5-
module githubusername_top( //prepend your github username
6-
input [7:0] io_in, //leave the port names unchanged
5+
module githubusername_top( // prepend your github username
6+
input [7:0] io_in, // leave the port names unchanged
77
output [7:0] io_out);
88

99
//****Your Design Here****

src/template_tb.v

+5-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
`include "template.v"
2+
`timescale 1ns/1ps
3+
14
module template_tb ();
25
reg [7:0] io_in;
36
wire [7:0] io_out;
@@ -12,8 +15,9 @@ module template_tb ();
1215
#1 io_in = 8'b00000011;
1316
#1 io_in = 8'b00000010;
1417
#1 io_in = 8'b00000000;
18+
$finish;
1519
end
1620

1721
githubusername_top dut(.io_i(io_in),
1822
.io_o(io_out));
19-
endmodule
23+
endmodule

0 commit comments

Comments
 (0)