Ashish,
As Paul was saying, in order to get a finer placement of edges, you will need to oversample, or overgenerate your signal. You should set the rate of your waveform to the maximum rate that your board can read/write, or an integer multiple of the finest edge. For example, if you want 10ns placement of edges, set your rate to be 100MHz. You can then place edges with 10ns resolution. If you require an edge at 10ns, and another at 12ns, you will need to utilize data delay, as Paul mentioned. In order to set the data delay on a per-channel basis, you will need to save the signal you created in the Digital Waveform Editor, and use LabVIEW, or another language, to use the HSDIO API. The express VIs and Signal Express allow you to adjust the data delay for all channels, but you can't select individual channels. Also, with the API, you can select individual channels to sample on the rising edge, falling edge, and with a certain amount of delay, so you effectively have two delays. One is half of the period of your clock, and the other is an adjustable fraction of the period. So if you are using a 100MHz clock, you can get samples at 0ns, 5ns, and somewhere between 0 and 10ns.
I would recomend taking a look at some of the data delay examples in the example finder since you will probably need them to produce the signal you want.
Actually, it might be helpful if you could also post the signal that you want to generate. Since the DWE is hardware independent, you can select a very high clock rate and place your edges where you want. Once you have done this, it would be easier for us to help you determine what channels need to be delayed and by how much. It may not be possible to generate the signal using a single board, depending on how fine your edge placement needs to be.
Brian Coalson
Software Engineer
National Instruments