Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							6521d2b468 
							
						 
					 
					
						
						
							
							Also changed the shadow ram's dcache copy widths.  
						
						 
						
						... 
						
						
						
						Merge branch 'dcache' into main 
						
					 
					
						2021-07-16 14:21:09 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							b3bf04d474 
							
						 
					 
					
						
						
							
							Updated wave file.  
						
						 
						
						
						
					 
					
						2021-07-16 12:34:37 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							46bce70e42 
							
						 
					 
					
						
						
							
							Fixed walker fault interaction with dcache.  
						
						 
						
						
						
					 
					
						2021-07-16 12:22:13 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							e5d624c1fa 
							
						 
					 
					
						
						
							
							Found bug in the PMA such that invalid addresses were sent to the tim.  Once addressing this issue the sv48 test fails early with a pma access fault.  
						
						 
						
						
						
					 
					
						2021-07-15 11:56:35 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							fd1de6b047 
							
						 
					 
					
						
						
							
							Updated wave file.  
						
						 
						
						
						
					 
					
						2021-07-15 11:04:49 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							704f4f724e 
							
						 
					 
					
						
						
							
							dcache STATE_CPU_BUSY needs to assert CommittedM.   This is required to ensure a completed memory operation is not bound to an interrupt.  ie. MEPC should not be PCM when committed.  
						
						 
						
						
						
					 
					
						2021-07-14 23:08:07 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							ba1e1ec231 
							
						 
					 
					
						
						
							
							Finally have the ptw correctly walking through the dcache to update the itlb.  
						
						 
						
						... 
						
						
						
						Still not working fully. 
						
					 
					
						2021-07-14 22:26:07 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							2c946a282f 
							
						 
					 
					
						
						
							
							Fixed d cache not honoring StallW for uncache writes and reads.  
						
						 
						
						
						
					 
					
						2021-07-14 17:23:28 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							e91501985c 
							
						 
					 
					
						
						
							
							Routed CommittedM and PendingInterruptM through the lsu arb.  
						
						 
						
						
						
					 
					
						2021-07-14 16:18:09 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							9b756d6a94 
							
						 
					 
					
						
						
							
							Implemented uncached reads.  
						
						 
						
						
						
					 
					
						2021-07-13 23:03:09 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							3e57c899a2 
							
						 
					 
					
						
						
							
							Partially working changes to support uncached memory access.  Not sure what CommitedM is.  
						
						 
						
						
						
					 
					
						2021-07-13 17:24:59 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							baa2b5d15f 
							
						 
					 
					
						
						
							
							Fixed interaction between icache stall and dcache.  On hit dcache needs to enter a cpu busy state when the cpu is stalled.  
						
						 
						
						
						
					 
					
						2021-07-13 14:51:42 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							3c1a717399 
							
						 
					 
					
						
						
							
							Fixed the fetch buffer accidental overwrite on eviction.  
						
						 
						
						
						
					 
					
						2021-07-13 14:21:29 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							32f27cfecf 
							
						 
					 
					
						
						
							
							Dcache AHB address generation was wrong. Needed to zero the offset.  
						
						 
						
						
						
					 
					
						2021-07-13 14:19:04 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							afc1bc9c38 
							
						 
					 
					
						
						
							
							Moved StoreStall into the hazard unit instead of in the d cache.  
						
						 
						
						
						
					 
					
						2021-07-13 13:20:50 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							e594eb540d 
							
						 
					 
					
						
						
							
							Got the shadow ram cache flush working.  
						
						 
						
						
						
					 
					
						2021-07-13 10:03:47 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							49f6eec579 
							
						 
					 
					
						
						
							
							Team work on solving the dcache data inconsistency problem.  
						
						 
						
						
						
					 
					
						2021-07-12 23:46:32 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							1cc258ade1 
							
						 
					 
					
						
						
							
							Progress towards the test bench flush.  
						
						 
						
						
						
					 
					
						2021-07-12 14:22:13 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							60ed023734 
							
						 
					 
					
						
						
							
							Actually writes the correct data now on stores.  
						
						 
						
						
						
					 
					
						2021-07-10 17:48:47 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							6e7e318396 
							
						 
					 
					
						
						
							
							Fixed bug in the LSU pagetable walker interlock.  
						
						 
						
						
						
					 
					
						2021-07-06 10:41:36 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							a252416535 
							
						 
					 
					
						
						
							
							Removed the TranslationVAdrQ as it is not necessary.  
						
						 
						
						
						
					 
					
						2021-07-04 16:49:34 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							5b70eb86b0 
							
						 
					 
					
						
						
							
							relocated lsuarb and pagetable walker inside the lsu. Does not pass busybear or buildroot, but passes rv32ic and rv64ic.  
						
						 
						
						
						
					 
					
						2021-07-04 13:49:38 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							61027f650c 
							
						 
					 
					
						
						
							
							OMG. It's working!  
						
						 
						
						
						
					 
					
						2021-07-01 17:37:53 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							2dc349ea6f 
							
						 
					 
					
						
						
							
							Fixed the wrong virtual address write into the dtlb.  
						
						 
						
						
						
					 
					
						2021-07-01 16:55:16 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							88a18496cf 
							
						 
					 
					
						
						
							
							Got some stores working in virtual memory.  
						
						 
						
						
						
					 
					
						2021-07-01 12:49:09 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							002c32d2ad 
							
						 
					 
					
						
						
							
							The icache ptw interlock is actually correct now.  There needed to be a 1 cycle delay.  
						
						 
						
						
						
					 
					
						2021-06-30 17:02:36 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							9ec624702d 
							
						 
					 
					
						
						
							
							Major rewrite of ptw to remove combo loop.  
						
						 
						
						
						
					 
					
						2021-06-30 16:25:03 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							b2d8ba6742 
							
						 
					 
					
						
						
							
							The icache now correctly interlocks with the PTW on TLB miss.  
						
						 
						
						
						
					 
					
						2021-06-30 11:24:26 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							dd84f2958e 
							
						 
					 
					
						
						
							
							Page table walker now walks the table.  
						
						 
						
						... 
						
						
						
						Added interlock so the icache stalls.
