does anyone know the clock cycle for the 84se?
Visit Calccrypto for info on crypto
does anyone know the clock cycle for the 84se?
uhh… what do you mean?
8000 mhz ^ -1 = 1 clock
oh… im inept with computer terms
wait… that means 1/8000 cycles per second = 1 clock
I think you meant just 8000 mhz
8000 thousand clocks per second.
(If i have my facts straight)
the processor operates at 8000 MHZ
10^6 = Megahertz = MHz (wikipedia)
thus, 8000000000 clocks per seconds (= 8*10^10)
about 8*10^9 instructions per seconds (asembly langauge)
thats alot o_O
edit: you measure programs by their frames per second
Not all programs are games, darkstone. Also, instructions are not cycles; instructions often take several cycles.
Anyway, the 84+SE runs at 15MHz, and the 83+ runs at 6MHz.
It is 6MHz for the TI-83+, the TI-83+SE, TI-84+, TI-84+SE can be set to 6MHz (which is what the OS defaults to for ASM programs, to maintain forward compatibility with old programs on new calcs), but they also have 15MHz ability which is what BASIC programs, and graphing are run at.
How do you calculate MHz and convert it to seconds? (I'm new to computer programming.)
Coffee + Radiohead = ^^
When we say 1MHz, it means the CPU goes through 1 000 000 clock cycles per second. A "clock cycle" does not refer to a lock that a layman might bring to mind, but I'm not sure of how best to describe (it is best if you understand hardware or assembly).
I'll try this:
In assembly, there is an instruction "ld hl,**" where ** is a 2-byte immediate value. In hexadecimal this is 21**** and takes 10 clock cycles to execute (it basically does ****→HL) However, "ld h,l" which is 65 in hexadecimal takes only 4 clock cycles (it is basically L→H, but please don't confuse this as meaning the BASIC variables). So what you can do, for example, is find the timings of certain routines, like this:
DE_Times_A: ;Inputs: ; DE and A are factors ;Outputs: ; A is not changed ; B is 0 ; C is not changed ; DE is not changed ; HL is the product ;Time: ; 342+6x ; ld b,8 ;7 7 ld hl,0 ;10 10 add hl,hl ;11*8 88 rlca ;4*8 32 jr nc,$+3 ;(12|18)*8 96+6x add hl,de ;-- -- djnz $-5 ;13*7+8 99 ret ;10 10
The z80 processor is pretty neat, but there are more advanced processors such as the eZ80 which flat-out shames the 30 years outdated processor that TI uses. For example, on the z80, instructions have different clock cycle timings (t-states). On the eZ80, they are all 1-cycle, so that multiplication routine would take (I believe) 39 t-states. On top of that, it runs at 25MHz and I think it can be clocked up to 50MHz, so it would run about 60 times faster than the z80 in most circumstances. Since the eZ80 can be used in place of the z80 (in other words it has a backwards compatibility mode that has the same instructions as the old z80), you could theoretically replace the z80 in the calcs, if it wasn't for a few issues:
1) TI actually manufactures a slightly altered processor, so it could break some routines.
2) TI uses very slow LCDs, so graphics wouldn't get much better, except that you could do a ton of math while waiting to write the next byte to the LCD to make more advanced graphics (500 t-states of one cycle instructions that you need to wait for to write each of the 768 bytes to the LCD? You could make some amazing 3D rendering.)
3) Your batteries would run out faster.
4) It has 24-bit addressing instead of 16-bit. You would be limited to the 64KB though, because of how TI handles their memory banks. You would forever know that you could be using 16MB of RAM instead of 24KB.
Would it be at all possible to get an ez80 processor and clock it down to the same as the 84 so that the battery life is extended?
I guess you could, but think about this:
Much of assembly is devoted to computations and algorithms. To run a computation, it doesn't really matter what speed you are running the processor at in relation to battery drainage. If you clock it down, it uses less energy, but takes longer. If you clock it up, it takes more energy, but is done faster. However, if it was just the processor being powered, that wouldn't be an issue. But there are other peripherals that require energy such as the LCD, link ports, and keyboard, among other things. Those won't be affected by the processing speed, so the longer they are left on, the more energy they take up. In the end, a faster processor is better.
Well, except for one other problem: idling. When you are on the homescreen, not pressing any buttons, watching the cursor blink, basically, you don't want the processor running at full speed, consuming your battery power. Unfortunately, many assembly games and routines do this instead of using a special z80 instruction called HALT. This will slow the processor down by executing a routine 140 times per second (when normally it could run many thousands of times per second). The HALT works on a timer as opposed to how fast the processor is, so regardless of whether the processor is at 15MHz, 6MHz, or 25MHz, it will fire about 140 times per second. Since the OS uses the HALT instruction, it would still maintain some efficiency with preserving battery life. The place it wouldn't be preserved is in assembly graphics routines that would be waiting for the LCD to respond.