Andrew Waterman 
							
						 
					 
					
						
						
							
						
						38808f55d5 
					 
					
						
						
							
							Share PMP mask gen between I$ and D$  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						86d84959cf 
					 
					
						
						
							
							More WIP on PMP  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						2888779422 
					 
					
						
						
							
							Flush pipeline from WB stage, not MEM  
						
						... 
						
						
						
						Fixes sptbr write -> instruction translation hazard. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						44ca3b60ab 
					 
					
						
						
							
							Retime PTW response valid bits  
						
						... 
						
						
						
						It's not just to save the gate delay; it also reduces wire delay by
allowing the flops to be closer to their respective TLBs. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						a03556220c 
					 
					
						
						
							
							Default TLB size = 32  
						
						... 
						
						
						
						@davidbiancolin 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						1875407316 
					 
					
						
						
							
							Get TLB permission checks off D$ clock gating critical path  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						a4164348b4 
					 
					
						
						
							
							Expose MXR to S-mode  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						0380aed329 
					 
					
						
						
							
							PUM -> SUM  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						2a413e4496 
					 
					
						
						
							
							Remove fruitless debug()  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						29414f3a23 
					 
					
						
						
							
							Simplify interrupt-stack discipline  
						
						... 
						
						
						
						f2ed45b179 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						723352c3e2 
					 
					
						
						
							
							Mitigate some more PMP critical paths  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						7484f27ed3 
					 
					
						
						
							
							Don't gate exception-cause pipeline registers separately  
						
						... 
						
						
						
						They are too narrow to justify gating separately from the other pipeline
registers (and one of the clock gates was on the PMP critical path). 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						3ea822c2cf 
					 
					
						
						
							
							Make blocking L1 D$ the default  
						
						... 
						
						
						
						The nonblocking cache is overdesigned for most Rocket-class cores, so
the blocking cache is the more appropriate default. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						487b8db5ef 
					 
					
						
						
							
							Address some PMP critical paths  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						03fb334c4c 
					 
					
						
						
							
							Take mprv calculation off critical path  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						f0796f0509 
					 
					
						
						
							
							Pass correct access size information to PMP checker  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						a6874c03f7 
					 
					
						
						
							
							Remove DecoupledTLB  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						78f9f6b9ef 
					 
					
						
						
							
							When SFENCE.VMA has rs2 != x0, don't flush global mappings  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						1b950128e1 
					 
					
						
						
							
							PTW should always use S-mode privilege  
						
						... 
						
						
						
						If an exception occurs while a page-table walk is coincidentally in
progress (e.g., an illegal instruction executes during data TLB refill),
then the processor might enter M-mode.  However, the PTW's accesses
should proceed without M privilege, to avoid bypassing PMPs.
Note, the same argument doesn't apply to the nonblocking cache's replay
queues, because those accesses have already been checked against the PMPs.
The cache correctly ignores access exceptions reported on replays,
provided no exceptions were reported on the initial access. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						aace526857 
					 
					
						
						
							
							WIP on PMP  
						
						
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						b1b405404d 
					 
					
						
						
							
							Set PRV=M when entering debug mode  
						
						... 
						
						
						
						Debug mode mostly behaves like M-mode, so this approach avoids having
to check the debug bit in most permission checks. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						cf168e419b 
					 
					
						
						
							
							Support SFENCE.VMA rs1 argument  
						
						... 
						
						
						
						This one's a little invasive.  To flush a specific entry from the TLB, you
