> On Tuesday, December 07, 2010 10:43:15 Gaston Rodriguez wrote: >> Maybe the solution of my problem is simply ignore the FREQUENCY >> statement in SVF files.. Can this be selected, maybe with a flag, in the >> "svf" command? > > "help svf" says: > jtag> help svf > Usage: svf FILE [stop] [progress] [ref_freq=<frequency>] > Execute svf commands from FILE. > stop : Command execution stops upon TDO mismatch. > progress : Continually displays progress status. > ref_freq : Use <frequency> as the reference for 'RUNTEST xxx SEC' commands > > FILE file containing SVF commands > > does "ref_freq" not do what you need ? > -mike > Not exactly. "ref_freq" is used as a reference frequency to compute the number of clocks for 'RUNTEST xxx SEC' commands, but without changing the "real" cable frequency.
"ref_freq" is useful for example when you use a parallel cable (DLC5), which has a very low TCK frequency (100-300Khz, depending the machine). Suppose a svf file with these instructions: FREQUENCY 4e6 HZ; RUNTEST 1 SEC; The requested operation is: perform 4.000.000 TCKs in 1 second. With a DLC5 cable at 100Khz you really do: 100.000 TCKs in 1 second. This is a dangerous thing, at least programming Actel FPGAs! The programming fail and you may damage the device. Setting "ref_freq" at 1Mhz, the operation is: run 1.000.000 TCKs (in 10 seconds). This is slow but safer. See http://sourceforge.net/projects/urjtag/forums/forum/682993/topic/2167032 for more details. In my current case, setting the cable frequency to 2Mhz (editing the svf line or removing it and using the UrJtag "frequency" command) you get: 2.000.000 TCKs in 1 second. The clocks are fewer but seems to be enough to program Actel devices, and the time waited is the requested. If I let the cable frequency in 4Mhz and set "ref_freq" in 2Mhz the commands performed is: run 2.000.000 TCKs in 0.5 seconds. The programming fails again, and again there is danger to damage the FPGA! For this reason I use the ERASE.svf file for these tests, which seems to be less risky. But... I put a "printf" in the runtest code and I see that despite the "FREQUENCY 4e6 HZ" instruction in the svf file, the real cable frequency is 3Mhz. Using a "ref_freq" of 2.5Mhz the operation is: run 2.500.000 TCKs (in ~0.833 seconds). Maybe some overhead in the USB transfers make this time a little higher, approaching the 1 second needed. I made a little test with ref_freq in 2.5Mhz and seems to work, but I need to test more times to declare victory... In any case this workaround only works if the cable frequency is always 3Mhz. And why the frequency is "only" 3Mhz, since the FT2232H cable maximum TCK frequency is 6Mhz (http://sourceforge.net/apps/mediawiki/urjtag/index.php?title=Cable_FT2232#TCK_Frequency_Setting)? I will researching a little more... Sorry for the long message! Gastón. ------------------------------------------------------------------------------ What happens now with your Lotus Notes apps - do you make another costly upgrade, or settle for being marooned without product support? Time to move off Lotus Notes and onto the cloud with Force.com, apps are easier to build, use, and manage than apps on traditional platforms. Sign up for the Lotus Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d _______________________________________________ UrJTAG-development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/urjtag-development
