会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 31. 发明授权
    • Page stream sorter for poor locality access patterns
    • 页面流排序器用于不良的局部访问模式
    • US07664905B2
    • 2010-02-16
    • US11592540
    • 2006-11-03
    • David A. JaroshSonny S. YeohColyn S. CaseJohn H. Edmondson
    • David A. JaroshSonny S. YeohColyn S. CaseJohn H. Edmondson
    • G06F13/14
    • G06F13/1626
    • In some applications, such as video motion compression processing for example, a request pattern or “stream” of requests for accesses to memory (e.g., DRAM) may have, over a large number of requests, a relatively small number of requests to the same page. Due to the small number of requests to the same page, conventionally sorting to aggregate page hits may not be very effective. Reordering the stream can be used to “bury” or “hide” much of the necessary precharge/activate time, which can have a highly positive impact on overall throughput. For example, separating accesses to different rows of the same bank by at least a predetermined number of clocks can effectively hide the overhead involved in precharging/activating the rows.
    • 在一些应用中,例如视频运动压缩处理,例如,对存储器(例如,DRAM)访问的请求的请求模式或“流”可以在大量请求中具有相对较少数量的请求 页。 由于对同一页面的请求数量不多,常规排序以汇总页面命中可能不是很有效。 重新排序流可以用于“埋葬”或“隐藏”大量必要的预充/激活时间,这对整体吞吐量可能产生很大的积极影响。 例如,将对相同存储体的不同行的访问分离至少预定数量的时钟可以有效地隐藏预充电/激活行所涉及的开销。
    • 32. 发明授权
    • Method and apparatus for predicting multiple conditional branches
    • 用于预测多个条件分支的方法和装置
    • US06272624B1
    • 2001-08-07
    • US09285529
    • 1999-04-02
    • Glenn P. GiacaloneJohn H. Edmondson
    • Glenn P. GiacaloneJohn H. Edmondson
    • G06F9305
    • G06F9/3848
    • The outcome of a plurality of branch instructions in a computer program is predicted by fetching a plurality or group of instructions in a given slot, along with a corresponding prediction. A group global history (gghist) is maintained to indicate of recent program control flow. In addition, a predictor table comprising a plurality of predictions, preferably saturating counters. A particular counter is updated when a branch is encountered. The particular counter is associated with a branch instruction by hashing the fetched instruction group's program counter (PC) with the gghist. To predict multiple branch instruction outcomes, the gghist is hashed with the PC to form an index which is used to access naturally aligned but randomly ordered predictions in the predictor table, which are then reordered based on value of the lower gghits bits. Preferably, instructions are fetched in blocks of eight instructions. The gghist is maintained by shifting in a 1 if a branch in the corresponding group is taken, or a 0 if no branch in the corresponding group is taken. The hashing function is preferably an XOR operation. Preferably, a predictor table counter is incremented when a corresponding branch is taken, but not beyond a maximum value, and is decremented when the corresponding branch is not taken, but not below zero. Preferably, the most significant bit of a counter is used to determine a prediction.
    • 计算机程序中的多个分支指令的结果通过在给定时隙中取出多个或一组指令以及相应的预测来预测。 维持组织全球历史(gghist)以指示最近的程序控制流程。 另外,预测器表包括多个预测,优选饱和计数器。 遇到分支时,会更新一个特定的计数器。 特定计数器与分支指令相关联,通过用gghist散列获取的指令组的程序计数器(PC)。 为了预测多个分支指令结果,gghist与PC进行散列以形成一个索引,用于访问预测器表中的自然对齐但随机排序的预测,然后基于较低g比特位的值重新排序。 优选地,指令以八个指令的块来获取。 如果相应组中的分支被采用,则通过在1中移位来维持高斯特,或者如果不对应组中的分支,则为0。 散列函数优选为异或运算。 优选地,当相应的分支被采取但不超过最大值时,预测器表计数器递增,并且当相应的分支未被采用但不低于零时递减。 优选地,计数器的最高有效位用于确定预测。
    • 35. 发明授权
    • Supporting late DRAM bank hits
    • 支持晚期DRAM银行点击
    • US08656093B1
    • 2014-02-18
    • US12326063
    • 2008-12-01
    • John H. EdmondsonShane Keil
    • John H. EdmondsonShane Keil
    • G06F12/00G06F13/00G06F13/28
    • G06F13/28
    • One embodiment of the invention sets forth a mechanism to transmit commands received from an L2 cache to a bank page within the DRAM. An arbiter unit determines which commands from a command sorter to transmit to a command queue. An activate command associated with the bank page related to the commands is also transmitted to an activate queue. The last command in the command queue is marked as “last.” An interlock counter stores a count of “last” commands in the read/write command queue. A DRAM controller transmits activate and commands from the activate queue and the command queue to the DRAM. Each time a command marked as “last” is encountered, the DRAM controller decrements the interlock counter. If the count in the interlock counter is zero, then the command marked as “last” is marked as “auto-precharge.” The “auto-precharge” command, when processed, causes the bank page to be closed.
    • 本发明的一个实施例提出了一种将从L2高速缓存接收的命令发送到DRAM内的存储体页面的机制。 仲裁器单元确定哪些命令从命令分拣机发送到命令队列。 与该命令相关联的存储体页面的激活命令也被发送到激活队列。 命令队列中的最后一个命令被标记为“last”。 互锁计数器在读/写命令队列中存储“最后”命令的计数。 DRAM控制器将激活和命令从激活队列和命令队列传送到DRAM。 每当遇到标记为“last”的命令时,DRAM控制器递减互锁计数器。 如果互锁计数器中的计数为零,则标记为“last”的命令被标记为“自动预充电”。 “自动预充电”命令在处理时导致银行页关闭。
    • 37. 发明授权
    • Sorting requests to the DRAM for high page locality
    • 将请求排序到DRAM以获得高页面位置
    • US08307165B1
    • 2012-11-06
    • US12501351
    • 2009-07-10
    • Shane KeilJohn H. EdmondsonSean J. Treichler
    • Shane KeilJohn H. EdmondsonSean J. Treichler
    • G06F12/00G06F13/00
    • G06F13/1631
    • One embodiment of the invention sets forth a mechanism for increasing the number of read commands or write commands transmitted to an activated bank page in the DRAM. Read requests and dirty notifications are organized in a read request sorter or a dirty notification sorter, respectively, and each sorter includes multiple sets with entries that may be associated with different bank pages in the DRAM. Read requests and dirty notifications are stored in read request lists and dirty notification lists, where each list is associated with a specific bank page. When a bank page is activated to process read requests, read commands associated with read requests stored in a particular read request list are transmitted to the bank page. When a bank page is activated to process dirty notifications, write commands associated with dirty notifications stored in a particular dirty notification list are transmitted to the bank page.
    • 本发明的一个实施例提出了一种用于增加发送到DRAM中的激活的存储体页面的读取命令或写入命令的数量的机制。 读取请求和脏通知分别组织在读请求分类器或脏通知分类器中,并且每个分类器包括具有可与DRAM中的不同存储区页相关联的条目的多个集合。 读取请求和脏通知存储在读取请求列表和脏通知列表中,每个列表与特定的银行页面相关联。 当激活银行页面以处理读取请求时,读取与存储在特定读取请求列表中的读取请求相关联的命令被发送到银行页面。 激活银行页面以处理脏通知时,与存储在特定脏通知列表中的脏通知相关联的写入命令被发送到银行页面。
    • 38. 发明授权
    • Using a data cache array as a DRAM load/store buffer
    • 使用数据高速缓存阵列作为DRAM加载/存储缓冲区
    • US08234478B1
    • 2012-07-31
    • US12256400
    • 2008-10-22
    • James RobertsDavid B. GlascoPatrick R. MarchandPeter B. HolmqvistGeorge R. LynchJohn H. Edmondson
    • James RobertsDavid B. GlascoPatrick R. MarchandPeter B. HolmqvistGeorge R. LynchJohn H. Edmondson
    • G06F12/00G06F13/00G06F13/28
    • G06F12/0895
    • One embodiment of the invention sets forth a mechanism for using the L2 cache as a buffer for data associated with read/write commands that are processed by the frame buffer logic. A tag look-up unit tracks the availability of each cache line in the L2 cache, reserves necessary cache lines for the read/write operations and transmits read commands to the frame buffer logic for processing. A data slice scheduler transmits a dirty data notification to the frame buffer logic when data associated with a write command is stored in an SRAM bank. The data slice scheduler schedules accesses to the SRAM banks and gives priority to accesses requested by the frame buffer logic to store or retrieve data associated with read/write commands. This feature allows cache lines reserved for read/write commands that are processed by the frame buffer logic to be made available at the earliest clock cycle.
    • 本发明的一个实施例提出了一种使用L2高速缓存作为与由帧缓冲器逻辑处理的读/写命令相关联的数据的缓冲器的机制。 标签查找单元跟踪L2高速缓存中每个高速缓存行的可用性,为读/写操作预留必要的高速缓存行,并将读命令发送到帧缓冲器逻辑进行处理。 当与写命令相关联的数据被存储在SRAM存储体中时,数据片调度器将脏数据通知发送到帧缓冲器逻辑。 数据片调度器调度对SRAM组的访问,并且优先级由帧缓冲器逻辑请求的访问来存储或检索与读/写命令相关联的数据。 该功能允许由帧缓冲器逻辑处理的读/写命令保留的高速缓存行在最早的时钟周期内可用。
    • 39. 发明授权
    • System interface protocol with optional module cache
    • 具有可选模块缓存的系统接口协议
    • US5987544A
    • 1999-11-16
    • US525114
    • 1995-09-08
    • Peter J. BannonAnil K. JainJohn H. EdmondsonRuben William Sixtus Castelino
    • Peter J. BannonAnil K. JainJohn H. EdmondsonRuben William Sixtus Castelino
    • G06F12/08G06F12/06
    • G06F12/0831
    • A computer system includes a plurality of processor modules coupled to a system bus with each of said processor modules including a processor interfaced to the system bus. The processor module has a backup cache memory and tag store. An index bus is coupled between the processor and the backup cache and backup cache tag store with said bus carrying only an index portion of a memory address to said backup cache and said tag store. A duplicate tag store is coupled to an interface with the duplicate tag memory including means for storing duplicate tag addresses and duplicate tag valid, shared and dirty bits. The duplicate tag store and the separate index bus provide higher performance from the processor by minimizing external interrupts to the processor to check on cache status and also allows other processors access to the processor's duplicate tag while the processor is processing other transactions.
    • 计算机系统包括耦合到系统总线的多个处理器模块,每个所述处理器模块包括与系统总线接口的处理器。 处理器模块具有备份高速缓存和标签存储。 索引总线耦合在处理器和备份高速缓存和备份高速缓存标签存储之间,所述总线仅将存储器地址的索引部分携带到所述备份高速缓存和所述标签存储。 重复标签存储器与重复标签存储器耦合到接口,包括用于存储重复标签地址和重复标签有效,共享和脏位的装置。 重复标签存储和单独的索引总线通过最小化处理器的外部中断来检查高速缓存状态,从处理器提供更高的性能,并且还允许其他处理器在处理器处理其他事务时访问处理器的重复标签。
    • 40. 发明授权
    • Method for increasing system bandwidth through an on-chip address lock
