What is error correction? Hamming codes in hardware

preview_player
Показать описание



------------------

Social media:

Special thanks to these supporters for making this video possible:
Aaron Todd, Adrien Friggeri, Alexander Wendland, Andrew Vauter, Anson VanDoren, Anthanasius, Armin Brauns, bapu, Ben Cochran, Ben Dyson, Ben Kamens, Ben Williams, Bill Cooksey, Binh Tran, Bouke Groenescheij, Bradley Pirtle, Brent Reusing, Bryan Brickman, Carlos Ambrozak, Christopher Blackmon, Daniel Jeppsson, Daniel Sackett, Daniel Tang, Dave Burley, Dave Walter, David Brown, David Clark, David Cox, David House, David Sastre Medina, David Turner, Dean Winger, dko, Dmitry Guyvoronsky, Dušan Dželebdžić, Dzevad Trumic, Emilio Mendoza, Eric Brummer, Eric Busalacchi, Eric Dynowski, Eric Twilegar, Erik Broeders, Eugene Bulkin, George Foot, George Miroshnykov, Harry McDow, HaykH, Hidde de Jong, Ian Tait, Ingo Eble, Ivan Sorokin, Jason DeStefano, Jason Specland, JavaXP, Jay Binks, Jayne Gabriele, Jeremy A., Jim Kelly, Jim Knowler, Jim Van Meggelen, Joe Beda, Joe OConnor, Joe Pregracke, Joel Jakobsson, Joel Messerli, Joel Miller, Johannes Lundberg, John Fenwick, John Meade, Jon Dugan, Joshua King, Kefen, Kenneth Christensen, Kent Collins, Koreo, Lambda GPU Workstations, Larry, Lucas Nestor, Lukasz Pacholik, Maksym Zavershynskyi, Marcus Classon, Martin Roth, Mats Fredriksson, Matt Alexander, Matthäus Pawelczyk, melvin2001, Michael Garland, Michael Tedder, Michael Timbrook, Micro Hobbyist, Miguel Ríos, Nicholas Counts, Nicholas Moresco, Örn Arnarson, Paul Pluzhnikov, Paul Randal, Pete Dietl, Phil Dennis, Philip Hofstetter, Randal Masutani, Randy True, Ric King, Richard Wells, Rob Bruno, Robert Diaz, Ryan Trunck, sam raza, Sam Rose, Santiago Bustos, Sergey, SonOfSofaman, Stefan Nesinger, Stefanus Du Toit, Stephen Riley, Stephen Smithstone, Steve Jones, Steve Gorman, Steven Pequeno, TheWebMachine, Tom, Tom Burns, Vlad Goran, Vladimir Kanazir, Warren Miller, xisente, Yee Lam Wan
Рекомендации по теме
Комментарии
Автор

You know what's really underappreciated about your video's? The audio consistency between voiceover during a sped up part, and the normal video where you're just talking to the camera (assuming you do that, the consistency is so good I'm not even sure it's not all a voiceover).

I honestly sometimes have trouble figuring out if I'm watching a sped up video or not, because there literally isn't a change in audio that would indicate it. You're the only channel I've ever watched that accomplishes it, but IMO it makes for a much more comfortable video.

Are you also planning on doing a video on error correction for bigger data, or for multiple errors, if that's even possible?

timderks
Автор

When the world needed him The most HE CAME BACK

prathamkalgutkar
Автор

I really hope this channel keeps growing. It's honestly one of the few channels where I always watch the new video as soon as I can. You break everything down and explain it really well making it really easy to enjoy watching and learning.

As a programmer that dabbles in electronics I have to say I love seeing things done at such a low level. Everything I do is usually so far abstracted from the bare hardware that you really lose the appreciation of what is actually going into each line of code you write. It's kinda sad that most things now are just done in higher level languages when these hardware solutions are so elegant.

JamesCoyle
Автор

