# AMBA_APB_SRAM **Repository Path**: LinYangPhil/AMBA_APB_SRAM ## Basic Information - **Project Name**: AMBA_APB_SRAM - **Description**: AMBA v.3 APB v.1 Specification Complaint Slave SRAM Core design and testbench. The testbench is developed using System Verilog and UVM and can be used as standalone Verification IP (VIP). - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-01-20 - **Last Updated**: 2021-01-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AMBA_APB_SRAM AMBA v.3 APB v.1 Specification Complaint Slave SRAM Core design and testbench. The testbench is developed using System Verilog and UVM and can be used as standalone Verification IP (VIP). # Project Structure This project is organized in following manner ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) AMBA_APB_SRAM   |   |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) doc : contains project documents like testcase plan, verification plan etc.
          |
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) TestcasePlan                  |-> ![Excel File](http://icons.iconarchive.com/icons/carlosjj/microsoft-office-2013/16/Excel-icon.png) apb_sram_testplan.xlsx           |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) VerificationPlan   |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) rtl : contains rtl code of APB SRAM Core.           |->![Verilog File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_v3_sram.v   |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) scripts : contains scripts for running tests.
          |->![shell script](http://icons.iconarchive.com/icons/guillendesign/variations-2/16/Script-Console-icon.png) runscript.ps1 : script for ruuning tests with Questasim or modelsim on windows
  |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) sim : contains simulation work directory. This is where you should open a terminal to run your tests.
          |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png)tb_filelist.f: main file list
          |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png)tb_filelist_for_VRM.f : Filelist for running regression tests with Questa Verification Run Manager (VRM). You should modify the paths of this file.
          |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_regression.rmdb : RMDB data base file for running regression tests with Questa VRM
          |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_regression_with_VRM.vrm: VRM project file
          |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) wave.do : do file for loading simulation signals on Questa waveform Viewer
  |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) simlog : contains simulation log files.
  |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) spec : contains RTL design specification.
          |->![docx file](http://icons.iconarchive.com/icons/dtafalonso/android-lollipop/16/Docs-icon.png) APB_Slave_Core_SRAM_Design_Specification.docx : Design Specification of APB SRAM Core
          |->![pdf file](http://icons.iconarchive.com/icons/treetog/i/16/PDF-icon.png) ARM_AMBA3_APB.pdf : AMBA v3 APB v1 protocol specification
  |->  ![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) tb: Contains Constraint Random UVM testbench which can be used as standalone APB master Verification IP (VIP).
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) agents: Contains all agents
                 |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) apb_mstr_agent : APB Master agent files
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_agent_pkg.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_seq_item.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_mstr_agent_config.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_mstr_driver.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_monitor.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_coverage_monitor.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_mstr_sequencer.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_mstr_agent.sv
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) defines: Contains testbench define files
                 |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_global_pkg.sv
                 |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) tb_defines.sv
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) env: Contains environment files
                 |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) apb_mstr_env : APB Environement files
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_env_pkg.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_env_config.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_scoreboard.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_env.sv
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) sequence_lib: Contains sequence libraries
                 |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) apb_mstr_sequence_lib : APB Sequence library
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_seq_lib_pkg.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_base_sequence.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_rd_sequence.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_wr_sequence.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_err_rd_sequence.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_err_wr_sequence.sv
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) tb_top : Contains interface and tb_top file
                 |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_interface.sv
                 |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) tb_top.sv
          |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) test_lib: Contains test library
                 |->![FolderIcon](http://icons.iconarchive.com/icons/paomedia/small-n-flat/16/folder-icon.png) apb_mstr_test_lib : APB tests
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_test_pkg.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_base_test.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_directed_reg_write_read_test.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_rand_reg_write_read_test.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_reg_alias_test.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_reg_por_read_test.sv
                        |->![Text File](http://icons.iconarchive.com/icons/untergunter/leaf-mimes/16/text-x-generic-icon.png) apb_slv_err_test.sv
# Run Instruction ## Running Single Test without coverage analysis ```powershell > cd sim > ..\scripts\runscript.ps1 -testName -mode ``` ## Running Single Test with coverage analysis ```powershell > cd sim > ..\scripts\runscript.ps1 -testName -mode -cov ``` ## Running Regression Tests with Questa VRM in batch mode ```powershell > cd sim > vrun -rmdb apb_regression.rmdb ``` ## Running Regression Tests with Questa VRM in gui mode ```powershell > cd sim > vrun -gui -rmdb apb_regression.rmdb ``` Right click on Default Configuration 1 and Select run.