Florent Kermarrec
926d54cb41
sipeed_tang_nano_4k: Switch to LiteX's UART and expose hyperram parameter.
2024-01-11 13:54:44 +01:00
Florent Kermarrec
52aeec00d7
sipeed_tang_nano_4k: Remove note since openFPGALoader regression has been fixed.
2024-01-04 18:29:31 +01:00
Florent Kermarrec
c0a98a6b9d
targets/sipeed_tang_nano_4k: Directly integrate flashing of EMCU flash.
...
Ex to build/flash bitstream + firmware with EMCU:
./sipeed_tang_nano_4k.py --cpu-type=gowin_emcu --build --flash
2024-01-03 13:07:44 +01:00
Florent Kermarrec
55ade3b2df
sipeed_tang_nano_4k: Minor cleanup/add comments.
2024-01-02 13:42:56 +01:00
Gwenhael Goavec-Merou
e8bc9fa81d
targets/sipeed_tang_nano_4k: adding description to write Gowin EMCU firmware
2023-12-14 13:24:57 +01:00
Florent Kermarrec
f400179b5b
targets: Import all from litex.gen on all targets.
2023-02-23 09:09:33 +01:00
Florent Kermarrec
58489ebebf
targets/BaseSoC: Cleanup parameters.
2022-11-08 12:31:49 +01:00
Florent Kermarrec
9e7079c4c8
targets: Remove int() on BaseSoC's sys_clk_freq.
2022-11-08 11:54:17 +01:00
Florent Kermarrec
b0e6414519
targets: Cleanup arguments and switch --sys-clk-freq to float (avoid conversion in code).
2022-11-08 10:41:35 +01:00
Florent Kermarrec
16b9677acd
targets: Switch to soc_core_argdict.
...
The next move was to remove soc_core and only keep soc; so this is probably the right time to do
it in targets to avoid having to handle it later.
2022-11-07 08:43:26 +01:00
Florent Kermarrec
33b0400aed
targets: Update LiteXArgumentParser imports.
2022-11-06 21:39:52 +01:00
Gwenhael Goavec-Merou
9960f38d95
targets: replace LiteXSoCArgumentParser by LiteXArgumentParser, remove tasks done LiteXArgumentParser
2022-11-06 11:27:47 +01:00
Florent Kermarrec
548a028730
targets: Switch to LiteXModule to simplify/cleanup code.
2022-10-27 21:21:37 +02:00
Gwenhael Goavec-Merou
0f242629ab
targets/sipeed_tang_nano_4k: replacing VideoHDMIPHY by VideoGowinHDMIPHY and adding with-video-terminal arg
2022-09-06 19:08:01 +02:00
Florent Kermarrec
45494f60e0
targets: Change SoC/Software headers generation behaviour (Now only generated with --build).
...
Re-generating the SoC/Software headers was causing some un-expected behaviours for users not familiar
with the flow. For example doing a --load with a different configuration, was re-generating the Software
headers and messing up things when trying to run software on the SoC.
2022-05-06 15:14:32 +02:00
Florent Kermarrec
28da4f83eb
targets: Use new HyperRAM's sys_clk_freq parameter.
2022-05-02 16:43:52 +02:00
Florent Kermarrec
877bc4b45e
targets: Use full imports (vendor_board).
2022-05-02 12:55:11 +02:00
Florent Kermarrec
a611f035d6
targets: Move CRG before SoCCore init (More logical and simplify some specific reset schemes) and switch SoCCore to one line when possible.
...
Moving CRG simplify reset with NaxRiscv debug module and is in fact more logical.
Also do some minor updates/cosmetic changes while touching CRG/SoCCore.
2022-04-21 12:19:45 +02:00
Florent Kermarrec
9d452b0d74
targets: Create target_group for target arguments.
2022-03-21 18:37:40 +01:00
Florent Kermarrec
cc8da9d341
targets: Simplify imports and switch to LiteXSocArgumentParser.
...
CPU parameters are now selectively exposed to the user:
./digilent_arty.py --cpu-type=vexriscv_smp --help will show VexRiscv-SMP parameters.
./digilent_arty.py --cpu-type=naxriscv --help will show NaxRiscv parameters.
2022-03-21 16:59:40 +01:00
Florent Kermarrec
496b2cfab9
targets/gowin: Switch to get_bitstream_filename.
2022-03-17 09:40:10 +01:00
Florent Kermarrec
773444a7dd
targets: Switch to get_bios_filename/get_bitstream_filename.
2022-03-17 09:21:05 +01:00
Florent Kermarrec
a19c03fa55
targets: Switch to generic/portable HyperRAM core from LiteX.
2022-03-01 09:10:19 +01:00
Florent Kermarrec
1abb03e514
tang_nano_4k: Review/Cleanup:
...
- Revert abstractions on clk_name/period: Too much abstraction to avoid duplications makes the code more difficult to read.
ex:
- When constraining clk27, frequency is already in the name.
- In the target, we want to know we are using clk27 as the main clk.
- We need a default sys_clk_freq for project only importing BaseSoC.
- Revert SPI Flash import (for consistency with other targets).
- Keep VexRiscv as default CPU since this target is able to run it and also for consistency with other targets.
2022-01-24 18:46:51 +01:00
Ilia Sergachev
6238052b10
tang nano 4k: disable spi flash with gowin emcu, cleanup
2022-01-23 16:10:46 +01:00
Ilia Sergachev
6c81fc708c
tang nano 4k: add memory regions, set default cpu
2022-01-23 13:05:51 +01:00
Florent Kermarrec
fccb952c4b
target: Remove ident_version=True no longer required.
2022-01-18 17:13:02 +01:00
Florent Kermarrec
4b6a9b2cf0
targets/spiflash: Simplify self.cpu.set_reset_address call.
2022-01-07 15:19:23 +01:00
Florent Kermarrec
8151bf7ffa
targets: Update and simplify SPI-Flash support (Address is now automatically allocated).
2022-01-07 10:34:47 +01:00
Florent Kermarrec
53dc00eab7
targets/parser: Rely on argparse.ArgumentDefaultsHelpFormatter to provide default in help description.
...
Also do minor adjustments while doing this.
2022-01-05 17:06:40 +01:00
Ilia Sergachev
14a8c50e97
sipeed_tang_nano_4k: connect Gowin EMCU UART, undo unnecessary changes
2021-12-09 00:17:48 +01:00
Ilia Sergachev
6274c4c425
sipeed_tang_nano_4k: connect Gowin EMCU UART
2021-12-09 00:12:31 +01:00
Ilia Sergachev
13c83ba532
sipeed_tang_nano_4k: add initial Gowin EMCU support
2021-12-08 23:50:14 +01:00
Ilia Sergachev
4287ab561e
sipeed_tang_nano_4k: allow non-vexriscv CPUs
2021-12-08 23:33:49 +01:00
Ilia Sergachev
666ef9dad3
sipeed_tang_nano_4k: use minimal vexriscv variant to fit into number of BSRAMs
2021-11-29 11:46:32 +01:00
Ilia Sergachev
2fb734a0f2
sipeed_tang_nano*: adapt Gowin PLL changes in litex
2021-11-29 11:45:13 +01:00
Florent Kermarrec
5190c9c869
sipeed_tang_nano_4k: Initial Video Out support.
...
With colorbars for now, need to free up BRAMS for Video Terminal (or finish HyperRAM support).
2021-09-20 09:32:20 +02:00
Florent Kermarrec
7161ad18ec
sipeed_tang_nano_4k: Integrate new LiteX's GW1NSRPLL.
2021-09-20 08:40:19 +02:00
Florent Kermarrec
a5c5ba7652
sipeed_tang_nano_4k: Integrate HyperRam (not yet working).
2021-09-17 16:30:39 +02:00
Florent Kermarrec
376a836583
sipeed_tang_nano: Add SPI Flash, Enable CPU and use new external SPI Flash support from OpenFPGALoader.
...
./sipeed_tang_nano_4k.py --cpu-type=vexriscv --cpu-variant=lite --build --flash
__ _ __ _ __
/ / (_) /____ | |/_/
/ /__/ / __/ -_)> <
/____/_/\__/\__/_/|_|
Build your hardware, easily!
(c) Copyright 2012-2021 Enjoy-Digital
(c) Copyright 2007-2015 M-Labs
BIOS built on Sep 17 2021 15:54:08
BIOS CRC passed (6cc6de6d)
Migen git sha1: a5bc262
LiteX git sha1: 46cd9c5a
--=============== SoC ==================--
CPU: VexRiscv_Lite @ 27MHz
BUS: WISHBONE 32-bit @ 4GiB
CSR: 32-bit data
ROM: 64KiB
SRAM: 8KiB
FLASH: 4096KiB
--========== Initialization ============--
Initializing W25Q32 SPI Flash @0x80000000...
SPI Flash clk configured to 13 MHz
Memspeed at 0x80000000 (Sequential, 4.0KiB)...
Read speed: 1.3MiB/s
Memspeed at 0x80000000 (Random, 4.0KiB)...
Read speed: 521.9KiB/s
--============== Boot ==================--
Booting from serial...
Press Q or ESC to abort boot completely.
sL5DdSMmkekro
Timeout
No boot medium found
--============= Console ================--
litex>
2021-09-17 15:57:55 +02:00
Florent Kermarrec
5955a35372
Add initial Sipeed Tang Nano support (Clk/Leds/Buttons).
2021-09-16 19:22:30 +02:00
Florent Kermarrec
8d91489756
tang_nano_4k: Add more IOs.
2021-09-09 11:23:20 +02:00
Florent Kermarrec
88534c6689
tang_nano_4k: Fix typo in sipeed.
2021-09-08 23:02:39 +02:00