myke, On the following points, I agree. Make that a minority of two. Since we are programming all parts to date serially and in-system, I have not addressed some of the programming issues you mention. Doug > ---------- > From: myke predko[SMTP:myke@PASSPORT.CA] > Sent: Wednesday, July 08, 1998 10:01 AM > Subject: Re: ATMEL > > > The AVR is really designed for code development for High-Level Languages > and > such is probably the best 8 bit processor architecture I've seen for it > (again, for the full AVR, not the bastardized 1200). The three 16 bit > index > registers really gives you superior control over data structures. > > A nice feature of the AVR over the PIC is the use of separate interrupt > source vectors (rather than the PIC's one) which follows the 8051 lead. > And, following this lead, some interrupts will have their hardware reset > just by executing the return from interrupt instruction. > > The "true" AVR (not the 1200) has an instruction pointer stack that you > can > access including a "push" and "pop" instruction. With this, you can > implement funky things like RTOSes (which you can't in the PIC). > > NOT EVERY instruction executes in one instruction (clock) cycle; > Instructions can take 1, 2 or 3 cycles. As well, the instruction set is > best described as "quirky"; not all registers can be addressed in > different > instructions or different instructions can take different lengths of time > depending on the instruction that follows. > > The one instruction per clock cycle is something I can take or leave > (having > grown up with 8051s and 8088s I'm used to converting clock cycles to > instruction cycles to actual timings); I find a much more significant > issue > comparing the PIC to the AVR is the different instruction timing; I find > the > PIC much easier to time applications and this also leads to the next > point: > > Where the AVR archictecture falls short of the PIC is in the area of > register I/O (both I/O pin registers and other "SFR"). The AVR is > designed > with three memory spaces (GPR, SFR and SRAM). While *some* of the GPRs > are > bit addressable, none of the Special Function Registers ("SFR"), which > contain the Status Register, Interrupt control, and I/O functions, are > which > means they have to be loaded into the GPR space, manipulated and then > written back. Coupled with the different instruction timing, a PIC > running > at the same speed as an AVR will definitely be able to do Parallel/Bit I/O > faster than an AVR. > > The PIC really is the superior part if you're going to be programming in > assembly language. I found that I could dispense with the instruction > data > sheet very quickly as I was developing applications (especially critically > timed ones). This is not true for the AVR. > > In terms of which is better; EPROM/EEPROM(Flash)/ROM, I've come to the > conclusion that this is not a deciding factor in what is the best MCU. > Now, > for developing applications, I obviously want to have an EEPROM/Flash MCU, > but when I have something going out to customers, I want the cheapest > device > possible and you can talk to Atmel that says Flash is best because you can > update your field population, Microchip that says EPROM is best because > you'll never update the parts in the field can customize the part on the > manufacturing line rather than have to buy a large number of ROMed parts > and > Motorola (and others) that says ROM is best because it's always cheapest. > Pick which is best for you. > > I was really disappointed in the AVR simulator and Assembler (especially > compared to MPLAB); it does allow you to input data (ie buttons or > Stimulus > Files). They really don't measure up to the Microchip products in term of > features. I found the Assembler to quite feature poor as well compared to > MPASM (although this may change in the future). > > I've voiced these concerns before (on Kalle's Atmel list) and told that > I'm > in a minority of one, but here they are for what they're worth. > > myke > > This week in myke's Book Room: "Point of Honor" by Maurice Medland. > > http://www.myke.com/Book_Room >