6502.org
http://forum.6502.org/

[67] Cycles Per Second
http://forum.6502.org/viewtopic.php?f=7&t=324
Page 1 of 1

Author:  PointyDesmo [ Mon Sep 11, 2000 4:28 pm ]
Post subject:  [67.1] Cycles Per Second

Hello!
I have a question I'm hoping that someone can answer. In the NES, the 6502 is clocked at 1.7897725 MHz. What I was wondering was how many clock cycles the 6502 takes for instruction fetches and so forth, and my ultimate question is how many cycles per second would this configuration be able to execute?

Author:  tm314159 [ Sat Apr 21, 2001 2:36 am ]
Post subject:  [67.2] Cycles Per Second

You really need to look at the definition of "Mhz" because you seem to be seriously misunderstanding something.

Toshi

Author:  GARTHWILSON [ Sat Apr 21, 2001 4:04 am ]
Post subject:  [67.3] Cycles Per Second

I would encourage communication that's gracious and helpful to those who are new at this. POINTYDESMO was no doubt trying to translate the figure he had into MIPS, and compare to what the actual hardware limit might be.

My rule of thumb is that 6502 MIPS is generally 1/4 of the clock frequency in MHz. This will vary, depending on what you're doing. 6502 MIPS are worth more than most other 8-bit processors' MIPS though. I have developed some products with PIC microcontrollers, and find that the processor core in the PIC generally takes twice as many clocks to do a job as a 6502 takes, if the job is small enough that the PIC can do it at all. Both are available in 20MHz. My now possibly outdated info says that WDC has a licensee running a W65C02SB-type core at 50 MHz. This means an interrupt latency of 140ns, not including time to finish the current instruction.

By the way, a relatively new part of the www.6502.org website has a detailed set of information on 6502 instructions. These cover the old NMOS versions, but not any of the CMOS, which have more instructions, bugs fixed, and quirks removed. As I looked through it, it reminded me again why I don't use the NMOS types. There is one part though that needs correction: It says that a bus cycle is two clock cycles' time, and that where the data sheet says an instruction takes two cycles, it's actually four clock cycles. This is not the case. All the instructions take two to seven actual clocks. For example, at 1MHz, LDA # takes 2us. Commodore briefly made a 10MHz 65CE02 in the late 80s that actually had about 30 op codes that executed in a single clock, ie, 100ns @ 10MHz.

Garth

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/