Skybuck's universal code

It segragates different kinds of bits so they don't start fights.

John

Reply to
John Larkin
Loading thread data ...

B[15:0] is politically incorrect?

John

Reply to
John Larkin

I have finally figured out what the hell it is I invented :)

It's another universal code:

formatting link

I shall name this code:

Skybuck's universal code (pseudo name)

Houppermans's universal code (real name ;))

Data bits: a,a,a,a,a,a,b,b,b,b,b,c,c,c,c

Marker bits:

0,0,0,0,0,1,0,0,0,0,1,0,0,0,1

Interleaved data and markers bits:

a0a0a0a0a0a1b0b0b0b0b1c0c0c0c1

The above serial information stream contains 3 information fields. The fields A,B,C in binairy digits (bits) ( a,a,a,a,a,a,b,b,b,b,b,c,c,c,c ).

The information stream is interleaved (=mixed) with "marker" bits. (the zeros and ones)

0 means another bit follows for the information field. 1 means the last bit has been reached for the information field.

To read field A a piece of software or hardware can use the following logic:

repeat Read Data_Bit Read Marker_Bit until Marker_Bit = 1;

Thereafter the same logic can be used to read the next field.

Bye, Skybuck.

Reply to
Skybuck Flying

So the zeros go to the back of the bus?

--
  Keith
Reply to
Keith Williams

Better to put the ones back there-- ones weigh more and would yield more traction in the winter.

Best regards, Spehro Pefhany

--
"it\'s the network..."                          "The Journey is the reward"
speff@interlog.com             Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

It sure is at my POE! Everything within sight of this desk is std_ulogic_vector(0 to 63). ;-)

--
  Keith
Reply to
Keith Williams

"Skybuck Flying" schreef in bericht news:dcss5v$sge$ snipped-for-privacy@news5.zwoll.ov.home.nl...

what's the purpose of your invention?

Reply to
Jeroen

Only 63? Age discrimination!

John

Reply to
John Larkin

My favorite math format for embedded uP stuff uses 64 bit variables,

32 bits of signed integer and 32 bits of fraction. That handles any reasonable physical representations accurately, and the math ops run fast. Unlike fp, adds and subtracts require no pokey normalizations, and conversion to/from intger is especially quick (ie, zero microseconds.)

I wrote a nice little saturating math package for the 68332, which can't crash or roll over no matter what you do. With a few assembly macros, it codes sort of like using a calculator. The only thing that was a real nuisance is the divide. Maybe I'll do a Newton's method reciprical thing instead, probably would come out faster.

John

Reply to
John Larkin

What, 1.8E19 not enough for you?

--
  Keith
Reply to
Keith Williams

until zeroesa parks....

its a great approach.

I like normalised control systems, that way all the numbers tend to be about 1, and it avoids ill-conditioning, which can be a problem when one controller handles a variety of different sized systems (eg a motor controller ranging from 1kW to 1MW). Power systems folks use the terminology "Per-Unitised" or PU, just to confuse :)

nice.

In one product I used an interpolated lookup table to perform 1/x. With

33ns multiplies & adds, the routine returned a 16-bit result with < 1 LSB error in 264ns. I had a 3-bit integer, 13-bit fractional representation. The LUT was 1kb (2 = slope & offset)

Cheers Terry

Reply to
Terry Given

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.