[sysrst_ctrl,dv] Updated the testplan
This pull request will update the testplan
to include new additional requirements.
Signed-off-by: Madhuri Patel <madhuri.patel@ensilica.com>
diff --git a/hw/ip/sysrst_ctrl/data/sysrst_ctrl_testplan.hjson b/hw/ip/sysrst_ctrl/data/sysrst_ctrl_testplan.hjson
index c909ca5..83a008d 100644
--- a/hw/ip/sysrst_ctrl/data/sysrst_ctrl_testplan.hjson
+++ b/hw/ip/sysrst_ctrl/data/sysrst_ctrl_testplan.hjson
@@ -148,7 +148,9 @@
* Make sure flash_wp_out_l signal is asserted low by reading PIN_OUT_CTL.flash_wp_l.
* Enable the override function by setting PIN_OUT_CTL.FLASH_WP_L to value 1.
- * Check if flash_wp_out_l is released.
+ * Randomize the corresponding flash_wp_l_i input pin.
+ * Check flash_wp_l_i does not have a bypass path to flash_wp_l_o.
+ * Check if flash_wp_l_o is released only by the override function.
'''
milestone: V2
tests: ["sysrst_ctrl_flash_wr_prot_out"]
@@ -171,44 +173,131 @@
milestone: V2
tests: ["sysrst_ctrl_ultra_low_pwr"]
}
+
+ {
+ name: stress_all
+ desc: '''
+ Test all the sequences randomly in one sequence.
+
+ * Combine above sequences in one test then randomly select for running.
+ * All sequences should be finished and checked by the scoreboard.
+ '''
+ milestone: V2
+ tests: ["sysrst_ctrl_stress_all"]
+ }
]
covergroups: [
{
- name: sysrst_ctrl_ec_rst_pulse_width_cg
- desc: '''
- Cover the ec_rst_out_l pulse width range from 10-200ms.
- '''
- }
- {
- name: sysrst_ctrl_key_intr_cg
- desc: '''
- Cover the FSM for input key pressed and released.
- '''
- }
- {
- name: sysrst_ctrl_timerfsm_cg
- desc: '''
- Cover the timer based FSM model for different debounce time.
- '''
- }
- {
- name: sysrst_ctrl_ulpfsm_cg
- desc: '''
- Cover the ultra low power fsm model.
- '''
- }
- {
name: sysrst_ctrl_combo_detect_action_cg
desc: '''
Cover all the combo detect actions.
+ Create 4 instance to cover the combo detect register [0-3].
+ Sample the covergroup when the event occurs.
+ Cross the covergroup with combo_detect_sel_cg to cover all the input combination with
+ all the possible combo_detect actions.
'''
}
{
- name: sysrst_ctrl_override_values_cg
+ name: sysrst_ctrl_combo_detect_sel_cg
desc: '''
- Cover the pin override value transition from 0 -> 1 and 1 -> 0.
- Reference: PIN_OUT_VALUE register.
+ Cover all the combo detect input select.
+ Cross all the inputs to cover all the combos.
+ Create 4 instance to cover the combo detect register [0-3].
+ Sample the covergroup when the event occurs.
+ Cross the covergroup with combo_detect_action_cg to cover all the input combination with
+ all the possible combo_detect actions.
+ '''
+ }
+ {
+ name: sysrst_ctrl_combo_detect_det_cg
+ desc: '''
+ Cover the combo detect debounce timer.
+ Create 4 instance to cover the combo detect register [0-3].
+ '''
+ }
+ {
+ name: sysrst_ctrl_auto_block_debounce_ctl_cg
+ desc: '''
+ Cover the auto block enable/disable feature.
+ Cover the auto block debounce timer.
+ '''
+ }
+ {
+ name: sysrst_ctrl_combo_intr_status_cg
+ desc: '''
+ Cover the combo detect status of all 4 set of combo registers.
+ Cover all the input combinations has generated selected outcome actions and cross
+ with the status generated.
+ '''
+ }
+ {
+ name: sysrst_ctrl_key_intr_status_cg
+ desc: '''
+ Cover the H2L/L2H edge detect event of all the inputs.
+ '''
+ }
+ {
+ name: sysrst_ctrl_ulp_status_cg
+ desc: '''
+ Cover the ultra low power event triggered.
+ Cover the following condition triggers the ultra low power event:
+ * High to low transition on pwrb_in input pin
+ * Low to High transition on lid_open pin.
+ * A level high on ac_present pin.
+ Cross the above three condition with the ulp_status.
+ '''
+ }
+ {
+ name: sysrst_ctrl_wkup_event_cg
+ desc: '''
+ Cover the ultra low power wakeup event and status.
+ Cover the wkup event could occur due to following condition:
+ * High to low transition on pwrb_in input pin when ulp feature is enable.
+ * Low to High transition on lid_open pin when ulp feature is enable.
+ * A level high on ac_present pin when ulp feature is enable.
+ * When an interrupt is generated.
+ Cross the above condition with the wkup_status register.
+ '''
+ }
+ {
+ name: sysrst_ctrl_key_invert_ctl_cg
+ desc: '''
+ Cover the invert values of all input and output values.
+ '''
+ }
+ {
+ name: sysrst_ctrl_pin_in_value_cg
+ desc: '''
+ Cover the raw input values before inversion for all inputs.
+ '''
+ }
+ {
+ name: sysrst_ctrl_auto_blk_out_ctl_cg
+ desc: '''
+ Cover the auto blk input select and their values.
+ Cross the key outputs selected to override with their override values.
+ Sample the covergroup when the event occurs.
+ '''
+ }
+ {
+ name: pin_cfg_cg
+ desc: '''
+ Cover the override enable/disable of all the inputs.
+ Cover the override values of all the input values.
+ Cover the allowed value 0 and 1 of all the inputs.
+ Cross all the above coverpoints.
+ '''
+ }
+ {
+ name: debounce_timer_cg
+ desc: '''
+ Cover the debounce timer of the following registers
+ * ec_rst_ctl register.
+ * key_intr_debounce_ctl register.
+ * ulp_ac_debounce_ctl register.
+ * ulp_pwrb_debounce_ctl register.
+ * ulp_lid_debounce_ctl register.
'''
}
]