Assertion using Generate Block

How about

for(genvar TX_DATA=1; TX_DATA<17; TX_DATA<<=1) // or TX_DATA = TX_DATA<<1;
 begin : assert_array_i
    cp_x8_wid8_tx_pa0: cover property (ev_x8_wid8_tx_pa0(TX_DATA)); 
 end