Ticket 333077: "Support Form: IMPORTANT: Tiny2313, Tiny13, Tiny25 new silicon errata found"
By: MBedder@mbedder.gov Posted: July 15 2008, 10:20 am Status: Closed
Part Number: Development Tool:
Message added by Ivar Holand, 18.07.2008 10:27
Dear Sir,
Once a request is answered it is always closed, then when the customer answer it is automatically re opened again.
By using your program I am not able to recreate this issue with either ATtiny2313, ATtiny23 or ATtiny25. They all behave they way they should regardless of the clock frequency or if the CKDIV8 fuse is enabled or not. And I see no jitter at all. I have attached a screen shot from my measurements.
Best Regards,
Ivar Holand
AVR General Support
Atmel Technical Support Team
---------------------------------------------------------------------
Attachments
print_002.bmp
Message added by Mr MBedder, 17.07.2008 14:10
Dear Mr. Holand,
Please find attached the thorougly commented code example. I have emailed the same to avr@atmel.com earlier today. BTW, I wonder why my request is now marked as "closed"?
Best regards
MBedder
Attachments
PORT.ASM
Message added by Ivar Holand, 17.07.2008 8:05
Dear Sir,
This was a strange issue that I have never seen before. Are you able to send me a small program that runs on one of the microcontrollers that recreates this issue, so that I can take a closer look at this?
Best Regards,
Ivar Holand
AVR General Support
Atmel Technical Support Team
---------------------------------------------------------------------
Message added by Mr MBedder, 16.07.2008 16:06
Update: further researches have shown a dependency of the above issue on the BODLEVEL setting - with the BOD turned off (BODLEVEL = 7) everything works as expected. Looks like this is somehow related to the WDT as well - like it refuses to be turned completely off (of course the WDTON fuse was set to unprogrammed state and a correct WDT turnoff routine was implemented). The issue has been discussed online and confirmed by several independent researchers
Message added by MBedder, 15.07.2008 10:20
Family : AVR® 8-Bit RISC
OtherPartNumber :
Part_no : ATtiny2313
Name : MBedder
Title :
Company : Private
City :
Street :
State :
Country : Russia
Postal_Code : 123456
Phone : +74951111111
Fax :
Site :
Email : MBedder@mbedder.gov
Problem : IMPORTANT: Tiny2313 Tiny13 Tiny25 new silicon errata found
Details : Hi,
Doing a routine byte wide port output on Tiny2313 I encountered a serious error. The port output does not work properly unless at least 8 NOPs are inserted between two consequent byte port output commands. I have observed this behaviour every time when a number of 1s in a byte is 2 or more - a single 1 per byte works as expected. Of course the DDRx are configured properly. A primitive test code snippet is as follows:
ldi r16,0xAA
ldi r17,0x55
foo: out PORTB r16
nop ; No further port change occurs unless 8 NOPs inserted
out PORTB r16 ; 7 more nops here
out PORTB r17 nop ; No further port change occurs unless 8
NOPs inserted
out PORTB r16 ; 7 more nops here
rjmp foo
Same problem was detected on Tiny13 and Tiny 25 which I have found in my lab. The same code runs properly on 90S2313 Mega88 Mega2561. Please inspect and advise.
Best regards,
MBedder