avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-gcc-list] simulator


From: Jesper Hansen
Subject: Re: [avr-gcc-list] simulator
Date: Mon, 1 Oct 2001 23:12:53 +0200

It's a different CPU, but just for comparison, my Nascom (Z-80) emulator
runs an emulated Z-80 at approx. 60 MHz on my 1.1GHz Athlon, including
the emulation of various hardware ports and 48*16 character screen circuitry
refreshing at about 50 Hz.
I'd guesstimate it would run the AVR instruction set at 10+ MHz.

/Jesper
http://www.myplace.nu/nascom


----- Original Message -----
From: "Theodore A. Roth" <address@hidden>
To: <address@hidden>
Sent: Monday, October 01, 2001 9:42 PM
Subject: Re: [avr-gcc-list] simulator


> Ok, I just did a simple test to see how fast my simulator is. I am only
> getting about 250 instructions per second. I doubt this would be
> acceptable.
>
> I'd only been running very simple short programs before so I didn't really
> notice how slow it is. I might be able to speed it up some, but it doesn't
> look like it can help much. Looks like it's time for C.
>
> What is the minimum inst/sec that would be satisfactory?
>
> Ted Roth
>
>
>
> Here's the asm program I ran through it (2964 inst in 12.28 seconds on my
> PPro 180):
>
> .device         AT90S8515
>
> .include        "8515def.inc"
>
> .cseg
>         rjmp    MAIN            ; reset
>         nop                     ; int0
>         nop                     ; int1
>         nop                     ; timer1 capt
>         nop                     ; timer1 compa
>         nop                     ; timer1 compb
>         nop                     ; timer1 ovf
>         nop                     ; timer0 ovf
>         nop                     ; spi, stc
>         nop                     ; uart, rx
>         nop                     ; uart, udre
>         nop                     ; uart, tx
>         nop                     ; ana_comp
>
> MAIN:
>     ;; init stack pointer to 0x025f (the last byte of int sram)
> ldi r16, $5f ; low byte of end
> of int sram
> out SPL, r16
> ldi r16, $02 ; high byte of end
> of int sram
> out SPH, r16
>
> ldi r16, $0f ; initialize outer
> loop counter
>
> LOOP1:
> cpi r16, $00
> breq DONE
> dec r16
> rcall INNER
> rjmp LOOP1
>
> INNER:
> ldi r17, $2f ; initialize inner
> loop counter
>
> LOOP2:
> cpi r17, $00
> breq REPEAT
> dec r17
> rjmp LOOP2
> REPEAT:
> ret
>
> DONE:
> nop
>
>
>
> _______________________________________________
> avr-gcc-list mailing list
> address@hidden
> http://avr.jpk.co.nz/mailman/listinfo/avr-gcc-list




reply via email to

[Prev in Thread] Current Thread [Next in Thread]