Esempio n. 1
0
def prepare_frame_gbn(frame, sn):
    sn = sn % (window_size + 1)
    sn = bin(sn)
    sn = sn[2:].zfill(3)
    frame = str(sn) + frame
    # CRC application
    crcframe = err.crc([frame], err.generator_poly, frame_size)
    return crcframe[0]
Esempio n. 2
0
def write_crc(list_of_frames, generator, error_list_frames, error_bit_list):

	list_of_frames2=err.crc(list_of_frames=list_of_frames, generator=err.generator_poly, no_of_bits=err.no_of_bits)[:]

	# Printing the frames
	print('Codeword frames sent:')
	print(list_of_frames2)
	
	# Inserting error
	for i in range(len(error_list_frames)):
		list_of_frames2=ins_error(list_of_frames2, error_list_frames[i], error_bit_list[i])
	
	with open('crc_op.txt', 'w') as f:
		for item in list_of_frames2:
			f.write("%s" % item)
Esempio n. 3
0
def generateAck_gbn(ackno):
    # Generate crc appended code
    crcframe = err.crc([ackno], err.generator_poly, frame_size)
    return crcframe[0]
Esempio n. 4
0
def generateAck(rn):
    # Generate crc appended code
    ack = bin(rn)[2:]
    crcframe = err.crc([ack], err.generator_poly, frame_size)
    return crcframe[0]
Esempio n. 5
0
def prepare_frame(frame, sn):
    frame = str(sn) + frame
    # CRC application
    crcframe = err.crc([frame], err.generator_poly, frame_size)
    return crcframe[0]