比特填充(Bit stuffing)是一种在数据传输过程中用于保证数据的可靠性和同步性的技术。在数据通信中,比特填充被用于在数据帧中插入一些特定的比特模式,以便在接收端正确识别出数据的开始和结束位置。
零比特填充法
零比特填充法又称零比特插入法。在HDLC的帧结构中,若在两个标志字段之间的比特串中,碰巧出现了和标志字段F(01111110)一样的比特组合,那么就会误认为是帧的边界。为了避免出现这种情况,HDLC采用零比特填充法使一帧中两个F字段之间不会出现6个连续1。在发送端,当一串比特流尚未加上标志字段时,先用硬件扫描整个帧。只要发现5个连续1,则立即填入一个0。因此经过这种零比特填充后的数据,就可以保证不会出现6个连续1。在接收一个帧时,先找到F字段以确定帧的边界。接着再用硬件对其中的比特流进行扫描。每当发现5个连续1时,就将这5个连续1后的一个0删除,以还原成原来的比特流。这样就保证了在所传送的比特流中,不管出现什么样的比特组合,也不至于引起帧边界的判断错误。