241 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			241 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								.definition
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								csr_misa =          [001100000001]
							 | 
						||
| 
								 | 
							
								csr_mvendorid =     [111100010001]
							 | 
						||
| 
								 | 
							
								csr_marchid =       [111100010010]
							 | 
						||
| 
								 | 
							
								csr_mimpid =        [111100010011]
							 | 
						||
| 
								 | 
							
								csr_mhartid =       [111100010100]
							 | 
						||
| 
								 | 
							
								csr_mstatus =       [001100000000]
							 | 
						||
| 
								 | 
							
								csr_mtvec =         [001100000101]
							 | 
						||
| 
								 | 
							
								csr_mip =           [001101000100]
							 | 
						||
| 
								 | 
							
								csr_mie =           [001100000100]
							 | 
						||
| 
								 | 
							
								csr_mcyclel =       [101100000000]
							 | 
						||
| 
								 | 
							
								csr_mcycleh =       [101110000000]
							 | 
						||
| 
								 | 
							
								csr_minstretl =     [101100000010]
							 | 
						||
| 
								 | 
							
								csr_minstreth =     [101110000010]
							 | 
						||
| 
								 | 
							
								csr_mscratch =      [001101000000]
							 | 
						||
| 
								 | 
							
								csr_mepc =          [001101000001]
							 | 
						||
| 
								 | 
							
								csr_mcause =        [001101000010]
							 | 
						||
| 
								 | 
							
								csr_mscause =       [011111111111]
							 | 
						||
| 
								 | 
							
								csr_mtval =         [001101000011]
							 | 
						||
| 
								 | 
							
								csr_mrac =          [011111000000]
							 | 
						||
| 
								 | 
							
								csr_dmst =          [011111000100]
							 | 
						||
| 
								 | 
							
								csr_mdeau =         [101111000000]
							 | 
						||
| 
								 | 
							
								csr_mdseac =        [111111000000]
							 | 
						||
| 
								 | 
							
								csr_meivt =         [101111001000]
							 | 
						||
| 
								 | 
							
								csr_meihap =        [111111001000]
							 | 
						||
| 
								 | 
							
								csr_meipt =         [101111001001]
							 | 
						||
| 
								 | 
							
								csr_meicpct =       [101111001010]
							 | 
						||
| 
								 | 
							
								csr_meicurpl =      [101111001100]
							 | 
						||
| 
								 | 
							
								csr_meicidpl =      [101111001011]
							 | 
						||
| 
								 | 
							
								csr_dcsr =          [011110110000]
							 | 
						||
| 
								 | 
							
								csr_dpc =           [011110110001]
							 | 
						||
| 
								 | 
							
								csr_dicawics =      [011111001000]
							 | 
						||
| 
								 | 
							
								csr_dicad0h =       [011111001100]
							 | 
						||
| 
								 | 
							
								csr_dicad0 =        [011111001001]
							 | 
						||
| 
								 | 
							
								csr_dicad1 =        [011111001010]
							 | 
						||
| 
								 | 
							
								csr_dicago =        [011111001011]
							 | 
						||
| 
								 | 
							
								csr_mtsel =         [011110100000]
							 | 
						||
| 
								 | 
							
								csr_mtdata1 =       [011110100001]
							 | 
						||
| 
								 | 
							
								csr_mtdata2 =       [011110100010]
							 | 
						||
| 
								 | 
							
								csr_mhpmc3 =        [101100000011]
							 | 
						||
| 
								 | 
							
								csr_mhpmc4 =        [101100000100]
							 | 
						||
| 
								 | 
							
								csr_mhpmc5 =        [101100000101]
							 | 
						||
| 
								 | 
							
								csr_mhpmc6 =        [101100000110]
							 | 
						||
| 
								 | 
							
								csr_mhpmc3h =       [101110000011]
							 | 
						||
| 
								 | 
							
								csr_mhpmc4h =       [101110000100]
							 | 
						||
| 
								 | 
							
								csr_mhpmc5h =       [101110000101]
							 | 
						||
| 
								 | 
							
								csr_mhpmc6h =       [101110000110]
							 | 
						||
| 
								 | 
							
								csr_mhpme3 =        [001100100011]
							 | 
						||
