|
7 | 7 | from misoclib.soc import mem_decoder
|
8 | 8 | from targets.pipistrello import BaseSoC
|
9 | 9 |
|
10 |
| -from artiq.gateware import rtio, ad9858 |
| 10 | +from artiq.gateware import amp, rtio, ad9858 |
11 | 11 |
|
12 | 12 |
|
13 | 13 | _tester_io = [
|
@@ -140,4 +140,27 @@ def __init__(self, platform, **kwargs):
|
140 | 140 | self.add_wb_slave(mem_decoder(0xb0000000), self.dds.bus)
|
141 | 141 |
|
142 | 142 |
|
| 143 | +class Double(_QcAdapterBase): Has conversations. Original line has conversations. |
| 144 | + csr_map = { |
| 145 | + "kernel_cpu": 14 |
| 146 | + } |
| 147 | + csr_map.update(_QcAdapterBase.csr_map) |
| 148 | + |
| 149 | + def __init__(self, platform, *args, **kwargs): |
| 150 | + _QcAdapterBase.__init__(self, platform, **kwargs) |
| 151 | + |
| 152 | + self.submodules.kernel_cpu = amp.KernelCPU( |
| 153 | + platform, self.sdram.crossbar.get_master()) |
| 154 | + self.submodules.mailbox = amp.Mailbox() |
| 155 | + self.add_wb_slave(mem_decoder(0xd0000000), self.mailbox.i1) |
| 156 | + self.kernel_cpu.add_wb_slave(mem_decoder(0xd0000000), self.mailbox.i2) |
| 157 | + |
| 158 | + rtio_csrs = self.rtio.get_csrs() |
| 159 | + self.submodules.rtiowb = wbgen.Bank(rtio_csrs) |
| 160 | + self.kernel_cpu.add_wb_slave(mem_decoder(0xa0000000), self.rtiowb.bus) |
| 161 | + self.add_csr_region("rtio", 0xa0000000, 32, rtio_csrs) |
| 162 | + |
| 163 | + self.kernel_cpu.add_wb_slave(mem_decoder(0xb0000000), self.dds.bus) |
| 164 | + |
| 165 | + |
143 | 166 | default_subtarget = Single
|