test post

The M1 is the beginning of a paradigm shift, which will benefit RISC-V microprocessors, but not the way you think.



Image for post
Image for post
Image for post
Google TPUs are Application Specific Integrated Circuits (ASIC). I will refer to them as coprocessors.

What is a Coprocessor?

Image for post
Image for post
Intel 8087. One of the early coprocessors used for performing floating point calculations.
    loadi r3, 0         ; Load 0 into register r3
multiply:
add r3, r1 ; r3 ← r3 + r1
dec r2 ; r2 ← r2 - 1
bgt r2, multiply ; goto multiply if r2 > 0

How Data is Transmitted to and from Coprocessors

Overview of how a Microprocessor works. Numbers move along colored lines. Input/Output can be coprocessors, mouse, keyboard and other devices.
Overview of how a Microprocessor works. Numbers move along colored lines. Input/Output can be coprocessors, mouse, keyboard and other devices.

Image for post
You can think of data buses as pipes with valves opened and closed by the red control lines. In electronics however this is done with what we call multiplexers not actual valves.

Hardware is accessed just like memory locations by specifying addresses.

load r1, 84   ; get x-coordinate
loar r2, 85 ; get y-coordinate
loadi r1, 1024  ; set register r to source address
loadi r2, 50 ; bytes to copy
loadi r3, 2048 ; destination address

store r1, 110 ; tell DMA controller start address
store r2, 111 ; tell DMA to copy 50 bytes
store r3, 113 ; tell DMA where to copy 50 bytes to

Comments