ERC32 System Registers
john at gaisler.com
Thu Aug 26 12:18:05 UTC 2004
My guess would be that you, somewhere in your crc-routine, are trying
to do a Byte or half-word store access, which is not allowed on the
erc32 system registers.
Maybe declaring sysreg as (unsigned32*)would help?
Only 32-bit store accesses are allowed on erc32 system registers.
Carlos Bruno Silva wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> I'm trying to calculate the CRC of the Erc32 System Registers
> These registers are mapped in memory through the adresses like the one
> First I tried using the same technique I used to do the memory CRC, that
> was to pass the adress to my CRC calculation routine, and the length of
> it in bytes.
> Since it is a 32bit registers, I passed somehing like this:
> crc_sys_regs=binhex_updcrc(0,sysreg, 4);
> and for the second register, feeded back the value:
> crc_sys_regs=binhex_updcrc(crc_sys_regs,sysreg, 4);
> and so on.. and so on...
> But this way, when I run the program I get a trap number 9.
> Also tried to do this in Assembly, by loading the content of the adress
> 0x01f8000 to a register... but it gives a relocation overflow.
> Maybe all this troubles are because of this registers being mapped in
> memory, but not really in memory...
> Has anyone ever tried to do something like this? With success preferably?
> Carlos S.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.1 (GNU/Linux)
> Comment: Made with pgp4pine 1.76
> -----END PGP SIGNATURE-----
More information about the users