Beispiel #1
0
 def __init__(self):
     super().__init__()
     self.with_sample(dict(input=my_c()))
     self.cp1 = vsc.coverpoint(
         self.input.a, bins=dict(a=vsc.bin_array([], [1, 15])))
     self.cp2 = vsc.coverpoint(
         self.input.b, bins=dict(b=vsc.bin_array([], [1, 15])))
Beispiel #2
0
            def __init__(self):
                self.with_sample(dict(a=vsc.uint32_t(), b=vsc.uint32_t()))

                self.a_cp = vsc.coverpoint(
                    self.a, bins=dict(a1=vsc.bin_array([], 1, 2, 4, 8)))
                self.b_cp = vsc.coverpoint(
                    self.b, bins=dict(b1=vsc.bin_array([], 1, 2, 4, 8)))
Beispiel #3
0
            def __init__(self):
                self.with_sample(dict(a=vsc.uint8_t(), b=vsc.uint8_t()))

                self.a_cp = vsc.coverpoint(
                    self.a, bins=dict(a_bins=vsc.bin_array([], [1, 16])))
                self.b_cp = vsc.coverpoint(
                    self.b, bins=dict(b_bins=vsc.bin_array([], [1, 16])))
Beispiel #4
0
 def __init__(self, sample_c):
     self.with_sample(dict(a=vsc.uint8_t(), b=vsc.uint8_t()))
     self.cp1 = vsc.coverpoint(self.a,
                               iff=sample_c,
                               bins={
                                   "a": vsc.bin_array([], 1, 2, 4),
                                   "b": vsc.bin_array([4], [8, 16])
                               })
Beispiel #5
0
 def __init__(self):
     self.with_sample(
         dict(a=vsc.uint8_t(), b=vsc.uint8_t(), c=vsc.bool_t()))
     self.cp1 = vsc.coverpoint(
         self.a, bins={"a": vsc.bin_array([], 1, 2, 4, 8)})
     self.cp2 = vsc.coverpoint(
         self.b, bins={"b": vsc.bin_array([], 1, 2, 4, 8)})
     self.cr = vsc.cross([self.cp1, self.cp2], iff=self.c)
Beispiel #6
0
            def __init__(self, a, b):
                super().__init__()

                self.cp1 = vsc.coverpoint(
                    a, bins={"a": vsc.bin_array([], [1, 10])})
                self.cp2 = vsc.coverpoint(
                    b, bins={"b": vsc.bin_array([], [1, 10])})
                self.cp1X2 = vsc.cross([self.cp1, self.cp2])
Beispiel #7
0
 def __init__(self, a, b):
     self.a_cp = vsc.coverpoint(
         a,
         options=dict(weight=8),
         bins=dict(a_arr=vsc.bin_array([], [1, 8])))
     self.b_cp = vsc.coverpoint(
         b,
         options=dict(weight=4),
         bins=dict(b_arr=vsc.bin_array([], [1, 4])))
Beispiel #8
0
            def __init__(self):
                self.with_sample(dict(a=vsc.uint8_t(), b=vsc.uint8_t()))

                self.options.at_least = 2

                self.cp1 = vsc.coverpoint(self.a,
                                          bins={
                                              "a": vsc.bin_array([], 1, 2, 4,
                                                                 8),
                                          })
                self.cp2 = vsc.coverpoint(
                    self.b, bins={"b": vsc.bin_array([], 1, 2, 4, 8)})
Beispiel #9
0
            def __init__(self):
                self.with_sample(dict(a=vsc.uint8_t(), b=vsc.uint8_t()))

                self.cp1 = vsc.coverpoint(self.a,
                                          bins={
                                              "a": vsc.bin_array([], 1, 2, 4,
                                                                 8),
                                          },
                                          options=dict(weight=1))
                self.cp2 = vsc.coverpoint(
                    self.b,
                    bins={"b": vsc.bin_array([], 1, 2, 4, 8)},
                    options=dict(weight=0))
Beispiel #10
0
            def __init__(self): 
                super().__init__()
                self.a=None
                self.b=None
                self.cp1 = vsc.coverpoint(lambda:self.a,
                    bins=dict(
                        a = vsc.bin_array([], [0,15])
                    ))

                self.cp2 = vsc.coverpoint(lambda:self.b, bins=dict(
                    b = vsc.bin_array([], [0,15])
                    ))
                self.cross = vsc.cross([self.cp1, self.cp2])
Beispiel #11
0
 def __init__(self):
     self.with_sample(dict(a=vsc.uint8_t()))
     self.cp_val = vsc.coverpoint(
         self.a,
         bins=dict(rng_1=vsc.bin_array([4], [1, 3], [4, 6], [7, 9],
                                       [10, 12])),
         ignore_bins=dict(invalid_value=vsc.bin(4)))
Beispiel #12
0
            def __init__(self):
                self.with_sample(item=BranchInstr())

                self.type = vsc.coverpoint(self.item.type)

                self.disp_cp = vsc.coverpoint(
                    self.item.disp,
                    bins={"small_pos": vsc.bin_array([4], [0, 4096])})
Beispiel #13
0
            def __init__(self):
                # Define the parameters accepted by the sample function
                self.with_sample({
                    'a' : vsc.bit_t(8),
                    'b' : vsc.bit_t(8)
                })

                self.a_cp = vsc.coverpoint( self.a, bins={
                    # Create 4 bins across the space 0..255
                    'a_bins': vsc.bin_array([4], [0,255])
                })

                self.b_cp = vsc.coverpoint(self.b, bins={
                    # Create one bin for each value (1,2,4,8)
                    'b_bins': vsc.bin_array([], 1, 2, 4, 8)
                })
       
                self.ab_cross = vsc.cross([self.a_cp, self.b_cp])          
Beispiel #14
0
            def __init__(self, a,
                         b):  # Need to use lambda for non-reference values
                super().__init__()
                self.cp1 = vsc.coverpoint(
                    a,
                    options=dict(auto_bin_max=64),
                    bins=dict(a=vsc.bin_array([], [1, 15])))

                self.cp2 = vsc.coverpoint(b, cp_t=vsc.enum_t(my_e))
Beispiel #15
0
 def __init__(self, a, b):
     self.a_cp = vsc.coverpoint(
         a, bins=dict(a_arr=vsc.bin_array([], [1, 8])))
     self.b_cp = vsc.coverpoint(
         b, bins=dict(b_arr=vsc.bin_array([], [1, 4])))
Beispiel #16
0
            def __init__(self):
                self.with_sample(dict(it=my_item_c()))

                self.cp_my = vsc.coverpoint(
                    lambda: ((self.it.a >> 2) & 0x3F),
                    bins={"a": vsc.bin_array([], [0, 3])})
Beispiel #17
0
            def __init__(self):
                self.with_sample(dict(it=my_item_c()))

                self.cp_my = vsc.coverpoint(
                    self.it.a[7:2], bins={"a": vsc.bin_array([], [0, 3])})
Beispiel #18
0
            def __init__(self):
                self.with_sample(a=vsc.bit_t(32))

                self.cp_my = vsc.coverpoint(
                    self.a[7:2], bins={"a": vsc.bin_array([], [0, 3])})
Beispiel #19
0
            def __init__(self):

                self.with_sample(dict(a=vsc.bit_t(8)))

                self.a_cp = vsc.coverpoint(
                    self.a, bins=dict(a=vsc.bin_array([], [1, 16])))
Beispiel #20
0
 def __init__(self):
     self.with_sample(dict(a=vsc.uint8_t()))
     self.a_cp = vsc.coverpoint(
         self.a, bins=dict(a1=vsc.bin_array([4], (0, 16))))