Just to add, the more centralized and/or socially stratified a society is, the more likely it is to have elite troops equipped with heavy armor and weapons; mainly, because good weapons and armor are ludicrously expensive, and the only way one can afford it is to have ten peasants for every fighting man and tax them until they squeal. By the middle ages, the only nations, at least in Europe, that fielded heavy cavalry in somewhat large numbers were those that were at least somewhat influenced by feudalism and manorialism. Being, in descending order, France, England, Germany, Spain, and, I suppose, Scandinavia by the later period.
These same nations had almost completely given up the general levy by the 12th century except in limited defensive instances; it was better to keep the peasants in the fields, and wage war using one's personal retinue, vassals, and mercenaries. By 1300, feudalism was pretty much dead, at least in the military sense; noblemen and captains raised retinues of volunteers, which were paid from the royal treasury.
There's a reason why clan and tribal societies (Wales, Scotland, Ireland, the Baltic Tribes) had such a hard time fighting off their more centralized neighbors. Five hundred half-naked tribesmen with spears and bravery vs. 150 iron-disciplined knights and sergeants is a losing proposition for the tribesmen.