Hardware-software co-design: A practical course for future embedded engineers | IEEE Conference Publication | IEEE Xplore