Sunday, June 30, 2013

What is Command Processing Time?

Hello everybody,

We have a new intern here at Agilent Power & Energy HQ named Patrick.  Gary, Patrick, and I have been having a philosophical debate on what the term command processing time means.  This is a very important number for many of our customers since it tells them what kind of throughput they can get out of our test equipment.  A fast command processing time allows you to reduce your test times and therefore increase your throughput.  The question that we have been debating is:  what is command processing time and how can we measure it?  We have been discussing three scenarios.   Let’s go through them.

The first option is the amount of time that it takes the processor to take one command off the bus so that it can get to the next command.  This tells you how quickly you can send commands to the instrument.  The only issue with this is that some instruments have a buffer so it is not actually “processing” the command, just bringing it into the buffer and letting you send the next command.  Obviously this is useful but it really does not address the throughput question.  This is pretty easy to test by sending a command in a loop and timing it.  You record the time before the command is sent and the time after the loop and then divide by the number of loops you executed.  This would yield a pretty good approximation of the time.

The second option is the amount of time from when the instrument receives a command until it starts performing the action.  I believe that this is what we list in our manuals for the Command Processing Time Supplemental Characteristic.  This does address the throughput issue.  This is also easy for us at Agilent to measure.  We have a breakout for GPIB that allows us to monitor the attention line.  The test that we did was send a VOLT 5 to the instrument.  We looked at the GPIB attention line.  The time from when the attention line toggles until the power supply starts slewing the voltage up would be our command processing time (measured with an always awesome Agilent Oscilloscope).  This is what I consider to be the command processing time.

The third option includes what I spoke about in the last paragraph but also includes the slewing of the voltage.  The processing time would be the time that it takes to take the command and complete all the actions associated with it (for example settling at 5 volts after being sent a VOLT 5 command).  I do not think that this is a bad option but we have a Supplemental Characteristic for voltage rise time that addresses the slewing of the voltage.   The test method would be the same as above using an oscilloscope but watching for where the voltage settles at five volts.


What do you, our readers and customers think the correct interpretation of command processing time is?  Also, please stay tuned for a future installment where we try to figure out what the quickest interface is: LAN, USB, or GPIB.  

No comments:

Post a Comment