Upper bounds on error-correcting runlength-limited block codes | IEEE Journals & Magazine | IEEE Xplore