473,326 Members | 2,111 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,326 software developers and data experts.

The variable bit cpu

Hi,

I think I might have just invented the variable bit cpu :)

It works simply like this:

Each "data bit" has a "meta data bit".

The meta data bit describes if the bit is the ending bit of a possibly large
structure/field.

The meta bits together form a sort of bit mask or bit pattern.

For example the idea is best seen when putting the data bits
and meta bits below each other.

data bits: 01110101110101101010101
meta bits: 00000000100010001100001

In reality the data bit and meta bit are grouped together as a single entity
which can be read into the cpu since otherwise the cpu would not know where
to start reading the data or meta bits. Now it simplies start with the first
data + meta bit pair.

Because a cpu might need to know the length of the bit field up front the
cpu/algorithm works simply as follows:

The cpu starts reading data and meta bits until it reaches a meta bit of 1.

All bits that form the variable bit field are now read and can be used etc.

The above example then looks like this:

data bits: 011101011#1010#1101#0#10101
meta bits: 000000001#0001#0001#1#00001

(The # sign is too indicate to you where the variable bit fields are.)

Notice how even single bit fields are possible.

The reason for the variable bit cpu with variable bit software is too save
costs and to make computers/software even more powerfull and usefull ;)

For example:

Currently fixed bitsoftware has to be re-written or modified, re-compiled,
re-documented, re-distributed, re-installed, re-configured when it's fixed
bit limit is reached and has to be increased for example from 32 bit to 64
bit etc.

Example are windows xp 32 to 64 bit, the internet IPv4 to IPv6.

Bye,
Skybuck.
Jul 30 '05 #1
2 1646
Take a look at the hardware design of the IBM 1620, circa 1960. You can find
it on the IBM site in their history section. It used a somewhat similar
technique to allow for variable-length data words.

Tom Dacon
Dacon Software Consulting

"Skybuck Flying" <no****@hotmail.com> wrote in message
news:dc**********@news5.zwoll1.ov.home.nl...
Hi,

I think I might have just invented the variable bit cpu :)

It works simply like this:

Each "data bit" has a "meta data bit".

The meta data bit describes if the bit is the ending bit of a possibly
large
structure/field.

The meta bits together form a sort of bit mask or bit pattern.

For example the idea is best seen when putting the data bits
and meta bits below each other.

data bits: 01110101110101101010101
meta bits: 00000000100010001100001

In reality the data bit and meta bit are grouped together as a single
entity
which can be read into the cpu since otherwise the cpu would not know
where
to start reading the data or meta bits. Now it simplies start with the
first
data + meta bit pair.

Because a cpu might need to know the length of the bit field up front the
cpu/algorithm works simply as follows:

The cpu starts reading data and meta bits until it reaches a meta bit of
1.

All bits that form the variable bit field are now read and can be used
etc.

The above example then looks like this:

data bits: 011101011#1010#1101#0#10101
meta bits: 000000001#0001#0001#1#00001

(The # sign is too indicate to you where the variable bit fields are.)

Notice how even single bit fields are possible.

The reason for the variable bit cpu with variable bit software is too save
costs and to make computers/software even more powerfull and usefull ;)

For example:

Currently fixed bitsoftware has to be re-written or modified, re-compiled,
re-documented, re-distributed, re-installed, re-configured when it's fixed
bit limit is reached and has to be increased for example from 32 bit to 64
bit etc.

Example are windows xp 32 to 64 bit, the internet IPv4 to IPv6.

Bye,
Skybuck.

Jul 30 '05 #2
As the other reply pointed out, this has been tried before. Production
machines were created. What the pioneers of the time discovered is that any
advantage that you get from variable bit encoding is lost by the
interpretation of the data into variable length bits. In other words, if
you spend a cycle parsing the data and three cycles performing the
operation, you are worse off than if you stuck with a fixed bit width and
spent three cycles on the operation (and perhaps just two).

There is no such thing as a true bit stream. There are only words of data
that fit on a bus. The bus is physical. Lookahead works in multiples of
the bus width. If your bus width is variable, lookahead is less effective,
and you get an overall reduction in throughput.

