Does every brand name drug have a generic version?

No. When new drugs are introduced by a company, they have a patent. The patent protects the company by not allowing anyone else to make and sell the drug. Most drug patents are protected for 17 years. When the patent expires, other drug companies can start selling the generic version of the drug. But first, they must test the drug and the FDA must approve it.