Florent Kermarrec
3a37d3ba98
software/libbase/hyperram: Add missing #ifdef.
2024-08-20 17:11:02 +02:00
Florent Kermarrec
eb29b40e07
soc/cores/hyperbus: Simplify CS and make it synchronous to allow IO Reg.
2024-08-20 16:19:15 +02:00
Florent Kermarrec
1998c74549
soc/cores/hyperbus: Make DQ/RWDS input sync explicit to allow IO Reg.
2024-08-20 15:44:53 +02:00
Florent Kermarrec
8b86b16077
soc/cores/hyperbus: Make Rst synchronous to allow IO Reg (even if low speed).
2024-08-20 15:26:26 +02:00
Florent Kermarrec
76cf004913
test/test_hyperbus: Update.
2024-08-20 15:17:36 +02:00
Florent Kermarrec
b0026937c1
soc/software/libbase: Move HyperRAM init code to libbase/hyperram.c.
2024-08-20 14:58:51 +02:00
Florent Kermarrec
a30651e44e
soc/cores/hyperbus: Avoid waiting for clk_phase in IDLE state to reduce latency.
2024-08-20 14:44:33 +02:00
Florent Kermarrec
bfe000150c
soc/cores/hyperbus: Rework Clk generation to allow having using an IO Reg.
2024-08-20 14:25:23 +02:00
Florent Kermarrec
7b413352c2
soc/cores/hyperbus: Directly specify default sys_clk_freq in __init__.
2024-08-20 12:04:23 +02:00
Florent Kermarrec
8f5c2dfbca
soc/cores/hyperbus: Fix build with SDRTristate (to prepare tests with it).
2024-08-20 12:03:40 +02:00
Florent Kermarrec
3a53a92bb2
soc/cores/hyperbus: Simplify/Rework Data Shift-Out Register.
2024-08-20 11:38:33 +02:00
Florent Kermarrec
9c1958d692
soc/cores/hyperbus: Simplify/Rework Data Shift-In Register.
2024-08-20 11:26:58 +02:00
Florent Kermarrec
db86ec08b8
soc/cores/hyperbus: Better split parameters/signals and use intermediate dq_o/oe/i and rwds_o/oe/i signals.
2024-08-20 11:12:17 +02:00
Florent Kermarrec
1f71f3d68b
soc/cores/hyperbus: Cleanup CSn/Clk generation and add comments.
2024-08-20 10:40:24 +02:00
Florent Kermarrec
a960dc33bc
soc/cores/hyperbus: Minor cleanup changes.
2024-08-20 10:26:34 +02:00
Florent Kermarrec
b95b66b554
soc/cores/hyperbus: Switch to Tristate instead of TSTriple and prepare for SDRTristate (not enabled for now).
2024-08-20 10:10:53 +02:00
Florent Kermarrec
afc66fd5cf
cores/picorv32: Fix idbus.sel for reads.
2024-08-19 13:34:50 +02:00
Florent Kermarrec
bccd1e9c54
CHANGES.md: Update.
2024-08-19 10:37:13 +02:00
Gwenhael Goavec-Merou
6623a5b691
Merge pull request #2028 from VOGL-electronic/spi_ram_add
...
soc: add add_spi_ram function
2024-08-16 19:08:48 +02:00
Gwenhael Goavec-Merou
26e7eef3ce
Merge pull request #2042 from pepijndevos/apicula
...
Gowin: add dual use gpio options
2024-08-16 18:58:04 +02:00
Pepijn de Vos
039be2a248
add dual use gpio options
2024-08-16 15:56:24 +02:00
Gwenhael Goavec-Merou
cbb1adfa7b
Merge pull request #2036 from Mai-Lapyst/gowin-add-apicula
...
Adds apicula toolchain to gowin platform
2024-08-15 08:54:40 +02:00
Mai-Lapyst
dc3f2d6421
Add missing license header to apicula.py
2024-08-15 01:54:31 +02:00
Mai-Lapyst
623536cd6a
Remove empty build_timing_constraints override in GowinApiculaToolchain
2024-08-15 01:52:22 +02:00
Mai-Lapyst
e0968b3574
Adds apicula toolchain to gowin platform
2024-08-12 06:55:11 +02:00
Gwenhael Goavec-Merou
b279fc9fb3
Merge pull request #2035 from Mai-Lapyst/fix_empty_initpy
...
Fix litex.build.gowin's __init__.py; closes #2034
2024-08-11 10:06:09 +02:00
Mai-Lapyst
3d0fe4ebca
Fix litex.build.gowin's __init__.py; closes #2034
2024-08-11 05:44:14 +02:00
enjoy-digital
6309f30e0b
Merge pull request #2030 from trabucayre/gowin_build_gw5a_primitives
...
build/gowin/common.py: re-add tristate impl and SDRxxx for GW5A/Arora family (required for SDRAM use)
2024-08-07 09:23:21 +02:00
Gwenhael Goavec-Merou
3cd820974a
build/gowin/common.py: re-add tristate impl and SDRxxx for GW5A/Arora family (required for SDRAM use)
2024-08-04 09:39:46 +02:00
Fin Maaß
cd457c9809
soc: add l2 cache to spi_ram
...
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2024-08-01 15:51:45 +02:00
Matthias Breithaupt
e29dc39377
openocd/jtagspi: Allow users to specify additional init commands
...
This change makes it possible to e.g. use flahs chips that would not be correctly detected by OpenOCD.
All that has to be done is to add `init_commands=["jtagspi set 0 \"name\" {size} {pagesize} {read_cmd} 0 {pprg_cmd} {mass_erase_cmd} {sector_size} {sector_erase_cmd}"]`.
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
2024-08-01 15:51:45 +02:00
Matthias Breithaupt
41b346d141
bios: mem_read: reduce number of reads on mapped registers (only supports 32-bit aligned addresses)
...
Instead of reading each individual byte, causing multiple 4-byte requests to each address, this
change results in a single read for each address.
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
2024-08-01 15:51:45 +02:00
Matthias Breithaupt
03a0a6fd9b
soc: add add_spi_ram function
...
Signed-off-by: Matthias Breithaupt <m.breithaupt@vogl-electronic.com>
2024-08-01 15:51:45 +02:00
Florent Kermarrec
f855417afc
README.md: Be more positive and shorter in moral precisions :).
2024-07-31 14:55:10 +02:00
enjoy-digital
74127d51c5
Merge pull request #2024 from trabucayre/altera_agilex5_sdrtristate_special
...
build/altera/common.py: implement SDRTristate for Agilex5 family
2024-07-30 19:22:25 +02:00
Gwenhael Goavec-Merou
1f6673c6eb
build/altera/common.py: implement SDRTristate for Agilex5 family
2024-07-30 16:36:05 +02:00
enjoy-digital
3041150773
Merge pull request #2021 from trabucayre/altera_agilex5_ddr_special
...
build/altera/common,platform: added ddrinput/ddrout primitives
2024-07-26 18:26:19 +02:00
Florent Kermarrec
ba8830e6cd
global: Remove @trabucayre's tracers :)
2024-07-26 12:57:01 +02:00
Florent Kermarrec
5c5bc82f22
interconnect/packet/PacketFIFO: Fix payload_fifo.sink.valid.
...
Needs to be filtered on param_fifo.sink.ready and not payload_fifo.sink.ready.
2024-07-26 11:52:17 +02:00
Gwenhael Goavec-Merou
dc04949d78
build/altera/common,platform: added ddrinput/ddrout primitives
2024-07-25 14:11:06 +02:00
Florent Kermarrec
c51d22074f
soc/integration/soc/add_uart: Allow directly passing uart_pads.
...
Useful for test purpose when testing multiple UART peripherals without having to expose them on IOs.
2024-07-22 16:23:22 +02:00
Gwenhael Goavec-Merou
b8cb6da2b9
soc/cores/clock/lattice_nx.py: added clk contraints for OSCA output
2024-07-22 15:11:40 +02:00
Florent Kermarrec
ecd0f0e548
cores/ram/lattice_nx: Revert #1906 since not working with RAM combining multiple SP512K.
2024-07-22 14:24:34 +02:00
enjoy-digital
4662b95f16
Merge pull request #2012 from machdyne/master
...
soc/cores/video: Add additional color formats
2024-07-21 09:34:00 +02:00
enjoy-digital
4301293b21
Merge pull request #2018 from motec-research/add_i2c_master
...
Add i2c master
2024-07-21 09:32:48 +02:00
Andrew Dennison
67e6614eb2
test_i2c: whitespace cleanups
2024-07-20 15:45:44 +10:00
Radek Pesina
643f3f9a93
test_i2c: add more commands
2024-07-20 15:45:44 +10:00
Andrew Dennison
f99658200e
soc/cores/i2c: rewrite state machine
...
* Fix READ: was reading too many bits
* CLeaner transitions between states: ACK=>IDLE with scl=0. Other to IDLE with scl=1
* Now cleanly supports RESTART
* conceptual support for compound commands - not exposed yet
* fix tests: now appears to be I2C compliant
2024-07-20 15:45:44 +10:00
Andrew Dennison
13811aeacb
test_i2c: update to use improved _MockTristate
...
* test now checks the actual i2c bus state, not the I2CMaster output
* refactor to eliminate some copy/paste
* tests now work again with this change: 'only change SDA when SCL is stable'
2024-07-20 15:45:44 +10:00
Andrew Dennison
b779933a5f
test_i2c: improve and document _MockTristate*
...
Added i_mock for simulated external device:
* when _oe = 0 _i = _i_mock
* when _oe = 1 _i = _o
2024-07-20 15:45:44 +10:00