Skip to content

Commit aef9275

Browse files
committedMar 14, 2015
mibuild/xilinx: export special_overrides dictionary
1 parent d34b7d7 commit aef9275

File tree

2 files changed

+11
-12
lines changed

2 files changed

+11
-12
lines changed
 

‎mibuild/xilinx/common.py

+10
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
from migen.fhdl.std import *
55
from migen.fhdl.specials import SynthesisDirective
66
from migen.genlib.cdc import *
7+
from migen.genlib.resetsync import AsyncResetSynchronizer
8+
from migen.genlib.io import *
79
from mibuild import tools
810

911
def settings(path, ver=None, sub=None):
@@ -81,3 +83,11 @@ class XilinxDifferentialOutput:
8183
@staticmethod
8284
def lower(dr):
8385
return XilinxDifferentialOutputImpl(dr.i, dr.o_p, dr.o_n)
86+
87+
xilinx_special_overrides = {
88+
NoRetiming: XilinxNoRetiming,
89+
MultiReg: XilinxMultiReg,
90+
AsyncResetSynchronizer: XilinxAsyncResetSynchronizer,
91+
DifferentialInput: XilinxDifferentialInput,
92+
DifferentialOutput: XilinxDifferentialOutput,
93+
}

‎mibuild/xilinx/platform.py

+1-12
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
from migen.genlib.cdc import *
2-
from migen.genlib.resetsync import AsyncResetSynchronizer
3-
from migen.genlib.io import *
4-
51
from mibuild.generic_platform import GenericPlatform
62
from mibuild.xilinx import common, vivado, ise
73

@@ -18,20 +14,13 @@ def __init__(self, *args, toolchain="ise", **kwargs):
1814
raise ValueError("Unknown toolchain")
1915

2016
def get_verilog(self, *args, special_overrides=dict(), **kwargs):
21-
so = {
22-
NoRetiming: common.XilinxNoRetiming,
23-
MultiReg: common.XilinxMultiReg,
24-
AsyncResetSynchronizer: common.XilinxAsyncResetSynchronizer,
25-
DifferentialInput: common.XilinxDifferentialInput,
26-
DifferentialOutput: common.XilinxDifferentialOutput,
27-
}
17+
so = dict(common.xilinx_special_overrides)
2818
so.update(special_overrides)
2919
return GenericPlatform.get_verilog(self, *args, special_overrides=so, **kwargs)
3020

3121
def get_edif(self, fragment, **kwargs):
3222
return GenericPlatform.get_edif(self, fragment, "UNISIMS", "Xilinx", self.device, **kwargs)
3323

34-
3524
def build(self, *args, **kwargs):
3625
return self.toolchain.build(self, *args, **kwargs)
3726

0 commit comments

Comments
 (0)
Please sign in to comment.