Skip to content

Commit

Permalink
Aligned all RTL/BHV files headers with correct date, contributors and…
Browse files Browse the repository at this point in the history
… Solderpad Hardware License v2.1

Signed-off-by: Pascal Gouedo <[email protected]>
  • Loading branch information
Pascal Gouedo committed Mar 18, 2024
1 parent bee163c commit d2a216b
Show file tree
Hide file tree
Showing 42 changed files with 755 additions and 785 deletions.
31 changes: 10 additions & 21 deletions bhv/cv32e40p_apu_tracer.sv
Original file line number Diff line number Diff line change
@@ -1,38 +1,27 @@
// Copyright 2024 OpenHW Group and Dolphin Design
// Copyright 2020 Silicon Labs, Inc.
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// This file, and derivatives thereof are licensed under the
// Solderpad License, Version 2.0 (the "License").
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// Use of this file means you agree to the terms and conditions
// of the license and are in full compliance with the License.
//
// You may obtain a copy of the License at:
//
// https://solderpad.org/licenses/SHL-2.0/
//
// Unless required by applicable law or agreed to in writing, software
// and hardware implementations thereof distributed under the License
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
// OF ANY KIND, EITHER EXPRESSED OR IMPLIED.
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

////////////////////////////////////////////////////////////////////////////////
// Engineer: Arjan Bink - [email protected] //
// //
// Design Name: cv32e40p_apu_tracer.sv (APU trace) //
// Project Name: CV32E40P //
// Language: SystemVerilog //
// //
// Description: Logs the following: //
// //
// - APU register file write address //
// - APU register file write data //
// //
// Note: This code was here from cv32e40p_core.sv in order to //
// remove the use of global defines in the RTL code. //
// //
////////////////////////////////////////////////////////////////////////////////

`ifdef CV32E40P_APU_TRACE
Expand Down
31 changes: 10 additions & 21 deletions bhv/cv32e40p_core_log.sv
Original file line number Diff line number Diff line change
@@ -1,39 +1,28 @@
// Copyright 2024 OpenHW Group and Dolphin Design
// Copyright 2020 Silicon Labs, Inc.
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// This file, and derivatives thereof are licensed under the
// Solderpad License, Version 2.0 (the "License").
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// Use of this file means you agree to the terms and conditions
// of the license and are in full compliance with the License.
//
// You may obtain a copy of the License at:
//
// https://solderpad.org/licenses/SHL-2.0/
//
// Unless required by applicable law or agreed to in writing, software
// and hardware implementations thereof distributed under the License
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
// OF ANY KIND, EITHER EXPRESSED OR IMPLIED.
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

////////////////////////////////////////////////////////////////////////////////
// Engineer: Arjan Bink - [email protected] //
// //
// Design Name: cv32e40p_core_log.sv (cv32e40p_core simulation log) //
// Project Name: CV32E40P //
// Language: SystemVerilog //
// //
// Description: Logs the following: //
// //
// - top level parameter settings //
// - illegal instructions //
// //
// Note: This code was here from cv32e40p_core.sv and //
// cv32e40p_controller.sv in order to remove the use of //
// global defines in the RTL code. //
// //
////////////////////////////////////////////////////////////////////////////////

module cv32e40p_core_log #(
Expand Down
23 changes: 12 additions & 11 deletions bhv/cv32e40p_instr_trace.svh
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// Tracer data structures and functions
//
// Contributors: Steve Richmond, Silicon Labs <[email protected]>
// Pascal Gouedo, Dolphin Design <[email protected]>
/////////////////////////////////////////////////////////////////////////////
// Contributors: Steve Richmond, Silicon Labs <[email protected]> //
// Pascal Gouedo, Dolphin Design <[email protected]> //
// Description: Tracer data structures and functions //
/////////////////////////////////////////////////////////////////////////////

typedef struct {
logic [5:0] addr;
Expand Down
25 changes: 13 additions & 12 deletions bhv/cv32e40p_rvfi.sv
Original file line number Diff line number Diff line change
@@ -1,24 +1,25 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// CV32E40P RVFI interface
//
// Contributors: Davide Schiavone, OpenHW Group <[email protected]>
// Halfdan Bechmann, Silicon Labs <[email protected]>
// Yoann Pruvost, Dolphin Design <[email protected]>
/////////////////////////////////////////////////////////////////////////////////
// Contributors: Davide Schiavone, OpenHW Group <[email protected]> //
// Halfdan Bechmann, Silicon Labs <[email protected]> //
// Yoann Pruvost, Dolphin Design <[email protected]> //
// Description: CV32E40P RVFI interface //
/////////////////////////////////////////////////////////////////////////////////

`include "cv32e40p_rvfi_pkg.sv"

