874214e1e75596ae8a6cb230e928b1c754377d68
1 # This file is Copyright (c) 2015-2020 Florent Kermarrec <florent@enjoy-digital.fr>
2 # This file is Copyright (c) 2017-2018 Tim 'mithro' Ansell <me@mith.ro>
7 # CPU ----------------------------------------------------------------------------------------------
17 linker_output_format
= None
23 def __init__(self
, *args
, **kwargs
):
27 variants
= ["standard"]
30 reset_address
= 0x00000000
31 io_regions
= {0x00000000: 0x100000000} # origin, length
34 mem_map
= {"csr": 0x00000000}
36 CPU_GCC_TRIPLE_RISCV32
= (
37 "riscv64-unknown-elf",
38 "riscv32-unknown-elf",
43 "riscv64-linux-gnu-gcc",
48 CPU_GCC_TRIPLE_RISCV64
= (
49 "riscv64-unknown-elf",
52 "riscv64-linux-gnu-gcc",
57 # CPUS ---------------------------------------------------------------------------------------------
60 from litex
.soc
.cores
.cpu
.lm32
import LM32
63 from litex
.soc
.cores
.cpu
.mor1kx
import MOR1KX
66 from litex
.soc
.cores
.cpu
.microwatt
import Microwatt
69 from litex
.soc
.cores
.cpu
.serv
import SERV
70 from litex
.soc
.cores
.cpu
.picorv32
import PicoRV32
71 from litex
.soc
.cores
.cpu
.minerva
import Minerva
72 from litex
.soc
.cores
.cpu
.vexriscv
import VexRiscv
73 from litex
.soc
.cores
.cpu
.cv32e40p
import CV32E40P
76 from litex
.soc
.cores
.cpu
.rocket
import RocketRV64
77 from litex
.soc
.cores
.cpu
.blackparrot
import BlackParrotRV64
80 from litex
.soc
.cores
.cpu
.zynq7000
import Zynq7000
94 "microwatt" : Microwatt
,
98 "picorv32" : PicoRV32
,
100 "vexriscv" : VexRiscv
,
101 "cv32e40p" : CV32E40P
,
104 "rocket" : RocketRV64
,
105 "blackparrot" : BlackParrotRV64
,
108 "zynq7000" : Zynq7000
,