forked from M-Labs/artiq
conda: add Sayma AMC standalone board package
This commit is contained in:
parent
e43e14152a
commit
44959144d8
|
@ -27,6 +27,7 @@ from artiq.gateware import remote_csr
|
|||
from artiq.gateware import rtio
|
||||
from artiq.gateware.rtio.phy import ttl_simple, sawg
|
||||
from artiq import __version__ as artiq_version
|
||||
from artiq import __path__ as artiq_path
|
||||
|
||||
|
||||
PhyPads = namedtuple("PhyPads", "txp txn")
|
||||
|
@ -98,7 +99,7 @@ class AD9154(Module, AutoCSR):
|
|||
self.sync.jesd += conv.eq(Cat(ch.o))
|
||||
|
||||
|
||||
class SaymaAMCStandalone(MiniSoC, AMPSoC):
|
||||
class Standalone(MiniSoC, AMPSoC):
|
||||
mem_map = {
|
||||
"cri_con": 0x10000000,
|
||||
"rtio": 0x11000000,
|
||||
|
@ -219,6 +220,9 @@ class SaymaAMCStandalone(MiniSoC, AMPSoC):
|
|||
|
||||
|
||||
def main():
|
||||
installed_rtm_csr_csv = os.path.join(
|
||||
artiq_path[0], "binaries", "sayma_rtm", "sayma_rtm_csr.csv")
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
description="ARTIQ device binary builder / Sayma AMC stand-alone")
|
||||
builder_args(parser)
|
||||
|
@ -226,17 +230,24 @@ def main():
|
|||
parser.add_argument("--rtm-csr-csv",
|
||||
default=os.path.join("artiq_sayma_rtm", "sayma_rtm_csr.csv"),
|
||||
help="CSV file listing remote CSRs on RTM (default: %(default)s)")
|
||||
parser.add_argument("--installed-rtm-csr-csv",
|
||||
default=False, action="store_true",
|
||||
help="use installed CSV file for RTM CSRs instead "
|
||||
"({}, default: %(default)s)".format(installed_rtm_csr_csv))
|
||||
parser.add_argument("--with-sawg",
|
||||
default=False, action="store_true",
|
||||
help="add JESD204B and SAWG channels (default: %(default)s)")
|
||||
args = parser.parse_args()
|
||||
|
||||
soc = SaymaAMCStandalone(with_sawg=args.with_sawg,
|
||||
**soc_sdram_argdict(args))
|
||||
soc = Standalone(with_sawg=args.with_sawg, **soc_sdram_argdict(args))
|
||||
|
||||
if args.installed_rtm_csr_csv:
|
||||
rtm_csr_csv = installed_rtm_csr_csv
|
||||
else:
|
||||
rtm_csr_csv = args.rtm_csr_csv
|
||||
remote_csr_regions = remote_csr.get_remote_csr_regions(
|
||||
soc.mem_map["serwb"] | soc.shadow_base,
|
||||
args.rtm_csr_csv)
|
||||
rtm_csr_csv)
|
||||
for name, origin, busword, csrs in remote_csr_regions:
|
||||
soc.add_csr_region(name, origin, busword, csrs)
|
||||
# Configuration for RTM peripherals. Keep in sync with sayma_rtm.py!
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/bash
|
||||
|
||||
SOC_PREFIX=$PREFIX/lib/python3.5/site-packages/artiq/binaries/sayma_amc-standalone
|
||||
mkdir -p $SOC_PREFIX
|
||||
|
||||
V=1 $PYTHON -m artiq.gateware.targets.sayma_amc_standalone --installed-rtm-csr-csv
|
||||
cp misoc_standalone_sayma_amc/gateware/top.bit $SOC_PREFIX
|
||||
cp misoc_standalone_sayma_amc/software/bios/bios.bin $SOC_PREFIX
|
||||
cp misoc_standalone_sayma_amc/software/runtime/runtime.fbi $SOC_PREFIX
|
|
@ -0,0 +1,24 @@
|
|||
package:
|
||||
name: artiq-sayma_amc-standalone
|
||||
version: {{ environ.get("GIT_DESCRIBE_TAG", "") }}
|
||||
|
||||
source:
|
||||
git_url: ../..
|
||||
|
||||
build:
|
||||
noarch: generic
|
||||
ignore_prefix_files: True
|
||||
number: {{ environ.get("GIT_DESCRIBE_NUMBER", 0) }}
|
||||
string: py_{{ environ.get("GIT_DESCRIBE_NUMBER", 0) }}+git{{ environ.get("GIT_FULL_HASH", "")[:8] }}
|
||||
|
||||
requirements:
|
||||
build:
|
||||
- artiq-dev {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||
- artiq-sayma_rtm {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||
run:
|
||||
- artiq {{ "{tag} py_{number}+git{hash}".format(tag=environ.get("GIT_DESCRIBE_TAG"), number=environ.get("GIT_DESCRIBE_NUMBER"), hash=environ.get("GIT_FULL_HASH", "")[:8]) if "GIT_DESCRIBE_TAG" in environ else "" }}
|
||||
|
||||
about:
|
||||
home: https://m-labs.hk/artiq
|
||||
license: LGPL
|
||||
summary: 'Bitstream, BIOS and runtime for stand-alone Sayma AMC'
|
Loading…
Reference in New Issue