Re: Potential Contributions

From: David Miller <David.L.Miller_at_.....>
Date: Fri Jan 26 2007 - 13:08:27 PST
Oh yes, I agree that it will error during simulation and is not 
something that I will detect in the compiler. But since it will error it 
shows why potential contributions do not accumulate across analog processes.

Cheers...
Dave

peter_liebmann@agilent.com wrote:
> The example below should cause a simulation error, not a verilog_a compile error.
>
> PeterL
>
> -----Original Message-----
> From: owner-verilog-ams@server.eda.org [mailto:owner-verilog-ams@server.eda.org] On Behalf Of David Miller
> Sent: Friday, January 26, 2007 12:54 PM
> To: verilog-ams@server.eda.org
> Subject: Re: Potential Contributions
>
> Hi Peter,
> Okay my example was misleading.
> I'll try this.
> module parent();
>     electrical a,b;
>     ground b;
>     child #(.POT(5)) ch1(a,b);
>     child #(.POT(10)) ch1(a,b);
> endmodule
> module child(p,n);
>     electrical p,n;
>     parameter integer POT = 0;
>     analog begin
>        V(p,n) <+ POT;
>     end
> endmodule
>
> Is this an example of why potential contributions do not accumulate 
> across analog processes? Since here I expect simulator to error, not 
> tell me potential diff between a,b is 15?
>
> Dave
>
> peter_liebmann@agilent.com wrote:
>   
>> The following example:
>>
>> module bb();
>>     electrical a,b;
>>     branch (a,b) br1;
>>     analog begin
>>        V(a,b) <+ 5;
>>        V(br1) <+ 10;
>>     end
>> endmodule
>>
>> will produce an error in simulation BUT, for example, 2 resistors in parallel may be written as:
>>
>> module bb();
>>     electrical a,b;
>>     branch (a,b) br1;
>>     analog begin
>>        V(a,b) <+ I(a,b)*Res1;
>>        V(br1) <+ I(br1)*Res2;
>>     end
>> endmodule
>>
>> which is legitimate.
>>
>>
>> Therefore the general syntax of the 1st example should be allowed and the simulator should recognize it as an error rather then a Verilog_a compiler.
>>
>> Peter Liebmann
>>
>> -----Original Message-----
>> From: owner-verilog-ams@server.eda.org [mailto:owner-verilog-ams@server.eda.org] On Behalf Of David Miller
>> Sent: Friday, January 26, 2007 12:06 PM
>> To: Martin O'Leary
>> Cc: Kevin Cameron; Verilog-AMS LRM Reflector
>> Subject: Re: Potential Contributions
>>
>> I thought that potential contributions definitely did not accumulate 
>> across analog processes. They only accumulate within the same analog 
>> block between the same unique branch.
>>
>> so
>> module bb();
>>     electrical a,b;
>>     branch (a,b) br1;
>>     analog begin
>>        V(a,b) <+ 5;
>>        V(br1) <+ 10;
>>     end
>> endmodule
>>
>> does not result in an potential difference between (a,b) of 15, but 
>> rather an error as the potential difference between the nodes (a,b) is 
>> not the same for all parallel branches.
>> Is this correct?
>>
>> So if OOMR branches result in a unique parallel branch between the two 
>> circuit nodes then the following should error.
>> module bb();
>>     child ch1();
>>     analog V(ch1.a,ch2.b) <+ 5;
>> endmodule
>> module child();
>>     electrical a,b;
>>     ground b;
>>     analog V(a,b) <+ 10;
>> endmodule
>>
>> If however OOMR branches simply used the existing branch in module 
>> child, then the value would accumulate with a potential difference of 15 
>> across the two nodes a and b.
>>
>> Dave
>>
>> Martin O'Leary wrote:
>>   
>>     
>>> No - my understanding is that they do accumulate.
>>> Thanks,
>>> --Martin 
>>>
>>> -----Original Message-----
>>> From: owner-verilog-ams@eda.org [mailto:owner-verilog-ams@eda.org] On
>>> Behalf Of Kevin Cameron
>>> Sent: Friday, January 26, 2007 11:29 AM
>>> To: Verilog-AMS LRM Reflector
>>> Subject: Potential Contributions
>>>
>>>
>>> There seemed to be a little confusion about how potential contributions
>>> combine from multiple analog processes. 5.3.1.2 says contributions
>>> accumulate (for flow and potential), but my understanding is that only
>>> applies within the analog block for potential, i.e. potential
>>> contributions do not accumulate across analog process. Is that agreed?
>>>
>>> Kev.
>>>
>>> --
>>> This message has been scanned for viruses and dangerous content by
>>> MailScanner, and is believed to be clean.
>>>
>>>
>>>   
>>>     
>>>       
>>   
>>     
>
>
>   


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Fri Jan 26 13:08:54 2007

This archive was generated by hypermail 2.1.8 : Fri Jan 26 2007 - 13:08:56 PST