Portable stimulus pool and lock semantics

I did not see any forum specific to PSS, so I am asking this question in the uvm forum.
I have a few questions on the recently uploaded videos on the new standard.

Referring to the video “Walking through an example”:

  1. in slide 3: pool [1] chan_r chan_p;
    in slide 7: pool data_str stream_p;
    In both cases there is only one pool. So what extra information
    does the “[1]” indicate in slide-4?
  2. in slide 3, action read_in_a: lock uart_r u_busy;
    in slide 3, action write_out_a: lock uart_r u_busy;
    What meaning does the name of the lock indicate?
    Does the fact that both the locks have the same name indicate
    some kind of synchronization?
  3. in slide 5: rand int[4…1024] size;
    The enumeration indicates array indices in that range, or valid values
    of ‘size’ in that range?
  1. Slide 3 shows a pool of resources, which must have a size associated with them to indicate how many individual resources of the specified type are actually available. In this particular case, there’s only 1, which is the default.
    Slide 7 shows a pool of data flow objects, in this case, of the data_str stream type. Data flow object pools do not have an explicit size, since the scenario itself defines how many objects of the given type are required. In effect, each action that produces an output of the desired flow object type creates a new instance in the pool that can be bound (explicitly or implicitly) to a corresponding action input. Note that for state flow objects, there is always only one instance of the object in the pool.
    Session 4 of this course is coming soon and will explain these details more thoroughly.

  2. Naming the locked resource allows the action to place constraints on the resource. The names are local to the action, so read_in_a::u_busy and write_out_a::u_busy are distinct.

  3. int[4…1024] indicates the valid values for size.

Hope this helps. Thanks for the feedback.
-Tom

In reply to tfitz:

Thanks very much Tom. The videos are very helpful in understanding the new concepts.

I have another question on the standard, I will post it in a separate thread.

Regards… Raj