| 
								 | 
							
								csr_mhpme4 =        [001100100100]
							 | 
						||
| 
								 | 
							
								csr_mhpme5 =        [001100100101]
							 | 
						||
| 
								 | 
							
								csr_mhpme6 =        [001100100110]
							 | 
						||
| 
								 | 
							
								csr_micect =        [011111110000]
							 | 
						||
| 
								 | 
							
								csr_miccmect =      [011111110001]
							 | 
						||
| 
								 | 
							
								csr_mdccmect =      [011111110010]
							 | 
						||
| 
								 | 
							
								csr_mpmc =          [011111000110]
							 | 
						||
| 
								 | 
							
								csr_mcgc =          [011111111000]
							 | 
						||
| 
								 | 
							
								csr_mcpc =          [011111000010]
							 | 
						||
| 
								 | 
							
								csr_mfdc =          [011111111001]
							 | 
						||
| 
								 | 
							
								csr_perfva =        [101100000111]
							 | 
						||
| 
								 | 
							
								csr_perfvb =        [101100001...]
							 | 
						||
| 
								 | 
							
								csr_perfvc =        [10110001....]
							 | 
						||
| 
								 | 
							
								csr_perfvd =        [101110000111]
							 | 
						||
| 
								 | 
							
								csr_perfve =        [101110001...]
							 | 
						||
| 
								 | 
							
								csr_perfvf =        [10111001....]
							 | 
						||
| 
								 | 
							
								csr_perfvg =        [001100100111]
							 | 
						||
| 
								 | 
							
								csr_perfvh =        [001100101...]
							 | 
						||
| 
								 | 
							
								csr_perfvi =        [00110011....]
							 | 
						||
| 
								 | 
							
								csr_mcountinhibit = [001100100000]
							 | 
						||
| 
								 | 
							
								csr_mfdht =         [011111001110]
							 | 
						||
