10
0
Fork 0
mirror of https://gerrit.osmocom.org/simtrace2 synced 2024-08-11 05:26:18 +00:00
simtrace2/clk_calc.py
2015-02-20 14:40:07 +01:00

29 lines
703 B
Python

# frequ in MHz
f=18.432
# Master clock:
#ftarg=64.0
# USB Clock:
ftarg=48.0
# PLL range: 60 MHz <= PLL <= 130 MHz
# MUL range: 4 <= MUL <= 7
min_err_val=[1.0, 0.0]
min_err=f
#for mul in range(1, 8):
for mul in range(1, 36):
#for div in range(1, 0x20):
for div in range(1, 255):
freq=(f*mul/(1.0*div))
err=abs(freq - ftarg)
print(mul, div, freq, err)
if(err < min_err):
min_err_val=[mul, div]
print("last minerr: %f, new minerr: %f, mul: %d, div: %d" % (min_err, err, mul, div))
min_err=err
print("MUL-DIV values:")
print(min_err_val)
print("Absolute error: %0.2f %% " % ((f*min_err_val[0]/min_err_val[1]-ftarg)/ftarg*100))