Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
690f96c
dut
Dec 20, 2022
e8cef2e
new
Dec 20, 2022
80b8398
deleted
Dec 23, 2022
f3a25a1
challenge 3
Dec 23, 2022
3b6e87c
interfaces
Dec 23, 2022
1c93cad
hi
Dec 23, 2022
dfa4cfc
Adding wb intf yaml files
VINUTHNA-SRI Dec 23, 2022
266ce8a
apb_interface.yaml
Dec 23, 2022
167e985
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
Dec 23, 2022
e4b9235
template files edited
Dec 23, 2022
a455f03
initial for merge
Dec 23, 2022
5e5700a
Adding intfs
VINUTHNA-SRI Dec 23, 2022
95007c4
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
VINUTHNA-SRI Dec 23, 2022
7e1b0b1
block_a modified
vineethkumarv Dec 23, 2022
4fc86d6
interface template edited
vineethkumarv Dec 23, 2022
e75fa86
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
Dec 23, 2022
ff8c27e
block_a
Dec 23, 2022
1951f63
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
Dec 23, 2022
1ca56bd
axi master and slave interfaces
Dec 23, 2022
8f4821a
block_a
Dec 23, 2022
a4c3263
predictors and scoreboards
Dec 24, 2022
c94d67e
wb
VINUTHNA-SRI Dec 24, 2022
fb13d24
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
VINUTHNA-SRI Dec 24, 2022
b5d5875
added block2 and few edits
vineethkumarv Dec 24, 2022
0a1f52f
directory names changed
Dec 24, 2022
0e122bf
Adding subsytem env and utils
VINUTHNA-SRI Dec 24, 2022
6aa90c5
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
VINUTHNA-SRI Dec 24, 2022
bac99ae
Merge branch 'B7_Team_BJT' of github.com:muneeb-mbytes/UVMF into B7_T…
Dec 24, 2022
e39a568
ap's in envs
vineethkumarv Dec 24, 2022
0a0b2a9
added active_passive
vineethkumarv Dec 24, 2022
74ae9ff
edited axi interface and subsys
vineethkumarv Dec 24, 2022
f8eb1e4
block a and block b yaml codes working
Dec 24, 2022
2652dd9
Merge branch 'B7_Team_BJT_challenge3' of github.com:muneeb-mbytes/UVM…
Dec 24, 2022
c4ba13c
sub_system
Dec 24, 2022
7a6979c
sub_system
Dec 24, 2022
4f61a79
block_3 generated
Dec 24, 2022
0cb6c57
system
Dec 24, 2022
a353ad2
apb_master_intf.yaml
Dec 24, 2022
bb8d52a
all block levels are fixed
vineethkumarv Dec 25, 2022
cf35ab1
all blocks-compile success
vineethkumarv Dec 25, 2022
530a3af
system
Dec 25, 2022
9e4f3b5
Merge branch 'B7_Team_BJT_challenge3' of github.com:muneeb-mbytes/UVM…
Dec 25, 2022
f2d21fa
all block,subsystem and system level benches ready and even compiling
Dec 25, 2022
1348e06
for pull request
Dec 25, 2022
e7c1070
Delete UVM_Framework/UVMF_2022.3/task_3 directory
vineethkumarv Dec 26, 2022
887bc24
subsystem-edited
vineethkumarv Dec 26, 2022
ceab28f
sub edited
vineethkumarv Dec 26, 2022
0990667
csh file created for setting path to env_variable and the command to …
Dec 26, 2022
7f559cf
csh files update to github
Dec 26, 2022
314ea77
Resolved the compilation issues with sub-envs
muneebullashariff Dec 26, 2022
112b31b
challenge_4_with_macros push
Dec 26, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
84 changes: 84 additions & 0 deletions UVM_Framework/UVMF_2022.3/challenge_3/block_1/block1_env.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
uvmf:
benches:
"block_1" :
## Specify the top-level block
top_env: "block_1"
clock_half_period: "5ns"
reset_assertion_level: "True"
reset_duration: "200ns"
active_passive:
- bfm_name: "apb_master"
value: "ACTIVE"
- bfm_name: "axi_master1"
value: "ACTIVE"
- bfm_name: "axi_master2"
value: "ACTIVE"
- bfm_name: "spi_slave"
value: "PASSIVE"
environments:
"block_1" :
agents :
- name: "apb_master"
type: "apb_m"
initiator_responder: "INITIATOR"

