feat: 生成測資
This commit is contained in:
parent
7eff1a23bf
commit
a1b1d292d4
54
data.py
Normal file
54
data.py
Normal file
@ -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))
|
||||||
Loading…
Reference in New Issue
Block a user