register
    • 通过片上地址锁定寄存器增加系统带宽的方法
    • US5615167A
    • 1997-03-25
    • US525106
    • 1995-09-08
    • Anil K. JainJohn H. EdmondsonPeter J. Bannon
    • Anil K. JainJohn H. EdmondsonPeter J. Bannon
    • G06F9/46G11C13/00
    • G06F9/526G06F9/3004G06F9/30072G06F9/30087
    • A computer system comprising one or more processor modules. Each processor module comprising a central processing unit comprising a storage element disposed in the central processing unit dedicated for storing a semaphore address lock value and a semaphore lock flag value, a cache memory system for storing data and instruction values used by the central processing unit, a system bus interface for communicating with other processor modules over a system bus, a memory system implemented as a common system resource available to the processor modules for storing data and instructions, an IO system implemented as a common system resource available to the plurality of processor modules for each to communicate with data input devices and data output devices, and a system bus connecting the processor module to the memory system and to the IO system.
    • 一种包括一个或多个处理器模块的计算机系统。 每个处理器模块包括中央处理单元,该中央处理单元包括设置在专用于存储信号量地址锁定值和信号量锁定标志值的中央处理单元中的存储元件,用于存储由中央处理单元使用的数据和指令值的高速缓冲存储器系统, 用于通过系统总线与其他处理器模块通信的系统总线接口,被实现为用于存储数据和指令的处理器模块可用的公共系统资源的存储器系统,被实现为可用于多个处理器的公共系统资源的IO系统 每个模块用于与数据输入设备和数据输出设备通信,以及将处理器模块连接到存储器系统和IO系统的系统总线。