Is a byte always 8 bits? What can I call a 6-bit byte? A clump?
I want to send data over an SFP optical link, in 6-bit things.
0 1 1 0 d \d repeated, roughly 100 Mbits/sec
is DC balanced, which SFP likes.
Is a byte always 8 bits? What can I call a 6-bit byte? A clump?
I want to send data over an SFP optical link, in 6-bit things.
is DC balanced, which SFP likes.
The French (and maybe others) use 'octet' for byte, so 'sextet' sounds reasonable.
I use 'nips' for two bits, don't know if anyone else does.
I would still consider it a byte, but sixbit. You could always call it braille.
Cheers
Maybe "frame" sounds better than "clump."
It would still be a byte. Univac 1108, with 36-bit words.
A byte was always a fraction of a word, but the length of a word was whatever the computer was designed for. All sizes were tried.
I've worked on digital computers with the following word sizes (in bits): 12, 16, 24, 32, 36, 48, 64.
There were just as many floating-point formats.
Now days, it has settled down, and words are multiples of 8 bits in size, usually a power of two. And all FP is IEEE.
The standards folk came up with "octet" because byte was so ill-defined.
Half an octet was sometimes called a nybble. And so on.
If you use 8-bit patterns (best for component availability), but use only the DC balanced subset, does that suffice?
Or, turn it around. Figure out how many DC-balanced patterns you need, double it (for growth), and figure out long a word is needed. Don't forget to include some control patterns.
Gigabit Ethernet does something like this, only grander, with two patterns for every possible symbol to be sent, and they track current DC balance, and choose which pattern to use that will reduce the running DC balance.
Joe Gwinn
From
I also like the sound of sextet. Its easy to say out loud and gives a strong hint at the meaning.
John
SFP transceivers are capacitor coupled on input and output so they do care about the dc balance of the signal. I believe that there is also capacitor coupling in the photodetector circuit. They don't care about the exact protocol however.
John
And others indeed. All the RFC-s I have read use "octet", apparently a byte has not always been used meaning 8 bits. So the IETF have taken the decision quite a while ago.
I'd go with "sextet", although since during programming it will typically be part of a byte I'd comment "lowest 6 bits" or something.
We could do 8b10b, but that would need an FPGA to generate and receive. I'm thinking about a spare-time thing that I could design without an FPGA or uP, all hardware. My digital people are swamped with big projects and I need something fun to design.
The data is a 1-bit steam from a delta-sigma ADC. I just want to transport it over fiber, and SFP is the easy way to do that. But SFP is intended for telecom, ac coupled, intolerant of dc imbalance. Most SFPs won't pass anything below about 1 MHz. But they are crazy fast and have great AGC.
8b10b does elaborate long-term DC balancing like that. Too much work.SFPs usually tolerate a little DC imbalance. You can send PWM at, say,
35% to 65%.
It's a hexad.
Or 'clod'. Alternatives abound. ;)
I'd go with sextet (or sestet, if you're feeling poetic).
Cheers
Phil Hobbs
Sixbit packet And call it a day.
Cheers
six bit word.
After all this discussion it occurs to me that the correct answer is a bit. The 0110 is a dc balanced header and the d \d is just a coding scheme that ensures dc balance without conveying more than 1 bit of information.
John
Sixpack.
Now one of my guys claims that all we need is
1 0 d1 \d1 1 0 d2 \d2 .... etcfour bits per chunk to recover data d. Which is a nibble. I can still call each 4 bits a frame.
I hate it when people are smarter than I am.
Is it 100 million bits per second, or symbols per second?
What is being digitized? Voice? Data of some kind?
Is there a maximum latency and latency jitter requirement?
One-bit delta samples are usually signed, so the minimum is two symbols. If the voltage being sent is zero, then we'll get a steady
+,-,+,-,+, stream, which will have very strong RF spurs and thus emissions, so need to break this up.A zero symbol makes it three, and an idle symbol, makes it four symbols.
Yes, too much trouble. But if you use table lookup, you can get close enough.
For instance, have four tables (one per symbol), with unique random patterns, and choose a pattern from the correct table for the symbol to be sent. These patterns are all inherently DC balanced, being half
On the receive end, use table lookup to recover the sent symbols.
You will need a sync pattern to establish and maintain symbol framing. The key property of sync patterns is a sharp single correlation peak against shifted examples of that pattern. A sync preamble may be multiple sync symbols concatenated. Sync and idle symbols may be the same.
Joe Gwinn
MIX - for the model 1009 Knuth polyunsaturated virtual computer used 6 bit bytes and 5 bytes to a word in TAOCP. It was partly intended to break any algorithm that relied on things being a handy power of two.
I never had enough bookshelf space - or money at the time - for the complete works of Knuth. I don't know how he managed to do so much!
John
Have something to add? Share your thoughts — no account required.
Ask the community — no account required