epc

EPC和ErrorEPC

北战南征 提交于 2020-03-09 06:14:36
EPC :Exception Program Counter (CP0 Register 14, Select 0), 异常返回地址寄存器,用于存储异常返回地址。 ErrorEPC :ErrorEPC Register (CP0 Register 30, Select 0),发生复位异常时的异常地址寄存器。 EPC和ErrorEPC的相同点: 两个寄存器都是可读可写的,存储32bit地址,通常情况下发生异常时由硬件更新。软件也可以去写这两个寄存器。 用于记录发生异常时的指令的虚拟地址。 如果发生异常的指令在分支延迟槽里(cause[BD]=1),EPC和ErrorEPC指向前一条分支或跳转指令。 EPC和ErrorEPC是eret指令的返回地址。 EPC和ErrorEPC的不同点: EPC发生异常或中断时会被更新,记录的是当前这次发生异常的虚拟地址。 ErrorEPC发生reset异常时会被更新,记录的是上一次异常的虚拟地址。 当SR(EXL)=1时,cpu不去写EPC。只有SR(EXL)=0时,EPC会被更新。 下图是mips官方文档对这两个寄存器的描述: ErrorEPC寄存器可以在重启之后对系统上一次reset前的异常进行debug,使用方法如下: __asm__ __volatile__ ( "mfc0 %0, $30, 0 \n\t" "nop \n\t" :"=r"

RFID标签的编码标准

只谈情不闲聊 提交于 2020-02-06 10:32:50
我们都知道互联网每台主机都有 IP地址,那么RFID标签自然也应该有属于它的IP地址,以便于正确记录数据,辨识标签。 下面主要讲解一下EPC标准。 EPC的载体是 RFID电子标签, 通过计算机网络来标识和访问单个物体, 旨在为每一件单品建立全球、开放的标识标准, 实现全球范围内对单件产品的跟踪与追溯, 从而有效提高供应链管理水平,降低物流成本,提供对物理世界对象的唯一标识。 EPC标准核心思想 为每一个产品而并不是一类产品分配一个唯一的EPC产品编码。(考虑到每一个标签都具有其特殊性。) EPC编码能够存储在“RFID”标签的芯片中(可能“RFID”会被更新的产品替代) 通过无线通信技术,RFID读写器可以通过非接触的方式 自动读取EPC编码。 通过连接在互联网的服务器,可以查询EPC编码对应的物品的详细信息。 合情合理,我看行。 EPC编码体系 EPC编码特点之一就是编码空间大, 可以实现对单品的标识,因为要为每一个标签编码,而RFID的数量会逐渐变得十分庞大。 EPC码的结构:由版本号、域名管理、对象分类、序列号四个数字字段组成。 由上图可以看出,EPC编码可以表示的产品总数是很庞大的 版本号: 版本号字段值标识产品编码采用的EPC版本,从版本号可以知道编码的长度与结构 域名管理: 用来标识生产厂商。 根据域名管理字段值可以查询生产厂商服务器在互联网上的域名信息。 对象分类