Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
ASIC Library Tech
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SoCLabs
ASIC Library Tech
Compare revisions
57e2056366551367fedfdd983eb659dc2076a8b1 to f81392e6e4a59e33185ade91a86c4968d207b8ff
Compare revisions
Changes are shown as if the
source
revision was being merged into the
target
revision.
Learn more about comparing revisions.
Source
soclabs/asic_library_tech
Select target project
No results found
f81392e6e4a59e33185ade91a86c4968d207b8ff
Select Git revision
Branches
main
1 result
Swap
Target
soclabs/asic_library_tech
Select target project
soclabs/asic_library_tech
1 result
57e2056366551367fedfdd983eb659dc2076a8b1
Select Git revision
Branches
main
1 result
Show changes
Only incoming changes from source
Include changes to target since source was created
Compare
Commits on Source (1)
Add TSMC 16nm SRAM wrapper
· f81392e6
Daniel Newbrook
authored
2 months ago
f81392e6
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
flist/asic_lib_ip_TSMC16nm.flist
+26
-0
26 additions, 0 deletions
flist/asic_lib_ip_TSMC16nm.flist
sram/TSMC16nm/verilog/sl_sram.v
+82
-0
82 additions, 0 deletions
sram/TSMC16nm/verilog/sl_sram.v
with
108 additions
and
0 deletions
flist/asic_lib_ip_TSMC16nm.flist
0 → 100644
View file @
f81392e6
//-----------------------------------------------------------------------------
// ASIC Library Memory Filelist
// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license.
//
// Contributors
//
// Daniel Newbrook (d.newbrook@soton.ac.uk)
//
// Copyright � 2021-3, SoC Labs (www.soclabs.org)
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Abstract : Verilog Command File for NanoSoC Testbench
//-----------------------------------------------------------------------------
// ============= Verilog library extensions ===========
+libext+.v+.vlib
// ============= NanoSoC Testbench search path =============
// +incdir+$(SOCLABS_ASIC_LIB_TECH_DIR)/sram/verilog/
// - Memories
$(SOCLABS_ASIC_LIB_TECH_DIR)/sram/verilog/sl_ahb_sram.v
$(SOCLABS_ASIC_LIB_TECH_DIR)/sram/TSMC16nm/verilog/sl_sram.v
$(SOCLABS_ASIC_LIB_TECH_DIR)/rom/verilog/bootrom.v
$(SOCLABS_ASIC_LIB_TECH_DIR)/sync/verilog/SYNCHRONIZER_EDGES.v
\ No newline at end of file
This diff is collapsed.
Click to expand it.
sram/TSMC16nm/verilog/sl_sram.v
0 → 100644
View file @
f81392e6
//-----------------------------------------------------------------------------
// SoCLabs ASIC RAM Wrapper
// - substituted using the same name from the FPGA tech library
// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license.
//
// Contributors
//
// David Flynn (d.flynn@soton.ac.uk)
//
// Copyright 2021-3, SoC Labs (www.soclabs.org)
//-----------------------------------------------------------------------------
module
sl_sram
#(
// --------------------------------------------------------------------------
// Parameter Declarations
// --------------------------------------------------------------------------
parameter
AW
=
16
)
(
`ifdef
POWER_PINS
inout
wire
VDD
,
inout
wire
VSS
,
`endif
// Inputs
input
wire
CLK
,
input
wire
[
AW
-
1
:
2
]
ADDR
,
input
wire
[
31
:
0
]
WDATA
,
input
wire
[
3
:
0
]
WREN
,
input
wire
CS
,
// Outputs
output
wire
[
31
:
0
]
RDATA
);
// fixed pre-compiled 16K instance supported
localparam
TIE_EMA
=
3'b010
;
localparam
TIE_EMAW
=
2'b00
;
wire
[
AW
-
3
:
0
]
ADDR12
=
ADDR
;
wire
[
31
:
0
]
WDATA32
=
WDATA
;
wire
[
31
:
0
]
RDATA32
;
assign
RDATA
=
RDATA32
;
wire
CEN
=
!
CS
;
wire
GWEN
=
&
(
~
WREN
);
wire
[
31
:
0
]
WEN32
=
{
{
8
{!
WREN
[
3
]
}}
,
{
8
{!
WREN
[
2
]
}}
,
{
8
{!
WREN
[
1
]
}}
,
{
8
{!
WREN
[
0
]
}}
}
;
localparam
TIE_RET1N
=
1'b1
;
generate
if
(
AW
==
14
)
begin
sram_16k
u_sram
(
.
Q
(
RDATA32
),
.
CLK
(
CLK
),
.
CEN
(
CEN
),
.
WEN
(
WEN32
),
.
A
(
ADDR12
),
.
D
(
WDATA32
),
.
EMA
(
TIE_EMA
),
.
EMAW
(
TIE_EMAW
),
.
GWEN
(
GWEN
),
.
RET1N
(
TIE_RET1N
)
);
end
else
if
(
AW
==
15
)
begin
sram_32k
u_sram
(
.
Q
(
RDATA32
),
.
CLK
(
CLK
),
.
CEN
(
CEN
),
.
WEN
(
WEN32
),
.
A
(
ADDR12
),
.
D
(
WDATA32
),
.
EMA
(
TIE_EMA
),
.
EMAW
(
TIE_EMAW
),
.
GWEN
(
GWEN
),
.
RET1N
(
TIE_RET1N
)
);
end
endgenerate
endmodule
This diff is collapsed.
Click to expand it.