一种ddr内存控制器及其访问监控方法_2

文档序号:9765901阅读:来源:国知局
求写请求和/或读请求所访问的数据量及实际读数据和/或 写数据产生的数据量记录到寄存器中。
[00巧]优选地,预先在寄存器中配置的预监测对象还包括使能时间时,孤R内存控制监控 单元监测命令中设定字段的内容和/或读取的数据流和/或写入的数据流,具体包括:
[0056] 确定到达使能时间点时,开始监测命令中与访问地址相关的字段和主设备标识字 段的内容,并监测读取的数据流和/或写入的数据流。
[0057] 优选地,DDR内存控制监控单元在寄存器中记录与该命令执行相关的信息之后,还 用于:
[0058] 向中央处理器CPU发送中断信号,通知CPU读取从寄存器中读取记录的与该命令 执行相关的信息。
[0059] 利用本发明提供的孤R内存控制器及其访问监控方法,具有W下有益效果;通过 监测命令中设定字段的内容和/或读取的数据流和/或写入的数据流,可W实现对预监测 对象对应的命令执行过程进行监控,获取该命令执行的相关信息,从而极大的方便了方案 debug和IC验证。
【附图说明】
[0060] 图1为本发明DDR内存控制器的访问监控方法流程图;
[0061] 图2为本发明实施例1中DDR内存控制器的访问监控方法流程图;
[0062] 图3为本发明实施例2中DDR内存控制器的访问监控方法流程图;
[0063] 图4为本发明实施例提供的一种DDR内存控制器的结构图。
【具体实施方式】
[0064] 下面结合附图和实施例对本发明提供的DDR内存控制器及其访问监控方法进行 更详细地说明。
[0065] 本发明实施例提供一种双倍速率同步动态随机存储器DDR内存控制器的访问监 控方法,如图1所示,包括:
[0066] 步骤101,接收来自主设备的命令,对所述命令进行解析并执行;
[0067] 在大型SOC系统里面,DDR内存控制器里面的命令command格式都有统一的命令格 式的,每条命令提示符CMD里面包含了地址、读写类型、主设备标识Master ID、读写数据长 度等,通过对命令进行解析并执行,可W实现从DDR内存设备中读取相应的数据流或向DDR 内存设备写入对应的数据流。
[006引步骤102,监测命令中设定字段的内容和/或命令执行过程中读取的数据流和/或 命令执行过程中写入的数据流;
[0069] 如前所述,DDR内存控制器里面的命令command格式都有统一的命令格式的,每条 命令提示符CMD里面包含了地址(可W是起始地址)、读写类型、主设备标识Master ID、读 写数据长度等,因此可W从命令中设定字段的内容获取此次命令访问的地址信息,是读操 作还是写操作及访问DDR内存控制器的是哪个主设备,通过监测读取的数据流和/或写入 的数据流,可W实现对命令产生的数据流进行监控。
[0070] 步骤103,根据预先在DDR内存控制器的寄存器中配置的预监测对象,确定监测到 的命令中设定字段的内容和/或读取的数据流和/或写入的数据流属于预监测对象时,在 寄存器中记录与该命令执行相关的信息。
[0071] 本发明实施例在DDR内存控制器中增加了监控功能,可W根据需要配置预监测的 对象,从而获取与该对象相关的命令执行相关信息,从而可W实现方案debug和IC验证。
[0072] 具体进行预监测对象配置时,可W根据需要配置一个或多个预监测对象,实现对 某次特定的访问的监控,也可W配置为对一段时间请求访问的数据和实际产生的数据量的 监控,如可W配置预监测主设备标识,实现对某个主设备命令执行情况的监控,可W配置预 监测的地址信息,实现对某些地址空间访问的监控,还可W配置预监测数据特征信息等,实 现对某些特定数据流的监控等等,下面给出本发明几个优选的实施例。
[0073] 实施例1
[0074] 本发明实施例通过监测命令中设定字段的内容,用于实现对于某次特定的访问的 监控。
[00巧]可W根据命令中master ID字段/起始地址字段/读写数据长度/读写类型字段 来进一步细化触发记录命令执行相关信息的条件,一旦符合条件的command被触发,孤R内 存控制器就可W向CPU产生中断,并把该command未被用做触发条件的信息同步到登记寄 存器register里面供debug参考。
[0076] 本实施例为基于地址流的触发方式触发记录命令执行相关信息。
[0077] 对于地址流的触发方式,首先,在DDR控制器的寄存器中配置要监测的地址信息, 在命令解析过程中,根据命令中与地址相关的字段的内容(如起始地址和读写数据长度), 一旦该命令指向的地址与所需要监视的地址匹配,郝么就会触发中断,在寄存器中记录与 该命令执行相关的信息,送个功能可W通过mask扩展成对某一片地址区域的监控。
[0078] 依照另一优选实施方式,还可W进一步细化触发条件,如除了在寄存器中配置要 监测的地址信息,还可W进一步配置预监测的操作类型和/或预监测的主设备,则在命令 解析过程中,监测命令中与访问地址相关的字段、指示操作类型字段和/或主设备标识字 段的内容;根据命令中与访问地址相关的字段的内容,确定该命令指向的地址,根据指示操 作类型字段的内容确定该命令的操作类型和/或根据主设备标识字段的内容确定发送该 命令的主设备;若该命令指向的地址属于预监测的地址,该命令的操作类型为预监测的操 作类型和/或发送该命令的主设备为预监测的主设备时,在寄存器中记录与该命令执行相 关的信息。
[0079] 如表1所示给出了本实施例实现对某次特定访问监控的寄存器的描述:
[0080] 表 1
[008引如图2为本发明实施例实现孤R内存控制器的访问监控流程图,具体包括W下步 骤:
[008引步骤201,在寄存器中配置监控的内存访问地址Monitor_A(Mr和监控地址的Mask 信号 Monitor-Addr-Mask ;
[0084] 步骤202,在寄存器中配置地址监控使能Monitor_Ctrl,使能地址监控;
[0085] 步骤203,向CPU注册中断;
[0086] 步骤204,运行需要debug的程序,该debug程序为需要监测的程序,该程序会访 问DDR内存控制器,DDR控制器会执行相应的命令及读写数据流,在命令解析过程中,监测 命令中与访问地址相关的字段的内容;
[0087] 步骤205,判断是否产生中断,具体根据命令中与访问地址相关的字段的内容,确 定该命令指向的地址;若该命令指向的地址属于预监测的地址时,确定产生中断,执行步骤 206,若否,返回步骤204继续运行需要debug的程序;
[0088] 本发明实施例配置的预监测地址可W是一个地址,也可W是多个地址,在配置 的预监测地址为多个地址,可W是仅配置一个地址,根据该地址按照设定规则扩展为 一段地址,如将该地址的最低n位去掉再填充时对应的地址范围。如一个具体的地址 如0X10010012,则对应的地址范围为把最后4 b i t给去W后,就扩展成一个范围的地址 0x10010010 ~OxlOOlOOlf。
[0089] 当然,也可W设置两个寄存器,一个用于设置起始地址,一个用于设置结束地址来 限定预监测的地址范围。
[0090] 本发明实施例配置的Monito;r_Ad化为一个地址,配置Monito;r_A(M;r_Mask代表通 过屏蔽Monito;r_A(Mr中的后n位来实现一段地址范围的监控。
[0091] 步骤206,进入监控中断服务程序,即在寄存器中记录与该命令执行相关的信息;
[0092] 优选地,将该命令中与访问地址相关的字段、指示操作类型的字段、主设备标识字 段的内容记录到寄存器中,当然,还可W记录该命令执行相关的其它内容。
[0093] 步骤207, CPU读取从寄存器中读取记录的与该命令执行相关的信息。
[0094] 实施例2
[0095] 本发明实施例通过监测读取的数据流和/或写入的数据流,用于实现对于某次特 定的访问的监控。
[0096] 本实施例为基于数据流的触发方式触发记录命令执行相关信息。
[0097] 对于数据流的触发方式,同样,先在DDR控制器的寄存器中配置要监测的数据特 征信息,如可W配置对某种特定类型pattern的数据流监控,一旦监控数据流与所需要监 视的数据匹配,郝么就会触发中断,送个功能可W通过mask扩展成对某种特定的pattern 进行监控,并可W指定在读操作或者写操作的时候触发中断。
[0098] 读取和/或写入的数据流中包括主设备标识,具体地,确定监测到的读取和/或写 入的数据流的特征符合预监测的读取和/或写入的数据特征信息时,将监测到的读取和/ 或写入的数据流、读取和/或写入指示信息、读取和/或写入的数据流的主设备标识记录到 寄存器中。
[0099] 如表2所示给出了本实施例实现对某次特定访问监控的寄存器的描述。
[0100] 表 2
[0103] 如图3为本发明实施例实现DDR内存控制器的访问监控流程图,具体包括W下步 骤:
[0104] 步骤301,在寄存器中配置监控的内存数据Mon i tor_Data和监控数据的Mask信号 Monitor_Addr_Mask ;
[0105] 步骤302,在寄存器中配置数据监控使能Monitor_Ctrl,使能数据监控;
[0106] 步骤303,向CPU注册中断;
[0107] 步骤304,运行需要debug的程序,该debug程序为需要监测的程序,该程序会访问 DDR内存控制器,DDR控制器会执行相应的命令及读写数据流,在数据读出/写入过程中,监 测读取的数据流和/或写入的数据流;
[010引步骤305,判断是否产生中断,具体确定监测到的读取和/或写入的数据流的特征 是否符合预监测的读取和/或写入的数据特征信息;若符合,确定产生中断,执行步骤306, 若否,返回步骤304
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1