Hello Rajaram
It is important to understand that the process of encapsulation of a particular packet, and the ARP request that is sent out are two different operations. A device will encapsulate data, and place a source and destination IP address in the IP header. As it encapsulates this into a frame, it will place the source MAC address (which it knows because it is the address of itself) and the destination MAC address. The destination is obtained either from the ARP table or using a new ARP request.
The encapsulation process is paused, and the device sends out an ARP request, as you correctly stated as a broadcast. This is done on the data-link layer. This means that the ARP request will have a source MAC (the device’s own MAC) and a broadcast destination MAC. This frame is then placed on the wire (the physical layer) just like any other frame that is ready to be sent. Receiving devices will respond, and once the MAC address has been obtained, the encapsulation process of the original packet is resumed, with the appropriate destination MAC, and the frame is then placed on the wire.
I hope this has been helpful!
Laz