Page table walker not walking correctly, goes to fault state. 
						
					 
					
						2021-06-29 22:33:57 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							bc9c944ba0 
							
						 
					 
					
						
						
							
							Don't use this branch walker still broken.  
						
						 
						
						
						
					 
					
						2021-06-28 17:26:11 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							d80ebab941 
							
						 
					 
					
						
						
							
							AMO and LR/SC instructions now working correctly.  
						
						 
						
						... 
						
						
						
						Page table walking is not working. 
						
					 
					
						2021-06-25 15:42:07 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							b4a788c341 
							
						 
					 
					
						
						
							
							Working through a combo loop.  
						
						 
						
						
						
					 
					
						2021-06-25 14:49:27 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							d6c19e73f4 
							
						 
					 
					
						
						
							
							Regression test runs further.  The LSU state machine which fakes the Dcache had a few bugs.  MemAccessM needed to be squashed on bus faults.  
						
						 
						
						
						
					 
					
						2021-06-25 11:05:17 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							6bab454b17 
							
						 
					 
					
						
						
							
							Works until pma checker breaks the simulation by reading HADDR rather than data physical address.  
						
						 
						
						
						
					 
					
						2021-06-24 14:42:59 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							7406e33b61 
							
						 
					 
					
						
						
							
							Continued I-Cache cleanup.  
						
						 
						
						... 
						
						
						
						Removed strange mux on InstrRawD along with
the select logic. 
						
					 
					
						2021-06-04 15:14:05 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							191f7e61fd 
							
						 
					 
					
						
						
							
							Moved I-Cache offset selection mux to icache.sv (top level).  
						
						 
						
						... 
						
						
						
						When we switch to set associative this is will be more efficient. 
						
					 
					
						2021-06-04 13:49:33 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							fdef8df76b 
							
						 
					 
					
						
						
							
							Reorganized the icache names.  
						
						 
						
						
						
					 
					
						2021-06-04 12:53:42 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							7f38056879 
							
						 
					 
					
						
						
							
							fixed subtle typo in icache fsm. Was messing up hit spill hit.  
						
						 
						
						... 
						
						
						
						I believe the mibench qsort benchmark runs after this icache fix. 
						
					 
					
						2021-05-03 16:55:36 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							19a93345b5 
							
						 
					 
					
						
						
							
							Reduced icache to 1 port memory.  
						
						 
						
						
						
					 
					
						2021-05-03 14:47:49 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							a54c231489 
							
						 
					 
					
						
						
							
							Eliminated extra register and fixed ports to icache.  
						
						 
						
						... 
						
						
						
						Still need to support physical tag check and write in icache memory.
Still need to reduce to 1 port SRAM in icache.
I would like to refactor the icache code. 
						
					 
					
						2021-05-03 12:04:54 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							c7b97d0339 
							
						 
					 
					
						
						
							
							Added back in function name to wave.do  
						
						 
						
						
						
					 
					
						2021-05-03 09:04:48 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							72363f5c66 
							
						 
					 
					
						
						
							
							Added the ability to exclude branch predictor.  
						
						 
						
						
						
					 
					
						2021-04-26 14:27:42 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							6e803b724e 
							
						 
					 
					
						
						
							
							Merge branch 'tests' into icache-almost-working  
						
						 
						
						
						
					 
					
						2021-04-25 21:25:36 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							27ef10df07 
							
						 
					 
					
						
						
							
							almost working icache.  
						
						 
						
						
						
					 
					
						2021-04-23 16:47:23 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							020fb65adf 
							
						 
					 
					
						
						
							
							Fixed icache for 32 bit.  
						
						 
						
						... 
						
						
						
						Merge branch 'cache' into main 
						
					 
					
						2021-04-22 16:45:29 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							c42399bdb5 
							
						 
					 
					
						
						
							
							Yes. The hack to not repeat the d memory operation fixed this issue.  
						
						 
						
						
						
					 
					
						2021-04-22 15:22:56 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							d8ab7a5de2 
							
						 
					 
					
						
						
							
							Partially working icache.  
						
						 
						
						... 
						
						
						
						The current issue is a StallF is required to halt the icache from getting an updated PCF. However
if the dmemory is the reason for a stall it is possible for the icache stall to hold the d memory request continuously causing d memory to repeatedly read from memory.  This keeps StallF high and
the icache FSM is never allowed to complete. 
						
					 
					
						2021-04-22 10:20:36 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							7b3735fc25 
							
						 
					 
					
						
						
							
							Fixed for the instruction spills.  
						
						 
						
						
						
					 
					
						2021-04-21 16:47:05 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							532c8771ba 
							
						 
					 
					
						
						
							
							major progress.  
						
						 
						
						... 
						
						
						
						It's running the icache is imperas tests now.
Compressed does not work yet. 
						
					 
					
						2021-04-21 08:39:54 -05:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ross Thompson 
							
						 
					 
					
						
						
						
						
							
						
						
							f3093ac612 
							
						 
					 
					
						
						
							
							Why was the linter messed up?  
						
						 
						
						... 
						
						
						
						There are a number of combo loops which need fixing outside the icache.  They may be fixed in main.
We get to instruction address 50 now! 
						
					 
					
						2021-04-20 22:06:12 -05:00