{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:24:09Z","timestamp":1750307049974,"version":"3.41.0"},"reference-count":79,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2012,6,1]],"date-time":"2012-06-01T00:00:00Z","timestamp":1338508800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100001602","name":"Science Foundation Ireland","doi-asserted-by":"publisher","award":["03\/CE2\/I303-1"],"award-info":[{"award-number":["03\/CE2\/I303-1"]}],"id":[{"id":"10.13039\/501100001602","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Lero\u2014The Irish Software Engineering Research Centre"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Des. Autom. Electron. Syst."],"published-print":{"date-parts":[[2012,6]]},"abstract":"<jats:p>Developing testbenches for dynamic functional verification of hardware designs is a software-intensive process that lies on the critical path of electronic system design. The increasing capabilities of electronic components is contributing to the construction of complex verification environments that are increasingly difficult to understand, maintain, extend, and reuse across projects. Model-driven software engineering addresses issues of complexity, productivity, and code quality through the use of high-level system models and subsequent automatic transformations. Reasoning about verification testbench decomposition becomes simpler at higher levels of abstraction. In particular, the aspect-oriented paradigm, when applied at the model level, can minimize the overlap in functionality between modules, improving maintainability and reusability. This article presents an aspect-oriented model-driven engineering process and toolset for the development of hardware verification testbenches. We illustrate how this process and toolset supports modularized design and automatic transformation to verification environment-specific models and source code through an industry case study.<\/jats:p>","DOI":"10.1145\/2209291.2209304","type":"journal-article","created":{"date-parts":[[2012,8,1]],"date-time":"2012-08-01T17:35:16Z","timestamp":1343842516000},"page":"1-25","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Model-driven automation for simulation-based functional verification"],"prefix":"10.1145","volume":"17","author":[{"given":"\u00c9amonn","family":"Linehan","sequence":"first","affiliation":[{"name":"Trinity College Dublin, Ireland"}]},{"given":"Eamonn","family":"O'Toole","sequence":"additional","affiliation":[{"name":"Trinity College Dublin, Ireland"}]},{"given":"Siobh\u00e1n","family":"Clarke","sequence":"additional","affiliation":[{"name":"Trinity College Dublin, Ireland"}]}],"member":"320","published-online":{"date-parts":[[2012,7,5]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1404891.1404893"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10270-006-0027-7"},{"key":"e_1_2_1_3_1","unstructured":"Allan G. Robinson D. and Sprott J. 2004. Learn to do verification with AOP&quest; We've just learned OOP! In Proceedings of the Europe Synopsys User Group Europe (SNUG).  Allan G. Robinson D. and Sprott J. 2004. Learn to do verification with AOP&quest; We've just learned OOP! In Proceedings of the Europe Synopsys User Group Europe (SNUG)."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11219-007-9022-7"},{"key":"e_1_2_1_5_1","unstructured":"Ben Atitallah R. Boulet P. Cuccuru A. Dekeyser J.-L. Honor\u00e9 A. Labbani O. Le Beux S. Marquet P. Piel E. Taillard J. and Yu H. 2007. Gaspard2 UML profile documentation. Tech. rep. RT-0342 INRIA.  Ben Atitallah R. Boulet P. Cuccuru A. Dekeyser J.-L. Honor\u00e9 A. Labbani O. Le Beux S. Marquet P. Piel E. Taillard J. and Yu H. 2007. Gaspard2 UML profile documentation. Tech. rep. RT-0342 INRIA."},{"key":"e_1_2_1_6_1","unstructured":"Bening L. and Foster H. 2002. Principals of Verifiable TRL Design 2nd ed. Kluwer Academic.   Bening L. and Foster H. 2002. Principals of Verifiable TRL Design 2nd ed. Kluwer Academic."},{"volume-title":"Writing Testbenches - Functional Verification of HDL Models 2 Ed","author":"Bergeron J.","key":"e_1_2_1_7_1"},{"key":"e_1_2_1_8_1","unstructured":"Bergeron J. Cerny E. Hunter A. and Nightingale A. 2005. Verification Methodology Manual for SystemVerilog 1 Ed. Springer.   Bergeron J. Cerny E. Hunter A. and Nightingale A. 2005. Verification Methodology Manual for SystemVerilog 1 Ed. Springer."},{"volume-title":"Proceedings of the 3rd Workshop on Model-Driven Tool &amp; Process Integration (co-located with ECMFA'10)","author":"B\u00e9zivin J.","key":"e_1_2_1_9_1"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/966137.966138"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/EUROMICRO.2007.18"},{"key":"e_1_2_1_12_1","unstructured":"Cadence Design Systems Inc. 2010. Eda360: The way forward for electronic design. White paper EDA360 San Jose CA. http:\/\/www.cadence.com\/eda360.  Cadence Design Systems Inc. 2010. Eda360: The way forward for electronic design. White paper EDA360 San Jose CA. http:\/\/www.cadence.com\/eda360."},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","unstructured":"Carton A. Driver C. Jackson A. and Clarke S. 2009. Model-driven theme\/UML. Trans. Aspect-Orient. Softw. Devel. 238--266.  Carton A. Driver C. Jackson A. and Clarke S. 2009. Model-driven theme\/UML. Trans. Aspect-Orient. Softw. Devel. 238--266.","DOI":"10.1007\/978-3-642-03764-1_7"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.295895"},{"key":"e_1_2_1_15_1","unstructured":"Clarke S. and Baniassad E. 2005. Aspect-Oriented Analysis and Design: The Theme Approach 1st Ed. Object Technology Series. Addison-Wesley.   Clarke S. and Baniassad E. 2005. Aspect-Oriented Analysis and Design: The Theme Approach 1st Ed. Object Technology Series. Addison-Wesley."},{"volume-title":"Proceedings of Information Systems: New Generations Conference (ISNG). 88--93","author":"Coyle F. P.","key":"e_1_2_1_16_1"},{"key":"e_1_2_1_17_1","unstructured":"Dempster D. and Stuart M. 2001. Verification Methodology Manual - Techniques for Verifying HDL Designs 2nd Ed. Teamwork International and TransEDA Limited.  Dempster D. and Stuart M. 2001. Verification Methodology Manual - Techniques for Verifying HDL Designs 2nd Ed. Teamwork International and TransEDA Limited."},{"volume-title":"Proceedings of the Workshop on Aspect-Oriented Modeling with UML (AOSD-2002)","author":"Diaz-Herrera J. L.","key":"e_1_2_1_18_1"},{"key":"e_1_2_1_19_1","unstructured":"Douglass B. P. 2008. UML for C. White paper Telelogic.  Douglass B. P. 2008. UML for C. White paper Telelogic."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1880050.1880057"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1404891.1404896"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1181775.1181794"},{"key":"e_1_2_1_23_1","unstructured":"Foster H. 2010. Redefining verification performance. http:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2010\/08\/08\/redefining-verification-performance-part-2\/.  Foster H. 2010. Redefining verification performance. http:\/\/blogs.mentor.com\/verificationhorizons\/blog\/2010\/08\/08\/redefining-verification-performance-part-2\/."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1509239.1509267"},{"volume-title":"Eds","year":"2005","author":"G\u00e9rard S.","key":"e_1_2_1_25_1"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629911.1630032"},{"key":"e_1_2_1_27_1","doi-asserted-by":"crossref","unstructured":"Gomes L. Fernandes J. M. Gomes L. and Fernandes J. M. 2009. Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation. Information Science Reference - Imprint of IGI Publishing Hershey PA.   Gomes L. Fernandes J. M. Gomes L. and Fernandes J. M. 2009. Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation. Information Science Reference - Imprint of IGI Publishing Hershey PA.","DOI":"10.4018\/978-1-60566-750-8"},{"volume-title":"Proceedings of the Object-Oriented Programming Conference (ECOOP'07)","author":"Greenwood P.","key":"e_1_2_1_28_1"},{"volume-title":"Proceedings of the 47th Annual Design Automation Conference.","year":"2010","author":"Grose D.","key":"e_1_2_1_29_1"},{"volume-title":"Writing efficient testbenches. Tech. rep. XAPP199","author":"Hamid M.","key":"e_1_2_1_30_1"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1368088.1368102"},{"volume-title":"Proceedings of the International Conference on Technology of Object-Oriented Languages, 41","author":"Hollander Y.","key":"e_1_2_1_32_1"},{"key":"e_1_2_1_33_1","first-page":"1647","article-title":"IEEE std 1647-2008, IEEE standard for the functional verification language e","author":"IEEE Computer Society","year":"2008","journal-title":"Standard IEEE Std"},{"key":"e_1_2_1_34_1","unstructured":"Iman S. and Joshi S. 2004. The e Hardware Verification Language. Kluwer Academic Norwell MA.  Iman S. and Joshi S. 2004. The e Hardware Verification Language. Kluwer Academic Norwell MA."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2007.08.002"},{"volume-title":"J.","year":"1997","author":"Kiczales G.","key":"e_1_2_1_36_1"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-02674-4_20"},{"key":"e_1_2_1_38_1","unstructured":"Krishna G. and Maddipati N. 2010. TestBench.in - verification concepts. http:\/\/www.testbench.in\/.  Krishna G. and Maddipati N. 2010. TestBench.in - verification concepts. http:\/\/www.testbench.in\/."},{"volume-title":"Proceedings of the ECSI Forum on Design Languages.","author":"Li L.","key":"e_1_2_1_39_1"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1016\/0164-1212(93)90077-B"},{"key":"e_1_2_1_41_1","unstructured":"Linehan E. and Clarke S. 2010. Modelling e verification language testbenches in uml 2.0 with theme and marte. Lero Tech. rep. Series Lero-TR-2010-02 Lero - the Irish Software Engineering Research Centre.  Linehan E. and Clarke S. 2010. Modelling e verification language testbenches in uml 2.0 with theme and marte. Lero Tech. rep. Series Lero-TR-2010-02 Lero - the Irish Software Engineering Research Centre."},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.sysarc.2011.02.001"},{"key":"e_1_2_1_43_1","doi-asserted-by":"crossref","unstructured":"Loukil S. Kallel S. Zalila B. and \n      Jmaiel M\n  . \n  2010\n  . Toward an aspect oriented ADL for embedded systems. In Software Architecture M. Babar and I. Gorton Eds. Lecture Notes in Computer Science vol. \n  6285 Springer 489--492.   Loukil S. Kallel S. Zalila B. and Jmaiel M. 2010. Toward an aspect oriented ADL for embedded systems. In Software Architecture M. Babar and I. Gorton Eds. Lecture Notes in Computer Science vol. 6285 Springer 489--492.","DOI":"10.1007\/978-3-642-15114-9_47"},{"volume-title":"Proceedings of the 4th IEEE International Symposium on High-Assurance Systems Engineering (HASE'99)","author":"McUmber W. E.","key":"e_1_2_1_44_1"},{"key":"e_1_2_1_45_1","unstructured":"Miller J. and Mukerji J. 2003. MDA Guide Version 1.0.1. Tech. rep. Object Management Group (OMG).  Miller J. and Mukerji J. 2003. MDA Guide Version 1.0.1. Tech. rep. Object Management Group (OMG)."},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1109\/PERCOM.2007.7"},{"volume-title":"Proceedings of the Workshop on Modeling and Analyzis of Real-Time and Embedded Systems with the MARTE UML Profile at Design, Automation and Test in Europe (DATE'08)","author":"Mura M.","key":"e_1_2_1_47_1"},{"key":"e_1_2_1_48_1","unstructured":"Murphy B. 2010. Best practices for verification validation and test in model-based design. http:\/\/www.mathworks.com\/company\/events\/webinars\/wbnr43247.html.  Murphy B. 2010. Best practices for verification validation and test in model-based design. http:\/\/www.mathworks.com\/company\/events\/webinars\/wbnr43247.html."},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/1284480.1284509"},{"key":"e_1_2_1_50_1","unstructured":"OMG. 2008. A UML profile for MARTE: Modeling and analysis of real-time embedded systems beta 2. ptc\/08-06-09. http:\/\/www.omgmarte.org\/Documents\/Specifications\/08-06-09.pdf.  OMG. 2008. A UML profile for MARTE: Modeling and analysis of real-time embedded systems beta 2. ptc\/08-06-09. http:\/\/www.omgmarte.org\/Documents\/Specifications\/08-06-09.pdf."},{"key":"e_1_2_1_51_1","unstructured":"OMG. 2011a. Object constraint language v2.3 beta 2. formal\/2011-03-01. http:\/\/www.omg.org\/spec\/OCL\/2.3\/Beta2\/.  OMG. 2011a. Object constraint language v2.3 beta 2. formal\/2011-03-01. http:\/\/www.omg.org\/spec\/OCL\/2.3\/Beta2\/."},{"key":"e_1_2_1_52_1","unstructured":"OMG. 2011b. UML testing profile. http:\/\/utp.omg.org\/ (Last accessed 10\/11).  OMG. 2011b. UML testing profile. http:\/\/utp.omg.org\/ (Last accessed 10\/11)."},{"key":"e_1_2_1_53_1","unstructured":"(OMG) O. M. G. 2006. Metaobject facility core specification version 2.0. http:\/\/www.omg.org\/spec\/MOF\/2.0\/.  (OMG) O. M. G. 2006. Metaobject facility core specification version 2.0. http:\/\/www.omg.org\/spec\/MOF\/2.0\/."},{"key":"e_1_2_1_54_1","doi-asserted-by":"crossref","unstructured":"OVM World. 2007. Open verification methodology. http:\/\/verificationacademy.com\/verification-methodology.  OVM World. 2007. Open verification methodology. http:\/\/verificationacademy.com\/verification-methodology.","DOI":"10.1145\/1859846.1859847"},{"volume-title":"Proceedings of the Forum on Specification, Verification and Design Languages (FDL'08)","author":"Pampagnin P.","key":"e_1_2_1_55_1"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMPSAC.2009.48"},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1504\/IJES.2008.020299"},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-01648-6_3"},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/1550987.1550993"},{"volume-title":"Proceedings of the EDA Tech Forum.","author":"Robert T.","key":"e_1_2_1_60_1"},{"key":"e_1_2_1_61_1","unstructured":"Robinson D. 2008. Aspect-Oriented Programming with the e Verification Language - A Pragmatic Guide for Testbench Developers. Morgan Kaufmann.   Robinson D. 2008. Aspect-Oriented Programming with the e Verification Language - A Pragmatic Guide for Testbench Developers. Morgan Kaufmann."},{"volume-title":"Proceedings of the Software Defined Radio Technical Conference and Product Exposition (SDR'05)","author":"Rouxel S.","key":"e_1_2_1_62_1"},{"key":"e_1_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10515-008-0035-7"},{"key":"e_1_2_1_64_1","unstructured":"Sendall S. and Kster J. 2004. Taming model round-trip engineering. In Best Practices for Model-Driven Software Development.  Sendall S. and Kster J. 2004. Taming model round-trip engineering. In Best Practices for Model-Driven Software Development."},{"key":"e_1_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2009.125"},{"key":"e_1_2_1_66_1","unstructured":"SynaptiCAD. 2010. Testbencher pro. http:\/\/www.syncad.com\/testbencher_verilog_vhdl_testbench_generator.htm.  SynaptiCAD. 2010. Testbencher pro. http:\/\/www.syncad.com\/testbencher_verilog_vhdl_testbench_generator.htm."},{"key":"e_1_2_1_67_1","unstructured":"Synopsys Inc. 2008. Vcs verification library. http:\/\/www.synopsys.com\/dw\/vcs_verification_library.php (Last accessed 10\/00).  Synopsys Inc. 2008. Vcs verification library. http:\/\/www.synopsys.com\/dw\/vcs_verification_library.php (Last accessed 10\/00)."},{"key":"e_1_2_1_68_1","unstructured":"Tala D. K. 2010. Asic world. http:\/\/www.asic-world.com\/.  Tala D. K. 2010. Asic world. http:\/\/www.asic-world.com\/."},{"key":"e_1_2_1_69_1","unstructured":"The Eclipse Foundation. 2010. Eclipse modeling project. http:\/\/www.eclipse.org\/modeling\/.  The Eclipse Foundation. 2010. Eclipse modeling project. http:\/\/www.eclipse.org\/modeling\/."},{"volume-title":"Proceedings of the Synopsys User Group.","author":"Thompson K.","key":"e_1_2_1_70_1"},{"key":"e_1_2_1_71_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0167-6423(02)00039-4"},{"volume-title":"Proceedings of the Design and Verification Conference and Exhibition (DVCon).","year":"2010","author":"Vax M.","key":"e_1_2_1_72_1"},{"key":"e_1_2_1_73_1","unstructured":"Verisity Design Inc. 2005. Verification reuse methodology - Essential elements for verification productivity gains. White paper. http:\/\/www.verisity.com\/resources\/whitepaper\/erm.html.  Verisity Design Inc. 2005. Verification reuse methodology - Essential elements for verification productivity gains. White paper. http:\/\/www.verisity.com\/resources\/whitepaper\/erm.html."},{"key":"e_1_2_1_74_1","doi-asserted-by":"publisher","DOI":"10.1145\/302405.302458"},{"volume-title":"-T","author":"Wang L.-T.","key":"e_1_2_1_75_1"},{"key":"e_1_2_1_76_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISORC.2007.17"},{"key":"e_1_2_1_77_1","unstructured":"Yogesh M. Ali A. B. and Aarti G. 2009. Verification languages. In Industrial Electronics CRC Press.  Yogesh M. Ali A. B. and Aarti G. 2009. Verification languages. In Industrial Electronics CRC Press."},{"key":"e_1_2_1_78_1","unstructured":"Yusuf L. Chessell M. and Gardner T. 2006. Implement model-driven development to increase the business value of your it system. developerworks technical library IBM. http:\/\/www.ibm.com\/developerworks\/library\/ar-mdd1\/.  Yusuf L. Chessell M. and Gardner T. 2006. Implement model-driven development to increase the business value of your it system. developerworks technical library IBM. http:\/\/www.ibm.com\/developerworks\/library\/ar-mdd1\/."},{"volume-title":"Embedded Systems Handbook","author":"Zurawski R.","key":"e_1_2_1_79_1"}],"container-title":["ACM Transactions on Design Automation of Electronic Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2209291.2209304","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2209291.2209304","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T09:21:05Z","timestamp":1750238465000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2209291.2209304"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,6]]},"references-count":79,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2012,6]]}},"alternative-id":["10.1145\/2209291.2209304"],"URL":"https:\/\/doi.org\/10.1145\/2209291.2209304","relation":{},"ISSN":["1084-4309","1557-7309"],"issn-type":[{"type":"print","value":"1084-4309"},{"type":"electronic","value":"1557-7309"}],"subject":[],"published":{"date-parts":[[2012,6]]},"assertion":[{"value":"2010-12-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2011-12-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2012-07-05","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}