[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [oc] Beyond Transmeta...



Hello!

> One of the things that Transmeta and RISC are doing is reducing
instructions.
> This reduces processor complexity, but of course increases software
> complexity. I do not consider it a bad thing to increase complexity of
> software because the future of software developement is going to be more
> evolutionary/adaptive. One problem with the direction is instructions keep
> growing as bit depth of a processor increases, so you have to have a
diffrent
> instruction for 64bit, 32bit, and 16bit operations. One way to eliminate
this
> is to change the idea around, have a 1bit processor, and have many 1bit
> processors built into the same unit, so that 64bit is really 64 1bit
> processors working in parallel.

I don't belive that you could reach more performance simplifying
instructions...
I suppose you have computer for desktop applications in mind (like
Transmeta).
Did you calculate how many cycles does your add take (most commont ins in
GP aplications)? Clock ratio would be much lower.

> That is a 4 bit instruction, which is 16 instructions all together.

I suppose that kind of programs would be pretty large. And you haven't got
any
addressing here. How would you know where to get operands and where to put
them?

> How I see it, is it working as an entity in a network, that executes
> relationships as it needs to, stepping through the network. Maybe a kind
of
> queue is setup that sends instructions to the 1bit processor(s), when a
bits
> value is changed dependant relationships are sent to the queue to be
> executed, so as something changes it causes a chain reaction of other
> instructions to be executed and then each processor will each grab one
from
> the queue to execute with in a row (there would have to be rows to prevent
> potential conflicts). I'm not really sure how this would be setup (I'm not
> much of a electronic engineer after all, I normally see things in
software),
> you would need a sort of database of instructions, which in effect are lik
e
> calling each other in a reaction sort of manner. This reaction would also
> occure when a input devices value is changed, like the mouse for example.
> When the mouses X value changes (mapped into memory), there is then a
chain
> reaction from the bits connected to those bits, which will more then
likely
> end up by effecting a group of bits representing a place on the screen
known
> as the cursor :).

Control unit for sending instructions to network would be really complicated
and there would be amount of data needed to send through bus is too large.

> In the beginning of this type of setup, an X86 and RISC binary networks
would
> exist to run Operating systems and software from other platforms, but
> eventually applications will start incorperating these processing networks
> into them selves, or a special network that works similar to a compiler
will
> be created that will create/extend a network from an application, this
> application will then be incorperated into the binary network and from
there
> it can evolve to the users preferences. This happens because the
"compiler"
> is a self modifying part of the network, which could be given the ability
to
> reproduce a better self, or cause self improvement, this self improvements
> will be for higher inteligence in reproducing itself, this self modifying
> part almost comes alive, and will eventually have the ability to combine 2
or
> more applications to see what the users like and the best combinations
will
> be the evolution of better software.

Do you have some particular algorithm in mind?

> I would like to hear what people here think, I would like to hear that
> someone thinks they can implement it and try it out for an open core
project,
> but I wouldn't mind criticism for the idea either (wake up call to a
sleepy
> programmer), as long as it explains why. Maybe I am going nutz, here I am
> talking to people in a totally diffrent feild from which I am used to,
hoping
> you will understand what I want as a software developer, or maybe software
> engineering has given me to much freedom to think about things in strange
> ways, so I am disconnected from the reality of what makes a good
processor.
> Lately I have been a philosophical mind warp, bothering and confusing the
> hell out of people, so if all else fails just call me crazy.
I am a software developer too.
Keep on working on your ideas and something may come out.

Marko