Method and apparatus for operating a computer processor array
A computer and array technology used in the field of computers and computer processors
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Problems solved by technology
Method used
Image
Examples
example 1
[0100] target
[0101] Forthlet port-forthlet
[0102] !p+!p+@p+@p+
[0103] Fend
[0104] The first line identifies the environment, and the second line declares the program name as port-forthlet. The third line sends the first two stack items to the port it's running on, and then reads the two stack items back from that port. The forthlet then goes back to sleep, waiting on that port for someone to write the next Forthlet to that port. The last line wraps Forthlet and places it on the server so that the name forthlet returns the address of the packet.
[0105] When a call is made from a port, the address in the PC will be that port. Port addresses don't auto-increment, instead they wait for some other processor to rewrite the port, the address doesn't increment, they read the same port address again and sleep until the port is written. Therefore, if code running in a port calls a different port, or calls into RAM or ROM, the return address of the port that made the cal...
example 2
[0111] target
[0112] $14 org:dosample \getbit is a routine in ram
[0113] \if it hasn't been defined previously
[0114] \give the word getbit meaning
[0115] forthlet call-from-stream
[0116] [$12345] #dosample
[0117] fend
[0118] The forthlet compiled by this example is called "call-from-stream" and it begins with a literal load which when executed loads the literal $12345 into T and then calls a subroutine called "dosample". Literal load instructions, samples and calls to subroutines in RAM, are wrapped in this forthlet and if written to the node will cause the node to execute the load and will make the call to the routine in RAM. When the routine returns, it returns to the port from which it was called to continue with more code.
[0119]Direct port stream opcode execution provides access to 5-bit instructions that represent most of the basic operations in the Forth language and are inlined into programs by the compiler...
example 3
[0121] target
[0122] forthlet ram-based-spi-driver
[0123] 5 node! \specify this is for node 5 only
[0124] 0 org \this resides at address 0 on node 5
[0125] :spi-code
[0126] ordinary-code
[0127] fend
[0128] The example details a forthlet called a "ram-based-spi-driver" which would have code like this, which would require the pin to be unique to node 5 and must reside there in use . It is also bound to a specific address specified by its internally qualified word. The word "spi-code" translates the call to address 0. When the forthlet is run, the code will be loaded and executed at address 0 on node 5.
[0129] A streaming forthlet can include calls to routines in ROM or RAM. By the compiler, the address of the routine to be called is derived from the name of the routine to be called. Routines in RAM must be loaded before they can be called. If a routine in RAM or ROM is called from a port, then most likely, the processor delivering the instruction strea...
PUM
Login to View More Abstract
Description
Claims
Application Information
Login to View More 