Commit Graph

497 Commits

Author SHA1 Message Date
Angelo Jacobo be6b2a3b8d
Merge pull request #37 from AngeloJacobo/dev_max_freq
Show every modifications done per optimization step
2026-01-18 12:25:34 +08:00
AngeloJacobo e22c2b1c53 fix whitespaces 2026-01-18 12:17:36 +08:00
AngeloJacobo 2226aa4461 Step 7: Resize registers 2026-01-18 12:01:58 +08:00
AngeloJacobo 859963ad20 Step 6: Optimize wb_stall logic 2026-01-18 11:55:31 +08:00
AngeloJacobo 5066c3d280 Step 5: Optimize stage-1 stall and stage-2 stall logic 2026-01-18 11:40:26 +08:00
AngeloJacobo f724ec0d43 Step 4: Arrange logic (stage-2 pre/act/wr-rd logic) 2026-01-18 11:25:47 +08:00
AngeloJacobo fad0a7b19a Step 3: Register conditions in advance (calibration fsm) 2026-01-18 11:19:04 +08:00
AngeloJacobo 282d9596ca Step 2: Register conditions in advance (2-stage pipeline) 2026-01-18 11:06:49 +08:00
AngeloJacobo 98fe547262 Step 1: Separate _q (sequential) from _d (combinational) logic 2026-01-18 10:52:57 +08:00
AngeloJacobo a653bbeb35 revert ddr3_controller to commit a1258e2 (before optimizing) 2026-01-18 10:19:05 +08:00
Angelo Jacobo b46b2ca06d
Merge pull request #36 from AngeloJacobo/dev_max_freq
Increase max frequency of controller and add CaaS flow
2026-01-11 13:34:08 +08:00
AngeloJacobo 30731d1b4c add files for caas and linked uberddr3 files 2026-01-11 13:30:06 +08:00
AngeloJacobo df67fc038b add files for caas and linked uberddr3 files 2026-01-11 12:03:03 +08:00
AngeloJacobo 31b3642fbe run @ 133MHz with yosys 2025-12-31 14:40:04 +08:00
AngeloJacobo ad50f79695 run @ 100MHz with yosys 2025-12-31 14:39:16 +08:00
AngeloJacobo 407c1a8115 update dfu file 2025-12-31 14:38:32 +08:00
AngeloJacobo 383e53d647 run @ 125MHz with yosys 2025-12-31 14:38:13 +08:00
AngeloJacobo b38d9801ba run @ 100MHz with yosys 2025-12-31 14:37:32 +08:00
AngeloJacobo 3c4c4b9f83 optimize stage1/2 stall logic, optimize size of registers (delay_before_*, added_read_pipe*, delay_read_pipe), register huge conditions, explicit removal of unused states) 2025-12-31 14:35:04 +08:00
AngeloJacobo 3d94fae1e6 separated sequential from combinational logic for pipeline stage logic 2025-12-29 14:36:25 +08:00
AngeloJacobo a3ffeb670f register conditions for anticipate logic; change logic order for stage 2 from r/w-act-pre to pre-act-r/w 2025-12-29 10:26:32 +08:00
AngeloJacobo 0b3bb30fae added define for UART-debugging of BIST exclusively 2025-12-27 13:01:19 +08:00
AngeloJacobo 356c6cc1a2 run at DDR3-1000 (125MHz controller clock) 2025-12-26 10:02:16 +08:00
AngeloJacobo 80da754a64 achieve >40% increase in max frequency 2025-12-26 09:50:12 +08:00
AngeloJacobo 864b8069c3 fix read_data_store_lane logic 2025-12-23 10:01:57 +08:00
AngeloJacobo a3edea5e00 add prep state for ANALYZE_DATA to cut timing path due to indexing with lane 2025-12-22 13:11:20 +08:00
AngeloJacobo c605135dd9 make o_wb_stall/o_wb_stall_calib combinational logic 2025-12-22 08:50:40 +08:00
AngeloJacobo fdf1becc03 register stage2 if-else conditions (2.4% increase in max freq) 2025-12-19 17:39:03 +08:00
AngeloJacobo ba640ca59c optimize wb_stall/wb_stall_calib logic (3.7% increase in max freq) 2025-12-14 11:53:04 +08:00
AngeloJacobo a1258e2eed added back main wcfg file 2025-06-14 11:52:13 +08:00
AngeloJacobo a3efc861da update bistream files from latest CI run 2025-06-05 18:55:44 +08:00
AngeloJacobo 9c3249b8dd log files are renamed with PASS_ for easier checking 2025-06-03 19:26:05 +08:00
Angelo Jacobo 4d60a19154
Merge pull request #32 from AngeloJacobo/run_iverilog_sim
Run simulation with Icarus Verilog
2025-05-25 09:12:59 +08:00
AngeloJacobo da4ffebe9b update vivado sim log files 2025-05-25 09:03:28 +08:00
AngeloJacobo e5bd0d74c3 use SIM_MODEL directive to use models during vivado simulation 2025-05-25 09:03:16 +08:00
AngeloJacobo a33560122c added icarus simulation scripts (PASSING!) 2025-05-24 17:35:39 +08:00
AngeloJacobo cb5f78b057 modified vivado simulation files 2025-05-24 17:33:49 +08:00
AngeloJacobo 972506bb4b moved verilog models to model/ 2025-05-24 17:31:55 +08:00
AngeloJacobo 8fbb6387ab removed UART in example demo for arty s7 to pass openxc7 timing 2025-05-24 17:31:13 +08:00
AngeloJacobo f0b4a15b7c icarus verilog simulation now working! 2025-05-18 17:08:38 +08:00
AngeloJacobo 4be9a30ff8 added files needed for icarus simulation (not yet working) 2025-05-18 15:24:10 +08:00
Angelo Jacobo 4b159fa03a
Merge pull request #31 from AngeloJacobo/pass_verilator_lint
Pass verilator lint
2025-05-12 18:35:28 +08:00
AngeloJacobo 157cca28d8 fixed late_dq logic 2025-05-12 18:27:57 +08:00
AngeloJacobo 90647a70e0 resolved (again) the verilator lint 2025-05-12 16:28:07 +08:00
AngeloJacobo 5f8f5974b4 added vivado on makefile (make vivado) 2025-05-12 16:02:38 +08:00
AngeloJacobo fe8563ed65 update all simulation log files 2025-05-12 11:05:36 +08:00
AngeloJacobo 9fd104b566 updated example demo bitstream files 2025-05-11 20:11:05 +08:00
AngeloJacobo 50c0a6488d verilator now passing lint even with older verilator version 2025-05-11 20:02:13 +08:00
Angelo Jacobo 264801fc99
Merge pull request #30 from AngeloJacobo/ecp5_phy
added support for lattice ecp5 PHY, now working on orangecrab ECP5
2025-04-19 14:57:57 +08:00
AngeloJacobo 5b0c48ca0a fixed bug on vivado IP (convert string to long for SELF_REFRESH) 2025-04-19 13:59:30 +08:00