gram.git
2 years agoadd dfii submodules so they get explicit names
Luke Kenneth Casson Leighton [Sun, 20 Feb 2022 01:32:09 +0000 (01:32 +0000)]
add dfii submodules so they get explicit names

2 years agoadd name to DFI Interface (helps gtkwave traces)
Luke Kenneth Casson Leighton [Sun, 20 Feb 2022 01:04:53 +0000 (01:04 +0000)]
add name to DFI Interface (helps gtkwave traces)

2 years agofix gram unit test imports
Luke Kenneth Casson Leighton [Sat, 19 Feb 2022 23:48:32 +0000 (23:48 +0000)]
fix gram unit test imports

2 years agofix ECP5DDRPHY cs declaration
Luke Kenneth Casson Leighton [Wed, 16 Feb 2022 12:33:11 +0000 (12:33 +0000)]
fix ECP5DDRPHY cs declaration

4 years agogram.test.test_core_bankmachine: Reduce formal test depth
Jean THOMAS [Fri, 7 Aug 2020 19:29:02 +0000 (21:29 +0200)]
gram.test.test_core_bankmachine: Reduce formal test depth

4 years agoAdd links to other memory controller projects
Jean THOMAS [Fri, 7 Aug 2020 18:35:47 +0000 (20:35 +0200)]
Add links to other memory controller projects

4 years agogram.core.multiplexer: Fix variable name in _Steerer
Jean THOMAS [Fri, 7 Aug 2020 17:51:53 +0000 (19:51 +0200)]
gram.core.multiplexer: Fix variable name in _Steerer