I remember learning about Hamming codes when I was at University over 40 years ago. Needless to say, I'd forgotten everything. Very interesting.

dhardingham
Автор

This scheme can be expanded by adding more "parity bits" to allow correction of 2-bit or 3-bit errors, which brings me to something else which can be (and occasionally has been) done. Distributed storage.
By adding sufficient parity bits, in the right places, it's possible to divide a file into smaller "chunks" which collectively take up around 1.25 times the original storage space, but you only need to retrieve approximately 75% of the "chunks" and you can then calculate all of the missing data by using the parity bits stored with each "chunk" of data you did manage to retrieve.
This means that in a distributed storage scheme, data pertaining to a particular file can be stored across multiple servers and if one or two servers go out of service, you can still retrieve and reconstruct the original file from the remaining servers.
The down-side is that the reconstruction process takes a long time since the mathematics involved is complicated, and making hardware to perform the task would not be economically viable.

melkiorwiseman
Автор

8:50: the upside down dip switch outputs 0 when set to "NO", perfectly logical :D

StefanNoack
Автор

Always excited when I see you have dropped a new video. I have spent most of my career involved with design and programming of standalone control systems which often were coded in assembly so i'm very familiar with what you are doing yet you still make it entertaining and fun for people who are very familiar and even those that are new to it all, a real talent.

nnsda
Автор

I came here from 3B1B's video, watched this video, subscribed to this channel and binged watched an entire playlist of building a computer based on 65c02 microprocessor; At the end of the 9th video Ben said "You know how to make youtube tell you if I release another video for the continued work'"; and hearing that, I clicked the notifications icon on his channel.
Commendable job Ben! Extremely impressed by the patience you observe while explaining even the hardest concepts. I used to be a bit scared of understanding electronics, leave aside understanding a computer to its machine code. But today, I understood each and every topic of the 5 hours of content I saw. Thank you.

AayushSingh
Автор

Simultaneous 3b1b and Ben Eater uploads!? I love this

animowany
Автор

Great to see you going into depth on the Parroty Bits shown in your VGA video. 🦜

capability-snob
Автор

The best way I remember how parity (or at least hamming 7, 4) bits work is:
Parity 1 reads 1, skips 1, reads 1, e.t.c., including itself.
For each parity bit, double the amount of reads and skips.
The errored bit is either the total of each wrong parity minus one (for a 'human friendly' explanation) or the binary number represented by the parity bits.
Single bit error correction, multi-bit error detection.

BitShadow
Автор

Hats off to sir, You are sharing much powerful information about processor and controller in
Thank you so much for all sir.
Lots of Love from India 🇮🇳

ShahHarsh
Автор

I'm a veterinarian. I started out in computing, but it just got too heavy for me. Love watching your videos. Almost makes me wish I stuck with computing as my career instead.

BlokeOzzie
Автор

Thank you for your channel. You bring back fond memories and some cold sweats from the early 1980’s building 8080 computers from scratch that controlled motors and sensors.

frankjones
Автор

3b1b and ben eater both upload videos on hamming codes at exact same time. this cannot be a coincidence.

ben eater IS 3b1b ( Grant Sanderson )

Mayank-mfxr
Автор

I never understood this before today.

You make some amazing content, keep up the good work.

gudenau
Автор

Very refreshing to see a full on hardware implementation of hamming. In school I was teached that hamming codes are coordinates in a bit hyperspace, and that if we get an undefined codeword on the line, we can just pick the "closest" word instead. If there is a tie, then we have detected but not corrected the error

Yaxqb
Автор

Had to stop and comment. I know just barely enough to understand what is being explained. I’m blown away by how clever this logic is.
Not an engineer but have to admire brilliance when I see it.

johansugarev
Автор

I'm half-watching the video, pausing, thinking about how it could work, then building that in a logic simulator and then unpausing to see if i got it right
this was amazing and blew my mind

proxy
Автор

Glad to see you doing such great work with other youtubers!

minikretz