Все вопросы: [specman]

17 вопросов

похожие теги:
1
голосов
2ответов
1407 просмотров

How can I wait for one event out of a list of events in specman?

I have a struct in specman: struct foo_s { event foo_ev; // some code that will emit foo_ev sometimes }; And a list: var foo_l: list of foo_s; // later code will manage the list And now I want to sync on any of the foo_ev events in the list: first of { sync @foo_l[0].foo_ev; ...

2
голосов
1ответов
1984 просмотров

What's the difference between to_string() and as_a(string) in specman?

In Specman I can convert a variable to a string using either: x.to_string(); or x.as_a(string); Is there any difference between the two? If not, why does Specman provide both?

0
голосов
1ответов
118 просмотров

How can I call a routine automatically when the run ends in specman?

Is there any way to specify that a function should be called when a test ends in Specman? I'm looking for something similar to C's atexit().

1
голосов
1ответов
321 просмотров

reduce list in Specman like in Python

Is there a reduce() list method in Specman that I can use for general reduction functions? I'm thinking of something like: var x: list of bit = some_function_that_returns_list_of_bit; var bitmap: uint = x.reduce(foo()); where reduce() works like in Python: foo(last: uint, val: bit) is: uint ...

1
голосов
1ответов
251 просмотров

использование "apply ()" с методами, возвращающими void в specman

В Specman есть метод apply() для выполнения одного и того же действия со всеми элементами списка: var a: list of int; a = somefunction.that.returns.list.of.int(); var b:= a.apply(it * 2); Где apply() делает то же самое, что: for each in a { b.add(it.*2); }; Теперь, если я хочу ...

0
голосов
1ответов
1706 просмотров

как я могу создать ссылку на переменную в specman?

У меня в specman есть следующий код: var x := some.very.long.path.to.a.variable.in.another.struct; while (x == some_value) { //do something that uses x; //wait for something //get a new value for x x = some.very.long.path.to.a.variable.in.another.struct; }; Теперь напрас...

0
голосов
2ответов
1028 просмотров

Как я могу присоединиться к списку строк в specman?

У меня есть список, который я хочу распечатать: foo: list of string; Я хочу создать строку bar, которая представляет собой конкатенацию элементов foo. В Perl я бы сделал: $bar = join " ", @foo; Единственный способ сделать это в specman: var bar: string = ""; for each in foo { ...

1
голосов
1ответов
641 просмотров

разбиение строки на список в specman

Предположим, у меня есть строка: str = “ab,cd,ef” и я хочу разбить его на список lst = [“ab”,”cd”,ef”] Как мне сделать это лучше всего, если я не знаю заранее, сколько элементов находится в строке? В основном я ищу специалиста, эквивалентного Perl: $str = "ab,cd,ef"; @lst ...

1
голосов
2ответов
577 просмотров

у specman есть статические переменные?

У меня в specman есть следующий код, который я унаследовал: some_method() is { var a: bool; if (!a) { a = some_other_method(); }; }; Насколько я понимаю, каждый раз, когда вызывается some_method(), a создается заново, и нет смысла проверять значение a до его назначени...

1
голосов
2ответов
795 просмотров

Возврат массива в Specman

Как мне вернуть массив из вызова метода в Specman ? Например, method a : list of uint is { var data: list of uint; ..... result = data; }; extend sys { var data_sys: list of uint; run() is also { data_sys = a(); }; }; Моя распечатка показывает, что некоторые элементы отл...

2
голосов
1ответов
659 просмотров

Файл синтаксиса VIM для specman

Где я могу найти обновленный файл синтаксиса для specman? Их много в Интернете, но я хочу один с рекомендациями.

2
голосов
2ответов
1355 просмотров

как я могу подсчитать количество установленных битов в uint в specman?

Я хочу подсчитать количество установленных битов в uint в Specman: var x: uint; gen x; var x_set_bits: uint; x_set_bits = ?; Как лучше всего это сделать?

1
голосов
1ответов
1798 просмотров

Как в Specman определить, есть ли перед ссылкой на модуль модификатор do-not-generate?

В Specman, как я могу определить, имеет ли ссылка на модуль модификатор do-not-generate '!' в определении ссылки? например unit foo_u { }; extend sys { foo : foo_u is instance; foo_ptr_generated : foo_u; keep foo_ptr_generated == foo; !foo_ptr_notgenerated : foo_u; connect...

1
голосов
1ответов
324 просмотров

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

У меня есть переменная, которую я хочу создать несколько раз в одной и той же функции, каждый раз с одним и тем же набором ограничений. Могу ли я установить ограничения один раз, а gen - много раз? То есть вместо этого: var a:uint; gen a keeping {it in [100..120];}; // some code that uses a ....

1
голосов
2ответов
213 просмотров

Как изменить имя файла журнала * .elog по умолчанию для интерпретируемого сеанса Specman?

Я хочу иметь возможность указать основу имени файла для файла журнала в тесте Specman. Мне нужно жестко запрограммировать главное имя файла * .elog, чтобы не было расхождений между тестами и путать сценарии постобработки. Могу ли я передать в Specman ограничение или командную строку?

4
голосов
3ответов
588 просмотров

Макрос specman для вычитания набора с объектами int_range_list

Я работаю с несколькими наборами, чтобы генерировать ограниченный случайный трафик, но я хочу иметь возможность вызывать макрос Specman, который вычисляет дополнение набора с синтаксисом вроде: COMPLEMENT begin domain=[0..10,24..30], complementing_set=[2..3,27..30] end и пусть он ...

2
голосов
2ответов
1657 просмотров

Как объявить список фиксированной длины в specman?

В E (specman) я хочу объявить переменные, которые являются списками, и я хочу исправить их длину. Это легко сделать для члена структуры: thread[2] : list of thread_t; в то время как для "обычной" переменной в функции вышеуказанное не работает, и мне нужно сделать что-то вроде: var w...