forked from Github_Repos/cvw
		
	give EBU a dedicated PMA unit as just an address decoder
This commit is contained in:
		
							parent
							
								
									9b27cd6fb7
								
							
						
					
					
						commit
						303f8e2a7f
					
				@ -48,7 +48,7 @@ module uncore (
 | 
			
		||||
  input  logic [3:0]       HSIZED,
 | 
			
		||||
  input  logic             HWRITED,
 | 
			
		||||
  // PMA checker signals
 | 
			
		||||
  input  logic [5:0]       HSELRegions,
 | 
			
		||||
  input  logic             AtomicAccessM, ExecuteAccessF, WriteAccessM, ReadAccessM,
 | 
			
		||||
  // bus interface
 | 
			
		||||
  // PMA checker now handles access faults. *** This can be deleted
 | 
			
		||||
  // output logic             DataAccessFaultM,
 | 
			
		||||
@ -64,6 +64,7 @@ module uncore (
 | 
			
		||||
  logic [`XLEN-1:0] HWDATA;
 | 
			
		||||
  logic [`XLEN-1:0] HREADTim, HREADCLINT, HREADPLIC, HREADGPIO, HREADUART;
 | 
			
		||||
 | 
			
		||||
  logic [5:0]      HSELRegions;
 | 
			
		||||
  logic            HSELTim, HSELCLINT, HSELPLIC, HSELGPIO, PreHSELUART, HSELUART;
 | 
			
		||||
  logic            HSELTimD, HSELCLINTD, HSELPLICD, HSELGPIOD, HSELUARTD;
 | 
			
		||||
  logic            HRESPTim, HRESPCLINT, HRESPPLIC, HRESPGPIO, HRESPUART;
 | 
			
		||||
@ -73,6 +74,8 @@ module uncore (
 | 
			
		||||
  logic [1:0]      MemRWboottim;
 | 
			
		||||
  logic            UARTIntr,GPIOIntr;
 | 
			
		||||
 | 
			
		||||
  pmachecker ebuAdrDec(.PhysicalAddress('0),.Size('0),.Cacheable(),.Idempotent(),.AtomicAllowed(),.PMASquashBusAccess(),.PMAInstrAccessFaultF(),.PMALoadAccessFaultM(),.PMAStoreAccessFaultM(),.*);
 | 
			
		||||
 | 
			
		||||
  // unswizzle HSEL signals
 | 
			
		||||
  assign {HSELBootTim, HSELTim, HSELCLINT, HSELGPIO, HSELUART, HSELPLIC} = HSELRegions;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -52,7 +52,9 @@ module wallypipelinedhart (
 | 
			
		||||
  // Delayed signals for subword write
 | 
			
		||||
  output logic [2:0]       HADDRD,
 | 
			
		||||
  output logic [3:0]       HSIZED,
 | 
			
		||||
  output logic             HWRITED
 | 
			
		||||
  output logic             HWRITED,
 | 
			
		||||
  // Access signals for PMA decoder
 | 
			
		||||
  output logic             AtomicAccessM, ExecuteAccessF, WriteAccessM, ReadAccessM
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
   //  logic [1:0]  ForwardAE, ForwardBE;
 | 
			
		||||
@ -116,7 +118,7 @@ module wallypipelinedhart (
 | 
			
		||||
  logic [1:0]       PageTypeF, PageTypeM;
 | 
			
		||||
 | 
			
		||||
  // PMA checker signals
 | 
			
		||||
  logic             AtomicAccessM, ExecuteAccessF, WriteAccessM, ReadAccessM;
 | 
			
		||||
  //logic             AtomicAccessM, ExecuteAccessF, WriteAccessM, ReadAccessM;
 | 
			
		||||
  logic             PMPInstrAccessFaultF, PMPLoadAccessFaultM, PMPStoreAccessFaultM;
 | 
			
		||||
  logic             PMAInstrAccessFaultF, PMALoadAccessFaultM, PMAStoreAccessFaultM;
 | 
			
		||||
  logic             DSquashBusAccessM, ISquashBusAccessF;
 | 
			
		||||
 | 
			
		||||
@ -62,6 +62,7 @@ module wallypipelinedsoc (
 | 
			
		||||
  logic             HREADY, HRESP;
 | 
			
		||||
  logic [5:0]       HSELRegions;
 | 
			
		||||
  logic             InstrAccessFaultF, DataAccessFaultM;
 | 
			
		||||
  logic             AtomicAccessM, ExecuteAccessF, WriteAccessM, ReadAccessM; // to uncore PMA decoder
 | 
			
		||||
  logic             TimerIntM, SwIntM; // from CLINT
 | 
			
		||||
  logic [63:0]      MTIME_CLINT, MTIMECMP_CLINT; // from CLINT to CSRs
 | 
			
		||||
  logic             ExtIntM; // from PLIC
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user