I sat through a class once where the instructor dared suggest that if the
designers of an automobile all went off and designed their components in
isolation from one another, each trying to create the best version of their
part that they could, the assembled car would have a MTBF of 30 seconds.
Each part of the system has to compromise to make the best system possible.
The same goes for bit width on the CPU

--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"Skybuck Flying" <no****@hotmail.com> wrote in message
news:dc**********@news5.zwoll1.ov.home.nl...
Hi,

I think I might have just invented the variable bit cpu :)

It works simply like this:

Each "data bit" has a "meta data bit".

The meta data bit describes if the bit is the ending bit of a possibly
large
structure/field.

The meta bits together form a sort of bit mask or bit pattern.

For example the idea is best seen when putting the data bits
and meta bits below each other.

data bits: 01110101110101101010101
meta bits: 00000000100010001100001

In reality the data bit and meta bit are grouped together as a single
entity
which can be read into the cpu since otherwise the cpu would not know
where
to start reading the data or meta bits. Now it simplies start with the
first
data + meta bit pair.

Because a cpu might need to know the length of the bit field up front the
cpu/algorithm works simply as follows:

The cpu starts reading data and meta bits until it reaches a meta bit of
1.

All bits that form the variable bit field are now read and can be used
etc.

The above example then looks like this:

data bits: 011101011#1010#1101#0#10101
meta bits: 000000001#0001#0001#1#00001

(The # sign is too indicate to you where the variable bit fields are.)

Notice how even single bit fields are possible.

The reason for the variable bit cpu with variable bit software is too save
costs and to make computers/software even more powerfull and usefull ;)

For example:

Currently fixed bitsoftware has to be re-written or modified, re-compiled,
re-documented, re-distributed, re-installed, re-configured when it's fixed
bit limit is reached and has to be increased for example from 32 bit to 64
bit etc.

Example are windows xp 32 to 64 bit, the internet IPv4 to IPv6.

Bye,
Skybuck.

Jul 31 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Scott | last post by:
I have an XML Document in a format like: <Variable name="Bob">ABCDEFG</Variable> <Variable name="Steve">QWERTYUI</Variable> <Variable name="John">POIUYTR</Variable> <Variable...
4
by: Frederik Sørensen | last post by:
I include a xslt stylesheet with variables for all the error messages in my system. <xsl:variable name="Banner_error_1"> errormessage 1 for banner </xsl:variable> <xsl:variable...
134
by: James A. Donald | last post by:
I am contemplating getting into Python, which is used by engineers I admire - google and Bram Cohen, but was horrified to read "no variable or argument declarations are necessary." Surely that...
10
by: Blaxer | last post by:
There is probably a really easy way to do this, so please forgive me but I would like to set the value of a variable from a variable, an example would be... function Calculate_Something(ByVal...
23
by: Russ Chinoy | last post by:
Hi, This may be a totally newbie question, but I'm stumped. If I have a function such as: function DoSomething(strVarName) { ..... }
3
by: rls03 | last post by:
I have the following which creates a variable containing a relative path where <xsl:value-of select="."/returns a portion of the filename: <xsl:variable...
1
pbmods
by: pbmods | last post by:
VARIABLE SCOPE IN JAVASCRIPT LEVEL: BEGINNER/INTERMEDIATE (INTERMEDIATE STUFF IN ) PREREQS: VARIABLES First off, what the heck is 'scope' (the kind that doesn't help kill the germs that cause...
2
by: Florian Loitsch | last post by:
hi, What should be the output of the following code-snippet? === var x = "global"; function f() { var x = 0; eval("function x() { return false; }"); delete x; alert(x); }
37
by: minkoo.seo | last post by:
Hi. I've got a question on the differences and how to define static and class variables. AFAIK, class methods are the ones which receives the class itself as an argument, while static methods...
112
by: istillshine | last post by:
When I control if I print messages, I usually use a global variable "int silent". When I set "-silent" flag in my command line parameters, I set silent = 1 in my main.c. I have many functions...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.