Storage unsharing
    2.
    发明授权
    Storage unsharing 有权
    存储取消共享

    公开(公告)号:US08825982B2

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

    申请号:US13156881

    申请日:2011-06-09

    IPC分类号: G06F13/28 G06F17/50 G06F12/08

    摘要: A method is described to partition the memory of application-specific hardware compiled from a software program. Applying the invention generates multiple small memories that need not be kept coherent and are defined over a specific region of the program. The invention creates application specific hardware which preserves the memory image and addressing model of the original software program. The memories are dynamically initialized and flushed at the entries and exits of the program region they are defined in.

    摘要翻译: 描述了一种方法来分配从软件程序编译的特定于应用程序的硬件的内存。 应用本发明产生不需要保持一致的多个小存储器并且在程序的特定区域上定义。 本发明创建应用专用硬件,其保留原始软件程序的存储器图像和寻址模型。 这些存储器在它们定义的程序区域的条目和出口处被动态初始化和刷新。

    Storage Unsharing
    4.
    发明申请
    Storage Unsharing 有权
    存储取消分配

    公开(公告)号:US20110307663A1

    公开(公告)日:2011-12-15

    申请号:US13156881

    申请日:2011-06-09

    IPC分类号: G06F12/08

    摘要: A method is described to partition the memory of application-specific hardware compiled from a software program. Applying the invention generates multiple small memories that need not be kept coherent and are defined over a specific region of the program. The invention creates application specific hardware which preserves the memory image and addressing model of the original software program. The memories are dynamically initialized and flushed at the entries and exits of the program region they are defined in.

    摘要翻译: 描述了一种方法来分配从软件程序编译的特定于应用程序的硬件的内存。 应用本发明产生不需要保持一致的多个小存储器并且在程序的特定区域上定义。 本发明创建应用专用硬件,其保留原始软件程序的存储器图像和寻址模型。 在它们定义的程序区域的条目和出口处动态地初始化和刷新存储器。

    Method and system for converting a single-threaded software program into an application-specific supercomputer

    公开(公告)号:US10146516B2

    公开(公告)日:2018-12-04

    申请号:US15257319

    申请日:2016-09-06

    摘要: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.

    Method and system for converting a single-threaded software program into an application-specific supercomputer
    6.
    发明申请
    Method and system for converting a single-threaded software program into an application-specific supercomputer 审中-公开
    将单线程软件程序转换为专用超级计算机的方法和系统

    公开(公告)号:US20170017476A1

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

    申请号:US15257319

    申请日:2016-09-06

    IPC分类号: G06F9/45 G06F17/50 G06F9/52

    摘要: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.

    摘要翻译: 本发明包括(i)用于将单线程软件程序自动转换为特定应用程序的超级计算机的编译方法,以及(ii)应用该方法生成的超级计算机系统结构。 编译方法包括:(a)将来自应用的任意代码片段转换成其功能上等同于代码片段的软件执行的定制硬件; (b)在应用程序的硬件和软件部分生成接口,(i)在代码片段的条目处执行软件到硬件程序的状态转移; (ii)在代码片段的出口处执行硬件到软件程序状态传输; 和(iii)保持软件和硬件存储器之间的记忆一致性。 如果最终的硬件设计较大,则将其划分为分区,以使每个分区可以适合单个芯片。 然后,创建可以实现任何分区的单个联合芯片。

    Method and system for converting a single-threaded software program into an application-specific supercomputer

    公开(公告)号:US11579854B2

    公开(公告)日:2023-02-14

    申请号:US17411116

    申请日:2021-08-25

    摘要: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.

    Method and system for converting a single-threaded software program into an application-specific supercomputer

    公开(公告)号:US20190114158A1

    公开(公告)日:2019-04-18

    申请号:US16166164

    申请日:2018-10-22

    摘要: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.

    Method and system for converting a single-threaded software program into an application-specific supercomputer

    公开(公告)号:US20210389936A1

    公开(公告)日:2021-12-16

    申请号:US17411116

    申请日:2021-08-25

    摘要: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.