IO接口说明
香山实例化 TLB.sv 接口说明(ITLB)
基本控制信号
clock
: 时钟信号,驱动 TLB
的时序逻辑。
reset
: 复位信号,用于重置 TLB
的状态。
刷新(SFENCE)接口信号
io_sfence_valid
: SFENCE
操作的有效性标志。
io_sfence_bits_rs1
: SFENCE
操作是否使用寄存器 rs1
的值。
io_sfence_bits_rs2
: SFENCE
操作是否使用寄存器 rs2
的值。
io_sfence_bits_addr
: SFENCE
操作指定的地址,用于选择性刷新特定地址的 TLB
条目。
io_sfence_bits_id
: 刷新操作指定的 asid/vmid
,用于选择性刷新特定地址空间的 TLB
条目。
io_sfence_bits_flushPipe
: 刷新整个管道。
io_sfence_bits_hv
: 指示指令是否为 HFENCE.VVMA
,即是否刷新虚拟化下由 vsatp
寄存器控制的条目。
io_sfence_bits_hg
: 指示指令是否为 HFENCE.GVMA
,即是否刷新由 hgatp
寄存器控制的条目。
控制与状态寄存器(CSR)接口信号
io_csr_satp_mode
: SATP
寄存器的模式字段(如裸模式、Sv32
、Sv39
等)。
io_csr_satp_asid
: 当前 SATP
寄存器的 ASID
(地址空间标识符)。
io_csr_satp_changed
: 指示 SATP
寄存器的值是否已更改。
io_csr_vsatp_mode
: VSATP
寄存器的模式字段。
io_csr_vsatp_asid
: VSATP
寄存器的 ASID
。
io_csr_vsatp_changed
: 指示 VSATP
寄存器的值是否已更改。
io_csr_hgatp_mode
: HGATP
寄存器的模式字段。
io_csr_hgatp_vmid
: HGATP
寄存器的 VMID
(虚拟机标识符)。
io_csr_hgatp_changed
: 指示 HGATP
寄存器的值是否已更改。
io_csr_priv_virt
: 指示是否在虚拟模式下运行。
io_csr_priv_imode
: 指令模式的特权级(如用户态、内核态等)。
请求者(Requestor)接口信号
Requestor 0 信号
io_requestor_0_req_valid
: requestor0
的请求有效信号。
io_requestor_0_req_bits_vaddr
: requestor0
的请求虚拟地址。
io_requestor_0_resp_bits_paddr_0
: requestor0
的物理地址响应信号。
io_requestor_0_resp_bits_gpaddr_0
: requestor0
的物理地址转换为 GPA
(Guest Physical Address
)的响应信号。
io_requestor_0_resp_bits_miss
: requestor0
请求的地址未命中的信号。
io_requestor_0_resp_bits_excp_0_gpf_instr
: requestor0
出现 General Protection Fault
(GPF
) 异常的信号。
io_requestor_0_resp_bits_excp_0_pf_instr
: requestor0
出现 Page Fault
(PF
) 异常的信号。
io_requestor_0_resp_bits_excp_0_af_instr
: requestor0
出现 Access Fault
(AF
) 异常的信号。
Requestor 1 信号
io_requestor_1_req_valid
: requestor1
的请求有效信号。
io_requestor_1_req_bits_vaddr
: requestor1
的请求虚拟地址。
io_requestor_1_resp_bits_paddr_0
: requestor1
的物理地址响应信号。
io_requestor_1_resp_bits_gpaddr_0
: requestor1
的 GPA
响应信号。
io_requestor_1_resp_bits_miss
: requestor1
的未命中信号。
io_requestor_1_resp_bits_excp_0_gpf_instr
: requestor1
出现 GPF
异常的信号。
io_requestor_1_resp_bits_excp_0_pf_instr
: requestor1
出现 PF
异常的信号。
io_requestor_1_resp_bits_excp_0_af_instr
: requestor1
出现 AF
异常的信号。
Requestor 2 信号
io_requestor_2_req_ready
: requestor2
的请求就绪信号。
io_requestor_2_req_valid
: requestor2
的请求有效信号。
io_requestor_2_req_bits_vaddr
: requestor2
的请求虚拟地址。
io_requestor_2_resp_ready
: requestor2
的响应就绪信号。
io_requestor_2_resp_valid
: requestor2
的响应有效信号。
io_requestor_2_resp_bits_paddr_0
: requestor2
的物理地址响应信号。
io_requestor_2_resp_bits_gpaddr_0
: requestor2
的 GPA
响应信号。
io_requestor_2_resp_bits_excp_0_gpf_instr
: requestor2
出现 GPF
异常的信号。
io_requestor_2_resp_bits_excp_0_pf_instr
: requestor2
出现 PF
异常的信号。
io_requestor_2_resp_bits_excp_0_af_instr
: requestor2
出现 AF
异常的信号。
刷新管道(Flush Pipe)信号
io_flushPipe_0
: 刷新管道 0
的信号。
io_flushPipe_1
: 刷新管道 1
的信号。
io_flushPipe_2
: 刷新管道 2
的信号。
页表遍历(Page Table Walker, PTW)接口信号
PTW 请求信号
io_ptw_req_0_valid
: PTW req0
有效信号。
io_ptw_req_0_bits_vpn
: PTW req0
的虚拟页号(VPN
)。
io_ptw_req_0_bits_s2xlate
: 指示 PTW req0
的转换模式。
io_ptw_req_0_bits_getGpa
: PTW req0
的获取 GPA
信号。
io_ptw_req_1_valid
: PTW req1
有效信号。
io_ptw_req_1_bits_vpn
: PTW req1
的虚拟页号。
io_ptw_req_1_bits_s2xlate
: 指示 PTW req1
的转换模式。
io_ptw_req_1_bits_getGpa
: PTW req1
的获取 GPA
信号。
io_ptw_req_2_ready
: PTW req2
就绪信号。
io_ptw_req_2_valid
: PTW req2
有效信号。
io_ptw_req_2_bits_vpn
: PTW req2
的虚拟页号。
io_ptw_req_2_bits_s2xlate
: 指示 PTW req2
的转换模式。
io_ptw_req_2_bits_getGpa
: PTW req2
的获取 GPA
信号。
PTW 响应信号
io_ptw_resp_valid
: PTW resp
有效信号。
io_ptw_resp_bits_s2xlate
: 指示 PTW resp
的地址转换类型。
io_ptw_resp_bits_s1_entry_tag
: PTW resp
的第一阶段页表条目标签。
io_ptw_resp_bits_s1_entry_asid
: PTW resp
的第一阶段页表条目 ASID
。
io_ptw_resp_bits_s1_entry_vmid
: PTW resp
的第一阶段页表条目 VMID
。
io_ptw_resp_bits_s1_entry_perm_d
: PTW resp
的第一阶段页表条目可写位。
io_ptw_resp_bits_s1_entry_perm_a
: PTW resp
的第一阶段页表条目已访问位。
io_ptw_resp_bits_s1_entry_perm_g
: PTW resp
的第一阶段页表条目全局位。
io_ptw_resp_bits_s1_entry_perm_u
: PTW resp
的第一阶段页表条目用户模式位。
io_ptw_resp_bits_s1_entry_perm_x
: PTW resp
的第一阶段页表条目可执行位。
io_ptw_resp_bits_s1_entry_perm_w
: PTW resp
的第一阶段页表条目可写位。
io_ptw_resp_bits_s1_entry_perm_r
: PTW resp
的第一阶段页表条目可读位。
io_ptw_resp_bits_s1_entry_level
: PTW resp
的第一阶段页表条目级别。
io_ptw_resp_bits_s1_entry_ppn
: PTW resp
的第一阶段页表条目物理页号(PPN
)。
io_ptw_resp_bits_s1_addr_low
: PTW resp
的第一阶段页表条目地址低位。
io_ptw_resp_bits_s1_ppn_low_*
: PTW resp
的第一阶段页表条目 PPN
低位。
io_ptw_resp_bits_s1_valididx_*
: PTW resp
的第一阶段页表条目有效索引。
io_ptw_resp_bits_s1_pteidx_*
: PTW resp
的第一阶段页表条目 PTE
索引。
io_ptw_resp_bits_s1_pf
: PTW resp
的第一阶段页表条目出现 PF
。
io_ptw_resp_bits_s1_af
: PTW resp
的第一阶段页表条目出现 AF
。
io_ptw_resp_bits_s2_entry_tag
: PTW resp
的第二阶段页表条目标签。
io_ptw_resp_bits_s2_entry_vmid
: PTW resp
的第二阶段页表条目 VMID
。
io_ptw_resp_bits_s2_entry_ppn
: PTW resp
的第二阶段页表条目 PPN
。
io_ptw_resp_bits_s2_entry_perm_*
: PTW resp
的第二阶段页表条目的权限位。
io_ptw_resp_bits_s2_entry_level
: PTW resp
的第二阶段页表条目级别。
io_ptw_resp_bits_s2_gpf
: PTW resp
的第二阶段页表条目 GPF
信号。
io_ptw_resp_bits_s2_gaf
: PTW resp
的第二阶段页表条目 GAF
信号。
io_ptw_resp_bits_getGpa
: PTW resp
的获取 GPA
信号。