On Mon, Jul 11, 2011 at 1:10 PM, Drasko DRASKOVIC <[email protected]> wrote: > On Mon, Jul 11, 2011 at 12:52 PM, Øyvind Harboe <[email protected]> > wrote: >> On Mon, Jul 11, 2011 at 12:45 PM, Drasko DRASKOVIC >> <[email protected]> wrote: >>> On Mon, Jul 11, 2011 at 11:53 AM, Øyvind Harboe <[email protected]> >>> wrote: >>>> I think there is a fundamental misunderstanding about JTAG >>>> and OpenOCD. >>>> >>>> Let me try to clarify: >>>> >>>> JTAG clocks in and out bits, not bytes, so the concept of >>>> "big/small-endian" does not enter the picture at the JTAG level. >>> >>> Sat that we have 0x12345678 at addr 0x0 on LE host. >>> You will shift out byte 0x78 first, shifting out from LSB upwards. >> >> You're on the wrong track here. Shifting out happens with *bits*. > When I said LSB I meant Least Significant *Bit*, not *Byte*. > >> >> So the situation is: >> >> - you have a host word. 8, 16, 32 or 64 bit wide. >> - that word must be copied over to an array of bytes to be shifted out. >> At this point any memory of host representation is gone. >> - the jtag layer now shifts out the bits, starting with bit 0 in byte 0. > What is byte 0 for you ?
An array of bytes as an unambiguous representation in memory and C programming model. When I say byte 0 of an array of bytes, there is no question about what that is. OpenOCD shifts out an array of bytes LSB first. -- Øyvind Harboe - Can Zylin Consulting help on your project? US toll free 1-866-980-3434 / International +47 51 87 40 27 http://www.zylin.com/ _______________________________________________ Openocd-development mailing list [email protected] https://lists.berlios.de/mailman/listinfo/openocd-development
