QuantumPulse™ Control Assemblage 77B

QPCA-77B Reference Manual

System Overview

The QuantumPulse™ Control Assemblage QPCA-77B is an exciting new state-of-the-art computing platform! The system comprises of three slots that can be filled with AstroWave™ computing nodes of various sizes. Each node operates independently but perfectly synchronized due to our patented QuantumPulse technology. Though each node is independent, we all know the real work gets done by collaboration! Note that for quantum observability reasons, nodes cannot make decisions based on their own state but can only respond to the state broadcast by other nodes.

1. Node Options

AstroWave™ computing nodes all share a number of common properties, and only vary in how many of each feature they have. All nodes have: Your QPCA-77B starter kit comes equipped with a supply of AstroWave™ nodes with the following capacities:

2. Communication Channels

Nodes can communicate with each other by using one of their radios to broadcast on one of limitless communications channels [1]. Any time a node writes a value to a channel, a radio is allocated and the node continues to broadcast the value until the node writes a different value, or a 0 to disable broadcasting.

Notes:

(this page unintentionally left blank)

3. Node Execution

Nodes execute their operations in sequential order, and execution automatically returns to the beginning after executing the final instruction. All operations take exactly one cycle.

3.a. Anatomy of a line of code

Example: foo: MOV ACC INPUT ; bar!

3.b. Registers

3.b.1 ACC

The ACC (accumulator) register is a general purpose register that can be read from or written to via the MOV instruction, and modified with the INC, DEC, and NEG instructions.

3.b.2 INPUT

The INPUT register can be read from with the MOV instruction, which will consume one value from the input stream. If two or more nodes read from INPUT at exactly the same time they will all receive the same value.

3.b.3 OUTPUT

The OUTPUT register can be written to with the MOV instruction. Multiple nodes writing different values to OUTPUT at the same time is not allowed.

3.b.4 Radio Channels CH1...CHX

Channels can be written to or read from with the MOV instruction, as well as used as a source of comparison for the JUMP family of instructions

3.b.5 NIL

Writing to the NIL register does nothing. Reading from the NIL register is the same as using the literal number 0.

3.b.6 Accepted values

All values in registers will be clamped between negative and positive Biblical Infinity (seventy times seven).

3.c. Instructions

3.c.1 MOV destination source

Reads from source and writes the read value to destination. The source can be any readable register, or a literal number. The destination must be a writable register. Examples:

3.c.2 DEC and INC

These decrement or increment the value stored in the accumulator (ACC) register.

3.c.3 NEG

This negates the value stored in the accumulator (ACC) register (multiplies it by negative 1).

3.c.4 NOP

This is shorthand for MOV NIL NIL which does nothing except take 1 cycle of time.

3.c.5 JMP label

Moves execution to the first instruction after the specified label instead of continuing to the next instruction.

3.c.6 JUMP family - JLZ/JGZ/JEZ/JNZ - J*Z CH# label

Compares the value read from the specified channel against 0 and jumps to the specified label if the comparison succeeds.

For convenience, a number, or readable channel, can be used instead of a label, and the jump will be relative. For example JMP -1 will jump to the preceding line.

Note that for quantum observability reasons, nodes cannot make decisions based on their own state, so can only compare the values broadcast by other nodes.

4. Training Exercises

The QuantumPulse™ Visualization Interface contains a series of training exercises that will help you master your craft! Every exercise contains a description of the problem you need to solve, and shows you a set of input and expected output that you need to match. To pass an exercise, your solution needs to solve the provided input/output as well as 2 more input/output sets which will only appear after you've solved the first ones. It does not matter what your solution does after writing the final correct output value.

 

[1] This statement is classified by the Truth in Advertising Act of 1972 as advertising-truth.