• Verification Plan
  • Directed Test Vs Constraint Random Test
  • Layered Testbench Architecture
  • Individual Components of Layered Architecture

Understanding Verification Plan

Sr no.TestcaseDescriptionFeature Covered
1.rst_highDefault values for dout when reset is assertedThis verify the behaviour of the dout at the start of operation when reset is high for first few cycles.
2.rstreset is asserted during read and write transactionDout must hold its initial value whenever reset is asserted in the middle of ongoing transaction
3.wrwr is asserted after reset is deassertedVerify Valid data store in the memory during Write transaction
4.wrwr is asserted when rst is assertedData should not be added to the Memory
5.wr_lowwr is deasserted when reset is deasserteddout must return valid value store during previous write transaction
6.wr_lowwr is deasserted when reset is asserteddout must stay at zero
7.wr_lowwr is deasserted when rst is deassertedreading data from address without valid data, dout must return zero
Testcase NameSummaryDescriptionWeightGoalCovergroupSpecification
apb_slv_error_testTest error response functionalityGenerate address that are outside of Address space of DUT. Generate write and read operation with wrong address and poll for slave err response signal (PSLVERR)to go high. The test passes if DUT can detect the Address out of the bound error and set PSLVERR signal to high. Run this testcase with APB_SLV_WAIT_FUNC_EN = 1 user define. The min and max wait delays can be defined using APB_SLV_MIN_WAIT_CYC and APB_SLV_MA_WAIT_CYC user defines.1op_type == READ, WRITE Address = OUT OF BOUND ADDRESS data = patternsop_type ADDR DATAAPB_Slave_Core_SRAM_Design_Specification.docx
apb_slv_arr_testTest error response functionality with wait state enabledGenerate address that are outside of Address space of DUT. Generate write and read operation with wrong address and poll for slave err response signal(PSLVERR) to go high. The test passes if DUT can detect the Address out of bound error and set PSLVERR signal to high.1op_type == READ, WRITE Address =OUT OF BOUND ADDRESS data = patternsop_type ADDR DATAAPB_Slave_Core_SRAM_Design_Specification.doc

Directed Test Vs Constraint Random Test

Layered Architecture

Individual Components of TB

  1. Transaction: Contain variables fore all the inputs/outputs port present in DUT to share among classes.
  2. Generator: Generate random stimulus and send it to Driver using IPC
  3. Driver: Receive Stimulus from Generator and Trigger respective Signals of DUT with help of INTERFACE
  4. Monitor: Receive Response from DUT and send it to scoreboard using IPC
  5. Scoreboard: Compare response of DUT with Expected / Golden Data
  6. Environment: Hold GEN,DRV,MON,SCO together.
  7. Test: Hold Env and Control simulation process.