The JTAG port clock and Flash clock are totally different clock source. For the Jtag port clock, as you know, the JTAG signals consist of Reset, TMS, TDI, TDO, TCK, the TCK signal is the JTAG clock, the so-called 8KHz JTAG clock is the TCK clock, the TCK is an input pin for DSC, external source should drive the pin.
The flash operation also needs clock, in general, the divider of bus clock can be the Flash clock FCLK, in order to operate properly, the FCLK should range from 150KHz to 200KHz. I suppose you use Codewarrior for DSP56800/E ver8.3 tools, pls refer to the directory: C:\Program Files (x86)\Freescale\CodeWarrior for DSC56800E v8.3\M56800E Support\initialization, for example, open the 568346_flash.cfg, there is the line in the file:
| # set_hfmclkd | 0x14 | # if no ALS |
| set_hfmclkd | 0x0A | # if ALS (best flash freq spec) |
when CW tools download code, the PLL is not used, the external clock source is 8MHz, bus clock is 4MHz, the driving flash clock is 2MHz, DIV=0A, which means that the FCLK is 2MHz/10=200KHz.
when downloading code to flash, the CW has to erase the flash, program the flash, the two operation is time-consuming, so increasing JTAG clock TCK frequency has limited effect to fast downloading. Because the erasing/programing flash determine the downloading time.
BTW, FMCLKD register can only be written once after Reset.
Hope it can help you.
BR
Xiangjun Rong