CN101206626A - 对共用总线进行控制的方法和设备 - Google Patents
对共用总线进行控制的方法和设备 Download PDFInfo
- Publication number
- CN101206626A CN101206626A CNA2007103023310A CN200710302331A CN101206626A CN 101206626 A CN101206626 A CN 101206626A CN A2007103023310 A CNA2007103023310 A CN A2007103023310A CN 200710302331 A CN200710302331 A CN 200710302331A CN 101206626 A CN101206626 A CN 101206626A
- Authority
- CN
- China
- Prior art keywords
- nonvolatile memory
- memory controller
- shared bus
- bus
- data
- 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.)
- Pending
Links
Images
Classifications
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1694—Configuration of memory controller to different memory types
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供了一种用于控制共用总线的方法和设备。在易失性存储装置和两个或两个以上非易失性存储器控制器之间经由易失性存储器的非易失性存储器接口来共用上述共用总线。在一个实施例中,一种方法包括:接收来自两个或两个以上非易失性存储器控制器中的第一非易失性存储器控制器的关于对共用总线的控制的请求。响应于接收该请求,如果两个或两个以上非易失性存储器控制器中的每个的优先级表示应准许进行控制,则准许第一非易失性存储器控制器对共用总线进行控制。当准许第一非易失性存储器控制器进行控制时,第一非易失性存储器控制器是两个或两个以上非易失性存储器控制器中经由共用总线执行数据存取操作的唯一非易失性存储器控制器。
Description
相关申请的交叉参考
本申请涉及由Rom-shen Kao于2006年7月6日提交的题为“CONTROL PROTOCOL AND SIGNALING IN A NEW MEMORYARCHITECTURE”的序列号为11/456,061和律师卷号为QIMO/0263的美国专利申请、由Rom-shen Kao于2006年7月6日提交的题为“METHOD FOR ACCESSING A NON-VOLATILE MEMORY VIAVOLATILE MEMORY INTERFACE”的序列为11/456,063和律师卷号为QIMO/0267的美国专利申请、由Rom-shen Kao于2006年7月6日提交的题为“SYSTEM AND METHOD FOR ISSUINGCOMMANDS”的序列为NO.11/456,064和律师卷号为QIMO/0268的美国专利申请、以及由Rom-shen Kao于2006年7月6日提交的题为“METHOD FOR ACCESSING CONTROL REGISTERS VIA AMEMORYDEVICE”的序列为11/456,067和律师卷号为QIMO/0269的美国专利申请。这些相关专利申请中的每个作为整体结合于此作为参考。
技术领域
本发明涉及一种对共用总线进行控制的方法和设备。
背景技术
例如移动电话、PDA、便携式音乐播放器、电器等的许多现代电子器件通常结合了嵌入式计算机系统。嵌入式计算机系统通常包括计算机处理器(称作主机)、非易失性存储器(诸如闪存和/或ROM存储器)、以及诸如动态随机存取存储器(DRAM)的易失性存储器。主机可以包括中央处理器(CPU)、数字信号处理器(DSP)、微控制器单元(MCU)或直接存储器存取(DMA)数据传输装置。嵌入式系统还可以包括可以用来控制和/或存取非易失性存储器的非易失性存储器控制器。
在嵌入式系统中,通常可以比非易失性存储器更快速地访问易失性存储器。因此,例如,主机运行的代码可以被存储在易失性存储器中并通过主机从该易失性存储器中进行存取。然而,由于易失性存储器通常需要电源来维持其中所存储的数据,因此当嵌入式系统被断电时,易失性存储器通常就会被擦除。因此,当嵌入式系统断电时,通常不需要电源来维持所存储的数据的非易失性存储器可以用来存储主机运行的代码。当对嵌入式系统供电时(例如,当嵌入式系统进入复位状态时),主机系统所使用的代码可以加载到易失性存储器中并通过主机由易失性存储器来执行。将存储在非易失性存储器中的代码加载到易失性存储器中并由易失性存储器来执行代码的过程可称作代码遮蔽(code shadowing)。
为了维持存取嵌入式系统中的数据的灵活性,可能需要以各种方式在主机、易失性存储器和非易失性存储器之间传输数据。例如,可能需要在易失性存储器与主机之间、非易失性存储器与主机之间、和易失性存储器与非易失性存储器之间执行数据传送。当维持存取嵌入式系统中的数据的灵活性时,还可能需要降低主机和存储系统的组件之间的接口的成本和复杂性。
因此,需要一种改进的系统和方法来存取嵌入式系统中的存储器。
发明内容
本发明的实施例大体上提供了一种用于对共用总线进行控制的方法和设备。在易失性存储装置和两个或两个以上的非易失性存储器控制器之间,经由易失性存储器的非易失性存储接口来共用共用总线。在一个实施例中,该方法包括:接收来自两个或两个以上非易失性存储器控制器中的第一非易失性存储器控制器的关于对该共用总线进行控制的请求。响应于接收该请求,如果这两个或两个以上非易失性存储器控制器中的每个的优先级表示应准许控制,则准许第一非易失性存储器控制器对共用总线进行控制。当准许第一非易失性存储器控制器进行控制时,第一非易失性非存储器控制器是两个或两个以上非易失性存储器控制器中经由共用总线执行数据存取操作的唯一非易失性存储器控制器。
附图说明
为了可以更详细地理解本发明的上述特征,将结合实施例详细描述本发明以上概括的特征,其中一些实施方式在附图中给出。然而,应注意,附图仅描述了本发明的典型实施例,因此并不能认为限制其范围,本发明可以允许其它同等效果的实施例。
图1A~图1D是示出了根据本发明实施例的嵌入式系统的各个方面的框图;
图2A~图2C是示出了根据本发明实施例的用于存取嵌入式系统中的数据的流程图;
图3A~图3D是示出了根据本发明的一个实施例的用于存取共用总线的第一接口的各个方面的示意图;
图4A~图4D是示出了根据本发明的一个实施例的用于存取共用总线的第二接口的各个方面的示意图;以及
图5A~图5B是示出了根据本发明实施例的示例性控制寄存器和控制管脚的框图。
具体实施方式
本发明的实施例大体提供了用于对共用总线进行控制的方法和设备。在易失性存储装置和两个或两个以上的非易失性存储器控制器之间,经由易失性存储器的非易失性存储接口来共用共用总线。在一个实施例中,一种方法包括:接收来自该两个或两个以上非易失性存储器控制器中的第一非易失性存储器控制器的关于对该共用总线进行控制的请求。响应于接收该请求,如果这两个或两个以上非易失性存储器控制器中的每个的优先级表示应准许控制,则准许第一非易失性存储器控制器对该共用总线进行控制。当准许第一非易失性控制器进行控制时,第一非易失性存储器控制器可以是这两个或两个以上非易失性存储器控制器中经由共用总线来执行数据存取的唯一非易失性存储器控制器。通过提供对共用总线的专门控制,本发明的实施例可以防止多个装置经由共用总线来执行相冲突的存取操作。
图1A~图1B是示出了根据本发明实施例的嵌入式系统100的框图。如图所示,嵌入式系统100可以包括:主机102;易失性存储器104;和多个非易失性存储器控制器106,每个均连接至非易失性存储器108。非易失性存储器控制器106可以被配置为经由共用总线182访问易失性存储器104。例如,每个非易失性存储器控制器106都可以共用相同的数据、地址、和构成共用总线182的控制线。两个或两个以上非易失性存储器控制器106通过共用总线同时进行访问会导致各个非易失性存储器控制器106同时传输不同信息,并因而造成错误。因此,如下所述,总线仲裁器(mediator)电路180可用于每次向一个非易失性存储器控制器106提供对共用总线182的控制,从而防止同时相冲突地对共用总线182的存取。
在一个实施例中,主机102可以包括控制电路132和用于与易失性存储器104的易失性存储器接口112进行通信的易失性存储器接口110。在一个实施例中,易失性存储器接口112可以包括满足电子元件工业联合会(JEDEC)的低功耗双数据率(LPDDR)同步动态随机存取存储器(SDRAM)规范的接口。可选地,可以使用任何其他适合的易失性存储器接口(例如,其利用了诸如写使能(WE)、行存取选通(RAS)、列存取选通(CAS)、和片选(CS)的DRAM接口控制信号)。
例如,可以使用控制电路132来运行计算机指令并处理从易失性存储器104或另一个存储单元(例如,磁盘驱动器或其他存储装置)接收到的数据。在一些情况下,主机102还可以包括其他电路,例如用于接收用户输入的输入/输出(I/O)接口、和与其他嵌入式系统部件(诸如其他存储部件、磁盘驱动器和其他装置)的额外接口。此外,主机102可以利用易失性存储器接口112来提供命令和信息,并接收来自易失性存储器104、非易失性存储器控制器106、和/或非易失性存储器108的信息。
在一个实施例中,易失性存储器104可以包括用于与主机102进行通信的易失性存储器接口112、和用于经由共用总线182与非易失性存储器控制器106进行通信的非易失性存储器接口120。易失性存储器104可以看作相对于主机102和非易失性存储器控制器106的从属装置(例如,可以通过其他非易失性存储器控制器106经由共用总线182来控制易失性存储器104)。可选地,易失性存储器104可以是相对于非易失性存储器控制器106的主动装置。非易失性存储器接口120可以包括用于访问非易失性存储器108的任何接口,例如,包括写使能(WE)、输出使能(OE)、和片选(CS)控制信号。如所述,在一个实施例中,总线仲裁器电路180(可被设置为非易失性存储器控制器106的一部分或被设置为单独装置)可以用来控制共用总线182在非易失性存储器控制器106之间的共用。
易失性存储器104还可以包括用于处理经由易失性存储器接口112和/或非易失性存储器接口120接收到的命令的易失性存储器控制电路114。易失性存储器104还可以包括用于存储数据的易失性存储器阵列116,以及用于在主机102、易失性存储器104、非易失性存储器控制器106、和/或非易失性存储器108之间传输数据和/或命令的一个或多个缓冲器118。在一个实施例中,缓冲器118可以是动态RAM(DRAM)存储器。可选地,缓冲器118可以是静态RAM(SRAM)存储器。易失性存储器104还可以包括用于与非易失性存储器控制器106进行通信的易失性存储器接口120。
在本发明的一个实施例中,每个非易失性存储器控制器106可以包括用于经由共用总线与易失性存储器104进行通信的第一非易失性存储器接口122、和用于与对应的非易失性存储器108进行通信的第二非易失性存储器接口126。每个非易失性存储器控制器106还可以包括用于控制在易失性存储器104、非易失性存储器控制器106、和非易失性存储器108之间的数据传输的非易失性存储器控制电路124。在一个实施例中,可以经由非易失性存储器接口128来存取每个非易失性存储器108。每个非易失性存储器108中的数据可以被存储在非易失性存储器阵列130中。
图1C是示出了根据本发明的一个实施例的易失性存储器104和单个非易失性存储器控制器106的进一步细节的框图。如所示,易失性存储器104可以包括指令和地址解码器电路164(例如,易失性存储器控制电路114的一部分)。当指令和地址解码器电路164从主机102用于接收存取易失性存储器阵列116中的多个存储区136之一中的数据的命令时,可以经由易失性存储器阵列116的主机易失性存储器访问控制器160来存取数据。易失性存储器104还可以提供用于控制易失性存储器104的操作的模式寄存器170、用于控制覆盖窗的覆盖窗控制寄存器138、和用于在如下更详细描述的嵌入式系统100的多个部件之间传输数据的覆盖窗缓冲器146。
在本发明的一个实施例中,易失性存储器104还可以提供用于在控制非易失性存储器108、非易失性存储器控制器106、和易失性存储器104之间的DMA传送的内部直接存储器存取(iDMA)控制寄存器140。如下所述,修改易失性存储器104中的iDMA控制寄存器设置会引起易失性存储器104向非易失性存储器控制器106发出命令,从而引起在非易失性存储器控制器106的IDMA控制器150中的iDMA控制寄存器152中的对应改变。例如,这种改变会导致向iDMA控制器150发出引起在易失性存储器104、给定的非易失性存储器控制器106、和相应的非易失性存储器108之间执行DMA传送的命令。
在一个实施例中,例如,DMA传送可以利用非易失性存储器控制器106中的缓冲器154来临时保存在非易失性存储器108和易失性存储器104之间传送的数据。相对于易失性存储器104,DMA传送可以利用iDMA易失性存储器存取控制器162来存取易失性存储器阵列116(例如,读或写关于DMA传送的数据)。来自易失性存储器阵列116的数据可以被传送至iDMA缓冲器144,或由其传送,iDMA缓冲器144还可以被用于经由易失性存储器104的非易失性存储器接口120来传送数据。还可以使用iDMA缓冲控制器148来控制在iDMA易失性存储器存取控制电路162、iDMA缓冲器144、和易失性存储器104的非易失性存储器接口120之间的数据传送。
在一个实施例中,易失性存储器104还可以包括用于控制非易失性存储器控制器106中的USB/ATA功能的通用串行总线(USB)/先进技术配件(ATA)寄存器142。例如,在一个实施例中,当使易失性存储器104中的USB/ATA寄存器改变时,易失性存储器104可以自动使非易失性存储器控制器106的非易失性存储器控制电路124中的USB/ATA控制寄存器158对应改变。因而,主机102能够经由易失性存储器104来存取非易失性存储器控制器106的USB/ATA功能。
在本发明的一个实施例中,可以将用于易失性存储器104的易失性存储器地址空间190(图1D所示)的一部分分配给覆盖窗192,被主机102可以使用该覆盖窗来向易失性存储器104、非易失性存储器控制器106、和非易失性存储器105发出命令,并在它们之间传送数据。易失性存储器104的易失性存储器地址空间190大体上包括可经由易失性存储器104的易失性存储器接口112存取的地址范围。例如,如果易失性存储器接口112提供总共18个地址位(例如,两个存储区地址位BA0和BA1以及16个地址位[15:0]),则易失性存储器104的地址空间190可以包括262144个地址(2的18次幂),这可以存取易失性存储器104中的高达256K的数据行项(其中,每行项都对应于给定地址)。
在一个实施例中,例如,由于经由易失性存储器接口112接收到命令(例如,通过设置或清除覆盖窗使能位,OWE),所以可以启动或禁止覆盖窗192。此外,在一些情况下,覆盖窗190所占用的易失性存储器地址可以是可配置的。因而,例如,可以通过改变易失性存储器104中的控制寄存器设置来配置覆盖窗192的基地址(OW基地址)以及覆盖窗192的大小194。
在一些情况下,通过经由易失性存储器接口112存取覆盖窗192中的地址,主机102能够存取非易失性存储器108以及覆盖窗控制寄存器138、iDMA控制寄存器140、和USB/ATA控制寄存器142中的数据。因而,覆盖窗192能够经由易失性存储器接口112来存取除易失性存储器阵列116外的寄存器和存储器阵列。如果经由易失性存储器接口112接收到的存取命令(例如,读或写命令)没有落在覆盖窗指定的地址范围,则该存取命令可以用于存取易失性存储器阵列116。如果接收到的地址的确落在覆盖窗192中,则存取命令可以用于存取其他数据(诸如在覆盖窗缓冲器146(经由缓冲地址空间196)或易失性存储器104中的控制寄存器138、140、142中的数据)。经由覆盖窗192的特定缓冲部分或寄存器138、140、142可以取决于覆盖窗192内的缓冲地址空间196或寄存器138、140、142的相对偏移。
在其全部内容结合于此作为参考的由Rom-shen Kao于2006年7月6日提交的题为“CONTROL PROTOCOL AND SIGNALING IN ANEW MEMORY ARCHITECTURE”的序列号为11/456,061和律师卷号为QIMO/0263的美国专利申请中,更详细地描述了嵌入式系统100中的用于发出命令的覆盖窗的使用、以及进行通信的其他方面。尽管以上相对于使用用于存取易失性存储器104、非易失性存储器控制器106、和非易失性存储器108并向易失性存储器104、非易失性存储器控制器106、和非易失性存储器108发出命令的覆盖窗192来进行描述,但是通常,本发明的实施例可以用于在主机102和嵌入式系统100的其他部件之间进行通信和控制的任意类型的控制机制(例如,使用包括不同连接管脚的不同接口来提供不同命令的不同接口)。
在本发明的一个实施例中,主机102可以经由易失性存储器104的易失性存储器接口112来向易失性存储器104和非易失性存储器控制器106发出命令。例如,这些命令可以在非易失性存储器108和易失性存储器104之间经由非易失性存储器控制器106来传送数据。这些命令还可以在一个非易失性存储器108和其他的非易失性存储器108之间经由两个非易失性存储器控制器106来传送数据。这些命令还可以修改易失性存储器104、非易失性存储器控制器106、和/或非易失性存储器108中的控制设置。
图2A是示出了根据本发明的一个实施例的用于从主机102向所选非易失性存储器控制器106发出命令的处理200的流程图。在一个实施例中,如上所述,可以使用覆盖窗192来发出命令。处理200可以以步骤202为开始,在步骤202中,经由易失性存储器104的易失性存储器接口112接收来自主机102的命令。然后,可以在步骤204处理从主机102接收到的命令,例如,以确定执行该命令是否需要使用一个或多个非易失性存储器控制器106。例如,该命令可以表示第一非易失性存储器控制器106应执行数据传送,或应修改非易失性存储器控制器106的一个或多个控制设置。
一旦确定该命令需要使用第一非易失性存储器控制器106,则在步骤206中,易失性存储器装置104可以经由共用总线182来向第一非易失性存储器控制器106提供中断。例如,易失性存储器104可以在共用总线182上声明表示哪个非易失性存储器控制器106是中断的目标的中断和/或中断矢量。可选地,可以为每个非易失性存储器控制106提供单独的中断(例如,经由易失性存储器104的各个管脚),并且如果接收到的命令将所选非易失性存储器控制器106作为目标,则易失性存储器104可以仅对所选非易失性存储器控制器106声明给定的中断。如下所述,一旦接收到中断,第一非易失性存储器控制器106就试图通过从总线仲裁器180请求对共用总线182进行控制来为该中断提供服务。如果第一非易失性存储器控制器106能够获得对共用总线182的控制,则步骤208中,在为中断提供服务的同时,易失性存储器104还可以处理第一非易失性存储器控制器经由共用总线接收到的任何命令。
如上所述,在非易失性存储器控制器106之一接收到中断后,非易失性存储器控制器106可以被配置为从总线仲裁器电路180请求对共用总线182进行控制。在获得对共用总线182的专门控制后,如下所述,非易失性存储器控制器106可以被配置为向该中断提供服务。
图2B是示出了根据本发明的一个实施例的用于获得对共用总线182的控制的处理210的流程图。该处理210可以以步骤212为开始,在步骤212中,经由共用总线182和易失性存储器装置104的非易失性存储器接口120从易失性存储器装置104接收中断。响应于接收该中断,在步骤214,非易失性存储器控制器106可以从总线仲裁器电路180请求对共用总线182进行控制。例如,可以通过声明施加给总线仲裁器电路180的输入管脚的控制请求信号来请求进行控制。可选地,例如,可以使用能够发送信息(诸如中断类型、中断优先级、非易失性存储器控制器信息、和非易失性存储器控制106的优先级等)的更灵活接口来请求进行控制。
在步骤216,可以从总线仲裁器电路180接收到表示是否准许对共用总线进行控制的响应。例如,该响应可以包括被降低来表示不准许进行控制或被声明以表示准许控制的控制准许信号。在步骤218,可以由总线仲裁器180来确定是否准许对共用总线182进行控制。
如果不准许对共用总线182进行控制,则在步骤220中,请求进行控制的非易失性存储器控制器106可以等待,直到准许对共用总线182进行控制。例如,非易失性存储器控制器106可以投票选择由总线仲裁器180提供的控制准许信号,直到信号被声明。可选地,非易失性存储器控制器182可以进入睡眠状态,直到总线仲裁器电路180声明该控制准许信号并将非易失性存储器控制器106从睡眠状态中唤醒。在一些情况下,非易失性存储器控制器106还可以被配置为具有暂时休息。例如,如果总线仲裁器电路180在休息其间不准许对共用总线182进行控制,则非易失性存储器控制器106可以经由易失性存储器104的非易失性存储器接口120向总线仲裁器电路180发出另一个请求或向主机102提供错误表示。
如果准许对共用总线进行控制,则在步骤222中,接收到中断的非易失性存储器控制器106可以确定中断源。例如,易失性存储器104可以响应于从主机102接收到的命令或响应于来自iDMA缓冲控制器148的请求(例如,可以由iDMA缓冲控制器148发出中断来向非易失性存储器控制器106请求进行DMA传送或一部分DMA传送)来发出中断。同样,可以通过另一个非易失性存储器控制器106来发出中断。
非易失性存储器控制器106可以以任意方式来确定中断源。例如,中断源可以经由非易失性存储器接口122的管脚作为为中断源矢量来提供并且可以被非易失性存储器控制器106解码。可选地,非易失性存储器控制器106可以为每个中断源提供一个单独管脚,并可以根据接收到中断的管脚来确定中断源。作为另一个实例,非易失性存储器控制器106可以通过从易失性存储器104(诸如对应于非易失性存储器控制器106并被配置为提供中断的源的指示(由非易失性存储器控制器106解码的值)的存储器映射寄存器)中的一个存储单元开始进行读操作来确定中断源。
在步骤224,非易失性存储器控制器106可以确定中断的原因。例如,中断可以表示主机102已向非易失性存储器控制器106发出命令以修改一个或多个器控制设置。例如,中断还可以表示非易失性存储器控制器106应在非易失性存储器108和易失性存储器104之间执行数据传送或部分数据传送。如上所述,通过主机102和/或DMA电路(诸如,易失性存储器104中的iDMA缓冲控制器148)都可以发出这样的命令。
在确定中断的原因后,在步骤226中,非易失性存储器控制器106可以为中断提供服务。例如,在主机102已为易失性存储器104中(例如,在存储器映射寄存器中)的一个存储单元处非易失性存储器控制器106提供新的控制设置的情况下,非易失性存储器控制器106可以经由共用总线182和易失性存储器104的非易失性存储器接口120从易失性存储器104下载新的控制设置,并实现该新的控制设置。在主机102或另一个装置中的其他电路已请求非易失性存储器控制器106执行数据传送的情况下,非易失性存储器控制器106可以提取(例如,用于易失性存储器阵列116、缓冲器118中、或非易失性存储器阵列130中的)源地址和(例如,相对于其他列出的存储单元之一)目的地址、以及待传送的数据量。例如,可以从易失性存储器104中的存储器映射寄存器中提取出用于进行传送的信息。相对于易失性存储器104和相应的非易失性存储器108充当主动装置的非易失性存储器控制器106可以经由共用总线182来执行所请求的数据传送。
如上所述,在一个实施例中,总线仲裁器180可以用于准许对共用总线182进行控制。图2C是示出了根据本发明的一个实施例的用于准许对共用总线182进行控制的处理230的流程图。在步骤232,可以接收到来自第一非易失性存储器控制器106的关于对共用总线182进行控制的请求。在步骤234,确定是否准许非易失性存储器控制器106对共用总线182进行控制。
在一个实施例中,可以使用共用了共用总线182的两个或两个以上的非易失性存储器控制器106中的每个的优先级来进行确定。例如,可以在共用了共用总线182的两个或两个以上的非易失性存储器控制器106中的每个之间建立附加优先级。例如,还可以通过使用轮叫调度(round-robin scheduling)、或使用本领域技术人员公知的任何其他优先级/调度机制根据中断矢量或中断类型的其他指示确定优先级来建立优先级。同样,在一些情况下,可以基于先到先服务原则来准许对共用总线182进行控制。在一个实施例中,只要非易失性存储器控制器106执行操作,非易失性存储器控制器106就可以保持对共用总线182的控制。可选地,在一些情况下,控制了共用总线182的非易失性存储器控制器106可以将控制暂时让与给其他非易失性存储器控制器106,并在恢复控制后重新开始操作。
在步骤236,确定是否应准许对共用总线182进行控制。如果不准许对共用总线182进行控制(例如,如果一个或多个其他非易失性存储器控制器106保持关于对共用总线182进行控制的优先级),则在步骤238,总线仲裁器180可以等到具有更高优先级的其他非易失性存储器控制器106放弃对共用总线182的控制。当确定准许第一非易失性存储器控制器106对共用总线182进行控制时,在步骤240,可以准许对共用总线182进行控制。例如,可以通过声明由第一非易失性存储器控制器106检测到的共用总线控制信号来准许对共用总线182的控制。
在一些情况下,当准许第一非易失性存储器控制器106对共用总线182进行控制时,可以临时中断第二非易失性存储器控制器106,例如,尽管第二非易失性存储器控制器106正在执行数据传送(诸如DMA传送)。在第一非易失性存储器控制器106临时中断第二非易失性存储器控制器106的情况下,可以在第一非易失性存储器控制器106已经完成对其中断提供服务后允许第二非易失性存储器控制器106继续中断的数据传送。
例如,当第二控制器106中断时,总线仲裁器180可以存储表示第二控制器106被中断的记录信息。在第一控制器106已接收到控制、为中断提供服务、并放弃控制后,总线仲裁器180可以使用所存储的记录信息来将对共用总线182的控制返回给第二控制器106,从而使第二非易失性存储器控制器106重新开始中断的数据传送。在一个实施例中,除使用由总线仲裁器180存储的记录信息外,第二控制器106还可以向总线仲裁器180提供表示在第一控制器106已完成后应将该控制返回的指示信息。例如,一旦失去了控制,第二控制器106就向总线仲裁器180声明控制请求信号。在第一控制器106已放弃对共用总线182的控制后,总线仲裁器180可以响应于第二控制器106声明的控制请求信号来将对共用总线182的控制提供给第二控制器106。
总的来说,连接至共用总线182的装置104、106可以使用任何适当类型的接口通过共用总线182来进行通信。下面参照图3A~图3D和图4A~图4D来描述两种示例性的接口。
图3A是示出了根据本发明的一个实施例的用于通过共用总线182进行通信的第一接口300的框图。尽管相对于单个易失性存储器104和非易失性存储器控制器106进行了描述,但是可以通过连接至共用总线182的每个非易失性存储器控制器106来提供相同的描述信号。如所示,接口300可以包括时钟信号(CLK)、用于非易失性存储器接口的控制信号(/ADV、/CE、/WE、/OE)、以及数据和地址总线连接(ADQ[0-15])。
在一个实施例中,所示的控制信号可以对应于伪静态随机存取存储器(PSRAM)接口。如下所述,接口300可以用于执行同步突发操作。在一些情况下,接口300可以不利用刷新配置寄存器(CRC)或总线配置寄存器(BCR)。此外,在一些情况下,接口300可以省略等待信号、高地址管脚、和/或字节使能(UB/LB)信号。
在一个实施例中,接口300还可以包括中断(INT)和复位信号(RESET)。中断信号可以用于向非易失性存储器控制器106提供何时发布中断的指示。复位信号可以用于复位非易失性存储器控制器106。在一些情况下,可以为发给非易失性存储器控制器106的中断和复位信号中的每个提供单独连接(例如,不共用的连接)。可选地,可以将共用中断和共用复位信号的信号提供给所有的非易失性存储器控制器106,并且可以向每个控制器106议表示那个控制器在接收中断和/或复位信号提供单独的片使能(/CE)信号。
在本发明的一个实施例中,接口300可以用于向非易失性存储器控制器106发出复位命令。例如,当嵌入式系统100启动(例如,上电)时、或如果非易失性存储器控制器106有错误,可以发出复位命令。通过复位非易失性存储器控制器106,例如,通过将预定设置加载到控制器存储器中并使控制器106准备为任何接收到的中断提供服务,可以将非易失性存储器控制器106置于限定状态。在一些情况下,可以通过提供表示在接收到复位命令后应由控制器106采取哪个复位状态的复位矢量来提供多个复位状态(例如,在接收到复位命令后,非易失性存储器控制器106可以被置于多个配置之一)。
图3B是示出了根据本发明的一个实施例的使用图3A所示的接口300复位或向非易失性存储器控制器106发出中断的示例性操作的时序图。如所示,复位操作可以在片使能信号/CE为低的时间T0处开始。在复位情况下,可以声明RESET信号。在中断的情况下,可以声明INT信号。当声明RESET信号时,经由地址和数据总线ADQ[15:0]提供的值可以表示复位命令的复位矢量。当声明INT信号时,经由地址和数据总线ADQ[15:0]提供的值可以表示关于中断命令的中断矢量(表示中断的源和/或类型)。
在本发明的一个实施例中,接口300可以用于执行突发写操作以从易失性存储器104内的地址中读出多个数据。例如,该地址可以对应于缓冲器118或易失性存储器阵列116中的一个存储单元。在突发读操作期间,非易失性存储器控制器106经由命令管脚以及地址和数据管脚ADQ[15:0]提供单个突发读命令和地址。在提供单个突发读命令和地址后,可以经由地址和数据管脚ADQ[15:0]提供突发读命令的后续数据。
图3C是示出了根据本发明的一个实施例的使用图3A所示的接口300执行的示例性突发读操作的时序图。如所示,通过降低片使能(/CE)信号、降低地址有效(/ADV)信号、提高写使能(/WE)信号、保持提高的输出使能(/OE)信号、以及将读地址置于地址和数据总线ADQ[15:0]上,在将突发读命令提供给给定非易失性存储器控制器106的时间T0处开始突发读操作。
在接收到突发读命令后,易失性存储器104可以被配置为在给定延迟(通常以时钟周期限定)后开始输出用于读命令的数据。例如,还可以通过改变易失性存储器104中的控制寄存器的设置来指定延迟。还可以通过提供发给易失性存储器104的命令中的设置来指定延迟设置。在图3C所示的情况下,当延迟设置(LC)为1(LC=1)时,可以在接收到突发读命令后的两个时钟周期输出关于突发读的命令。因而,在时间T1,可以降低输出使能(/OE)信号。在时间T2开始并在时间T3和T4持续,可以在每个下降时钟(CLK)沿输出关于突发读操作的数据。在一个实施例中,输出使能(/OE)信号可以确定突发读命令的长度。因而,当输出使能(/OE)信号变高时,可以在时间T5停止突发读操作。
在本发明的一个实施例中,接口300还可以对易失性存储器104中的地址执行突发写操作。在突发写操作期间,通过非易失性存储器控制器106经由命令管脚以及地址和数据管脚ADQ[15:0]来提供单个突发写命令和地址。在已提供突发写命令和地址后,还可以经由相同的地址和数据管脚ADQ[15:0]来提供关于突发写命令的后续数据。
图3D是示出了根据本发明的一个实施例的使用图3A所示的接口300的示例性突发写操作的时序图。如所示,在片使能(/CE)信号降低、地址有效(/ADV)信号降低、写使能(/WE)信号降低、输出使能(/OE)信号保持在高电平、以及将用于突发写命令的写地址置于地址和数据管脚ADQ[15:0]上时,在时间T0开始突发写操作。
类似于突发读操作,易失性存储器104可以被配置为在指定延迟后接收关于突发写命令的数据。在图3D所示的情况下,其中LC=1,可以在由非易失性存储器控制器106发出突发写命令后的两个时钟,通过非易失性存储器控制器106将数据提供给易失性存储器104。因而,在时间T1开始并在时间T2和T3持续,因此可以在地址和数据管脚ADQ[15:0]上,通过非易失性存储器控制器106输出关于突发写命令的数据。在一个实施例中,片选(/CE)信号可以用于控制突发写操作的长度。因而,当通过非易失性存储器控制器106提高片使能(/CE)信号时,可以在时间T4处结束突发写操作。
在本发明的一个实施例中,还可以通过减少专用命令管脚的数目以及通过地址和数据总线管脚ADQ[15:0]发送命令信息来进一步简化给定非易失性存储器控制器106和易失性存储器104之间的接口。因而,图4A是示出了根据本发明的一个实施例的用于通过地址和数据总线管脚ADQ[15:0]发送命令信息来经过共用总线182进行通信的第二接口400的框图。如所示,接口400可以包括时钟(CLK)信号、激活连接至共用总线182的给定非易失性存储器控制器106的激活(/ACT)信号、共用地址和数据总线管脚(ADQ[15:0])、以及上述中断(INT)和复位(RESET)信号。
图4B是示出了根据本发明的一个实施例的用于使用图4A所示的接口400复位非易失性存储器控制器106或向非易失性存储器控制器106提供中断的示例性操作的时序图。如所示,在时间T0,可以将复位命令或中断命令提供给非易失性存储器控制器106。在复位命令的情况下,可以声明RESET信号。在中断命令的情况下,可以声明INT信号。取决于所发出的命令的类型(复位或中断),如上所述,可以使用地址和数据管脚ADQ[15:0]来提供复位矢量(RV)或中断矢量(IV)。
在一个实施例中,可以如上所述经由地址和数据总线ADQ[15:0]的一个或多个管脚来提供命令数据。例如,在激活/ACT信号被降低后,可以使用三个高位管脚来提供命令代码。例如,如果地址和数据总线ADQ[15:13]的三个高位管脚用于向易失性存储器104传输‘000’,则该命令可以是如下参照图4C所述的突发读命令。然而,如果三个高位管脚用于传输‘001’,则该命令可以是如下参照图4D所述的突发写命令。当发出给定命令时,低位管脚ADQ[12:0]可以用于提供关于命令代码的地址。在已提供命令和地址后,随后,地址和数据总线管脚ADQ[15:0]中的每个都可以用于传输关于所接收命令的数据。
图4C是示出了根据本发明的一个实施例的使用图4A所示的接口400执行示例性突发读操作的时序图。如所示,可以在激活(/ACT)信号被降低的时间T0处开始突发读命令,并且经由地址和数据管脚ADQ[15:0]来提供读命令和地址。然后,可以经由地址和数据管脚ADQ[15:0]输出读数据,该输出在时间T1处开始,在时间T2和T3处持续。在一个实施例中,激活(/ACT)信号可以用于表示每个突发命令的长度。因此,可以在激活(/ACT)信号升高的时间T4结束突发读命令。
图4D是示出了根据本发明的一个实施例的使用图4A所示的接口400的示例性突发写操作的时序图。如所示,如果写命令可以在激活(/ACT)信号降低的时间T0处开始,并且经由地址和数据管脚ADQ[15:0]来提供写命令和地址。然后,可以经由地址和数据管脚ADQ[15:0]来输出写数据,该输出在时间T1处开始并在时间T2和T3处持续。如上所述,在一个实施例中,激活(/ACT)信号可用来表示每个突发命令的长度。因此,突发写命令可以在激活(/ACT)信号升高的时间T4处结束。
如上所述,主机102可以被配置经由覆盖窗或其他机制来向易失性存储器104提供各种命令。在易失性存储器104已接收到命令后,易失性存储器104可以向由主机102指派的一个或多个非易失性存储器控制器106提供中断。同样如上所述,中断可以提供表示主机102已发出的命令的类型和/或非易失性存储器控制器106将从何处获得命令数据(例如,诸如关于命令的操作码、关于命令的地址、和/或关于命令的数据)的中断矢量。例如,中断矢量可以提供对应于易失性存储器104中的寄存器的地址或号码,其中,接收中断的非易失性存储器控制器106可以从易失性存储器104获得用于为中断提供服务的命令数据。
图5A是示出了易失性存储器104中的示例性寄存器的框图,其中,主机102可以使用易失性寄存器104来向非易失性存储器控制器106传送命令数据。如所示,寄存器可以位于覆盖窗地址空间192中,覆盖窗地址空间192可以包括随机存取存储器(RAM)缓冲器146、以及USB和ATA寄存器142、以及控制寄存器140。主机102可以使用控制寄存器140来向一个或多个非易失性存储器控制器106提供缓冲大小信息、命令操作数、NAND管理器命令(用于管理非易失性存储器108)、缓冲存取命令、加载-存储命令、和/或配置命令。
如上所述,在本发明的一个实施例中,为了向不同的非易失性存储器控制器106提供不同的命令,可以向每个非易失性存储器控制器106提供单独控制信号(例如,片使能(/CE)信号、激活(/ACT)信号、复位(RESET)信号、和/或中断(INT)信号)。
作为用于向每个非易失性存储器控制器106提供单独命令的另一个选项,可以将主机102和/或易失性存储器104配置为使用单独的存储器控制标识(ID)来识别每个独立的非易失性存储器控制器106。例如,在向易失性存储器104提供命令时,主机102可以使用独立的存储器控制ID,然后易失性存储器可以使用如上所述的单独控制信号来向对应的非易失性存储器控制器106传送中断或复位命令。
可选地,除使用单独的控制信号以外,易失性存储器104可以被配置为当发出中断或复位命令时,向每个非易失性存储器控制器106提供给定的存储器控制器ID。然后,每个非易失性存储器控制器106可以检查给定的存储器控制器ID,以确定中断或复位命令是否被发给那个特定的非易失性存储器控制器106。例如,每个非易失性存储器控制器106可以具有在制造其间被编码到非易失性存储器控制器106上的电路中的特定存储器控制器ID。可选地,可以通过烧断非易失性存储器控制器106中的一个或多个熔丝、或通过将存储器控制器ID存储到非易失性存储器控制器106本身的非易失性存储器中来指定存储器控制器ID。
此外,在一个实施例中,可以使用连接至非易失性存储器控制器106的一个或多个管脚来指定关于每个非易失性存储器控制器106的存储器ID。例如,可以通过嵌入式系统的制造商以指定每个非易失性存储器控制器106的单独存储器控制ID的方式将管脚连接至上拉或下拉电阻器。在一个实施例中,如图5B所示,复位感应(sense-on-reset,SOR)管脚550可以用于指定每个非易失性存储器控制器106的存储器控制器ID。当非易失性存储器控制器106接收到复位(RESET)信号时,非易失性存储器控制器106可以被配置为加载经由sense-on-reset(SOR)管脚550提供的存储器控制器ID 552,并当确定是否将由易失性存储器104发出的随后中断和/或复位命令指给特定的非易失性存储器控制器106时,使用存储器控制器ID 552。
如上所述,总线仲裁器180可以提供用于提供对共用总线182的共用控制的简单且灵活的工具。共用控制可以确定使用共用总线182的多个非易失性存储器控制器106能够在易失性存储器104和非易失性存储装置108之间传送数据,而不会经由共用总线182执行相冲突的存取操作。
虽然以上描述了本发明的实施例,但是在不背离本发明的基本范围的情况下,可以设计本发明的其它或者另外的实施例,本发明的范围由附加的权利要求来限定。
Claims (31)
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所述的方法,其中,所述第一非易失性存储器接口包括被配置为提供命令信息、地址信息、并执行非地址信息的数据传送的地址管脚。
20.一种非易失性存储器控制器,包括:
第一非易失性存储器接口,被配置为使用非易失性存储器控制器和至少一个其他非易失性存储器控制器之间的共用总线来与所述易失性存储装置进行通信;
第二非易失性存储器接口,被配置为与非易失性存储装置进行通信;以及
控制电路,被配置为:
经由所述共用总线和所述易失性存储装置的所述第一非易失性存储器接口接收来自所述易失性存储装置的中断;以及
响应于接收所述中断:
从总线仲裁器电路请求对所述共用总线进行控制;
接收来自所述总线仲裁器电路的表示是否准许对所述共用总线进行控制的响应;以及
如果准许对所述共用总线进行控制,则使用所述共用总线为所述中断提供服务,其中,在未准许进行控制时,所述共用总线不被所述非易失性存储器控制器使用。
21.根据权利要求20所述的非易失性存储器控制器,其中,为所述中断提供服务包括:
接收对所述共用总线的控制;
在所述非易失性存储装置和非易失性存储器数据总线之间,经由所述第二非易失性存储器接口来执行数据的数据传送;以及
在所述易失性存储装置和所述共用总线之间,经由所述第一非易失性存储器接口来执行所述数据的数据传送。
22.根据权利要求20所述的非易失性存储器控制器,其中,为所述中断提供服务包括:
接收对所述共用总线的控制;
在所述非易失性存储装置和非易失性存储器数据总线之间,经由所述第二非易失性存储器接口来执行数据的数据传送;以及
在所述至少一个其他非易失性存储器控制器之间,经由所述共用总线来执行所述数据的数据传送。
23.根据权利要求20所述的非易失性存储器控制器,其中,所述控制电路进一步被配置为:
接收对所述共用总线的控制;
在所述非易失性存储装置和所述易失性存储装置之间,经由所述共用总线来执行数据的数据传送的第一部分;
放弃对所述共用总线的控制,同时所述至少一个其他非易失性存储装置为第二中断提供服务;以及
当恢复对所述共用总线的控制时,执行所述数据传送的第二部分。
24.根据权利要求20所述的非易失性存储器控制器,其中,所述第一非易失性存储器接口包括用于提供命令信息的命令管脚、和用于提供地址信息并执行非地址信息的数据传送的地址管脚。
25.根据权利要求20所述的非易失性存储器控制器,其中,所述第一非易失性存储器接口包括被配置为提供命令信息、地址信息、并执行非地址信息的数据传送的地址管脚。
26.一种系统,包括:
易失性存储装置,具有易失性存储器接口和非易失性存储器接口;
主机处理器,被配置为经由所述易失性存储器接口对所述易失性存储器进行存取;
两个或两个以上非易失性存储器控制器;
共用总线,其中,在所述两个或两个以上非易失性存储器控制器和所述易失性存储装置之间,经由所述非易失性存储器接口来共用所述总线;以及
总线仲裁器电路,包括:
至所述两个或两个以上非易失性存储器控制器的控制接口;以及
控制电路,被配置为:
接收来自所述两个或两个以上非易失性存储器控制器中的第一非易失性存储器控制器的关于对所述共用总线进行控制的请求;以及
响应于接收所述中断:
如果所述两个或两个以上非易失性存储器控制器中的每个的优先级表示应准许控制,则准许所述第一非易失性存储器控制器对所述共用总线进行控制,其中,当准许所述第一非易失性存储器控制器进行控制时,所述第一非易失性存储器控制器是所述两个或两个以上非易失性存储器控制器中经由所述共用总线执行数据存取操作的唯一非易失性存储器控制器。
27.根据权利要求26所述的系统,其中,所述共用总线只被所述易失性存储装置和所述两个或两个以上非易失性存储器控制器共用。
28.根据权利要求26所述的系统,其中,所述控制电路进一步被配置为:
在接收到所述请求之后并准许进行控制之前,从所述两个或两个以上非易失性存储器控制器中的第二非易失性存储器控制器获得对所述共用总线的控制。
29.根据权利要求26所述的系统,所述控制电路进一步被配置为:
在所述非易失性存储器控制器已经由所述共用总线执行所述数据存取操作之后,接收所述第一非易失性存储器控制器放弃的控制。
30.根据权利要求26所述的系统,其中,响应于从所述易失性存储装置发送至所述第一非易失性存储器控制器的中断,接收来自所述第一非易失性存储器控制器的所述请求。
31.根据权利要求26所述的系统,其中,所述总线仲裁器电路作为所述两个或两个以上非易失性存储器控制器之一的一部分被包括。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/612,378 | 2006-12-18 | ||
US11/612,378 US20080147940A1 (en) | 2006-12-18 | 2006-12-18 | Method and apparatus for controlling a shared bus |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101206626A true CN101206626A (zh) | 2008-06-25 |
Family
ID=39399984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007103023310A Pending CN101206626A (zh) | 2006-12-18 | 2007-12-18 | 对共用总线进行控制的方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20080147940A1 (zh) |
CN (1) | CN101206626A (zh) |
DE (1) | DE102007060058A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102183924A (zh) * | 2010-12-15 | 2011-09-14 | 华北电力大学 | 现场总线压力变送装置 |
CN111538686A (zh) * | 2020-03-31 | 2020-08-14 | 广东高云半导体科技股份有限公司 | 少管脚存储器的控制系统、fpga芯片和存储系统 |
CN114756491A (zh) * | 2022-04-20 | 2022-07-15 | 电子科技大学 | 一种基于群体决策算法的总线仲裁器及其实现方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008131058A2 (en) * | 2007-04-17 | 2008-10-30 | Rambus Inc. | Hybrid volatile and non-volatile memory device |
US8607089B2 (en) | 2011-05-19 | 2013-12-10 | Intel Corporation | Interface for storage device access over memory bus |
US9697872B2 (en) * | 2011-12-07 | 2017-07-04 | Cypress Semiconductor Corporation | High speed serial peripheral interface memory subsystem |
CN103226526A (zh) * | 2013-04-19 | 2013-07-31 | 无锡云动科技发展有限公司 | 一种存储器访问控制装置 |
US9805802B2 (en) | 2015-09-14 | 2017-10-31 | Samsung Electronics Co., Ltd. | Memory device, memory module, and memory system |
FR3078457A1 (fr) * | 2018-02-27 | 2019-08-30 | Stmicroelectronics (Grenoble 2) Sas | Systeme de commande d'un moteur |
US10936234B2 (en) * | 2019-05-22 | 2021-03-02 | Macronix International Co., Ltd. | Data transfer between memory devices on shared bus |
CN114326465B (zh) * | 2021-11-22 | 2023-11-21 | 江苏科技大学 | 一种共用485电路与控制方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6134631A (en) * | 1996-08-19 | 2000-10-17 | Hyundai Electronics America, Inc. | Non-volatile memory with embedded programmable controller |
US6026464A (en) * | 1997-06-24 | 2000-02-15 | Cisco Technology, Inc. | Memory control system and method utilizing distributed memory controllers for multibank memory |
US6681285B1 (en) * | 1999-07-22 | 2004-01-20 | Index Systems, Inc. | Memory controller and interface |
US6513094B1 (en) * | 1999-08-23 | 2003-01-28 | Advanced Micro Devices, Inc. | ROM/DRAM data bus sharing with write buffer and read prefetch activity |
JP2004502225A (ja) * | 2000-06-27 | 2004-01-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | フラッシュ・メモリを有する集積回路 |
KR100448905B1 (ko) * | 2002-07-29 | 2004-09-16 | 삼성전자주식회사 | 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치 |
US20040049628A1 (en) * | 2002-09-10 | 2004-03-11 | Fong-Long Lin | Multi-tasking non-volatile memory subsystem |
KR100543461B1 (ko) * | 2003-07-22 | 2006-01-20 | 삼성전자주식회사 | 가변 가능한 데이터 출력 기능을 갖는 플래시 메모리 장치및 그것을 포함한 메모리 시스템 |
KR100606046B1 (ko) * | 2004-01-20 | 2006-07-28 | 삼성전자주식회사 | 휴대용 단말기의 낸드 플래쉬 메모리를 이용한 부팅 장치및 방법 |
US7296143B2 (en) * | 2004-06-22 | 2007-11-13 | Lenovo (Singapore) Pte. Ltd. | Method and system for loading processor boot code from serial flash memory |
DE602004006408D1 (de) * | 2004-07-21 | 2007-06-21 | Sgs Thomson Microelectronics | Speicherzugriff |
JP2008511929A (ja) * | 2004-08-30 | 2008-04-17 | シリコン ストレージ テクノロジー、 インク. | 携帯電話の不揮発性メモリを管理するシステムおよび方法 |
US7490177B2 (en) * | 2006-01-23 | 2009-02-10 | Infineon Technologies Ag | System method for performing a direct memory access for automatically copying initialization boot code in a new memory architecture |
US7451263B2 (en) * | 2006-02-08 | 2008-11-11 | Infineon Technologies Ag | Shared interface for components in an embedded system |
US7441070B2 (en) * | 2006-07-06 | 2008-10-21 | Qimonda North America Corp. | Method for accessing a non-volatile memory via a volatile memory interface |
US20080007569A1 (en) * | 2006-07-06 | 2008-01-10 | Rom-Shen Kao | Control protocol and signaling in a new memory architecture |
US20080010420A1 (en) * | 2006-07-06 | 2008-01-10 | Rom-Shen Kao | Method for Accessing Control Registers via a Memory Device |
US20080010419A1 (en) * | 2006-07-06 | 2008-01-10 | Rom-Shen Kao | System and Method for Issuing Commands |
US7730268B2 (en) * | 2006-08-18 | 2010-06-01 | Cypress Semiconductor Corporation | Multiprocessor system having an input/output (I/O) bridge circuit for transferring data between volatile and non-volatile memory |
JP4942446B2 (ja) * | 2006-10-11 | 2012-05-30 | 株式会社日立製作所 | ストレージ装置及びその制御方法 |
-
2006
- 2006-12-18 US US11/612,378 patent/US20080147940A1/en not_active Abandoned
-
2007
- 2007-12-13 DE DE102007060058A patent/DE102007060058A1/de not_active Withdrawn
- 2007-12-18 CN CNA2007103023310A patent/CN101206626A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102183924A (zh) * | 2010-12-15 | 2011-09-14 | 华北电力大学 | 现场总线压力变送装置 |
CN111538686A (zh) * | 2020-03-31 | 2020-08-14 | 广东高云半导体科技股份有限公司 | 少管脚存储器的控制系统、fpga芯片和存储系统 |
CN114756491A (zh) * | 2022-04-20 | 2022-07-15 | 电子科技大学 | 一种基于群体决策算法的总线仲裁器及其实现方法 |
CN114756491B (zh) * | 2022-04-20 | 2023-06-20 | 电子科技大学 | 一种基于群体决策算法的总线仲裁器及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
US20080147940A1 (en) | 2008-06-19 |
DE102007060058A1 (de) | 2008-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101206626A (zh) | 对共用总线进行控制的方法和设备 | |
US7441070B2 (en) | Method for accessing a non-volatile memory via a volatile memory interface | |
CN101473438B (zh) | 具有单个接口的混合存储器设备和方法 | |
CN101266829B (zh) | 存储卡、包含存储卡的存储系统及存储卡的操作方法 | |
US20080010420A1 (en) | Method for Accessing Control Registers via a Memory Device | |
US7171526B2 (en) | Memory controller useable in a data processing system | |
US20080010419A1 (en) | System and Method for Issuing Commands | |
TWI790456B (zh) | 記憶體定址方法及相關聯的控制器 | |
US7725621B2 (en) | Semiconductor device and data transfer method | |
US20080007569A1 (en) | Control protocol and signaling in a new memory architecture | |
US20080109571A1 (en) | Method and apparatus for transmitting data using direct memory access control | |
US7925819B2 (en) | Non-volatile memory storage system and method for reading an expansion read only memory image thereof | |
US8166316B2 (en) | Single interface access to multiple bandwidth and power memory zones | |
US20140223077A1 (en) | Memory system | |
CN101911035B (zh) | 通过存储器地址映射使处理器与外部设备相接口的桥电路 | |
US7685343B2 (en) | Data access method for serial bus | |
US20050198425A1 (en) | Combined optical storage and flash card reader using single ide or sata port and method thereof | |
WO2015158264A1 (zh) | 控制内存芯片的方法、芯片控制器和内存控制器 | |
TW201901456A (zh) | 記憶體裝置及其操作方法 | |
TWI254243B (en) | Data writing control device and method | |
US8166228B2 (en) | Non-volatile memory system and method for reading and storing sub-data during partially overlapping periods | |
JP4343244B2 (ja) | マイクロコンピュータ | |
JP5534852B2 (ja) | 半導体ディスク装置 | |
KR20190087757A (ko) | 반도체 장치 | |
WO2006112968A1 (en) | Apparatus to improve bandwidth for circuits having multiple memory controllers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080625 |