Specman - инициализировать значение параметра внутренней последовательности (выполнить из другой последовательности) непосредственно из теста - PullRequest
0 голосов
/ 05 июля 2018

У меня есть последовательность (например, SANITY_TEST seq), которая выполняет другую последовательность (например, BOOT seq). Последовательность BOOT содержит следующий параметр:

index_v : uint(bits:4) ;

У меня есть следующий тест:

<'
extend MAIN ocp_master_sequence_q {

    body()@driver.clock is only {
      do SANITY_TEST seq ;
   };
};

Есть ли способ выполнить SANITY_TEST seq из теста и запустить параметр index_v BOOT_seq непосредственно из теста?

1 Ответ

0 голосов
/ 20 ноября 2018

Есть два основных подхода -

один для SANITY_TEST, чтобы иметь тот же параметр, так что значение может быть распространено /

extend  SANITY_TEST seq {
    do BOOT seq keeping {
       .index_v == me.index_v;
    };
};

 //// 
do SANITY_TEST seq keeping {
    .index_v == 4;
}; 

Если вы хотите, чтобы всякий раз, когда BOOT seq выполнялся SANITY_TEST, index_v имел какое-то значение, вы можете добавить ограничение к BOOT seq.

extend BOOT seq {
    keep me.in_sequence(SANITY_TEST seq) => me.index_v == 7;
};
...