Text this: Architecture design of multi-protocol controller based on software definition