No-op microprocessors

V

v4vijayakumar

Jan 1, 1970
0
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?
 
E

Eeyore

Jan 1, 1970
0
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?

You must be Indian.

Graham
 
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins.

No they dont, they boil down to affecting a memory location. If that
location is hardwired to a pin then the pin changes as well, but they
could be hardwired to any other internal resource or just be a memory
location.
 
I

Ian Bell

Jan 1, 1970
0
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins.

The assumption is incorrect and hence the conclusions drawn are also
 
R

Rene Tschaggelar

Jan 1, 1970
0
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?

Sometimes, they also have input pins.

Rene
 
T

Tim Shoppa

Jan 1, 1970
0
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?

Yes, there exist microprocessors with instruction sets devoted largely
to digital I/O.

Perhaps the functionality you are desiring is more directly addressed
with PLC's and/or ladder logic diagrams.

Most of the folks here are microprocessor dweebs and would rather write
and debug code rather than do a very simple job of setting up a PLC or
writing down the ladder logic. In fact the subjects of ladder logic and
PLC programming are so simplistic that they often are not even done by
engineers, and instead simply implemented by technicians.

And of course most PLC implementations today just use a regular
microprocessor to implement the ladder logic or state machine, and also
provide a pretty nifty user interface.

Tim.
 
J

Jon

Jan 1, 1970
0
..
Allan Turing proposed a machine, now referred to as the "Turing
Machine". It consists of:
1) A state machine
2) A tape reader that could only do 3 things:
..
Write a "1" or "0" at the current position on the tape
Read the bit at the current position of the tape.
Advance or retard the tape one bit position at a time.
..
Turing used this conceptual model in his work on computability. He
proved that his machine could do anything that a genral purpose
computer could do, given enough time, and a long enough tape.
..
Google "Turing". You'll get lots of hits.
Regards,
Jon
 
L

Luhan

Jan 1, 1970
0
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?

All processors, memory and such all run on a 0/1 basis.

Luhan
 
v4vijayakumar said:
As all microprocessor instructions finally boils down to 0/1 through
output pins. This means that we can build a microprocessor that does
nothing but just generates 0/1 through output pins, in a desired way.
Functionalities can be built on the top of such microprocessors. Such
processors would be very much simple (?) to build. Do we already have
any thing like this?

Yes, there are many such processors. Many are even available with
multiple processor cores on one die, for just a few cents!

For example, see the 7400, which has four fully independent cores!
Parallel computing for pennies!
 
J

Jan Panteltje

Jan 1, 1970
0
.
Allan Turing proposed a machine, now referred to as the "Turing
Machine". It consists of:
1) A state machine
2) A tape reader that could only do 3 things:
.
Write a "1" or "0" at the current position on the tape
Read the bit at the current position of the tape.
Advance or retard the tape one bit position at a time.
.
Turing used this conceptual model in his work on computability. He
proved that his machine could do anything that a genral purpose
computer could do, given enough time, and a long enough tape.
.
Google "Turing". You'll get lots of hits.
Regards,
Jon

This is correct, and as an extra, cryptology can be
done on for example a 64 bit wide processor as 64 1 bit
operations in parallel (indeed resulting in a huge speedup).
Google for example 'ffdecsa'.

From the ffdecsa FAQ and technical doc:

<start quote>

FFdecsa is a fast implementation of the CSA decryption algorithm for MPEG
TS packets.

Q: What does FF stands for?
A: FFdecsa means "Fucking Fast decsa".

Q: Why would you use such a rude name?
A: Because this code is fucking fast, more than 800% the speed of the best
implementation I'm able to find around at the moment.

TRICK NUMBER 2: parallel bitslice
---------------------------------
Implementing the algorithm as described in tricks 1 and 2 give us about
15% of the speed of a traditional implementation. This happens because
we work on only one bit, even if our CPU is 32 bit wide. But *we can
process 32 different packets at the same time*. This is called
"bitslice" method. It can be done only if the program flow is not
dependent of the data (if, while,...). Luckily this is true.
Things like
if(a){
b=c&d;
}
else{
b=e&f;
}
can be coded as (think of how hardware would implement this)
b1=c&d;
b2=e&f;
b=b2^(a&(b1^b2));
and things like
if(a){
b=c&d
}
can be transformed in the same way, as they may be written as
if(a){
b=c&d
}
else{
b=b;
}
It could look wasteful, but it is not; and destroys data dependency.

Our codes takes the same time as before, but produces 32 results, so
speed is now 480% the speed of a traditional implementation.

</end quote>
 
M

mkaras

Jan 1, 1970
0
Charles said:
I remember when I first learned about digital.

Yes and I remember a comment made to me by some wizened engineer in
years gone by that "digital is just an analog signal with the gain set
so high that it flips from rail to rail without much ado".

- mkaras
 
Top