CN101438242B - 共享非易失性存储器体系结构 - Google Patents
共享非易失性存储器体系结构 Download PDFInfo
- Publication number
- CN101438242B CN101438242B CN2007800160526A CN200780016052A CN101438242B CN 101438242 B CN101438242 B CN 101438242B CN 2007800160526 A CN2007800160526 A CN 2007800160526A CN 200780016052 A CN200780016052 A CN 200780016052A CN 101438242 B CN101438242 B CN 101438242B
- Authority
- CN
- China
- Prior art keywords
- processing element
- logic
- initialization
- nonvolatile memory
- volatile memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/16—Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4054—Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
- G06F13/4243—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1075—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for multiport memories each having random access ports and serial ports, e.g. video RAM
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/10—Aspects relating to interfaces of memory device to external buses
- G11C2207/108—Wide data ports
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Multi Processors (AREA)
- Static Random-Access Memory (AREA)
- Dram (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
Abstract
一种使用共享非易失性存储器来初始化设备中多个处理部件的方法和系统。针对设备内各处理部件的启动逻辑和配置数据被存储于单个非易失性存储器中。一收到初始化该设备的命令,该共享存储器系统就将启动逻辑和配置数据从非易失性存储器复制到易失性主存储器。然后,各个处理部件访问该主存储器以找到其启动逻辑和配置数据、并开始执行。该共享存储器系统减少了用于初始化多个处理部件的非易失性存储器部件的数量。
Description
相关申请的交叉引用
本申请要求对2006年3月30日提交的题为“INTEGRATEDMULTI-PORT SERIAL MEMORY AND INTER-PROCESSORCOMMUNICATION(集成多端口串行存储器和处理器间通信)”的美国临时专利申请No.60/788,401(律师案号No.59472-8826.US00)的优先权,该申请通过引用结合于此。
背景
具有专用于单独任务的多个处理部件的移动设备正在变得越来越常用。例如,移动电话经常包含专用于处理呼叫的连接和断开的基带处理器、以及用于显示用户界面并接收来自用户的请求的单独的介质处理器。这些部件可共享非易失性主存储器以供在运行期间使用,或者各个部件可具有专用的存储器。各个部件可具有其自己的用于存储启动逻辑和配置数据的非易失性存储器。此外,各个部件可具有其自己的用于与其他部件通信的专用接口。
制造设备的成本与该设备所含部件的数量直接相关。因此,减少或消除冗余部件以节约资金是常见的制造目标。附加的部件还增大了设备的功耗,这直接影响了移动设备的电池寿命。因此,减少部件还能延长电池寿命。此外,部件之间总线和其他接口的数量增加了设备的复杂性。增加的复杂性带来了设计和测试设备的难度,并增加了将新产品投入市场所需的时间。
设备中格外昂贵的一个部件是用于初始化该设备的非易失性存储器。通常使用在工厂可用启动逻辑和配置数据闪存的EEPROM,有时称作闪存。闪存有两种类型可用:NAND和NOR,其指的是在闪存内用于存储数据的逻辑门的主要类型。NOR闪存速度快、具有微秒存取时间,而NAND闪存较慢、通常具有毫秒存取时间。然而,速度与价格相关,NOR闪存比NAND闪存更贵。设备制造商必须在闪存的速度与其成本之间作出权衡。消费者通常期望消费电子设备(例如,便携式电话和DVD播放机)有快速的启动时间,从而偏向于使用较快的闪存,所以闪存经常是设备的多个昂贵部件之一。在设备内包括有多个处理部件且各个部件具有其自己的闪存时,其成本就相当高了。
附图简述
图1是示出共享存储器系统的各个部件的框图。
图2是示出包含该共享存储器的设备在初始化期间的处理的流程图。
图3是示出在初始化期间设备中闪存的内容和随机存取存储器的内容的存储器示图。
图4是示出在初始化期间初始化逻辑的验证的流程图。
详细描述
提供一种使用共享非易失性存储器来初始化多个处理部件的方法和系统,该系统称为共享存储器系统。该共享存储器系统减少了设备中用来初始化多个处理部件的非易失性存储器部件的数量。在一些实施例中,用于处理设备中部件的启动逻辑和配置数据被存储在单个非易失性存储器中。在收到初始化该设备的命令后,共享存储器系统将启动逻辑和配置数据从非易失性存储器复制到易失性主存储器。然后,各个处理部件访问该主存储器以找到其启动逻辑和配置数据、并开始执行。主存储器通常比闪存快得多。因此,启动逻辑从非易失性存储器到主存储器的移动降低了该非易失性存储器速度的重要性,因为它只是初始复制期间的一个因素。这样,共享存储器系统使设备制造商能选择较便宜的非易失性存储器部件,而不对设备的启动速度产生显著影响。此外,因为设备制造商必须将各个部件设计成在正常运行期间访问主存储器,所以在来自主存储器的启动逻辑可用时无需设计用于访问非易失性存储器的附加接口。这样,共享存储器系统简化了各个部件的设计,导致较低的复杂性和功耗。
在一些实施例中,共享存储器系统利用串行端口存储器部件,诸如在2001年11月7日提交的题为“COMMUNICATIONS ARCHITECTURE FORMEMORY-BASED DEVICES(基于存储器设备的通信体系结构)”的美国专利申请No.10/045,297(律师案号No.59472-8812.USOO)中所描述的存储器链路(MemoryLink)体系结构,该申请通过引用结合于此。以上引用的申请描述了使诸如上述处理部件之类的多个器件能访问单个主存储器件的串行端口存储器。该体系结构包括用于访问存储器的机制、以及用于在设备之间传达事件以指示操作的完成的机制。在一些实施例中,各处理部件可具有连接它们的单独的接口,且处理部件使用该接口来同步它们的活动。
在一些实施例中,共享存储器系统将处理部件中的一个指定为主处理部件。主处理部件是附连到非易失性(例如闪存)存储器部件的唯一处理部件。在启动期间,主处理部件负责将非易失性存储器部件的内容复制到主存储器部件。在主处理部件已复制了非易失性存储器部件的内容之后,该主处理部件诸如通过使用上述信令机制信令其他处理部件开始它们的启动序列。该主处理部件也通过访问包含非易失性存储器部件的复制内容的主存储器部件开始它的启动序列。这样,只有一个处理部件被设计成具有与非易失性存储器部件的单独接口,然而该非易失性存储器部件的内容对每一个处理部件都是可用的。
图1是示出一些实施例中共享存储器系统的各个部件的框图。使用共享存储器系统的设备100包括:闪存部件110或其他非易失性存储器部件、第一处理部件120、至少一个其他处理部件130、以及主随机存取存储器(RAM)140或其他易失性存储器部件。闪存部件110包含在该共享存储器系统已掉电期间针对各个处理部件存储的启动逻辑和配置数据。第一处理部件120被配置成主处理部件,并附连到闪存部件110。在设备100启动期间,该第一处理部件120将闪存部件110的内容复制到随机存取存储器140。处理部件120和130中的每一个都与随机存取存储器140连接。一旦第一处理部件120已将闪存部件110的内容复制到随机存取存储器140,处理部件120和130中的每一个就通过直接从随机存取存储器140访问启动逻辑和配置数据来开始它们的启动序列。虽然图1中只描绘了两个处理部件,但可以理解任何数量的处理部件或其他部件可被耦合到该共享存储器。各个处理器还可相互不同,并执行不同的功能。例如,在移动应用中,一个处理器可以是基带处理器,而另一个处理器可以是应用处理器。
其上实现系统的设备可包括中央处理器、存储器、输入设备(例如键盘和定点设备)、输出设备(例如视觉显示器、音频扬声器)、以及存储设备(例如磁盘驱动器)。存储器和存储设备是可用实现所公开技术的计算机可执行指令编码的计算机可读介质,这表示包含适当指令的计算机可读介质。此外,数据结构和消息结构可经由数据传输介质来存储或传输,诸如通信链路上的信号。可使用各种通信链路,诸如因特网、局域网、广域网、点到点拨号连接、蜂窝电话网络等。
本系统的各实施例可在各种移动运行环境中实现,包括个人计算机、服务器计算机、手提或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、数码相机、网络PC、小型计算机、包括以上任何系统或设备的分布式计算环境等。该计算机系统可以是蜂窝电话、个人数字助理、智能电话、个人计算机、可编程消费电子产品、数字照相机等。
可在由一个或多个计算机或其他设备所执行的诸如程序模块之类的计算机可执行指令的普通上下文中对该系统进行描述。一般而言,各程序模块包括执行特殊任务或实现特殊抽象数据类型的硬件逻辑、例行程序、程序、对象、部件、数据结构等。通常,各程序模块的功能在各种实施例中可按需进行组合或分配。
图2是示出一个实施例中设备在初始化期间的处理的流程图。在电源第一次被施加到设备或在设备执行硬复位时,初始化发生。在框210,设备起动主处理器。在框220,该设备指示主处理器开始执行来自闪存部件(或其他非易失性存储器部件)的指令,这些指令指示该主处理器将闪存的内容复制到随机存取存储器(或其他易失性存储器)。在框230,该设备信令各个处理器使用该随机存取存储器部件开始初始化。在框240,第一处理器在随机存取存储器内定位其初始化指令,并开始执行该初始化指令。在框250,其他各处理器在随机存取存储器内定位其相应初始化指令,并开始执行这些初始化指令。在步骤250之后,该设备被初始化,且这些步骤终止。
图3是示出一个实施例中初始化期间闪存的内容和随机存取存储器的内容的存储器示图。该示图包含闪存305和随机存取存储器350。闪存305包含针对第一处理部件的初始化逻辑310、针对另一处理部件的初始化逻辑315、闪存描影逻辑(flash shadow logic)320、以及引导复位向量(boot resetvector)325。初始化逻辑310包含第一处理部件初始化其自身所需的信息。初始化逻辑310可包含用于验证该初始化逻辑的完整性和来源的签名312(以下进一步详细描述)。初始化逻辑315包含第二处理部件初始化其自身所需的信息。初始化逻辑315还可包含签名317。闪存描影逻辑320包含由将闪存的内容复制到随机存取存储器的主处理部件执行的指令。引导复位向量325是主处理器在复位后在其上开始执行的已知位置。引导复位向量325包含到闪存描影逻辑320的地址的转移。
随机存取存储器350包含指派给第一处理部件的区355、以及指派给第二处理部件的区375。指派给第一处理部件的区355包含从闪存处复制的初始化逻辑360。指派给第二处理部件的区375包含从闪存处复制的初始化逻辑380。一旦闪存描影逻辑320已完成复制初始化逻辑360和380,该闪存描影逻辑320就信令各个处理单元使用适当的存储区开始初始化。在一些实施例中,该描影复制逻辑320可嵌入处理部件中的一个,并且可不包含于闪存305内。在一些实施例中,各个区可与随机存取存储器350上的一端口相关联。在先前引用的题为“COMMUNICATIONS ARCHITECTUREFOR MEMORY-BASED DEVICES”的专利申请中公开了具有多个用于访问存储器的串行端口的存储器体系结构。
在一些实施例中,共享存储器不指定主处理部件。然而,共享存储器系统可包含用于将闪存部件的内容复制到随机存取存储器部件的专用硬件,从而不使用主处理部件。或者,各个处理部件可连接到闪存部件,且各处理部件可诸如通过确定哪个处理单元最快来确定它们中的哪一个将复制闪存的内容。
在一些实施例中,共享存储器系统不信令各个处理部件起动初始化。例如,各处理部件可等待预定时段来开始初始化,这被认为足以确保完成启动逻辑和配置数据从闪存到随机存取存储器的复制。或者,各处理部件可轮询主存储器来确定共享存储器系统何时已将数据写入针对初始化逻辑的特殊已知最终地址。
在一些实施例中,共享存储器系统应处理部件的请求而非在初始化时从闪存复制数据。例如,各处理部件中的一个可能能够独立于系统的其余部分进行复位,诸如蜂窝电话中的介质处理器,以使该处理部件在设备已被初始化后请求从闪存中复制数据。作为另一示例,共享存储器系统可周期性地使一些处理部件断电以在不使用处理部件时省电。在这些情形中,主处理部件可提供请求处理部件以用来请求复制闪存中被该请求处理部件所用的区域的协议。
在一些实施例中,闪存部件中的初始化逻辑包含散列以验证其内容的完整性。例如,SHA散列或MD5散列可用来产生与各个处理部件的初始化逻辑一起存储的签名,该签名被各个处理部件用来验证该初始化逻辑的完整性。替换地或附加地,可对各处理部件中的一个或多个的初始化逻辑加密以防止用该初始化逻辑读取或篡改。各处理部件可包含用于在执行闪存的复制内容之前对该内容进行解密的公钥。或者,所指定的主处理单元可负责执行此类验证。
图4是示出一个实施例中初始化期间初始化逻辑的验证的流程图。在框410,处理部件识别其被复制到主存储器的初始化逻辑。在框420,该处理部件定位与该初始化逻辑相关联的签名。在框430,该处理部件执行初始化逻辑内容的散列。在框440,该处理部件将所确定的散列值和与该初始化逻辑相关联的签名作比较。在判定框450,如果这两个值匹配,则该部件在框470继续,否则该部件就在框460继续。在框460,在这两个值不匹配时,处理部件确定内容已被修改并采取适当的行动。例如,该处理部件可信令中断或中止进一步的处理。在框470,在初始化逻辑未被修改时,处理部件通过执行初始化逻辑来执行初始化。在步骤470之后,这些步骤终止。
从以上内容将可以理解,虽然在此出于例示目的已对共享存储器系统的各具体实施例进行了描述,但是可作各种修改而不背离本发明的精神和范围。例如,虽然已对随机存取存储器进行了描述,但是可使用任何适当的存储设备。类似地,虽然已对各处理部件进行了描述,但是通常从非易失性存储设备读取信息的任何部件,不管该非易失性存储设备是否包含要执行的指令,都可获益于所描述的共享存储器系统。因此,本发明只受所附权利要求限制。
Claims (19)
1.一种用于在各处理部件之间共享非易失性存储器的系统,包括:
易失性存储器,其被配置成在所述系统的运行期间存储数据;
第一处理部件,其连接于所述易失性存储器并被配置成从所述易失性存储器访问初始化逻辑,所述第一处理部件是主处理部件,
第二处理部件,其连接于所述易失性存储器并被配置成从所述易失性存储器访问初始化逻辑;以及
非易失性存储器,所述非易失性存储器包括针对所述第一处理部件的初始化逻辑和针对所述第二处理部件的初始化逻辑,所述针对第一处理部件的初始化逻辑包括针对第一处理部件的启动逻辑和配置数据,并且所述针对第二处理部件的初始化逻辑包括针对所述第二处理部件的启动逻辑和配置数据,其中在电源第一次被施加到系统或在系统执行硬复位时,初始化发生;
闪存描影逻辑,所述闪存描影逻辑包含可由第一处理部件执行的指令,由此:
所述第一处理部件在所述第一处理部件和所述第二处理部件开始初始化前将所述初始化逻辑从所述非易失性存储器复制至所述易失性存储器,并
在所述第一处理部件已将所述非易失性存储器的内容复制至所述易失性存储器之后,所述第一处理部件信令所述第二处理部件通过访问所述易失性存储器开始所述第二处理部件的启动序列并信令所述第一处理部件通过访问所述易失性存储器开始所述第一处理部件的启动序列;
其中所述第一处理部件是附连到所述非易失性存储器的唯一处理部件;并且
引导复位向量包含到所述闪存描影逻辑的地址的转移,所述引导复位向量是所述第一处理部件在复位时开始执行的已知位置。
2.如权利要求1所述的系统,其特征在于,所述闪存描影逻辑包含在所述非易失性存储器内。
3.如权利要求1所述的系统,其特征在于,所述第一处理部件与所述第二处理部件不是同一类型。
4.如权利要求1所述的系统,其特征在于,所述易失性存储器比所述非易失性存储器快。
5.如权利要求1所述的系统,其特征在于,散列用于产生签名,所述签名与所述初始化逻辑一起被存储以验证所述初始化逻辑的完整性,并且所述第一处理部件被配置成执行初始化逻辑的内容的散列并将所确定的散列值和与所述初始化逻辑相关联的签名作比较。
6.如权利要求1所述的系统,其特征在于,存储于所述非易失性存储器中的所述初始化逻辑使用私钥加密,并且所述第一处理部件和所述第二处理部件使用公钥解密所述初始化逻辑。
7.如权利要求1所述的系统,其特征在于,所述非易失性存储器部件是闪存部件。
8.一种初始化系统中的各个处理部件的方法,所述方法包括:
接收初始化所述系统的请求,其中在电源第一次被施加到系统或在系统执行硬复位时,初始化发生;
多个处理部件中的第一处理部件访问包含可由所述第一处理部件执行的指令的闪存描影逻辑、包含所述闪存描影逻辑的地址的转移的引导复位向量,所述引导复位向量是所述第一处理部件在复位时开始执行的已知位置;
通过第一处理部件将初始化逻辑从所述非易失性存储器复制到可由系统中的至少一些处理部件访问的易失性存储器,所述处理部件进一步包括第二处理部件,所述第一处理部件是系统的主处理部件;
在所述第一处理部件已将所述非易失性存储器的内容复制至所述易失性存储器之后,所述第一处理部件信令所述第二处理部件通过访问所述易失性存储器开始所述第二处理部件的启动序列并信令所述第一处理部件通过访问所述易失性存储器开始所述第一处理部件的启动序列;
所述第一处理部件是附连到所述非易失性存储器的唯一处理部件。
9.如权利要求8所述的方法,其特征在于,所述闪存描影逻辑包含在所述非易失性存储器内。
10.如权利要求8所述的方法,其特征在于,所述第一处理部件与所述第二处理部件不是同一类型。
11.如权利要求8所述的方法,其特征在于,所述易失性存储器比所述非易失性存储器快。
12.如权利要求8所述的方法,其特征在于,散列用于产生签名,所述签名与所述初始化逻辑一起被存储以验证所述初始化逻辑的完整性,并且所述第一处理部件配置成执行所述初始化逻辑的内容的散列并将所确定的散列值和与所述初始化逻辑相关联的签名作比较。
13.如权利要求8所述的方法,其特征在于,存储于所述非易失性存储器中的所述初始化逻辑使用私钥加密,并且所述第一处理部件和所述第二处理部件使用公钥解密所述初始化逻辑。
14.一种控制移动设备使用存储于非易失性存储器中的信息来初始化系统中的多个处理部件的装置,所述装置包括:
接收初始化所述设备的请求的装置,其中在电源第一次被施加到系统或在系统执行硬复位时,初始化发生;
由第一处理部件执行包含在闪存描影逻辑中的指令的装置,所述第一处理部件是系统的主处理部件,所述第一处理部件是附连至所述非易失性存储器的唯一处理部件;以及
通过所述第一处理部件将初始化逻辑从所述非易失性存储器复制到可被所述系统的至少一些处理部件访问的易失性存储器的装置,所述处理部件包括第一处理部件和第二处理部件;
在所述第一处理部件已将所述非易失性存储器的内容复制至所述易失性存储器之后,所述第一处理部件信令所述第二处理部件通过访问所述易失性存储器开始所述第二处理部件的启动序列并信令所述第一处理部件通过访问所述易失性存储器开始所述第一处理部件的启动序列;
其中引导复位向量包含到所述闪存描影逻辑的地址的转移,所述引导复位向量是所述第一处理部件在复位时开始执行的已知位置。
15.如权利要求14所述的装置,其特征在于,所述闪存描影逻辑包含在所述非易失性存储器中。
16.如权利要求14所述的装置,其特征在于,所述第一处理部件与所述第二处理部件不是同一类型。
17.如权利要求14所述的装置,其特征在于,所述易失性存储器比所述非易失性存储器快。
18.如权利要求14所述的装置,其特征在于,散列用于产生签名,所述签名与所述初始化逻辑一起被存储以验证所述初始化逻辑的完整性,并且所述第一处理部件被配置成执行所述初始化逻辑的内容的散列并将所确定的散列值和与所述初始化逻辑相关联的签名作比较。
19.如权利要求14所述的装置,其特征在于,存储于所述非易失性存储器中的所述初始化逻辑使用私钥加密,并且所述第一处理部件和所述第二处理部件使用公钥解密所述初始化逻辑。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310374264.9A CN103425623B (zh) | 2006-03-30 | 2007-03-30 | 共享非易失性存储器体系结构 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US78840106P | 2006-03-30 | 2006-03-30 | |
US60/788,401 | 2006-03-30 | ||
US11/690,629 US7831778B2 (en) | 2006-03-30 | 2007-03-23 | Shared nonvolatile memory architecture |
US11/690,629 | 2007-03-23 | ||
PCT/US2007/065727 WO2007115229A1 (en) | 2006-03-30 | 2007-03-30 | Shared nonvolatile memory architecture |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310374264.9A Division CN103425623B (zh) | 2006-03-30 | 2007-03-30 | 共享非易失性存储器体系结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101438242A CN101438242A (zh) | 2009-05-20 |
CN101438242B true CN101438242B (zh) | 2013-09-18 |
Family
ID=38421761
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800183833A Active CN101449262B (zh) | 2006-03-30 | 2007-03-30 | 多端口存储器件中的端口间通信 |
CN2007800160526A Active CN101438242B (zh) | 2006-03-30 | 2007-03-30 | 共享非易失性存储器体系结构 |
CN2007800185044A Active CN101449334B (zh) | 2006-03-30 | 2007-03-30 | 具有可变端口速度的多端口存储器件 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800183833A Active CN101449262B (zh) | 2006-03-30 | 2007-03-30 | 多端口存储器件中的端口间通信 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800185044A Active CN101449334B (zh) | 2006-03-30 | 2007-03-30 | 具有可变端口速度的多端口存储器件 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7949863B2 (zh) |
EP (2) | EP2008281B1 (zh) |
JP (2) | JP5188493B2 (zh) |
KR (2) | KR101341286B1 (zh) |
CN (3) | CN101449262B (zh) |
TW (3) | TWI340982B (zh) |
WO (2) | WO2007115227A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107624178A (zh) * | 2015-06-26 | 2018-01-23 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104599B2 (en) | 2007-12-06 | 2015-08-11 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for destaging cached data |
US8443134B2 (en) | 2006-12-06 | 2013-05-14 | Fusion-Io, Inc. | Apparatus, system, and method for graceful cache device degradation |
US20080140724A1 (en) | 2006-12-06 | 2008-06-12 | David Flynn | Apparatus, system, and method for servicing object requests within a storage controller |
US8706968B2 (en) | 2007-12-06 | 2014-04-22 | Fusion-Io, Inc. | Apparatus, system, and method for redundant write caching |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
US7836226B2 (en) | 2007-12-06 | 2010-11-16 | Fusion-Io, Inc. | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
DE102008011925B4 (de) * | 2008-02-29 | 2018-03-15 | Globalfoundries Inc. | Sicheres Initialisieren von Computersystemen |
US8230180B2 (en) * | 2008-06-11 | 2012-07-24 | Samsung Electronics Co., Ltd. | Shared memory burst communications |
KR20100085564A (ko) * | 2009-01-21 | 2010-07-29 | 삼성전자주식회사 | 데이터 처리 시스템과 데이터 처리 방법 |
US8769213B2 (en) | 2009-08-24 | 2014-07-01 | Micron Technology, Inc. | Multi-port memory and operation |
JP2011058847A (ja) * | 2009-09-07 | 2011-03-24 | Renesas Electronics Corp | 半導体集積回路装置 |
US9021158B2 (en) | 2009-09-09 | 2015-04-28 | SanDisk Technologies, Inc. | Program suspend/resume for memory |
US9223514B2 (en) | 2009-09-09 | 2015-12-29 | SanDisk Technologies, Inc. | Erase suspend/resume for memory |
US8972627B2 (en) | 2009-09-09 | 2015-03-03 | Fusion-Io, Inc. | Apparatus, system, and method for managing operations for data storage media |
US8429436B2 (en) * | 2009-09-09 | 2013-04-23 | Fusion-Io, Inc. | Apparatus, system, and method for power reduction in a storage device |
US8458581B2 (en) * | 2009-10-15 | 2013-06-04 | Ansaldo Sts Usa, Inc. | System and method to serially transmit vital data from two processors |
US8190944B2 (en) * | 2009-12-11 | 2012-05-29 | Ati Technologies Ulc | Device configured to switch a clock speed for multiple links running at different clock speeds and method for switching the clock speed |
US8775856B1 (en) * | 2010-03-10 | 2014-07-08 | Smsc Holdings S.A.R.L. | System and method for generating clock signal for a plurality of communication ports by selectively dividing a reference clock signal with a plurality of ratios |
JP2011227834A (ja) * | 2010-04-22 | 2011-11-10 | Sony Corp | 信号制御装置及び信号制御方法 |
US8984216B2 (en) | 2010-09-09 | 2015-03-17 | Fusion-Io, Llc | Apparatus, system, and method for managing lifetime of a storage device |
KR101796116B1 (ko) | 2010-10-20 | 2017-11-10 | 삼성전자 주식회사 | 반도체 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 그 동작방법 |
US8527693B2 (en) | 2010-12-13 | 2013-09-03 | Fusion IO, Inc. | Apparatus, system, and method for auto-commit memory |
US10817421B2 (en) | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent data structures |
US9208071B2 (en) | 2010-12-13 | 2015-12-08 | SanDisk Technologies, Inc. | Apparatus, system, and method for accessing memory |
US9218278B2 (en) | 2010-12-13 | 2015-12-22 | SanDisk Technologies, Inc. | Auto-commit memory |
US10817502B2 (en) | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent memory management |
US9047178B2 (en) | 2010-12-13 | 2015-06-02 | SanDisk Technologies, Inc. | Auto-commit memory synchronization |
WO2012106362A2 (en) | 2011-01-31 | 2012-08-09 | Fusion-Io, Inc. | Apparatus, system, and method for managing eviction of data |
WO2012112618A1 (en) * | 2011-02-14 | 2012-08-23 | The Regents Of The University Of California | Multi-band interconnect for inter-chip and intra-chip communications |
US9141527B2 (en) | 2011-02-25 | 2015-09-22 | Intelligent Intellectual Property Holdings 2 Llc | Managing cache pools |
CN102176138B (zh) * | 2011-03-01 | 2013-04-03 | 上海维宏电子科技股份有限公司 | 数控系统中硬件端口的对象化管理控制方法 |
US8543774B2 (en) | 2011-04-05 | 2013-09-24 | Ansaldo Sts Usa, Inc. | Programmable logic apparatus employing shared memory, vital processor and non-vital communications processor, and system including the same |
US9767032B2 (en) | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
CN104123241B (zh) * | 2013-04-24 | 2017-08-29 | 华为技术有限公司 | 内存匿名页初始化方法、装置及系统 |
US20140321471A1 (en) * | 2013-04-26 | 2014-10-30 | Mediatek Inc. | Switching fabric of network device that uses multiple store units and multiple fetch units operated at reduced clock speeds and related method thereof |
US8963587B2 (en) * | 2013-05-14 | 2015-02-24 | Apple Inc. | Clock generation using fixed dividers and multiplex circuits |
US9666244B2 (en) | 2014-03-01 | 2017-05-30 | Fusion-Io, Inc. | Dividing a storage procedure |
US9665432B2 (en) * | 2014-08-07 | 2017-05-30 | Microsoft Technology Licensing, Llc | Safe data access following storage failure |
US9847918B2 (en) | 2014-08-12 | 2017-12-19 | Microsoft Technology Licensing, Llc | Distributed workload reassignment following communication failure |
US9933950B2 (en) | 2015-01-16 | 2018-04-03 | Sandisk Technologies Llc | Storage operation interrupt |
US9690494B2 (en) * | 2015-07-21 | 2017-06-27 | Qualcomm Incorporated | Managing concurrent access to multiple storage bank domains by multiple interfaces |
US9996138B2 (en) * | 2015-09-04 | 2018-06-12 | Mediatek Inc. | Electronic system and related clock managing method |
CN105701026A (zh) * | 2016-01-04 | 2016-06-22 | 上海斐讯数据通信技术有限公司 | 一种数据采集器及其利用系统冗余资源采集数据的方法 |
KR20180033368A (ko) * | 2016-09-23 | 2018-04-03 | 삼성전자주식회사 | 케스-케이드 연결 구조로 레퍼런스 클록을 전달하는 스토리지 장치들을 포함하는 전자 장치 |
KR102438319B1 (ko) * | 2018-02-07 | 2022-09-01 | 한국전자통신연구원 | 공통 메모리 인터페이스 장치 및 방법 |
CN111142955B (zh) * | 2019-12-31 | 2021-07-16 | 联想(北京)有限公司 | 一种信息处理方法及装置 |
US11567708B2 (en) * | 2021-01-05 | 2023-01-31 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having one or more ports to which portable memory is attachable |
US12066855B2 (en) * | 2022-12-30 | 2024-08-20 | Arm Limited | Multi-port circuit architecture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1209563A2 (en) * | 2000-11-22 | 2002-05-29 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
CN1567187A (zh) * | 2003-06-11 | 2005-01-19 | 华为技术有限公司 | 数据处理系统及方法 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4344133A (en) * | 1978-07-31 | 1982-08-10 | Motorola, Inc. | Method for synchronizing hardware and software |
US4449183A (en) * | 1979-07-09 | 1984-05-15 | Digital Equipment Corporation | Arbitration scheme for a multiported shared functional device for use in multiprocessing systems |
US4729091A (en) * | 1984-11-13 | 1988-03-01 | International Business Machines Corporation | Directing storage requests prior to address comparator initialization with a reference address range |
IT1184553B (it) * | 1985-05-07 | 1987-10-28 | Honeywell Inf Systems | Architettura di sistema a piu' processori |
US5142683A (en) * | 1987-03-09 | 1992-08-25 | Unisys Corporation | Intercomputer communication control apparatus and method |
JPH01501660A (ja) * | 1987-06-18 | 1989-06-08 | ユニシス・コーポレーシヨン | コンピユータ間通信制御装置及びその方法 |
US5144314A (en) * | 1987-10-23 | 1992-09-01 | Allen-Bradley Company, Inc. | Programmable object identification transponder system |
US4987529A (en) * | 1988-08-11 | 1991-01-22 | Ast Research, Inc. | Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters |
US5197130A (en) * | 1989-12-29 | 1993-03-23 | Supercomputer Systems Limited Partnership | Cluster architecture for a highly parallel scalar/vector multiprocessor system |
US5175853A (en) * | 1990-10-09 | 1992-12-29 | Intel Corporation | Transparent system interrupt |
JPH04367963A (ja) * | 1991-06-15 | 1992-12-21 | Hitachi Ltd | 共有記憶通信方法 |
US5423008A (en) * | 1992-08-03 | 1995-06-06 | Silicon Graphics, Inc. | Apparatus and method for detecting the activities of a plurality of processors on a shared bus |
JP3442128B2 (ja) * | 1994-02-21 | 2003-09-02 | 松下電工株式会社 | プロセッサ間通信方法および装置 |
JP3447404B2 (ja) * | 1994-12-08 | 2003-09-16 | 日本電気株式会社 | マルチプロセッサシステム |
US5925099A (en) * | 1995-06-15 | 1999-07-20 | Intel Corporation | Method and apparatus for transporting messages between processors in a multiple processor system |
US6167487A (en) * | 1997-03-07 | 2000-12-26 | Mitsubishi Electronics America, Inc. | Multi-port RAM having functionally identical ports |
US5901309A (en) * | 1997-10-07 | 1999-05-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for improved interrupt handling within a microprocessor |
US6118792A (en) * | 1997-11-21 | 2000-09-12 | Nortel Networks Corporation | Method and apparatus for a flexible access rate common-memory packet switch |
US6313766B1 (en) * | 1998-07-01 | 2001-11-06 | Intel Corporation | Method and apparatus for accelerating software decode of variable length encoded information |
US6263390B1 (en) * | 1998-08-18 | 2001-07-17 | Ati International Srl | Two-port memory to connect a microprocessor bus to multiple peripherals |
KR100284741B1 (ko) * | 1998-12-18 | 2001-03-15 | 윤종용 | 로컬클럭 신호 발생회로 및 방법, 내부클럭신호 발생회로 및방법,이를 이용한 반도체 메모리 장치 |
US6002633A (en) * | 1999-01-04 | 1999-12-14 | International Business Machines Corporation | Performance optimizing compiler for building a compiled SRAM |
US6378051B1 (en) * | 1999-06-14 | 2002-04-23 | Maxtor Corporation | Interrupt signal prioritized shared buffer memory access system and method |
US6396324B1 (en) * | 2000-05-08 | 2002-05-28 | International Business Machines Corporation | Clock system for an embedded semiconductor memory unit |
US6845409B1 (en) * | 2000-07-25 | 2005-01-18 | Sun Microsystems, Inc. | Data exchange methods for a switch which selectively forms a communication channel between a processing unit and multiple devices |
GB2370667B (en) * | 2000-09-05 | 2003-02-12 | Samsung Electronics Co Ltd | Semiconductor memory device having altered clock frequency for address and/or command signals, and memory module and system having the same |
US6665795B1 (en) * | 2000-10-06 | 2003-12-16 | Intel Corporation | Resetting a programmable processor |
JP4317365B2 (ja) * | 2001-01-31 | 2009-08-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 周辺デバイスからホスト・コンピュータ・システムに割込みを転送する方法および装置 |
US6877071B2 (en) | 2001-08-20 | 2005-04-05 | Technology Ip Holdings, Inc. | Multi-ported memory |
US6795360B2 (en) * | 2001-08-23 | 2004-09-21 | Integrated Device Technology, Inc. | Fifo memory devices that support all four combinations of DDR or SDR write modes with DDR or SDR read modes |
US7032106B2 (en) | 2001-12-27 | 2006-04-18 | Computer Network Technology Corporation | Method and apparatus for booting a microprocessor |
US7571287B2 (en) * | 2003-03-13 | 2009-08-04 | Marvell World Trade Ltd. | Multiport memory architecture, devices and systems including the same, and methods of using the same |
KR100606242B1 (ko) * | 2004-01-30 | 2006-07-31 | 삼성전자주식회사 | 불휘발성 메모리와 호스트간에 버퍼링 동작을 수행하는멀티 포트 휘발성 메모리 장치, 이를 이용한 멀티-칩패키지 반도체 장치 및 이를 이용한 데이터 처리장치 |
JP4346506B2 (ja) * | 2004-06-07 | 2009-10-21 | 株式会社リコー | 先入れ先出しメモリ及びそれを用いた記憶媒体制御装置 |
US20060073563A1 (en) * | 2004-09-02 | 2006-04-06 | Xencor, Inc. | Erythropoietin derivatives with altered immunogenicity |
US20060072563A1 (en) | 2004-10-05 | 2006-04-06 | Regnier Greg J | Packet processing |
JP2006301894A (ja) * | 2005-04-20 | 2006-11-02 | Nec Electronics Corp | マルチプロセッサシステム、及びマルチプロセッサシステムのメッセージ伝達方法 |
JP2006309512A (ja) * | 2005-04-28 | 2006-11-09 | Nec Electronics Corp | マルチプロセッサシステム、及びマルチプロセッサシステムのメッセージ伝達方法 |
JP4425243B2 (ja) * | 2005-10-17 | 2010-03-03 | Okiセミコンダクタ株式会社 | 半導体記憶装置 |
US7369453B2 (en) * | 2006-02-28 | 2008-05-06 | Samsung Electronics Co., Ltd. | Multi-port memory device and method of controlling the same |
US7433263B2 (en) * | 2006-02-28 | 2008-10-07 | Samsung Electronics Co., Ltd. | Multi-port semiconductor device and method thereof |
KR100909805B1 (ko) * | 2006-09-21 | 2009-07-29 | 주식회사 하이닉스반도체 | 멀티포트 메모리 장치 |
-
2007
- 2007-03-30 US US11/694,819 patent/US7949863B2/en active Active
- 2007-03-30 KR KR1020087026426A patent/KR101341286B1/ko active IP Right Grant
- 2007-03-30 US US11/694,813 patent/US7639561B2/en active Active
- 2007-03-30 TW TW096111507A patent/TWI340982B/zh active
- 2007-03-30 EP EP07759902A patent/EP2008281B1/en active Active
- 2007-03-30 TW TW096111504A patent/TWI353124B/zh active
- 2007-03-30 EP EP07759901A patent/EP2008164A2/en not_active Ceased
- 2007-03-30 CN CN2007800183833A patent/CN101449262B/zh active Active
- 2007-03-30 KR KR1020087026515A patent/KR101323400B1/ko active IP Right Grant
- 2007-03-30 JP JP2009503325A patent/JP5188493B2/ja active Active
- 2007-03-30 CN CN2007800160526A patent/CN101438242B/zh active Active
- 2007-03-30 WO PCT/US2007/065723 patent/WO2007115227A2/en active Application Filing
- 2007-03-30 TW TW096111501A patent/TWI386846B/zh active
- 2007-03-30 CN CN2007800185044A patent/CN101449334B/zh active Active
- 2007-03-30 WO PCT/US2007/065722 patent/WO2007115226A2/en active Application Filing
- 2007-03-30 JP JP2009503324A patent/JP5197571B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1209563A2 (en) * | 2000-11-22 | 2002-05-29 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
CN1567187A (zh) * | 2003-06-11 | 2005-01-19 | 华为技术有限公司 | 数据处理系统及方法 |
Non-Patent Citations (1)
Title |
---|
吕喜在等.开放式多媒体应用平台OMAP5910双核程序装载方法.《微计算机信息》.2005,第21卷(第9-2期),第94-95页. * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107624178A (zh) * | 2015-06-26 | 2018-01-23 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
CN107624178B (zh) * | 2015-06-26 | 2021-05-11 | 英特尔公司 | 快速归零的机柜式架构(rsa)和共享存储器控制器(smc)技术 |
Also Published As
Publication number | Publication date |
---|---|
CN101449334B (zh) | 2012-04-25 |
US7949863B2 (en) | 2011-05-24 |
EP2008164A2 (en) | 2008-12-31 |
WO2007115227A3 (en) | 2007-11-29 |
US7639561B2 (en) | 2009-12-29 |
KR20080104388A (ko) | 2008-12-02 |
WO2007115227A2 (en) | 2007-10-11 |
CN101449262B (zh) | 2012-07-04 |
JP5188493B2 (ja) | 2013-04-24 |
KR101341286B1 (ko) | 2013-12-12 |
TW200802403A (en) | 2008-01-01 |
CN101438242A (zh) | 2009-05-20 |
US20070234021A1 (en) | 2007-10-04 |
TW200802082A (en) | 2008-01-01 |
WO2007115226A2 (en) | 2007-10-11 |
KR101323400B1 (ko) | 2013-10-29 |
JP5197571B2 (ja) | 2013-05-15 |
TWI386846B (zh) | 2013-02-21 |
WO2007115226A3 (en) | 2008-10-30 |
CN101449262A (zh) | 2009-06-03 |
US20070245094A1 (en) | 2007-10-18 |
TWI340982B (en) | 2011-04-21 |
KR20090007378A (ko) | 2009-01-16 |
CN101449334A (zh) | 2009-06-03 |
TWI353124B (en) | 2011-11-21 |
JP2009532815A (ja) | 2009-09-10 |
TW200818734A (en) | 2008-04-16 |
EP2008281B1 (en) | 2012-01-25 |
EP2008281A2 (en) | 2008-12-31 |
JP2009532782A (ja) | 2009-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101438242B (zh) | 共享非易失性存储器体系结构 | |
CN103425623A (zh) | 共享非易失性存储器体系结构 | |
US7882344B2 (en) | Memory system having a communication channel between a first processor and a second processor and memory management method that uses the communication channel | |
US10515196B2 (en) | Creating secure original equipment manufacturer (OEM) identification | |
US9311110B2 (en) | Techniques to initialize from a remotely accessible storage device | |
CN103946824B (zh) | 一种用于非易失性随机访问存储器的访问控制方法、装置及系统 | |
TW518517B (en) | Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use | |
CN1467632B (zh) | 基于映像的软件安装的系统和方法 | |
CN105917308B (zh) | 分区为包括元数据区域的多个区域的字节可寻址非易失性读写主存储器 | |
CN102122327B (zh) | 使用多个认证代码模块进入安全计算环境 | |
US20190164136A1 (en) | Beacon network with enterprise smart contracts having a centralized ledger | |
CN105144120A (zh) | 基于存储器地址将来自高速缓存行的数据存储到主存储器 | |
CN104115230A (zh) | 高效pcms刷新机制背景 | |
CN113642006A (zh) | 双核继电保护系统安全启动方法 | |
CN116243959A (zh) | 大规模对象版本控制和一致性的实现方式 | |
CN108604107A (zh) | 用于基于指令类型调整最大时钟频率的处理器、方法和系统 | |
JP7332083B2 (ja) | マルチモード保護メモリ | |
JP5970867B2 (ja) | 情報処理装置、画像形成装置およびプログラム | |
US11093401B2 (en) | Hazard prediction for a group of memory access instructions using a buffer associated with branch prediction | |
CN115176313A (zh) | 内存启动和初始化系统和方法 | |
US20190303296A1 (en) | Separate data registers and cache registers in memory | |
US20060085204A1 (en) | Method and system for testing information handling system components | |
US11500747B2 (en) | Computer initialization debug message display system | |
TW201007458A (en) | Data processing system for integrating transmission interfaces and method thereof | |
US20210232395A1 (en) | Methods and devices for hardware characterization of computing devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20151130 Address after: oregon Patentee after: LATTICE SEMICONDUCTOR CORPORATION Address before: American California Patentee before: Silicon Image Inc. A. Delaware C. |