| 
								 | 
							
								csr_mfdhs =         [011111001111]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.input
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								csr = {
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[11]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[10]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[9]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[8]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[7]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[6]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[5]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[4]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[3]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[2]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[1]
							 | 
						||
| 
								 | 
							
								        dec_csr_rdaddr_d[0]
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.output
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								csr = {
							 | 
						||
| 
								 | 
							
								     csr_misa
							 | 
						||
| 
								 | 
							
								     csr_mvendorid
							 | 
						||
| 
								 | 
							
								     csr_marchid
							 | 
						||
| 
								 | 
							
								     csr_mimpid
							 | 
						||
| 
								 | 
							
								     csr_mhartid
							 | 
						||
| 
								 | 
							
								     csr_mstatus
							 | 
						||
| 
								 | 
							
								     csr_mtvec
							 | 
						||
| 
								 | 
							
								     csr_mip
							 | 
						||
| 
								 | 
							
								     csr_mie
							 | 
						||
| 
								 | 
							
								     csr_mcyclel
							 | 
						||
| 
								 | 
							
								     csr_mcycleh
							 | 
						||
| 
								 | 
							
								     csr_minstretl
							 | 
						||
| 
								 | 
							
								     csr_minstreth
							 | 
						||
| 
								 | 
							
								     csr_mscratch
							 | 
						||
| 
								 | 
							
								     csr_mepc
							 | 
						||
| 
								 | 
							
								     csr_mcause
							 | 
						||
| 
								 | 
							
								     csr_mscause
							 | 
						||
| 
								 | 
							
								     csr_mtval
							 | 
						||
| 
								 | 
							
								     csr_mrac
							 | 
						||
| 
								 | 
							
								     csr_dmst
							 | 
						||
| 
								 | 
							
								     csr_mdseac
							 | 
						||
| 
								 | 
							
								     csr_meihap
							 | 
						||
| 
								 | 
							
								     csr_meivt
							 | 
						||
| 
								 | 
							
								     csr_meipt
							 | 
						||
| 
								 | 
							
								     csr_meicurpl
							 | 
						||
| 
								 | 
							
								     csr_meicidpl
							 | 
						||
| 
								 | 
							
								     csr_dcsr
							 | 
						||
| 
								 | 
							
								     csr_mcgc
							 | 
						||
| 
								 | 
							
								     csr_mfdc
							 | 
						||
| 
								 | 
							
								     csr_dpc
							 | 
						||
| 
								 | 
							
								     csr_mtsel
							 | 
						||
| 
								 | 
							
								     csr_mtdata1
							 | 
						||
| 
								 | 
							
								     csr_mtdata2
							 | 
						||
| 
								 | 
							
								     csr_mhpmc3
							 | 
						||
| 
								 | 
							
								     csr_mhpmc4
							 | 
						||
| 
								 | 
							
								     csr_mhpmc5
							 | 
						||
| 
								 | 
							
								     csr_mhpmc6
							 | 
						||
| 
								 | 
							
								     csr_mhpmc3h
							 | 
						||
| 
								 | 
							
								     csr_mhpmc4h
							 | 
						||
| 
								 | 
							
								     csr_mhpmc5h
							 | 
						||
| 
								 | 
							
								     csr_mhpmc6h
							 | 
						||
| 
								 | 
							
								     csr_mhpme3
							 | 
						||
| 
								 | 
							
								     csr_mhpme4
							 | 
						||
| 
								 | 
							
								     csr_mhpme5
							 | 
						||
| 
								 | 
							
								     csr_mhpme6
							 | 
						||
| 
								 | 
							
								     csr_mcountinhibit
							 | 
						||
| 
								 | 
							
								csr_perfva
							 | 
						||
| 
								 | 
							
								csr_perfvb
							 | 
						||
| 
								 | 
							
								csr_perfvc
							 | 
						||
| 
								 | 
							
								csr_perfvd
							 | 
						||
| 
								 | 
							
								csr_perfve
							 | 
						||
| 
								 | 
							
								csr_perfvf
							 | 
						||
| 
								 | 
							
								csr_perfvg
							 | 
						||
| 
								 | 
							
								csr_perfvh
							 | 
						||
| 
								 | 
							
								csr_perfvi
							 | 
						||
| 
								 | 
							
								     csr_mpmc
							 | 
						||
| 
								 | 
							
								     csr_mcpc
							 | 
						||
| 
								 | 
							
								     csr_meicpct
							 | 
						||
| 
								 | 
							
								     csr_mdeau
							 | 
						||
| 
								 | 
							
								     csr_micect
							 | 
						||
| 
								 | 
							
								     csr_miccmect
							 | 
						||
| 
								 | 
							
								     csr_mdccmect
							 | 
						||
| 
								 | 
							
								csr_mfdht
							 | 
						||
| 
								 | 
							
								csr_mfdhs
							 | 
						||
| 
								 | 
							
								csr_dicawics
							 | 
						||
| 
								 | 
							
								csr_dicad0h
							 | 
						||
| 
								 | 
							
								csr_dicad0
							 | 
						||
| 
								 | 
							
								csr_dicad1
							 | 
						||
| 
								 | 
							
								csr_dicago
							 | 
						||
| 
								 | 
							
								     valid_only
							 | 
						||
| 
								 | 
							
								     presync
							 | 
						||
| 
								 | 
							
								     postsync
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.decode
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								csr[ csr_misa      ] = {  csr_misa      }
							 | 
						||
| 
								 | 
							
								csr[ csr_mvendorid ] = {  csr_mvendorid }
							 | 
						||
| 
								 | 
							
								csr[ csr_marchid   ] = {  csr_marchid   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mimpid    ] = {  csr_mimpid    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhartid   ] = {  csr_mhartid   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mstatus   ] = {  csr_mstatus postsync   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mtvec     ] = {  csr_mtvec postsync}
							 | 
						||
| 
								 | 
							
								csr[ csr_mip       ] = {  csr_mip       }
							 | 
						||
| 
								 | 
							
								csr[ csr_mie       ] = {  csr_mie       }
							 | 
						||
| 
								 | 
							
								csr[ csr_mcyclel   ] = {  csr_mcyclel   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mcycleh   ] = {  csr_mcycleh   }
							 | 
						||
| 
								 | 
							
								csr[ csr_minstretl ] = {  csr_minstretl presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_minstreth ] = {  csr_minstreth presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mscratch  ] = {  csr_mscratch  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mepc      ] = {  csr_mepc postsync}
							 | 
						||
| 
								 | 
							
								csr[ csr_mcause    ] = {  csr_mcause    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mscause   ] = {  csr_mscause   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mtval     ] = {  csr_mtval     }
							 | 
						||
| 
								 | 
							
								csr[ csr_mrac      ] = {  csr_mrac postsync     }
							 | 
						||
| 
								 | 
							
								csr[ csr_dmst      ] = {  csr_dmst postsync}
							 | 
						||
| 
								 | 
							
								csr[ csr_mdseac    ] = {  csr_mdseac    }
							 | 
						||
| 
								 | 
							
								csr[ csr_meipt     ] = {  csr_meipt     }
							 | 
						||
| 
								 | 
							
								csr[ csr_meihap    ] = {  csr_meihap    }
							 | 
						||
| 
								 | 
							
								csr[ csr_meivt     ] = {  csr_meivt     }
							 | 
						||
| 
								 | 
							
								csr[ csr_meicurpl  ] = {  csr_meicurpl  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mdeau     ] = {  csr_mdeau    }
							 | 
						||
| 
								 | 
							
								csr[ csr_meicpct   ] = {  csr_meicpct   }
							 | 
						||
| 
								 | 
							
								csr[ csr_mpmc      ] = {  csr_mpmc      }
							 | 
						||
| 
								 | 
							
								csr[ csr_mcpc      ] = {  csr_mcpc presync postsync }
							 | 
						||
| 
								 | 
							
								csr[ csr_meicidpl  ] = {  csr_meicidpl  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mcgc      ] = {  csr_mcgc      }
							 | 
						||
| 
								 | 
							
								csr[ csr_mfdc      ] = {  csr_mfdc presync postsync }
							 | 
						||
| 
								 | 
							
								csr[ csr_dcsr      ] = {  csr_dcsr      }
							 | 
						||
| 
								 | 
							
								csr[ csr_dpc       ] = {  csr_dpc       }
							 | 
						||
| 
								 | 
							
								csr[ csr_mtsel     ] = {  csr_mtsel     }
							 | 
						||
| 
								 | 
							
								csr[ csr_mtdata1   ] = {  csr_mtdata1  postsync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mtdata2   ] = {  csr_mtdata2  postsync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc3    ] = {  csr_mhpmc3  presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc4    ] = {  csr_mhpmc4  presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc5    ] = {  csr_mhpmc5  presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc6    ] = {  csr_mhpmc6  presync }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc3h   ] = {  csr_mhpmc3h presync  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc4h   ] = {  csr_mhpmc4h presync  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc5h   ] = {  csr_mhpmc5h presync  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpmc6h   ] = {  csr_mhpmc6h presync  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpme3    ] = {  csr_mhpme3    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpme4    ] = {  csr_mhpme4    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpme5    ] = {  csr_mhpme5    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mhpme6    ] = {  csr_mhpme6    }
							 | 
						||
| 
								 | 
							
								csr[ csr_micect    ] = {  csr_micect    }
							 | 
						||
| 
								 | 
							
								csr[ csr_miccmect  ] = {  csr_miccmect  }
							 | 
						||
| 
								 | 
							
								csr[ csr_mdccmect  ] = {  csr_mdccmect  }
							 | 
						||
| 
								 | 
							
								csr[ csr_dicawics  ] = {  csr_dicawics  }
							 | 
						||
| 
								 | 
							
								csr[ csr_dicad0h   ] = {  csr_dicad0h   }
							 | 
						||
| 
								 | 
							
								csr[ csr_dicad0    ] = {  csr_dicad0    }
							 | 
						||
| 
								 | 
							
								csr[ csr_dicad1    ] = {  csr_dicad1    }
							 | 
						||
| 
								 | 
							
								csr[ csr_dicago    ] = {  csr_dicago    }
							 | 
						||
| 
								 | 
							
								csr[ csr_mfdht     ] = {  csr_mfdht }
							 | 
						||
| 
								 | 
							
								csr[ csr_mfdhs     ] = {  csr_mfdhs }
							 | 
						||
| 
								 | 
							
								csr[ csr_mcountinhibit] = {  csr_mcountinhibit presync postsync }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								csr[ csr_perfva    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvb    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvc    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvd    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfve    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvf    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvg    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvh    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								csr[ csr_perfvi    ] = { valid_only }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.end
							 |