The Differentiator

thegreatbuilder9's picture
Build image: 
In-game name (NO VISITORS! Must be LEARNER rank or higher!): 
Calcuilder
Builder name(s) and current ranks: 
Calcuilder: Tinkerer
Creation location: 
2114 84 1040
Machine Features: 

Decimal Input and Output
"Fast" Binary to Decimal Conversion
Note blocks playing flute inform you can enter new coefficient and/or power
Bell informs you that screen output is ready to be read

How To Use: 

Begin by hitting "Clear Input" this does exactly what it says on the tin.
Type an integer between 0 and 255, allow a quarter second after each button pops out before hitting the next one otherwise it might eat your input.
Press either "Set Coefficient" and/or "Set Power", you may enter a new number by repeating the previous steps
When you have a coefficient and power you're happy with, give the button labeled "Differentiate!" a good press!
You then must wait for a few grueling seconds as the machine does the multiplication.
You will hear a flute play an appeasing chord, you may start entering a new coefficient and power now
After another few seconds, a bell will ring, signifying the screen above you has the results displayed

The principle of operation of this machine simple, though it is definitely oversized.
To take the derivative of a polynomial term (aka a monomial) of the form f(x)=c*x^p, is simply f'(x)=c*p*x^(p-1)
If you wish to do a polynomial, simply input each term in the sum one at a time, then sum the machine's outputs after the bell rings.

When each digit is entered via the keypad, the adders multiply the accumulator in the BCD to Binary Converter by 10, then adds the pressed digit, storing it back in the same accumulator
when you press the "Clear input" button, the accumulator is reset by storing 0.
When you press "Set Coefficient" or "Set Power", the corresponding register is set and its Binary to BCD Converter is activated, the top three bits are already in the converters, so it only has to clock 5 times instead of 8
When you press the button labeled "Differentiate!", the sequential multiplier whirls up storing the power into the PISO shift register, which shifts each bit down to the bottom, the output of which allows or blocks the coefficient from being added to the multiplier's 16 bit accumulator each clock cycle, the sum is shifted down and stored for the next pulse
After that's finished the 16 bit Binary to BCD converter activates, with the product as its' input.
The power is also decremented using another circuit, if the power is zero, the decrementer's input is blocked to prevent 255 from becoming the new power, the Binary to BCD Converter for the new power is activated at the same time as the new coefficient.

Request status: 
Not approved

Comments

Nice and new creation. At the time of review a few issues have been encountered, that should be fixed to make the creation truly Regular rank worthy :)
(These points have already been sent to the player in question, but I gonna write them down here, to keep it tracked).

The input buffer has no display. One must remember the digits typed. The input buffer is also not cleared when applied. The number input mechanism has no overflow protection, so that input 9999 yields 15. There should be a "running" indicator additional to the "done" indicator - ideally inputs are disabled during running state.
There should be some sort of explanation or description at the input panel, allowing others to understand the machine more easily. It would probably be less confusing, if the outputs are latched (updating at once) instead of counting up to the correct output value.

Personally I would like to see the '>4+3' unit to be smaller. Like it could be optimized on a logical level - removing things that are always on/off. This is not too easy, but one can do some things with it to make it more compact.
One also could dispose of two output converters and instead just remember the input BCD values at the displays. This is not a requirement though, but when doing so the machine should become a bit more clean.

By Ecconia