Iterator register for structured memory

    公开(公告)号:US09601199B2

    公开(公告)日:2017-03-21

    申请号:US12842958

    申请日:2010-07-23

    IPC分类号: G11C15/00

    摘要: Loading data from a computer memory system is disclosed. A memory system is provided, wherein some or all data stored in the memory system is organized as one or more pointer-linked data structures. One or more iterator registers are provided. A first pointer chain is loaded, having two or more pointers leading to a first element of a selected pointer-linked data structure to a selected iterator register. A second pointer chain is loaded, having two or more pointers leading to a second element of the selected pointer-linked data structure to the selected iterator register. The loading of the second pointer chain reuses portions of the first pointer chain that are common with the second pointer chain.Modifying data stored in a computer memory system is disclosed. A memory system is provided. One or more iterator registers are provided, wherein the iterator registers each include two or more pointer fields for storing two or more pointers that form a pointer chain leading to a data element. A local state associated with a selected iterator register is generated by performing one or more register operations relating to the selected iterator register and involving pointers in the pointer fields of the selected iterator register. A pointer-linked data structure is updated in the memory system according to the local state.

    Hierarchical associative memory-based classification system
    2.
    发明授权
    Hierarchical associative memory-based classification system 有权
    分层联想记忆分类系统

    公开(公告)号:US09111013B2

    公开(公告)日:2015-08-18

    申请号:US11297551

    申请日:2005-12-08

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: G06F7/00 G06F17/30 H04L29/06

    摘要: A system and method for efficiently searching long strings of data, such as network messages, is described. The system preferably includes an associative memory structure, having a plurality of content addressable memories (CAMs). The CAMs are hierarchically arranged such the output of at least one CAM is used as the input to a second CAM. Preferably, a top-level CAM receives only a selected portion of the data string or network message as its input. The output of the top-level CAM is then joined with some or all of the remaining portions of the data string to form a new output that is provided to the CAM at the next lower level. The top-level CAM is programmed such that its output is substantially smaller (e.g., has fewer bits) than the selected data string portion that is input to the top-level CAM. The system can thus search data strings that are on the whole far longer than the widths of the respective CAMs forming the memory structure.

    摘要翻译: 描述了用于有效地搜索诸如网络消息的长串数据的系统和方法。 该系统优选地包括具有多个内容可寻址存储器(CAM)的关联存储器结构。 CAM分层布置,使得至少一个CAM的输出用作第二CAM的输入。 优选地,顶级CAM仅接收数据串或网络消息的选定部分作为其输入。 然后,顶级CAM的输出与数据串的部分或全部剩余部分相连,以形成提供给下一级较低级别的CAM的新输出。 顶级CAM被编程为使得其输出比输入到顶级CAM的所选择的数据串部分小得多(例如,具有较少的位)。 因此,该系统可以搜索整体比构成存储器结构的相应CAM的宽度更长的数据串。

    Efficient automated translation of procedures in an constraint-based programming language implemented with notification and callback
    3.
    发明授权
    Efficient automated translation of procedures in an constraint-based programming language implemented with notification and callback 有权
    在通过通知和回调实现的基于约束的编程语言中高效地自动翻译程序

    公开(公告)号:US08972950B2

    公开(公告)日:2015-03-03

    申请号:US13494404

    申请日:2012-06-12

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: G06F9/44

    CPC分类号: G06F9/4496

    摘要: A method is provided for translating sets of constraint declarations to imperative code sequences based on defining an instantiatable object per set, inserting calls to a notification callback mechanism on state modification and defining calls in the constraint context as imperative code sequences that, in response to these callbacks, take actions to maintain these constraints. This notification and callback mechanism can also be employed in connection with external events, thereby providing for efficient implementation of event-sequenced imperative procedures in a constraint programming language.

    摘要翻译: 提供了一种用于将约束声明集合转换为命令性代码序列的方法,其基于定义每组可实例化的对象,在状态修改上插入对通知回调机制的调用,并在约束上下文中定义调用作为响应于这些的必要代码序列 回调,采取行动来维护这些限制。 该通知和回调机制也可以与外部事件相关联使用,从而提供约束编程语言中事件序列命令性过程的有效实现。

    Notification-based constraint set translation to imperative execution
    4.
    发明授权
    Notification-based constraint set translation to imperative execution 有权
    基于通知的约束集转换为命令执行

    公开(公告)号:US08850409B2

    公开(公告)日:2014-09-30

    申请号:US12154399

    申请日:2008-05-21

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: G06F9/45

    CPC分类号: G06F8/40 G06F8/437

    摘要: A method is provided for translating sets of constraint declarations to imperative code sequences based on defining an instantiatable object per set, inserting calls to a notification callback mechanism on state modification and defining calls in the constraint context as imperative code sequences that, in response to these callbacks, take actions to maintain these constraints.

    摘要翻译: 提供了一种用于将约束声明集合转换为命令性代码序列的方法,其基于定义每组可实例化的对象,在状态修改上插入对通知回调机制的调用,并在约束上下文中定义调用作为响应于这些的必要代码序列 回调,采取行动来维护这些限制。

    Hardware-protected reference count-based memory management using weak references
    5.
    发明授权
    Hardware-protected reference count-based memory management using weak references 有权
    使用弱引用的硬件保护引用计数的内存管理

    公开(公告)号:US08838656B1

    公开(公告)日:2014-09-16

    申请号:US12804900

    申请日:2010-07-29

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: G06F17/30

    摘要: A method for managing memory, comprising: maintaining a strong reference count for a first object; establishing a first reference from the first object to a second object; establishing a second reference from the second object to the first object, wherein the second reference is a weak reference that does not increase the strong reference count of the first object; detecting that the strong reference count of the first object has reached zero; in response to detecting that the strong reference count has reached zero, invoking a corresponding action.

    摘要翻译: 一种用于管理存储器的方法,包括:维持第一对象的强引用计数; 建立从第一对象到第二对象的第一参考; 建立从第二对象到第一对象的第二参考,其中第二参考是不增加第一对象的强引用计数的弱引用; 检测到第一个对象的强引用计数已达到零; 响应于检测到强引用计数已经达到零,调用相应的动作。

    Hierarchical immutable content-addressable memory processor
    6.
    发明授权
    Hierarchical immutable content-addressable memory processor 有权
    分层不变的内容可寻址内存处理器

    公开(公告)号:US07650460B2

    公开(公告)日:2010-01-19

    申请号:US12011311

    申请日:2008-01-25

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: G06F12/00

    摘要: Improved memory management is provided according to a Hierarchical Immutable Content Addressable Memory Processor (HICAMP) architecture. In HICAMP, physical memory is organized as two or more physical memory blocks, each physical memory block having a fixed storage capacity. An indication of which of the physical memory blocks is active at any point in time is provided. A memory controller provides a non-duplicating write capability, where data to be written to the physical memory is compared to contents of all active physical memory blocks at the time of writing, to ensure that no two active memory blocks have the same data after completion of the non-duplicating write.

    摘要翻译: 根据分层不可变内容可寻址内存处理器(HICAMP)架构提供改进的内存管理。 在HICAMP中,物理存储器被组织为两个或多个物理存储器块,每个物理存储器块具有固定的存储容量。 提供了在任何时间点哪个物理存储器块是活动的指示。 存储器控制器提供非复制写入能力,其中要写入物理存储器的数据与写入时的所有活动物理存储器块的内容进行比较,以确保在完成后没有两个活动存储器块具有相同的数据 的不重复写入。

    Using ternary and binary content addressable memory stages to classify information such as packets
    7.
    发明授权
    Using ternary and binary content addressable memory stages to classify information such as packets 有权
    使用三进制和二进制内容可寻址的内存级来分类数据包等信息

    公开(公告)号:US07602787B2

    公开(公告)日:2009-10-13

    申请号:US11322135

    申请日:2005-12-28

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    IPC分类号: H04L12/56 G06F7/00 G06F9/34

    摘要: Methods and apparatus are disclosed herein for classifying packets using ternary and binary content-addressable memory stages to classify packets. One such system uses a stage of one or more TCAMS followed by a second stage one or more CAMS (or alternatively some other binary associative memories such as hash tables or TRIEs) to classify a packet. One exemplary system includes TCAMs for handling input and output classification and a forwarding CAM to classify packets for Internet Protocol (IP) forwarding decisions on a flow label. This input and output classification may include, but is not limited to routing, access control lists (ACLs), quality of service (QoS), network address translation (NAT), encryption, etc. These IP forwarding decisions may include, but are not limited to IP source and destination addresses, protocol type, flags and layer 4 source and destination ports, a virtual local area network (VLAN) id and/or other fields.

    摘要翻译: 本文公开了用于使用三进制和二进制可内容寻址的存储器级对数据包进行分类以对数据包进行分类的方法和装置。 一个这样的系统使用一个或多个TCAMS的阶段,随后是第二阶段一个或多个CAMS(或者替代地,一些其他二进制关联存储器,例如哈希表或TRIE)来对分组进行分类。 一个示例性系统包括用于处理输入和输出分类的TCAM和转发CAM以对流标签上的因特网协议(IP)转发决定分组。 该输入和输出分类可以包括但不限于路由,访问控制列表(ACL),服务质量(QoS),网络地址转换(NAT),加密等。这些IP转发决定可以包括但不是 限于IP源和目的地址,协议类型,标志和第4层源和目的端口,虚拟局域网(VLAN)id和/或其他字段。

    Method for Traffic Management, Traffic Prioritization, Access Control, and Packet Forwarding in a Datagram Computer Network
    8.
    发明申请
    Method for Traffic Management, Traffic Prioritization, Access Control, and Packet Forwarding in a Datagram Computer Network 有权
    数据报计算机网络中的流量管理,流量优先级,访问控制和数据包转发方法

    公开(公告)号:US20090046734A1

    公开(公告)日:2009-02-19

    申请号:US12237546

    申请日:2008-09-25

    IPC分类号: H04L12/56

    CPC分类号: H04L12/4645 H04L12/4608

    摘要: The invention provides an enhanced datagram packet switched computer network. The invention processes network datagram packets in network devices as separate flows, based on the source-destination address pair in the datagram packet. As a result, the network can control and manage each flow of datagrams in a segregated fashion. The processing steps that can be specified for each flow include traffic management, flow control, packet forwarding, access control, and other network management functions. The ability to control network traffic on a per flow basis allows for the efficient handling of a wide range and a large variety of network traffic, as is typical in large-scale computer networks, including video and multimedia traffic. The amount of buffer resources and bandwidth resources assigned to each flow can be individually controlled by network management. In the dynamic operation of the network, these resources can be varied—based on actual network traffic loading and congestion encountered. The invention also teaches an enhanced datagram packet switched computer network which can selectively control flows of datagram packets entering the network and traveling between network nodes. This new network access control method also interoperates with existing media access control protocols, such as used in the Ethernet or 802.3 local area network. An aspect of the invention is that it does not require any changes to existing network protocols or network applications.

    摘要翻译: 本发明提供了一种增强型数据包分组交换计算机网络。 本发明基于数据报包中的源 - 目的地址对,将网络设备中的网络数据报包处理为单独的流。 因此,网络可以以隔离的方式来控制和管理数据报的每个流。 可以为每个流量指定的处理步骤包括流量管理,流量控制,数据包转发,访问控制和其他网络管理功能。 在每个流量基础上控制网络流量的能力允许对大范围和各种各样的网络流量的有效处理,如在包括视频和多媒体流量在内的大型计算机网络中典型的。 分配给每个流的缓冲资源和带宽资源的数量可以由网络管理单独控制。 在网络的动态运行中,这些资源可以根据实际的网络流量负载和遇到的拥塞而变化。 本发明还教导了一种增强的数据包分组交换计算机网络,其可以选择性地控制进入网络并在网络节点之间传播的数据报分组的流。 这种新的网络访问控制方法还与现有的媒体访问控制协议(例如在以太网或802.3局域网中使用的协议)互操作。 本发明的一个方面是不需要对现有网络协议或网络应用进行任何改变。

    Hierarchical associative memory-based classification system

    公开(公告)号:US07051078B1

    公开(公告)日:2006-05-23

    申请号:US09613039

    申请日:2000-07-10

    申请人: David R. Cheriton

    发明人: David R. Cheriton

    摘要: A system and method for efficiently searching long strings of data, such as network messages, is described. The system preferably includes an associative memory structure, having a plurality of content addressable memories (CAMs). The CAMs are hierarchically arranged such the output of at least one CAM is used as the input to a second CAM. Preferably, a top-level CAM receives only a selected portion of the data string or network message as its input. The output of the top-level CAM is then joined with some or all of the remaining portions of the data string to form a new output that is provided to the CAM at the next lower level. The top-level CAM is programmed such that its output is substantially smaller (e.g., has fewer bits) than the selected data string portion that is input to the top-level CAM. The system can thus search data strings that are on the whole far longer than the widths of the respective CAMs forming the memory structure.

    Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network
    10.
    发明授权
    Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network 失效
    数据报计算机网络中流量管理,流量优先级,访问控制和数据包转发的方法

    公开(公告)号:US06798776B1

    公开(公告)日:2004-09-28

    申请号:US09482940

    申请日:2000-01-14

    IPC分类号: H04L1256

    CPC分类号: H04L12/4645 H04L12/4608

    摘要: A method and apparatus for an enhanced datagram packet switched computer network is disclosed. The invention processes network datagram packets in network devices as separate flows, based on the source-destination address pair contained in the datagram packet itself. As a result, the network can control and manage each flow of datagrams in a segregated fashion. The processing steps that can be specified for each flow include traffic management, flow control, packet forwarding, access control, and other network management functions. The ability to control network traffic on a per flow basis allows for the efficient handling of a wide range and a large variety of network traffic, as is typical in large-scale computer networks, including video and multimedia type traffic. The amount of buffer resources and bandwidth resources assigned to each flow can be individually controlled by network management. In the dynamic operation of the network, these resources can be varied based on actual network traffic loading and congestion encountered.

    摘要翻译: 公开了一种用于增强型数据包分组交换计算机网络的方法和装置。 本发明基于数据包分组本身包含的源 - 目的地址对,将网络设备中的网络数据包分组处理为单独的流。 因此,网络可以以隔离的方式来控制和管理数据报的每个流。 可以为每个流量指定的处理步骤包括流量管理,流量控制,数据包转发,访问控制和其他网络管理功能。 在每个流量基础上控制网络流量的能力允许有效地处理广泛的范围和各种各样的网络流量,这在大型计算机网络中是典型的,包括视频和多媒体类型的流量。 分配给每个流的缓冲资源和带宽资源的数量可以由网络管理单独控制。 在网络的动态操作中,这些资源可以根据实际的网络流量负载和遇到的拥塞而变化。