Commit Graph

57 Commits

Author SHA1 Message Date
AngeloJacobo 760c75d238 passes optimized pipeline stall control and passed fwb_slave properties 2023-06-29 12:56:24 +08:00
AngeloJacobo 2cfbba6d28 change ff to unix 2023-06-24 08:04:21 +08:00
AngeloJacobo 2221a739db add 2 clocks in prestall delay to pass tWR violation, add more asserts for fwb_slave 2023-06-24 07:46:09 +08:00
AngeloJacobo b0e3b83e96 added wb properties from zipcpu repo 2023-06-22 19:54:39 +08:00
AngeloJacobo ef10bfd455 add data mask port 2023-06-22 19:52:45 +08:00
AngeloJacobo 272711762e add phy for data mask (oserdes -> odelay -> obuf) 2023-06-22 19:51:06 +08:00
AngeloJacobo 0ffdacf6e7 add logic for write wb_ack, wb_sel, and aux 2023-06-22 19:49:05 +08:00
AngeloJacobo 0923fdc0b6 add formal assertions using fifo to prove every wb request has a corresponding read/write command output 2023-06-15 17:43:15 +08:00
AngeloJacobo 053a511144 set write-to-read delay for all banks for every write 2023-06-10 08:19:16 +08:00
AngeloJacobo 806b49ebd5 changed folder name with underscore 2023-06-08 14:05:35 +08:00
AngeloJacobo f3e15e9ea4 added test 1: Sequential write then sequential read 2023-06-08 13:56:54 +08:00
AngeloJacobo 2e6c2183aa added sim duration for possible bus delays 2023-06-08 13:55:20 +08:00
AngeloJacobo de37c5a972 added wires for loadingg delay tap 2023-06-08 13:53:07 +08:00
AngeloJacobo b9204332b1 made delay tap loadable 2023-06-08 13:52:04 +08:00
AngeloJacobo c3707dab53 made delay tap loadable and made delay more flexible to use all 32 taps for both dqs and dq 2023-06-08 11:01:56 +08:00
Angelo Jacobo 98ed92a65b
added testbench for a single ddr3 device sim 2023-06-03 14:28:55 +08:00
Angelo Jacobo 9a19f82377
added testbench for model simulation 2023-06-03 14:24:11 +08:00
Angelo Jacobo 884fd2bcad
Add files via upload 2023-06-01 19:59:45 +08:00
Angelo Jacobo 6127bba77a
fixed data alignment for write operation, fixed CL and CWL for 100MHz:400MHz clk 2023-06-01 19:18:41 +08:00
Angelo Jacobo 26af4960e9
fixed display for prev_cmd and time difference 2023-06-01 19:15:36 +08:00
Angelo Jacobo 0a43b04f9e
added phy for generating differential o_ddr3_clk 2023-05-29 21:51:48 +08:00
Angelo Jacobo d6b6c0b9a4
added o_ddr3_clk port 2023-05-29 21:48:44 +08:00
Angelo Jacobo 9e529131c0
fixed error "added_read_pipe has multiple drivers" 2023-05-29 20:52:48 +08:00
Angelo Jacobo a56e6a8a24
changed write calibration pattern with high autocorrel stat 2023-05-29 16:40:41 +08:00
Angelo Jacobo 400a277cdc
added 52ns sync reset (IDELAYCTRL requirement) 2023-05-29 16:19:32 +08:00
Angelo Jacobo 02d512df55
Delete sdram.txt 2023-05-28 16:20:52 +08:00
Angelo Jacobo 12b533a9d1
added top module which instantiates the controller and phy 2023-05-28 16:20:22 +08:00
Angelo Jacobo f648035e4e
added phy interface (separated from controller) 2023-05-28 16:19:47 +08:00
Angelo Jacobo ab26902f7a
include only the controller (phy is now a separate module) 2023-05-28 16:18:14 +08:00
Angelo Jacobo 854839dde9
readme file from Micron 2023-05-28 16:14:21 +08:00
Angelo Jacobo b9154a38bb
Delete rtl/DDR3 directory
clean-up the repo
2023-05-28 16:11:49 +08:00
Angelo Jacobo fb8dd029e3
Delete ug586_7Series_MIS.pdf 2023-05-28 16:08:40 +08:00
Angelo Jacobo 6710b5b62b
Add files via upload 2023-05-25 19:14:12 +08:00
Angelo Jacobo 1e89a236df
fixed implementation errors in Vivado 2023-05-25 19:13:30 +08:00
Angelo Jacobo a7de749ddf
Add files via upload 2023-05-22 19:53:20 +08:00
Angelo Jacobo 94d6253069
Add files via upload 2023-05-18 11:02:40 +08:00
Angelo Jacobo 991dcad40b
Add files via upload 2023-05-18 10:50:30 +08:00
Angelo Jacobo 8e6c422689
complete read and write calibration 2023-05-18 10:45:26 +08:00
Angelo Jacobo c33bc40bd3
Update ddr3_controller.v 2023-05-11 15:35:34 +08:00
Angelo Jacobo 9be5b5a616
Update ddr3_controller.v 2023-05-11 14:49:47 +08:00
Angelo Jacobo f3c4b1b465
Update ddr3_controller.v 2023-05-10 15:23:48 +08:00
Angelo Jacobo c0172c24a3
added read phy interface 2023-04-27 19:40:35 +08:00
Angelo Jacobo a5b14accf4
added PHY interface 2023-04-20 19:37:15 +08:00
Angelo Jacobo 060a0373e9
Update ddr3_controller.v 2023-04-06 19:56:55 +08:00
Angelo Jacobo 3b110018c7
Update ddr3_controller.v 2023-04-06 19:43:32 +08:00
Angelo Jacobo fec8b5b3fc
Update ddr3_controller.v 2023-04-06 19:01:02 +08:00
Angelo Jacobo ae201bfd04
removed irrelevant comments 2023-03-30 19:18:55 +08:00
Angelo Jacobo 192a9950e4
applied :retab 2023-03-30 18:27:58 +08:00
Angelo Jacobo fa5fcc2615
use a 4-bit counter plus a 4-bit mask for tracking delay in every bank
this is the optimized delay-tracking mechanism on which the 32-bit shift regs is replaced by a 4-bit counter plus a 4-bit mask. This uses lower resources but still able to track the delays and the exact slot number where the delay is already satisfied (hence no added latency)
2023-03-30 18:17:46 +08:00
Angelo Jacobo fa3f5e0d65
use 32-bit shift reg for tracking delay inside every bank
There are 4 delays being tracked (delay_before_precharge, delay_before_activate, delay_before_read, and delay_before_write) and 8 banks, that means 32x4x8 = 1024 bits needed for this tracking delay mechanism (totally wasteful!)
2023-03-30 18:14:09 +08:00