├── .gitignore
├── .gitmodules
├── .project
├── .svproject
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
├── docs
├── .gitignore
├── adv_timer_b_dv_specs.odt
├── apb_adv_timer_ss_dv_specs.odt
├── apb_adv_timer_ss_reg_model.odt
├── apb_timer_ss_dv_specs.odt
├── apb_timer_ss_reg_model.odt
├── core-v-mcu-uvm_interrupts.odt
├── cvmcu.uvmx.ods
├── cvmcu_chip_dv_specs.odt
├── cvmcu_chip_reg_model.odt
├── cvmcu_cpi_agent_dv_specs.odt
├── cvmcu_dbg_agent_dv_specs.odt
├── cvmcu_event_agent_dv_specs.odt
├── cvmcu_io_agent_dv_specs.odt
├── cvmcu_uvm_block_diagram.png
├── efpga.uvmx.ods
├── peripherals.uvmx.ods
├── tcounter_b_dv_specs.odt
├── tprescaler_b_dv_specs.odt
├── udma.uvmx.ods
└── verif_plan.pdf
├── dv
├── agents
│ ├── uvma_cvmcu_cpi
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_cvmcu_cpi_agent.sv
│ │ │ ├── uvma_cvmcu_cpi_cov_model.sv
│ │ │ ├── uvma_cvmcu_cpi_drv.sv
│ │ │ ├── uvma_cvmcu_cpi_logger.sv
│ │ │ ├── uvma_cvmcu_cpi_mon.sv
│ │ │ ├── uvma_cvmcu_cpi_phy_mon.sv
│ │ │ ├── uvma_cvmcu_cpi_rx_phy_drv.sv
│ │ │ ├── uvma_cvmcu_cpi_sqr.sv
│ │ │ └── uvma_cvmcu_cpi_tx_phy_drv.sv
│ │ │ ├── obj
│ │ │ ├── uvma_cvmcu_cpi_cfg.sv
│ │ │ ├── uvma_cvmcu_cpi_cntxt.sv
│ │ │ ├── uvma_cvmcu_cpi_mon_trn.sv
│ │ │ └── uvma_cvmcu_cpi_phy_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_cvmcu_cpi_base_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_fix_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_fix_stim_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_idle_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_mon_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_rand_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_rand_stim_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_rx_drv_seq.sv
│ │ │ ├── uvma_cvmcu_cpi_rx_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_cpi_seq_item.sv
│ │ │ ├── uvma_cvmcu_cpi_seq_lib.sv
│ │ │ ├── uvma_cvmcu_cpi_tx_drv_seq.sv
│ │ │ └── uvma_cvmcu_cpi_tx_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_cpi_constants.sv
│ │ │ ├── uvma_cvmcu_cpi_ftdecs.sv
│ │ │ ├── uvma_cvmcu_cpi_if.sv
│ │ │ ├── uvma_cvmcu_cpi_if_chkr.sv
│ │ │ ├── uvma_cvmcu_cpi_macros.svh
│ │ │ ├── uvma_cvmcu_cpi_pkg.sv
│ │ │ └── uvma_cvmcu_cpi_tdefs.sv
│ ├── uvma_cvmcu_dbg
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_cvmcu_dbg_agent.sv
│ │ │ ├── uvma_cvmcu_dbg_core_phy_drv.sv
│ │ │ ├── uvma_cvmcu_dbg_cov_model.sv
│ │ │ ├── uvma_cvmcu_dbg_drv.sv
│ │ │ ├── uvma_cvmcu_dbg_logger.sv
│ │ │ ├── uvma_cvmcu_dbg_mon.sv
│ │ │ ├── uvma_cvmcu_dbg_phy_mon.sv
│ │ │ ├── uvma_cvmcu_dbg_sqr.sv
│ │ │ └── uvma_cvmcu_dbg_sys_phy_drv.sv
│ │ │ ├── obj
│ │ │ ├── uvma_cvmcu_dbg_cfg.sv
│ │ │ ├── uvma_cvmcu_dbg_cntxt.sv
│ │ │ ├── uvma_cvmcu_dbg_mon_trn.sv
│ │ │ └── uvma_cvmcu_dbg_phy_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_cvmcu_dbg_base_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_core_drv_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_core_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_dbg_fix_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_fix_stim_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_idle_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_mon_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_rand_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_rand_stim_seq.sv
│ │ │ ├── uvma_cvmcu_dbg_seq_item.sv
│ │ │ ├── uvma_cvmcu_dbg_seq_lib.sv
│ │ │ ├── uvma_cvmcu_dbg_sys_drv_seq.sv
│ │ │ └── uvma_cvmcu_dbg_sys_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_dbg_constants.sv
│ │ │ ├── uvma_cvmcu_dbg_ftdecs.sv
│ │ │ ├── uvma_cvmcu_dbg_if.sv
│ │ │ ├── uvma_cvmcu_dbg_if_chkr.sv
│ │ │ ├── uvma_cvmcu_dbg_macros.svh
│ │ │ ├── uvma_cvmcu_dbg_pkg.sv
│ │ │ └── uvma_cvmcu_dbg_tdefs.sv
│ ├── uvma_cvmcu_event
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_cvmcu_event_agent.sv
│ │ │ ├── uvma_cvmcu_event_core_phy_drv.sv
│ │ │ ├── uvma_cvmcu_event_cov_model.sv
│ │ │ ├── uvma_cvmcu_event_drv.sv
│ │ │ ├── uvma_cvmcu_event_logger.sv
│ │ │ ├── uvma_cvmcu_event_mon.sv
│ │ │ ├── uvma_cvmcu_event_phy_mon.sv
│ │ │ ├── uvma_cvmcu_event_sqr.sv
│ │ │ └── uvma_cvmcu_event_sys_phy_drv.sv
│ │ │ ├── obj
│ │ │ ├── uvma_cvmcu_event_cfg.sv
│ │ │ ├── uvma_cvmcu_event_cntxt.sv
│ │ │ ├── uvma_cvmcu_event_mon_trn.sv
│ │ │ └── uvma_cvmcu_event_phy_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_cvmcu_event_base_seq.sv
│ │ │ ├── uvma_cvmcu_event_core_drv_seq.sv
│ │ │ ├── uvma_cvmcu_event_core_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_event_fix_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_event_fix_stim_seq.sv
│ │ │ ├── uvma_cvmcu_event_idle_seq.sv
│ │ │ ├── uvma_cvmcu_event_mon_seq.sv
│ │ │ ├── uvma_cvmcu_event_rand_ill_stim_seq.sv
│ │ │ ├── uvma_cvmcu_event_rand_stim_seq.sv
│ │ │ ├── uvma_cvmcu_event_seq_item.sv
│ │ │ ├── uvma_cvmcu_event_seq_lib.sv
│ │ │ ├── uvma_cvmcu_event_sys_drv_seq.sv
│ │ │ └── uvma_cvmcu_event_sys_phy_seq_item.sv
│ │ │ ├── uvma_cvmcu_event_constants.sv
│ │ │ ├── uvma_cvmcu_event_ftdecs.sv
│ │ │ ├── uvma_cvmcu_event_if.sv
│ │ │ ├── uvma_cvmcu_event_if_chkr.sv
│ │ │ ├── uvma_cvmcu_event_macros.svh
│ │ │ ├── uvma_cvmcu_event_pkg.sv
│ │ │ └── uvma_cvmcu_event_tdefs.sv
│ ├── uvme_cvmcu_cpi_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_cvmcu_cpi_st_cov_model.sv
│ │ │ ├── uvme_cvmcu_cpi_st_env.sv
│ │ │ ├── uvme_cvmcu_cpi_st_prd.sv
│ │ │ ├── uvme_cvmcu_cpi_st_sb.sv
│ │ │ └── uvme_cvmcu_cpi_st_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_cvmcu_cpi_st_cfg.sv
│ │ │ └── uvme_cvmcu_cpi_st_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_cvmcu_cpi_st_base_seq.sv
│ │ │ └── uvme_cvmcu_cpi_st_seq_lib.sv
│ │ │ ├── uvme_cvmcu_cpi_st_constants.sv
│ │ │ ├── uvme_cvmcu_cpi_st_ftdecs.sv
│ │ │ ├── uvme_cvmcu_cpi_st_macros.svh
│ │ │ ├── uvme_cvmcu_cpi_st_pkg.sv
│ │ │ └── uvme_cvmcu_cpi_st_tdefs.sv
│ ├── uvme_cvmcu_dbg_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_cvmcu_dbg_st_cov_model.sv
│ │ │ ├── uvme_cvmcu_dbg_st_env.sv
│ │ │ ├── uvme_cvmcu_dbg_st_prd.sv
│ │ │ ├── uvme_cvmcu_dbg_st_sb.sv
│ │ │ └── uvme_cvmcu_dbg_st_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_cvmcu_dbg_st_cfg.sv
│ │ │ └── uvme_cvmcu_dbg_st_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_cvmcu_dbg_st_base_seq.sv
│ │ │ └── uvme_cvmcu_dbg_st_seq_lib.sv
│ │ │ ├── uvme_cvmcu_dbg_st_constants.sv
│ │ │ ├── uvme_cvmcu_dbg_st_ftdecs.sv
│ │ │ ├── uvme_cvmcu_dbg_st_macros.svh
│ │ │ ├── uvme_cvmcu_dbg_st_pkg.sv
│ │ │ └── uvme_cvmcu_dbg_st_tdefs.sv
│ ├── uvme_cvmcu_event_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_cvmcu_event_st_cov_model.sv
│ │ │ ├── uvme_cvmcu_event_st_env.sv
│ │ │ ├── uvme_cvmcu_event_st_prd.sv
│ │ │ ├── uvme_cvmcu_event_st_sb.sv
│ │ │ └── uvme_cvmcu_event_st_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_cvmcu_event_st_cfg.sv
│ │ │ └── uvme_cvmcu_event_st_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_cvmcu_event_st_base_seq.sv
│ │ │ ├── uvme_cvmcu_event_st_fix_ill_stim_seq.sv
│ │ │ ├── uvme_cvmcu_event_st_fix_stim_seq.sv
│ │ │ ├── uvme_cvmcu_event_st_rand_ill_stim_seq.sv
│ │ │ ├── uvme_cvmcu_event_st_rand_stim_seq.sv
│ │ │ └── uvme_cvmcu_event_st_seq_lib.sv
│ │ │ ├── uvme_cvmcu_event_st_constants.sv
│ │ │ ├── uvme_cvmcu_event_st_ftdecs.sv
│ │ │ ├── uvme_cvmcu_event_st_macros.svh
│ │ │ ├── uvme_cvmcu_event_st_pkg.sv
│ │ │ └── uvme_cvmcu_event_st_tdefs.sv
│ ├── uvmt_cvmcu_cpi_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ ├── tb_block_diagram.svg
│ │ │ ├── tb_block_diagram.vsdx
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ │ ├── tests
│ │ │ │ ├── uvmt_cvmcu_cpi_st_fix_ill_stim_test.sv
│ │ │ │ ├── uvmt_cvmcu_cpi_st_fix_stim_test.sv
│ │ │ │ ├── uvmt_cvmcu_cpi_st_rand_ill_stim_test.sv
│ │ │ │ └── uvmt_cvmcu_cpi_st_rand_stim_test.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_base_test.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_base_test_workarounds.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_constants.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_dut_wrap.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_ftdecs.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_macros.svh
│ │ │ ├── uvmt_cvmcu_cpi_st_pkg.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_tb.sv
│ │ │ ├── uvmt_cvmcu_cpi_st_tdefs.sv
│ │ │ └── uvmt_cvmcu_cpi_st_test_cfg.sv
│ │ └── ts.yml
│ ├── uvmt_cvmcu_dbg_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ ├── tb_block_diagram.svg
│ │ │ ├── tb_block_diagram.vsdx
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ │ ├── tests
│ │ │ │ ├── uvmt_cvmcu_dbg_st_fix_ill_stim_test.sv
│ │ │ │ ├── uvmt_cvmcu_dbg_st_fix_stim_test.sv
│ │ │ │ ├── uvmt_cvmcu_dbg_st_rand_ill_stim_test.sv
│ │ │ │ └── uvmt_cvmcu_dbg_st_rand_stim_test.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_base_test.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_base_test_workarounds.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_constants.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_dut_wrap.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_ftdecs.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_macros.svh
│ │ │ ├── uvmt_cvmcu_dbg_st_pkg.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_tb.sv
│ │ │ ├── uvmt_cvmcu_dbg_st_tdefs.sv
│ │ │ └── uvmt_cvmcu_dbg_st_test_cfg.sv
│ │ └── ts.yml
│ └── uvmt_cvmcu_event_st
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ ├── tb_block_diagram.svg
│ │ ├── tb_block_diagram.vsdx
│ │ └── user_guide.md
│ │ ├── examples
│ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ ├── tests
│ │ │ ├── uvmt_cvmcu_event_st_fix_ill_stim_test.sv
│ │ │ ├── uvmt_cvmcu_event_st_fix_stim_test.sv
│ │ │ ├── uvmt_cvmcu_event_st_rand_ill_stim_test.sv
│ │ │ └── uvmt_cvmcu_event_st_rand_stim_test.sv
│ │ ├── uvmt_cvmcu_event_st_base_test.sv
│ │ ├── uvmt_cvmcu_event_st_base_test_workarounds.sv
│ │ ├── uvmt_cvmcu_event_st_constants.sv
│ │ ├── uvmt_cvmcu_event_st_dut_wrap.sv
│ │ ├── uvmt_cvmcu_event_st_ftdecs.sv
│ │ ├── uvmt_cvmcu_event_st_macros.svh
│ │ ├── uvmt_cvmcu_event_st_pkg.sv
│ │ ├── uvmt_cvmcu_event_st_tb.sv
│ │ ├── uvmt_cvmcu_event_st_tdefs.sv
│ │ └── uvmt_cvmcu_event_st_test_cfg.sv
│ │ └── ts.yml
├── blocks
│ ├── uvma_adv_timer_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_adv_timer_b_agent.sv
│ │ │ ├── uvma_adv_timer_b_cp_drv.sv
│ │ │ ├── uvma_adv_timer_b_cp_mon.sv
│ │ │ ├── uvma_adv_timer_b_dpi_drv.sv
│ │ │ ├── uvma_adv_timer_b_dpi_mon.sv
│ │ │ ├── uvma_adv_timer_b_dpo_drv.sv
│ │ │ ├── uvma_adv_timer_b_dpo_mon.sv
│ │ │ ├── uvma_adv_timer_b_drv.sv
│ │ │ ├── uvma_adv_timer_b_logger.sv
│ │ │ ├── uvma_adv_timer_b_mon.sv
│ │ │ └── uvma_adv_timer_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvma_adv_timer_b_cfg.sv
│ │ │ ├── uvma_adv_timer_b_cntxt.sv
│ │ │ ├── uvma_adv_timer_b_cp_mon_trn.sv
│ │ │ ├── uvma_adv_timer_b_dpi_mon_trn.sv
│ │ │ ├── uvma_adv_timer_b_dpo_mon_trn.sv
│ │ │ └── uvma_adv_timer_b_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_adv_timer_b_base_seq.sv
│ │ │ ├── uvma_adv_timer_b_cp_seq_item.sv
│ │ │ ├── uvma_adv_timer_b_dpi_seq_item.sv
│ │ │ ├── uvma_adv_timer_b_dpo_seq_item.sv
│ │ │ ├── uvma_adv_timer_b_idle_seq.sv
│ │ │ ├── uvma_adv_timer_b_in_drv_seq.sv
│ │ │ ├── uvma_adv_timer_b_mon_seq.sv
│ │ │ ├── uvma_adv_timer_b_out_drv_seq.sv
│ │ │ └── uvma_adv_timer_b_seq_item.sv
│ │ │ ├── uvma_adv_timer_b_constants.sv
│ │ │ ├── uvma_adv_timer_b_ftdecs.sv
│ │ │ ├── uvma_adv_timer_b_if.sv
│ │ │ ├── uvma_adv_timer_b_if_chkr.sv
│ │ │ ├── uvma_adv_timer_b_macros.svh
│ │ │ ├── uvma_adv_timer_b_pkg.sv
│ │ │ └── uvma_adv_timer_b_tdefs.sv
│ ├── uvma_tcounter_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_tcounter_b_agent.sv
│ │ │ ├── uvma_tcounter_b_cp_drv.sv
│ │ │ ├── uvma_tcounter_b_cp_mon.sv
│ │ │ ├── uvma_tcounter_b_dpi_drv.sv
│ │ │ ├── uvma_tcounter_b_dpi_mon.sv
│ │ │ ├── uvma_tcounter_b_dpo_drv.sv
│ │ │ ├── uvma_tcounter_b_dpo_mon.sv
│ │ │ ├── uvma_tcounter_b_drv.sv
│ │ │ ├── uvma_tcounter_b_logger.sv
│ │ │ ├── uvma_tcounter_b_mon.sv
│ │ │ └── uvma_tcounter_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvma_tcounter_b_cfg.sv
│ │ │ ├── uvma_tcounter_b_cntxt.sv
│ │ │ ├── uvma_tcounter_b_cp_mon_trn.sv
│ │ │ ├── uvma_tcounter_b_dpi_mon_trn.sv
│ │ │ ├── uvma_tcounter_b_dpo_mon_trn.sv
│ │ │ └── uvma_tcounter_b_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_tcounter_b_base_seq.sv
│ │ │ ├── uvma_tcounter_b_cp_seq_item.sv
│ │ │ ├── uvma_tcounter_b_dpi_seq_item.sv
│ │ │ ├── uvma_tcounter_b_dpo_seq_item.sv
│ │ │ ├── uvma_tcounter_b_idle_seq.sv
│ │ │ ├── uvma_tcounter_b_in_drv_seq.sv
│ │ │ ├── uvma_tcounter_b_mon_seq.sv
│ │ │ ├── uvma_tcounter_b_out_drv_seq.sv
│ │ │ └── uvma_tcounter_b_seq_item.sv
│ │ │ ├── uvma_tcounter_b_constants.sv
│ │ │ ├── uvma_tcounter_b_ftdecs.sv
│ │ │ ├── uvma_tcounter_b_if.sv
│ │ │ ├── uvma_tcounter_b_if_chkr.sv
│ │ │ ├── uvma_tcounter_b_macros.svh
│ │ │ ├── uvma_tcounter_b_pkg.sv
│ │ │ └── uvma_tcounter_b_tdefs.sv
│ ├── uvma_tprescaler_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── agent_block_diagram.svg
│ │ │ ├── agent_block_diagram.vsdx
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvma_tprescaler_b_agent.sv
│ │ │ ├── uvma_tprescaler_b_cp_drv.sv
│ │ │ ├── uvma_tprescaler_b_cp_mon.sv
│ │ │ ├── uvma_tprescaler_b_dpi_drv.sv
│ │ │ ├── uvma_tprescaler_b_dpi_mon.sv
│ │ │ ├── uvma_tprescaler_b_dpo_drv.sv
│ │ │ ├── uvma_tprescaler_b_dpo_mon.sv
│ │ │ ├── uvma_tprescaler_b_drv.sv
│ │ │ ├── uvma_tprescaler_b_logger.sv
│ │ │ ├── uvma_tprescaler_b_mon.sv
│ │ │ └── uvma_tprescaler_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvma_tprescaler_b_cfg.sv
│ │ │ ├── uvma_tprescaler_b_cntxt.sv
│ │ │ ├── uvma_tprescaler_b_cp_mon_trn.sv
│ │ │ ├── uvma_tprescaler_b_dpi_mon_trn.sv
│ │ │ ├── uvma_tprescaler_b_dpo_mon_trn.sv
│ │ │ └── uvma_tprescaler_b_mon_trn.sv
│ │ │ ├── seq
│ │ │ ├── uvma_tprescaler_b_base_seq.sv
│ │ │ ├── uvma_tprescaler_b_cp_seq_item.sv
│ │ │ ├── uvma_tprescaler_b_dpi_seq_item.sv
│ │ │ ├── uvma_tprescaler_b_dpo_seq_item.sv
│ │ │ ├── uvma_tprescaler_b_idle_seq.sv
│ │ │ ├── uvma_tprescaler_b_in_drv_seq.sv
│ │ │ ├── uvma_tprescaler_b_mon_seq.sv
│ │ │ ├── uvma_tprescaler_b_out_drv_seq.sv
│ │ │ └── uvma_tprescaler_b_seq_item.sv
│ │ │ ├── uvma_tprescaler_b_constants.sv
│ │ │ ├── uvma_tprescaler_b_ftdecs.sv
│ │ │ ├── uvma_tprescaler_b_if.sv
│ │ │ ├── uvma_tprescaler_b_if_chkr.sv
│ │ │ ├── uvma_tprescaler_b_macros.svh
│ │ │ ├── uvma_tprescaler_b_pkg.sv
│ │ │ └── uvma_tprescaler_b_tdefs.sv
│ ├── uvme_adv_timer_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_adv_timer_b_cov_model.sv
│ │ │ ├── uvme_adv_timer_b_env.sv
│ │ │ ├── uvme_adv_timer_b_prd.sv
│ │ │ └── uvme_adv_timer_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_adv_timer_b_cfg.sv
│ │ │ └── uvme_adv_timer_b_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_adv_timer_b_base_seq.sv
│ │ │ ├── uvme_adv_timer_b_fix_ill_stim_seq.sv
│ │ │ ├── uvme_adv_timer_b_fix_stim_seq.sv
│ │ │ ├── uvme_adv_timer_b_rand_ill_stim_seq.sv
│ │ │ ├── uvme_adv_timer_b_rand_stim_seq.sv
│ │ │ └── uvme_adv_timer_b_seq_lib.sv
│ │ │ ├── uvme_adv_timer_b_constants.sv
│ │ │ ├── uvme_adv_timer_b_ftdecs.sv
│ │ │ ├── uvme_adv_timer_b_macros.svh
│ │ │ ├── uvme_adv_timer_b_pkg.sv
│ │ │ └── uvme_adv_timer_b_tdefs.sv
│ ├── uvme_tcounter_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_tcounter_b_cov_model.sv
│ │ │ ├── uvme_tcounter_b_env.sv
│ │ │ ├── uvme_tcounter_b_prd.sv
│ │ │ └── uvme_tcounter_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_tcounter_b_cfg.sv
│ │ │ └── uvme_tcounter_b_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_tcounter_b_base_seq.sv
│ │ │ ├── uvme_tcounter_b_fix_ill_stim_seq.sv
│ │ │ ├── uvme_tcounter_b_fix_stim_seq.sv
│ │ │ ├── uvme_tcounter_b_rand_ill_stim_seq.sv
│ │ │ ├── uvme_tcounter_b_rand_stim_seq.sv
│ │ │ └── uvme_tcounter_b_seq_lib.sv
│ │ │ ├── uvme_tcounter_b_constants.sv
│ │ │ ├── uvme_tcounter_b_ftdecs.sv
│ │ │ ├── uvme_tcounter_b_macros.svh
│ │ │ ├── uvme_tcounter_b_pkg.sv
│ │ │ └── uvme_tcounter_b_tdefs.sv
│ ├── uvme_tprescaler_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── env_block_diagram.svg
│ │ │ ├── env_block_diagram.vsdx
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_tprescaler_b_cov_model.sv
│ │ │ ├── uvme_tprescaler_b_env.sv
│ │ │ ├── uvme_tprescaler_b_prd.sv
│ │ │ └── uvme_tprescaler_b_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_tprescaler_b_cfg.sv
│ │ │ └── uvme_tprescaler_b_cntxt.sv
│ │ │ ├── seq
│ │ │ ├── uvme_tprescaler_b_base_seq.sv
│ │ │ ├── uvme_tprescaler_b_fix_ill_stim_seq.sv
│ │ │ ├── uvme_tprescaler_b_fix_stim_seq.sv
│ │ │ ├── uvme_tprescaler_b_rand_ill_stim_seq.sv
│ │ │ ├── uvme_tprescaler_b_rand_stim_seq.sv
│ │ │ └── uvme_tprescaler_b_seq_lib.sv
│ │ │ ├── uvme_tprescaler_b_constants.sv
│ │ │ ├── uvme_tprescaler_b_ftdecs.sv
│ │ │ ├── uvme_tprescaler_b_macros.svh
│ │ │ ├── uvme_tprescaler_b_pkg.sv
│ │ │ └── uvme_tprescaler_b_tdefs.sv
│ ├── uvmt_adv_timer_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ ├── tb_block_diagram.svg
│ │ │ ├── tb_block_diagram.vsdx
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ │ ├── tests
│ │ │ │ ├── uvmt_adv_timer_b_fix_ill_stim_test.sv
│ │ │ │ ├── uvmt_adv_timer_b_fix_stim_test.sv
│ │ │ │ ├── uvmt_adv_timer_b_rand_ill_stim_test.sv
│ │ │ │ └── uvmt_adv_timer_b_rand_stim_test.sv
│ │ │ ├── uvmt_adv_timer_b_base_test.sv
│ │ │ ├── uvmt_adv_timer_b_base_test_workarounds.sv
│ │ │ ├── uvmt_adv_timer_b_constants.sv
│ │ │ ├── uvmt_adv_timer_b_dut_wrap.sv
│ │ │ ├── uvmt_adv_timer_b_ftdecs.sv
│ │ │ ├── uvmt_adv_timer_b_macros.svh
│ │ │ ├── uvmt_adv_timer_b_pkg.sv
│ │ │ ├── uvmt_adv_timer_b_tb.sv
│ │ │ ├── uvmt_adv_timer_b_tdefs.sv
│ │ │ └── uvmt_adv_timer_b_test_cfg.sv
│ │ └── ts.yml
│ ├── uvmt_tcounter_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ ├── tb_block_diagram.svg
│ │ │ ├── tb_block_diagram.vsdx
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ │ ├── tests
│ │ │ │ ├── uvmt_tcounter_b_fix_ill_stim_test.sv
│ │ │ │ ├── uvmt_tcounter_b_fix_stim_test.sv
│ │ │ │ ├── uvmt_tcounter_b_rand_ill_stim_test.sv
│ │ │ │ └── uvmt_tcounter_b_rand_stim_test.sv
│ │ │ ├── uvmt_tcounter_b_base_test.sv
│ │ │ ├── uvmt_tcounter_b_base_test_workarounds.sv
│ │ │ ├── uvmt_tcounter_b_constants.sv
│ │ │ ├── uvmt_tcounter_b_dut_wrap.sv
│ │ │ ├── uvmt_tcounter_b_ftdecs.sv
│ │ │ ├── uvmt_tcounter_b_macros.svh
│ │ │ ├── uvmt_tcounter_b_pkg.sv
│ │ │ ├── uvmt_tcounter_b_tb.sv
│ │ │ ├── uvmt_tcounter_b_tdefs.sv
│ │ │ └── uvmt_tcounter_b_test_cfg.sv
│ │ └── ts.yml
│ └── uvmt_tprescaler_b
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ ├── tb_block_diagram.svg
│ │ ├── tb_block_diagram.vsdx
│ │ └── user_guide.md
│ │ ├── examples
│ │ └── test.sv
│ │ ├── ip.yml
│ │ ├── src
│ │ ├── tests
│ │ │ ├── uvmt_tprescaler_b_fix_ill_stim_test.sv
│ │ │ ├── uvmt_tprescaler_b_fix_stim_test.sv
│ │ │ ├── uvmt_tprescaler_b_rand_ill_stim_test.sv
│ │ │ └── uvmt_tprescaler_b_rand_stim_test.sv
│ │ ├── uvmt_tprescaler_b_base_test.sv
│ │ ├── uvmt_tprescaler_b_base_test_workarounds.sv
│ │ ├── uvmt_tprescaler_b_constants.sv
│ │ ├── uvmt_tprescaler_b_dut_wrap.sv
│ │ ├── uvmt_tprescaler_b_ftdecs.sv
│ │ ├── uvmt_tprescaler_b_macros.svh
│ │ ├── uvmt_tprescaler_b_pkg.sv
│ │ ├── uvmt_tprescaler_b_tb.sv
│ │ ├── uvmt_tprescaler_b_tdefs.sv
│ │ └── uvmt_tprescaler_b_test_cfg.sv
│ │ └── ts.yml
├── chip
│ ├── uvme_cvmcu_chip
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ │ ├── dev_guide.md
│ │ │ ├── index.md
│ │ │ └── user_guide.md
│ │ ├── examples
│ │ │ ├── instantiation.sv
│ │ │ └── sequence.sv
│ │ ├── ip.yml
│ │ └── src
│ │ │ ├── comps
│ │ │ ├── uvme_cvmcu_chip_cov_model.sv
│ │ │ ├── uvme_cvmcu_chip_env.sv
│ │ │ ├── uvme_cvmcu_chip_prd.sv
│ │ │ ├── uvme_cvmcu_chip_sb.sv
│ │ │ └── uvme_cvmcu_chip_sqr.sv
│ │ │ ├── obj
│ │ │ ├── uvme_cvmcu_chip_cfg.sv
│ │ │ └── uvme_cvmcu_chip_cntxt.sv
│ │ │ ├── reg
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_apb_events_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err0_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err1_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err2_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err3_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err4_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err5_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err6_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_err7_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_fifo_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask0_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask1_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask2_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask3_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask4_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask5_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask6_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_event_mask7_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_timer_hi_event_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_event_ctrl_timer_lo_event_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_fll_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_clrgpio_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_intack_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_out0_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_out1_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_out2_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_out3_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_pin0_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_pin1_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_pin2_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_pin3_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_rdstat_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_setgpio_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_setint_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_setmode_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_setsel_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_gpio_toggpio_reg.sv
│ │ │ ├── uvme_cvmcu_chip_apb_i2cs_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_apb_soc_ctrl_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_debug_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_efpga_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_reg_ignore_lists.sv
│ │ │ ├── uvme_cvmcu_chip_udma_camera_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_cfg_evt_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_clk_en_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_periph_reset_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_udma_cfg_evt_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_ctrl_udma_clk_en_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_i2cm_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_qspi_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_sdio_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_data_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_error_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_irq_en_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_reg_block.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_rx_cfg_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_rx_saddr_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_rx_size_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_status_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_tx_cfg_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_tx_saddr_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_tx_size_reg.sv
│ │ │ ├── uvme_cvmcu_chip_udma_uart_uart_setup_reg.sv
│ │ │ └── uvme_cvmcu_chip_udma_uart_valid_reg.sv
│ │ │ ├── seq
│ │ │ ├── uvme_cvmcu_chip_base_seq.sv
│ │ │ ├── uvme_cvmcu_chip_cfg_seq.sv
│ │ │ ├── uvme_cvmcu_chip_init_seq.sv
│ │ │ ├── uvme_cvmcu_chip_reset_seq.sv
│ │ │ ├── uvme_cvmcu_chip_seq_lib.sv
│ │ │ ├── uvme_cvmcu_chip_uart_eg_seq.sv
│ │ │ ├── uvme_cvmcu_chip_uart_ig_seq.sv
│ │ │ └── uvme_cvmcu_chip_udma_uart_seq.sv
│ │ │ ├── uvme_cvmcu_chip_chkr.sv
│ │ │ ├── uvme_cvmcu_chip_constants.sv
│ │ │ ├── uvme_cvmcu_chip_ftdecs.sv
│ │ │ ├── uvme_cvmcu_chip_macros.svh
│ │ │ ├── uvme_cvmcu_chip_pkg.sv
│ │ │ ├── uvme_cvmcu_chip_probe_if.sv
│ │ │ └── uvme_cvmcu_chip_tdefs.sv
│ └── uvmt_cvmcu_chip
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── TODOS.azure.csv
│ │ ├── TODOS.github.csv
│ │ ├── TODOS.gitlab.csv
│ │ ├── TODOS.jira.csv
│ │ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ └── user_guide.md
│ │ ├── examples
│ │ └── test.sv
│ │ ├── ip.lock.yml
│ │ ├── ip.yml
│ │ ├── src
│ │ ├── tests
│ │ │ ├── uvmt_cvmcu_chip_mem_access_test.sv
│ │ │ ├── uvmt_cvmcu_chip_mem_walk_test.sv
│ │ │ ├── uvmt_cvmcu_chip_reg_access_test.sv
│ │ │ ├── uvmt_cvmcu_chip_reg_bit_bash_test.sv
│ │ │ ├── uvmt_cvmcu_chip_reg_hw_reset_test.sv
│ │ │ ├── uvmt_cvmcu_chip_shared_access_test.sv
│ │ │ ├── uvmt_cvmcu_chip_uart_eg_test.sv
│ │ │ └── uvmt_cvmcu_chip_uart_ig_test.sv
│ │ ├── uvmt_cvmcu_chip_base_test.sv
│ │ ├── uvmt_cvmcu_chip_base_test_workarounds.sv
│ │ ├── uvmt_cvmcu_chip_constants.sv
│ │ ├── uvmt_cvmcu_chip_dut_wrap.sv
│ │ ├── uvmt_cvmcu_chip_ftdecs.sv
│ │ ├── uvmt_cvmcu_chip_macros.svh
│ │ ├── uvmt_cvmcu_chip_pkg.sv
│ │ ├── uvmt_cvmcu_chip_tb.sv
│ │ ├── uvmt_cvmcu_chip_tdefs.sv
│ │ └── uvmt_cvmcu_chip_test_cfg.sv
│ │ └── ts.yml
└── ss
│ ├── uvme_apb_adv_timer_ss
│ ├── .gitignore
│ ├── README.md
│ ├── TODOS.azure.csv
│ ├── TODOS.github.csv
│ ├── TODOS.gitlab.csv
│ ├── TODOS.jira.csv
│ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ └── user_guide.md
│ ├── examples
│ │ ├── instantiation.sv
│ │ └── sequence.sv
│ ├── ip.yml
│ └── src
│ │ ├── comps
│ │ ├── uvme_apb_adv_timer_ss_cov_model.sv
│ │ ├── uvme_apb_adv_timer_ss_env.sv
│ │ ├── uvme_apb_adv_timer_ss_prd.sv
│ │ ├── uvme_apb_adv_timer_ss_sb.sv
│ │ └── uvme_apb_adv_timer_ss_sqr.sv
│ │ ├── obj
│ │ ├── uvme_apb_adv_timer_ss_cfg.sv
│ │ └── uvme_apb_adv_timer_ss_cntxt.sv
│ │ ├── reg
│ │ ├── uvme_apb_adv_timer_ss_cg_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_event_cfg_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_reg_block.sv
│ │ ├── uvme_apb_adv_timer_ss_reg_ignore_lists.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_cmd_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_config_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_counter_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_th_channel0_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_th_channel1_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_th_channel2_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_th_channel3_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t0_threshold_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_cmd_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_config_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_counter_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_th_channel0_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_th_channel1_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_th_channel2_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_th_channel3_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t1_threshold_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_cmd_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_config_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_counter_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_th_channel0_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_th_channel1_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_th_channel2_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_th_channel3_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t2_threshold_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_cmd_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_config_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_counter_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_th_channel0_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_th_channel1_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_th_channel2_reg.sv
│ │ ├── uvme_apb_adv_timer_ss_t3_th_channel3_reg.sv
│ │ └── uvme_apb_adv_timer_ss_t3_threshold_reg.sv
│ │ ├── seq
│ │ ├── uvme_apb_adv_timer_ss_base_seq.sv
│ │ ├── uvme_apb_adv_timer_ss_cfg_seq.sv
│ │ ├── uvme_apb_adv_timer_ss_init_seq.sv
│ │ ├── uvme_apb_adv_timer_ss_reset_seq.sv
│ │ └── uvme_apb_adv_timer_ss_seq_lib.sv
│ │ ├── uvme_apb_adv_timer_ss_chkr.sv
│ │ ├── uvme_apb_adv_timer_ss_constants.sv
│ │ ├── uvme_apb_adv_timer_ss_ftdecs.sv
│ │ ├── uvme_apb_adv_timer_ss_macros.svh
│ │ ├── uvme_apb_adv_timer_ss_pkg.sv
│ │ ├── uvme_apb_adv_timer_ss_probe_if.sv
│ │ └── uvme_apb_adv_timer_ss_tdefs.sv
│ ├── uvme_apb_timer_ss
│ ├── .gitignore
│ ├── README.md
│ ├── TODOS.azure.csv
│ ├── TODOS.github.csv
│ ├── TODOS.gitlab.csv
│ ├── TODOS.jira.csv
│ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ └── user_guide.md
│ ├── examples
│ │ ├── instantiation.sv
│ │ └── sequence.sv
│ ├── ip.yml
│ └── src
│ │ ├── comps
│ │ ├── uvme_apb_timer_ss_cov_model.sv
│ │ ├── uvme_apb_timer_ss_env.sv
│ │ ├── uvme_apb_timer_ss_prd.sv
│ │ ├── uvme_apb_timer_ss_sb.sv
│ │ └── uvme_apb_timer_ss_sqr.sv
│ │ ├── obj
│ │ ├── uvme_apb_timer_ss_cfg.sv
│ │ └── uvme_apb_timer_ss_cntxt.sv
│ │ ├── reg
│ │ ├── uvme_apb_timer_ss_cfg_reg_hi_reg.sv
│ │ ├── uvme_apb_timer_ss_cfg_reg_low_reg.sv
│ │ ├── uvme_apb_timer_ss_reg_block.sv
│ │ ├── uvme_apb_timer_ss_reg_ignore_lists.sv
│ │ ├── uvme_apb_timer_ss_timer_cmp_hi_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_cmp_lo_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_reset_hi_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_reset_lo_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_start_hi_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_start_lo_reg.sv
│ │ ├── uvme_apb_timer_ss_timer_val_hi_reg.sv
│ │ └── uvme_apb_timer_ss_timer_val_lo_reg.sv
│ │ ├── seq
│ │ ├── uvme_apb_timer_ss_base_seq.sv
│ │ ├── uvme_apb_timer_ss_cfg_seq.sv
│ │ ├── uvme_apb_timer_ss_init_seq.sv
│ │ ├── uvme_apb_timer_ss_reset_seq.sv
│ │ └── uvme_apb_timer_ss_seq_lib.sv
│ │ ├── uvme_apb_timer_ss_chkr.sv
│ │ ├── uvme_apb_timer_ss_constants.sv
│ │ ├── uvme_apb_timer_ss_ftdecs.sv
│ │ ├── uvme_apb_timer_ss_macros.svh
│ │ ├── uvme_apb_timer_ss_pkg.sv
│ │ ├── uvme_apb_timer_ss_probe_if.sv
│ │ └── uvme_apb_timer_ss_tdefs.sv
│ ├── uvmt_apb_adv_timer_ss
│ ├── .gitignore
│ ├── README.md
│ ├── TODOS.azure.csv
│ ├── TODOS.github.csv
│ ├── TODOS.gitlab.csv
│ ├── TODOS.jira.csv
│ ├── docs
│ │ ├── dev_guide.md
│ │ ├── index.md
│ │ └── user_guide.md
│ ├── examples
│ │ └── test.sv
│ ├── ip.yml
│ ├── src
│ │ ├── tests
│ │ │ ├── uvmt_apb_adv_timer_ss_mem_access_test.sv
│ │ │ ├── uvmt_apb_adv_timer_ss_mem_walk_test.sv
│ │ │ ├── uvmt_apb_adv_timer_ss_reg_access_test.sv
│ │ │ ├── uvmt_apb_adv_timer_ss_reg_bit_bash_test.sv
│ │ │ ├── uvmt_apb_adv_timer_ss_reg_hw_reset_test.sv
│ │ │ └── uvmt_apb_adv_timer_ss_shared_access_test.sv
│ │ ├── uvmt_apb_adv_timer_ss_base_test.sv
│ │ ├── uvmt_apb_adv_timer_ss_base_test_workarounds.sv
│ │ ├── uvmt_apb_adv_timer_ss_constants.sv
│ │ ├── uvmt_apb_adv_timer_ss_dut_wrap.sv
│ │ ├── uvmt_apb_adv_timer_ss_ftdecs.sv
│ │ ├── uvmt_apb_adv_timer_ss_macros.svh
│ │ ├── uvmt_apb_adv_timer_ss_pkg.sv
│ │ ├── uvmt_apb_adv_timer_ss_tb.sv
│ │ ├── uvmt_apb_adv_timer_ss_tdefs.sv
│ │ └── uvmt_apb_adv_timer_ss_test_cfg.sv
│ └── ts.yml
│ └── uvmt_apb_timer_ss
│ ├── .gitignore
│ ├── README.md
│ ├── TODOS.azure.csv
│ ├── TODOS.github.csv
│ ├── TODOS.gitlab.csv
│ ├── TODOS.jira.csv
│ ├── docs
│ ├── dev_guide.md
│ ├── index.md
│ └── user_guide.md
│ ├── examples
│ └── test.sv
│ ├── ip.yml
│ ├── src
│ ├── tests
│ │ ├── uvmt_apb_timer_ss_mem_access_test.sv
│ │ ├── uvmt_apb_timer_ss_mem_walk_test.sv
│ │ ├── uvmt_apb_timer_ss_reg_access_test.sv
│ │ ├── uvmt_apb_timer_ss_reg_bit_bash_test.sv
│ │ ├── uvmt_apb_timer_ss_reg_hw_reset_test.sv
│ │ └── uvmt_apb_timer_ss_shared_access_test.sv
│ ├── uvmt_apb_timer_ss_base_test.sv
│ ├── uvmt_apb_timer_ss_base_test_workarounds.sv
│ ├── uvmt_apb_timer_ss_constants.sv
│ ├── uvmt_apb_timer_ss_dut_wrap.sv
│ ├── uvmt_apb_timer_ss_ftdecs.sv
│ ├── uvmt_apb_timer_ss_macros.svh
│ ├── uvmt_apb_timer_ss_pkg.sv
│ ├── uvmt_apb_timer_ss_tb.sv
│ ├── uvmt_apb_timer_ss_tdefs.sv
│ └── uvmt_apb_timer_ss_test_cfg.sv
│ └── ts.yml
├── lint
└── .gitignore
├── mdc_config.yml
├── mdc_ignore
├── mio.toml
├── rtl
└── .gitignore
├── sim
└── .gitignore
└── tools
└── .gitignore
/.gitignore:
--------------------------------------------------------------------------------
1 | .pydevproject
2 | .mio
3 | .mdc
4 | .mdc_empty_dir_sync
5 | *_backup
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "rtl/core-v-mcu"]
2 | path = rtl/core-v-mcu
3 | url = https://github.com/Datum-Technology-Corporation/core-v-mcu.git
4 | branch = shelled_core
5 |
--------------------------------------------------------------------------------
/.svproject:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 |
5 | # Contributing
6 | New Contributors are always welcome.
7 |
8 | ## Contributor Agreement
9 | Most Contributors are [Members](https://www.openhwgroup.org/membership/) of the
10 | OpenHW Group and participate in one or more [Technical Task Groups](https://www.openhwgroup.org/working-groups/).
11 | Contributors must be covered by the terms of the [Eclipse Contributor Agreement](https://www.eclipse.org/legal/ECA.php)
12 | (for individuals) **or** the [Eclipse Member Committer and Contributor Agreement](https://www.eclipse.org/legal/committer_process/EclipseMemberCommitterAgreement.pdf)
13 | (for employees of Member companies).
14 | The ECA/MCCA provides a legal framework for a Contributor's technical contributions to the OpenHW Group,
15 | including provisions for grant of copyright license and a Developer
16 | Certificate of Origin on contributions merged into OpenHW Group repositories.
17 |
--------------------------------------------------------------------------------
/docs/.gitignore:
--------------------------------------------------------------------------------
1 | .~lock*
--------------------------------------------------------------------------------
/docs/adv_timer_b_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/adv_timer_b_dv_specs.odt
--------------------------------------------------------------------------------
/docs/apb_adv_timer_ss_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/apb_adv_timer_ss_dv_specs.odt
--------------------------------------------------------------------------------
/docs/apb_adv_timer_ss_reg_model.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/apb_adv_timer_ss_reg_model.odt
--------------------------------------------------------------------------------
/docs/apb_timer_ss_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/apb_timer_ss_dv_specs.odt
--------------------------------------------------------------------------------
/docs/apb_timer_ss_reg_model.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/apb_timer_ss_reg_model.odt
--------------------------------------------------------------------------------
/docs/core-v-mcu-uvm_interrupts.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/core-v-mcu-uvm_interrupts.odt
--------------------------------------------------------------------------------
/docs/cvmcu.uvmx.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu.uvmx.ods
--------------------------------------------------------------------------------
/docs/cvmcu_chip_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_chip_dv_specs.odt
--------------------------------------------------------------------------------
/docs/cvmcu_chip_reg_model.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_chip_reg_model.odt
--------------------------------------------------------------------------------
/docs/cvmcu_cpi_agent_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_cpi_agent_dv_specs.odt
--------------------------------------------------------------------------------
/docs/cvmcu_dbg_agent_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_dbg_agent_dv_specs.odt
--------------------------------------------------------------------------------
/docs/cvmcu_event_agent_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_event_agent_dv_specs.odt
--------------------------------------------------------------------------------
/docs/cvmcu_io_agent_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_io_agent_dv_specs.odt
--------------------------------------------------------------------------------
/docs/cvmcu_uvm_block_diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/cvmcu_uvm_block_diagram.png
--------------------------------------------------------------------------------
/docs/efpga.uvmx.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/efpga.uvmx.ods
--------------------------------------------------------------------------------
/docs/peripherals.uvmx.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/peripherals.uvmx.ods
--------------------------------------------------------------------------------
/docs/tcounter_b_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/tcounter_b_dv_specs.odt
--------------------------------------------------------------------------------
/docs/tprescaler_b_dv_specs.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/tprescaler_b_dv_specs.odt
--------------------------------------------------------------------------------
/docs/udma.uvmx.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/udma.uvmx.ods
--------------------------------------------------------------------------------
/docs/verif_plan.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/docs/verif_plan.pdf
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Camera Parallel Interface UVM Agent
12 | * `examples` - Code samples for using and extending this agent
13 | * `src` - Source code
14 |
15 | > * `comps` - UVM Components
16 | > * `obj` - UVM Objects and Monitor Transactions
17 | > * `seq` - UVM Sequences and Sequence Items
18 |
19 |
20 | # Dependencies
21 | It is dependent on the following IP:
22 |
23 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvma_cvmcu_cpi/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_cpi_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_cpi_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_cpi_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_cpi_dev_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_cpi_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_cpi_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_cpi_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_cpi_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_cpi_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_cpi_user_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_cpi_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_cpi_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_cvmcu_cpi"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Camera Parallel Interface UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Advanced; Parallel"
9 | description: "TODO Describe CORE-V-MCU Camera Parallel Interface UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_cvmcu_cpi_pkg.sv"]
36 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/src/seq/uvma_cvmcu_cpi_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_CPI_BASE_SEQ_SV__
7 | `define __UVMA_CVMCU_CPI_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Camera Parallel Interface Agent Sequences must extend.
12 | * @ingroup uvma_cvmcu_cpi_seq
13 | */
14 | class uvma_cvmcu_cpi_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_cvmcu_cpi_cfg_c ),
16 | .T_CNTXT (uvma_cvmcu_cpi_cntxt_c ),
17 | .T_SQR (uvma_cvmcu_cpi_sqr_c ),
18 | .T_SEQ_ITEM(uvma_cvmcu_cpi_seq_item_c)
19 | );
20 | `uvm_object_utils(uvma_cvmcu_cpi_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvma_cvmcu_cpi_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVMA_CVMCU_CPI_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/src/uvma_cvmcu_cpi_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_CPI_CONSTANTS_SV__
7 | `define __UVMA_CVMCU_CPI_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVMA_CVMCU_CPI_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/src/uvma_cvmcu_cpi_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_CPI_IF_CHKR_SV__
7 | `define __UVMA_CVMCU_CPI_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Encapsulates assertions targeting uvma_cvmcu_cpi_if.
12 | * @ingroup uvma_cvmcu_cpi_misc
13 | */
14 | module uvma_cvmcu_cpi_if_chkr(
15 | uvma_cvmcu_cpi_if cvmcu_cpi_if ///< Target interface handle
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvma_cvmcu_cpi_if_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_CVMCU_CPI_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/src/uvma_cvmcu_cpi_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_CPI_MACROS_SV__
7 | `define __UVMA_CVMCU_CPI_MACROS_SV__
8 |
9 |
10 | `define UVMA_CVMCU_CPI_DATA_MIN_SIZE 1
11 | `define UVMA_CVMCU_CPI_DATA_MAX_SIZE `UVM_PACKER_MAX_BYTES
12 | `define UVMA_CVMCU_CPI_DATA_MIN_WIDTH 12
13 | `define UVMA_CVMCU_CPI_DATA_MAX_WIDTH 20
14 |
15 |
16 | `endif // __UVMA_CVMCU_CPI_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_cpi/src/uvma_cvmcu_cpi_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_CPI_TDEFS_SV__
7 | `define __UVMA_CVMCU_CPI_TDEFS_SV__
8 |
9 |
10 | /**
11 | * Driving modes for uvma_cvmcu_cpi_agent_c when active.
12 | */
13 | typedef enum {
14 | UVMA_CVMCU_CPI_DRV_MODE_TX, ///< Drives TX
15 | UVMA_CVMCU_CPI_DRV_MODE_RX ///< Drives RX
16 | } uvma_cvmcu_cpi_mode_enum;
17 |
18 |
19 | /// @name Logic vectors
20 | /// @{
21 | typedef logic [(`UVMA_CVMCU_CPI_DATA_MAX_WIDTH-1):0] uvma_cvmcu_cpi_data_l_t; ///< Data logic vector
22 | /// @}
23 |
24 | /// @name Bit vectors
25 | /// @{
26 | typedef bit [(`UVMA_CVMCU_CPI_DATA_MAX_WIDTH-1):0] uvma_cvmcu_cpi_data_b_t; ///< Data bit vector
27 | /// @}
28 |
29 |
30 | `endif // __UVMA_CVMCU_CPI_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Debug Interface UVM Agent
12 | * `examples` - Code samples for using and extending this agent
13 | * `src` - Source code
14 |
15 | > * `comps` - UVM Components
16 | > * `obj` - UVM Objects and Monitor Transactions
17 | > * `seq` - UVM Sequences and Sequence Items
18 |
19 |
20 | # Dependencies
21 | It is dependent on the following IP:
22 |
23 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvma_cvmcu_dbg/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_dbg_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_dbg_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_dbg_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_dbg_dev_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_dbg_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_dbg_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_dbg_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_dbg_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_dbg_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_dbg_user_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_dbg_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_dbg_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_cvmcu_dbg"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Debug Interface UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Advanced; Parallel"
9 | description: "TODO Describe CORE-V-MCU Debug Interface UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_cvmcu_dbg_pkg.sv"]
36 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/src/seq/uvma_cvmcu_dbg_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_DBG_BASE_SEQ_SV__
7 | `define __UVMA_CVMCU_DBG_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Debug Interface Agent Sequences must extend.
12 | * @ingroup uvma_cvmcu_dbg_seq
13 | */
14 | class uvma_cvmcu_dbg_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_cvmcu_dbg_cfg_c ),
16 | .T_CNTXT (uvma_cvmcu_dbg_cntxt_c ),
17 | .T_SQR (uvma_cvmcu_dbg_sqr_c ),
18 | .T_SEQ_ITEM(uvma_cvmcu_dbg_seq_item_c)
19 | );
20 | `uvm_object_utils(uvma_cvmcu_dbg_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvma_cvmcu_dbg_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVMA_CVMCU_DBG_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/src/uvma_cvmcu_dbg_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_DBG_CONSTANTS_SV__
7 | `define __UVMA_CVMCU_DBG_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVMA_CVMCU_DBG_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/src/uvma_cvmcu_dbg_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_DBG_IF_CHKR_SV__
7 | `define __UVMA_CVMCU_DBG_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Encapsulates assertions targeting uvma_cvmcu_dbg_if.
12 | * @ingroup uvma_cvmcu_dbg_misc
13 | */
14 | module uvma_cvmcu_dbg_if_chkr(
15 | uvma_cvmcu_dbg_if cvmcu_dbg_if ///< Target interface handle
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvma_cvmcu_dbg_if_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_CVMCU_DBG_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/src/uvma_cvmcu_dbg_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_DBG_MACROS_SV__
7 | `define __UVMA_CVMCU_DBG_MACROS_SV__
8 |
9 |
10 | `define UVMA_CVMCU_DBG_DATA_MIN_SIZE 1
11 | `define UVMA_CVMCU_DBG_DATA_MAX_SIZE `UVM_PACKER_MAX_BYTES
12 |
13 |
14 | `endif // __UVMA_CVMCU_DBG_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_dbg/src/uvma_cvmcu_dbg_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_DBG_TDEFS_SV__
7 | `define __UVMA_CVMCU_DBG_TDEFS_SV__
8 |
9 |
10 | /**
11 | * Driving modes for uvma_cvmcu_dbg_agent_c when active.
12 | */
13 | typedef enum {
14 | UVMA_CVMCU_DBG_DRV_MODE_CORE, ///< Drives CORE
15 | UVMA_CVMCU_DBG_DRV_MODE_SYS ///< Drives SYS
16 | } uvma_cvmcu_dbg_mode_enum;
17 |
18 |
19 | /**
20 | * Event types
21 | */
22 | typedef enum {
23 | UVMA_CVMCU_DBG_DEBUG_REQ,
24 | UVMA_CVMCU_DBG_STOP_TIMER
25 | } uvma_cvmcu_dbg_event_type_enum;
26 |
27 |
28 | /// @name Logic vectors
29 | /// @{
30 | /// @}
31 |
32 | /// @name Bit vectors
33 | /// @{
34 | /// @}
35 |
36 |
37 | `endif // __UVMA_CVMCU_DBG_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Event Interface UVM Agent
12 | * `examples` - Code samples for using and extending this agent
13 | * `src` - Source code
14 |
15 | > * `comps` - UVM Components
16 | > * `obj` - UVM Objects and Monitor Transactions
17 | > * `seq` - UVM Sequences and Sequence Items
18 |
19 |
20 | # Dependencies
21 | It is dependent on the following IP:
22 |
23 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvma_cvmcu_event/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_event_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_event_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_event_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_event_dev_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_event_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_event_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_cvmcu_event_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_cvmcu_event_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_cvmcu_event_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvma_cvmcu_event_user_guide_description Description
22 |
23 |
24 | @section uvma_cvmcu_event_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_cvmcu_event_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_cvmcu_event"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Event Interface UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Advanced; Parallel"
9 | description: "TODO Describe CORE-V-MCU Event Interface UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_cvmcu_event_pkg.sv"]
36 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/src/seq/uvma_cvmcu_event_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_EVENT_BASE_SEQ_SV__
7 | `define __UVMA_CVMCU_EVENT_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Event Interface Agent Sequences must extend.
12 | * @ingroup uvma_cvmcu_event_seq
13 | */
14 | class uvma_cvmcu_event_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_cvmcu_event_cfg_c ),
16 | .T_CNTXT (uvma_cvmcu_event_cntxt_c ),
17 | .T_SQR (uvma_cvmcu_event_sqr_c ),
18 | .T_SEQ_ITEM(uvma_cvmcu_event_seq_item_c)
19 | );
20 | `uvm_object_utils(uvma_cvmcu_event_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvma_cvmcu_event_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVMA_CVMCU_EVENT_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/src/uvma_cvmcu_event_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_EVENT_CONSTANTS_SV__
7 | `define __UVMA_CVMCU_EVENT_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVMA_CVMCU_EVENT_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/src/uvma_cvmcu_event_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_EVENT_IF_CHKR_SV__
7 | `define __UVMA_CVMCU_EVENT_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Encapsulates assertions targeting uvma_cvmcu_event_if.
12 | * @ingroup uvma_cvmcu_event_misc
13 | */
14 | module uvma_cvmcu_event_if_chkr(
15 | uvma_cvmcu_event_if cvmcu_event_if ///< Target interface handle
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvma_cvmcu_event_if_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_CVMCU_EVENT_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/agents/uvma_cvmcu_event/src/uvma_cvmcu_event_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_CVMCU_EVENT_MACROS_SV__
7 | `define __UVMA_CVMCU_EVENT_MACROS_SV__
8 |
9 |
10 | `define UVMA_CVMCU_EVENT_DATA_MIN_SIZE 1
11 | `define UVMA_CVMCU_EVENT_DATA_MAX_SIZE `UVM_PACKER_MAX_BYTES
12 |
13 |
14 | `endif // __UVMA_CVMCU_EVENT_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment
12 | * `examples` - Code samples for using and extending this environment
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvma_cvmcu_cpi`
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment",1
3 | Issue,Implement or remove uvme_cvmcu_cpi_st_cfg_c::rules_cons,1
4 | Issue,Complete uvme_cvmcu_cpi_st_cfg_c scoreboard logging configuration,1
5 | Issue,Implement uvme_cvmcu_cpi_st_cfg_c::post_randomize() or remove altogether,1
6 | Issue,Describe uvme_cvmcu_cpi_st_prd_c::predict_agent(),1
7 | Issue,Describe uvme_cvmcu_cpi_st_prd_c::predict_e2e(),1
8 | Issue,Implement cvmcu_cpi_st_seq_item_cg,1
9 | Issue,Implement cvmcu_cpi_st_mon_trn_cg,1
10 | Issue,Implement cvmcu_cpi_st_tx_phy_seq_item_cg,1
11 | Issue,Implement cvmcu_cpi_st_rx_phy_seq_item_cg,1
12 | Issue,Implement cvmcu_cpi_st_phy_mon_trn_cg,1
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment",ip.yml,,open,,
3 | Implement or remove uvme_cvmcu_cpi_st_cfg_c::rules_cons,uvme_cvmcu_cpi_st_cfg.sv,,open,,
4 | Complete uvme_cvmcu_cpi_st_cfg_c scoreboard logging configuration,uvme_cvmcu_cpi_st_cfg.sv,,open,,
5 | Implement uvme_cvmcu_cpi_st_cfg_c::post_randomize() or remove altogether,uvme_cvmcu_cpi_st_cfg.sv,,open,,
6 | Describe uvme_cvmcu_cpi_st_prd_c::predict_agent(),uvme_cvmcu_cpi_st_prd.sv,,open,,
7 | Describe uvme_cvmcu_cpi_st_prd_c::predict_e2e(),uvme_cvmcu_cpi_st_prd.sv,,open,,
8 | Implement cvmcu_cpi_st_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,,open,,
9 | Implement cvmcu_cpi_st_mon_trn_cg,uvme_cvmcu_cpi_st_cov_model.sv,,open,,
10 | Implement cvmcu_cpi_st_tx_phy_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,,open,,
11 | Implement cvmcu_cpi_st_rx_phy_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,,open,,
12 | Implement cvmcu_cpi_st_phy_mon_trn_cg,uvme_cvmcu_cpi_st_cov_model.sv,,open,,
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment",ip.yml,
3 | Implement or remove uvme_cvmcu_cpi_st_cfg_c::rules_cons,uvme_cvmcu_cpi_st_cfg.sv,
4 | Complete uvme_cvmcu_cpi_st_cfg_c scoreboard logging configuration,uvme_cvmcu_cpi_st_cfg.sv,
5 | Implement uvme_cvmcu_cpi_st_cfg_c::post_randomize() or remove altogether,uvme_cvmcu_cpi_st_cfg.sv,
6 | Describe uvme_cvmcu_cpi_st_prd_c::predict_agent(),uvme_cvmcu_cpi_st_prd.sv,
7 | Describe uvme_cvmcu_cpi_st_prd_c::predict_e2e(),uvme_cvmcu_cpi_st_prd.sv,
8 | Implement cvmcu_cpi_st_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,
9 | Implement cvmcu_cpi_st_mon_trn_cg,uvme_cvmcu_cpi_st_cov_model.sv,
10 | Implement cvmcu_cpi_st_tx_phy_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,
11 | Implement cvmcu_cpi_st_rx_phy_seq_item_cg,uvme_cvmcu_cpi_st_cov_model.sv,
12 | Implement cvmcu_cpi_st_phy_mon_trn_cg,uvme_cvmcu_cpi_st_cov_model.sv,
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_cpi_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_cpi_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_cpi_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_cpi_st_dev_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_cpi_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_cpi_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvme_cvmcu_cpi_st/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_cpi_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_cpi_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_cpi_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_cpi_st_user_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_cpi_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_cpi_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_cvmcu_cpi_st"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Agent Self-Testing"
9 | description: "TODO Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_cvmcu_cpi": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "seq"]
36 | top-files: ["uvme_cvmcu_cpi_st_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/src/seq/uvme_cvmcu_cpi_st_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CPI_ST_BASE_SEQ_SV__
7 | `define __UVME_CVMCU_CPI_ST_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_cvmcu_cpi_st_seq
13 | */
14 | class uvme_cvmcu_cpi_st_base_seq_c extends uvmx_agent_env_seq_c #(
15 | .T_CFG (uvme_cvmcu_cpi_st_cfg_c ),
16 | .T_CNTXT(uvme_cvmcu_cpi_st_cntxt_c),
17 | .T_SQR (uvme_cvmcu_cpi_st_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_cvmcu_cpi_st_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_cvmcu_cpi_st_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVME_CVMCU_CPI_ST_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/src/uvme_cvmcu_cpi_st_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CPI_ST_CONSTANTS_SV__
7 | `define __UVME_CVMCU_CPI_ST_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_CVMCU_CPI_ST_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/src/uvme_cvmcu_cpi_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CPI_ST_FTDECS_SV__
7 | `define __UVME_CVMCU_CPI_ST_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_cvmcu_cpi_st_cfg_c ;
11 | typedef class uvme_cvmcu_cpi_st_cntxt_c;
12 |
13 |
14 | `endif // __UVME_CVMCU_CPI_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/src/uvme_cvmcu_cpi_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CPI_ST_MACROS_SV__
7 | `define __UVME_CVMCU_CPI_ST_MACROS_SV__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME__ST_ABC
12 | // `define UVME__ST_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_CVMCU_CPI_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_cpi_st/src/uvme_cvmcu_cpi_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CPI_ST_TDEFS_SV__
7 | `define __UVME_CVMCU_CPI_ST_TDEFS_SV__
8 |
9 |
10 |
11 |
12 | /**
13 | * Scoreboard specialization.
14 | */
15 | typedef uvmx_sb_simplex_c #(
16 | .T_ACT_TRN(uvma_cvmcu_cpi_mon_trn_c)
17 | ) uvme_cvmcu_cpi_st_sb_simplex_c;
18 |
19 | /**
20 | * Empty coverage model.
21 | */
22 | typedef uvmx_env_cov_model_c #(
23 | .T_CFG (uvme_cvmcu_cpi_st_cfg_c ),
24 | .T_CNTXT(uvme_cvmcu_cpi_st_cntxt_c)
25 | ) uvme_cvmcu_cpi_st_mock_cov_model_c;
26 |
27 |
28 | `endif // __UVME_CVMCU_CPI_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent Self-Test Environment
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent Self-Test Environment.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Debug Interface UVM Agent Self-Test Environment
12 | * `examples` - Code samples for using and extending this environment
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvma_cvmcu_dbg`
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Environment",1
3 | Issue,Implement or remove uvme_cvmcu_dbg_st_cfg_c::rules_cons,1
4 | Issue,Complete uvme_cvmcu_dbg_st_cfg_c scoreboard logging configuration,1
5 | Issue,Implement uvme_cvmcu_dbg_st_cfg_c::post_randomize() or remove altogether,1
6 | Issue,Implement cvmcu_dbg_st_seq_item_cg,1
7 | Issue,Implement cvmcu_dbg_st_mon_trn_cg,1
8 | Issue,Implement cvmcu_dbg_st_core_phy_seq_item_cg,1
9 | Issue,Implement cvmcu_dbg_st_sys_phy_seq_item_cg,1
10 | Issue,Implement cvmcu_dbg_st_phy_mon_trn_cg,1
11 | Issue,Describe uvme_cvmcu_dbg_st_prd_c::predict_agent(),1
12 | Issue,Describe uvme_cvmcu_dbg_st_prd_c::predict_e2e(),1
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Environment",ip.yml,,open,,
3 | Implement or remove uvme_cvmcu_dbg_st_cfg_c::rules_cons,uvme_cvmcu_dbg_st_cfg.sv,,open,,
4 | Complete uvme_cvmcu_dbg_st_cfg_c scoreboard logging configuration,uvme_cvmcu_dbg_st_cfg.sv,,open,,
5 | Implement uvme_cvmcu_dbg_st_cfg_c::post_randomize() or remove altogether,uvme_cvmcu_dbg_st_cfg.sv,,open,,
6 | Implement cvmcu_dbg_st_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,,open,,
7 | Implement cvmcu_dbg_st_mon_trn_cg,uvme_cvmcu_dbg_st_cov_model.sv,,open,,
8 | Implement cvmcu_dbg_st_core_phy_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,,open,,
9 | Implement cvmcu_dbg_st_sys_phy_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,,open,,
10 | Implement cvmcu_dbg_st_phy_mon_trn_cg,uvme_cvmcu_dbg_st_cov_model.sv,,open,,
11 | Describe uvme_cvmcu_dbg_st_prd_c::predict_agent(),uvme_cvmcu_dbg_st_prd.sv,,open,,
12 | Describe uvme_cvmcu_dbg_st_prd_c::predict_e2e(),uvme_cvmcu_dbg_st_prd.sv,,open,,
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Environment",ip.yml,
3 | Implement or remove uvme_cvmcu_dbg_st_cfg_c::rules_cons,uvme_cvmcu_dbg_st_cfg.sv,
4 | Complete uvme_cvmcu_dbg_st_cfg_c scoreboard logging configuration,uvme_cvmcu_dbg_st_cfg.sv,
5 | Implement uvme_cvmcu_dbg_st_cfg_c::post_randomize() or remove altogether,uvme_cvmcu_dbg_st_cfg.sv,
6 | Implement cvmcu_dbg_st_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,
7 | Implement cvmcu_dbg_st_mon_trn_cg,uvme_cvmcu_dbg_st_cov_model.sv,
8 | Implement cvmcu_dbg_st_core_phy_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,
9 | Implement cvmcu_dbg_st_sys_phy_seq_item_cg,uvme_cvmcu_dbg_st_cov_model.sv,
10 | Implement cvmcu_dbg_st_phy_mon_trn_cg,uvme_cvmcu_dbg_st_cov_model.sv,
11 | Describe uvme_cvmcu_dbg_st_prd_c::predict_agent(),uvme_cvmcu_dbg_st_prd.sv,
12 | Describe uvme_cvmcu_dbg_st_prd_c::predict_e2e(),uvme_cvmcu_dbg_st_prd.sv,
13 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_dbg_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_dbg_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_dbg_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_dbg_st_dev_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_dbg_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_dbg_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvme_cvmcu_dbg_st/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_dbg_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_dbg_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_dbg_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_dbg_st_user_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_dbg_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_dbg_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_cvmcu_dbg_st"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Debug Interface UVM Agent Self-Test Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Agent Self-Testing"
9 | description: "TODO Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_cvmcu_dbg": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "seq"]
36 | top-files: ["uvme_cvmcu_dbg_st_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/src/seq/uvme_cvmcu_dbg_st_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_DBG_ST_BASE_SEQ_SV__
7 | `define __UVME_CVMCU_DBG_ST_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Debug Interface UVM Agent Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_cvmcu_dbg_st_seq
13 | */
14 | class uvme_cvmcu_dbg_st_base_seq_c extends uvmx_agent_env_seq_c #(
15 | .T_CFG (uvme_cvmcu_dbg_st_cfg_c ),
16 | .T_CNTXT(uvme_cvmcu_dbg_st_cntxt_c),
17 | .T_SQR (uvme_cvmcu_dbg_st_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_cvmcu_dbg_st_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_cvmcu_dbg_st_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVME_CVMCU_DBG_ST_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/src/uvme_cvmcu_dbg_st_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_DBG_ST_CONSTANTS_SV__
7 | `define __UVME_CVMCU_DBG_ST_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_CVMCU_DBG_ST_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/src/uvme_cvmcu_dbg_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_DBG_ST_FTDECS_SV__
7 | `define __UVME_CVMCU_DBG_ST_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_cvmcu_dbg_st_cfg_c ;
11 | typedef class uvme_cvmcu_dbg_st_cntxt_c;
12 |
13 |
14 | `endif // __UVME_CVMCU_DBG_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/src/uvme_cvmcu_dbg_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_DBG_ST_MACROS_SV__
7 | `define __UVME_CVMCU_DBG_ST_MACROS_SV__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME__ST_ABC
12 | // `define UVME__ST_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_CVMCU_DBG_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_dbg_st/src/uvme_cvmcu_dbg_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_DBG_ST_TDEFS_SV__
7 | `define __UVME_CVMCU_DBG_ST_TDEFS_SV__
8 |
9 |
10 |
11 |
12 | /**
13 | * Scoreboard specialization.
14 | */
15 | typedef uvmx_sb_simplex_c #(
16 | .T_ACT_TRN(uvma_cvmcu_dbg_mon_trn_c)
17 | ) uvme_cvmcu_dbg_st_sb_simplex_c;
18 |
19 | /**
20 | * Empty coverage model.
21 | */
22 | typedef uvmx_env_cov_model_c #(
23 | .T_CFG (uvme_cvmcu_dbg_st_cfg_c ),
24 | .T_CNTXT(uvme_cvmcu_dbg_st_cntxt_c)
25 | ) uvme_cvmcu_dbg_st_mock_cov_model_c;
26 |
27 |
28 | `endif // __UVME_CVMCU_DBG_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent Self-Test Environment
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent Self-Test Environment.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Event Interface UVM Agent Self-Test Environment
12 | * `examples` - Code samples for using and extending this environment
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvma_cvmcu_event`
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Event Interface UVM Agent Self-Test Environment",1
3 | Issue,Implement or remove uvme_cvmcu_event_st_cfg_c::rules_cons,1
4 | Issue,Complete uvme_cvmcu_event_st_cfg_c scoreboard logging configuration,1
5 | Issue,Implement uvme_cvmcu_event_st_cfg_c::post_randomize() or remove altogether,1
6 | Issue,Describe uvme_cvmcu_event_st_prd_c::predict_core(),1
7 | Issue,Describe uvme_cvmcu_event_st_prd_c::predict_sys(),1
8 | Issue,Describe uvme_cvmcu_event_st_prd_c::predict_c2s(),1
9 | Issue,Describe uvme_cvmcu_event_st_prd_c::predict_s2c(),1
10 | Issue,Implement cvmcu_event_st_seq_item_cg,1
11 | Issue,Implement cvmcu_event_st_c2s_mon_trn_cg,1
12 | Issue,Implement cvmcu_event_st_s2c_mon_trn_cg,1
13 | Issue,Implement cvmcu_event_st_core_phy_seq_item_cg,1
14 | Issue,Implement cvmcu_event_st_sys_phy_seq_item_cg,1
15 | Issue,Implement cvmcu_event_st_phy_mon_trn_cg,1
16 |
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_event_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_event_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_event_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_event_st_dev_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_event_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_event_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvme_cvmcu_event_st/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_event_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_event_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_event_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvme_cvmcu_event_st_user_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_event_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_event_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_cvmcu_event_st"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "CORE-V-MCU Event Interface UVM Agent Self-Test Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Agent Self-Testing"
9 | description: "TODO Describe CORE-V-MCU Event Interface UVM Agent Self-Test Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | viv: "2022.2"
19 | mdc: "20220822.10.0"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_cvmcu_event": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "seq"]
36 | top-files: ["uvme_cvmcu_event_st_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/src/seq/uvme_cvmcu_event_st_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_EVENT_ST_BASE_SEQ_SV__
7 | `define __UVME_CVMCU_EVENT_ST_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all CORE-V-MCU Event Interface UVM Agent Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_cvmcu_event_st_seq
13 | */
14 | class uvme_cvmcu_event_st_base_seq_c extends uvmx_agent_env_seq_c #(
15 | .T_CFG (uvme_cvmcu_event_st_cfg_c ),
16 | .T_CNTXT(uvme_cvmcu_event_st_cntxt_c),
17 | .T_SQR (uvme_cvmcu_event_st_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_cvmcu_event_st_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_cvmcu_event_st_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass
30 |
31 |
32 | `endif // __UVME_CVMCU_EVENT_ST_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/src/uvme_cvmcu_event_st_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_EVENT_ST_CONSTANTS_SV__
7 | `define __UVME_CVMCU_EVENT_ST_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_CVMCU_EVENT_ST_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/src/uvme_cvmcu_event_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_EVENT_ST_FTDECS_SV__
7 | `define __UVME_CVMCU_EVENT_ST_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_cvmcu_event_st_cfg_c ;
11 | typedef class uvme_cvmcu_event_st_cntxt_c;
12 |
13 |
14 | `endif // __UVME_CVMCU_EVENT_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/src/uvme_cvmcu_event_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_EVENT_ST_MACROS_SV__
7 | `define __UVME_CVMCU_EVENT_ST_MACROS_SV__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME__ST_ABC
12 | // `define UVME__ST_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_CVMCU_EVENT_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvme_cvmcu_event_st/src/uvme_cvmcu_event_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_EVENT_ST_TDEFS_SV__
7 | `define __UVME_CVMCU_EVENT_ST_TDEFS_SV__
8 |
9 |
10 |
11 |
12 | /**
13 | * Scoreboard specialization.
14 | */
15 | typedef uvmx_sb_simplex_c #(
16 | .T_ACT_TRN(uvma_cvmcu_event_mon_trn_c)
17 | ) uvme_cvmcu_event_st_sb_simplex_c;
18 |
19 | /**
20 | * Empty coverage model.
21 | */
22 | typedef uvmx_env_cov_model_c #(
23 | .T_CFG (uvme_cvmcu_event_st_cfg_c ),
24 | .T_CNTXT(uvme_cvmcu_event_st_cntxt_c)
25 | ) uvme_cvmcu_event_st_mock_cov_model_c;
26 |
27 |
28 | `endif // __UVME_CVMCU_EVENT_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench
12 | * `examples` - Code samples for extending this Test Bench
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvme_cvmcu_cpi_st`
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench",1
3 | Issue,Implement or remove uvmt_cvmcu_cpi_st_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_cvmcu_cpi_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_cpi_st_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench",ip.yml,
3 | Implement or remove uvmt_cvmcu_cpi_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_cpi_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe CORE-V-MCU Camera Parallel Interface UVM Agent Self-Test Bench",uvmt_cvmcu_cpi_st,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_cvmcu_cpi_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_cpi_st,uvmt_cvmcu_cpi_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_cpi_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_cpi_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_cpi_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_cpi_st_dev_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_cpi_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_cpi_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvmt_cvmcu_cpi_st/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_cpi_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_cpi_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_cpi_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_cpi_st_user_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_cpi_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_cpi_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/src/uvmt_cvmcu_cpi_st_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CPI_ST_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_CVMCU_CPI_ST_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_CVMCU_CPI_ST_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/src/uvmt_cvmcu_cpi_st_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CPI_ST_CONSTANTS_SV__
7 | `define __UVMT_CVMCU_CPI_ST_CONSTANTS_SV__
8 |
9 |
10 | const int unsigned uvmt_cvmcu_cpi_st_default_clk_i_frequency = 100_000_000; ///< Default Clock frequency (100.0Mhz)
11 | const int unsigned uvmt_cvmcu_cpi_st_default_startup_timeout = 10_000; ///< Default Heartbeat Monitor startup timeout in ns
12 | const int unsigned uvmt_cvmcu_cpi_st_default_heartbeat_period = 1_000; ///< Default Heartbeat Monitor period in ns
13 | const int unsigned uvmt_cvmcu_cpi_st_default_heartbeat_refresh_period = 5_000; ///< Default Heartbeat Monitor refresh period in ns
14 | const int unsigned uvmt_cvmcu_cpi_st_default_simulation_timeout = 1_000_000; ///< Default Watchdog Timer simulation timeout in ns
15 |
16 |
17 | `endif // __UVMT_CVMCU_CPI_ST_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/src/uvmt_cvmcu_cpi_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CPI_ST_FTDECS_SV__
7 | `define __UVMT_CVMCU_CPI_ST_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_CVMCU_CPI_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/src/uvmt_cvmcu_cpi_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CPI_ST_MACROS_SV__
7 | `define __UVMT_CVMCU_CPI_ST_MACROS_SV__
8 |
9 |
10 | `ifndef UVMT_CVMCU_CPI_ST_DATA_WIDTH
11 | `define UVMT_CVMCU_CPI_ST_DATA_WIDTH 12
12 | `endif
13 |
14 |
15 |
16 | `endif // __UVMT_CVMCU_CPI_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_cpi_st/src/uvmt_cvmcu_cpi_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CPI_ST_TDEFS_SV__
7 | `define __UVMT_CVMCU_CPI_ST_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT__ST_ABC_MAX_WIDTH-1):0] uvmt_cvmcu_cpi_st_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT__ST_EX_ABC
17 | // } uvmt_cvmcu_cpi_st_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_cvmcu_cpi_st_ex_struct;
25 |
26 |
27 | `endif // __UVMT_CVMCU_CPI_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent Self-Test Bench
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Debug Interface UVM Agent Self-Test Bench.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Debug Interface UVM Agent Self-Test Bench
12 | * `examples` - Code samples for extending this Test Bench
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvme_cvmcu_dbg_st`
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Bench",1
3 | Issue,Implement or remove uvmt_cvmcu_dbg_st_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_cvmcu_dbg_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_dbg_st_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Bench",ip.yml,
3 | Implement or remove uvmt_cvmcu_dbg_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_dbg_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe CORE-V-MCU Debug Interface UVM Agent Self-Test Bench",uvmt_cvmcu_dbg_st,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_cvmcu_dbg_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_dbg_st,uvmt_cvmcu_dbg_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_dbg_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_dbg_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_dbg_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_dbg_st_dev_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_dbg_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_dbg_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/docs/index.md:
--------------------------------------------------------------------------------
1 | @mainpage IP Information
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section ip_desc IP Description
17 | This IP contains the datum CORE-V-MCU Debug Interface UVM Agent Self-Test Bench.
18 |
19 | 
20 |
21 |
22 | @section ip_documents Documents
23 | ID | Name | Version
24 | -- | ---- | -------
25 | 001 | @subpage user_guide "User Guide" | 1.0
26 | 002 | @subpage dev_guide "Developer Guide" | 1.0
27 |
28 |
29 | @section ip_ref Reference
30 | * @ref uvmt_cvmcu_dbg_st_pkg
31 | * @ref uvmt_cvmcu_dbg_st_tests
32 | * @ref uvmt_cvmcu_dbg_st_tb
33 | * @ref uvmt_cvmcu_dbg_st_misc
34 |
35 |
36 | @section release_history Release History
37 | @subsection v1_0_0 2023// - 1.0.0
38 | - Initial release
39 |
40 |
41 | @htmlonly
42 |
43 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvmt_cvmcu_dbg_st/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_dbg_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_dbg_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_dbg_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_dbg_st_user_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_dbg_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_dbg_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/src/uvmt_cvmcu_dbg_st_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_DBG_ST_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_CVMCU_DBG_ST_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_CVMCU_DBG_ST_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/src/uvmt_cvmcu_dbg_st_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_DBG_ST_CONSTANTS_SV__
7 | `define __UVMT_CVMCU_DBG_ST_CONSTANTS_SV__
8 |
9 |
10 | const int unsigned uvmt_cvmcu_dbg_st_default_clk_frequency = 100_000_000; ///< Default Slow frequency (100.0Mhz)
11 | const int unsigned uvmt_cvmcu_dbg_st_default_startup_timeout = 10_000; ///< Default Heartbeat Monitor startup timeout in ns
12 | const int unsigned uvmt_cvmcu_dbg_st_default_heartbeat_period = 1_000; ///< Default Heartbeat Monitor period in ns
13 | const int unsigned uvmt_cvmcu_dbg_st_default_heartbeat_refresh_period = 5_000; ///< Default Heartbeat Monitor refresh period in ns
14 | const int unsigned uvmt_cvmcu_dbg_st_default_simulation_timeout = 1_000_000; ///< Default Watchdog Timer simulation timeout in ns
15 |
16 |
17 | `endif // __UVMT_CVMCU_DBG_ST_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/src/uvmt_cvmcu_dbg_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_DBG_ST_FTDECS_SV__
7 | `define __UVMT_CVMCU_DBG_ST_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_CVMCU_DBG_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/src/uvmt_cvmcu_dbg_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_DBG_ST_MACROS_SV__
7 | `define __UVMT_CVMCU_DBG_ST_MACROS_SV__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_CVMCU_DBG_ST_ABC_WIDTH
12 | // `define UVMT_CVMCU_DBG_ST_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 |
17 | `endif // __UVMT_CVMCU_DBG_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_dbg_st/src/uvmt_cvmcu_dbg_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_DBG_ST_TDEFS_SV__
7 | `define __UVMT_CVMCU_DBG_ST_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT__ST_ABC_MAX_WIDTH-1):0] uvmt_cvmcu_dbg_st_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT__ST_EX_ABC
17 | // } uvmt_cvmcu_dbg_st_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_cvmcu_dbg_st_ex_struct;
25 |
26 |
27 | `endif // __UVMT_CVMCU_DBG_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/README.md:
--------------------------------------------------------------------------------
1 | # Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent Self-Test Bench
2 |
3 | # About
4 | This IP contains the Datum Technology Corporation CORE-V-MCU Event Interface UVM Agent Self-Test Bench.
5 |
6 | # Block Diagram
7 | 
8 |
9 | # Directory Structure
10 | * `bin` - Scripts, metadata and other miscellaneous files
11 | * `docs` - Documents describing the CORE-V-MCU Event Interface UVM Agent Self-Test Bench
12 | * `examples` - Code samples for extending this Test Bench
13 | * `src` - Source code
14 |
15 |
16 | # Dependencies
17 | It is dependent on the following IP:
18 |
19 | * `datum/uvmx`
20 | * `datum/uvme_cvmcu_event_st`
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe CORE-V-MCU Event Interface UVM Agent Self-Test Bench",1
3 | Issue,Implement or remove uvmt_cvmcu_event_st_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe CORE-V-MCU Event Interface UVM Agent Self-Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_cvmcu_event_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_event_st_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe CORE-V-MCU Event Interface UVM Agent Self-Test Bench",ip.yml,
3 | Implement or remove uvmt_cvmcu_event_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_event_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe CORE-V-MCU Event Interface UVM Agent Self-Test Bench",uvmt_cvmcu_event_st,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_cvmcu_event_st_test_cfg_c::post_randomize_work(),uvmt_cvmcu_event_st,uvmt_cvmcu_event_st_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_event_st_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_event_st_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_event_st_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_event_st_dev_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_event_st_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_event_st_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/docs/index.md:
--------------------------------------------------------------------------------
1 | @mainpage IP Information
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section ip_desc IP Description
17 | This IP contains the datum CORE-V-MCU Event Interface UVM Agent Self-Test Bench.
18 |
19 | 
20 |
21 |
22 | @section ip_documents Documents
23 | ID | Name | Version
24 | -- | ---- | -------
25 | 001 | @subpage user_guide "User Guide" | 1.0
26 | 002 | @subpage dev_guide "Developer Guide" | 1.0
27 |
28 |
29 | @section ip_ref Reference
30 | * @ref uvmt_cvmcu_event_st_pkg
31 | * @ref uvmt_cvmcu_event_st_tests
32 | * @ref uvmt_cvmcu_event_st_tb
33 | * @ref uvmt_cvmcu_event_st_misc
34 |
35 |
36 | @section release_history Release History
37 | @subsection v1_0_0 2023// - 1.0.0
38 | - Initial release
39 |
40 |
41 | @htmlonly
42 |
43 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/agents/uvmt_cvmcu_event_st/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_event_st_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_event_st_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_event_st_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023// | Initial Version
20 |
21 | @subsection uvmt_cvmcu_event_st_user_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_event_st_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_event_st_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/src/uvmt_cvmcu_event_st_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_EVENT_ST_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_CVMCU_EVENT_ST_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_CVMCU_EVENT_ST_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/src/uvmt_cvmcu_event_st_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_EVENT_ST_FTDECS_SV__
7 | `define __UVMT_CVMCU_EVENT_ST_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_CVMCU_EVENT_ST_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/src/uvmt_cvmcu_event_st_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_EVENT_ST_MACROS_SV__
7 | `define __UVMT_CVMCU_EVENT_ST_MACROS_SV__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_CVMCU_EVENT_ST_ABC_WIDTH
12 | // `define UVMT_CVMCU_EVENT_ST_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 |
17 | `endif // __UVMT_CVMCU_EVENT_ST_MACROS_SV__
--------------------------------------------------------------------------------
/dv/agents/uvmt_cvmcu_event_st/src/uvmt_cvmcu_event_st_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_EVENT_ST_TDEFS_SV__
7 | `define __UVMT_CVMCU_EVENT_ST_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT__ST_ABC_MAX_WIDTH-1):0] uvmt_cvmcu_event_st_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT__ST_EX_ABC
17 | // } uvmt_cvmcu_event_st_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_cvmcu_event_st_ex_struct;
25 |
26 |
27 | `endif // __UVMT_CVMCU_EVENT_ST_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Advanced timer counter Block UVM Agent
2 |
3 |
4 | ## About
5 | This IP contains the datum Advanced timer counter Block UVM Agent.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this agent
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Advanced timer counter UVM Agent",1
3 | Issue,Add assertions and/or functional coverage to uvme_adv_timer_b_chkr,1
4 | Issue,Describe uvma_adv_timer_b_in_drv_seq_c::drive_item(),1
5 | Issue,Implement uvma_adv_timer_b_in_drv_seq_c::drive(),1
6 | Issue,Implement or remove uvma_adv_timer_b_seq_item_c::rules_cons,1
7 | Issue,Implement or remove uvma_adv_timer_b_seq_item_c::post_randomize(),1
8 | Issue,Implement or remove uvma_adv_timer_b_seq_item_c::do_print(),1
9 | Issue,Implement uvma_adv_timer_b_mon_seq_c::monitor(),1
10 | Issue,Describe uvma_adv_timer_b_out_drv_seq_c::drive(),1
11 | Issue,Remove this line after implementing uvma_adv_timer_b_out_drv_seq_c::drive(),1
12 | Issue,Implement uvma_adv_timer_b_out_drv_seq_c::drive(),1
13 | Issue,Implement or remove uvma_adv_timer_b_cfg_c::post_randomize(),1
14 | Issue,Implement or remove uvma_adv_timer_b_mon_trn_c::do_compare(),1
15 | Issue,Implement or remove uvma_adv_timer_b_mon_trn_c::do_print(),1
16 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvma_adv_timer_b/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_adv_timer_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_adv_timer_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_adv_timer_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_adv_timer_b_dev_guide_description Description
22 |
23 |
24 | @section uvma_adv_timer_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_adv_timer_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_adv_timer_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_adv_timer_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_adv_timer_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_adv_timer_b_user_guide_description Description
22 |
23 |
24 | @section uvma_adv_timer_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_adv_timer_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_adv_timer_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Advanced timer counter UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Simplex; Non-Layered"
9 | description: "TODO Describe Advanced timer counter UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_adv_timer_b_pkg.sv"]
36 | so-libs: []
37 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/src/seq/uvma_adv_timer_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_ADV_TIMER_B_BASE_SEQ_SV__
7 | `define __UVMA_ADV_TIMER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Advanced timer counter Agent Sequences must extend.
12 | * @ingroup uvma_adv_timer_b_seq
13 | */
14 | class uvma_adv_timer_b_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_adv_timer_b_cfg_c ),
16 | .T_CNTXT (uvma_adv_timer_b_cntxt_c ),
17 | .T_SQR (uvma_adv_timer_b_sqr_c ),
18 | .T_SEQ_ITEM(uvma_adv_timer_b_seq_item_c)
19 | );
20 |
21 | `uvm_object_utils(uvma_adv_timer_b_base_seq_c)
22 |
23 | /**
24 | * Default constructor.
25 | */
26 | function new(string name="uvma_adv_timer_b_base_seq");
27 | super.new(name);
28 | endfunction
29 |
30 | endclass
31 |
32 |
33 | `endif // __UVMA_ADV_TIMER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/src/uvma_adv_timer_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_ADV_TIMER_B_CONSTANTS_SV__
7 | `define __UVMA_ADV_TIMER_B_CONSTANTS_SV__
8 |
9 |
10 | const int unsigned uvma_adv_timer_b_default_num_bits = 16; ///< Default width. Measured in bits (b).
11 | const int unsigned uvma_adv_timer_b_default_n_extsig = 32; ///< Default width. Measured in bits (b).
12 |
13 |
14 | `endif // __UVMA_ADV_TIMER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/src/uvma_adv_timer_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_ADV_TIMER_B_FTDECS_SV__
7 | `define __UVMA_ADV_TIMER_B_FTDECS_SV__
8 |
9 |
10 | typedef class uvma_adv_timer_b_cfg_c ;
11 | typedef class uvma_adv_timer_b_cntxt_c ;
12 | typedef class uvma_adv_timer_b_seq_item_c ;
13 | typedef class uvma_adv_timer_b_cp_seq_item_c ;
14 | typedef class uvma_adv_timer_b_dpi_seq_item_c;
15 | typedef class uvma_adv_timer_b_dpo_seq_item_c;
16 | typedef class uvma_adv_timer_b_mon_seq_c ;
17 | typedef class uvma_adv_timer_b_idle_seq_c ;
18 | typedef class uvma_adv_timer_b_in_drv_seq_c ;
19 | typedef class uvma_adv_timer_b_out_drv_seq_c ;
20 |
21 |
22 | `endif // __UVMA_ADV_TIMER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/src/uvma_adv_timer_b_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_ADV_TIMER_B_IF_CHKR_SV__
7 | `define __UVMA_ADV_TIMER_B_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Module encapsulating assertions targeting Advanced timer counter Block Agent interface.
12 | * @ingroup uvma_adv_timer_b_pkg
13 | */
14 | module uvma_adv_timer_b_if_chkr (
15 | uvma_adv_timer_b_if agent_if ///< Target interface
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvme_adv_timer_b_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_ADV_TIMER_B_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_adv_timer_b/src/uvma_adv_timer_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_ADV_TIMER_B_MACROS_SVH__
7 | `define __UVMA_ADV_TIMER_B_MACROS_SVH__
8 |
9 |
10 | `define UVMA_ADV_TIMER_B_NUM_BITS_MIN 16
11 | `define UVMA_ADV_TIMER_B_NUM_BITS_MAX 64
12 | `define UVMA_ADV_TIMER_B_N_EXTSIG_MIN 32
13 | `define UVMA_ADV_TIMER_B_N_EXTSIG_MAX 64
14 |
15 |
16 | `endif // __UVMA_ADV_TIMER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit counter Block UVM Agent
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit counter Block UVM Agent.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this agent
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Timer unit counter UVM Agent",1
3 | Issue,Add assertions and/or functional coverage to uvme_tcounter_b_chkr,1
4 | Issue,Implement uvma_tcounter_b_mon_seq_c::monitor(),1
5 | Issue,Implement or remove uvma_tcounter_b_seq_item_c::rules_cons,1
6 | Issue,Implement or remove uvma_tcounter_b_seq_item_c::post_randomize(),1
7 | Issue,Implement or remove uvma_tcounter_b_seq_item_c::do_print(),1
8 | Issue,Describe uvma_tcounter_b_in_drv_seq_c::drive_item(),1
9 | Issue,Implement uvma_tcounter_b_in_drv_seq_c::drive(),1
10 | Issue,Describe uvma_tcounter_b_out_drv_seq_c::drive(),1
11 | Issue,Remove this line after implementing uvma_tcounter_b_out_drv_seq_c::drive(),1
12 | Issue,Implement uvma_tcounter_b_out_drv_seq_c::drive(),1
13 | Issue,Implement or remove uvma_tcounter_b_mon_trn_c::do_compare(),1
14 | Issue,Implement or remove uvma_tcounter_b_mon_trn_c::do_print(),1
15 | Issue,Implement or remove uvma_tcounter_b_cfg_c::post_randomize(),1
16 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvma_tcounter_b/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_tcounter_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_tcounter_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_tcounter_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_tcounter_b_dev_guide_description Description
22 |
23 |
24 | @section uvma_tcounter_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_tcounter_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_tcounter_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_tcounter_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_tcounter_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_tcounter_b_user_guide_description Description
22 |
23 |
24 | @section uvma_tcounter_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_tcounter_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_tcounter_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Timer unit counter UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Simplex; Non-Layered"
9 | description: "TODO Describe Timer unit counter UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_tcounter_b_pkg.sv"]
36 | so-libs: []
37 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/src/seq/uvma_tcounter_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TCOUNTER_B_BASE_SEQ_SV__
7 | `define __UVMA_TCOUNTER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Timer unit counter Agent Sequences must extend.
12 | * @ingroup uvma_tcounter_b_seq
13 | */
14 | class uvma_tcounter_b_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_tcounter_b_cfg_c ),
16 | .T_CNTXT (uvma_tcounter_b_cntxt_c ),
17 | .T_SQR (uvma_tcounter_b_sqr_c ),
18 | .T_SEQ_ITEM(uvma_tcounter_b_seq_item_c)
19 | );
20 |
21 | `uvm_object_utils(uvma_tcounter_b_base_seq_c)
22 |
23 | /**
24 | * Default constructor.
25 | */
26 | function new(string name="uvma_tcounter_b_base_seq");
27 | super.new(name);
28 | endfunction
29 |
30 | endclass
31 |
32 |
33 | `endif // __UVMA_TCOUNTER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/src/uvma_tcounter_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TCOUNTER_B_CONSTANTS_SV__
7 | `define __UVMA_TCOUNTER_B_CONSTANTS_SV__
8 |
9 |
10 |
11 |
12 | `endif // __UVMA_TCOUNTER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/src/uvma_tcounter_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TCOUNTER_B_FTDECS_SV__
7 | `define __UVMA_TCOUNTER_B_FTDECS_SV__
8 |
9 |
10 | typedef class uvma_tcounter_b_cfg_c ;
11 | typedef class uvma_tcounter_b_cntxt_c ;
12 | typedef class uvma_tcounter_b_seq_item_c ;
13 | typedef class uvma_tcounter_b_cp_seq_item_c ;
14 | typedef class uvma_tcounter_b_dpi_seq_item_c;
15 | typedef class uvma_tcounter_b_dpo_seq_item_c;
16 | typedef class uvma_tcounter_b_mon_seq_c ;
17 | typedef class uvma_tcounter_b_idle_seq_c ;
18 | typedef class uvma_tcounter_b_in_drv_seq_c ;
19 | typedef class uvma_tcounter_b_out_drv_seq_c ;
20 |
21 |
22 | `endif // __UVMA_TCOUNTER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/src/uvma_tcounter_b_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TCOUNTER_B_IF_CHKR_SV__
7 | `define __UVMA_TCOUNTER_B_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Module encapsulating assertions targeting Timer unit counter Block Agent interface.
12 | * @ingroup uvma_tcounter_b_pkg
13 | */
14 | module uvma_tcounter_b_if_chkr (
15 | uvma_tcounter_b_if agent_if ///< Target interface
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvme_tcounter_b_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_TCOUNTER_B_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tcounter_b/src/uvma_tcounter_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TCOUNTER_B_MACROS_SVH__
7 | `define __UVMA_TCOUNTER_B_MACROS_SVH__
8 |
9 |
10 |
11 |
12 | `endif // __UVMA_TCOUNTER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit prescaler Block UVM Agent
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit prescaler Block UVM Agent.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this agent
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Timer unit prescaler UVM Agent",1
3 | Issue,Add assertions and/or functional coverage to uvme_tprescaler_b_chkr,1
4 | Issue,Implement uvma_tprescaler_b_mon_seq_c::monitor(),1
5 | Issue,Describe uvma_tprescaler_b_in_drv_seq_c::drive_item(),1
6 | Issue,Implement uvma_tprescaler_b_in_drv_seq_c::drive(),1
7 | Issue,Implement or remove uvma_tprescaler_b_seq_item_c::rules_cons,1
8 | Issue,Implement or remove uvma_tprescaler_b_seq_item_c::post_randomize(),1
9 | Issue,Implement or remove uvma_tprescaler_b_seq_item_c::do_print(),1
10 | Issue,Describe uvma_tprescaler_b_out_drv_seq_c::drive(),1
11 | Issue,Remove this line after implementing uvma_tprescaler_b_out_drv_seq_c::drive(),1
12 | Issue,Implement uvma_tprescaler_b_out_drv_seq_c::drive(),1
13 | Issue,Implement or remove uvma_tprescaler_b_mon_trn_c::do_compare(),1
14 | Issue,Implement or remove uvma_tprescaler_b_mon_trn_c::do_print(),1
15 | Issue,Implement or remove uvma_tprescaler_b_cfg_c::post_randomize(),1
16 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/docs/agent_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvma_tprescaler_b/docs/agent_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_tprescaler_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_tprescaler_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_tprescaler_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_tprescaler_b_dev_guide_description Description
22 |
23 |
24 | @section uvma_tprescaler_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_tprescaler_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvma_tprescaler_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvma_tprescaler_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvma_tprescaler_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvma_tprescaler_b_user_guide_description Description
22 |
23 |
24 | @section uvma_tprescaler_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvma_tprescaler_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvma_tprescaler_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Timer unit prescaler UVM Agent"
6 | type: "DV"
7 | sub-type: "UVM Agent"
8 | sub-sub-type: "Simplex; Non-Layered"
9 | description: "TODO Describe Timer unit prescaler UVM Agent"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/agent_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 |
27 | structure:
28 | scripts-path : "bin"
29 | docs-path : "docs"
30 | examples-path: "examples"
31 | src-path : "src"
32 |
33 | hdl-src:
34 | directories: [".", "comps", "obj", "seq"]
35 | top-files: ["uvma_tprescaler_b_pkg.sv"]
36 | so-libs: []
37 |
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/seq/uvma_tprescaler_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_BASE_SEQ_SV__
7 | `define __UVMA_TPRESCALER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Timer unit prescaler Agent Sequences must extend.
12 | * @ingroup uvma_tprescaler_b_seq
13 | */
14 | class uvma_tprescaler_b_base_seq_c extends uvmx_agent_seq_c #(
15 | .T_CFG (uvma_tprescaler_b_cfg_c ),
16 | .T_CNTXT (uvma_tprescaler_b_cntxt_c ),
17 | .T_SQR (uvma_tprescaler_b_sqr_c ),
18 | .T_SEQ_ITEM(uvma_tprescaler_b_seq_item_c)
19 | );
20 |
21 | `uvm_object_utils(uvma_tprescaler_b_base_seq_c)
22 |
23 | /**
24 | * Default constructor.
25 | */
26 | function new(string name="uvma_tprescaler_b_base_seq");
27 | super.new(name);
28 | endfunction
29 |
30 | endclass
31 |
32 |
33 | `endif // __UVMA_TPRESCALER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/uvma_tprescaler_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_CONSTANTS_SV__
7 | `define __UVMA_TPRESCALER_B_CONSTANTS_SV__
8 |
9 |
10 |
11 |
12 | `endif // __UVMA_TPRESCALER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/uvma_tprescaler_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_FTDECS_SV__
7 | `define __UVMA_TPRESCALER_B_FTDECS_SV__
8 |
9 |
10 | typedef class uvma_tprescaler_b_cfg_c ;
11 | typedef class uvma_tprescaler_b_cntxt_c ;
12 | typedef class uvma_tprescaler_b_seq_item_c ;
13 | typedef class uvma_tprescaler_b_cp_seq_item_c ;
14 | typedef class uvma_tprescaler_b_dpi_seq_item_c;
15 | typedef class uvma_tprescaler_b_dpo_seq_item_c;
16 | typedef class uvma_tprescaler_b_mon_seq_c ;
17 | typedef class uvma_tprescaler_b_idle_seq_c ;
18 | typedef class uvma_tprescaler_b_in_drv_seq_c ;
19 | typedef class uvma_tprescaler_b_out_drv_seq_c ;
20 |
21 |
22 | `endif // __UVMA_TPRESCALER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/uvma_tprescaler_b_if_chkr.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_IF_CHKR_SV__
7 | `define __UVMA_TPRESCALER_B_IF_CHKR_SV__
8 |
9 |
10 | /**
11 | * Module encapsulating assertions targeting Timer unit prescaler Block Agent interface.
12 | * @ingroup uvma_tprescaler_b_pkg
13 | */
14 | module uvma_tprescaler_b_if_chkr (
15 | uvma_tprescaler_b_if agent_if ///< Target interface
16 | );
17 |
18 | // TODO Add assertions and/or functional coverage to uvme_tprescaler_b_chkr
19 |
20 | endmodule
21 |
22 |
23 | `endif // __UVMA_TPRESCALER_B_IF_CHKR_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/uvma_tprescaler_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_MACROS_SVH__
7 | `define __UVMA_TPRESCALER_B_MACROS_SVH__
8 |
9 |
10 |
11 |
12 | `endif // __UVMA_TPRESCALER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvma_tprescaler_b/src/uvma_tprescaler_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMA_TPRESCALER_B_TDEFS_SV__
7 | `define __UVMA_TPRESCALER_B_TDEFS_SV__
8 |
9 |
10 |
11 | /// @name Logic vectors
12 | /// @{
13 | typedef logic [31:0] uvma_tprescaler_b_compare_value_i_l_t; ///< logic vector
14 | typedef logic [31:0] uvma_tprescaler_b_counter_value_i_l_t; ///< logic vector
15 | typedef logic [31:0] uvma_tprescaler_b_counter_value_o_l_t; ///< logic vector
16 | /// @}
17 |
18 | /// @name Bit vectors
19 | /// @{
20 | typedef bit [31:0] uvma_tprescaler_b_compare_value_i_b_t; ///< bit vector
21 | typedef bit [31:0] uvma_tprescaler_b_counter_value_i_b_t; ///< bit vector
22 | typedef bit [31:0] uvma_tprescaler_b_counter_value_o_b_t; ///< bit vector
23 | /// @}
24 |
25 |
26 | `endif // __UVMA_TPRESCALER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Advanced timer counter Block UVM Environment
2 |
3 |
4 | ## About
5 | This IP contains the datum Advanced timer counter Block UVM Environment.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this environment
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
26 | * `datum/uvma_adv_timer_b`
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_adv_timer_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_adv_timer_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_adv_timer_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_adv_timer_b_dev_guide_description Description
22 |
23 |
24 | @section uvme_adv_timer_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_adv_timer_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvme_adv_timer_b/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_adv_timer_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_adv_timer_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_adv_timer_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_adv_timer_b_user_guide_description Description
22 |
23 |
24 | @section uvme_adv_timer_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_adv_timer_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_adv_timer_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Advanced timer counter Block UVM Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Block"
9 | description: "TODO Describe Advanced timer counter Block UVM Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_adv_timer_b": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "reg", "seq"]
36 | top-files: ["uvme_adv_timer_b_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/src/seq/uvme_adv_timer_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_ADV_TIMER_B_BASE_SEQ_SV__
7 | `define __UVME_ADV_TIMER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Advanced timer counter Block Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_adv_timer_b_seq
13 | */
14 | class uvme_adv_timer_b_base_seq_c extends uvmx_block_env_seq_c #(
15 | .T_CFG (uvme_adv_timer_b_cfg_c ),
16 | .T_CNTXT(uvme_adv_timer_b_cntxt_c),
17 | .T_SQR (uvme_adv_timer_b_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_adv_timer_b_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_adv_timer_b_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass : uvme_adv_timer_b_base_seq_c
30 |
31 |
32 | `endif // __UVME_ADV_TIMER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/src/uvme_adv_timer_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_ADV_TIMER_B_CONSTANTS_SV__
7 | `define __UVME_ADV_TIMER_B_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_ADV_TIMER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/src/uvme_adv_timer_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_ADV_TIMER_B_FTDECS_SV__
7 | `define __UVME_ADV_TIMER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVME_ADV_TIMER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/src/uvme_adv_timer_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_ADV_TIMER_B_MACROS_SVH__
7 | `define __UVME_ADV_TIMER_B_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_ADV_TIMER_B_ABC
12 | // `define UVME_ADV_TIMER_B_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_ADV_TIMER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvme_adv_timer_b/src/uvme_adv_timer_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_ADV_TIMER_B_TDEFS_SV__
7 | `define __UVME_ADV_TIMER_B_TDEFS_SV__
8 |
9 |
10 | /**
11 | * FSM state space for DUT.
12 | */
13 | typedef enum {
14 | UVME_ADV_TIMER_B_FSM_INIT ///< State out of reset
15 | } uvme_adv_timer_b_fsm_enum;
16 |
17 |
18 |
19 | /**
20 | * Scoreboard specialization for Data Plane Output Monitor Transactions.
21 | */
22 | typedef uvmx_sb_simplex_c #(
23 | .T_ACT_TRN(uvma_adv_timer_b_mon_trn_c)
24 | ) uvme_adv_timer_b_sb_c;
25 |
26 |
27 | `endif // __UVME_ADV_TIMER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit counter Block UVM Environment
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit counter Block UVM Environment.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this environment
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
26 | * `datum/uvma_tcounter_b`
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_tcounter_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_tcounter_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_tcounter_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_tcounter_b_dev_guide_description Description
22 |
23 |
24 | @section uvme_tcounter_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_tcounter_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvme_tcounter_b/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_tcounter_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_tcounter_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_tcounter_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_tcounter_b_user_guide_description Description
22 |
23 |
24 | @section uvme_tcounter_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_tcounter_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_tcounter_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Timer unit counter Block UVM Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Block"
9 | description: "TODO Describe Timer unit counter Block UVM Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_tcounter_b": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "reg", "seq"]
36 | top-files: ["uvme_tcounter_b_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/src/seq/uvme_tcounter_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TCOUNTER_B_BASE_SEQ_SV__
7 | `define __UVME_TCOUNTER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Timer unit counter Block Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_tcounter_b_seq
13 | */
14 | class uvme_tcounter_b_base_seq_c extends uvmx_block_env_seq_c #(
15 | .T_CFG (uvme_tcounter_b_cfg_c ),
16 | .T_CNTXT(uvme_tcounter_b_cntxt_c),
17 | .T_SQR (uvme_tcounter_b_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_tcounter_b_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_tcounter_b_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass : uvme_tcounter_b_base_seq_c
30 |
31 |
32 | `endif // __UVME_TCOUNTER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/src/uvme_tcounter_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TCOUNTER_B_CONSTANTS_SV__
7 | `define __UVME_TCOUNTER_B_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_TCOUNTER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/src/uvme_tcounter_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TCOUNTER_B_FTDECS_SV__
7 | `define __UVME_TCOUNTER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVME_TCOUNTER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/src/uvme_tcounter_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TCOUNTER_B_MACROS_SVH__
7 | `define __UVME_TCOUNTER_B_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_TCOUNTER_B_ABC
12 | // `define UVME_TCOUNTER_B_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_TCOUNTER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tcounter_b/src/uvme_tcounter_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TCOUNTER_B_TDEFS_SV__
7 | `define __UVME_TCOUNTER_B_TDEFS_SV__
8 |
9 |
10 | /**
11 | * FSM state space for DUT.
12 | */
13 | typedef enum {
14 | UVME_TCOUNTER_B_FSM_INIT ///< State out of reset
15 | } uvme_tcounter_b_fsm_enum;
16 |
17 |
18 |
19 | /**
20 | * Scoreboard specialization for Data Plane Output Monitor Transactions.
21 | */
22 | typedef uvmx_sb_simplex_c #(
23 | .T_ACT_TRN(uvma_tcounter_b_mon_trn_c)
24 | ) uvme_tcounter_b_sb_c;
25 |
26 |
27 | `endif // __UVME_TCOUNTER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit prescaler Block UVM Environment
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit prescaler Block UVM Environment.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for using and adding to this environment
15 | * `src` - Source code root
16 |
17 | > * `comps` - UVM Components
18 | > * `obj` - UVM Objects and Monitor Transactions
19 | > * `seq` - UVM Sequences and Sequence Items
20 |
21 |
22 | ## Dependencies
23 | It is dependent on the following IP:
24 |
25 | * `datum/uvmx`
26 | * `datum/uvma_tprescaler_b`
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_tprescaler_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_tprescaler_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_tprescaler_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_tprescaler_b_dev_guide_description Description
22 |
23 |
24 | @section uvme_tprescaler_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_tprescaler_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/docs/env_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvme_tprescaler_b/docs/env_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_tprescaler_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_tprescaler_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_tprescaler_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_tprescaler_b_user_guide_description Description
22 |
23 |
24 | @section uvme_tprescaler_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_tprescaler_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/ip.yml:
--------------------------------------------------------------------------------
1 | ip:
2 | name: "uvme_tprescaler_b"
3 | vendor: "datum"
4 | version: "1.0.0"
5 | full-name: "Timer unit prescaler Block UVM Environment"
6 | type: "DV"
7 | sub-type: "UVM Environment"
8 | sub-sub-type: "Block"
9 | description: "TODO Describe Timer unit prescaler Block UVM Environment"
10 | home-page: ""
11 | repo-uri: ""
12 | bugs: ""
13 | aliases: []
14 | logo: ""
15 | block-diagram: "docs/env_block_diagram.svg"
16 | languages: ["sv"]
17 | simulators-supported:
18 | mdc: "20230116.4.0"
19 | viv: "2022.2"
20 | tags: []
21 | copyright-holders: ["Datum Technology Corporation"]
22 | licenses: ["All rights reserved."]
23 |
24 | dependencies:
25 | "datum/uvmx": "~1.0"
26 | "datum/uvma_tprescaler_b": "^"
27 |
28 | structure:
29 | scripts-path : "bin"
30 | docs-path : "docs"
31 | examples-path: "examples"
32 | src-path : "src"
33 |
34 | hdl-src:
35 | directories: [".", "comps", "obj", "reg", "seq"]
36 | top-files: ["uvme_tprescaler_b_pkg.sv"]
37 | so-libs: []
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/src/seq/uvme_tprescaler_b_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TPRESCALER_B_BASE_SEQ_SV__
7 | `define __UVME_TPRESCALER_B_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all Timer unit prescaler Block Self-Test Environment Virtual Sequences extend.
12 | * @ingroup uvme_tprescaler_b_seq
13 | */
14 | class uvme_tprescaler_b_base_seq_c extends uvmx_block_env_seq_c #(
15 | .T_CFG (uvme_tprescaler_b_cfg_c ),
16 | .T_CNTXT(uvme_tprescaler_b_cntxt_c),
17 | .T_SQR (uvme_tprescaler_b_sqr_c )
18 | );
19 |
20 | `uvm_object_utils(uvme_tprescaler_b_base_seq_c)
21 |
22 | /**
23 | * Default constructor.
24 | */
25 | function new(string name="uvme_tprescaler_b_base_seq");
26 | super.new(name);
27 | endfunction
28 |
29 | endclass : uvme_tprescaler_b_base_seq_c
30 |
31 |
32 | `endif // __UVME_TPRESCALER_B_BASE_SEQ_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/src/uvme_tprescaler_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TPRESCALER_B_CONSTANTS_SV__
7 | `define __UVME_TPRESCALER_B_CONSTANTS_SV__
8 |
9 |
10 | `endif // __UVME_TPRESCALER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/src/uvme_tprescaler_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TPRESCALER_B_FTDECS_SV__
7 | `define __UVME_TPRESCALER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVME_TPRESCALER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/src/uvme_tprescaler_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TPRESCALER_B_MACROS_SVH__
7 | `define __UVME_TPRESCALER_B_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_TPRESCALER_B_ABC
12 | // `define UVME_TPRESCALER_B_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_TPRESCALER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvme_tprescaler_b/src/uvme_tprescaler_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_TPRESCALER_B_TDEFS_SV__
7 | `define __UVME_TPRESCALER_B_TDEFS_SV__
8 |
9 |
10 | /**
11 | * FSM state space for DUT.
12 | */
13 | typedef enum {
14 | UVME_TPRESCALER_B_FSM_INIT ///< State out of reset
15 | } uvme_tprescaler_b_fsm_enum;
16 |
17 |
18 |
19 | /**
20 | * Scoreboard specialization for Data Plane Output Monitor Transactions.
21 | */
22 | typedef uvmx_sb_simplex_c #(
23 | .T_ACT_TRN(uvma_tprescaler_b_mon_trn_c)
24 | ) uvme_tprescaler_b_sb_c;
25 |
26 |
27 | `endif // __UVME_TPRESCALER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Advanced timer counter Block UVM Test Bench
2 |
3 |
4 | ## About
5 | This IP contains the datum Advanced timer counter Block UVM Test Bench.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for adding to this test bench
15 | * `src` - Source code root
16 |
17 | > * `tb` - Test Bench
18 | > * `tests` - UVM Tests and Test Suites
19 |
20 |
21 | ## Dependencies
22 | It is dependent on the following IP:
23 |
24 | * `datum/uvmx`
25 | * `datum/uvma_clk`
26 | * `datum/uvma_reset`
27 | * `datum/uvma_adv_timer_b]`
28 | * `datum/uvme_adv_timer_b]`
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Advanced timer counter Block UVM Test Bench",1
3 | Issue,Implement or remove uvmt_adv_timer_b_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe Advanced timer counter Block UVM Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_adv_timer_b_test_cfg_c::post_randomize_work(),uvmt_adv_timer_b_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe Advanced timer counter Block UVM Test Bench",ip.yml,
3 | Implement or remove uvmt_adv_timer_b_test_cfg_c::post_randomize_work(),uvmt_adv_timer_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe Advanced timer counter Block UVM Test Bench",uvmt_adv_timer_b,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_adv_timer_b_test_cfg_c::post_randomize_work(),uvmt_adv_timer_b,uvmt_adv_timer_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_adv_timer_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_adv_timer_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_adv_timer_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_adv_timer_b_dev_guide_description Description
22 |
23 |
24 | @section uvmt_adv_timer_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_adv_timer_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvmt_adv_timer_b/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_adv_timer_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_adv_timer_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_adv_timer_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_adv_timer_b_user_guide_description Description
22 |
23 |
24 | @section uvmt_adv_timer_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_adv_timer_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/src/uvmt_adv_timer_b_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_ADV_TIMER_B_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_ADV_TIMER_B_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_ADV_TIMER_B_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/src/uvmt_adv_timer_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_ADV_TIMER_B_FTDECS_SV__
7 | `define __UVMT_ADV_TIMER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_ADV_TIMER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/src/uvmt_adv_timer_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_ADV_TIMER_B_MACROS_SVH__
7 | `define __UVMT_ADV_TIMER_B_MACROS_SVH__
8 |
9 |
10 | `ifndef UVMT_ADV_TIMER_B_NUM_BITS
11 | `define UVMT_ADV_TIMER_B_NUM_BITS 16
12 | `endif
13 | `ifndef UVMT_ADV_TIMER_B_N_EXTSIG
14 | `define UVMT_ADV_TIMER_B_N_EXTSIG 32
15 | `endif
16 |
17 |
18 | `endif // __UVMT_ADV_TIMER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_adv_timer_b/src/uvmt_adv_timer_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_ADV_TIMER_B_TDEFS_SV__
7 | `define __UVMT_ADV_TIMER_B_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_ADV_TIMER_B_ABC_MAX_WIDTH-1):0] uvmt_adv_timer_b_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT_ADV_TIMER_B_EX_ABC
17 | // } uvmt_adv_timer_b_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_adv_timer_b_ex_struct;
25 |
26 |
27 | `endif // __UVMT_ADV_TIMER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit counter Block UVM Test Bench
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit counter Block UVM Test Bench.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for adding to this test bench
15 | * `src` - Source code root
16 |
17 | > * `tb` - Test Bench
18 | > * `tests` - UVM Tests and Test Suites
19 |
20 |
21 | ## Dependencies
22 | It is dependent on the following IP:
23 |
24 | * `datum/uvmx`
25 | * `datum/uvma_clk`
26 | * `datum/uvma_reset`
27 | * `datum/uvma_tcounter_b]`
28 | * `datum/uvme_tcounter_b]`
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Timer unit counter Block UVM Test Bench",1
3 | Issue,Implement or remove uvmt_tcounter_b_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe Timer unit counter Block UVM Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_tcounter_b_test_cfg_c::post_randomize_work(),uvmt_tcounter_b_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe Timer unit counter Block UVM Test Bench",ip.yml,
3 | Implement or remove uvmt_tcounter_b_test_cfg_c::post_randomize_work(),uvmt_tcounter_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe Timer unit counter Block UVM Test Bench",uvmt_tcounter_b,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_tcounter_b_test_cfg_c::post_randomize_work(),uvmt_tcounter_b,uvmt_tcounter_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_tcounter_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_tcounter_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_tcounter_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_tcounter_b_dev_guide_description Description
22 |
23 |
24 | @section uvmt_tcounter_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_tcounter_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvmt_tcounter_b/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_tcounter_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_tcounter_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_tcounter_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_tcounter_b_user_guide_description Description
22 |
23 |
24 | @section uvmt_tcounter_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_tcounter_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/src/uvmt_tcounter_b_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TCOUNTER_B_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_TCOUNTER_B_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_TCOUNTER_B_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/src/uvmt_tcounter_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TCOUNTER_B_CONSTANTS_SV__
7 | `define __UVMT_TCOUNTER_B_CONSTANTS_SV__
8 |
9 |
10 | const int unsigned uvmt_tcounter_b_default_clk_i_frequency = 100_000_000; ///< Default Input clock frequency (100.0Mhz)
11 | const int unsigned uvmt_tcounter_b_default_startup_timeout = 10_000; ///< Default Heartbeat Monitor startup timeout in ns
12 | const int unsigned uvmt_tcounter_b_default_heartbeat_period = 1_000; ///< Default Heartbeat Monitor period in ns
13 | const int unsigned uvmt_tcounter_b_default_heartbeat_refresh_period = 5_000; ///< Default Heartbeat Monitor refresh period in ns
14 | const int unsigned uvmt_tcounter_b_default_simulation_timeout = 1_000_000; ///< Default Watchdog Timer simulation timeout in ns
15 |
16 |
17 | `endif // __UVMT_TCOUNTER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/src/uvmt_tcounter_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TCOUNTER_B_FTDECS_SV__
7 | `define __UVMT_TCOUNTER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_TCOUNTER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/src/uvmt_tcounter_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TCOUNTER_B_MACROS_SVH__
7 | `define __UVMT_TCOUNTER_B_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_TCOUNTER_B_ABC_WIDTH
12 | // `define UVMT_TCOUNTER_B_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 | `endif // __UVMT_TCOUNTER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tcounter_b/src/uvmt_tcounter_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TCOUNTER_B_TDEFS_SV__
7 | `define __UVMT_TCOUNTER_B_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_TCOUNTER_B_ABC_MAX_WIDTH-1):0] uvmt_tcounter_b_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT_TCOUNTER_B_EX_ABC
17 | // } uvmt_tcounter_b_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_tcounter_b_ex_struct;
25 |
26 |
27 | `endif // __UVMT_TCOUNTER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/README.md:
--------------------------------------------------------------------------------
1 | # datum Timer unit prescaler Block UVM Test Bench
2 |
3 |
4 | ## About
5 | This IP contains the datum Timer unit prescaler Block UVM Test Bench.
6 |
7 |
8 | ## Block Diagram
9 | 
10 |
11 | ## Directory Structure
12 | * `bin` - Scripts, metadata and other miscellaneous files
13 | * `docs` - Reference documentation
14 | * `examples` - Code samples for adding to this test bench
15 | * `src` - Source code root
16 |
17 | > * `tb` - Test Bench
18 | > * `tests` - UVM Tests and Test Suites
19 |
20 |
21 | ## Dependencies
22 | It is dependent on the following IP:
23 |
24 | * `datum/uvmx`
25 | * `datum/uvma_clk`
26 | * `datum/uvma_reset`
27 | * `datum/uvma_tprescaler_b]`
28 | * `datum/uvme_tprescaler_b]`
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Describe Timer unit prescaler Block UVM Test Bench",1
3 | Issue,Implement or remove uvmt_tprescaler_b_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Describe Timer unit prescaler Block UVM Test Bench",ip.yml,,open,,
3 | Implement or remove uvmt_tprescaler_b_test_cfg_c::post_randomize_work(),uvmt_tprescaler_b_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Describe Timer unit prescaler Block UVM Test Bench",ip.yml,
3 | Implement or remove uvmt_tprescaler_b_test_cfg_c::post_randomize_work(),uvmt_tprescaler_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Describe Timer unit prescaler Block UVM Test Bench",uvmt_tprescaler_b,ip.yml,
3 | task,1,,To Do,Implement or remove uvmt_tprescaler_b_test_cfg_c::post_randomize_work(),uvmt_tprescaler_b,uvmt_tprescaler_b_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_tprescaler_b_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_tprescaler_b_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_tprescaler_b_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_tprescaler_b_dev_guide_description Description
22 |
23 |
24 | @section uvmt_tprescaler_b_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_tprescaler_b_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/docs/tb_block_diagram.vsdx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/dv/blocks/uvmt_tprescaler_b/docs/tb_block_diagram.vsdx
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_tprescaler_b_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_tprescaler_b_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_tprescaler_b_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_tprescaler_b_user_guide_description Description
22 |
23 |
24 | @section uvmt_tprescaler_b_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_tprescaler_b_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/src/uvmt_tprescaler_b_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TPRESCALER_B_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_TPRESCALER_B_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints belong here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_TPRESCALER_B_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/src/uvmt_tprescaler_b_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TPRESCALER_B_CONSTANTS_SV__
7 | `define __UVMT_TPRESCALER_B_CONSTANTS_SV__
8 |
9 |
10 | const int unsigned uvmt_tprescaler_b_default_clk_i_frequency = 100_000_000; ///< Default frequency (100.0Mhz)
11 | const int unsigned uvmt_tprescaler_b_default_startup_timeout = 10_000; ///< Default Heartbeat Monitor startup timeout in ns
12 | const int unsigned uvmt_tprescaler_b_default_heartbeat_period = 1_000; ///< Default Heartbeat Monitor period in ns
13 | const int unsigned uvmt_tprescaler_b_default_heartbeat_refresh_period = 5_000; ///< Default Heartbeat Monitor refresh period in ns
14 | const int unsigned uvmt_tprescaler_b_default_simulation_timeout = 1_000_000; ///< Default Watchdog Timer simulation timeout in ns
15 |
16 |
17 | `endif // __UVMT_TPRESCALER_B_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/src/uvmt_tprescaler_b_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TPRESCALER_B_FTDECS_SV__
7 | `define __UVMT_TPRESCALER_B_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_TPRESCALER_B_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/src/uvmt_tprescaler_b_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TPRESCALER_B_MACROS_SVH__
7 | `define __UVMT_TPRESCALER_B_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_TPRESCALER_B_ABC_WIDTH
12 | // `define UVMT_TPRESCALER_B_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 | `endif // __UVMT_TPRESCALER_B_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/blocks/uvmt_tprescaler_b/src/uvmt_tprescaler_b_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_TPRESCALER_B_TDEFS_SV__
7 | `define __UVMT_TPRESCALER_B_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_TPRESCALER_B_ABC_MAX_WIDTH-1):0] uvmt_tprescaler_b_abc_b_t; ///< Describe me!
12 | // Ex: /*
13 | // * Describe me!
14 | // */
15 | // typedef enum {
16 | // UVMT_TPRESCALER_B_EX_ABC
17 | // } uvmt_tprescaler_b_ex_enum;
18 | // Ex: /*
19 | // * Describe me!
20 | // */
21 | // typedef struct {
22 | // bit [2:0] abc;
23 | // logic xyz;
24 | // } uvmt_tprescaler_b_ex_struct;
25 |
26 |
27 | `endif // __UVMT_TPRESCALER_B_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/README.md:
--------------------------------------------------------------------------------
1 | # Datum CORE-V-MCU Chip UVM Environment
2 |
3 |
4 | # About
5 | This IP contains the Datum CORE-V-MCU Chip UVM Environment.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for using and extending this environment
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvme_apb_timer_ss`
19 | * `datum/uvme_apb_adv_timer_ss`
20 | * `datum/uvma_jtag`
21 | * `datum/uvma_spi`
22 | * `datum/uvma_cvmcu_cpi`
23 | * `datum/uvma_i2c`
24 | * `datum/uvma_uart`
25 | * `datum/uvma_sdio`
26 | * `datum/uvma_obi`
27 | * `datum/uvma_cvmcu_event`
28 | * `datum/uvma_cvmcu_dbg`
29 |
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_chip_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_chip_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_chip_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_cvmcu_chip_dev_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_chip_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_chip_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_cvmcu_chip_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_cvmcu_chip_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_cvmcu_chip_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvme_cvmcu_chip_user_guide_description Description
22 |
23 |
24 | @section uvme_cvmcu_chip_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_cvmcu_chip_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/src/seq/uvme_cvmcu_chip_base_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CHIP_BASE_SEQ_SV__
7 | `define __UVME_CVMCU_CHIP_BASE_SEQ_SV__
8 |
9 |
10 | /**
11 | * Abstract Sequence from which all other CORE-V-MCU Chip environment Sequences extend.
12 | * Subclasses must be run on uvme_cvmcu_chip_sqr_c.
13 | * @ingroup uvme_cvmcu_chip_seq
14 | */
15 | class uvme_cvmcu_chip_base_seq_c extends uvmx_chip_env_seq_c #(
16 | .T_CFG (uvme_cvmcu_chip_cfg_c ),
17 | .T_CNTXT(uvme_cvmcu_chip_cntxt_c),
18 | .T_SQR (uvme_cvmcu_chip_sqr_c )
19 | );
20 |
21 | `uvm_object_utils(uvme_cvmcu_chip_base_seq_c)
22 |
23 | /**
24 | * Default constructor.
25 | */
26 | function new(string name="uvme_cvmcu_chip_base_seq");
27 | super.new(name);
28 | endfunction
29 |
30 | endclass
31 |
32 |
33 | `endif // __UVME_CVMCU_CHIP_BASE_SEQ_SV__
34 |
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/src/seq/uvme_cvmcu_chip_init_seq.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CHIP_INIT_SEQ_SV__
7 | `define __UVME_CVMCU_CHIP_INIT_SEQ_SV__
8 |
9 |
10 | /**
11 | * Initializes any and all probe signals at start of simulation.
12 | * @ingroup uvme_cvmcu_chip_seq
13 | */
14 | class uvme_cvmcu_chip_init_seq_c extends uvme_cvmcu_chip_base_seq_c;
15 |
16 | `uvm_object_utils(uvme_cvmcu_chip_init_seq_c)
17 |
18 | /**
19 | * Default constructor.
20 | */
21 | function new(string name="uvme_cvmcu_chip_init_seq");
22 | super.new(name);
23 | endfunction
24 |
25 | /**
26 | * Drives signals to default values.
27 | */
28 | virtual task body();
29 | `uvmx_probe_drv_signal(bootsel_i, 1)
30 | `uvmx_probe_drv_signal(stm_i, 0)
31 | endtask
32 |
33 | endclass
34 |
35 |
36 | `endif // __UVME_CVMCU_CHIP_INIT_SEQ_SV__
37 |
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/src/uvme_cvmcu_chip_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CHIP_FTDECS_SV__
7 | `define __UVME_CVMCU_CHIP_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_cvmcu_chip_init_seq_c;
11 | typedef class uvme_cvmcu_chip_reset_seq_c;
12 | typedef class uvme_cvmcu_chip_cfg_seq_c;
13 | typedef class uvme_cvmcu_chip_udma_uart_seq_c;
14 |
15 |
16 | `endif // __UVME_CVMCU_CHIP_FTDECS_SV__
17 |
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/src/uvme_cvmcu_chip_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CHIP_MACROS_SVH__
7 | `define __UVME_CVMCU_CHIP_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_CVMCU_CHIP_ABC
12 | // `define UVME_CVMCU_CHIP_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_CVMCU_CHIP_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/chip/uvme_cvmcu_chip/src/uvme_cvmcu_chip_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_CVMCU_CHIP_TDEFS_SV__
7 | `define __UVME_CVMCU_CHIP_TDEFS_SV__
8 |
9 |
10 |
11 | `endif // __UVME_CVMCU_CHIP_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/README.md:
--------------------------------------------------------------------------------
1 | # Datum CORE-V-MCU Chip UVM Test Bench
2 |
3 |
4 | # About
5 | This IP contains the Datum CORE-V-MCU Chip UVM Test Bench.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for adding to this test bench
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvml_sb`
19 | * `datum/uvma_clk`
20 | * `datum/uvma_reset`
21 | * `datum/uvme_cvmcu_chip`
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Implement or remove uvmt_cvmcu_chip_test_cfg_c::rules_cons,1
3 | Issue,Implement or remove uvmt_cvmcu_chip_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Implement or remove uvmt_cvmcu_chip_test_cfg_c::rules_cons,uvmt_cvmcu_chip_test_cfg.sv,,open,,
3 | Implement or remove uvmt_cvmcu_chip_test_cfg_c::post_randomize_work(),uvmt_cvmcu_chip_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Implement or remove uvmt_cvmcu_chip_test_cfg_c::rules_cons,uvmt_cvmcu_chip_test_cfg.sv,
3 | Implement or remove uvmt_cvmcu_chip_test_cfg_c::post_randomize_work(),uvmt_cvmcu_chip_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Implement or remove uvmt_cvmcu_chip_test_cfg_c::rules_cons,uvmt_cvmcu_chip,uvmt_cvmcu_chip_test_cfg.sv,
3 | task,1,,To Do,Implement or remove uvmt_cvmcu_chip_test_cfg_c::post_randomize_work(),uvmt_cvmcu_chip,uvmt_cvmcu_chip_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_chip_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_chip_dev_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_chip_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_cvmcu_chip_dev_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_chip_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_chip_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/docs/index.md:
--------------------------------------------------------------------------------
1 | @mainpage IP Information
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_chip_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_chip_ip_desc IP Description
17 | This IP contains the Datum CORE-V-MCU Chip UVM Test Bench.
18 |
19 |
20 |
21 | @section uvmt_cvmcu_chip_ip_documents Documents
22 | ID | Name | Version
23 | -- | ---- | -------
24 | 001 | @subpage uvmt_cvmcu_chip_user_guide "User Guide" | 1.0
25 | 002 | @subpage uvmt_cvmcu_chip_dev_guide "Developer Guide" | 1.0
26 |
27 |
28 | @section uvmt_cvmcu_chip_ip_ref Reference
29 | * @ref uvmt_cvmcu_chip_pkg
30 | * @ref uvmt_cvmcu_chip_misc
31 | * @ref uvmt_cvmcu_chip_tb
32 | * @ref uvmt_cvmcu_chip_tests
33 |
34 |
35 | @section uvmt_cvmcu_chip_release_history Release History
36 | @subsection uvmt_cvmcu_chip_v1_0_0 2023/12/12 - 1.0.0
37 | - Initial release
38 |
39 |
40 | @htmlonly
41 |
42 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_cvmcu_chip_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_cvmcu_chip_user_guide_license_agreement License Agreement
11 | © Copyright 2023 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_cvmcu_chip_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2023/12/12 | Initial Version
20 |
21 | @subsection uvmt_cvmcu_chip_user_guide_description Description
22 |
23 |
24 | @section uvmt_cvmcu_chip_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_cvmcu_chip_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/src/uvmt_cvmcu_chip_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CHIP_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_CVMCU_CHIP_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_CVMCU_CHIP_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/src/uvmt_cvmcu_chip_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CHIP_FTDECS_SV__
7 | `define __UVMT_CVMCU_CHIP_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_CVMCU_CHIP_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/src/uvmt_cvmcu_chip_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CHIP_MACROS_SVH__
7 | `define __UVMT_CVMCU_CHIP_MACROS_SVH__
8 |
9 |
10 | `ifndef UVMT_CVMCU_CHIP_USE_CORES
11 | `define UVMT_CVMCU_CHIP_USE_CORES 0
12 | `endif
13 |
14 |
15 |
16 | `endif // __UVMT_CVMCU_CHIP_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/chip/uvmt_cvmcu_chip/src/uvmt_cvmcu_chip_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2023 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_CVMCU_CHIP_TDEFS_SV__
7 | `define __UVMT_CVMCU_CHIP_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_CVMCU_CHIP_ABC_MAX_WIDTH-1):0] uvmt_cvmcu_chip_abc_b_t;
12 | // Ex: typedef enum {
13 | // UVMT_CVMCU_CHIP_EXAMPLE_ABC
14 | // } uvmt_cvmcu_chip_example_enum;
15 | // Ex: typedef struct {
16 | // bit [2:0] abc;
17 | // logic xyz;
18 | // } uvmt_cvmcu_chip_example_struct;
19 |
20 |
21 | `endif // __UVMT_CVMCU_CHIP_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/README.md:
--------------------------------------------------------------------------------
1 | # Datum APB Advanced Timer Sub-System UVM Environment
2 |
3 |
4 | # About
5 | This IP contains the Datum APB Advanced Timer Sub-System UVM Environment.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for using and extending this environment
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvma_adv_timer_b`
19 | * `datum/uvme_adv_timer_b`
20 | * `datum/uvma_apb`
21 |
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_apb_adv_timer_ss_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_apb_adv_timer_ss_dev_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_apb_adv_timer_ss_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvme_apb_adv_timer_ss_dev_guide_description Description
22 |
23 |
24 | @section uvme_apb_adv_timer_ss_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_apb_adv_timer_ss_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_apb_adv_timer_ss_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_apb_adv_timer_ss_user_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_apb_adv_timer_ss_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvme_apb_adv_timer_ss_user_guide_description Description
22 |
23 |
24 | @section uvme_apb_adv_timer_ss_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_apb_adv_timer_ss_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/src/reg/uvme_apb_adv_timer_ss_reg_ignore_lists.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_ADV_TIMER_SS_REG_IGNORE_LISTS_SV__
7 | `define __UVME_APB_ADV_TIMER_SS_REG_IGNORE_LISTS_SV__
8 |
9 |
10 | string uvme_apb_adv_timer_ss_all_reg_mem_ignore_list[$] = '{
11 | };
12 |
13 | string uvme_apb_adv_timer_ss_reg_hw_reset_ignore_list[$] = '{
14 | };
15 |
16 | string uvme_apb_adv_timer_ss_reg_bit_bash_ignore_list[$] = '{
17 | };
18 |
19 | string uvme_apb_adv_timer_ss_reg_access_ignore_list[$] = '{
20 | };
21 |
22 | string uvme_apb_adv_timer_ss_mem_access_ignore_list[$] = '{
23 | };
24 |
25 | string uvme_apb_adv_timer_ss_shared_access_ignore_list[$] = '{
26 | };
27 |
28 | string uvme_apb_adv_timer_ss_mem_walk_access_ignore_list[$] = '{
29 | };
30 |
31 |
32 | `endif // __UVME_APB_ADV_TIMER_SS_REG_IGNORE_LISTS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/src/uvme_apb_adv_timer_ss_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_ADV_TIMER_SS_CONSTANTS_SV__
7 | `define __UVME_APB_ADV_TIMER_SS_CONSTANTS_SV__
8 |
9 |
10 | const uvm_reg_addr_t uvme_apb_adv_timer_ss_default_reg_block_base_address = 'h0000_0000; ///< Register block base address
11 | const int unsigned uvme_apb_adv_timer_ss_reg_block_reg_n_bytes = 4; ///< Width of registers (bytes)
12 |
13 | /**
14 | * Events IRQ lines.
15 | */
16 | const int unsigned uvme_apb_adv_timer_ss_events_irq_lines[string] = '{
17 | "EVENT_0" : 0, ///< Event #0
18 | "EVENT_1" : 1, ///< Event #1
19 | "EVENT_2" : 2, ///< Event #2
20 | "EVENT_3" : 3 ///< Event #3
21 | };
22 |
23 |
24 | `endif // __UVME_APB_ADV_TIMER_SS_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/src/uvme_apb_adv_timer_ss_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_ADV_TIMER_SS_FTDECS_SV__
7 | `define __UVME_APB_ADV_TIMER_SS_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_apb_adv_timer_ss_reset_seq_c;
11 | typedef class uvme_apb_adv_timer_ss_cfg_seq_c;
12 |
13 |
14 |
15 | `endif // __UVME_APB_ADV_TIMER_SS_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/src/uvme_apb_adv_timer_ss_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_ADV_TIMER_SS_MACROS_SVH__
7 | `define __UVME_APB_ADV_TIMER_SS_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_APB_ADV_TIMER_SS_ABC
12 | // `define UVME_APB_ADV_TIMER_SS_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_APB_ADV_TIMER_SS_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_adv_timer_ss/src/uvme_apb_adv_timer_ss_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_ADV_TIMER_SS_TDEFS_SV__
7 | `define __UVME_APB_ADV_TIMER_SS_TDEFS_SV__
8 |
9 |
10 |
11 | `endif // __UVME_APB_ADV_TIMER_SS_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/README.md:
--------------------------------------------------------------------------------
1 | # Datum APB simple timer unit Sub-System UVM Environment
2 |
3 |
4 | # About
5 | This IP contains the Datum APB simple timer unit Sub-System UVM Environment.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for using and extending this environment
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvma_tcounter_b`
19 | * `datum/uvme_tcounter_b`
20 | * `datum/uvma_tprescaler_b`
21 | * `datum/uvme_tprescaler_b`
22 | * `datum/uvma_apb`
23 |
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Add assertions and/or functional coverage to uvme_apb_timer_ss_chkr,1
3 | Issue,Implement or remove uvme_apb_timer_ss_cfg_c::rules_cons,1
4 | Issue,Implement or remove uvme_apb_timer_ss_cfg_c::post_randomize(),1
5 | Issue,Describe uvme_apb_timer_ss_reset_seq_c::pre_reset(),1
6 | Issue,Implement uvme_apb_timer_ss_reset_seq_c::pre_reset(),1
7 | Issue,Describe uvme_apb_timer_ss_reset_seq_c::in_reset(),1
8 | Issue,Implement uvme_apb_timer_ss_reset_seq_c::in_reset(),1
9 | Issue,Describe uvme_apb_timer_ss_reset_seq_c::post_reset(),1
10 | Issue,Implement uvme_apb_timer_ss_reset_seq_c::post_reset(),1
11 | Issue,Describe uvme_apb_timer_ss_cfg_seq_c::body(),1
12 | Issue,Implement uvme_apb_timer_ss_cfg_seq_c::body(),1
13 | Issue,Implement apb_timer_ss_cfg_cg,1
14 | Issue,Implement apb_timer_ss_cntxt_cg,1
15 | Issue,Implement uvme_apb_timer_ss_prd_c::predict_reg_op() for registers,1
16 | Issue,Implement uvme_apb_timer_ss_prd_c::predict_reg_op() for fields,1
17 | Issue,Implement uvme_apb_timer_ss_prd_c::predict_reg_op() for memories,1
18 |
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_apb_timer_ss_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_apb_timer_ss_dev_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_apb_timer_ss_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvme_apb_timer_ss_dev_guide_description Description
22 |
23 |
24 | @section uvme_apb_timer_ss_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_apb_timer_ss_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvme_apb_timer_ss_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvme_apb_timer_ss_user_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvme_apb_timer_ss_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvme_apb_timer_ss_user_guide_description Description
22 |
23 |
24 | @section uvme_apb_timer_ss_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvme_apb_timer_ss_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/src/uvme_apb_timer_ss_constants.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_TIMER_SS_CONSTANTS_SV__
7 | `define __UVME_APB_TIMER_SS_CONSTANTS_SV__
8 |
9 |
10 | const uvm_reg_addr_t uvme_apb_timer_ss_default_reg_block_base_address = 'h0000_0000; ///< Register block base address
11 | const int unsigned uvme_apb_timer_ss_reg_block_reg_n_bytes = 4; ///< Width of registers (bytes)
12 |
13 | /**
14 | * Events IRQ lines.
15 | */
16 | const int unsigned uvme_apb_timer_ss_events_irq_lines[string] = '{
17 | "LOW" : 0, ///< Low
18 | "HIGH" : 1 ///< High
19 | };
20 |
21 |
22 | `endif // __UVME_APB_TIMER_SS_CONSTANTS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/src/uvme_apb_timer_ss_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_TIMER_SS_FTDECS_SV__
7 | `define __UVME_APB_TIMER_SS_FTDECS_SV__
8 |
9 |
10 | typedef class uvme_apb_timer_ss_reset_seq_c;
11 | typedef class uvme_apb_timer_ss_cfg_seq_c;
12 |
13 |
14 |
15 | `endif // __UVME_APB_TIMER_SS_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/src/uvme_apb_timer_ss_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_TIMER_SS_MACROS_SVH__
7 | `define __UVME_APB_TIMER_SS_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVME_APB_TIMER_SS_ABC
12 | // `define UVME_APB_TIMER_SS_ABC 32
13 | // `endif
14 |
15 |
16 | `endif // __UVME_APB_TIMER_SS_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/ss/uvme_apb_timer_ss/src/uvme_apb_timer_ss_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVME_APB_TIMER_SS_TDEFS_SV__
7 | `define __UVME_APB_TIMER_SS_TDEFS_SV__
8 |
9 |
10 |
11 | `endif // __UVME_APB_TIMER_SS_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/README.md:
--------------------------------------------------------------------------------
1 | # Datum APB Advanced Timer Sub-System UVM Test Bench
2 |
3 |
4 | # About
5 | This IP contains the Datum APB Advanced Timer Sub-System UVM Test Bench.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for adding to this test bench
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvml_sb`
19 | * `datum/uvma_clk`
20 | * `datum/uvma_reset`
21 | * `datum/uvme_apb_adv_timer_ss`
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::rules_cons,1
3 | Issue,Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::rules_cons,uvmt_apb_adv_timer_ss_test_cfg.sv,,open,,
3 | Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_adv_timer_ss_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::rules_cons,uvmt_apb_adv_timer_ss_test_cfg.sv,
3 | Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_adv_timer_ss_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::rules_cons,uvmt_apb_adv_timer_ss,uvmt_apb_adv_timer_ss_test_cfg.sv,
3 | task,1,,To Do,Implement or remove uvmt_apb_adv_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_adv_timer_ss,uvmt_apb_adv_timer_ss_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_apb_adv_timer_ss_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_apb_adv_timer_ss_dev_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_apb_adv_timer_ss_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvmt_apb_adv_timer_ss_dev_guide_description Description
22 |
23 |
24 | @section uvmt_apb_adv_timer_ss_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_apb_adv_timer_ss_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_apb_adv_timer_ss_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_apb_adv_timer_ss_user_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_apb_adv_timer_ss_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvmt_apb_adv_timer_ss_user_guide_description Description
22 |
23 |
24 | @section uvmt_apb_adv_timer_ss_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_apb_adv_timer_ss_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/src/uvmt_apb_adv_timer_ss_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_ADV_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_APB_ADV_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_APB_ADV_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/src/uvmt_apb_adv_timer_ss_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_ADV_TIMER_SS_FTDECS_SV__
7 | `define __UVMT_APB_ADV_TIMER_SS_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_APB_ADV_TIMER_SS_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/src/uvmt_apb_adv_timer_ss_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_ADV_TIMER_SS_MACROS_SVH__
7 | `define __UVMT_APB_ADV_TIMER_SS_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_APB_ADV_TIMER_SS_ABC_WIDTH
12 | // `define UVMT_APB_ADV_TIMER_SS_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 |
17 | `endif // __UVMT_APB_ADV_TIMER_SS_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_adv_timer_ss/src/uvmt_apb_adv_timer_ss_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_ADV_TIMER_SS_TDEFS_SV__
7 | `define __UVMT_APB_ADV_TIMER_SS_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_APB_ADV_TIMER_SS_ABC_MAX_WIDTH-1):0] uvmt_apb_adv_timer_ss_abc_b_t;
12 | // Ex: typedef enum {
13 | // UVMT_APB_ADV_TIMER_SS_EXAMPLE_ABC
14 | // } uvmt_apb_adv_timer_ss_example_enum;
15 | // Ex: typedef struct {
16 | // bit [2:0] abc;
17 | // logic xyz;
18 | // } uvmt_apb_adv_timer_ss_example_struct;
19 |
20 |
21 | `endif // __UVMT_APB_ADV_TIMER_SS_TDEFS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/.gitignore:
--------------------------------------------------------------------------------
1 | docs/dox_out
2 | ip.shrinkwrap.yml
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/README.md:
--------------------------------------------------------------------------------
1 | # Datum APB simple timer unit Sub-System UVM Test Bench
2 |
3 |
4 | # About
5 | This IP contains the Datum APB simple timer unit Sub-System UVM Test Bench.
6 |
7 | # Directory Structure
8 | * `bin` - Scripts, metadata and other miscellaneous files
9 | * `docs` - Reference documentation
10 | * `examples` - Code samples for adding to this test bench
11 | * `src` - Source code
12 |
13 |
14 | # Dependencies
15 | It is dependent on the following IP:
16 |
17 | * `datum/uvmx`
18 | * `datum/uvml_sb`
19 | * `datum/uvma_clk`
20 | * `datum/uvma_reset`
21 | * `datum/uvme_apb_timer_ss`
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/TODOS.azure.csv:
--------------------------------------------------------------------------------
1 | Work Item Type,Title,Priority
2 | Issue,Implement or remove uvmt_apb_timer_ss_test_cfg_c::rules_cons,1
3 | Issue,Implement or remove uvmt_apb_timer_ss_test_cfg_c::post_randomize_work(),1
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/TODOS.github.csv:
--------------------------------------------------------------------------------
1 | title,description,assignee,state,milestone,labels
2 | Implement or remove uvmt_apb_timer_ss_test_cfg_c::rules_cons,uvmt_apb_timer_ss_test_cfg.sv,,open,,
3 | Implement or remove uvmt_apb_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_timer_ss_test_cfg.sv,,open,,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/TODOS.gitlab.csv:
--------------------------------------------------------------------------------
1 | title,description,due_date
2 | Implement or remove uvmt_apb_timer_ss_test_cfg_c::rules_cons,uvmt_apb_timer_ss_test_cfg.sv,
3 | Implement or remove uvmt_apb_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_timer_ss_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/TODOS.jira.csv:
--------------------------------------------------------------------------------
1 | IssueType,Issue ID,Parent ID,Status,Summary,Component,Description
2 | task,0,,To Do,Implement or remove uvmt_apb_timer_ss_test_cfg_c::rules_cons,uvmt_apb_timer_ss,uvmt_apb_timer_ss_test_cfg.sv,
3 | task,1,,To Do,Implement or remove uvmt_apb_timer_ss_test_cfg_c::post_randomize_work(),uvmt_apb_timer_ss,uvmt_apb_timer_ss_test_cfg.sv,
4 |
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/docs/dev_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_apb_timer_ss_dev_guide Developer Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_apb_timer_ss_dev_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_apb_timer_ss_dev_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvmt_apb_timer_ss_dev_guide_description Description
22 |
23 |
24 | @section uvmt_apb_timer_ss_dev_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_apb_timer_ss_dev_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/docs/user_guide.md:
--------------------------------------------------------------------------------
1 | @page uvmt_apb_timer_ss_user_guide User Guide
2 | @htmlonly
3 |
4 | @endhtmlonly
5 |
6 |
7 | @tableofcontents
8 |
9 |
10 | @section uvmt_apb_timer_ss_user_guide_license_agreement License Agreement
11 | © Copyright 2024 Datum Technology Corporation
12 |
13 | All rights reserved.
14 |
15 |
16 | @section uvmt_apb_timer_ss_user_guide_revision_history Revision History
17 | Revision | Date | Description
18 | --------- | ---- | -----------
19 | 1.0 | 2024/1/19 | Initial Version
20 |
21 | @subsection uvmt_apb_timer_ss_user_guide_description Description
22 |
23 |
24 | @section uvmt_apb_timer_ss_user_guide_definitions Definitions
25 | Symbol | Definition
26 | ------ | ----------
27 | 'SYMBOL' | Definition
28 |
29 |
30 | @section uvmt_apb_timer_ss_user_guide_contents Contents
31 |
32 |
33 | @htmlonly
34 |
35 | @endhtmlonly
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/src/uvmt_apb_timer_ss_base_test_workarounds.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
7 | `define __UVMT_APB_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
8 |
9 |
10 | // Temporary configuration constraints here (this file should be empty by the end of the project).
11 |
12 |
13 | `endif // __UVMT_APB_TIMER_SS_BASE_TEST_WORKAROUNDS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/src/uvmt_apb_timer_ss_ftdecs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_TIMER_SS_FTDECS_SV__
7 | `define __UVMT_APB_TIMER_SS_FTDECS_SV__
8 |
9 |
10 | `endif // __UVMT_APB_TIMER_SS_FTDECS_SV__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/src/uvmt_apb_timer_ss_macros.svh:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_TIMER_SS_MACROS_SVH__
7 | `define __UVMT_APB_TIMER_SS_MACROS_SVH__
8 |
9 |
10 | // Add preprocessor macros here
11 | // Ex: `ifndef UVMT_APB_TIMER_SS_ABC_WIDTH
12 | // `define UVMT_APB_TIMER_SS_ABC_WIDTH 32
13 | // `endif
14 |
15 |
16 |
17 | `endif // __UVMT_APB_TIMER_SS_MACROS_SVH__
--------------------------------------------------------------------------------
/dv/ss/uvmt_apb_timer_ss/src/uvmt_apb_timer_ss_tdefs.sv:
--------------------------------------------------------------------------------
1 | // Copyright 2024 Datum Technology Corporation
2 | // All rights reserved.
3 | ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
4 |
5 |
6 | `ifndef __UVMT_APB_TIMER_SS_TDEFS_SV__
7 | `define __UVMT_APB_TIMER_SS_TDEFS_SV__
8 |
9 |
10 | // Add enums and structs here
11 | // Ex: typedef bit [(`UVMT_APB_TIMER_SS_ABC_MAX_WIDTH-1):0] uvmt_apb_timer_ss_abc_b_t;
12 | // Ex: typedef enum {
13 | // UVMT_APB_TIMER_SS_EXAMPLE_ABC
14 | // } uvmt_apb_timer_ss_example_enum;
15 | // Ex: typedef struct {
16 | // bit [2:0] abc;
17 | // logic xyz;
18 | // } uvmt_apb_timer_ss_example_struct;
19 |
20 |
21 | `endif // __UVMT_APB_TIMER_SS_TDEFS_SV__
--------------------------------------------------------------------------------
/lint/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openhwgroup/core-v-mcu-uvm/9319c7ccf4e7eece2b7ecabd24998d7c0657a7b0/lint/.gitignore
--------------------------------------------------------------------------------
/mdc_config.yml:
--------------------------------------------------------------------------------
1 | toolchain:
2 | environment-variables: null
3 | packages:
4 | - name: uvm
5 | version: '1.2'
6 |
--------------------------------------------------------------------------------
/mdc_ignore:
--------------------------------------------------------------------------------
1 | # Default file patterns to ignore when synchronizing files to the remote disk
2 | *.log
3 |
4 | # Waveform databases
5 | *.vcd
6 | *.mxd
7 |
8 | # Downloaded files from the remote disk
9 | _downloaded_*
10 | tools
11 | sim
12 | lint
13 | docs
14 | .mio/sim
15 | *_backup
16 |
--------------------------------------------------------------------------------
/mio.toml:
--------------------------------------------------------------------------------
1 | # Copyright 2022-2023 Datum Technology Corporation
2 | # All rights reserved.
3 | ########################################################################################################################
4 |
5 |
6 | [project]
7 | name = "core-v-mcu-uvm"
8 | full-name = "CORE-V MCU UVM Test Bench Project"
9 | description = ""
10 |
11 | [simulation]
12 | uvm-version = "1.2"
13 | timescale = "1ns/1ps"
14 | default-simulator = "mdc"
15 |
16 | [ip]
17 | paths = ["dv", "dv/agents", "dv/blocks", "dv/chip", "dv/ss", "rtl", "rtl/core-v-mcu"]
--------------------------------------------------------------------------------
/rtl/.gitignore:
--------------------------------------------------------------------------------
1 | core-v-mcu
--------------------------------------------------------------------------------
/sim/.gitignore:
--------------------------------------------------------------------------------
1 | regr
2 | cmp
3 | results
4 |
--------------------------------------------------------------------------------
/tools/.gitignore:
--------------------------------------------------------------------------------
1 | .imports
--------------------------------------------------------------------------------