forked from M-Labs/artiq
1
0
Fork 0

phaser: add miqro mode

This commit is contained in:
Robert Jördens 2022-09-02 09:32:02 +00:00
parent 47f90a58cc
commit 31663556b8
1 changed files with 25 additions and 12 deletions

View File

@ -709,9 +709,10 @@ class Phaser(_EEM):
) for pol in "pn"] ) for pol in "pn"]
@classmethod @classmethod
def add_std(cls, target, eem, iostandard=default_iostandard): def add_std(cls, target, eem, mode, iostandard=default_iostandard):
cls.add_extension(target, eem, iostandard=iostandard) cls.add_extension(target, eem, iostandard=iostandard)
if mode == "phaser":
phy = phaser.Phaser( phy = phaser.Phaser(
target.platform.request("phaser{}_ser_p".format(eem)), target.platform.request("phaser{}_ser_p".format(eem)),
target.platform.request("phaser{}_ser_n".format(eem))) target.platform.request("phaser{}_ser_n".format(eem)))
@ -723,6 +724,18 @@ class Phaser(_EEM):
rtio.Channel.from_phy(phy.ch1.frequency), rtio.Channel.from_phy(phy.ch1.frequency),
rtio.Channel.from_phy(phy.ch1.phase_amplitude), rtio.Channel.from_phy(phy.ch1.phase_amplitude),
]) ])
elif mode == "miqro":
phy = phaser.Miqro(
target.platform.request("phaser{}_ser_p".format(eem)),
target.platform.request("phaser{}_ser_n".format(eem)))
target.submodules += phy
target.rtio_channels.extend([
rtio.Channel.from_phy(phy, ififo_depth=4),
rtio.Channel.from_phy(phy.ch0),
rtio.Channel.from_phy(phy.ch1),
])
else:
raise ValueError("invalid mode", mode)
class HVAmp(_EEM): class HVAmp(_EEM):