It uses PROC LATTICE in SAS and PBIB.test() , which is in the agricolae package, in R. The agricolae package should be solid with this kind of analysis.
I also have a book which has the SAS code:
proc mixed
model y = treat
random rep block(rep)
Which I think is the same in R as
lmer(Y ~ Treat + (1|Rep) + (1|Rep/Block)
But I'm not entirely sure of this mixed effects model specification.
It might be worth trying the different methods and compare the results.