Re: Painless micro program



On May 20, 7:03 am, krw <k...@xxxxxxxxxx> wrote:
In article <1179633027.463343.192...@xxxxxxxxxxxxxxxxxxxxxxxxxxx>,
kensm...@xxxxxxxxx says...

On May 19, 5:54 pm, krw <k...@xxxxxxxxxx> wrote:
In article <1179616199.332790.162...@xxxxxxxxxxxxxxxxxxxxxxxxxxx>,
kensm...@xxxxxxxxx says...
[... CDP1802 ...]
Well, the 8051, at least in its original incantation, isn't much of a
screamer either (12 clocks per op, as well).

There's a big difference between 12 cycles of a 12MHz clock and 12
cycles of a 2 MHZ clock. Besides:

Like I said, there isn't much of a difference.



A = B + C

Compiles to something like 16 instructions if A, B and C are randomly
located in the RAM area.

The 8051 is not so different if A, B, and C are randomly located in
external RAM. I'd never use a HLL on such a beast.


MOV DPTR,#B ; 1
MOVX A,@DPTR ; 2
MOV R5,A ; 3
MOV DPTR,#C ; 4
MOVX A,@DPTR ; 5
ADD A,R5 ; 6
MOV DPTR,#A ; 7
MOVX @DPTR,A ; 8

The 8051 took 8. Now lets see if I can remember the 1802 well enough:

LD #LOW(B) ; 1 Data = low 8 of address
PLO R5 ; 2 Put to low 8
LD #HIGH(B) ; 3 Data = high 8 of address
PHI R5 ; 4 Put to high 8
LD #LOW(C) ; 5
PLO R6 ; 6
LD #HIGH(C) ; 7
PHI R6 ; 8
LD #LOW(A) ; 9
PLO R7 ; 10
LD #HIGH(A) ; 11
PHI R7 ; 12
LDN R5 ; 13 Load what R5 points to
SEX R6 ; 14 Do math with what R6 points to
ADD ; 15 Do the math
STD R7 ; 16 Store where R7 points

The instruction count for the 1802 is double that of the 8051 and with
the slower clock speed, the 1802 takes about a billion times longer to
do the same operation.


[... about keyboards ...]

Which is why I put 8048 in quotes. My bet is that the 8048 core is
still in there.

I wonder if they've gone so far as to look at the code to see which
instructions actually got used an only implemented that much of the
8048.

.



Relevant Pages

  • Re: Painless micro program
    ... cycles of a 2 MHZ clock. ... MOVX A,@DPTR; 2 ... There weren't many triple-operand machines around, ... single instruction. ...
    (sci.electronics.design)
  • Re: Painless micro program
    ... cycles of a 2 MHZ clock. ... MOVX A,@DPTR; 2 ... There weren't many triple-operand machines around, ... single instruction. ...
    (sci.electronics.design)
  • Re: Painless micro program
    ... cycles of a 2 MHZ clock. ... MOVX A,@DPTR; 2 ... There weren't many triple-operand machines around, ... single instruction. ...
    (sci.electronics.design)
  • Re: Painless micro program
    ... cycles of a 2 MHZ clock. ... MOVX A,@DPTR; 2 ... There weren't many triple-operand machines around, ... single instruction. ...
    (sci.electronics.design)
  • Time,Date,and Chime TSR
    ... Clock display can be toggled on and off by repeating 'chime'. ... Turning the chime off and on ... mov CS:count500,TICKS; Reset Count500 ...
    (alt.lang.asm)