TY - GEN
T1 - Quick formal modeling of communication fabrics to enable verification
AU - Chatterjee, Satrajit
AU - Kishinevsky, Michael
AU - Ogras, Umit Y.
PY - 2010/10/27
Y1 - 2010/10/27
N2 - Although communication fabrics at the microarchitectural level are mainly composed of standard primitives such as queues and arbiters, to get an executable model one has to connect these primitives with glue logic to complete the description. In this paper we identify a richer set of microarchitectural primitives that allows us to describe complete systems by composition alone. This enables us to build models faster (since models are now simply wiring diagrams at an appropriate level of abstraction) and to avoid common modeling errors such as inadvertent loss of data due to incorrect timing assumptions. Our models are formal and they are used for model checking as well as dynamic validation and performance modeling. However, unlike other formalisms this approach leads to a precise yet intuitive graphical notation for microarchitecture that captures timing and functionality in sufficient detail to be useful for reasoning about correctness and for communicating microarchitectural ideas to RTL and circuit designers and validators.
AB - Although communication fabrics at the microarchitectural level are mainly composed of standard primitives such as queues and arbiters, to get an executable model one has to connect these primitives with glue logic to complete the description. In this paper we identify a richer set of microarchitectural primitives that allows us to describe complete systems by composition alone. This enables us to build models faster (since models are now simply wiring diagrams at an appropriate level of abstraction) and to avoid common modeling errors such as inadvertent loss of data due to incorrect timing assumptions. Our models are formal and they are used for model checking as well as dynamic validation and performance modeling. However, unlike other formalisms this approach leads to a precise yet intuitive graphical notation for microarchitecture that captures timing and functionality in sufficient detail to be useful for reasoning about correctness and for communicating microarchitectural ideas to RTL and circuit designers and validators.
UR - http://www.scopus.com/inward/record.url?scp=77958137659&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=77958137659&partnerID=8YFLogxK
U2 - 10.1109/HLDVT.2010.5496662
DO - 10.1109/HLDVT.2010.5496662
M3 - Conference contribution
SN - 9781424478057
T3 - Proceedings - IEEE International High-Level Design Validation and Test Workshop, HLDVT
SP - 42
EP - 49
BT - HLDVT'10 - IEEE International High Level Design Validation and Test Workshop, Conference Proceedings
T2 - 2010 15th IEEE International High Level Design Validation and Test Workshop, HLDVT'10
Y2 - 11 June 2010 through 12 June 2010
ER -