Video and Image Processing Suite User Guide

ID 683416
Date 4/04/2022
Public
Document Table of Contents

A.3.1. c_av_st_video_control

The declaration for the c_av_st_video_control class:
class c_av_st_video_control #(parameter BITS_PER_CHANNEL = 8, 
CHANNELS_PER_PIXEL = 3) extends c_av_st_video_item;
Table 91.  Method Calls for c_av_st_video_control Class
Method Call Description
function new();  
function bit compare (c_av_st_video_control r); Compares this instance to object r. Returns 1 if identical, 0 if otherwise.
function void copy(c_av_st_video_control #(BITS_PER_CHANNEL, CHANNELS_PER_PIXEL) c); Copies the control packet object argument into the object making the method call.
function bit [15:0] get_width ();
function void set_min_width(int width); This is the minimum width for control packets produced using calls to the randomize() method.
function void set_max_width(int width); This is the minimum width for control packets produced using calls to the randomize() method.
function void set_min_height(int height); This is the minimum width for control packets produced using calls to the randomize() method.
function void set_max_height(int height) This is the minimum width for control packets produced using calls to the randomize() method.
function bit [15:0] get_height ();
function bit [3:0] get_interlacing ();
function t_packet_control get_append_garbage ();
function int get_garbage_probability ();
function void set_width (bit [15:0] w);
function void set_height (bit [15:0] h);
function void set_interlacing (bit [3:0] i);
function void set_append_garbage (t_packet_control i); Refer to append_garbage member.
function void set_garbage_probability (int i);
function string info(); Returns a formatted string containing the width, height and interlacing members.
Table 92.  Members of c_av_st_video_control Class
Member Description
rand bit[15:0] width;
rand bit[15:0] height;
rand bit[3:0] interlace;
int min_width = 30;
int max_width = 200;
int min_height = 30;
int max_height = 200;
int length;
rand t_packet_control append_garbage = off; The append_garbage control is of type t_packet_control, defined as: typedef enum{on,off,random} t_packet_control;
rand int garbage_probability = 50; The source BFM uses garbage_probability and append_garbage to determine whether or not to append garbage beats to the end of the control packets.
Garbage beats are generated with a probability of Garbage_probability%.
  • When a stream of garbage is being generated, the probability that the stream terminates is fixed in the source BFM at 10%.
  • When garbage is produced, this typically produces around 1 to 30 beats of garbage per control packet.