Intelligent Retrieval for Component Reuse in System-On-Chip Design