Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

Re: Re: [AVR-Chat] Errors in manuals ...

2005-09-01 by Thomas Keller

On Thu, 2005-09-01 at 09:28 -0500, David Kelly wrote:
> On Thu, Sep 01, 2005 at 09:03:53AM -0500, Thomas Keller wrote:
> >   Now, perhaps itmight be argued that thery could have considered
> > modifying the I/O addressing instructiosn to also access this
> extended I/O space, but if I read the data sheet correctly, this would
> have involved making them take longer to execute (having to read an
> > additional byte to obtain the longer addresses).
> To do so Atmel would have had to modify the instruction set. An opcode
> on the AVR is 16 bits. The "argument" is embedded within those 16 bits
> for SFR codes.

  Yes, that was part of my point.

> Its not just a matter of an additional byte, all instructions are
> multiples of 16 bits. Flash is actually 16 bits wide (page 16 of
> ATmega64), but byte addressable. The program counter counts 16 bit
> words, not bytes. If you look at a disassembly such as generated by
> avr-objdump byte addresses are listed. But look into the opcodes and
> one has to double the value to find the disassembled listed value.

  Yup.  I misspoke, I did know this.  You are quite right.

> The 64 address range for SFRs is more heavily ingrained than you
> suspected.

   I dunno abou tthat, but it is certtainly heavily ingrained, anmd as I
pointed out, I think that ultimately, the Atmel decision on how to
handle it was the correct one.

Tom

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.