Thanks Jan and Grant I have a bit better Idea of microcode now. Although
it seems like microcode may give me slightly better system performance
(if I transfer the microcode to the processor that is) I seriously doubt
anything is going to speed up this old box :)
She's been good, but with this recent upgrade to Mandrake 9.0 I'm
starting to discover her limitations. Its funny how not long ago her
160megs of physical memory would have been top of the line but now 150
of that is consumed before I get a chance to do anything with the
system. I'm not discovering an error message i haven't seen before in
syslog...."killed <program>: Out Of Memory:"

And having read some more my self it seems that transferring the
microcode to the processor doesn't flash it to the processor
permanently, it has to be loaded every time the system starts..what a
pain.

Anyway, cheers.

On Tue, 2002-11-12 at 02:25, Grant Byers wrote:
> Ooh this stuff is fun, so i'll give a slightly extended answer to "what is 
> microcode"!  microcode is one level away from the digital logic level of a CPU.
> In Assembler, the programmer uses a mnemonic representation for instructions,
> such as 
> 
>       move.b  bpb(PC),D0
>       cmpi.b  #1,D0           ;1 or lower value
>       ble.s   endbpb          ;means no emphasis
>       addq.b  #1,D2
>       cmp.b   D0,D2
>       beq.s   adjustbpb
>       lea     dlyav(PC),A0
>       move.w  #10,(A0)
>       lea     dlybv(PC),A0
>       move.w  #390,(A0)
>       rts
> 
> These instructions actually represent an address in a kind of CPU ROM that
> contains (you guessed it), microcode. The value that each mnemonic represents
> is used to manipulate a Micro Program Counter [MPC].
> 
> For example. The rts (return from subroutine) instruction would need micro-
> instructions to enable certain registers to recieve data off an internal CPU bus, 
> copy the contents of the Stack Pointer [SP] into a Memory Address Register [MAR], 
> assert a memory read signal, update the SP, copy the contents of the Memory Buffer 
> Register [MBR] into the Program Counter [PC], then fetch the instruction pointed 
> to by the PC.
> 
> Each of these micro-instructions is loaded into a Micro Instruction Register [MIR], 
> which is basically a set of control lines for the CPU (for memory r/w signals, 
> ALU signals) etc.
> 
> Now, if you can understand that, the information at 
> http://www.urbanmyth.org/microcode/ might make a little more sense ;-)
> 
> 
> Cheers,
> Grant

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to