%T HCSP: Extending CSP for Codesign and Shared Memory %A Adrian E. Lawrence %E Peter H. Welch, Andr\[`e] W. P. Bakkers %B Proceedings of WoTUG\-21: Architectures, Languages and Patterns for Parallel and Distributed Applications %X HCSP is a variant of CSP adapted to capture the semantics of hardware compilation, among other purposes. It extends CSP in several ways; it includes priority; events can be combined; new synchronization constructors are introduced; and state is explicitly modelled. Including state permits the treatment of shared memory as well as message passing systems. A possible denotational semantics is included here ths allowing proper treatment of such systems. Although most of these extensions were motivated by the needs of hardware compilation, HCSP can be applied more widely including software and thus can form the foundation of a codesign language. HCSP is an extension of CSPP; familiarity of CSPP is assumed here.