- name: "axi_master1"
type: "axi_m"
initiator_responder: "INITIATOR"

- name: "axi_master2"
type: "axi_m"
initiator_responder: "INITIATOR"

- name: "spi_slave"
type: "spi_s"
initiator_responder: "RESPONDER"

analysis_components :
- name: "block_1_pred"
type: "block_1_predictor"
- name: "block_1_sb"
type: "block_1_scoreboard"

analysis_ports :
- name: "apb_master_ap"
trans_type: "apb_m_transaction"
connected_to: "apb_master.monitored_ap"
- name: "axi_master1_ap"
trans_type: "axi_m_transaction"
connected_to: "axi_master1.monitored_ap"
- name: "axi_master2_ap"
trans_type: "axi_m_transaction"
connected_to: "axi_master2.monitored_ap"
- name: "spi_slave_ap"
trans_type: "spi_s_transaction"
connected_to: "spi_slave.monitored_ap"
# - name: "block_1_ap1"
# trans_type: "apb_m_transaction"
# connected_to: "apb_master.monitored_ap"
# - name: "block_1_ap2"
# trans_type: "axi_m_transaction"
# connected_to: "axi_master1.monitored_ap"
# - name: "block_1_ap3"
# trans_type: "axi_m_transaction"
# connected_to: "axi_master2.monitored_ap"
# - name: "block_2_ap1"
# trans_type: "spi_s_transaction"
# connected_to: "spi_slave.monitored_ap"

tlm_connections:
- driver: "spi_slave.monitored_ap"
receiver: "block_1_sb.spi_ae"
- driver: "apb_master.monitored_ap"
receiver: "block_1_pred.apb_ae"
- driver: "axi_master1.monitored_ap"
receiver: "block_1_pred.axi_1_ae"
- driver: "axi_master2.monitored_ap"
receiver: "block_1_pred.axi_2_ae"
- driver: "block_1_pred.pre_to_sco_ap"
receiver: "block_1_sb.sco_from_pre_ae"

config_vars :
- name: "has_scoreboard"
type : "bit"
isrand : "False"
22 changes: 22 additions & 0 deletions UVM_Framework/UVMF_2022.3/challenge_3/block_1/block1_util.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
uvmf:
util_components:
block_1_predictor:
analysis_exports:
- name: apb_ae
type: 'apb_m_transaction'
- name: axi_1_ae
type: 'axi_m_transaction'
- name: axi_2_ae
type: 'axi_m_transaction'
analysis_ports:
- name: pre_to_sco_ap
type: 'spi_s_transaction'
existing_library_component: 'True'
type: predictor
block_1_scoreboard:
analysis_exports:
- name: spi_ae
type: 'spi_s_transaction'
- name: sco_from_pre_ae
type: 'spi_s_transaction'
type: scoreboard
7 changes: 7 additions & 0 deletions UVM_Framework/UVMF_2022.3/challenge_3/block_1/block_1.csh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Setting the path for making "make cli" command works fine.

setenv UVMF_HOME /hwetools/work_area/frontend/vinay_B7/UVMF/UVM_Framework/UVMF_2022.3/

# This is the command to generate you block_1_level bench

