diff --git a/ivtest/gold/sdf_header-iverilog-stderr.gold b/ivtest/gold/sdf_header-iverilog-stderr.gold new file mode 100644 index 000000000..e69de29bb diff --git a/ivtest/gold/sdf_header-iverilog-stdout.gold b/ivtest/gold/sdf_header-iverilog-stdout.gold new file mode 100644 index 000000000..e69de29bb diff --git a/ivtest/gold/sdf_header-vvp-stderr.gold b/ivtest/gold/sdf_header-vvp-stderr.gold new file mode 100644 index 000000000..e69de29bb diff --git a/ivtest/gold/sdf_header-vvp-stdout.gold b/ivtest/gold/sdf_header-vvp-stdout.gold new file mode 100644 index 000000000..4e75a32af --- /dev/null +++ b/ivtest/gold/sdf_header-vvp-stdout.gold @@ -0,0 +1,10 @@ +ivltests/sdf_header.sdf:2:SDF INFO: Version: 3.0 +ivltests/sdf_header.sdf:3:SDF INFO: Design: test +ivltests/sdf_header.sdf:4:SDF INFO: Date: Wed Mar 8 12:34:56 2023 +ivltests/sdf_header.sdf:5:SDF INFO: Vendor: No Vendor +ivltests/sdf_header.sdf:6:SDF INFO: Program: Human +ivltests/sdf_header.sdf:7:SDF INFO: Program Version: 1.0.0 +ivltests/sdf_header.sdf:9:SDF INFO: Voltage : 5.000000 +ivltests/sdf_header.sdf:10:SDF INFO: Process: best=0.65:nom=1.0:worst=1.8 +ivltests/sdf_header.sdf:11:SDF INFO: Temperature : 25.000000 +ivltests/sdf_header.sdf:12:SDF INFO: Timescale : 1ps diff --git a/ivtest/ivltests/sdf_header.sdf b/ivtest/ivltests/sdf_header.sdf new file mode 100644 index 000000000..bbde907af --- /dev/null +++ b/ivtest/ivltests/sdf_header.sdf @@ -0,0 +1,19 @@ +(DELAYFILE + (SDFVERSION "3.0") + (DESIGN "test") + (DATE "Wed Mar 8 12:34:56 2023") + (VENDOR "No Vendor") + (PROGRAM "Human") + (VERSION "1.0.0") + (DIVIDER /) + (VOLTAGE 5.5:5.0:4.5) + (PROCESS "best=0.65:nom=1.0:worst=1.8") + (TEMPERATURE -25.0:25.0:85.0) + (TIMESCALE 1 ps) + + // Do nothing + (CELL + (CELLTYPE "top") + (INSTANCE ) + ) +) diff --git a/ivtest/ivltests/sdf_header.v b/ivtest/ivltests/sdf_header.v new file mode 100644 index 000000000..84e4745f4 --- /dev/null +++ b/ivtest/ivltests/sdf_header.v @@ -0,0 +1,10 @@ +`timescale 1ns/1ps + +module top; + + initial begin + $sdf_annotate("ivltests/sdf_header.sdf", top); + end + +endmodule + diff --git a/ivtest/regress-vvp.list b/ivtest/regress-vvp.list index b1cc5750d..2dd09bb7a 100644 --- a/ivtest/regress-vvp.list +++ b/ivtest/regress-vvp.list @@ -35,3 +35,4 @@ struct_packed_write_read vvp_tests/struct_packed_write_read.json struct_packed_write_read2 vvp_tests/struct_packed_write_read2.json sv_foreach9 vvp_tests/sv_foreach9.json sv_foreach10 vvp_tests/sv_foreach10.json +sdf_header vvp_tests/sdf_header.json diff --git a/ivtest/vvp_tests/sdf_header.json b/ivtest/vvp_tests/sdf_header.json new file mode 100644 index 000000000..0a0698951 --- /dev/null +++ b/ivtest/vvp_tests/sdf_header.json @@ -0,0 +1,7 @@ +{ + "type" : "normal", + "source" : "sdf_header.v", + "gold" : "sdf_header", + "iverilog-args" : [ "-gspecify" ], + "vvp-args-extended" : [ "-sdf-verbose" ] +}