LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple interfaces or not?

First off, let me  note that I am a relative newbie in LabView and Test&Measurement Automation.

 

I've work with LabView during my study. Now I'm doing a project (for graduation) which contains designing a lab bench setup for Mixed Signal integrated circuit design verification. 

I'd like your opinion on what I should use  

 

I need to have 4 interfaces from a PC to other hardware.

1.  First I need a test-control interface, to put the IC's in certain test mode. This could be e.g. JTAG interface, but might aswell be a other type of serial interface such as I2C or SPI.

2. Next to that I need a interface for indirect data access, which means that I want to shift in data serially into the internal registers of the IC, this again can be done through  a serial interface such as JTAG, SPI, I2C.

3. Then I need an interface for direct data access. This would be multiple digital IO's.

4. Finally I need instrument control to control and acquire data from and to scopes, digitizers, waveform generators etc..

The digital IO's would be used as digital waveform generators.

 

Next to the above the cost must stay low (let's say prefferably below 5k)

 

Do you think I should implement all interfaces seperatly? Or are there ways to combine a couple of things?

I'm thinking about something like a combination of GPIB for instrumentcontrol, with e.g. USB-8451 for the serial interfaces, and a simple DAQ device or DIO for the direct data acces?

Will multiple devices on the same bus work simultanious? (eg. GPIB on one USB port & DIO on another USB port) 

 

Have you got any suggestions?

 

Next to this question, can someone explain the difference between a modular digitizer/ waveform generator and a DAQ device, is the difference that you cannot use the modular digitizer stand-alone or something like that?

 

 

 

0 Kudos
Message 1 of 7
(4,357 Views)

How many digital I/O lines would you need?

How simultaneously do you need the various devices to work? I know from my work on digital testers that some tests need to have a bunch of signals that transition on the same edge, not too much of a problem if you are allowed to "setup" a GPIB instrument that will auto-trigger on the UUT's signal transition. As to whether multiple USB devices can be used at the same time, but then we have the definition of "simultaneously". Under Windows they won't be truly simultaneous, which depending on what you need to do may, or may not, be an issue. If you have GPIB based instruments available that might be the path to follow, but in the industry they are starting to fade away (not yet gone though), being replaced to some extent with LAN enabled devices.

Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



0 Kudos
Message 2 of 7
(4,322 Views)

Just for visualization... I'm still studying the test concepts so I don't have a 100% clear picture of what I want...

 

Let's say I want to be able to test e.g. a 10-bit DAC. So I would need a 10bit wide digital bus then. The output can be monitored on a scope (connected through GPIB). Simultanious I must be able to control the clock for this DAC.

 

For the simultanious USB usage:

Picture a setup for measuring an 10bit ADC.

Let's say I want to provide a 10MHz clock to my chip, through a USB to JTAG interface (on the TCK pin). At the same time I want to provide an analog waveform to the DAC (can be by external synthesyzer, connected through GPIB). And I want monitor the output channels (10bit wide bus) of the DAC. That would mean I have use the USB bus to control the clock, simultanious with capturing output data and controlling GPIB.

 

The main priorities in my Lab setup will be (in order of importance):

1. Test control (through JTAG, I2C, SPI or other serial mode with clocks ranges from 1-70MHz).

2. Capture and control of serial digital signals (through JTAG, I2C, SPI or other serial mode with clocks ranges from 1-70MHz).

3. Capture and control of parallel digital signals (through general purpose digital IO, let's say 16 bit's wide)

4. Capture and control of analog (synthesised) signals, with clock synchronisation for the DSP hardware.  

0 Kudos
Message 3 of 7
(4,300 Views)

Maybe I should limit myself to the most important part of my system.

 

How would you realize the JTAG/I2C/SPI/serial data interface.

 

I2C must be able to run in high speed modes (400k, 3.2M), JTAG and SPI andpreferrable need a high speed clock (50-100MHz) but I think we can limit it to lower speeds (1-10MHz), under investigation. Serial data (digital waveforms) Must be at similar speeds as JTAG/SPI.

 

Let's say the rest of the system will be through excisting GPIB equipment. 

 

I see the following options myself:

-Buy a FTDI 2232 chip and build the interface myself

-Buy some "of the shelve" solution (e.g. corelis usb-1149.1/e)

-Buy NI hardware --> which hardware is suitable for this? Can I do this (with limited speeds) with for instance NI-USB 6501, or do I need to go to NI PCIe-6535 or more expensive solutions?

And the NI PCIe-6361 (daq), can I implement I2C/JTAG/SPI on this?

 

As far as I can judge now, the PCIe-6535 is the most suitable because of the output voltage selection for digital, the 6361 would be a more complete system solution, but can I implement JTAG/I2C/SPI protocols on both of these? Does NI have software (LabView) components for this?

0 Kudos
Message 4 of 7
(4,271 Views)

Hello 0AintLifeGrand0,

 

Thank you so much for your post on our webforum. In your last post you wrote about a USB 6501, the speed of this device is depending on your PC; the digital IO is software timed. Did you already noticed the USB 8451 interface USB 8451 I2C, SPI and SMBus  interface?

This is one solution, a Labview API will be delivered with this device.

Another flexible solution will be FPGA, you have the advantage of off the shelf hardware which you can configure for your own purposes using the Labview FPGA module (please notice that this is a separate module). You can add the rest of your application to this IP and use only one piece of FPGA hardware, this can be PC based or other FPGA targets.

But I can highly recommend to contact your local branch office to look which solution is the best for your project.

 

Best regards,

Martijn S
Applications Engineer
NI Netherlands
0 Kudos
Message 5 of 7
(4,240 Views)

Hi Martijn,

 

Yes I noticed the USB8451, but I also noticed that this only supports I2C until up to 250kHz. I need I2C at 3.2M (the highest I2C speed) for bus verification. Also this device doesn't support JTAG.

What is the advantage of the FPGA above for instance the PCIe-6361.

The PCIe-6361 has hardware timed dig. IO up to 10MHz, regular dig. IO, analog IO, relatively high speed counters/Timers, triggering options, etc...

So a very flexible complete system solution I would say.

I think for my situation this would be more suitable (also keeping the budget in to mind) then an FPGA module-based solution

 

So I guess I can implement JTAG/SPI/I2C on this device through software, can't I??

0 Kudos
Message 6 of 7
(4,211 Views)

Hello 0AintLifeGrand0

 

I found this KB about implementing I2C, SPI and JTAG with DAQ and or DIO devices. Please notice that there is a limitation with recognition and response of your device. In the end the FPGA solution is most flexible because you are implementing your application at the hardware level. However from cost percpective it is more expensive and please keep in mind that it is also a time investment to program the FPGA.

Again I can reccomend you to contact one of our sales engineers to look what solution is best for you.

 

Best regards,

Martijn S
Applications Engineer
NI Netherlands
0 Kudos
Message 7 of 7
(4,209 Views)