Leon Schuermann
							
						 
						
							 
							
							
							
							
								
							
							
								1d0fc21430 
								
							 
						 
						
							
							
								
								Readme.md / doc: clarify "naturally aligned regions", no TOR support  
							
							 
							
							... 
							
							
							
							While NA4 and NAPOT are the only "naturally aligned" addressing modes
in the RISC-V PMP (Privileged) Spec, calling their support out by
name, and clearly stating that the TOR addressing mode is not
supported, can clarify this fact for software / OS developers.
This is a common point of confusion and frustration when porting to
new RISC-V chips and so increased visbility of this limitation in the
documentation and README might help. 
							
						 
						
							2024-08-08 20:44:43 -07:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								aa140fb244 
								
							 
						 
						
							
							
								
								Do a quick pass over all the documentation.  
							
							 
							
							... 
							
							
							
							Fill out port definitions for the AHB5 interfaces.
Snip the appendix of instruction pseudocode as it's strictly redundant
vs the specs. No need to pad this document.
Rearrange the implementation section to put ports before parameters, and
add some brief notes on synthesis. 
							
						 
						
							2024-08-07 13:10:27 -07:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								fe4781627f 
								
							 
						 
						
							
							
								
								Add port definitions to documentation  
							
							 
							
							
							
						 
						
							2024-08-07 08:16:51 -07:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								4a1d2b5008 
								
							 
						 
						
							
							
								
								Save a cycle on popret/popretz by executing the stack adjust after the jump  
							
							 
							
							
							
						 
						
							2023-03-23 02:50:34 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								b074d370a6 
								
							 
						 
						
							
							
								
								Add Zcb/Zcmp instruction timings to docs  
							
							 
							
							
							
						 
						
							2023-03-23 01:12:38 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								56586def8d 
								
							 
						 
						
							
							
								
								List Zcb/Zcmp in docs, and rebuild PDF  
							
							 
							
							
							
						 
						
							2023-03-22 03:04:16 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								78d937e5c8 
								
							 
						 
						
							
							
								
								Yeet Zcb into core  
							
							 
							
							
							
						 
						
							2023-03-16 18:48:15 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								f329d30713 
								
							 
						 
						
							
							
								
								Typo in docs introduction  
							
							 
							
							
							
						 
						
							2022-10-08 15:10:45 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								489480dc80 
								
							 
						 
						
							
							
								
								Revise default config values, and update docs with new values  
							
							 
							
							
							
						 
						
							2022-10-08 08:43:25 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								4b94c9a2d4 
								
							 
						 
						
							
							
								
								Document new configuration for IRQ and PMPM extensions  
							
							 
							
							
							
						 
						
							2022-10-06 00:19:13 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								b352d3878d 
								
							 
						 
						
							
							
								
								Update docs for new power control extension  
							
							 
							
							
							
						 
						
							2022-08-28 19:54:55 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								ce93c45e69 
								
							 
						 
						
							
							
								
								Add docs section for custom extensions  
							
							 
							
							
							
						 
						
							2022-08-28 15:50:26 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								7d18a21734 
								
							 
						 
						
							
							
								
								Editing  
							
							 
							
							
							
						 
						
							2022-08-27 20:49:55 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								d56e217a40 
								
							 
						 
						
							
							
								
								Work on docs. Document config options, expand the intro, move instruction timings and pseudocode to appendices.  
							
							 
							
							
							
						 
						
							2022-08-27 20:13:21 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								f47f603595 
								
							 
						 
						
							
							
								
								Doc typos  
							
							 
							
							
							
						 
						
							2022-08-09 00:05:51 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								cd69fcdbbc 
								
							 
						 
						
							
							
								
								Docs: Add date to title page, and rebuild PDF with recent CSR changes  
							
							 
							
							
							
						 
						
							2022-08-08 23:57:20 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								259a402e28 
								
							 
						 
						
							
							
								
								Describe new pmpcfgm0 register  
							
							 
							
							
							
						 
						
							2022-08-08 23:15:28 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								457b5e5f1a 
								
							 
						 
						
							
							
								
								Fix some doc sections which assumed only M-mode was supported  
							
							 
							
							
							
						 
						
							2022-08-08 17:35:39 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								026b529bc5 
								
							 
						 
						
							
							
								
								Fix asm example in docs to set meicontext.clearts when saving  
							
							 
							
							
							
						 
						
							2022-08-07 23:17:39 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								69917ccbbe 
								
							 
						 
						
							
							
								
								Docs: Tweak meicontext with thoughts that came up whilst implementing it  
							
							 
							
							
							
						 
						
							2022-08-07 20:31:14 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								054c4a6a9c 
								
							 
						 
						
							
							
								
								Fix reversed pseudocode for ctz/clz  
							
							 
							
							
							
						 
						
							2022-08-02 21:21:44 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								adf81abfdc 
								
							 
						 
						
							
							
								
								Oops, description of shxadd had operands swapped  
							
							 
							
							
							
						 
						
							2022-07-31 17:45:14 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								e76b82e447 
								
							 
						 
						
							
							
								
								More thoughts about interrupts, starting to look plausible  
							
							 
							
							
							
						 
						
							2022-07-31 16:16:16 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								106c4c3d28 
								
							 
						 
						
							
							
								
								Update docs CSR section to reflect addition of U-mode, PMP etc.  
							
							 
							
							
							
						 
						
							2022-07-30 21:19:30 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								c73c09a48a 
								
							 
						 
						
							
							
								
								More thinking about interrupt priorities  
							
							 
							
							
							
						 
						
							2022-07-30 15:42:26 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								7946432d7a 
								
							 
						 
						
							
							
								
								Speculatively update docs with new interrupt array/priority stuff, and sleep register  
							
							 
							
							
							
						 
						
							2022-07-28 01:18:13 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								ae30d7c0d2 
								
							 
						 
						
							
							
								
								Add instruction pseudocode (no A extension)  
							
							 
							
							
							
						 
						
							2022-07-10 19:16:43 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								956b386a20 
								
							 
						 
						
							
							
								
								Update instruction listings in docs  
							
							 
							
							
							
						 
						
							2022-07-10 05:47:19 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								e68d8a6cd6 
								
							 
						 
						
							
							
								
								Fix two frontend bugs: possibility for fetch to be blocked at CIR whilst also not going to FIFO (fixed by making those signals the complement of each other) and typo in the shift value for shifting into a CIR with 32 bits of contents, which is only reachable via a CIR-locked branch to an unaligned address.  
							
							 
							
							
							
						 
						
							2022-06-13 01:23:32 +01:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								1697192c62 
								
							 
						 
						
							
							
								
								Fix cycle timing docs for sc.w: 2 cycles if next instruction is RAW-dependent.  
							
							 
							
							
							
						 
						
							2021-12-12 20:50:26 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								8a003dbbed 
								
							 
						 
						
							
							
								
								Make mcycle/minstret inhibited by default  
							
							 
							
							
							
						 
						
							2021-12-12 13:55:33 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								7da67a0600 
								
							 
						 
						
							
							
								
								Similarly for minstret  
							
							 
							
							
							
						 
						
							2021-12-11 22:25:12 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								1b722b5f27 
								
							 
						 
						
							
							
								
								Add mcycle test, fix incorrect description of mcycle in docs  
							
							 
							
							
							
						 
						
							2021-12-11 21:21:31 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								449348f459 
								
							 
						 
						
							
							
								
								Fix bug where an IRQ can fire during load/store dphase, followed by dphase bus exception.  
							
							 
							
							... 
							
							
							
							Result was that the exception would sample the IRQ vector PC rather than the load/store instruction PC.
