Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

ADS Momentum optimization help please

Status
Not open for further replies.

eee100

Member level 2
Joined
Nov 29, 2009
Messages
47
Helped
4
Reputation
8
Reaction score
4
Trophy points
1,288
Location
London
Activity points
1,571
Hi,
I am having some problems with optimization in ADS Momentum. I have a filter design in Momentum and it consists of several polygons. I need to optimize some of these polygons but I couldn't figure out how to do it. I searched for it but nothing helpful... When I double click a polygon there is only layer option in the properties window. I cannot came it so I can't make it variable. How can I assign a variable to a polygon? Thanks.
 

What you need to do is called a Momentum Co-Simulation.

In your existing layout, under Momentum, Parameters, add parameters (variables), and assign them as Subnetwork type, with a value. Say you have a stub transmission line that needs to be 30 mils long, so you make a variable called stub_length and give it a value of 30 (no units). In your polygon, you change Length = 30 mils to Length = stub_length mils.

Now, add ports to the in/outs of your circuit, and set up the substrate. Go to Momentum, Create/Update Components (don't recall exactly where it is... middle of the Momentum menu). In that window, define the Momentum simulation parameters.... upper/lower freq, mesh density per wavelength, Edge Mesh on/off, etc, and specify a Look-alike component. When you click OK, ADS will create a Layout Component for this design.

Open a new schematic window, go to the Component library, select your project from the tree, then drag/drop the layout design onto the schematic (the description will be "Layout Component"). You will get a circuit component that looks like your design with red port pins where you placed your in/out ports, and a variable listed by the name called stub_length = 30.

Set up your schematic as you would any other optimization... S-parameter controller, Optim block and goals (make the stub_length value an optimization variable). When you run the sim, the schematic will pick a value for stub_length, open up a temporary ADS layout, mesh the design, solve it, and return the values to the schematic component, which will the be evaluated by the S-parameter block. The optimizer will pick a new value for stub_length, open a new temp layout and repeat the process until the goals are met.
 
Hi enjunear,

Thank you for explaining the solution in detail but I am still having a problem with assigning a variable name to the polygon. When I click the properties of a polygon there is only the layer option and no length. So I can't make it variable. What am I missing? Please see the attached image. I get only this in the properties window, no length adjustment 8-O Thanks.
 

Attachments

  • 1.jpg
    1.jpg
    410.2 KB · Views: 192

you need to draw the polygon, then you can set variables.
 

I have already drawn a couple of polygons...
 

Hi enjunear,

Thank you for explaining the solution in detail but I am still having a problem with assigning a variable name to the polygon. When I click the properties of a polygon there is only the layer option and no length. So I can't make it variable. What am I missing? Please see the attached image. I get only this in the properties window, no length adjustment 8-O Thanks.

The subnetwork variable method works if the object you are adjusting is a layout component, like a TL (transmission line) object, under the Microstrip section of the parts drop-down menu. In this case, since you have a simple polygon, you need to use the other method (not Subnetwork... I forget the name). In that method, you setup the variable name, and a starting value (say, length of the stub). Then it will have to choose the points that ADS will move when a permutation is made (the two endpoints of the rectangle). By showing ADS how to manipulate the points, relative to the number you give it, it can adjust those points when given any value for the variable.

It takes a little playing with to get it just right, but it's pretty straightforward. Hope that helps.
 
My advise is to generaly not use optimization with momentum simulator. Instead, you should buildl the same model at the schematic accurate as possibe (with fringe effects, step objects etc), and concerate your efforts on getting the same reusults for schematic and momentum. You can do some fine tuning by changing Er on schematic components, different Er for each one. Then, when the schematic is exactly like momentum, you should optimize in schematic and then transfer to momentum for final check.
You can also use port tuning method.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top