need to reuse its CAM port.  Since the TLB lookup can be on the critical
path, we wish to avoid muxing in another address.
This is simple on the data side, where the datapath already carries rs1 to
the TLB (it's the same path as the AMO address calculation).  It's trickier
for the I$, where the TLB lookup address comes from the fetch stage PC.
The trick is to temporarily redirect the PC to rs1, then redirect the PC
again to the instruction after SFENCE.VMA. 
						
						
					 
					
						2017-03-24 16:39:52 -07:00 
						 
				 
			
				
					
						
							
							
								Henry Cook 
							
						 
					 
					
						
						
							
						
						797c18b8db 
					 
					
						
						
							
							Make some requirement failures more verbose ( #608 )  
						
						... 
						
						
						
						* tilelink: verbose requires in xbar
* diplomacy: verbose requires 
						
						
					 
					
						2017-03-23 21:55:11 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						bd08f10816 
					 
					
						
						
							
							tilelink2: make sink ids optional ( #607 )  
						
						... 
						
						
						
						* tilelink2: make sink ids optional
* CacheCork: add a special-case for 1 sink id 
						
						
					 
					
						2017-03-23 18:19:04 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						19eb9b6906 
					 
					
						
						
							
							l1tol2: put a flow Q on the exits ( #606 )  
						
						... 
						
						
						
						This Xbar connects the largest components in the design; the cores
and the L2 banks. We already have a full buffer on the core side.
However, the valid path going to the L2 comes back as a ready path.
Putting a flow Q also on the outputs of the l1tol2 cuts this path
in half at no cost to IPC. 
						
						
					 
					
						2017-03-23 16:28:32 -07:00 
						 
				 
			
				
					
						
							
							
								Henry Cook 
							
						 
					 
					
						
						
							
						
						055b8ba1f0 
					 
					
						
						
							
							rocket: avoid LinkedHashMap.keys to preserve traversal order ( #603 )  
						
						
						
						
					 
					
						2017-03-22 14:38:33 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						4f78eafbdf 
					 
					
						
						
							
							Merge pull request  #602  from ucb-bar/tl-mmio-pipeline  
						
						... 
						
						
						
						TL pipeline MMIO 
						
						
					 
					
						2017-03-21 14:59:11 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						76f083b469 
					 
					
						
						
							
							FIFOFixer: Not all D-channel messages are A-channel responses  
						
						
						
						
					 
					
						2017-03-21 14:17:38 -07:00 
						 
				 
			
				
					
						
							
							
								Andrew Waterman 
							
						 
					 
					
						
						
							
						
						3609254e4a 
					 
					
						
						
							
							There's no structural hazard on MMIO store responses  
						
						... 
						
						
						
						So don't stall as though there were. 
						
						
					 
					
						2017-03-21 14:17:32 -07:00 
						 
				 
			
				
					
						
							
							
								Yunsup Lee 
							
						 
					 
					
						
						
							
						
						5eae7e1da4 
					 
					
						
						
							
							make DCache s1_nack less conservative for pipelined MMIO requests  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						4c00066746 
					 
					
						
						
							
							rocket: describe dcache as two clients (fifo+cached)  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						81d717e82f 
					 
					
						
						
							
							coreplex: guarantee FIFO for those tiles that need it  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						198afddb4b 
					 
					
						
						
							
							tilelink2: add the FIFOFixer  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						c33f31dd3c 
					 
					
						
						
							
							tilelink2 RAMModel: weaken fifo requirement check  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						930438adba 
					 
					
						
						
							
							tilelink2 SourceShrinker: destroy FIFO behaviour  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						fd521c56a6 
					 
					
						
						
							
							tilelink2: add client-side FIFO parameterization  
						
						
						
						
					 
					
						2017-03-21 11:16:51 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						d4c9c13fb4 
					 
					
						
						
							
							Merge pull request  #600  from ucb-bar/monitor-spec  
						
						... 
						
						
						
						Update monitor spec 
						
						
					 
					
						2017-03-20 15:23:34 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						4eef317e84 
					 
					
						
						
							
							RegisterRouter: support devices with gaps  
						
						
						
						
					 
					
						2017-03-20 14:49:22 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						431cb41e27 
					 
					
						
						
							
							tilelink2 Parameters: clarify client minLatency is B=>C, not D=>E  
						
						
						
						
					 
					
						2017-03-20 14:49:22 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						04892fea01 
					 
					
						
						
							
							Monitor: support early ack  
						
						
						
						
					 
					
						2017-03-20 14:49:19 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						278f6fea24 
					 
					
						
						
							
							tilelink2: define is{Request,Response} based on spec  
						
						
						
						
					 
					
						2017-03-20 13:41:02 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						778e189bba 
					 
					
						
						
							
							Monitor: ProbeAckData and ReleaseData may carry an error  
						
						
						
						
					 
					
						2017-03-20 11:44:13 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						48c7aed4e1 
					 
					
						
						
							
							Monitor: any probe supported by the client is legal  
						
						
						
						
					 
					
						2017-03-20 11:34:19 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						5a50acfd9d 
					 
					
						
						
							
							Merge pull request  #595  from ucb-bar/ignore-tl-c  
						
						... 
						
						
						
						Ignore TL-C 
						
						
					 
					
						2017-03-19 18:49:11 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						0c92283a61 
					 
					
						
						
							
							rocket icache: tie off b ready  
						
						
						
						
					 
					
						2017-03-19 17:18:50 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						c9459fe4eb 
					 
					
						
						
							
							tilelink2 Xbar: don't use unnecessary ports  
						
						
						
						
					 
					
						2017-03-19 17:02:24 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						7971947d6c 
					 
					
						
						
							
							tilelink2 Monitor: don't inspect bits if valid is forbidden  
						
						
						
						
					 
					
						2017-03-19 16:34:23 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						a4ca424a22 
					 
					
						
						
							
							AHBToTL: finally get the error signal right? ( #594 )  
						
						
						
						
					 
					
						2017-03-18 22:24:20 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						d4272db067 
					 
					
						
						
							
							travis: only run 4 jobs at once ( #593 )  
						
						... 
						
						
						
						We can only run 4 at a time; 5 causes the test time to double.
In the past we had a 50minute build deadline, but that's fixed. 
						
						
					 
					
						2017-03-18 04:14:50 -07:00 
						 
				 
			
				
					
						
							
							
								Wesley W. Terpstra 
							
						 
					 
					
						
						
							
						
						f6daa782d3 
					 
					
						
						
							
							AHBToTL: fix the order of updates to d_pause ( #592 )  
						
						
						
						
					 
					
						2017-03-17 19:34:40 -07:00