CN100524262C - 用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备 - Google Patents

用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备 Download PDF

Info

Publication number
CN100524262C
CN100524262C CNB2006800175156A CN200680017515A CN100524262C CN 100524262 C CN100524262 C CN 100524262C CN B2006800175156 A CNB2006800175156 A CN B2006800175156A CN 200680017515 A CN200680017515 A CN 200680017515A CN 100524262 C CN100524262 C CN 100524262C
Authority
CN
China
Prior art keywords
external
data bus
bus
signal
circuit
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.)
Expired - Fee Related
Application number
CNB2006800175156A
Other languages
English (en)
Other versions
CN101180613A (zh
Inventor
埃里克·马图利克
尼古拉斯·雷斯卡尼埃
阿内·拉法热
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Atmel Corp
Original Assignee
Atmel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Atmel Corp filed Critical Atmel Corp
Publication of CN101180613A publication Critical patent/CN101180613A/zh
Application granted granted Critical
Publication of CN100524262C publication Critical patent/CN100524262C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Abstract

本发明包括一种用于减少集成电路中的不活动周期的系统。所述集成电路(600)通过外部数据总线(640)耦合到外部外围设备。所述集成电路(600)具有耦合到内部数据总线(645)的处理器(605)。外部总线电路(620)耦合到内部数据总线(645)和外部数据总线(640)。外部总线电路(620)经配置以接收用于数据请求数据的读取和写入信号,且随后传输等待信号直到来自外部外围设备的数据在内部数据总线(645)上可用为止,所述等待信号指示外部数据总线(640)和内部数据总线(645)均不可用。在所述处理器(605)接收或传输所述数据之后,所述外部总线电路(620)停止传输所述等待信号并传输忙碌信号,所述忙碌信号指示所述内部数据总线(645)可用且所述外部数据总线(640)不可用。

Description

用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备
相关申请案之交叉参考
本申请案主张2005年5月11申请的序列号为11/128,109的共同待决美国专利申请案(其主张2005年3月30日申请的序列号为0503089的共同待决法国专利申请案的优先权)的优先权,所述两个申请案均以引用的方式并入本文中,就像本文中的阐述一样。
技术领域
本发明一般而言涉及系统资源管理,且具体而言,涉及一种经设计以允许在外部数据总线被忙碌时能够使用内部数据总线的外部数据总线接口。
背景技术
图1是图解说明具有外部存储器的现有技术微控制器的示意图。印刷电路板100包含连接到外部存储器的微控制器110。微控制器110具有不同功能的内部存储器,然而,所述内部存储器对于微控制器110的所有指定用途并非都充分大。
静态随机存取存储器(SRAM)120和同步动态随机存取存储器(SDRAM)130连接到微控制器110并提供大于可在微控制器110中使用的存储量。地址总线140提供从微控制器110到SRAM 120和SDRAM 130的存储器地址位置。外部数据总线150为双向数据总线,其能够实现从SRAM 120和SDRAM 130中读取数据或将数据写入到SRAM 120和SDRAM 130。芯片选择160在微控制器110需要时启动SRAM 120。芯片选择170在微控制器110需要时启动SDRAM 130。读取/写入线180连接到SRAM120和SDRAM 130。时钟线190运送时钟信号以将SDRAM 130与微控制器110同步化。微控制器110与SRAM 120和SDRAM 130之间的其它线和信号均未示出,但所述线和信号已为所属领域的技术人员所了解。
图2是图解说明具有外部数据总线接口的现有技术微控制器的示意图。微控制器通常包含微处理器、存储器、提供通信的外围设备模块(例如,通用异步接收机/发射机(UART)、SPI和USB)及中断控制器。微控制器的内部存储器通常较小,但快于外部存储器。内部存储器中可保存需要快速存取时间且足够小的数据。对于外部存储器,微控制器使用外部总线电路来将系统总线波形协议解译成目标存储器波形协议。当外部存储器需要多于一个时钟循环来存取时,便向微处理器发送等待信号,以指示不能在数据总线上进行进一步的存取。在外部存储器完成其程序之后,则等待信号结束且可对数据总线进行进一步存取。微控制器110的一个实例在图2中图解说明为微控制器200。
微控制器200包含耦合到存储器204的微处理器202。地址解码器206可从微处理器202接收存储器204和外围设备208的地址并对其进行解码。地址解码器206、外围设备208和存储器204在地址总线210上接收地址而地址解码器206传输关于存储器选择212和外围设备选择214的选择信息。数据是在内部数据总线216(其为数据总线)上在微处理器202、存储器204和外围设备208之间传输。读取或写入信号是在读取/写入线217上在微处理器202、存储器204和外围设备208之间传输。微控制器200接收时钟信号218和复位信号220。输入222包含(例如)定时器触发器和UART输入数据而输出224包含(例如)UART发射机输出数据。外围设备208可为功能性逻辑,例如,UART、密码处理及/或数字滤波。
当微控制器110需要对SRAM 120或SDRAM 130进行存取时,微处理器202将地址发送到地址解码器206和外部总线电路230。地址解码器206确定所述地址在微控制器200的外部并将选择信号沿选择线232发送到外部总线电路230,以指示是否对SRAM或SDRAM进行存取。外部总线电路230在读取/写入线217上接收读取/写入信号。
外部总线电路230处理地址并将所述地址沿地址总线234发送到存储器。还传输控制信号线236的控制信号。在存储器处理所述请求之后,便可沿外部数据总线238(在图1中,其为外部数据总线150)传输数据。
在外部存储器写入期间,将数据沿内部数据总线216从微处理器202发送到外部总线电路230。然后,将数据在外部数据总线238上传输。如果外部存储器花费多于一个时钟循环来接收或存储来自外部数据总线238的数据,则外部总线电路230在等待线240上发送等待信号。直到等待信号停止为止,微处理器202将不在内部数据总线216上发送更多信息。
在外部存储器读取期间,将数据沿外部数据总线238从外部存储器发送到外部总线电路230且随后,沿内部数据总线216发送到微处理器202。在接收到数据之后,外部总线电路便释放外部数据总线238。将等待信号沿等待线240发送到微处理器202直到外部数据总线238和内部数据总线216均被释放为止。
图3是图解说明现有技术外部总线电路的示意图。外部总线电路300是外部总线电路230的一个实例。选择信号和读取/写入信号由SRAM控制器305-1或SDRAM控制器305-2来接收。
在存储器写入期间,控制器305接收来自地址总线310的地址、来自读取/写入线315的写入信号,及选择信号370和380。多路复用器选择器360将选择信号发送到多路复用器320,以指示应选择控制器305的哪一些数据输出来送到外部数据总线325。同样,多路复用器选择器360将选择信号发送到多路复用器327,以指示应选择控制器305的哪一些地址输出来送到地址总线329。控制电路330控制外部数据总线325上的数据流的方向。如果正对SRAM进行写入,则多路复用器320和327选择来自SRAM控制器305-1的输入。如果正对SDRAM进行写入,则多路复用器320和327选择来自SDRAM控制器305-2的输入。也向被选定的存储器发送写入信号。
在存储器读取期间,控制器305接收选择信号380和370、来自地址总线310的地址及来自读取/写入线315的读取信号。多路复用器选择器360将选择信号发送到多路复用器327,以指示应选择控制器305的哪一些地址输出来送到地址总线329。所选定的存储器做出响应并将数据发送到其相应的控制器。然后,多路复用器选择器360将选择信号发送到多路复用器335,以指示应将哪些数据传输到内部数据总线。
当外部存储器正接收数据(存储器写入)或在外部数据总线325正从存储器读取中释放出来时,控制器305向逻辑门350产生等待信号。逻辑门350为OR门,如果任一控制器305发送等待信号,则所述逻辑门沿等待线340产生等待信号。
图4是时序图,其图解说明现有技术微控制器中用于写入转移的波形。对图4的说明也参考图2。时钟400是由微控制器110和SDRAM 130接收的时钟信号(参见图1)。将地址405置于地址总线210上并将写入信号410在读取/写入线217上发送到外部总线电路230。在内部数据总线216上传输对应于地址405的数据415。
在时间420处,使地址425可在地址总线234上使用且使数据430可在外部数据总线238上使用。同样,将等待信号435从外部总线电路230发送到微处理器202。当使用外部数据总线238上的数据对外部存储器进行写入时,在地址总线210上发送地址440。然而,由于等待信号435被断定,因此不可能对数据总线216进行存取而数据415继续。
将等待信号435解除断定且在时钟循环结束时,在时间443处,完成存储器写入且内部数据总线216上的数据415被对应于内部地址440的数据445所替代。在时间450处,在地址440变为可用之后的4个时钟循环,完成对内部存储器的存取。
图5是时序图,其图解说明现有技术微控制器中用于读取转移的波形。对图5的说明也参考图2。时钟500是由微控制器110和SDRAM 130接收的时钟信号(参见图1)。将地址505置于地址总线210上并在读取/写入线217上将读取信号510发送到外部总线电路230。
在时间515处,外部总线电路230接收地址510。同样,在时间515处,将通往内部存储器的地址520置于地址总线210上并将等待信号523从外部总线电路230发送到微处理器202。等待信号523保证微处理器202将不对内部数据总线216进行存取。
在将信号发送到外部存储器之后,在外部数据总线238上传输数据525。在数据525像数据530那样变为在内部数据总线216上可用之后,外部数据总线238得到释放且处于浮动状态。当浮动状态535已度过充足时间而结束时,将等待信号523解除断定。
在时间540处,数据530已完成到微处理器202的转移且完成外部存储器读取。同样,内部存储器中对应于地址520的数据550变为在内部数据总线216上可用。
在时间545处,在地址505变为可用之后的5个时钟循环,完成以地址520对内部存储器的存取。
需要一种用于在外部数据总线的释放及写入到外部存储器期间减少微处理器不活动性时间的方法和设备。值得注意的问题发生在数个微处理器对数个外部存储器进行存取时。如果使用单个内部数据总线,则给所有微处理器发送等待信号且这些微处理器必须保持,尽管其未必需要外部存储器。
发明内容
本发明是一种用于减少集成电路中的不活动周期的系统。所述集成电路通过外部数据总线耦合到外部外围设备。所述集成电路具有处理器、通过内部数据总线耦合到所述处理器的地址解码器。在所述外部数据总线被占用但所述内部数据总线未被占用时,发送忙碌信号,以及等待信号。
本发明是一种耦合到内部数据总线和外部数据总线的外部总线电路。所述总线接口电路经配置以从所述处理器接收请求对外部外围设备进行读取/写入存取的读取/写入信号且作为响应,产生等待信号和忙碌信号。所述等待信号是在读取/写入数据被转移到内部数据总线上时产生,以指示所述内部数据总线不可用于其它用途(即,直到来自处理器的数据在外部总线接口中可用,或来自外部外围设备的读取数据总线在处理器中可用为止)。在所述处理器或外部总线电路已接收到数据之后,所述外部总线电路便停止产生等待信号而产生忙碌信号,所述忙碌信号指示内部总线可用而外部数据总线仍不可用于其它用途。
本发明的优点包含降低了因外部存储器写入要求和时间数据浮动延迟所致的处理器停机时间。处理器将能够更快速地对内部数据总线进行存取并在外部存储器存取之后使得到达内部存储器的转移更快。本发明将节省功率并增加处理速度。
附图说明
图1是图解说明具有外部存储器的现有技术微控制器的示意图。
图2是图解说明具有外部总线电路的现有技术微控制器的示意图。
图3是图解说明现有技术外部总线电路的示意图。
图4是时序图,其图解说明现有技术微控制器中用于写入转移的波形。
图5是时序图,其图解说明现有技术微控制器中用于读取转移的波形。
图6是以微控制器形式图解说明本发明一个实施例的示意图。
图7是以外部总线电路形式图解说明本发明一个实施例的示意图。
图8是时序图,其图解说明本发明的一个实施例中用于写入转移的波形。
图9是时序图,其图解说明本发明的一个实施例中用于读取转移的波形。
图10是流程图,其图解说明一种减少集成电路中的不活动周期的方法。
图11是流程图,其图解说明另一种减少集成电路中的不活动周期的方法。
具体实施方式
图6是以微控制器形式图解说明本发明的一个实施例的示意图。微控制器600包含微处理器605,其将外部存储器地址沿地址总线615发送到地址解码器610和外部总线电路620。
地址解码器610将地址辨识为外部存储器并将存储器选择信号沿外部存储器选择线625发送到外部总线电路620。外部总线电路620接收地址和选择信号且作为响应,沿控制线630发送控制信号及沿地址总线635发送地址。
外部存储器做出响应并沿外部数据总线640交换数据。在外部存储器写入期间,将数据从微处理器605通过内部数据总线645发送到外部总线电路620,穿过外部数据总线640并进入外部存储器中。所属领域的技术人员将认识到内部数据总线645可为单个双向数据总线或可表示两个双向总线,一个用于读取而另一个用于写入。在外部总线电路620接收到来自读取/写入线650的读取/写入信号之后,如果需要的话,则外部总线电路620将沿等待线670传输等待信号。所述等待信号指示内部数据总线645正忙于从处理器605到外部总线电路620的数据转移因而不可用于其它用途。在等待信号670被释放不久,外部总线电路620便沿占用线655传输忙碌信号。所述忙碌信号指示外部数据总线640正忙于从外部总线电路620到外部外围设备的数据转移因而不可用于其它用途。
地址解码器610接收忙碌信号且如果由微处理器605发送的下一地址是外部存储器地址或请求外部数据总线640(例如,请求外围设备或另一微处理器)的地址,则地址解码器610沿保持信号线660传输保持信号。在一个实施例中,逻辑门665为OR门,其发送来自外部总线电路620的等待信号或来自地址解码器610的保持信号。发送保持信号的原因在于外部数据总线640因外部存储器写入而正处于忙碌状态。微处理器605接收等待或保持信号并暂停直到从等待或保持中释放出为止。忙碌信号在外部数据总线640处于空闲后停止,地址解码器随后将保持信号解除断定且微处理器可对外部数据总线640进行存取。
如果在忙碌信号期间发送到地址解码器610的下一地址是针对存储器680,即内部存储器,则不发送保持信号且微处理器使用内部数据总线645来完成对存储器680的存取请求。
在外部存储器读取期间,将数据从外部存储器通过外部数据总线640发送到外部总线电路620,穿过内部数据总线645并进入微处理器605。在外部总线电路620接收到来自读取/写入线650的读取信号后,外部总线电路620便沿等待线670传输等待信号。所述等待信号指示外部数据总线640和内部数据总线645被占用且不可用于其它用途。
逻辑门665接收等待信号并将其传输到微处理器605,以防止微处理器605针对其它用途对内部数据总线645进行存取。在微处理器一接收到来自外部存储器的所请求数据(这指示所述数据已从内部总线645清除)后,外部总线电路620随即停止向逻辑门665传输等待信号。外部数据总线640必须在微处理器605可请求对外部存储器进行另一存取之前获得释放。在释放期间,且在数据已从内部数据总线645清除之后,释放等待信号且外部总线电路620向地址解码器610发送忙碌信号,以指示所述外部数据仍处于浮动状态。
地址解码器610接收忙碌信号且如果由微处理器605发送的下一地址是外部存储器地址或请求外部数据总线640(例如,请求外围设备或另一微处理器)的地址,则地址解码器610沿保持信号线660传输保持信号。逻辑门665发送来自外部总线电路620的等待信号或来自地址解码器610的保持信号。发送保持信号的原因在于外部数据总线640将被释放且处于浮动状态。忙碌信号在外部数据总线640获得释放后停止,地址解码器随后将保持信号解除断定且微处理器可对外部数据总线640进行存取。
如果在忙碌信号期间发送到地址解码器610的下一地址是针对存储器680,即内部存储器,则不从地址解码器610发送地址且微处理器可使用内部数据总线645来完成对存储器680的存取请求。
总之,在外部存储器写入后,微处理器605因等待信号670而必须暂停直到数据被写入外部总线电路620且随后,可针对任一内部地址自由对内部数据总线645进行存取为止。在外部存储器读取后,微处理器605必须因等待信号而暂停直到内部数据总线645脱离将读取的数据,且随后可针对任一内部地址对内部数据总线645进行存取为止。
图7是以外部总线电路形式图解说明本发明的一个实施例的示意图。在如图6中那样无需向地址解码器发送忙碌信号的情况下,外部总线电路700可替代图2中的外部总线电路230。
在存储器写入期间,控制器705接收来自地址总线710的地址、来自选择线735和740的选择信号及来自读取/写入线715的写入信号。多路复用器选择器770将选择信号发送到多路复用器720,以指示应选择控制器705的哪一些数据输出来送到外部数据总线725。同样,多路复用器选择器770将选择信号发送到多路复用器727,以指示应选择控制器705的哪一些地址输出来送到地址总线729。控制电路730控制外部数据总线725上的数据流的方向。如果正对SRAM进行写入,则多路复用器720和727选择来自SRAM控制器705-1的输入。如果正对SDRAM进行写入,则多路复用器720和727选择来自SDRAM控制器705-2的输入。也向被选定的存储器发送写入信号。
在控制器705接收到写入信号后,如果控制器不能随即得到所述数据,则由接收到选择信号735或740的控制器(无论哪一个控制器)产生等待信号。例如,在从微处理器写入到外部SRAM期间,控制器705-1向逻辑门755发送等待信号。在数据从写入数据总线780转移到内部控制器705-1后,控制器705-1便停止传输等待信号,以指示内部数据总线可用。
在另一实施例中,区块744含有忙碌输出线745和750。在写入到外部SRAM期间,控制器705-1在通往控制器705-2的忙碌输出线745上产生忙碌信号。在写入到外部SRAM期间,如果控制器705-2在线765上接收到选择、外部地址和忙碌信号,则控制器705-2向逻辑门755发送保持信号,而所述逻辑门向微处理器发送保持信号。保持信号指示内部数据总线可用,但由于由微处理器存取的下一地址在外部数据总线上,因此微处理器必须保持直到外部数据总线以最后一个存储器写入而结束为止。
同样的情况也适用于控制器705-2。如果控制器705-2正写入到外部SRAM,则控制器705-2在通往控制器705-1的忙碌输出线750上产生忙碌信号。在外部写入期间,如果控制器705-1在线750上接收到选择及外部地址和忙碌信号,则控制器705-1向逻辑门755发送保持信号,而所述逻辑门向微处理器发送保持信号。
在存储器读取期间,控制器705接收来自地址总线710的地址、来自选择线735-740的选择信号及来自读取/写入线715的读取信号。多路复用器选择器770将选择信号发送到多路复用器727,以指示应选择控制器705的哪一些地址输出来送到地址总线729。所选定的存储器做出响应并将数据发送到所选定的控制器。然后,多路复用器选择器770将选择信号发送到多路复用器760,以指示哪一个控制器705将向内部数据总线进行传输。
在控制器705接收到读取信号后,由接收到选择信号的控制器(无论哪一个控制器)产生等待信号。例如,在从外部SDRAM读取期间,控制器705-2向逻辑门755发送等待信号。在要读取的数据从外部数据总线725转移到内部数据总线765后,控制器705-2停止传输等待信号,以指示内部数据总线可用。
然后,控制器705-2产生忙碌信号并将其传输到控制器705-1。忙碌信号继续直到外部数据总线725完全得到释放为止。在那时,如果控制器705-1针对外部存储器而受到存取,则控制器705-1向逻辑门755产生保持信号,而所述逻辑门将保持传输到微处理器,以指示内部数据总线可用,但外部数据总线无法使用直到忙碌信号停止为止。
虽然在这个实施例中“忙碌”和“等待”信号表示为不同,但其可表示在同一线上传输的不同信号或相同信号。差异着重于传输信号的时间及其效应。等待信号是在内部数据总线被忙碌时传输,而忙碌信号是在内部数据总线可用但外部数据总线不可用时传输。等待信号由微处理器以某一形式接收,从而导致进一步处理的暂停,同时对微处理器隐瞒忙碌信号。
图8是时序图,其图解说明本发明的一个实施例中用于写入转移的波形。对图8的说明也参考图6,然而所述时序图可用于所有实施例而不是局限于图6中的实施例。时钟800是由微控制器110和SDRAM 130接收的时钟信号(参见图1)。将地址805置于地址总线615上且将写入信号810在读取/写入线650上发送到外部总线电路620。在内部数据总线645上传输对应于地址805的数据815。
在时间820处,使通往内部存储器680的地址825在地址总线615上可用且使数据830在外部数据总线640上可用。产生忙碌信号845,以指示不可对外部数据总线640进行另一存取。在这个实例中,在外部存储器写入期间不产生等待信号。在使用外部数据总线640上的数据写入到外部存储器时,在地址总线615上发送地址825。由于未断定等待信号,因此数据835是在内部数据总线645上传输到存储器680。
在时间840处,完成对存储器680的存取且忙碌信号845结束。在时间845处,结束对外部存储器的存取。在时间840处,在通往内部存储器的地址825为可用之后的2个时钟循环,完成对内部存储器的存取,且2个时钟循环比现有技术中的更快。忙碌信号结束通常出现在比外部数据总线的可用性提前一个时钟循环。
在时间820与840之间,在产生忙碌信号845时,禁止对外部数据总线640进行存取。
图9是时序图,其图解说明本发明的一个实施例中用于读取转移的波形。对图9的说明也参考图,然而,所述时序图可用于所有实施例而不是局限于图6中的实施例。时钟900是由微控制器110和SDRAM 130接收的时钟信号(参见图1)。将地址905置于地址总线615上并将读取信号在读取/写入线650上发送到外部总线电路620。
在时间915处,外部总线电路620接收地址910。同样,在时间915处,将通往内部存储器的地址920置于地址总线615上并将等待信号923从外部总线电路620发送到微处理器605。等待信号923保证微处理器605将不对内部数据总线645进行存取。
在时间940处,将地址920保持在微处理器605处,这是因为等待信号923和数据925变为在外部数据总线640上可用。在变为在外部数据总线640上可用不久,数据930即变为在内部数据总线645上可用且由微处理器605接收。等待信号923结束并也在近似时间940处产生忙碌信号945。
在时间950处,从地址总线615中取消地址920并从外部数据总线640中去除数据925。外部数据总线640进入时间数据浮动935,就像其将被释放一样。在时间950之后不久,使对应于地址920的数据960在内部数据总线645上可用。
在时间955处,忙碌信号945结束。在时间955处,完成外部存储器读取且在地址905之后的3个时钟循环完成一个内部存储器读取。本发明可将针对内部存储器存取紧接着外部存储器读取的存取时间降低2个时钟循环。
在时间915与时间940之间,在产生等待信号923时,不准许对内部数据总线645进行存取。在时间940与955之间,在产生忙碌信号945时,可准许对内部数据总线645进行存取但拒绝对外部数据总线640进行存取。在时间955之后,准许对内部或外部总线进行存取。
图10是流程图,其图解说明一种减少集成电路中的不活动周期的方法,所述集成电路通过外部数据总线耦合到外部外围设备。所述集成电路具有处理器、通过内部数据总线耦合到处理器的地址解码器、耦合到内部数据总线和外部数据总线的外部总线电路。在区块1000中,接收针对来自外部外围设备的数据的读取信号。在区块1005中,如果外部外围设备可随即做出应答。在区块1010中。如果外部外围设备无法随即做出应答,则产生等待信号直到来自外部外围设备的数据在内部数据总线上可用为止,其中等待信号指示外部和内部数据总线均不可用于其它用途。然后停止产生等待信号。在区块1020中,通过内部数据总线读取来自外部外围设备的数据。在区块1030中,停止产生等待信号。在区块1035中,如果外部外围设备可随即做出应答,则通过内部总线读取来自外部外围设备的数据。在区块1040中,产生忙碌信号,所述忙碌信号指示内部数据总线可用而外部数据总线不可用于其它用途。
图11是流程图,其图解说明用于减少集成电路中的不活动周期的另一方法,所述集成电路通过外部数据总线耦合到外部外围设备。所述集成电路具有处理器、通过内部数据总线耦合到处理器的地址解码器、及耦合到内部数据总线和外部数据总线的外部总线电路。在区块1100中,接收针对外部外围设备的写入信号。在区块1105中,确定外部总线电路是否可随即做出应答。在区块1110中,如果外部总线电路无法随即做出应答,则产生等待信号直到数据在外部总线接口中可用为止。等待信号指示内部总线和外部总线均不可用。在区块1115中,产生忙碌信号直到外部外围设备在外部数据总线上可用为止,所述忙碌信号指示内部数据总线可用而外部数据总线不可用于其它用途。在区块1120中,通过外部数据总线写入到外部外围设备。在区块1130中,停止产生忙碌信号。
本发明的优点包含减少时间数据浮动延迟期间的处理器等待时间和外部存储器中的写入时间要求。
所属领域的技术人员将认识到:虽然本文所述的实施例是应用于外部存储器,但本发明可应用于由以下原因所致的任何微处理器延迟:在外部总线上等待、外部总线是否正由外围设备、存储器、另一微处理器使用等。本发明提供一种在外部数据总线另外被忙碌时利用内部数据总线的方法和系统。在另一实施例中,本发明可应用于一对耦合到桥接器的总线(外部或内部)。在一个总线忙碌时,可使用另一总线。
本文所述的实施例打算仅提供一种能够实现的揭示内容而并不打算限制本发明的特征。如所属领域的技术人员依据先前说明及依据图式和权利要求书将了解,可对本发明进行修改和改变,此并不背离随附权利要求书中所界定的本发明的范围。

Claims (17)

1、一种用于减少集成电路中的不活动周期的系统,所述集成电路通过外部数据总线耦合到外部外围设备,所述集成电路具有处理器、通过内部数据总线耦合到所述处理器的地址解码器,所述系统包括:
外部总线电路,其耦合到所述内部数据总线和所述外部数据总线,所述外部总线电路经配置以从所述处理器接收请求数据的读取信号且作为响应产生等待信号直到来自所述外部外围设备的数据在所述内部数据总线上可用为止,所述等待信号指示所述外部和内部数据总线均不可用于其它用途,且在所述处理器接收到来自所述内部数据总线的数据后,所述外部总线电路停止产生所述等待信号并产生忙碌信号,所述忙碌信号指示所述内部数据总线可用且所述外部数据总线不可用于其它用途;以及
逻辑门,其耦合到所述地址解码器和所述外部总线电路,所述逻辑门经配置以从所述外部总线电路接收所述等待信号,如果所述处理器请求位于所述外部外围设备中的地址,则所述地址解码器进一步经配置以向所述逻辑门传输保持信号,所述保持信号指示所述外部数据总线不可用,所述逻辑门经配置以向所述处理器传输所述等待信号或保持信号。
2、如权利要求1所述的系统,所述外部总线电路进一步经配置以在所述外部数据总线正浮动时产生所述忙碌信号。
3、如权利要求1所述的系统,其中所述外部总线电路进一步经配置以接收请求存取的写入信号以在所述外部外围设备中写入数据,且作为响应产生所述忙碌信号直到所述外部外围设备可用于接收数据为止,且在所述处理器已通过所述外部数据总线接收到对所述外围设备的存取之后,所述外部总线电路停止产生所述忙碌信号。
4、如权利要求3所述的系统,其中:
如果所述处理器请求位于所述外部外围设备中的地址且所述地址解码器接收到所述忙碌信号,则所述地址解码器进一步经配置以向所述逻辑门传输所述保持信号。
5、如权利要求4所述的系统,其中所述外部外围设备为外部存储器。
6、如权利要求5所述的系统,其中所述外部总线电路为静态随机存取存储器(SRAM)控制器。
7、如权利要求5所述的系统,其中所述外部总线电路为快闪存储器控制器。
8、如权利要求5所述的系统,其中所述外部总线电路为突发式快闪存储器控制器。
9、如权利要求5所述的系统,其中所述外部总线电路为同步动态随机存取存储器(SDRAM)控制器。
10、如权利要求5所述的系统,其中所述外部总线电路为双倍数据速率存储器控制器。
11、如权利要求5所述的系统,其中所述外部总线电路为等待时间减少的动态随机存取存储器(RAM)控制器。
12、一种用于减少集成电路中的不活动周期的系统,所述集成电路通过外部数据总线耦合到外部外围设备,所述集成电路具有处理器、通过内部数据总线耦合到所述处理器的地址解码器,所述系统包括:
外部总线电路,其耦合到所述内部数据总线和所述外部数据总线,所述外部总线电路经配置以接收请求存取所述外部外围设备的写入信号且作为响应产生等待信号直到数据在所述外部总线电路中可用为止,所述等待信号指示所述内部总线和外部总线电路均不可用,并产生忙碌信号直到所述外部外围设备在所述外部数据总线上可用为止,所述忙碌信号指示所述内部数据总线可用且所述外部数据总线不可用于其它用途;以及
逻辑门,其耦合到所述地址解码器和所述外部总线电路,所述逻辑门经配置以从所述外部总线电路接收所述等待信号,如果所述处理器请求位于所述外部外围设备中的地址且所述地址解码器接收到所述忙碌信号,则所述地址解码器进一步经配置以向所述逻辑门传输保持信号,所述保持信号指示所述外部数据总线不可用,所述逻辑门经配置以向所述处理器传输所述等待信号或保持信号。
13、如权利要求12所述的系统,其中所述外部总线电路进一步经配置以在所述处理器已通过所述外部数据总线接收到对所述外围设备的存取之后停止传输所述忙碌信号。
14、一种用于减少集成电路中的不活动周期的方法,所述集成电路通过外部数据总线耦合到外部外围设备,所述集成电路具有处理器、通过内部数据总线耦合到所述处理器的地址解码器、耦合到所述内部数据总线和所述外部数据总线的外部总线电路,所述方法包括:
接收针对来自外部外围设备的数据的读取信号;
产生等待信号直到来自所述外部外围设备的数据在所述内部数据总线上可用为止,其中所述等待信号指示所述外部和内部数据总线不可用于其它用途;
通过所述内部数据总线读取来自所述外部外围设备的数据;
停止产生所述等待信号;产生忙碌信号,所述忙碌信号指示所述内部数据总线可用且所述外部数据总线不可用于其它用途;
在所述地址解码器中接收所述忙碌信号;
识别对应于所述外部数据总线的地址;
将保持信号从所述地址解码器传输到所述逻辑门,所述保持信号指示所述外部数据总线不可用;及
将所述保持信号从所述逻辑门传递到所述处理器。
15、如权利要求14所述的方法,其进一步包括:
在所述逻辑门处接收所述等待信号;及
将所述等待信号从所述逻辑门传递到所述处理器。
16、一种用于减少集成电路中的不活动周期的方法,所述集成电路通过外部数据总线耦合到外部外围设备,所述集成电路具有处理器、通过内部数据总线耦合到所述处理器的地址解码器、耦合到所述内部数据总线和所述外部数据总线的外部总线电路,所述方法包括:
接收针对所述外部外围设备的写入信号;
产生等待信号直到数据在所述外部总线电路上可用为止,所述等待信号指示所述内部数据总线可用和所述外部总线电路均不可用;
产生忙碌信号直到所述外部外围设备在所述外部数据总线上可用为止,所述忙碌信号指示所述内部数据总线可用且所述外部数据总线不可用于其它用途;
通过所述外部数据总线写入到所述外部外围设备;
停止产生所述忙碌信号;
在所述地址解码器中接收所述忙碌信号;
识别对应于所述外部数据总线的地址;
将保持信号从所述地址解码器传输到所述逻辑门,所述保持信号指示所述外部数据总线不可用;及
将所述保持信号从所述逻辑门传递到所述处理器。
17、如权利要求16所述的方法,其进一步包括:
在所述逻辑门处接收所述等待信号;及
将所述等待信号从所述逻辑门传递到所述处理器。
CNB2006800175156A 2005-03-30 2006-03-24 用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备 Expired - Fee Related CN100524262C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0503089 2005-03-30
FR0503089 2005-03-30
US11/128,109 2005-05-11

Publications (2)

Publication Number Publication Date
CN101180613A CN101180613A (zh) 2008-05-14
CN100524262C true CN100524262C (zh) 2009-08-05

Family

ID=37071991

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006800175156A Expired - Fee Related CN100524262C (zh) 2005-03-30 2006-03-24 用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备

Country Status (4)

Country Link
US (1) US7269704B2 (zh)
JP (1) JP2008535075A (zh)
CN (1) CN100524262C (zh)
TW (1) TW200700997A (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2035948B1 (en) * 2006-06-27 2016-04-13 Waterfall Security Solutions Ltd. Unidirectional secure links from and to a security engine
US7433262B2 (en) * 2006-08-22 2008-10-07 Atmel Corporation Circuits to delay a signal from DDR-SDRAM memory device including an automatic phase error correction
US7539078B2 (en) * 2006-08-22 2009-05-26 Atmel Corporation Circuits to delay a signal from a memory device
IL180020A (en) 2006-12-12 2013-03-24 Waterfall Security Solutions Ltd Encryption -and decryption-enabled interfaces
IL180748A (en) * 2007-01-16 2013-03-24 Waterfall Security Solutions Ltd Secure archive
TWI352931B (en) 2007-06-20 2011-11-21 Ind Tech Res Inst Resource management device and method
US8402188B2 (en) * 2008-11-10 2013-03-19 Micron Technology, Inc. Methods and systems for devices with a self-selecting bus decoder
US9635037B2 (en) 2012-09-06 2017-04-25 Waterfall Security Solutions Ltd. Remote control of secure installations
US9419975B2 (en) 2013-04-22 2016-08-16 Waterfall Security Solutions Ltd. Bi-directional communication over a one-way link
IL235175A (en) 2014-10-19 2017-08-31 Frenkel Lior Secure desktop remote control
IL250010B (en) 2016-02-14 2020-04-30 Waterfall Security Solutions Ltd Secure connection with protected facilities
CN114911741B (zh) * 2021-02-08 2024-04-19 南京宏泰半导体科技股份有限公司 一种基于浮动地址系统的信号同步方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4231091A (en) * 1978-11-27 1980-10-28 General Motors Corporation Engine control system
JPH0711793B2 (ja) 1989-07-13 1995-02-08 株式会社東芝 マイクロプロセッサ
US5448744A (en) 1989-11-06 1995-09-05 Motorola, Inc. Integrated circuit microprocessor with programmable chip select logic
EP0601715A1 (en) 1992-12-11 1994-06-15 National Semiconductor Corporation Bus of CPU core optimized for accessing on-chip memory devices
GB2281137B (en) 1993-08-20 1997-10-08 Advanced Risc Mach Ltd Data bus
JP3904244B2 (ja) 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
US5651138A (en) * 1994-08-31 1997-07-22 Motorola, Inc. Data processor with controlled burst memory accesses and method therefor
JPH08147161A (ja) 1994-11-21 1996-06-07 Nec Corp データ処理装置
US5675749A (en) 1995-06-02 1997-10-07 Motorola, Inc. Method and apparatus for controlling show cycles in a data processing system
US6097218A (en) * 1996-12-20 2000-08-01 Lsi Logic Corporation Method and device for isolating noise sensitive circuitry from switching current noise on semiconductor substrate
US6356987B1 (en) 1999-03-10 2002-03-12 Atmel Corporation Microprocessing device having programmable wait states
US6519666B1 (en) 1999-10-05 2003-02-11 International Business Machines Corporation Arbitration scheme for optimal performance
US6496890B1 (en) 1999-12-03 2002-12-17 Michael Joseph Azevedo Bus hang prevention and recovery for data communication systems employing a shared bus interface with multiple bus masters
JP2001167586A (ja) 1999-12-08 2001-06-22 Toshiba Corp 不揮発性半導体メモリ装置

Also Published As

Publication number Publication date
US7269704B2 (en) 2007-09-11
US20060224848A1 (en) 2006-10-05
CN101180613A (zh) 2008-05-14
JP2008535075A (ja) 2008-08-28
TW200700997A (en) 2007-01-01

Similar Documents

Publication Publication Date Title
CN100524262C (zh) 用于减少时间数据浮动延迟和外部存储器写入期间系统不活动性的方法和设备
CN100595744C (zh) 芯片上系统集成电路、电子系统及在其内传送数据的方法
CN100481041C (zh) 控制时钟信号的输出的装置和方法和包括该装置的系统
CN101346708A (zh) 全缓冲dimm读数据替代写确认
US8468281B2 (en) Apparatus to improve bandwidth for circuits having multiple memory controllers
CN101944075B (zh) 总线系统、对低速总线设备进行读写操作的方法及装置
CN105321539A (zh) 存储系统及其操作方法
CN108280041B (zh) 一种内部集成电路主机的通信方法和装置
WO2007002546A2 (en) Memory channel response scheduling
CN102236622A (zh) 提高动态存储器带宽利用率的动态存储器控制器及方法
CN100476767C (zh) 主机与从属设备之间的连接方法、装置、计算机系统
US20040054843A1 (en) Configuration and method having a first device and a second device connected to the first device through a cross bar
CN106057226B (zh) 双端口存储系统的存取控制方法
US20070186026A1 (en) System having bus architecture for improving CPU performance and method thereof
US20050198427A1 (en) Portable electronic system and accessing method thereof
CN113590520B (zh) Spi系统自动写入数据的控制方法及spi系统
WO2006103563A2 (en) Method and apparatus for reducing system inactivity during time data float delay and external memory write
CN102087880A (zh) 存储器元件的初始化方法
CN113590520A (zh) Spi系统自动写入数据的控制方法及spi系统
EP0923032B1 (en) Method for transferring data in a multiprocessor computer system with crossbar interconnecting unit
JP2017004092A (ja) 集積回路間のシリアル通信システム
US20110209009A1 (en) Distributed Memory Usage for a System Having Multiple Integrated Circuits Each Including Processors
CN102193774B (zh) 数据读取方法及装置
JPS6235950A (ja) メモリ間のデ−タ転送方式
JP3947223B2 (ja) 送信パケットを重ねることによりインタフェース上の待ち時間を短縮するための方法および装置

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090805

Termination date: 20130324