Systems and methods for simulated electronic design and analysis using multi-modal, multi-agent artificial intelligence (AI) models
Patent Information
- Application Number
- CN202580020119.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-22
- Filing Date
- 2025-03-21
- Publication Date
- 2026-10-09
Smart Images

Figure CN122893113A_ABST
Abstract
Description
[0001] Cross-references to related applications
[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 568,924, filed March 22, 2024, which is incorporated herein by reference. Technical Field
[0003] The aspects described involve machine learning, and more specifically, the use of multimodal, multi-agent artificial intelligence (AI) models for analog electronic design and analysis.
[0004] introduction
[0005] Traditional electronic design methodologies often struggle to handle the complexity and intuition required for developing analog and mixed-signal integrated circuits. Existing approaches are typically single-modal, focused on narrow applications (such as device size determination or placement optimization), and lack the ability to generalize to a wide range of design challenges. Furthermore, reliance on independent machine learning models and reinforcement learning agents limits adaptability and fails to encompass the nuanced decision-making processes employed by experienced engineers. Summary of the Invention
[0006] This disclosure describes an artificial intelligence (AI) model for electronic system design and problem solving, featuring a multimodal, multi-agent architecture. The AI model includes: a user representative agent for logical task execution, a knowledge retrieval agent for context-specific information source retrieval, a coding and tooling agent for software interaction, a simulation agent for circuit analysis, and a test bench agent for hardware interface connectivity, with a focus on the analog and mixed-signal IC domain. The multi-agent system is a scalable framework and is not limited to the aforementioned agents.
[0007] The following is a simplified overview of one or more aspects to provide a basic understanding of them. This overview is not a comprehensive summary of all anticipated aspects, nor is it intended to identify key or important elements of all aspects, nor to depict the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed descriptions that follow.
[0008] One example aspect includes a method for automating the design and analysis of analog electronic systems. The method includes: receiving a user query via a user interface, wherein the user query includes at least one attribute indicative of a task in the design, simulation, and / or analysis of an electronic device. The method further includes: identifying at least one attribute of the user query by a dialogue agent of a machine learning model (MLM). Furthermore, the method includes: selecting two or more agents from a plurality of agents by the dialogue agent of the MLM, the two or more agents being capable of jointly generating a response to the user query when executed in a specific order based on at least one attribute of the user query, wherein each corresponding agent among the plurality of agents is specialized for a different task in the design, simulation, and / or analysis of the electronic device. Furthermore, the method includes: prompting the two or more agents in a specific order by the dialogue agent of the MLM to jointly generate the response. Furthermore, the method includes: outputting the response by the dialogue agent of the MLM via a user interface.
[0009] Another example includes an apparatus for automating the design and analysis of analog electronic systems, comprising one or more memories and one or more processors coupled to the one or more memories and configured to perform the following actions individually or in any combination: The one or more processors are configured to: receive a user query via a user interface, wherein the user query includes at least one attribute instructing a task in the design, simulation, and / or analysis of an electronic device. The one or more processors are also configured to: identify at least one attribute of the user query by a conversational agent of a machine learning model (MLM). Furthermore, the one or more processors are configured to: select two or more agents from a plurality of agents by the conversational agent of the MLM, which are capable of jointly generating a response to the user query when executed in a specific order based on at least one attribute of the user query, wherein each corresponding agent among the plurality of agents is dedicated to a different task in the design, simulation, and / or analysis of the electronic device. Furthermore, the one or more processors are configured to: prompt the two or more agents in a specific order by the conversational agent of the MLM to jointly generate a response. Furthermore, the one or more processors are configured to: output a response by the conversational agent of the MLM via a user interface.
[0010] Another example includes an apparatus for automating the design and analysis of analog electronic systems. The apparatus includes: a component for receiving a user query via a user interface, wherein the user query includes at least one attribute indicative of a task in the design, simulation, and / or analysis of an electronic device. The apparatus also includes: a component for identifying at least one attribute of the user query. Furthermore, the apparatus includes: a component for selecting two or more agents from a plurality of agents, which, when executed in a specific order based on at least one attribute of the user query, are capable of jointly generating a response to the user query, wherein each corresponding agent is dedicated to a different task in the design, simulation, and / or analysis of the electronic device. Furthermore, the apparatus includes: a component for prompting the two or more agents in a specific order to jointly generate a response. Finally, the apparatus includes: a component for outputting a response via a user interface.
[0011] Another example includes a computer-readable medium storing instructions for automating the design and analysis of analog electronic systems, wherein the instructions can be executed individually or in any combination by one or more processors to: receive a user query via a user interface, wherein the user query includes at least one attribute instructing a task in the design, simulation, and / or analysis of an electronic device. The instructions can also be executed to: identify at least one attribute of the user query by a conversational agent of a machine learning model (MLM). Furthermore, the instructions can be executed to: select two or more agents from a plurality of agents by the conversational agent of the MLM, which, when executed in a specific order based on at least one attribute of the user query, can jointly generate a response to the user query, wherein each corresponding agent among the plurality of agents is specialized in a different task in the design, simulation, and / or analysis of the electronic device. Furthermore, the instructions can be executed to: prompt two or more agents in a specific order by the conversational agent of the MLM to jointly generate a response. Furthermore, the instructions can be executed to: output a response by the conversational agent of the MLM via a user interface.
[0012] To achieve the foregoing and related objectives, one or more aspects include the features fully described below and specifically pointed out in the claims. The following description and drawings illustrate certain exemplary features of one or more aspects in detail. However, these features indicate only a few of the various ways in which the principles of each aspect may be employed, and this description is intended to include all such aspects and their equivalents. Attached Figure Description
[0013] The disclosed aspects will be described below in conjunction with the accompanying drawings, which are provided for illustration and not limitation of the disclosed aspects, wherein like reference numerals denote like elements, and where dashed lines may indicate optional elements, and in the drawings: Figure 1 This is a diagram illustrating an example of an automated analog electronic design and analysis system comprising different agents in a multi-agent AI model disclosed herein.
[0014] Figure 2 yes Figure 1 The diagram illustrates additional aspects of automated analog electronic design and analysis systems, including the relationship between the conversational agent and all other parts of the AI model.
[0015] Figure 3 This is a message flow diagram illustrating the interaction between the dialogue agent and the circuit simulation agent.
[0016] Figure 4 This is a screenshot of an example user interface for an AI model.
[0017] Figure 5 This is another example of a user interface for an AI model.
[0018] Figure 6 It is a block diagram of an example of a computer device having components configured to perform methods for the design and analysis of automated analog electronic systems.
[0019] Figure 7 This is a flowchart illustrating an example of a method for designing and analyzing automated analog electronic systems.
[0020] Figure 8 yes Figure 7 The flowchart shows an additional aspect of the method.
[0021] Figure 9 yes Figure 7 The flowchart shows an additional aspect of the method.
[0022] Figure 10 yes Figure 7 The flowchart of an additional aspect of the method; and
[0023] Figure 11 yes Figure 7 The flowchart shows an additional aspect of the method. Detailed Implementation
[0024] The various aspects will now be described with reference to the accompanying drawings. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more aspects. However, it will be apparent that such aspects can be practiced without these specific details.
[0025] This disclosure provides a comprehensive solution to the challenges of traditional electronic system design, particularly analog and mixed-signal integrated circuits. To this end, the disclosure integrates a multimodal, multi-agent artificial intelligence (AI) framework that combines the capabilities of individual agents driven by a large language model (LLM), where each agent is designed to handle a specific aspect of the electronic design process. This system not only simplifies the design and analysis of complex electronic systems but also endows the process with a degree of intuition and adaptability, thus closely mimicking human expertise.
[0026] Reference Figure 1 It depicts a high-level schematic diagram of the automated analog electronic design and analysis system 100 of this disclosure, which includes different agents in a multi-agent AI model 106, illustrating six types of agents. These agents include the following.
[0027] Dialogue agent 108: This agent acts as an intermediary between the user and the AI model 106, interpreting input and performing tasks in a logical sequence, similar to an engineer's thought process. Dialogue agent 108 can also incorporate human feedback into the loop, such as by asking clarifying questions and requesting user actions via user interface 104. For example, a user can provide input 102 to the AI model 106 via user interface 104. Dialogue agent 108 receives input 102 and determines which agent(s) will handle the user query. In some aspects, input 102 includes text (e.g., user queries, commands, descriptions, etc.), images, diagrams, signals, etc.
[0028] Knowledge Retrieval Agent 110: Agent 110 utilizes advanced indexing and search algorithms to collect relevant technical information from massive knowledge bases and the Internet, thereby providing a context-aware basis for decision-making.
[0029] Encoding and Tool Agent 112: Agent 112 uses a deep understanding of electronic systems to automate code generation and execution, interacts with the symbol engine, and invokes various software tools required for design and analysis.
[0030] Circuit Simulation Agent 114: Agent 114 is specifically designed for the creation and refinement of circuit simulations. It generates netlists compatible with industry-standard simulators such as LTspice or Cadence, analyzes simulation results, and iteratively optimizes the design.
[0031] Test bench agent 116: As the physical contact point of AI model 106, agent 116 is equipped to perform actual measurements and interact with electronic components and systems, thereby providing empirical data to guide the design process. Agent 116 can also interact with the physical world, for example, by understanding images of the test bench setup provided by conversational agent 108.
[0032] Audit agent 118: Agent 118 receives the output from each of agents 110 to 116 and verifies whether the output is accurate and / or meets the requirements / goals set in the user query.
[0033] Multimodal input capabilities enable AI Model 106 to process text descriptions, images, electronic signals, and circuit diagrams, ensuring a comprehensive understanding of the problem. Agents collaborate through dynamic communication processes (as opposed to predefined or static procedures), ensuring that each step of the problem-solving process is guided by the insights and capabilities of other agents. This dynamic communication and collaboration allows multiple agents to jointly generate a response to a given user query.
[0034] The dynamic communication process between agents enables flexible and adaptive problem-solving, where the order of agent interactions is not predefined but evolves based on real-time insights and feedback. This dynamic nature is achieved through continuous information exchange and iterative feedback loops between agents, allowing each agent to adjust its actions and priorities as new data and results become available. For example, in the design of a high-efficiency power amplifier, the initial sequence might involve a knowledge retrieval agent 110 collecting design principles, followed by the generation of a preliminary schematic by an encoding and tooling agent 112. However, if the circuit simulation agent 114 identifies unexpected thermal issues during simulation, the dialogue agent 108 can relay this insight back to the encoding and tooling agent 112, prompting a redesign to address these thermal constraints. Simultaneously, the review agent 118 can propose alternative materials or configurations based on the simulation results, further influencing the order of actions. This dynamic collaboration ensures that the capabilities of each agent are optimally utilized, enabling the problem-solving process to adapt to emerging challenges and opportunities, ultimately providing more robust and efficient solutions for the automated design and analysis of electronic devices / systems.
[0035] One principle of AI model 106 lies in its multi-agent collaboration, where the output of each agent informs the actions of other agents, thus forming a feedback loop similar to a team of engineers working together. AI model 106 includes agents capable of handling circuit simulation and performing test bench tasks, which are used to design and analyze real-world analog electronic systems.
[0036] Figure 2This is a diagram illustrating additional aspects of the automated analog electronic design and analysis system 100, including the relationship between the conversational agent 108 and all other parts of the AI model 106. Figure 2 In this process, user 202 initiates a task via user query 203 through user interface 104, which sets a goal to be achieved. For example, the task could be monitoring and diagnosing the status of equipment, answering simulation system design questions, designing new electronic devices, or modifying the design of existing electronic devices based on new parameters.
[0037] In more specific examples, a user query could be "How is the device working? Summarize its performance and report any problems..." or "Design and simulate an LTM4700 to achieve a slew rate of 100 A / μs from 12 V to 1 V—set compensation to obtain the highest possible bandwidth..."
[0038] In response to receiving a user query 203, the conversational agent 108 collaborates with a group of agents (i.e., a multi-agent 204 consisting of agents 110 to 118). In some respects, the conversational agent 108 and the multi-agent 204 are hosted on the cloud 210 (e.g., Azure AI, Vertex AI, AWS).
[0039] Agent 108 decides which agent to communicate with and forwards tasks to one or more selected agents. In a multi-agent system, each agent is programmed with a specific set of skills 206. For example, knowledge retrieval agent 110 is configured to retrieve contextual knowledge from technical documents, and circuit simulation agent 114 is configured to build simulations that can run in LTspice or Cadence, which are part of the task execution environment 208. It should be noted that the task execution environment 208 includes any software associated with electronic design and analysis, including both software and hardware.
[0040] In the context of the described automated analog electronic design and analysis system, historical knowledge can be utilized by the knowledge retrieval agent 110 to enhance decision-making and design accuracy. For example, when a user queries the AI model 106 to design a specific type of amplifier circuit, the knowledge retrieval agent 110 can access a repository of technical documents and past simulation data. This includes querying the engineer's design choices, the challenges faced, and a history of solutions implemented in similar projects. Furthermore, the agent 110 can retrieve previous simulation results highlighting the performance characteristics and optimization strategies of similar circuits. By integrating this historical knowledge, the AI model 106 can provide a more informed and context-aware foundation for the current design task, proposing validated methods and potential pitfalls to avoid, thereby simplifying the design process and increasing the success rate.
[0041] Each selected agent will attempt to make progress on the task by using its skills. For example, circuit simulation agent 114 can generate a circuit netlist for a design problem. Dialogue agent 108 can incorporate this response into the output for user review and can further decide whether additional actions are needed.
[0042] If an action is required (e.g., running a circuit netlist in LTspice), agent 108 will execute the action by sending a command in task execution environment 208. The execution result will be returned to dialogue agent 108.
[0043] Based on the execution result, the dialogue agent 108 identifies the next agent to handle the task. This process continues until agent 108 determines that the task has been completed and the user's query can be resolved.
[0044] In some respects, in each round of dialogue, user 202 can provide feedback to dialogue agent 108 based on intermediate results generated by multi-agent 204 (human in loop).
[0045] Typically, the dialogue agent 108 acts as a central coordinator, determining which specialized agents should handle the user query 203 based on the nature and requirements of the task. When the user 202 initiates a task, agent 108 first interprets the input to understand the objective and context, and then determines which agents are best suited to handle the query by analyzing the type of information or action required. For example, if the task is to monitor and diagnose the condition of equipment, agent 108 may first have the knowledge retrieval agent 110 collect relevant technical information and context. Afterward, it may involve the test bench agent 116 to perform actual measurements and provide empirical data. Finally, the auditing agent 118 can verify the accuracy and relevance of the outputs from other agents to ensure that the task objectives are met.
[0046] In another scenario, if the task is to answer a simulation system design question, agent 108 can first consult knowledge retrieval agent 110 to gather basic information. Subsequently, it can invoke coding and tooling agent 112 to generate and execute the necessary code or simulation. Next, circuit simulation agent 114 can be invoked to create and refine the circuit simulation, providing insights into the design's performance. Throughout this process, agent 108 ensures that the outputs of each agent are logically ordered and aligned with the task's objectives, ultimately producing a comprehensive and accurate response. Before presenting the final output to the user, auditing agent 118 will again play a role in verifying the final output.
[0047] In some respects, the conversational agent 108 determines which agent to send a command to by utilizing a combination of predefined rules, contextual analysis, and / or machine learning algorithms. The conversational agent first parses the user query to identify key elements such as the task type, desired output, and any specific constraints or objectives. Using this information, agent 108 applies a set of decision protocols that map different types of queries to the capabilities of each specialized agent. For example, if the query involves technical information retrieval, the agent will identify that knowledge retrieval agent 110 is equipped to handle such tasks. Furthermore, the conversational agent 108 can refine its decision-making process by leveraging historical data and feedback loops, learning from past interactions to improve accuracy and efficiency.
[0048] In some respects, agent 108 also considers the sequence of operations required to achieve the task objective, ensuring that the output of each agent logically contributes to the next step in the process. This dynamic and adaptive approach enables dialogue agent 108 to effectively coordinate complex tasks across multiple agents.
[0049] Figure 3 This is a diagram illustrating the interaction between the dialogue agent 108 and the circuit simulation agent 114. For example, the dialogue agent 108 issues a command to the agent 114, stating, "Let's use LTspice to solve the EE problem. Query requirements: ... Follow the following procedure: ..." and the circuit simulation agent 114 responds as follows: "...spice V 0 Vdd 1 . tran 0 -1m ..." After submitting this content as input to LTspice, the dialogue agent 108 determines that the simulation has failed. Based on the failed simulation, the dialogue agent 108 determines that it needs to issue a command to agent 114 again. Therefore, the dialogue agent 108 issues a command to agent 114 stating "Simulation failed. Stderr or log file:..." Based on the provided log file indicating the error, agent 114 generates the modified output: "...spice V 0 Vdd 1 . tran 0 1m ..." When the dialogue agent 108 submits the content as input to LTspice, the result is successful, and agent 108 passes the result from LTspice to agent 114.
[0050] Figure 4This is a diagram of an example user interface 104 for the AI model. In this example, user 202 provides code 402 to dialogue agent 108 and states in user query 203, "Please run this code to generate and view a graph of the transient response of the output voltage. This will help us visually understand how the output voltage changes over time during simulation." Agent 108 can pass this command to agent 114, which outputs graph 404 to user interface 104 and provides a confirmation message. It should be noted that... Figure 4 No testbench graphical preview has been generated because it has not yet been requested (it will be generated later). Figure 5 The request was made in China.
[0051] Figure 5 This is another illustration of the example user interface 104 for the AI model. In this example, the conversational agent 108 assigns the test bench agent 116 to... Figure 4 The simulated device performs a baud measurement, thereby obtaining the output of Figure 502.
[0052] Reference Figure 6 and Figure 7 During operation, computing device 600 can execute methods 700 for the design and analysis of automated analog electronic systems, such as by executing design and analysis components 615 by one or more processors 605. These one or more processors are configured to execute instructions individually or in any combination to perform the following actions, and / or are configured to communicate with one or more memories 610 to receive instructions.
[0053] At box 702, method 700 includes: receiving a user query via a user interface, wherein the user query includes at least one attribute indicating a task in the design, simulation, and / or analysis of an electronic device. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or receiving components 620 may be configured to, or may include, components for receiving user queries via user interface 104, wherein the user query includes at least one attribute indicating a task in the design, simulation, and / or analysis of an electronic device.
[0054] For example, a user query could be: "Design a low-pass filter with a cutoff frequency of 1 kHz for an audio application. Provide the circuit schematic, simulate its performance, and offer any suggestions for improvement to achieve optimal performance."
[0055] At box 704, method 700 includes identifying at least one attribute of a user query by a dialogue agent of a machine learning model (MLM). For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or identification components 625 may be configured to, or may include, components for identifying at least one attribute of a user query by a dialogue agent of a machine learning model (MLM). In an alternative or additional aspect, the MLM is a large language model.
[0056] For example, the identification at box 704 may include parsing the user query to identify key attributes such as task type, specific objectives, and constraints. This involves using natural language processing algorithms to interpret the text input and extract relevant information indicating whether the task involves the design, simulation, or analysis of electronic devices. The output of this process is a structured representation of the query, which the dialogue agent 108 uses to determine the appropriate sequence of actions and the specialized agents to invoke, such as a knowledge retrieval agent 110 for gathering technical information, a coding and tooling agent 112 for code generation, or a circuit simulation agent 114 for simulation tasks.
[0057] Based on the previous query, agent 108 can determine that the user is requesting the design and analysis of an electronic component (low-pass filter), specifying the desired cutoff frequency and application context. Dialogue agent 108 will interpret the query to determine the necessary steps and invoke appropriate agents, such as knowledge retrieval agent 110 for gathering design principles, coding and tooling agent 112 for generating circuit schematics, and circuit simulation agent 114 for simulating and analyzing the filter's performance.
[0058] In some respects, the identification at box 704 may include processing a structured representation of the user query determined after parsing. This could involve applying a decision tree to classify query attributes based on predefined criteria. The input to this process is parsed data from the user query, which includes elements such as task type, objectives, and constraints. The dialogue agent uses these algorithms to match query attributes with the capabilities of available agents, thereby determining which agents are best suited to handle the task.
[0059] In some respects, the output can be a priority list of attributes and their corresponding agents, guiding the dialogue agents to effectively orchestrate the order of task execution. In the context of a user query, “Design a low-pass filter with a cutoff frequency of 1 kHz for an audio application. Provide a circuit schematic, simulate its performance, and suggest any improvements for optimal performance,” the prioritization process involves a systematic evaluation of task attributes and their corresponding agents, ensuring an efficient order of execution. Dialogue agent 108 begins by parsing the query to identify key attributes such as “design,” “simulation,” and “improvement.” These attributes are then mapped to specialist agents based on their capabilities. The prioritization is mathematically modeled using a decision matrix, where each attribute is weighted based on its dependency and criticality in the task sequence. For example, the design attribute associated with knowledge retrieval agent 110 is prioritized first because it provides the underlying transfer function, logically required for subsequent steps. Encoding and tooling agent 112 follows, translating these mathematical models into a circuit schematic. Circuit simulation agent 114 is next, employing numerical methods to analyze the filter's frequency response, necessary for performance verification. Finally, an auditing agent 118 is used to apply optimization algorithms (such as gradient descent) to refine the design parameters. This structured prioritization ensures that the outputs of each agent are optimally ordered, thereby leveraging mathematical dependencies and logical flow to efficiently achieve the task objective.
[0060] At box 706, method 700 includes: selecting two or more agents from a plurality of agents by a dialogue agent of the MLM, the two or more agents being able to jointly generate a response to a user query when executed in a specific order based on at least one attribute of a user query, wherein each corresponding agent among the plurality of agents is dedicated to a different task in the design, simulation, and / or analysis of an electronic device. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or selection components 630 may be configured to, or may include, components for selecting two or more agents from a plurality of agents (multi-agent 204) by a dialogue agent 108 of the MLM (e.g., AI model 106), the two or more agents being able to jointly generate a response to a user query when executed in a specific order based on at least one attribute of a user query, wherein each corresponding agent among the plurality of agents is dedicated to a different task in the design, simulation, and / or analysis of an electronic device.
[0061] For example, the selection at box 706 could include analyzing a structured representation of the user query obtained from previous boxes, focusing on identified attributes and their associated tasks. Dialogue agent 108 employs a selection algorithm, such as a weighted scoring system or decision tree, to evaluate the suitability of each agent based on its expertise and the requirements of the task. The inputs to this process include parsed query attributes, each agent's capabilities, and any historical performance data that can inform the selection. The algorithm assigns a score to each agent, reflecting its ability to effectively contribute to the task, and prioritizes them based on these scores. The output is a sequence of selected agents, each specializing in a different aspect of the design, simulation, or analysis of electronic devices, arranged in the order of optimized task execution. For example, in a query about designing a low-pass filter, knowledge retrieval agent 110 could be selected first to gather design principles, followed by coding and tooling agent 112 for schematic generation, circuit simulation agent 114 for performance analysis, and finally review agent 118 for validating and improving recommendations. This selection process ensures that the agents collectively generate a comprehensive and accurate response to the user query.
[0062] At box 708, method 700 includes prompting two or more agents in a specific order by a conversational agent of the MLM to jointly generate a response. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or prompting components 635 may be configured to, or may include, components for prompting two or more agents in a specific order by a conversational agent of the MLM to jointly generate a response.
[0063] For example, the prompt at box 708 could include initiating communication between the dialogue agent 108 and the selected agents in a predetermined order. The dialogue agent sends a structured command or request to each agent, detailing the specific task it needs to perform based on the user query attributes. The inputs to this process include the order of the selected agents and the detailed task requirements derived from the user query. The dialogue agent applies coordination algorithms, such as task scheduling protocols, to manage timing and dependencies between agents, thereby ensuring that each agent receives the necessary input from previous agents before performing its task.
[0064] For example, in a query about designing a low-pass filter, the dialogue agent first prompts the knowledge retrieval agent 110 to collect relevant design principles and technical information. Once this information is obtained, the dialogue agent then prompts the coding and tooling agent 112 to use the collected data to generate a circuit schematic. Subsequently, the circuit simulation agent 114 is prompted to simulate the filter's performance, analyzing its frequency response and transient characteristics. Finally, the review agent 118 is prompted to verify the output and provide improvement suggestions, thereby ensuring that the design meets the specified performance standards.
[0065] The output of this prompting process is the coordinated execution of the task by the agents, resulting in a comprehensive and accurate response to the user's query. This approach ensures that the contributions of each agent are effectively integrated, thereby leveraging their expertise to efficiently achieve the task objectives.
[0066] At box 710, method 700 includes: outputting a response by the MLM's conversational agent via a user interface. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or output components 640 may be configured to, or may include, components for outputting a response by the MLM's conversational agent via a user interface.
[0067] For example, the output at box 710 could include summarizing the results generated by the individual agents into a coherent and user-friendly format. Dialogue agent 108 aggregates the output from each agent, ensuring that information is logically organized and clearly presented. The inputs to this process include the final outputs from the selected agents, such as design schematics, simulation results, and improvement suggestions. The dialogue agents apply formatting algorithms to structure the data, potentially transforming technical outputs into visual representations (such as charts or diagrams) for easier interpretation.
[0068] For example, in a query about designing a low-pass filter, the dialogue agent will summarize the circuit schematic generated by the coding and tool agent 112, the simulation results from the circuit simulation agent 114, and the improvement suggestions from the review agent 118. These elements are integrated into a comprehensive report or interactive interface, enabling the user to explore design details, view performance metrics, and understand the suggested optimizations.
[0069] The process outputs a well-organized response via a user interface, enabling users to clearly and actionably understand the task's outcome. This ensures users can easily interpret the results and make informed decisions based on the comprehensive analysis provided by the agent.
[0070] In alternative or additional aspects, the multiple agents include one or more of the following: a knowledge retrieval agent 110 that collects information from a database, a coding agent 112 that writes code in one or more programming languages, a circuit simulation agent 114 that designs and simulates circuits, a test bench agent 116 that interacts with instruments to perform analysis of electronic devices, and an auditing agent 118 that evaluates the responses of all other agents among the multiple agents and identifies errors.
[0071] Reference Figure 8 In an alternative or additional aspect, at box 802, method 700 may further include: determining a specific sequence and two or more agents by the MLM's dialogue agent based on both the characteristics of multiple agents and a historical workflow for responding to user queries with matching attributes. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or determination components 645 may be configured to, or may include, components for determining a specific order and two or more agents by the MLM's dialogue agent based on both the characteristics of multiple agents and a historical workflow for responding to user queries with matching attributes.
[0072] Reference Figure 9 In an alternative or additional aspect, at box 902, method 700 may further include: prompting an auditing agent of the MLM to evaluate a first response of a first agent among two or more agents. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or prompting components 635 may be configured to, or may include, components for prompting an auditing agent of the MLM to evaluate a first response of a first agent among two or more agents.
[0073] In this optional aspect, at block 904, method 700 may further include: prompting the first agent of the MLM's dialogue agent to generate a modified second response in response to an auditing agent indicating that the first response does not meet the requirements of a user query. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or prompting components 635 may be configured to, or may include, components for prompting the first agent of the MLM's dialogue agent to generate a modified second response in response to an auditing agent indicating that the first response does not meet the requirements of a user query.
[0074] For example, the prompt at box 904 could include: initiating a feedback loop between the conversational agent 108 and the first agent based on an evaluation provided by the reviewing agent 118. The conversational agent receives the evaluation from the reviewing agent, which includes specific details about how the first response failed to meet the user's query requirements. This input consists of structured feedback that highlights discrepancies or areas needing improvement, such as incorrect data, insufficient analysis, or failure to meet performance standards.
[0075] The dialogue agent then applies a modification algorithm, which may involve rule-based adjustments to determine the necessary changes to the first agent's response. The algorithm analyzes the feedback to identify actionable modifications, such as recalibrating parameters, optimizing computations, or improving data accuracy.
[0076] The output of this process is a set of revised instructions or parameters sent to the first agent, prompting it to generate a second response that addresses the identified defects. This iterative approach ensures that the final output meets the user's query requirements, thereby leveraging the expertise of the auditing agent to improve the quality and accuracy of the response.
[0077] In an alternative or additional aspect, each of the multiple agents has a corresponding auditing agent configured to evaluate the intermediate responses generated by the corresponding agent.
[0078] In an alternative or additional aspect, two or more agents include a first agent and a second agent, wherein the first agent executes after the second agent in a specific order, and wherein intermediate responses from the second agent are provided to the first agent to generate responses output on the user interface.
[0079] Reference Figure 10 In an alternative or additional aspect, at box 1002, method 700 may further include: prompting an auditing agent of the MLM to evaluate the response of the first agent. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or prompting components 635 may be configured to, or may include, components for prompting an auditing agent of the MLM to evaluate the response of the first agent.
[0080] In this optional aspect, at block 1004, method 700 may further include: prompting a second agent among two or more agents of the MLM to generate a new intermediate response based on the requirements of the user query in response to an auditing agent indicating that the response does not meet the requirements of the user query. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or prompting components 635 may be configured to, or may include, components for prompting a second agent among two or more agents of the MLM to generate a new intermediate response based on the requirements of the user query in response to an auditing agent indicating that the response does not meet the requirements of the user query.
[0081] For example, the prompt at box 1004 could include initiating a corrective feedback loop, where the conversational agent 108 coordinates with a second agent to refine its intermediate response. The process begins with an auditing agent 118 evaluating the first agent's response and identifying any deficiencies or unmet requirements related to the user's query. Inputs to this process include detailed feedback from the auditing agent, indicating aspects of the response that require adjustment, such as inaccuracies, incomplete data, or failure to meet specified criteria.
[0082] The dialogue agent then applies a feedback-driven modification algorithm, which may involve heuristics to determine necessary changes to the intermediate responses generated by the second agent. The algorithm processes the feedback to identify specific areas for improvement, such as recalibrating the model, enhancing data processing, or adjusting parameters to better suit the user's query.
[0083] The output of this process is a set of revised instructions or parameters sent to a second agent, prompting it to generate new intermediate responses to solve the identified problem. This iterative refinement ensures that intermediate responses are optimized before being used by the first agent to generate the final output, thereby enhancing the overall quality and accuracy of the responses presented to the user.
[0084] In alternative or additional aspects, a specific sequence includes: executing at least one of two or more agents multiple times in different parts of the specific sequence. Consider a user query focused on designing a high-precision digital-to-analog converter (DAC) with stringent specifications for linearity, resolution, and power consumption. Dialogue agent 108 coordinates the task by invoking various agents in a specific sequence, some of which are executed multiple times to ensure the design meets all criteria.
[0085] Initially, a knowledge retrieval agent 110 is executed to gather comprehensive technical information and design principles related to the DAC. This foundational knowledge informs an encoding and tooling agent 112, which is executed to generate an initial circuit schematic. A circuit simulation agent 114 simulates the DAC's performance to evaluate its linearity and resolution. An auditing agent 118 evaluates these simulation results, identifying discrepancies or areas for improvement.
[0086] Based on feedback, the coding and tooling agent 112 is executed again to refine the schematic, thereby adjusting component values or configurations to enhance performance. A second circuit simulation agent 114 is executed to simulate the updated design, thereby verifying improvements in linearity and resolution. This iterative loop can be repeated multiple times, with the auditing agent providing continuous feedback until the design meets all specified requirements.
[0087] Finally, test bench agent 116 can be executed to perform actual measurements, ensuring that the DAC performs as expected under real-world operating conditions. This iterative approach, involving multiple executions of coding and tool agents as well as circuit simulation agents, enables thorough refinement and optimization, ensuring that the final design meets the user's goals and technical specifications.
[0088] Reference Figure 11 In an alternative or additional aspect, at block 1102, method 700 may further include: modifying a specific order by the MLM's dialogue agent in response to receiving a subsequent user query that includes contextual information having at least one different attribute. For example, in one aspect, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or modification components 650 may be configured to, or may include, components for modifying a specific order by the MLM's dialogue agent in response to receiving a subsequent user query that includes contextual information having at least one different attribute.
[0089] For example, the modification at box 1102 could include analyzing subsequent user queries to identify new contextual information and attributes that differ from the original query. The dialogue agent 108 processes this input using a natural language processing algorithm to extract and understand the changes in the new requirements or task context. This analysis involves comparing the attributes of subsequent queries with those of the initial query to determine the differences between them and their impact on the task execution order.
[0090] The dialogue agent 108 then applies a dynamic ranking algorithm, which may involve a decision model or adaptive learning techniques, to adjust the order in which the agents perform their tasks accordingly. The algorithm evaluates the impact of new attributes on task requirements and identifies which agents need to be re-called or newly called to handle the updated context.
[0091] The output of this process is a revised agent execution order, customized to incorporate new contextual information and ensure task execution remains consistent with the updated user query. For example, if a subsequent query introduces new performance criteria or design constraints, the dialogue agent can modify the order to include additional simulations or design iterations, ensuring the final output meets the revised objectives. This adaptive approach allows the dialogue agent to flexibly respond to changes in user requirements, thereby optimizing task execution in real time.
[0092] In some respects, two or more agents concurrently generate intermediate results before generating responses to user queries in a specific order. In other words, the first agent does not have to generate a first intermediate result for the dialogue agent and then a second intermediate result for the second agent. Instead, both the first and second agents can generate their respective intermediate results in parallel, following instructions in a specific order.
[0093] In some aspects, computing device 600, one or more processors 605, one or more memories 610, design and analysis components 615, and / or selection components 630 may be configured to, or may include, components for modifying a particular sequence based on intermediate results generated by one of two or more agents during the generation of a response to a user query. In some aspects, the modification is performed without additional user input. In some aspects, the modification is performed in response to determining that a particular order produces incorrect intermediate results.
[0094] While the foregoing disclosure discusses exemplary aspects and / or embodiments, it should be noted that various changes and modifications may be made herein without departing from the scope of the described aspects and / or embodiments as defined by the appended claims. Furthermore, although elements of the described aspects and / or embodiments may be described or claimed in the singular, the plural is contemplated unless expressly stated to be limited to the singular. Moreover, unless otherwise stated, all or part of any aspect and / or embodiment may be used in conjunction with all or part of any other aspect and / or embodiment.
Claims
1. An apparatus for designing and analyzing automated analog electronic systems, the apparatus comprising: One or more memory units; and One or more processors, said one or more processors coupled to one or more memories and configured individually or in combination as follows: Receive user queries via a user interface, wherein the user queries include at least one attribute indicating a task in the design, simulation and / or analysis of an electronic device. The dialogue agent of the machine learning model (MLM) identifies at least one attribute of the user query; The dialogic agent of the MLM selects two or more agents from a plurality of agents, which are capable of jointly generating a response to the user query when executed in a specific order based on at least one attribute of the user query, wherein each of the plurality of agents is dedicated to a different task in the design, simulation and / or analysis of the electronic device. The dialogue agent of the MLM prompts the two or more agents in the specific order to jointly generate the response; as well as The response is output by the dialogic agent of the MLM via the user interface.
2. The apparatus of claim 1, wherein the plurality of intelligent agents comprises one or more of the following: A knowledge retrieval agent that collects information from a database; A coded intelligent agent that writes code in one or more programming languages; Circuit simulation intelligent agents for designing and simulating circuits; A test bench agent that interacts with instruments to perform the analysis of electronic devices; as well as Evaluate the responses of all other agents among the multiple agents and identify the erroneous auditing agent.
3. The apparatus of claim 1, wherein the one or more processors are further configured to: The specific order and the two or more agents are determined by the dialogue agent of the MLM or at least one other agent of the MLM based on both the characteristics of the agents and the historical workflow for responding to user queries with matching attributes.
4. The apparatus of claim 1, wherein the one or more processors are further configured to: The dialogue agent of the MLM prompts the review agent to evaluate the first response of the first agent among two or more agents; and The first agent, prompted by the dialog agent of the MLM, generates a modified second response in response to the audit agent's indication that the first response does not meet the user's query requirements.
5. The apparatus of claim 4, wherein each of the plurality of agents has a corresponding auditing agent configured to evaluate an intermediate response generated by the corresponding agent.
6. The apparatus of claim 1, wherein the two or more agents comprise a first agent and a second agent, wherein the first agent executes after the second agent in the specific order, and wherein an intermediate response of the second agent is provided to the first agent to generate the response output on the user interface.
7. The apparatus of claim 6, wherein the one or more processors are further configured to: The dialogue agent of the MLM prompts the review agent to evaluate the response of the first agent; and The dialogue agent of the MLM prompts the second agent among the two or more agents to generate a new intermediate response based on the user query requirements in response to the audit agent's indication that the response does not meet the user query requirements.
8. The apparatus of claim 1, wherein the particular sequence comprises executing at least one of the two or more agents multiple times in different portions of the particular sequence.
9. The apparatus of claim 1, wherein the one or more processors are further configured to: The specific order is modified by the dialogue agent of the MLM in response to receiving subsequent user queries that include contextual information with at least one different attribute.
10. The apparatus of claim 1, wherein the MLM is a large language model.
11. The apparatus of claim 1, wherein the two or more agents concurrently generate intermediate results before generating the response to the user query in the specific order.
12. The apparatus of claim 1, wherein the one or more processors are further configured to: During the generation of the response to the user query, the specific order is modified based on intermediate results generated by one of the two or more agents.
13. The apparatus of claim 12, wherein the modification is performed without additional user input.
14. The apparatus of claim 12, wherein the modification is performed in response to determining that the particular order produces incorrect intermediate results.
15. A method for designing and analyzing automated analog electronic systems, the method comprising: Receive user queries via a user interface, wherein the user queries include at least one attribute indicating a task in the design, simulation and / or analysis of an electronic device. The dialogue agent of the machine learning model (MLM) identifies at least one attribute of the user query; The dialogic agent of the MLM selects two or more agents from a plurality of agents, which are capable of jointly generating a response to the user query when executed in a specific order based on at least one attribute of the user query, wherein each of the plurality of agents is dedicated to a different task in the design, simulation and / or analysis of the electronic device. The dialogue agent of the MLM prompts two or more agents in a specific order to jointly generate the response; as well as The response is output by the dialogic agent of the MLM via the user interface.
16. The method of claim 15, wherein the plurality of intelligent agents comprises one or more of the following: A knowledge retrieval agent that collects information from a database; A coded intelligent agent that writes code in one or more programming languages; Circuit simulation intelligent agents for designing and simulating circuits; A test bench agent that interacts with instruments to perform the analysis of electronic devices; as well as Evaluate the responses of all other agents among the multiple agents and identify the erroneous auditing agent.
17. The method according to claim 15, further comprising: The specific order and the two or more agents are determined by the dialogue agent of the MLM or at least one other agent of the MLM based on both the characteristics of the agents and the historical workflow for responding to user queries with matching attributes.
18. The method according to claim 15, further comprising: The dialogue agent of the MLM prompts the review agent to evaluate the first response of the first agent among the two or more agents; as well as The first agent, prompted by the dialog agent of the MLM, generates a modified second response in response to the audit agent's indication that the first response does not meet the user's query requirements.
19. The method of claim 18, wherein each of the plurality of agents has a corresponding auditing agent configured to evaluate an intermediate response generated by the corresponding agent.
20. The method of claim 15, wherein the two or more agents comprise a first agent and a second agent, wherein the first agent executes after the second agent in the specific order, and wherein an intermediate response of the second agent is provided to the first agent to generate the response output on the user interface.