The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Apr 19th, 2024, 12:44pm
Pages: 1
Send Topic Print
Parallel computation in Verilog-a (Read 3631 times)
Sitansu
New Member
*
Offline



Posts: 5

Parallel computation in Verilog-a
Sep 19th, 2016, 4:22am
 
Can I use fork-join statement in verilogA?
I want to compute following statements  simultaneously as they are independent of each other .  Can I use fork-join statement or is there any other way to compute them in parallel?

I20= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,i2);      
I30= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,i3);      
I40= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,i4);

Charge2= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,Cap_2);      
Charge3= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,Cap_3);      
Charge4= $table_model(v20,v30,v40,v2_pt,v3_pt,v4_pt,Cap_4);      
Back to top
 
 
View Profile   IP Logged
Geoffrey_Coram
Senior Fellow
******
Offline



Posts: 1998
Massachusetts, USA
Re: Parallel computation in Verilog-a
Reply #1 - Sep 19th, 2016, 10:05am
 
No, I've never seen fork-join used in analog.  Is the table model that expensive to evaluate?  (Are you missing the table model data source?)

The only way to get them in parallel, I think, is to split them into three separate modules and expect the simulator to evaluate them in parallel.
Back to top
 
 

If at first you do succeed, STOP, raise your standards, and stop wasting your time.
View Profile WWW   IP Logged
Sitansu
New Member
*
Offline



Posts: 5

Re: Parallel computation in Verilog-a
Reply #2 - Sep 19th, 2016, 10:16pm
 
Yes, table model is very expensive to evaluate. Time taken by table method is found to be 10 times more than expected value. I had already checked with three separate module, but that didn't help me.
Back to top
 
 
View Profile   IP Logged
Geoffrey_Coram
Senior Fellow
******
Offline



Posts: 1998
Massachusetts, USA
Re: Parallel computation in Verilog-a
Reply #3 - Sep 20th, 2016, 5:31am
 
I would check with your simulator vendor to see if their R&D group can look at why the table model is so expensive.  Eg, maybe they're re-opening the file every time (not likely, but that would explain the issue).  Maybe they've never seen a 7-dimensional table, and they optimized for 2- and 3-d tables.
Back to top
 
 

If at first you do succeed, STOP, raise your standards, and stop wasting your time.
View Profile WWW   IP Logged
Sitansu
New Member
*
Offline



Posts: 5

Re: Parallel computation in Verilog-a
Reply #4 - Sep 20th, 2016, 11:15pm
 
Someone earlier had also asked in this forum "Why $table_model is taking more time to solve in cadence spectre"?
It is three dimensional data. not 7d. First three columns represents bias points of three different terminals, next three column represents bias point stores in table and last column is the parameter to be calculated.
Back to top
 
 
View Profile   IP Logged
Geoffrey_Coram
Senior Fellow
******
Offline



Posts: 1998
Massachusetts, USA
Re: Parallel computation in Verilog-a
Reply #5 - Sep 21st, 2016, 8:20am
 
Can you make the call take only 3 inputs, if it's really only 3d?  That could make a big difference in the time to evaluate the $table_model.  If you make the last argument a constant instead of a variable, that might also help (the simulator may have to build all the tables in case the value of the last argument changes).
Back to top
 
 

If at first you do succeed, STOP, raise your standards, and stop wasting your time.
View Profile WWW   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.