MICRO12 lei's work.
the runnable version bug is cleared 
initial(): calculated the data and the demanded token.
update(): release the allocated token at the end of each iteration 
powerallowable(): decide the issuablility of write request.
1.When the data is zero, no energy and latency. 
2.When the write is pending due to power, not initial again.