Fix by fencing off on in-flight dphases before asserting the IRQ. This adds a cycle of jitter
to IRQs, but is required for correct operation without adding a full exception-gathering pipeline. 
							
						 
						
							2021-12-07 19:24:53 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								6ef3503ef5 
								
							 
						 
						
							
							
								
								Add A bit to MISA, update docs  
							
							 
							
							
							
						 
						
							2021-12-07 05:10:20 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								9e7ea4adb6 
								
							 
						 
						
							
							
								
								Fix column width  
							
							 
							
							
							
						 
						
							2021-12-06 17:14:23 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								df658d86ff 
								
							 
						 
						
							
							
								
								First plausibly working AMOs. Add AMOs to instruction timings list  
							
							 
							
							
							
						 
						
							2021-12-04 23:44:22 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								a8933c332d 
								
							 
						 
						
							
							
								
								Fix illegal issue of pipelined exclusives on the bus, and document correct timings  
							
							 
							
							
							
						 
						
							2021-12-04 18:23:01 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								5e17bb805e 
								
							 
						 
						
							
							
								
								Add basic support for lr/sc instructions from the A extension  
							
							 
							
							
							
						 
						
							2021-12-04 15:02:31 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								52ba930638 
								
							 
						 
						
							
							
								
								Remove useless midcr.eivect feature. Make mlei left-shift its value by 2.  
							
							 
							
							
							
						 
						
							2021-12-04 01:17:57 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								cd1b391714 
								
							 
						 
						
							
							
								
								More docs cleanup  
							
							 
							
							
							
						 
						
							2021-12-02 02:29:34 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								ebe87dce46 
								
							 
						 
						
							
							
								
								Reorganise CSR section of docs  
							
							 
							
							
							
						 
						
							2021-12-02 01:35:18 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								c5e85dea4c 
								
							 
						 
						
							
							
								
								Add mconfigptr CSR  
							
							 
							
							
							
						 
						
							2021-12-01 03:25:56 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								94a3d43f27 
								
							 
						 
						
							
							
								
								Add Hazard3's registered marchid value to hdl and docs  
							
							 
							
							
							
						 
						
							2021-11-28 19:53:49 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								0fafae1ab1 
								
							 
						 
						
							
							
								
								Regenerate PDF  
							
							 
							
							
							
						 
						
							2021-11-28 16:27:54 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								e7466ae4be 
								
							 
						 
						
							
							
								
								Move DM data0 CSR into the M-custom space, and document this  
							
							 
							
							
							
						 
						
							2021-11-28 15:52:52 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								9bf4d5105f 
								
							 
						 
						
							
							
								
								Describe possible debug topologies. Update pdf.  
							
							 
							
							
							
						 
						
							2021-11-28 09:01:23 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								4e2686d4ab 
								
							 
						 
						
							
							
								
								Finish documenting CSRs. Draw a debug topology diagram.  
							
							 
							
							
							
						 
						
							2021-11-28 08:17:23 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								76172cdade 
								
							 
						 
						
							
							
								
								Start filling out CSR documentation. Change misa to report X=1 because of nonstandard IRQ CSRs.  
							
							 
							
							
							
						 
						
							2021-11-28 06:33:35 +00:00  
						
					 
				
					
						
							
							
								 
								Luke Wren
							
						 
						
							 
							
							
							
							
								
							
							
								79c29354d2 
								
							 
						 
						
							
							
								
								Update docs with bitmanip instructions  
							
							 
							
							
							
						 
						
							2021-11-28 03:16:45 +00:00