Abstract:Software intellectual property (IP) is a reusable software knowledge entity with intellectual property, serving as the basis for intelligent software synthesis. In view of the key features of the embedded systems, this study proposes a general model of software IP for the systems, including the knowledge model, formal model, and implementation, and discusses the consistency between the three. Compared with the current mainstream models, the proposed method fully considers the key features of embedded systems, assumptions made by the system about the environment and platform, representation and utilization of the immediate knowledge of software, correctness of model assembly, and relations between model and implementation. Therefore, this method has remarkable advantages. The proposed general model reveals the essential nature of software construction to some extent. Software is not merely a set of codes, but should be a combination of knowledge, specification, and codes. Additionally, for simplifying the utilization, this study shows software IP in different views according to the utilization purposes (focuses). Finally, this study puts forward an approach of extracting software IP from existing embedded software assets and validates the effectiveness of this extraction method through practical cases.