Home | Pages for Grad Students

William "Bill" Gardner / Research Pages

I am part of the Modeling & Design Automation Group in the School of Computer Science at the University of Guelph, Ontario, Canada.

Major themes
  • Design automation for embedded systems development based on a formal model
  • Parallel programming paradigms based on a formal model
  • Hardware/software codesign
  • Related courses
  • CIS*3090, Parallel Programming [ HTML ]
  • CIS*6090, Hardware/Software Co-design of Embedded Systems [ HTML ]
  • CIS*6650, Formal System Modeling with CSP [ HTML ]
  • Publications & downloads

    Michael Alexander, William Gardner, Eds., Process Algebra for Parallel and Distributed Processing, CRC Press, Computational Science Series, Vol. 2, 11 chapters, 415 pages, 2008. Available as hardback and e-book from CRC Press, also on Amazon.com with Kindle edition.

    Click on the links under Project Names for access to papers and software. @ marks currently active projects


    Project Names

    Formal methods

  • CSP (Communicating Sequential Processes)
  • Executable specifications, software synthesis
  • @ CSP++ website


    Parallel programming

  • High-performance clusters (Pilot)
  • Cell BE clusters (CellPilot)
  • Embedded multicore (AutoPilot)
  • @ Pilot website

    see docs > publications

    Embedded systems

  • Rapid prototyping
  • Field-programmable devices (FPD, FPGA)
  • Handheld/wearable landmine avoidance system
  • Residential Gateway


    Computer Science Education

  • Interdisciplinary PhD in Computational Sciences
  • New courses

  • Parallel programming | Object-oriented programming | Hardware/software codesign
  • Teaching approaches

  • Remote teaching methods | "Painless" use of clickers | Increasing participation in student seminars | Assessing group software projects
  • E-cew autotester

  • Automated program testing via e-mail
  • R2D2C

    The Requirements-to-Design-to-Code project, of NASA's Goddard Space Flight Center, involves automatic code generation starting from a system description in the form of a "scenario." Scenarios are automatically converted to CSP traces, and then CSP specifications are inferred from the set of traces. When code is generated from the specifications, the preceding formal transformations will ensure that the code's behaviour is exactly that which was described by the input scenarios. In this approach, the formal notation is kept "under the hood," and users need not deal with it.

    Our contribution to this project offers a possible first phase, defining "scenario" for this specific purpose, and showing how scenarios expressed in our Scenario Notation Language can be automatically converted to CSP traces.

  • John Carter, W.B. Gardner, "Converting Scenarios to CSP Traces with Mise en Scene for Requirements-Based Programming," Innovations in Systems and Software Engineering: A NASA Journal, Vol. 4, No. 1, Apr. 2008, Springer London, pp. 45-70, DOI 10.1007/s11334-007-0041-0. [ SpringerLink ]
  • J. Carter, W.B. Gardner, J.L. Rash, and M.G. Hinchey, "Mise en Scene: Scenario to CSP Trace Conversion for the Requirements to Design to Code Project," Technical Report TM-2007-214155, National Aeronautics and Space Administration, 2007. [ NASA Tech. Rpt. Server ]
  • John Carter, W.B. Gardner, "Mise en Scene: Converting Scenarios to CSP Traces in Support of Requirements-Based Programming," 31st Software Engineering Workshop (SEW-31), 3rd IEEE Systems and Software Week (SASW 2007), Baltimore, Mar. 3-8, pp. 41-50. [ PDF ]
  • Residential Gateway

    This work is in collaboration with the Telecommunication Group spearheaded by Shaowen Song in the Dept. of Physics & Computer Science at Wilfrid Laurier University, Waterloo, Ontario. SONET (synchronous optical network) over DWDM (dense wavelength division multiplexing) broadband access network is a mature technology that is used in the backbone of the telephone networks. Here, this architecture is extended to "the last mile" as the broadband access network, which is specially intended for future integrated or multiservices with full capability of home applications. In order to connect the users to the network as well as to the service providers, a special purpose network gateway, called residential gateway (RG), needs to be developed.

    An RG is an intelligent switching device providing symmetric bidirectional multiservices to home users. Each RG consists of the RG core, and the RG interface with Ethernet, video, audio, telephone and other home applications. The RG design was targeted for Xilinx Virtex II FPGA for rapid prototyping purposes.

  • S.W. Song, W.B. Gardner, "Broadband Residential Multiservices Access," Computer Networking and Networks, S. Shannon, Ed., Nova Science Publishers, chapter 3, ISBN 1-59454-830-7, 2006. [ Amazon.ca ]
  • S.W. Song, J.D. Zheng, W.B. Gardner, "Prototyping a Residential Gateway Using Xilinx ISE," 16th IEEE International Workshop on Rapid System Prototyping (RSP 2005), Montréal, June. 8-10, p. 267-269. [ PDF ]
  • MineAlert

    The recent miniaturization of GPS receivers has made it possible to design a mobile "personal safety" system to help individuals avoid mapped landmines left over from previous conflicts. The handheld system continually compares the bearer's GPS-reported position with a compressed map of mined danger areas, sounding an alarm on approach.

    This project was created as an entry for the 2004 Computer Society International Design Competition under the theme "Making the world a safer place." The four-undergraduate team could not fully complete the prototype before the contest deadline, but work continued on the implementation with undergraduate research assistant Reinhard Kypke.

  • T. Cornfield, Y. Gong, G. Rao, L. Yang, W. Gardner, "Handheld Landmine Avoidance System," IEEE Canada 18th Annual Canadian Conference on Electrical and Computer Engineering (CCECE `05), Saskatoon, May 1-4, pp. 905-910. [ PDF ]
  • Computer Science Education

  • William B. Gardner, Gary Grewal, Deborah Stacey, David A. Calvert, Stefan C. Kremer, and Fangju Wang, "A New Canadian Interdisciplinary PhD in Computational Sciences," Intl. Conference on Computational Science, Bridging the HPC Talent Gap with Computational Science Research Methods (BRIDGE'15), Reykjavik, June 1-3, in special issue of Journal of Computational Science , Vol. 9, pp. 82-87. [ PDF ]
  • New courses
  • W.B. Gardner and J.D. Carter, "Using the Pilot library to teach message-passing programming," Workshop on Education for High-Performance Computing (EduHPC), pp. 1-8, Intl. Conf. for High Performance Computing, Networking, Storage, and Analysis (SC-14), ACM, Nov. 2014. [ PDF ]
  • William Gardner, "Third-Year Parallel Programming for CS Undergraduates," Frontiers in Education: Computer Science and Computer Engineering (FECS'11), Las Vegas, July 18-21, pp. 8-13. [ PDF ]
  • W. Gardner, R. Sutcliffe, and D. Ariel, "Refactoring the Teaching of Object-Oriented Programming," 5th Western Canadian Conference on Computing Education (WCCCE '00), Kamloops, Canada, May 2000. [ HTML ]
  • W.B. Gardner and M. Serra, "Introducing Hardware/Software Codesign in an Interdisciplinary Curriculum," Invited Talk, Symposium on Microelectronics Research & Development in Canada (MR&DCAN-98), Ottawa, June 1998. [ HTML ]
  • M. Serra and W.B. Gardner, "A First Course in Hardware/Software Codesign," 3rd Western Canadian Conference on Computing Education (WCCCE '98), Vancouver, May 1998, pp. 57-66. [ PDF ]
  • Teaching approaches
  • Bill Gardner, "Technology for Remote Teaching: Three Practical Methods," 28th Annual Teaching and Learning Innovations Conference, University of Guelph, Apr. 29, 2015. [ PDF ]
  • Bill Gardner, "A Clicker Convert in Comp. Sci.," i>clickers at the University of Guelph workshop, Mar. 20, 2012. [ PDF ]
  • Bill Gardner, "Painless clicker adoption," 20th Annual Teaching and Learning Innovations Conference, University of Guelph, May 15, 2007. [ PDF ]
  • Bill Gardner, "Increasing Participation in Student Seminars," 20th Annual Teaching and Learning Innovations Conference, University of Guelph, May 15, 2007. [ PDF ]
  • W. Gardner, "Assessing Individual Contributions to Group Software Projects," 8th Western Canadian Conference on Computing Education (WCCCE '03), Courtenay, BC, Canada, May 2003, pp. 33-50. [ HTML ]
  • E-cew autotester
  • W. Gardner, "Automatic Testing and Submission of Student Programs via E-mail," 8th Western Canadian Conference on Computing Education (WCCCE '03), Courtenay, BC, Canada, May 2003, pp. 139-151. [ HTML ]
  • Current version of E-cew software [ zip ] described in above paper, including scripts and files for e-mail front end plus cew (component exerciser workbench) source code.
  • Home | Pages for Grad Students