1 from fractions
import Fraction
3 from migen
.fhdl
.structure
import *
6 def __init__(self
, infreq
, outfreq1x
):
8 self
.trigger_reset
= Signal()
24 setattr(self
, name
, s
)
25 generated
.append((name
, s
))
27 ratio
= Fraction(outfreq1x
)/Fraction(infreq
)
28 in_period
= float(Fraction(1000000000)/Fraction(infreq
))
30 self
._inst
= Instance("m1crg",
33 ("clkin", self
.clkin
),
34 ("trigger_reset", self
.trigger_reset
)
37 ("in_period", in_period
),
38 ("f_mult", ratio
.numerator
),
39 ("f_div", ratio
.denominator
)
43 def get_fragment(self
):
44 return Fragment(instances
=[self
._inst
],
45 pads
={self
.clkin
, self
.ac97_rst_n
, self
.videoin_rst_n
, self
.flash_rst_n
})