Describir: Metamodeling-Driven IP Reuse for SoC Integration and Microprocessor Design