try
и else
являются конструкциями обработки исключений .Если в блоке try
создается ошибка, тогда вместо остальной части блока try
выполняется блок else
, и ошибка подавляется с помощью no printout .
В этом случае, если lob
имеет больше битов, чем pkt
имеет "физические поля", то при распаковке возникнет ошибка.Если это произойдет, среда выполнения Specman перейдет к блоку else
и распечатает структуру данных lob
вместо печати исходной ошибки unpack
.Посмотрите в документах, что такое «физические поля» и как они используются.Это странная конструкция, которая специфически взаимодействует с поведением конструкций Specman %
, pack
и unpack
.Физические поля pkt
будут объявлены с модификатором %
, предшествующим "физическим полям" pkt
.