mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-11 06:05:49 +00:00
changed DCACHE_LINELENINBITS and ICACHE_LINELENINBITS to 512, had to modigy the wfi test to increase timee before interupt to mantain compatability
This commit is contained in:
parent
5bbdddadf8
commit
4e5d7ec3d6
@ -63,10 +63,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -66,10 +66,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -64,10 +64,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -66,10 +66,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -64,10 +64,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -66,10 +66,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Legal number of PMP entries are 0, 16, or 64
|
// Legal number of PMP entries are 0, 16, or 64
|
||||||
`define PMP_ENTRIES 64
|
`define PMP_ENTRIES 64
|
||||||
|
@ -66,10 +66,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -65,10 +65,10 @@
|
|||||||
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
// typical configuration 4 ways, 4096 bytes per way, 256 bit or more lines
|
||||||
`define DCACHE_NUMWAYS 4
|
`define DCACHE_NUMWAYS 4
|
||||||
`define DCACHE_WAYSIZEINBYTES 4096
|
`define DCACHE_WAYSIZEINBYTES 4096
|
||||||
`define DCACHE_LINELENINBITS 256
|
`define DCACHE_LINELENINBITS 512
|
||||||
`define ICACHE_NUMWAYS 4
|
`define ICACHE_NUMWAYS 4
|
||||||
`define ICACHE_WAYSIZEINBYTES 4096
|
`define ICACHE_WAYSIZEINBYTES 4096
|
||||||
`define ICACHE_LINELENINBITS 256
|
`define ICACHE_LINELENINBITS 512
|
||||||
|
|
||||||
// Integer Divider Configuration
|
// Integer Divider Configuration
|
||||||
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
// DIV_BITSPERCYCLE must be 1, 2, or 4
|
||||||
|
@ -33,7 +33,7 @@ WRITE_READ_CSR mie, 0xFFF // Enable interrupts from all sources
|
|||||||
|
|
||||||
// Code copied from test library to cause m time interrupt, with time loop replaced with wfi.
|
// Code copied from test library to cause m time interrupt, with time loop replaced with wfi.
|
||||||
|
|
||||||
li x28, 0x40 // Desired offset from the present time
|
li x28, 0x50 // Desired offset from the present time
|
||||||
mv a3, x28 // copy value in to know to stop waiting for interrupt after this many cycles
|
mv a3, x28 // copy value in to know to stop waiting for interrupt after this many cycles
|
||||||
la x29, 0x02004000 // MTIMECMP register in CLINT
|
la x29, 0x02004000 // MTIMECMP register in CLINT
|
||||||
la x30, 0x0200BFF8 // MTIME register in CLINT
|
la x30, 0x0200BFF8 // MTIME register in CLINT
|
||||||
|
Loading…
Reference in New Issue
Block a user