4 years agogram.test.test_core_multiplexer: Add test for _Steerer (fixing #7)
Jean THOMAS [Fri, 7 Aug 2020 16:57:12 +0000 (18:57 +0200)]
gram.test.test_core_multiplexer: Add test for _Steerer (fixing #7)

4 years agogram.core.multiplexer: Remove unnecessary array slicing
Jean THOMAS [Fri, 7 Aug 2020 16:31:19 +0000 (18:31 +0200)]
gram.core.multiplexer: Remove unnecessary array slicing

4 years agogram.core.multiplexer: Code cleaning in _Steerer
Jean THOMAS [Fri, 7 Aug 2020 16:23:37 +0000 (18:23 +0200)]
gram.core.multiplexer: Code cleaning in _Steerer

4 years agogram.core.multiplexer: Cleaner code in _Steerer
Jean THOMAS [Fri, 7 Aug 2020 16:17:35 +0000 (18:17 +0200)]
gram.core.multiplexer: Cleaner code in _Steerer

4 years agoexamples: Display rdly map
Jean THOMAS [Fri, 7 Aug 2020 16:10:54 +0000 (18:10 +0200)]
examples: Display rdly map

4 years agogram.test.test_core_bankmachine: Ensure refresh_gnt isn't asserted if there is no...
Jean THOMAS [Fri, 7 Aug 2020 16:04:29 +0000 (18:04 +0200)]
gram.test.test_core_bankmachine: Ensure refresh_gnt isn't asserted if there is no refresh request (fixing #7)

4 years agogram.core.bankmachine: Make condition code cleaner
Jean THOMAS [Fri, 7 Aug 2020 15:28:41 +0000 (17:28 +0200)]
gram.core.bankmachine: Make condition code cleaner

4 years agogram.core.bankmachine: Add comment for address slicers
Jean THOMAS [Fri, 7 Aug 2020 15:27:51 +0000 (17:27 +0200)]
gram.core.bankmachine: Add comment for address slicers

4 years agogram.core.bankmachine: Remove unused local variables in BankMachine
Jean THOMAS [Fri, 7 Aug 2020 15:13:01 +0000 (17:13 +0200)]
gram.core.bankmachine: Remove unused local variables in BankMachine

4 years agogram.core.bankmachine: Rename LiteDRAM -> gram in documentation
Jean THOMAS [Fri, 7 Aug 2020 14:40:58 +0000 (16:40 +0200)]
gram.core.bankmachine: Rename LiteDRAM -> gram in documentation

4 years agogram.test.test_core_bankmachine: Add test for _AddressSlicer (fixing #7)
Jean THOMAS [Fri, 7 Aug 2020 14:19:39 +0000 (16:19 +0200)]
gram.test.test_core_bankmachine: Add test for _AddressSlicer (fixing #7)

4 years agogram.test.test_core_refresher: Add test for ZQCSExecuter (fixing #7)
Jean THOMAS [Fri, 7 Aug 2020 14:02:03 +0000 (16:02 +0200)]
gram.test.test_core_refresher: Add test for ZQCSExecuter (fixing #7)

4 years agogram.phy.ecp5ddrphy: Fix ECP5DDRPHYInit (wrong domains)
Jean THOMAS [Fri, 7 Aug 2020 11:57:35 +0000 (13:57 +0200)]
gram.phy.ecp5ddrphy: Fix ECP5DDRPHYInit (wrong domains)

4 years agogram.phy.ecp5ddrphy: Remove internal signal for delay
Jean THOMAS [Fri, 7 Aug 2020 10:33:06 +0000 (12:33 +0200)]
gram.phy.ecp5ddrphy: Remove internal signal for delay

4 years agogram.phy.ecp5ddrphy: Detect burstdet on rising edge, not by logic level
Jean THOMAS [Fri, 7 Aug 2020 10:24:09 +0000 (12:24 +0200)]
gram.phy.ecp5ddrphy: Detect burstdet on rising edge, not by logic level

4 years agoexamples: Load stock calibration profile if calibration failed
Jean THOMAS [Thu, 6 Aug 2020 16:49:19 +0000 (18:49 +0200)]
examples: Load stock calibration profile if calibration failed

4 years agogram.phy.ecp5ddrphy: Make non-critical signals reset-less
Jean THOMAS [Thu, 6 Aug 2020 15:28:41 +0000 (17:28 +0200)]
gram.phy.ecp5ddrphy: Make non-critical signals reset-less

4 years agogram.phy.ecp5ddrphy: Revert to LiteDRAM's dqs_re
Jean THOMAS [Thu, 6 Aug 2020 15:28:03 +0000 (17:28 +0200)]
gram.phy.ecp5ddrphy: Revert to LiteDRAM's dqs_re

4 years agogram.core.multiplexer: Fix regression introduced in 7d8339c
Jean THOMAS [Thu, 6 Aug 2020 15:22:49 +0000 (17:22 +0200)]
gram.core.multiplexer: Fix regression introduced in 7d8339c

4 years agoexamples: Make frequency a parameter
Jean THOMAS [Thu, 6 Aug 2020 15:16:10 +0000 (17:16 +0200)]
examples: Make frequency a parameter

4 years agoexamples: Continue self-test even if calibration is unsuccessful
Jean THOMAS [Thu, 6 Aug 2020 14:57:47 +0000 (16:57 +0200)]
examples: Continue self-test even if calibration is unsuccessful

4 years agogram.phy.ecp5ddrphy: Remove unused stream import
Jean THOMAS [Thu, 6 Aug 2020 11:15:19 +0000 (13:15 +0200)]
gram.phy.ecp5ddrphy: Remove unused stream import

4 years agogram.phy.ecp5ddrphy: Add documentation for _DQSBUFMSettingManager
Jean THOMAS [Thu, 6 Aug 2020 10:43:10 +0000 (12:43 +0200)]
gram.phy.ecp5ddrphy: Add documentation for _DQSBUFMSettingManager

4 years agogram.test: Use correct timing for simulations
Jean THOMAS [Thu, 6 Aug 2020 10:30:21 +0000 (12:30 +0200)]
gram.test: Use correct timing for simulations

4 years agogram.phy.ecp5ddrphy: Fix DQSBUFM's pause signal (fixes #51)
Jean THOMAS [Thu, 6 Aug 2020 10:28:13 +0000 (12:28 +0200)]
gram.phy.ecp5ddrphy: Fix DQSBUFM's pause signal (fixes #51)

4 years agogram.phy.ecp5ddrphy: Code cleaning
Jean THOMAS [Thu, 6 Aug 2020 09:59:26 +0000 (11:59 +0200)]
gram.phy.ecp5ddrphy: Code cleaning

4 years agogram.core.bankmachine: Factorize tXXDController valid signal
Jean THOMAS [Wed, 5 Aug 2020 14:44:43 +0000 (16:44 +0200)]
gram.core.bankmachine: Factorize tXXDController valid signal

4 years agoFix code styling
Jean THOMAS [Wed, 5 Aug 2020 14:37:38 +0000 (16:37 +0200)]
Fix code styling

4 years agoRemove steerer_sel function
Jean THOMAS [Wed, 5 Aug 2020 13:36:19 +0000 (15:36 +0200)]
Remove steerer_sel function

4 years agoFix test using delays for comb propagation instead of additional clock pulses
Jean THOMAS [Wed, 5 Aug 2020 13:33:01 +0000 (15:33 +0200)]
Fix test using delays for comb propagation instead of additional clock pulses

4 years agoAdd unit test for tXXDController
Jean THOMAS [Wed, 5 Aug 2020 12:54:30 +0000 (14:54 +0200)]
Add unit test for tXXDController

4 years agoFix AntiStarvation test
Jean THOMAS [Tue, 4 Aug 2020 15:24:51 +0000 (17:24 +0200)]
Fix AntiStarvation test

4 years agoFix exception condition
Jean THOMAS [Tue, 4 Aug 2020 13:57:38 +0000 (15:57 +0200)]
Fix exception condition

4 years agoRaise ValueError if the number of DQ pads is not a multiple of 8 (fixing #48)
Jean THOMAS [Tue, 4 Aug 2020 13:48:24 +0000 (15:48 +0200)]
Raise ValueError if the number of DQ pads is not a multiple of 8 (fixing #48)

4 years agoRaise ValueError if RefreshTimer period is unsupported (fixing #48)
Jean THOMAS [Tue, 4 Aug 2020 13:47:08 +0000 (15:47 +0200)]
Raise ValueError if RefreshTimer period is unsupported (fixing #48)

4 years agoRaise ValueError if anti-starvation timeout is unsupported (fixing #48)
Jean THOMAS [Tue, 4 Aug 2020 13:45:37 +0000 (15:45 +0200)]
Raise ValueError if anti-starvation timeout is unsupported (fixing #48)

4 years agoRaise ValueError if commands array isn't of len=4 (fixing #48)
Jean THOMAS [Tue, 4 Aug 2020 13:43:56 +0000 (15:43 +0200)]
Raise ValueError if commands array isn't of len=4 (fixing #48)

4 years agoSample data based on datavalid signal (fixes #47)
Jean THOMAS [Tue, 4 Aug 2020 13:37:08 +0000 (15:37 +0200)]
Sample data based on datavalid signal (fixes #47)

4 years agoRaise exception if no native port is present (fixing #48)
Jean THOMAS [Tue, 4 Aug 2020 13:27:40 +0000 (15:27 +0200)]
Raise exception if no native port is present (fixing #48)

4 years agoMake burstdet_reg reset-less
Jean THOMAS [Tue, 4 Aug 2020 12:14:24 +0000 (14:14 +0200)]
Make burstdet_reg reset-less

4 years agoFix simulation to support diff pairs
Jean THOMAS [Tue, 4 Aug 2020 11:24:11 +0000 (13:24 +0200)]
Fix simulation to support diff pairs

4 years agoFix sel signal used in wishbone frontend
Jean THOMAS [Tue, 4 Aug 2020 10:00:53 +0000 (12:00 +0200)]
Fix sel signal used in wishbone frontend

4 years agoDefault SEL to 1's if SEL=0 (fixes #43)
Jean THOMAS [Tue, 4 Aug 2020 09:29:28 +0000 (11:29 +0200)]
Default SEL to 1's if SEL=0 (fixes #43)

4 years agoRemove unused variable in wishbone frontend test
Jean THOMAS [Tue, 4 Aug 2020 09:28:50 +0000 (11:28 +0200)]
Remove unused variable in wishbone frontend test

4 years agoAdd additional tests for sel signal
Jean THOMAS [Mon, 3 Aug 2020 20:05:44 +0000 (22:05 +0200)]
Add additional tests for sel signal

4 years agoAdd more sel tests
Jean THOMAS [Mon, 3 Aug 2020 16:03:26 +0000 (18:03 +0200)]
Add more sel tests

4 years agoFix native port we signal (fixes #44)
Jean THOMAS [Mon, 3 Aug 2020 15:51:43 +0000 (17:51 +0200)]
Fix native port we signal (fixes #44)

4 years agoFix sel test
Jean THOMAS [Mon, 3 Aug 2020 15:51:13 +0000 (17:51 +0200)]
Fix sel test

4 years agoAdd test for wishbone sel signal
Jean THOMAS [Mon, 3 Aug 2020 15:47:09 +0000 (17:47 +0200)]
Add test for wishbone sel signal

4 years agoRevert to dqs_re from LiteDRAM
Jean THOMAS [Mon, 3 Aug 2020 11:46:34 +0000 (13:46 +0200)]
Revert to dqs_re from LiteDRAM

4 years agoUse const qualifier for gram_read/gram_write
Jean THOMAS [Mon, 3 Aug 2020 11:39:04 +0000 (13:39 +0200)]
Use const qualifier for gram_read/gram_write

4 years agoUpdate setup.py (based on LUNA)
Jean THOMAS [Mon, 3 Aug 2020 11:35:50 +0000 (13:35 +0200)]
Update setup.py (based on LUNA)

4 years agoUse mainstream ECPIX5 platform file (fixing #38)
Jean THOMAS [Mon, 3 Aug 2020 11:29:44 +0000 (13:29 +0200)]
Use mainstream ECPIX5 platform file (fixing #38)

4 years agoUse -Werror
Jean THOMAS [Mon, 3 Aug 2020 11:25:48 +0000 (13:25 +0200)]
Use -Werror

4 years agoFix memtest abort
Jean THOMAS [Mon, 3 Aug 2020 11:05:42 +0000 (13:05 +0200)]
Fix memtest abort

4 years agoAdd auto calibration result check, abort memtest if more than 10 fails
Jean THOMAS [Mon, 3 Aug 2020 11:02:07 +0000 (13:02 +0200)]
Add auto calibration result check, abort memtest if more than 10 fails

4 years agoDon't test the same rdly twice
Jean THOMAS [Mon, 3 Aug 2020 10:57:40 +0000 (12:57 +0200)]
Don't test the same rdly twice

4 years agoFix pointer bug
Jean THOMAS [Mon, 3 Aug 2020 10:57:24 +0000 (12:57 +0200)]
Fix pointer bug

4 years agoRemove we_n from xdr list
Jean THOMAS [Mon, 3 Aug 2020 10:45:01 +0000 (12:45 +0200)]
Remove we_n from xdr list

4 years agoAdd return value to gram_init
Jean THOMAS [Mon, 3 Aug 2020 10:38:52 +0000 (12:38 +0200)]
Add return value to gram_init

4 years agoRead delay calibration: return error codes
Jean THOMAS [Mon, 3 Aug 2020 10:38:28 +0000 (12:38 +0200)]
Read delay calibration: return error codes

4 years agoUse DiffPairs for DQS
Jean THOMAS [Mon, 3 Aug 2020 10:31:10 +0000 (12:31 +0200)]
Use DiffPairs for DQS

4 years agoFix warnings in libgram
Jean THOMAS [Mon, 3 Aug 2020 10:27:47 +0000 (12:27 +0200)]
Fix warnings in libgram

4 years agoCompile libgram in SourceHut builds
Jean THOMAS [Mon, 3 Aug 2020 10:02:04 +0000 (12:02 +0200)]
Compile libgram in SourceHut builds

4 years agoRemove comment
Jean THOMAS [Mon, 3 Aug 2020 09:41:26 +0000 (11:41 +0200)]
Remove comment

4 years agoRemove we_n in xdr list
Jean THOMAS [Mon, 3 Aug 2020 09:41:07 +0000 (11:41 +0200)]
Remove we_n in xdr list

4 years agoMake calibration a bit faster
Jean THOMAS [Mon, 3 Aug 2020 09:33:50 +0000 (11:33 +0200)]
Make calibration a bit faster

4 years agoFix typo
Jean THOMAS [Fri, 31 Jul 2020 11:57:59 +0000 (13:57 +0200)]
Fix typo

4 years agoRemove unused memtest
Jean THOMAS [Thu, 30 Jul 2020 16:59:04 +0000 (18:59 +0200)]
Remove unused memtest

4 years agoAdd calibration documentation
Jean THOMAS [Thu, 30 Jul 2020 16:53:23 +0000 (18:53 +0200)]
Add calibration documentation

4 years agoLoad calibration when initializing gram
Jean THOMAS [Thu, 30 Jul 2020 16:28:21 +0000 (18:28 +0200)]
Load calibration when initializing gram

4 years agoAdd rdly auto calibration
Jean THOMAS [Thu, 30 Jul 2020 16:27:33 +0000 (18:27 +0200)]
Add rdly auto calibration

4 years agoRemove DDR4 modules
Jean THOMAS [Thu, 30 Jul 2020 15:18:13 +0000 (17:18 +0200)]
Remove DDR4 modules

4 years agoFix output in gram_read_burstdet
Jean THOMAS [Thu, 30 Jul 2020 15:08:26 +0000 (17:08 +0200)]
Fix output in gram_read_burstdet

4 years agoAdd burstdet code
Jean THOMAS [Thu, 30 Jul 2020 15:03:45 +0000 (17:03 +0200)]
Add burstdet code

4 years agoRemove unnecessary volatile qualifier
Jean THOMAS [Thu, 30 Jul 2020 15:00:31 +0000 (17:00 +0200)]
Remove unnecessary volatile qualifier

4 years agoFix identation
Jean THOMAS [Thu, 30 Jul 2020 15:00:01 +0000 (17:00 +0200)]
Fix identation

4 years agoRemove write logging and change loop conditions
Jean THOMAS [Thu, 30 Jul 2020 14:59:41 +0000 (16:59 +0200)]
Remove write logging and change loop conditions

4 years agoFix identation
Jean THOMAS [Thu, 30 Jul 2020 14:59:07 +0000 (16:59 +0200)]
Fix identation

4 years agoRemove hardcoded MRx, use gramProfile instead
Jean THOMAS [Thu, 30 Jul 2020 14:58:31 +0000 (16:58 +0200)]
Remove hardcoded MRx, use gramProfile instead

4 years agoRemove memtest
Jean THOMAS [Thu, 30 Jul 2020 14:40:29 +0000 (16:40 +0200)]
Remove memtest

4 years agoRename gram_calibration_auto to gram_generate_calibration
Jean THOMAS [Thu, 30 Jul 2020 13:55:54 +0000 (15:55 +0200)]
Rename gram_calibration_auto to gram_generate_calibration

4 years agoAdd MRx mode registers to the gramProfile structure, rename gram_calibration_auto...
Jean THOMAS [Thu, 30 Jul 2020 13:55:20 +0000 (15:55 +0200)]
Add MRx mode registers to the gramProfile structure, rename gram_calibration_auto to gram_generate_calibration

4 years agoRemove main.img.bin target, add clean target
Jean THOMAS [Thu, 30 Jul 2020 13:53:13 +0000 (15:53 +0200)]
Remove main.img.bin target, add clean target

4 years agoSet default value for dram_rst
Jean THOMAS [Thu, 30 Jul 2020 13:52:39 +0000 (15:52 +0200)]
Set default value for dram_rst

4 years agoFix typo
Jean THOMAS [Thu, 30 Jul 2020 13:52:11 +0000 (15:52 +0200)]
Fix typo

4 years agoRemove iverilog, use Yosys/SymbiYosys from YoWASP
Jean THOMAS [Wed, 29 Jul 2020 17:47:59 +0000 (19:47 +0200)]
Remove iverilog, use Yosys/SymbiYosys from YoWASP

4 years agoIgnore sublime-workspace files
Jean THOMAS [Wed, 29 Jul 2020 16:50:48 +0000 (18:50 +0200)]
Ignore sublime-workspace files

4 years agoRemove datavalid signal
Jean THOMAS [Wed, 29 Jul 2020 16:49:50 +0000 (18:49 +0200)]
Remove datavalid signal

4 years agoFix peripheral addresses, improve memory testing
Jean THOMAS [Wed, 29 Jul 2020 16:09:47 +0000 (18:09 +0200)]
Fix peripheral addresses, improve memory testing

4 years agoAdd example SoC code
Jean THOMAS [Wed, 29 Jul 2020 16:01:48 +0000 (18:01 +0200)]
Add example SoC code

4 years agoFix code styling
Jean THOMAS [Wed, 29 Jul 2020 15:01:55 +0000 (17:01 +0200)]
Fix code styling

4 years agoEnsure sync2x and sync are in sync (fixes #20)
Jean THOMAS [Wed, 29 Jul 2020 14:46:25 +0000 (16:46 +0200)]
Ensure sync2x and sync are in sync (fixes #20)