5 ms·
What's the architecture specialized for? Like a GPU or something?
by z500 3y ago
What's the architecture specialized for? Like a GPU or something?
- _0ffh 3y agoUser programmable real time signal processing. It runs a fixed one instruction per cycle (but it can issue multiple operations per instruction) and the machine code is deliberatly not turing complete similar to eBPF. Loops must have a fixed number of iterations and are unrolled by the compiler. In sum that means that program runtime in cycles equals length of program in instructions (plus a couple more to clear out the pipeline) so it is trivial to guarantee that any given program meets the timing requirements of the system.
- z500 3y agoOh that sounds cool. I guess that would make it a ZISC? What kind of applications did you have in mind for it?
- _0ffh 3y agoI think it's not quite NISC. There's no microcode alright, but there is a predefined instruction set that is decoded into the appropriate control signals. OTOH instruction scheduling and hazard control is indeed handled by the compiler back-end, which makes it quite complex. The compiler may take up to a few seconds to find a compact and valid instruction sequence for a given program, but it works well enough. I'm currently working on a browser-based graphical programming environment. The intended application is audio signal processing and generation. Might be anything from guitar effects to sound synthesis from a MIDI source, depending on the available hardware ressources (ADC and MIDI-UART, respectively).