python ../../../UVMF_2022.3/scripts/yaml2uvmf.py ../intf/apb_m_intf.yaml ../intf/axi_m_intf.yaml ../intf/spi_s_intf.yaml ../block_1/block1_env.yaml ../block_1/block1_util.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>block_1</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.python.pydev.PyDevBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>net.sf.sveditor.core.SVProjectBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>net.sf.sveditor.core.SVNature</nature>
<nature>org.python.pydev.pythonNature</nature>
</natures>
<linkedResources>
<link>
<name>verification_ip</name>
<type>2</type>
<locationURI>UVMF_VIP_LIBRARY_HOME</locationURI>
</link>
</linkedResources>
<variableList>
<variable>
<name>UVMF_VIP_LIBRARY_HOME</name>
<value>$%7BPARENT-2-PROJECT_LOC%7D/verification_ip</value>
</variable>
</variableList>
</projectDescription>

Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svproject>
<defines/>
<includePaths/>
<buildPaths/>
<pluginPaths>
<pluginPath path="net.sf.sveditor.sv_builtin"/>
</pluginPaths>
<libraryPaths/>
<argFilePaths>
<argFilePath path="${project_loc}/block_1_sve.F"/>
</argFilePaths>
<sourceCollections/>
<projectRefs/>
<templatePaths/>
</svproject>
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@

// UVM
+incdir+${UVM_HOME}/src
${UVM_HOME}/src/uvm_pkg.sv

// Common UVMF files
-f ${UVMF_HOME}/common/common_sve.f

// BFM Files
-F ${UVMF_VIP_LIBRARY_HOME}/interface_packages/apb_m_pkg/apb_m_pkg_sve.F
-F ${UVMF_VIP_LIBRARY_HOME}/interface_packages/axi_m_pkg/axi_m_pkg_sve.F
-F ${UVMF_VIP_LIBRARY_HOME}/interface_packages/spi_s_pkg/spi_s_pkg_sve.F

// Environment Files
-F ${UVMF_VIP_LIBRARY_HOME}/environment_packages/block_1_env_pkg/block_1_env_pkg_sve.F

// Bench Files
+incdir+./tb/tests
./tb/tests/block_1_tests_pkg.sv

+incdir+./tb/sequences
./tb/sequences/block_1_sequences_pkg.sv

+incdir+./tb/parameters
./tb/parameters/block_1_parameters_pkg.sv

./tb/testbench/hdl_top.sv
./tb/testbench/hvl_top.sv

Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
//----------------------------------------------------------------------
// Created with uvmf_gen version 2022.3
//----------------------------------------------------------------------
// pragma uvmf custom header begin
// pragma uvmf custom header end
//----------------------------------------------------------------------
//----------------------------------------------------------------------
//

,
Interface Description, Interface Type, Interface Transaction, Interface Name,
apb_master, apb_m_driver_bfm apb_m_monitor_bfm, apb_m_transaction, apb_m_pkg_apb_master_BFM,
axi_master1, axi_m_driver_bfm axi_m_monitor_bfm, axi_m_transaction, axi_m_pkg_axi_master1_BFM,
axi_master2, axi_m_driver_bfm axi_m_monitor_bfm, axi_m_transaction, axi_m_pkg_axi_master2_BFM,
spi_slave, spi_s_driver_bfm spi_s_monitor_bfm, spi_s_transaction, spi_s_pkg_spi_slave_BFM,

Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

# pragma uvmf custom dut_compile_info begin
src:
- ./vhdl/vhdl_dut.vhd
- ./verilog/verilog_dut.v
# pragma uvmf custom dut_compile_info end
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
module verilog_dut(clk, rst, in_signal, out_signal);

input clk;
input rst;
input in_signal;
output out_signal;

reg out_signal_o;

always @(posedge clk) begin
if (rst) begin
out_signal_o <= 0;
end
else begin
out_signal_o <= ~in_signal;
end
end

assign out_signal = out_signal_o;

endmodule
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
verilog_dut.v
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
library ieee;
use ieee.std_logic_1164.all ;

entity vhdl_dut is
port ( clk : in std_logic ;
rst : in std_logic ;
in_signal : in std_logic ;
out_signal :out std_logic
);
end vhdl_dut;

architecture rtl of vhdl_dut is
begin
P1: process
variable out_signal_o : std_logic;
begin
wait until clk'event and clk = '1';
out_signal_o := in_signal;
out_signal <= out_signal_o;
end process;
end rtl;
Loading