How to create a Block Diagram
The best way to draw a block diagram is using parts and connectors of the Composite Structure UML diagrams.
A block diagram is helpful mainly in the preliminary stages of software development.
A block diagram is similar to a UML package diagram in that it only shows very high level components of the design and how they interact.
What should be on the top? There isn't really a "top" in a block diagram. You may be confusing this with a layered architecture diagram. In a layered architecture diagram, top-level layers are generally the closest to the user.
Should I arrange the block diagram in terms of Inheritance? Not really, the block diagram is supposed to show only the high level interactions of the system. A UML class diagram is where you show the inheritance and interface behaviour.
Why use a block diagram? Primarily because it is easy to partition the system into components for component-based software engineering and because it makes it easy to discuss with clients/managers.
The block diagram generally shows the overall architecture.
This is an example of a layered architecture diagram: (from http://www.acaltechnology.com/index.php?page=news&id=1577)
This is an example of a block diagram: (from https://web.archive.org/web/20121106145142/http://www.simventions.com/whitepapers/uml/3000_borcon_uml.html)