SMS: From ASICs to SOCs: a practical approach