diff --git a/data.py b/data.py new file mode 100644 index 0000000..4e2415e --- /dev/null +++ b/data.py @@ -0,0 +1,54 @@ +from math import log2 +from random import randint + +DATANUM = 10000 + +setNum = 2 +offsetBits = 7 +tagBits = 21 + +# setNum = int(input("Set: ")) +# offsetBits = int(input("offset bits: ")) +# tagBits = int(input("tag bits: ")) + +print("-machine(in bits) 32") +print("-total_cache_size(in KB) 1") +print("-num_cache_way 1") +print("-block_size(in bytes) 512") +print("") + + +for i in range(DATANUM): + ans = [] + + tagTouchBits = 4 + for i in range(tagBits-tagTouchBits): + ans.append(0) + for i in range(tagTouchBits): + ans.append(randint(0, 1)) + + setBits = int(log2(setNum)) + for i in range(setBits): + ans.append(randint(0, 1)) + + for i in range(offsetBits): + ans.append(randint(0, 1)) + + # print(ans) + + charStr = "" + index = 0 + output = "" + for i in ans: + charStr += str(i) + index += 1 + if index == 4: + # print(charStr) + base2 = int(charStr, 2) + # print("base 2:", base2) + output += hex(base2)[-1] + charStr = "" + index = 0 + + typeNum = randint(0, 1) + print("{} 0x{}".format("R" if typeNum else "W", output)) \ No newline at end of file