what is the difference between tplace and tdocu layers in eagle pcb?
In the guts of Eagle, there is really no difference.  The difference is by convention what each layer means and how it is used.

The intent of tPlace (and bPlace) is stuff that is directly drawn in the silkscreen on the final board.  Actually which layers contribute to the ultimate silkscreen graphics is a function of how you set up the cam processor job to generate the silkscreen gerber file.  Usually tName, tValue, and tPlace will contribute to the top silkscreen output, but you're not forced to use that convention.

The intent of tDocu is what the name says: documentation.  This is generally not written to the silkcreen, but may appear in board drawings and the like.

Again, it's your choice how to use these layers, but using them as intended makes things easier.  You could write tDocu to the silkscreen Gerber file, and use tPlace only for board drawings, but that would just invite confusion and errors.

tPlace usually comes from two places.  It is used to show the outline and other fixed geometric characteristics of parts in the package definition of parts.  It can also come from explicit things drawn in the board editor.  For example, you might write the product name, date, etc, in a blank area of the board.