From 42eaa63918574fdb808e1474507bd25d59e9de92 Mon Sep 17 00:00:00 2001 From: Tim 'mithro' Ansell Date: Mon, 26 Oct 2020 08:29:20 -0700 Subject: [PATCH 1/3] docs: Change abbreviation for buildspace. The `sp` abbreviation was too close to single port in the sram build space and causing confusion. Signed-off-by: Tim 'mithro' Ansell --- docs/contents/libraries.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/contents/libraries.rst b/docs/contents/libraries.rst index ca3c24e53..57bf37cac 100644 --- a/docs/contents/libraries.rst +++ b/docs/contents/libraries.rst @@ -34,7 +34,7 @@ All sections are **lower case** and separated by an **underscore**. The sections +--------------------------------+---------------------------------------+ | Digital Standard Cells | :lib_type:`sc` | +--------------------------------+---------------------------------------+ - | Build Space (Flash, SRAM, etc) | :lib_type:`sp` | + | Build Space (Flash, SRAM, etc) | :lib_type:`bd` | +--------------------------------+---------------------------------------+ | IO and Periphery | :lib_type:`io` | +--------------------------------+---------------------------------------+ @@ -115,9 +115,9 @@ The SKY130 currently offers two :lib_type:`build space` libraries. Build space l :glob: :maxdepth: 1 :caption: Foundry provided Build Spaces - :name: sky130-lib-foundry-sp + :name: sky130-lib-foundry-bd - libraries/sky130_fd_sp_*/README + libraries/sky130_fd_bd_*/README .. _sky130-lib-io: From 662665990b7d4d2831887093701f47f00470c421 Mon Sep 17 00:00:00 2001 From: Tim 'mithro' Ansell Date: Mon, 26 Oct 2020 08:32:56 -0700 Subject: [PATCH 2/3] docs: Adding prebuilt IP blocks to the library types. --- docs/contents/libraries.rst | 48 +++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/docs/contents/libraries.rst b/docs/contents/libraries.rst index 57bf37cac..8a51ffb8e 100644 --- a/docs/contents/libraries.rst +++ b/docs/contents/libraries.rst @@ -27,19 +27,21 @@ All sections are **lower case** and separated by an **underscore**. The sections - The :lib_type:`Library Type Abbreviation` is a short two letter abbreviation for the type of content found in the library. The table below shows the current list of :lib_type:`Library Type Abbreviations`; - +--------------------------------+---------------------------------------+ - | Library Type | :lib_type:`Library Type Abbreviation` | - +================================+=======================================+ - | Primitive Cells | :lib_type:`pr` | - +--------------------------------+---------------------------------------+ - | Digital Standard Cells | :lib_type:`sc` | - +--------------------------------+---------------------------------------+ - | Build Space (Flash, SRAM, etc) | :lib_type:`bd` | - +--------------------------------+---------------------------------------+ - | IO and Periphery | :lib_type:`io` | - +--------------------------------+---------------------------------------+ - | Miscellaneous | :lib_type:`xx` | - +--------------------------------+---------------------------------------+ + +----------------------------------------------------------------+---------------------------------------+ + | Library Type | :lib_type:`Library Type Abbreviation` | + +================================================================+=======================================+ + | Primitive Cells | :lib_type:`pr` | + +----------------------------------------------------------------+---------------------------------------+ + | Digital Standard Cells | :lib_type:`sc` | + +----------------------------------------------------------------+---------------------------------------+ + | Build Space (Flash, SRAM, etc) | :lib_type:`bd` | + +----------------------------------------------------------------+---------------------------------------+ + | IO and Periphery | :lib_type:`io` | + +----------------------------------------------------------------+---------------------------------------+ + | Prebuilt IP Blocks (Compiled SRAM macros, analog designs, etc) | :lib_type:`ip` | + +----------------------------------------------------------------+---------------------------------------+ + | Miscellaneous | :lib_type:`xx` | + +----------------------------------------------------------------+---------------------------------------+ - The :lib_name:`Library Name` is an optional short abbreviated name used when there are multiple libraries of a given type released from a single :lib_src:`library source`. If only one library of a given type is going to ever be released, this can be left out. @@ -146,3 +148,23 @@ The SKY130 currently offers two :lib_type:`build space` libraries. Build space l libraries/sky130_ef_io/README +.. _sky130-lib-ip: + +:lib_type:`IP` Libraries +------------------------ + +.. todo:: Add info here. + +.. _sky130-lib-buildspace-foundry: + +:lib_src:`Foundry` provided :lib_type:`IP` Libraries +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. toctree:: + :glob: + :maxdepth: 1 + :caption: Foundry provided IP libraries + :name: sky130-lib-foundry-ip + + libraries/sky130_fd_ip_*/README + From 9579e0c262cc4b8d571d80fe07b4bd31a7d4a329 Mon Sep 17 00:00:00 2001 From: Tim 'mithro' Ansell Date: Sat, 7 Nov 2020 15:17:56 -0800 Subject: [PATCH 3/3] sky130_fd_bd_sram: Adding the SKY130 SRAM build space + OpenRAM macros. This pull request adds the sky130_fd_bd_sram library which contains the SKY130 SRAM build space which includes; * Optimized single port SRAM cells including pre-calculated OPC. * Optimized dual port SRAM cells including pre-calculated OPC. * OpenRAM tech files enabling the compilation of SRAM macros using the [OpenRAM memory compiler](https://github.com/VLSIDA/OpenRAM). The pull request also adds sky130_openram_ip_sram which contains prebuilt macros for commonly needed SRAM blocks. Signed-off-by: Tim 'mithro' Ansell --- .gitmodules | 24 ++++++++++++++++++++++++ ip/sky130_openram_ip_sram/latest | 1 + ip/sky130_openram_ip_sram/v0.0.1 | 1 + libraries/sky130_fd_bd_sram/latest | 1 + libraries/sky130_fd_bd_sram/v0.0.1 | 1 + 5 files changed, 28 insertions(+) create mode 160000 ip/sky130_openram_ip_sram/latest create mode 160000 ip/sky130_openram_ip_sram/v0.0.1 create mode 160000 libraries/sky130_fd_bd_sram/latest create mode 160000 libraries/sky130_fd_bd_sram/v0.0.1 diff --git a/.gitmodules b/.gitmodules index 3a0a8fa52..98e15c7b2 100644 --- a/.gitmodules +++ b/.gitmodules @@ -156,3 +156,27 @@ branch = branch-0.1.0 shallow = true fetchRecurseSubmodules = false + +# sky130_fd_bd_sram +[submodule "libraries/sky130_fd_bd_sram/latest"] + path = libraries/sky130_fd_bd_sram/latest + url = https://foss-eda-tools.googlesource.com/skywater-pdk/libs/sky130_fd_bd_sram.git + shallow = true + fetchRecurseSubmodules = false +[submodule "libraries/sky130_fd_bd_sram/v0.0.1"] + path = libraries/sky130_fd_bd_sram/v0.0.1 + url = https://foss-eda-tools.googlesource.com/skywater-pdk/libs/sky130_fd_bd_sram.git + shallow = true + fetchRecurseSubmodules = false + +# sky130_openram_ip_sram +[submodule "ip/sky130_openram_ip_sram/latest"] + path = ip/sky130_openram_ip_sram/latest + url = https://foss-eda-tools.googlesource.com/skywater-pdk/ip/sky130_openram_ip_sram + shallow = true + fetchRecurseSubmodules = false +[submodule "ip/sky130_openram_ip_sram/v0.0.1"] + path = ip/sky130_openram_ip_sram/v0.0.1 + url = https://foss-eda-tools.googlesource.com/skywater-pdk/ip/sky130_openram_ip_sram + shallow = true + fetchRecurseSubmodules = false diff --git a/ip/sky130_openram_ip_sram/latest b/ip/sky130_openram_ip_sram/latest new file mode 160000 index 000000000..c069296d4 --- /dev/null +++ b/ip/sky130_openram_ip_sram/latest @@ -0,0 +1 @@ +Subproject commit c069296d44f95d3d9aff88798ce2060bfad2763b diff --git a/ip/sky130_openram_ip_sram/v0.0.1 b/ip/sky130_openram_ip_sram/v0.0.1 new file mode 160000 index 000000000..c069296d4 --- /dev/null +++ b/ip/sky130_openram_ip_sram/v0.0.1 @@ -0,0 +1 @@ +Subproject commit c069296d44f95d3d9aff88798ce2060bfad2763b diff --git a/libraries/sky130_fd_bd_sram/latest b/libraries/sky130_fd_bd_sram/latest new file mode 160000 index 000000000..d95f31543 --- /dev/null +++ b/libraries/sky130_fd_bd_sram/latest @@ -0,0 +1 @@ +Subproject commit d95f31543f141348a7baaf2be1d42de5479daf7e diff --git a/libraries/sky130_fd_bd_sram/v0.0.1 b/libraries/sky130_fd_bd_sram/v0.0.1 new file mode 160000 index 000000000..d95f31543 --- /dev/null +++ b/libraries/sky130_fd_bd_sram/v0.0.1 @@ -0,0 +1 @@ +Subproject commit d95f31543f141348a7baaf2be1d42de5479daf7e