The SystemVerilog_3.1a LRM description:
The construct exp throughout seq is an abbreviation for:
(exp) [*0:$] intersect seq
The composite sequence, exp throughout seq, matches along a finite interval of consecutive clock ticks provided seq matches along the interval and exp evaluates to true at each clock tick of the interval. The following example is illustrated in Figure 17-11.
sequence burst_rule1;
@(posedge mclk)
$fell(burst_mode) ##0
(!burst_mode) throughout (##2 ((trdy==0)&&(irdy==0)) [*7]);
endsequence
The above should be modifiable as below:
(exp) [=1] intersect seq
which means that inside a sequence, the exp(or a signal) should at least once be true.
The construct seq1 within seq2 is an abbreviation for:
(1[*0:$] ##1 seq1 ##1 1[*0:$]) intersect seq2
The composite sequence seq1 within seq2 matches along a finite interval of consecutive clock ticks provided seq2 matches along the interval and seq1 matches along some sub-interval of consecutive clock ticks. That is, the matches of seq1 and seq2 must satisfy the following:
— The start point of the match of seq1 must be no earlier than the start point of the match of seq2.
— The end point of the match of seq1 must be no later than the end point of the match of seq2.
For example, the sequence
!trdy[*7] within (($fell irdy) ##1 !irdy[*8])
matches from clock tick 3 to clock tick 11 on the trace shown in Figure 17-12.
The construct exp throughout seq is an abbreviation for:
(exp) [*0:$] intersect seq
The composite sequence, exp throughout seq, matches along a finite interval of consecutive clock ticks provided seq matches along the interval and exp evaluates to true at each clock tick of the interval. The following example is illustrated in Figure 17-11.
sequence burst_rule1;
@(posedge mclk)
$fell(burst_mode) ##0
(!burst_mode) throughout (##2 ((trdy==0)&&(irdy==0)) [*7]);
endsequence
The above should be modifiable as below:
(exp) [=1] intersect seq
The construct seq1 within seq2 is an abbreviation for:
(1[*0:$] ##1 seq1 ##1 1[*0:$]) intersect seq2
The composite sequence seq1 within seq2 matches along a finite interval of consecutive clock ticks provided seq2 matches along the interval and seq1 matches along some sub-interval of consecutive clock ticks. That is, the matches of seq1 and seq2 must satisfy the following:
— The start point of the match of seq1 must be no earlier than the start point of the match of seq2.
— The end point of the match of seq1 must be no later than the end point of the match of seq2.
For example, the sequence
!trdy[*7] within (($fell irdy) ##1 !irdy[*8])
matches from clock tick 3 to clock tick 11 on the trace shown in Figure 17-12.
As per my analysis:
The within is for sequence within the sequence. The throughout is for an expression within a sequence. The sequence being TRUE for [*0:$] time can be controlled by consecutive repetition (*), go to repetition (->) or non-consecutive repetition (=). For example, a signal has to be true at least for one clock cycle within a sequence(period of interval), we can use the throughout with go to repetition (->) operator.