Expand Down
23 changes: 12 additions & 11 deletions bhv/cv32e40p_rvfi_trace.sv
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// CV32E40P RVFI interface
//
// Contributors: Halfdan Bechmann, Silicon Labs <[email protected]>
// Yoann Pruvost, Dolphin Design <[email protected]>
/////////////////////////////////////////////////////////////////////////////////
// Contributors: Halfdan Bechmann, Silicon Labs <[email protected]> //
// Yoann Pruvost, Dolphin Design <[email protected]> //
// Description: CV32E40P RVFI interface tracer //
/////////////////////////////////////////////////////////////////////////////////

module cv32e40p_rvfi_trace
import cv32e40p_pkg::*;
Expand Down
23 changes: 15 additions & 8 deletions bhv/cv32e40p_sim_clock_gate.sv
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
// Copyright 2024 OpenHW Group and Dolphin Design
// Copyright 2017 ETH Zurich and University of Bologna.
// Copyright and related rights are licensed under the Solderpad Hardware
// License, Version 0.51 (the "License"); you may not use this file except in
// compliance with the License. You may obtain a copy of the License at
// http://solderpad.org/licenses/SHL-0.51. Unless required by applicable law
// or agreed to in writing, software, hardware and materials distributed under
// this License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
// CONDITIONS OF ANY KIND, either express or implied. See the License for the
// specific language governing permissions and limitations under the License.
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// !!! cv32e40p_sim_clock_gate file is meant for simulation only !!!
// !!! It must not be used for ASIC synthesis !!!
Expand Down
23 changes: 12 additions & 11 deletions bhv/cv32e40p_tb_wrapper.sv
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// Wrapper for a cv32e40p, containing cv32e40p_top, and rvfi_tracer
//
// Contributors: Davide Schiavone, OpenHW Group <[email protected]>
// Yoann Pruvost, Dolphin Design <[email protected]>
/////////////////////////////////////////////////////////////////////////////////////
// Contributors: Davide Schiavone, OpenHW Group <[email protected]> //
// Yoann Pruvost, Dolphin Design <[email protected]> //
// Description: Wrapper for a cv32e40p, containing cv32e40p_top, and rvfi_tracer //
/////////////////////////////////////////////////////////////////////////////////////

`ifdef CV32E40P_ASSERT_ON
`include "cv32e40p_prefetch_controller_sva.sv"
Expand Down
25 changes: 13 additions & 12 deletions bhv/cv32e40p_tracer.sv
Original file line number Diff line number Diff line change
@@ -1,24 +1,25 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// Traces the executed instructions
//
// Contributors: Andreas Traber, ETHZ <[email protected]>
// Davide Schiavone, OpenHW Group <[email protected]>
// Pascal Gouedo, Dolphin Design <[email protected]>
///////////////////////////////////////////////////////////////////////////////////////////
// Contributors: Andreas Traber, ETHZ <[email protected]> //
// Davide Schiavone, OpenHW Group <[email protected]> //
// Pascal Gouedo, Dolphin Design <[email protected]> //
// Description: Traces the executed instructions //
///////////////////////////////////////////////////////////////////////////////////////////

`ifdef CV32E40P_TRACE_EXECUTION

Expand Down
14 changes: 7 additions & 7 deletions bhv/include/cv32e40p_rvfi_pkg.sv
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// Includes to print info about the RVFI output
//
Expand Down
14 changes: 7 additions & 7 deletions bhv/include/cv32e40p_tracer_pkg.sv
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
// Copyright (c) 2020 OpenHW Group
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware Licence, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, software
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0

// Tracer package
//
Expand Down
17 changes: 15 additions & 2 deletions bhv/insn_trace.sv
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
// Copyright 2022 Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.0
// Copyright 2024 OpenHW Group and Dolphin Design
// SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
//
// Licensed under the Solderpad Hardware License v 2.1 (the "License");
// you may not use this file except in compliance with the License, or,
// at your option, the Apache License version 2.0.
// You may obtain a copy of the License at
//
// https://solderpad.org/licenses/SHL-2.1/
//
// Unless required by applicable law or agreed to in writing, any work
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

`define DEFINE_CSR(CSR_NAME) \
logic ``CSR_NAME``_we; \
Expand Down
Loading

0 comments on commit d2a216b

Please sign in to comment.