Discrete-Event Modelling of Computer Architecture