You could call each block as a procedure (not as a 'file'...a file has no real meaning in a design language, it is simply a holder for the actual design elements such as an entity, process, procedure, declarations, etc.). However, since each block has some state to it (since you said that block A takes 10 clocks, block B takes 6), then it would likely be a mistake to try designing the blocks as a procedure, they should be separate standalone design elements. Then there will be another entity that instantiates the two blocks and connects the signals together appropriately.
Entities (in VHDL) and modules (in Verilog) are the natural design hierarchy enclosure, use it, don't fight it and you'll be ahead of the game.
Kevin Jennings