«Работать добросовестно — значит: работать, повышая свою квалификацию, проявляя инициативу в совершенствовании продукции, технологий, организации работ, оказывая не предусмотренную должностными инструкциями помощь другим сотрудникам (включая и руководителей) в общей им всем работе.

Вопросы по лекции 2 (Верификация цифровых схем) — вопросы

Перейти к: навигация, поиск
12345678910
Данный тест позволит вам проверить базовые знания по Рандомизации и функциональном покрытии языка SystemVerilog

Вариант 2237539704.


Ваше имя: 


Вопрос 1

Какие операторы циклического перебора доступны при написании ограничений?

  1.  Оператор repeat
  2.  Оператор case
  3.  нет правильных ответов
  4.  Оператор for
  5.  Оператор forever
  6.  Оператор foreach

Вопрос 2

Можно ли управлять вероятностью появления значений рандомизируемой переменной?

  1.  Нет, только встроенный алгоритм генерации
  2.  Да, с помощью объявления переменной как rand
  3.  Да, с помощью задания переменной симулятора SEED
  4.  Да, с помощью оператора dist
  5.  Нет правильных ответов

Вопрос 3

Как выключить рандомизацию для всего класса?

  1.  Вызвать команду симулятора +unset_rand
  2.  Нет правильных ответов
  3.  Вызвать метод rand_mode(0) переменной объявленной как rand
  4.  Вызвать метод rand_mode(0) объекта класса, содержащего рандомизируемые переменные
  5.  Вызвать метод rand_mode(1) переменной объявленной как rand

Вопрос 4

7. С помощью каких операторов можно задать условие при описании ограничений (constraint) для рандомизируемой переменной?

  1.  Операторы if ... else,  >
  2.  Оператор if ... else
  3.  Оператор case
  4.  нет правильных ответов
  5.  Оператор dist
  6.  Оператор  >
  7.  Оператор foreach
  8.  Оператор iff

Вопрос 5

Допускается ли использование групповых символов при описании ограничений?

  1.  В SystemVerilog нет такой возможности
  2.  нет правильных ответов
  3.  Только для типа int
  4.  Допускается

Вопрос 6

Возможно ли в SystemVerilog отключать режим рандомизации для отдельных переменных?

  1.  нет правильных ответов
  2.  нет
  3.  да
  4.  зависит от того, где объявлен класс, содержащий рандомизируемые переменные
  5.  в зависимости от симулятора

Вопрос 7

9. Сколько и какие корзины задает следующее выражение?

coverpoint MyCP {
  bins c[4] = {[14:21]};
} 
  1.  выражение задано неверно
  2.  1 корзину: [14:21]
  3.  4 корзины: [14, 15], [16, 17], [18, 19], [20, 21]
  4.  нет правильных ответов
  5.  3 корзины: [14, 15, 16], [17, 18,19], [20, 21]

Вопрос 8

10. Сколько и какие корзины задает следующее выражение?

coverpoint MyCP {
  bins c[2] = { 5'b11??0 };
}
  1.  4 корзины: 11000, 11010, 11100, 11110
  2.  выражение задано неверно
  3.  нет правильных ответов
  4.  2 корзины: [11000, 11010], [11100, 11110]
  5.  1 корзину: [11xx0]
  6.  2 корзины: 11000, 11110

Вопрос 9

Как задать порядок решения случайных переменных с ограничениями?

  1.  Задать команду симулятора +set_lists_priority=”obj.var1, obj.var2, obj.var5”
  2.  Использовать ограничение вида solve … before, задающее порядок решения ограничений
  3.  Перечислить переменные в нужном порядке как входные при вызове метода randomize()
  4.  Все из перечисленных вариантов
  5.  Использовать ограничение вида solve … before, задающее порядок решения переменных

Вопрос 10

В каких случаях допускается использование функций в ограничениях?

  1.  Допускается, если функция возвращает значение типа real
  2.  Все ответы правильные
  3.  Допускается или нет зависит от типа возвращаемого значения функции
  4.  Допускается, если функция возвращает значение типа int