CN101441607A - 在计算机系统中嵌入式控制器和处理器之间共享非共享的设备 - Google Patents
在计算机系统中嵌入式控制器和处理器之间共享非共享的设备 Download PDFInfo
- Publication number
- CN101441607A CN101441607A CNA2008100919010A CN200810091901A CN101441607A CN 101441607 A CN101441607 A CN 101441607A CN A2008100919010 A CNA2008100919010 A CN A2008100919010A CN 200810091901 A CN200810091901 A CN 200810091901A CN 101441607 A CN101441607 A CN 101441607A
- Authority
- CN
- China
- Prior art keywords
- microcontroller
- nonvolatile memory
- state
- processor
- 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.)
- Granted
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Multi Processors (AREA)
Abstract
本发明涉及在计算机系统中嵌入式控制器和处理器之间共享非共享的设备。响应于系统状态变化为第一状态,其中确保微控制器对非易失性存储器的安全访问(例如相应于上电复位、系统复位、睡眠状态等),微控制器将系统保持在第一状态(例如系统复位)中,并把对非易失性存储器的访问从处理器转换到微控制器。当系统保持在第一状态中时,微控制器访问设备(例如非易失性存储器),例如从非易失性存储器提取程序指令/数据,并将程序指令/数据装入到微控制器的存储器中。在访问之后,微控制器改变或允许改变系统状态,例如把对设备如非易失性存储器的访问从微控制器转换到处理器,并从第一状态释放系统。
Description
发明背景
优先权数据
本申请要求于2007年4月10日提交的题目为“Sharing Non-SharableDevices Between an Embedded Controller and A Processor in a ComputerSystem”的美国临时申请序列号60/910,863的优先权利益,其发明人为Ian Harris和Drew J.Dutton。
发明领域
本发明一般涉及计算设备的领域,尤其涉及共享设备,例如没有设计成在系统内的处理器中间共享的非易失性存储器。
相关技术的描述
很多硬件系统包括中央处理单元(CPU),即,主处理器以及一个或更多用于执行系统的辅助功能如初始化、管理和复位功能的微控制器。系统内的每个处理器或微控制器通常具有相应的非易失性存储器,处理器或微控制器从该非易失性存储器读取指令,用于执行在固件中实现的启动、复位、管理(例如功率状态管理)或其它功能。用于提供控制器存储器的目前的解决方案是:(1)对每个控制器/处理器都有单独的专用/私用存储设备;(2)集成片上(on-chip)存储器;或(3)试图仲裁现有存储设备的使用。
然而,试图仲裁另一设备的使用的问题是系统性能和用户体验可能被恶化。而且,提供具有单独的非易失性存储器的每个处理器和微控制器在费用和时间上都是昂贵的。例如,很多用于笔记本式和台式计算机的目前的嵌入式微控制器解决方案使用对市场时间(time to market)和灵活性提出挑战的ROM(只读存储器)解决方案。市场问题是由于在设计和制造过程中足够早地最后定下微控制器固件和数据的需要,以满足生产的进度表要求。这通常表示在开发程序的时间进度表中的至少一个月。此外,在固件或数据中发现的任何后期错误意味着所有的现有清单都是过时的且可能不得不被丢弃。
为了上面的原因,一些消费者或设计者宁愿使用嵌入式闪存或用于存储的类似存储器,因为这种类型的存储器允许在生产测试时或甚至在野外更新。然而,嵌入式闪存的使用需要很昂贵的制造工序,因为微控制器芯片将闪存集成在相同的管芯(die)上,因此需要闪存制造工序。使用该工序制造芯片一般更贵30%,因而使芯片明显更昂贵。如果被一些其它因素例如成本节约或产品要求补偿,这个费用才有意义。如果消费者只有一组被使用的固件(代码)以及如果该代码永不改变,且如果消费者确信在可能需要更新的代码中没有错误,才可使用ROM和标准制造工序来代替嵌入式闪存。另一方面,如果消费者有多个固件代码(例如,每个产品型号一个),则使用闪存可能更容易。因此,由于费用,嵌入式闪存的使用只有在ROM的风险太高或如果有多个代码、低容量或其它特定的商业原因时才可能是可行的。
因此,如上所述,目前的解决方案通常昂贵、不灵活,不能保证可靠地工作,可能有偶尔的错误,和/或可引起明显的系统性能恶化。
比较了现有技术与这里所述的本发明的实施方式之后,关于这样的现有技术的其它相应的问题对本领域的技术人员将变得明显。
发明内容
介绍了用于在计算机系统中处理器之间共享例如非易失性存储器的设备的系统和方法的不同实施方式,其中一个处理器对计算机系统内其它处理器的工作状态例如功率和/或执行状态进行控制。
响应于系统状态变化,例如上电复位或系统复位,其中系统内的微控制器保证对共享设备的安全访问,或可阻止系统进入系统内的处理器可访问共享设备的状态,微控制器可设置控制信号来使对共享设备的访问是使用微控制器。换句话说,系统可变成一种状态(“第一”状态),其中微控制器保证安全地访问共享设备的能力,而例如没有被处理器中断或干涉。
在一个实施方式中,微控制器可位于系统接口(因此,系统内的处理器)和共享设备例如非易失性存储器如嵌入式闪存之间,因而可截断系统接口和该设备之间的通信。设备可包括接口或与接口相关联,由此便于或实现对设备的访问,且其中该接口可配置成把对设备的访问指向或限制为不同系统组件如处理器或微控制器。在一个实施方式中,设置控制信号以使对共享设备的访问是使用微控制器的微控制器包括设置共享设备接口与微控制器的接口的微控制器。提到另一方法,微控制器可设置一个或更多控制信号来配置或重新定向共享设备接口以准许微控制器对设备的唯一访问。
在一个实施方式中,微控制器为系统控制和管理上电复位(POR),因而可按通过系统的主处理器优先取得对设备访问的方式来响应于和/或产生与上电复位或系统复位有关的信号(或其它管理信号),因而便于共享否则不可能被共享的设备。在一些实施方式中,系统状态的变化可由微控制器产生或接收的管理信号如系统复位或POR信号产生或指示。应注意,在一些实施方式中,接口的方向控制,即,系统的哪个组件可访问设备的控制可与管理(例如,系统复位或POR)信号无关。换句话说,微控制器可控制共享设备接口是否指向系统的处理器或微控制器,而与管理(例如,系统复位或POR)信号无关。
虽然在第一状态中,也就是在微控制器确保对设备的安全访问、或可通过系统中的处理器禁止对共享设备的访问、以及适当配置对设备的访问的状态,微控制器可检索数据或与设备交换数据。例如,在系统状态依赖于管理信号如系统复位信号或被其指示的实施方式中,微控制器可接收或产生管理信号,并将管理信号保持在该状态中,即,可维持管理信号的有效性,以及当该信号有效时,可从设备读取、写入设备、从设备提取(fetch)或否则与设备交换(例如,通过由系统的一些其它组件产生的读取或写入)数据或程序指令。
一旦控制器完成了数据检索或与设备的数据交换,或确定了它可能不再保证安全的访问,微控制器就可通过控制信号重新配置接口以使能够由系统中的处理器实现访问,例如,通过控制对设备的访问的开关,如以下将更详细描述的。一旦微控制器将设备配置成使能够由系统中的处理器来实现访问,微控制器就可改变或允许改变系统状态,因而允许系统中的处理器访问共享设备,例如,在系统状态依赖于管理信号如系统复位信号或被其指示的实施方式中,微控制器可使管理信号无效,因而将系统置于允许通过系统的处理器来访问共享设备的状态。
因此,使用上述方法的实施方式,微控制器可通过系统的处理器例如主CPU来优先取得或暂停对设备的访问,或否则通过微控制器来配置对设备的访问;检索或否则与设备交换数据或程序指令;接着把对设备的访问返回到处理器,或否则通过微控制器放弃对设备的专门/安全访问。
应注意,在微控制器管理或控制系统的工作状态(例如,复位、POR、睡眠和与特定的系统行为有关的其它状态,其中微控制器知道系统不能或将不访问设备)的各种其它实施方式中,微控制器可监控(或控制)这样的系统状态,并利用这些状态来安全地访问设备,以例如控制和使用共享设备。注意,这些系统状态应使得微控制器管理系统何时退出这些状态被提供关于系统何时再次需要(对设备)共享接口的控制的充分的警告。作为一个例子,当系统被关闭时,微控制器可接管设备接口,即可重新定向设备接口,来(只)允许在掉电之前,即关掉最后的功率轨(power rail)之前,通过微控制器访问。以这种方式,写入或与共享设备的其它交换可被储存或排队,以及可在最后的掉电之前保证它们的完成(例如,通过微控制器)。
因此,微控制器可与系统的处理器一起适度地共享对设备的访问。应注意,在其它实施方式中,额外的微控制器也可使用上述技术与主机或主系统CPU共享设备。在进一步的实施方式中,设备的这样的共享也可用在其它方法中。例如,在一些实施方式中,多个处理器(例如,微控制器)可共享这样的设备,其中每个处理器可通过其它处理器依次暂停或阻止对设备的访问,同时它访问该设备。
以下描述上述一般方法的更具体的实施方式,其特别针对于在系统中主处理器和微控制器之间非易失性存储器的共享。换句话说,在以下实施方式中,共享设备包括非易失性存储器设备。应注意,这些实施方式仅仅意味着是示例性的,且不意味着将共享设备的类型或使用限制为任何特定的形式或功能。
响应于上电复位(POR),系统中的微控制器,例如微控制器可将系统复位信号保持在复位状态中,因而禁止系统中的处理器访问系统中的非易失性存储器。注意,POR和/或系统复位可或不可由微控制器产生。
换句话说,响应于POR,微控制器可接收或产生系统复位信号,并将该信号保持在复位状态中。如上所述,在一个实施方式中,微控制器可位于系统接口(并因此系统内的处理器)和共享设备例如非易失性存储器如嵌入式闪存之间,因而可截断系统接口和该设备如非易失性存储器之间的通信。如下面将更详细描述的,在一些实施方式中,当系统复位信号在复位状态中时,非易失性存储器的接口可通过微控制器配置成阻止系统内的处理器例如通过开关访问非易失性存储器。
当系统复位信号(或其它管理信号)保持在复位状态中,例如通过微控制器变得有效(例如,以及非易失性存储器的接口配置成只允许由微控制器访问)时,微控制器可从非易失性存储器取出程序指令/数据,并将程序指令/数据装入到微控制器的存储器中,或否则访问非易失性存储器。换句话说,微控制器可产生或接收系统复位信号,并可将系统复位信号保持在复位状态中(例如,在系统管理总线上通过系统复位线),即,可维持系统复位信号的有效性(assertion),以及当系统复位信号有效时可从非易失性存储器提取(fetch),即,读取、获得或以其他方式接收(例如,通过由系统的一些其它组件的读取调用)程序指令/数据,并将程序指令/数据装入到或写入微控制器的存储器中。注意,微控制器的存储器优选地为RAM(随机存取存储器),虽然可按需要使用任何类型的可重写的存储器。如上面提到的,在一些实施方式中,程序指令/数据可包括程序固件代码,该代码可例如被嵌入式微控制器用于启动或复位功能,例如用于初始化微控制器连同其它用途。在一些实施方式中,微控制器可以是或包括计算机系统的外围设备控制器。例如,在一个示例性实施方式中,嵌入式控制器可为键盘控制器,以及非易失性存储设备108可存储键盘控制器(KBC)代码,虽然在其它实施方式中,可按需要使用任何其它程序指令/数据或数据。
在一个实施方式中,微控制器可包括或连接到主机存储器总线并可包括或连接到设备总线,主机存储器总线可连接到系统接口,以及在本实施方式中设备总线为可连接到共享的非易失性存储设备的非易失性存储器总线。在一个实施方式中,主机存储器总线和非易失性存储器总线是SPI(串行外围接口)总线,虽然可按需要使用其它协议。注意,在一些实施方式中,主机存储器总线和非易失性存储器总线可被考虑为相同的总线,例如存储器总线,微控制器插入其中以可转换地截取并可能重新定向总线上的信号。
在一个实施方式中,微控制器包括或连接到由开关控制器控制的开关,用于为主机存储器总线和非易失性存储器总线例如存储器总线提供转换功能。微控制器可因此可操作,以例如通过将开关置于高阻抗状态可转换地优先取得和抑制在主机接口和非易失性存储器之间的存储器总线(即,主机存储器总线和非易失性存储器总线)上的信号流动,并且当主机接口和非易失性存储器之间的通信暂停时从非易失性存储器提取指令/数据。因此,微控制器可操作来配置设备(例如,开关)的接口以调节并加强对设备的安全访问。
在微控制器从非易失性存储器装入程序指令/数据之后,微控制器可例如通过开关来重新配置对非易失性存储器的访问,并从复位状态释放系统复位信号,因而允许系统中的处理器访问非易失性存储器。换句话说,当通过微控制器完成自非易失性存储器提取指令/数据时,微控制器可例如通过开关终止主机接口和非易失性存储器之间的通信的暂停或优先提取,因而允许这样的通信的重新开始,并使系统复位信号无效。
因此,使用上述方法的实施方式,微控制器可通过主CPU优先获得或暂停与非易失性存储器的通信,并从非易失性存储器读取指令/数据,以例如在主系统即主CPU的运行之前、或与该运行独立而初始化微控制器和/或执行其它功能,因而与主系统共享非易失性存储器。例如,在一些实施方式中,微控制器可除了初始化代码/数据以外还可提取与预引导(pre-boot)安全操作有关的程序指令/数据,并可操作来在主系统的启动之前执行这样的预引导安全操作,因而对系统提供额外的安全。
因此,微控制器可适度地共享主系统的非易失性存储器的使用。应注意,在其它实施方式中,附加的微控制器也可使用上述技术与主机或主系统CPU共享该非易失性存储器。在进一步的实施方式中,非易失性存储器的这样的共享也可用其它方式使用。例如,在一些实施方式中,多个微控制器可共享(例如,没有被主系统CPU使用的)非易失性存储器,其中每个微控制器可通过其它微控制器依次暂停或阻止对非易失性存储器的访问,同时它从存储器装入指令/数据。
注意,在不同的实施方式中,系统变成确保微处理器对非易失性存储器(或设备)的安全访问的状态可由软件或硬件执行或在中间调解。换句话说,在一些实施方式中,状态变化可响应于硬件信号,例如POR信号等。在其它实施方式中,状态变化可响应于软件事件、标记(token)、软件条件、软件消息、软件信号交换(handshake)等等。提到另一方法,本发明的实施方式意图是实质上包括嵌入式控制器可确定它可安全地控制共享的非易失性存储器的任何情况,不管“安全”系统状态通过软件或硬件被中间调解还是用信号通知。例如,系统可给微控制器传递标记,该标记通过软件信号交换授予微控制器对存储器的所有权。
因此,这里描述的本发明的不同实施方式可允许系统内的嵌入式微控制器和处理器共享没有设计成被共享的设备。
附图说明
当连同附图一起阅读时,通过参考下列详细说明,可更彻底地理解本发明的前述以及其它目的、特征和优点,其中:
图1A示出配置成实现本发明的一个实施方式的示例性计算机系统;
图1B示出配置成实现本发明的一个实施方式的示例性系统的高级结构图;
图2是根据一个实施方式用于在系统中处理器和微控制器之间共享设备的方法的流程图;
图3是根据一个实施方式用于在系统中处理器和微控制器之间共享非易失性存储器的方法的流程图;
图4示出根据本发明的一个实施方式的微控制器;
图5示出根据一个实施方式的示例性信号定时示意图。
虽然本发明容易受到各种更改和可选形式的影响,其中的特定实施方式作为例子在附图中示出并将在这里详细描述。然而应理解,附图和对其的详细描述不意味着限制所公开的特定形式,而是相反,本发明将包括落在由所附权利要求限定的本发明的实质和范围内的所有更改、等效和可选方案。
具体实施方式
通过引用的并入
由此下列参考资料在这里通过引用被全部并入,如同被完整和彻底地阐述一样:
于2007年4月10日提交的题目为“Sharing Non-Sharable DevicesBetween an Embedded Controller and A Processor in a Computer System”的美国临时申请序列号60/910,863,其发明人为Ian Harris和Drew J.Dutton。
介绍了用于在系统如计算机系统中一个或更多主处理器和微控制器之间共享设备的系统和方法的不同实施方式,其中微控制器相对于系统中的其它处理器对主处理器的功率或执行状态或其它独特的管理能力进行控制。
注意,所使用的任何标题仅仅是为了组织的目的而不是意味着用来解释说明书或权利要求。此外,应注意,在整个申请中,词语“可以”在许可的意义(即,有可能,能够)而不是强制的意义(即,必须)上使用。术语“包括”及其派生词意指“包括但不限于”。术语“耦合”意指“直接或间接地连接”。
而且,如这里使用的,“指令组”可指一个或更多指令。更具体地,在一些实施方式中,“指令”可指程序设计代码、软件和/或以代码形式实现的功能,该代码可由适合于执行这些指令的控制器、微处理器和/或常规逻辑电路来执行。在一些实施方式中,这些指令可包括设备驱动器、控制软件和/或机器代码。
如在这里使用的,“控制器”指任何类型的处理器,例如中央处理单元(CPU)、微处理器、微控制器或嵌入式控制器或微控制器连同其它控制器。
概述
这里描述的本发明的不同实施方式可通过嵌入式微控制器提供对设备(例如,非易失性存储器)的访问,这允许微控制器访问设备和从设备读取或向设备写入程序指令/数据,同时将系统例如CPU保持在诸如复位的状态中,其中对非易失性设备的访问不干扰正常的系统功能。
图1A—示例性计算机系统
图1是配置成实现本发明的一些实施方式的示例性计算机系统82的高级结构图。图1的系统包括计算机系统如个人计算机(PC),虽然在其它实施方式中,这里描述的技术和系统可按需要在任何其它系统中实现。
在优选实施方式中,计算机系统82包括主要或中央处理器,即,主机处理器以及一个或更多微控制器,例如每个微控制器都在各自的片上系统(SoC)中,例如用于管理或控制键盘和主处理器之间的通信的键盘控制器。存储器优选地包括在具有嵌入式控制器的SoC上,且在不同实施方式中可按需要为非易失性存储器,例如ROM(只读存储器)或易失性存储器如闪存。如图1所示,根据本发明的实施方式,计算机系统82包括用于例如在主处理器和微控制器之间共享存储器的逻辑104。下面参考图1B、2、4和6提供了关于系统的示例性实施方式的进一步的细节。
图1B—示例性系统
图1B是配置成实现本发明的一个实施方式的示例性系统的高级结构图,特别是在系统中CPU或主处理器和嵌入式微控制器之间共享例如非易失性存储器的设备。图1B的系统优选地驻留在计算机系统中,例如个人计算机(PC)如图1A的计算机系统82,虽然在其它实施方式中,这里所述的技术和系统可按需要在任何其它系统中实现。
如图1B所示,系统可包括通过系统接口总线103连接到系统接口106的嵌入式微控制器102,由此微控制器102可与称为主机CPU或处理器的计算机系统的CPU通信。注意,在不同实施方式中,该系统接口106可仅仅为适合于在微控制器102和主机CPU之间通信的连接或总线,或可按需要包括附加结构或功能。如图1B所示,微控制器102可通过如所示的设备总线107进一步连接到可存储程序指令或其它数据的共享设备108,这些指令或数据可由嵌入式微控制器上载或编程,例如用于启动、一般的或复位功能。微控制器102可通过主机存储器总线105进一步连接到系统接口106,由此嵌入式微控制器102可截取在系统接口(例如,主机CPU)和共享设备108之间传输的存储器请求或其它信号。注意,存储在共享设备(例如,非易失性存储器)108中的程序指令/数据优选地包括程序指令,例如可被嵌入式微控制器102用于启动、一般的或复位功能的固件代码,例如用于初始化微控制器102连同其它用途。在一些实施方式中,微控制器102可包括用于计算机系统的外围设备控制器。例如,在一个示例性实施方式中,嵌入式微控制器102是键盘控制器,以及共享设备108可储存键盘控制器(KBC)代码,虽然在其它实施方式中,可按需要使用任何其它程序指令、数据或代码。
因此,在图1B所示的实施方式中,嵌入式微控制器102位于系统接口106和共享设备(例如,非易失性存储器)108之间,所以在这两个组件之间可起媒介或截断的作用,因而便于在主机处理器和嵌入式微控制器102之间共享设备108,如下面将更详细描述的。注意,在本实施方式中,可包括连接系统接口106和微控制器102的系统管理总线例如系统复位总线101,用于在两个组件之间传送复位或其它管理信号(或其它信号),虽然在其它实施方式中,可使用系统接口总线103。在优选实施方式中,共享设备108为嵌入式闪存,虽然可按需要使用其它类型的设备,例如ROM或任何其它类型的存储器。
图2—用于在系统中处理器之间共享设备的方法
图2是用于在例如计算机系统的系统中的处理器之间例如处理器和微控制器之间共享例如非易失性存储器的设备的方法的实施方式的高级流程图,其中共享设备没有设计成是被共享的。在不同实施方式中,所示的一些方法要素可按与所示不同的顺序被同时执行,或可被省略。也可按需要执行额外的方法要素。如所示,本方法可如下操作。
在202中,响应于系统状态变化,例如上电复位(POR)、系统复位或睡眠模式,其中微控制器例如系统中的微控制器102确保对共享设备的安全访问,或可阻止系统进入系统内的处理器可访问共享设备的状态,微控制器可设置控制信号或利用软件来使对共享设备的访问是使用微控制器。换句话说,当系统变为一种状态例如第一状态时,其中保证微控制器102安全地访问共享设备的能力,而例如没有被处理器中断或干扰,微控制器可将系统保持在该状态中并对共享设备如非易失性存储器的访问从处理器转换为微控制器。该第一状态的例子可包括下列项中的一个或更多:上电复位(POR)状态、系统复位状态或睡眠状态连同其它状态。将系统保持在第一状态中可禁止系统中的处理器访问共享设备,如系统中的非易失性存储器。
类似地,状态变化可由管理信号如POR、系统复位、睡眠信号等产生或引起,这些信号可包括软件信号、时间、标记、信号交换等。在一个实施方式中,将系统保持在第一状态中可包括将管理信号保持在相应的状态中,例如将系统复位信号保持在复位状态中。
注意,管理信号例如所使用的POR和/或系统复位和/或任何其它类型的管理信号可以或可以不由微控制器产生。因此,例如,响应于收到的管理信号如POR信号,或响应于产生管理信号例如POR信号,微控制器可产生或接收另一管理信号,例如系统复位信号,接着使另一管理信号在特定的状态如复位状态中保持或有效。
如上参考图1B提到的,在一个实施方式中,微控制器102可位于系统接口106(并因此,系统内的处理器)和共享设备108例如非易失性存储器如嵌入式闪存之间,因此可截断系统接口和设备108之间的通信。
设备108可包括接口或与接口相关联,由此便于或实现对设备的访问,且其中该接口可配置成把对设备的访问指向或限制为不同的系统组件,例如处理器或微控制器。在一个实施方式中,设置控制信号以使对共享设备的访问是使用微控制器的微控制器包括设置共享设备接口与微控制器的接口的微控制器。提到另一方法,微控制器可设置一个或更多控制信号来将共享设备接口配置或重新定向以准许微控制器对设备的唯一访问。在其它实施方式中,对共享设备的访问从处理器转换到微控制器可通过软件或软件和硬件的组合来执行。注意,如这里使用的,术语“信号”可表示硬件信号和/或软件信号,例如软件事件、消息、标记、信号交换等。因此,术语“管理信号”可指硬件信号或软件信号。
注意,在优选实施方式中,微控制器为系统控制和管理上电复位(POR),因此可用通过系统的主处理器优先获得对设备的访问的方式来响应于和/或产生与上电复位或系统复位有关的信号或软件事件或消息(或其它管理信号),因而便于共享否则不能被共享的设备。在一些实施方式中,系统状态的变化可由管理信号例如微控制器产生或接收的系统复位或POR信号产生或指示。然而应注意,在一些实施方式中,接口方向的控制,即系统的哪个部件具有对设备的控制,可与管理(例如,系统复位或POR)信号无关。换句话说,微控制器可控制共享设备接口是否指向系统的处理器或微控制器,而与管理(例如,系统复位或POR)信号无关。而且,在一些实施方式中,代替硬件信号或除了硬件信号以外,微控制器可响应于软件事件、消息、标记、信号交换等,其可指示系统状态何时使得微控制器确保对共享设备例如对非易失性存储器的安全访问。
在204中,当系统在第一状态中,也就是在微控制器确保对设备的安全访问或可通过系统中的处理器禁止对共享设备的访问、以及适当配置对设备的访问的状态,微控制器可检索数据或与设备108交换数据。例如,在系统状态依赖于管理信号如系统复位信号或被其指示的实施方式中,微控制器可产生或接收管理信号,并将管理信号保持在该状态中,即,可维持管理信号的有效性,以及当该信号有效时可从设备读取、向设备写入、从设备提取或否则与设备交换(例如,通过由系统的一些其它组件产生的读取或写入)数据或程序指令。在一个实施方式中,当系统保持在第一状态中时,微控制器可从非易失性存储器提取程序指令/数据,并将程序指令/数据装入到微控制器的存储器中。
在206中,一旦控制器完成了数据检索或与设备的数据交换,或确定了它可能不再确保安全的访问,微控制器就可通过控制信号重新配置接口以由系统中的处理器例如通过控制对设备的访问的开关来实现访问,如以下将更详细描述的。
在208中,一旦微控制器将设备配置成通过系统中的处理器实现访问,微控制器就可改变或允许改变系统状态,因而允许系统中的处理器访问共享设备。例如,在系统状态依赖于管理信号如系统复位信号或被其指示的实施方式中,微控制器可使管理信号无效,因而将系统置于允许通过系统的处理器来访问共享设备的状态。提到另一方法,在程序指令/数据被装入之后,微控制器可将对共享设备如非易失性存储器的访问从微控制器转换到处理器,并从第一状态释放系统。
因此,使用上述方法的实施方式,微控制器102可通过系统的处理器例如主CPU来优先取得或暂停对设备的访问,或否则通过微控制器来配置对设备的安全访问;检索或否则与设备交换数据或程序指令;接着将对设备的访问返回到处理器,或否则通过微控制器放弃对设备的唯一或安全的访问。
应注意,在微控制器管理或控制系统的工作状态(例如,复位、POR、睡眠和与特定的系统行为有关的其它状态,其中微控制器知道系统不能或将不访问设备)的各种其它实施方式中,微控制器可监控(或控制)这样的系统状态,并利用这些状态来安全地访问设备,以例如控制和使用共享设备。注意,这些系统状态应使得微控制器管理系统何时将退出这些状态,或被提供关于系统何时再次需要共享接口(对设备)的控制的充分的警告。
作为一个例子,当系统被关闭时,微控制器可接管设备接口,即,可重新定向设备接口来(只)允许在掉电之前,即关掉最后的功率轨之前,通过微控制器访问。以这种方式,写入或与共享设备的其它交换可被储存或排队,以及可在最后的掉电之前保证它们的完成(例如,通过微控制器)
因此,微控制器102可与系统的处理器一起适度地共享对设备108的访问。应注意,在其它实施方式中,额外的微控制器也可使用上述技术与主机或主系统CPU共享设备。在进一步的实施方式中,设备的这样的共享也可用在其它方法中。例如,在一些实施方式中,多个处理器(例如,微控制器)可共享这样的设备,其中每个处理器可通过其它处理器依次暂停或阻止对设备的访问,同时它访问该设备。
其它实施方式
以下描述图2的上述一般方法的更具体的实施方式,其特别针对于在系统中主处理器和微控制器之间共享非易失性存储器。换句话说,在以下实施方式中,共享设备包括非易失性存储器设备。然而应注意,图3的实施方式仅仅意味着是示例性的,且意图不是将共享设备的类型或使用限制为任何特定的形式或功能。
图3—用于在系统中处理器之间共享非易失性存储器的方法
图3是根据一个实施方式用于在例如计算机系统的系统中的处理器之间例如处理器和微控制器之间共享非易失性存储器的方法的高级流程图。然而,应注意,在其它实施方式中,可按需要使用任何其它类型的存储器,例如RAM、ROM等。在不同实施方式中,所示的一些方法要素可按与所示不同的顺序被同时执行,或可被省略。也可按需要执行额外的方法要素。如所示,本方法可如下操作。
在302中,响应于系统状态变化,例如上电复位(POR)、系统复位或睡眠模式,其中微控制器例如系统中的微控制器102确保对非易失性设备的安全访问,或可阻止系统进入系统内的处理器可访问共享设备的状态,微控制器可设置控制信号或利用软件来使对共享设备的访问是使用微控制器的。换句话说,当系统变为一种状态例如第一状态时,其中保证微控制器102安全地访问共享设备的能力,而例如没有被处理器中断或干扰,微控制器可将系统保持在该状态中并对非易失性存储器的访问从处理器转换为微控制器。该第一状态的例子可包括下列项中的一个或更多:上电复位(POR)状态、系统复位状态或睡眠状态连同其它状态。
将系统保持在第一状态可禁止系统中的处理器访问系统中的非易失性存储器。类似地,状态变化可由管理信号如POR、系统复位、睡眠信号等产生或引起,这些信号可包括软件信号、时间、标记、信号交换等。在一个实施方式中,将系统保持在第一状态中可包括将管理信号保持在相应的状态中,例如将系统复位信号保持在复位状态中。
注意,管理信号例如POR和/或系统复位和/或所使用的任何其它类型的管理信号可以或可以不由微控制器产生。因此,例如,响应于收到的管理信号如POR信号或响应于产生管理信号例如POR信号,微控制器可产生或接收另一管理信号,例如系统复位信号,接着使另一管理信号在特定的状态如复位状态中保持或有效。
如上参考图1B提到的,在一个实施方式中,微控制器102可位于系统接口106(因此,系统内的处理器)和共享设备108例如非易失性存储器如嵌入式闪存之间,因此可截断系统接口和设备例如非易失性存储器之间的通信。如以下将更详细描述的,在一些实施方式中,当系统保持在第一状态中时,例如当系统复位信号保持在复位状态中时,对非易失性存储器的接口可通过微控制器配置成阻止系统中的处理器例如通过开关访问非易失性存储器。
图4示出图1B的微控制器102的示例性实施方式,其中设备108包括非易失性存储器。如图4所示,在本实施方式中,微控制器102包括系统复位线403,用于在系统管理总线101上将复位信号即系统复位信号(或其它管理信号)传送到系统接口106或从系统接口106传送出来(见图1B)。虽然这里描述的很多实施方式参考复位信号,应注意,在其它实施方式中,如上所述,可按需要使用其它信号,例如相应于或引起系统的CPU(或其它特定的处理器)对非易失性存储器访问的暂停的任何信号,或指示系统状态的任何信号,在系统状态中微控制器可安全访问非易失性存储器,其包括软件事件、标记、信号交换、信号等。注意,图4仅示出直接与本发明的实施方式有关的微控制器的特征,即,为了简洁和简单,对理解本发明不必要的组件被省略。
如上讨论的,在不同实施方式中,对共享设备的访问从处理器转换到微控制器可通过硬件、通过软件或通过软件和硬件的组合来执行。同样如上讨论的,术语“信号”可表示硬件信号和/或软件信号,例如软件事件、消息、标记、信号交换等,即,术语“管理信号”可指硬件信号或软件信号。
同样如上所示,在优选实施方式中,微控制器为系统控制和管理上电复位(POR),因而可按通过系统的主处理器优先取得对设备访问的方式来响应于和/或产生与上电复位或系统复位有关的信号或软件事件或消息(或其它管理信号),因而便于共享否则不可能被共享的设备。在一些实施方式中,系统状态的变化可管理信号如由微控制器产生或接收的系统复位或POR信号产生或指示。然而应注意,在一些实施方式中,接口的方向控制,即系统的哪个组件可访问非易失性存储器的控制,可与管理(例如,系统复位或POR)信号无关。换句话说,微控制器可控制共享设备接口是否指向系统的处理器或微控制器,而与管理(例如,系统复位或POR)信号无关。而且,在一些实施方式中,代替硬件信号或除了硬件信号以外,微控制器还可响应于软件事件、消息、标记、信号交换等,其可指示系统状态何时使得微控制器确保对共享设备例如对非易失性存储器的安全访问。
在304中,当系统在第一状态中,也就是在微控制器确保对设备的安全访问、或可通过系统中的处理器禁止对非易失性存储器的访问、以及并适当配置对非易失性存储器的访问的状态,微控制器可检索数据或与非易失性存储器交换数据。例如,当系统保持在第一状态中时,微控制器可从非易失性存储器提取程序指令/数据,并将程序指令/数据装入到微控制器的存储器中。
在一个实施方式中,将系统保持在第一状态中可包括将系统复位信号(或其它管理信号)保持在复位状态中,例如使系统复位有效。当系统复位信号保持在复位状态中,且非易失性存储器的接口配置成只允许由微控制器访问时,微控制器可从非易失性存储器提取程序指令/数据,并将程序指令/数据装入到微控制器的存储器中,或否则访问非易失性存储器。换句话说,微控制器可将系统复位信号保持在复位状态中(例如,在系统管理总线101上通过系统复位线403),即,可维持系统复位信号的有效性,以及当系统复位信号有效时可从非易失性存储器提取,即读取、获得或否则接收(例如,通过由系统的一些其它组件产生的读取)程序指令/数据,并将程序指令/数据装入到或写入微控制器的存储器中。注意,微控制器的存储器优选地为RAM(随机存取存储器),虽然可按需要使用任何类型的可重写的存储器。如上面提到的,在一些实施方式中,程序指令/数据可包括程序固件代码,该代码可例如被嵌入式微控制器用于启动或复位功能,例如用于初始化微控制器连同其它用途。在一些实施方式中,微控制器可以是或包括计算机系统的外围设备控制器。例如,在一个示例性实施方式中,嵌入式微控制器可以是键盘控制器,以及非易失性存储设备108可存储键盘控制器(KBC)代码,虽然在其它实施方式中,可按需要使用任何其它程序指令/数据或数据。
再次参考图4,如可看到的,在本实施方式中,微控制器102可包括或连接到主机存储器总线105并可包括或连接到设备总线107,如图1B所示,主机存储器总线105可连接到系统接口,以及在本实施方式中设备总线107是可连接到共享非易失性存储设备108的非易失性存储器总线107。注意,在所示实施方式中,主机存储器总线105和非易失性存储器总线107每个都包括三条线,每一条线用于数据、时钟和CSb信号,其中CSb代表芯片选择条(Chip Select bar),其为芯片选择的低真实版本(low trueversion),因此是块的地址结构的一部分。在一个实施方式中,主机存储器总线105和非易失性存储器总线107是SPI(串行外围接口)总线,虽然可按需要使用其它协议。注意,在一些实施方式中,主机存储器总线105和非易失性存储器总线107可被考虑为相同的总线,例如存储器总线,微控制器102插入其中以可转换地截取并可能重新定向总线上的信号。
如图4所示,在本实施方式中,微控制器102包括由开关控制器406控制的开关404,用于提供对主机存储器总线105和非易失性存储器总线107例如对存储器总线的转换功能。在一些实施方式中,开关404可包括Q开关,虽然应注意,术语“Q开关”可不仅指实际Q开关,而且也指功能等效物或类似物。提到另一方法,开关404可为“概念Q开关”,其可执行Q开关的功能(或类似于Q开关的功能),但其可用不同于Q开关的方法实现该功能。注意,在图4的实施方式中,开关404包括用于每个存储器总线线路的相应开关,如由“X3”(第三时间)标志所示。因此,存储器总线上的每条线可独立地转换,虽然在优选实施方式中,这些线可全部一起转换,因而暂停或禁止主机接口106和非易失性存储器108之间的通信。当然,在其它实施方式中,可按需要使用任何数量的总线线路/开关.
应注意,在其它实施方式中,微控制器102可以不包括开关404,而相反可连接到在微控制器外部的开关。该方法的一个好处是它可节省微控制器上的管脚。
如图4进一步示出的,存储器总线上的每条线都可连接到用于在存储器总线(即,设备总线)和微控制器102之间传递数据/信号的相应的缓冲器,其中如上所述,微控制器102的大部分内部组件从图中省略了。因此,如图4所示,微控制器102可操作来例如通过将开关置于高阻抗状态而可转换地优先取得和抑制在主机接口106和非易失性存储器108之间的存储器总线(主机存储器总线和非易失性存储器总线)上的信号流动,并且当主机接口106和非易失性存储器108之间的通信暂停时从非易失性存储器108提取指令/数据。因此,微控制器可操作来配置设备(例如,开关)的接口以调节并加强对设备的安全访问。
在306中,一旦控制器完成了数据检索或与非易失性存储器的数据交换,或确定了它可能不再保证安全的访问,微控制器就可通过控制信号重新配置接口,以通过系统中的处理器实现访问,例如,通过控制对非易失性存储器的访问的开关。
在更具体的实施方式中,在微控制器从非易失性存储器装入程序指令/数据之后,微控制器可从复位状态释放系统复位信号,因而允许系统中的处理器访问非易失性存储器。换句话说,当通过微控制器102完成从非易失性存储器108提取指令/数据时,微控制器可例如通过开关404终止主机接口106和非易失性存储器108之间的通信的暂停或优先提取,因而允许这样的通信的恢复。
因此,使用上述方法的实施方式,微控制器102可抢占或暂停主CPU与非易失性存储器的通信,并从非易失性存储器读取指令/数据,以例如在主系统即主CPU的运行之前或与该运行独立而初始化微控制器102和/或执行其它功能,因而与主系统共享非易失性存储器。例如,在一些实施方式中,微控制器除了可初始化代码/数据以外还可提取与预引导安全操作有关的程序指令/数据,并可操作来在主系统的启动之前执行这样的预引导安全操作,因而对系统提供额外的安全。
图5是根据一个实施方式示出上面方法的定时方面的信号定时示意图。如图5所示,在此特定的实施方式中,在指示电源电压有效,即,在有效电平并稳定的VCC PWRGD(“功率有效”)信号之后,提供VCC,即电源电压。应注意,用于这些信号或电压的特定名称或标志仅仅是示例性的,且不意味着将所使用的信号或电压限制为任何特定的名称或表示。
如所示的,一旦电源电压稳定了,微控制器102就可将(产生或接收的)系统复位信号保持在复位状态中,在这里示出在“低”状态(例如,“低”或负有效状态)中,在此时间期间,微控制器102可从非易失性存储器提取和装入指令/数据,例如控制器固件代码,且在此期间,由于保持在复位状态中的系统复位信号,主机,即主系统CPU,被禁止访问非易失性存储器。同样如图5所示,一旦装入完成,复位信号就变得无效(图5中示出为被置于“高”状态中),此后非易失性存储器可通过主机或主系统CPU访问。
因此,微控制器可适度地共享主系统的非易失性存储器的使用。应注意,在其它实施方式中,额外的微控制器也可使用上述技术与主机或主系统CPU共享非易失性存储器(或设备)。在进一步的实施方式中,非易失性存储器的这样的共享也可用在其它方法中。例如,在一些实施方式中,多个微控制器可共享非易失性存储器(例如,其未被主系统CPU使用),其中每个微控制器可依次暂停或阻止其它处理器对非易失性存储器的访问,同时它从存储器装入指令/数据。因此,参考图3描述的不同实施方式可允许嵌入式微控制器从非易失性存储器设备上载数据和它的固件,所述设备已经存在于系统中,因此节省成本并避免与用于微控制器的私用闪存或ROM存储器相关联的问题。
注意,在不同的实施方式中,系统变成确保微处理器对非易失性存储器(或设备)的安全访问的状态可由软件或硬件执行或在中间调解。换句话说,在一些实施方式中,状态变化可响应于硬件信号,例如POR信号等,但在其它实施方式中,状态变化可响应于软件事件、标记、软件条件、软件消息、软件信号交换等等。提到另一方法,本发明的实施方式意图是实质上包括嵌入式控制器可确定它可安全地控制共享的非易失性存储器的任何情况,不管“安全”系统通过软件或硬件被中间调解还是用信号通知。
因此,这里描述的本发明的不同实施方式可允许系统内的嵌入式微控制器和处理器共享没有设计成被共享的设备。
Claims (25)
1.一种系统,包括:
非易失性存储器;
处理器;以及
微控制器,其连接到所述非易失性存储器和所述处理器,其中所述微控制器配置成:
响应于系统状态到第一状态的变化,其中确保所述微控制器对所述非易失性存储器的安全访问,将所述系统保持在所述第一状态中,并将对所述非易失性存储器的访问从所述处理器转换到所述微控制器;
当所述系统保持在所述第一状态中时,从所述非易失性存储器提取程序指令/数据,并将所述程序指令/数据装入到所述微控制器的存储器中;以及
在装入所述程序指令/数据之后,将对所述非易失性存储器的访问从所述微控制器转换到所述处理器,并从所述第一状态释放所述系统。
2.如权利要求1所述的系统,其中系统状态到所述第一状态的所述变化由软件执行。
3.如权利要求1所述的系统,其中所述第一状态包括下列项中的一个或更多:
上电复位(POR)状态;
系统复位状态;或
睡眠状态。
4.如权利要求1所述的系统,其中所述程序指令/数据包括用于所述微控制器的固件代码和/或数据。
5.如权利要求1所述的系统,所述微控制器是用于计算机系统的外围设备控制器。
6.一种用于在系统中处理器和微控制器之间共享非易失性存储器的方法,包括:
响应于系统状态到第一状态的变化,其中确保所述微控制器对所述非易失性存储器的安全访问,将所述系统保持在所述第一状态中,并将对所述非易失性存储器的访问从所述处理器转换到所述微控制器;
当所述系统保持在所述第一状态中时,从所述非易失性存储器提取程序指令/数据,并将所述程序指令/数据装入到所述微控制器的存储器中;以及
在装入所述程序指令/数据之后,将对所述非易失性存储器的访问从所述微控制器转换到所述处理器,并从所述第一状态释放所述系统。
7.如权利要求6所述的方法,其中系统状态到所述第一状态的所述变化由软件执行。
8.如权利要求6所述的方法,其中所述第一状态包括下列项中的一个或更多:
上电复位(POR)状态;
系统复位状态;或
睡眠状态。
9.如权利要求6所述的方法,其中所述程序指令/数据包括用于所述微控制器的固件代码和/或数据。
10.如权利要求6所述的方法,所述微控制器是用于计算机系统的外围设备控制器。
11.一种系统,包括:
非易失性存储器;
处理器;以及
微控制器,其连接到所述非易失性存储器和所述处理器,其中所述微控制器配置成:
响应于上电复位,将系统复位信号保持在复位状态中,因而禁止所述处理器访问所述非易失性存储器;
当所述系统复位信号保持在所述复位状态中时,从所述非易失性存储器提取程序指令/数据,并将所述程序指令/数据装入到所述微控制器的存储器中;以及
在装入所述程序指令/数据之后,允许所述系统中的所述处理器访问所述非易失性存储器,并从所述复位状态释放所述系统复位信号。
12.如权利要求11所述的系统,其中所述程序指令/数据包括用于所述微控制器的固件代码和/或数据。
13.如权利要求12所述的系统,所述微控制器是用于计算机系统的外围设备控制器。
14.如权利要求11所述的系统,其中所述微控制器通过非易失性存储器总线连接到所述非易失性存储器,以及其中所述微控制器可操作来通过所述非易失性存储器总线而从所述非易失性存储器提取所述程序指令/数据。
15.如权利要求14所述的系统,其中所述微控制器通过主机存储器总线连接到所述处理器,以及其中所述微控制器可操作来可转换地截断或开通所述处理器和所述非易失性存储器之间的通信。
16.如权利要求15所述的系统,其中所述微控制器包括或连接到介于所述非易失性存储器总线和所述主机存储器总线之间的开关,其中所述开关可由所述微控制器控制,以可转换地截断或开通所述处理器和所述非易失性存储器之间的通信。
17.一种用于在系统中处理器和微控制器之间共享非易失性存储器的方法,包括:
响应于上电复位,将系统复位信号保持在复位状态中,因而禁止所述处理器访问所述非易失性存储器;
当所述系统复位信号保持在所述复位状态中时,从所述非易失性存储器提取程序指令/数据,并将所述程序指令/数据装入到所述微控制器的存储器中;以及
在装入所述程序指令/数据之后,允许所述系统中的所述处理器访问所述非易失性存储器,并从所述复位状态释放所述系统复位信号。
18.如权利要求17所述的方法,其中所述程序指令/数据包括用于所述微控制器的固件代码和/或数据。
19.如权利要求17所述的方法,所述微控制器是用于计算机系统的外围设备控制器。
20.如权利要求17所述的方法,其中所述微控制器通过系统复位总线连接到所述处理器,以及其中所述微控制器可操作来使所述系统复位总线上的所述系统复位信号有效。
21.如权利要求17所述的方法,其中所述微控制器通过非易失性存储器总线连接到所述非易失性存储器,以及其中所述微控制器可操作来通过所述非易失性存储器总线而从所述非易失性存储器提取所述程序指令/数据。
22.如权利要求21所述的方法,其中所述微控制器通过主机存储器总线连接到所述处理器,以及其中所述微控制器可操作来可转换地截断或开通所述处理器和所述非易失性存储器之间的通信。
23.如权利要求22所述的方法,其中所述微控制器包括或连接到介于所述非易失性存储器总线和所述主机存储器总线之间的开关,其中所述开关可由所述微控制器控制,以可转换地截断或开通所述处理器和所述非易失性存储器之间的通信。
24.一种系统,包括:
处理器;
微控制器;以及
设备,其连接到所述处理器和所述微控制器;
其中所述微控制器配置成:
响应于系统状态到第一状态的变化,其中确保所述微控制器对所述设备的安全访问,设置一个或更多控制信号以导致使用所述微控制器访问共享的所述设备;
当所述系统处于所述第一状态中时,对于所述设备检索数据或与所述设备交换数据;
当所述控制器完成了对于所述设备的数据检索或数据交换,或者确定了它不再确保安全访问时,通过控制信号重新配置接口以使能够由所述处理器实现访问;以及
改变或允许改变所述系统状态,因而允许所述系统中的所述处理器访问共享的所述设备。
25.一种用于在系统中处理器和微控制器之间共享设备的方法,包括:
响应于系统状态到第一状态的变化,其中确保所述微控制器对所述设备的安全访问,设置一个或更多控制信号以导致使用所述微控制器访问共享的所述设备;
当所述系统处于所述第一状态中时,对于所述设备检索数据或与所述设备交换数据;
当所述控制器完成了对于所述设备的数据检索或数据交换,或者确定了它不再确保安全访问时,通过控制信号重新配置接口以使能够由所述处理器实现访问;以及
改变或允许改变所述系统状态,因而允许所述系统中的所述处理器访问共享的所述设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210196768.1A CN102981983B (zh) | 2007-04-10 | 2008-04-10 | 在处理器之间共享设备的系统和方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US91086307P | 2007-04-10 | 2007-04-10 | |
US60/910,863 | 2007-04-10 | ||
US11/958,601 | 2007-12-18 | ||
US11/958,601 US7930576B2 (en) | 2007-04-10 | 2007-12-18 | Sharing non-sharable devices between an embedded controller and a processor in a computer system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210196768.1A Division CN102981983B (zh) | 2007-04-10 | 2008-04-10 | 在处理器之间共享设备的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101441607A true CN101441607A (zh) | 2009-05-27 |
CN101441607B CN101441607B (zh) | 2012-08-01 |
Family
ID=39854848
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210196768.1A Active CN102981983B (zh) | 2007-04-10 | 2008-04-10 | 在处理器之间共享设备的系统和方法 |
CN2008100919010A Active CN101441607B (zh) | 2007-04-10 | 2008-04-10 | 在处理器之间共享设备的系统和方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210196768.1A Active CN102981983B (zh) | 2007-04-10 | 2008-04-10 | 在处理器之间共享设备的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7930576B2 (zh) |
CN (2) | CN102981983B (zh) |
TW (1) | TWI363276B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103975286A (zh) * | 2011-11-23 | 2014-08-06 | 飞思卡尔半导体公司 | 微处理器以及管理其重置事件的方法 |
CN106575276A (zh) * | 2014-08-18 | 2017-04-19 | 赛灵思公司 | 子系统的电源管理控制 |
CN107111575A (zh) * | 2014-11-12 | 2017-08-29 | 罗伯特·博世有限公司 | 用于在计算机系统内部传输数据的方法和存储管理装置、存储系统和计算机系统 |
CN108351775A (zh) * | 2015-10-30 | 2018-07-31 | 德州仪器公司 | 嵌入式多处理器系统的启动时间优化的方法和系统 |
CN111488296A (zh) * | 2019-01-28 | 2020-08-04 | 爱思开海力士有限公司 | 存储器系统 |
CN113010470A (zh) * | 2021-03-30 | 2021-06-22 | 上海西井信息科技有限公司 | 边缘节点远程控制系统、方法、设备及存储介质 |
CN113205838A (zh) * | 2020-01-31 | 2021-08-03 | 慧与发展有限责任合伙企业 | 用于在其他处理器保持复位时配置子系统的处理器 |
CN113672549A (zh) * | 2021-07-28 | 2021-11-19 | 北京时代民芯科技有限公司 | 一种基于非共享存储多核处理器的微系统架构 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101520745B (zh) * | 2008-02-27 | 2012-03-28 | 联想(北京)有限公司 | 数据处理设备及其状态切换方法 |
US9105323B2 (en) | 2009-01-23 | 2015-08-11 | Micron Technology, Inc. | Memory device power managers and methods |
CN101847043B (zh) * | 2009-03-25 | 2012-11-21 | 联想(北京)有限公司 | 共用存储设备的方法及移动终端 |
US8543755B2 (en) | 2011-03-15 | 2013-09-24 | Nuvoton Technology Corporation | Mitigation of embedded controller starvation in real-time shared SPI flash architecture |
US8688944B2 (en) | 2011-09-20 | 2014-04-01 | Nuvoton Technology Corporation | Memory sharing between embedded controller and central processing unit chipset |
CN105122259B (zh) | 2013-04-23 | 2018-06-29 | 惠普发展公司,有限责任合伙企业 | 控制器和用于检索系统引导代码的系统及方法 |
WO2014175867A1 (en) | 2013-04-23 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Verifying controller code and system boot code |
CN109240165B (zh) * | 2013-08-28 | 2021-06-22 | 华为技术有限公司 | 一种基于i/o接口的信号输出方法和装置 |
KR20180049340A (ko) * | 2016-10-31 | 2018-05-11 | 삼성전자주식회사 | 스토리지 장치 및 그것의 링크 상태 제어 방법 |
US10430200B2 (en) * | 2017-08-14 | 2019-10-01 | Xilinx, Inc. | Slave processor within a system-on-chip |
US11418335B2 (en) | 2019-02-01 | 2022-08-16 | Hewlett-Packard Development Company, L.P. | Security credential derivation |
WO2020167283A1 (en) | 2019-02-11 | 2020-08-20 | Hewlett-Packard Development Company, L.P. | Recovery from corruption |
CN111857784A (zh) * | 2019-04-24 | 2020-10-30 | 西安诺瓦电子科技有限公司 | 固件升级方法和固件升级系统 |
EP3779699B1 (en) * | 2019-08-16 | 2024-06-05 | Aptiv Technologies AG | Method for checking program execution of a microcontroller, external device, system and non-transitory computer readable medium |
CN114385067B (zh) * | 2020-10-19 | 2023-07-18 | 澜起科技股份有限公司 | 用于存储器系统的数据更新方法和存储器控制器 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5428760A (en) * | 1991-12-12 | 1995-06-27 | Intel Corporation | Circuitry and method for sharing internal microcontroller memory with an external processor |
US5634004A (en) * | 1994-05-16 | 1997-05-27 | Network Programs, Inc. | Directly programmable distribution element |
US5819087A (en) * | 1996-07-19 | 1998-10-06 | Compaq Computer Corporation | Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events |
US5949997A (en) * | 1997-01-03 | 1999-09-07 | Ncr Corporation | Method and apparatus for programming a microprocessor using an address decode circuit |
EP1226493B1 (en) * | 1999-11-05 | 2006-05-03 | Analog Devices, Inc. | Bus architecture and shared bus arbitration method for a communication processor |
US6925522B2 (en) * | 2000-10-26 | 2005-08-02 | Lite-On It Corporation | Device and method capable of changing codes of micro-controller |
US7386326B2 (en) * | 2001-09-04 | 2008-06-10 | Texas Instruments Incorporated | Programmable task-based co-processor |
US7380085B2 (en) * | 2001-11-14 | 2008-05-27 | Intel Corporation | Memory adapted to provide dedicated and or shared memory to multiple processors and method therefor |
KR20050023699A (ko) * | 2003-09-02 | 2005-03-10 | 삼성전자주식회사 | 복수의 cpu 시스템에서 디바이스를 공유하는 방법 및장치 |
-
2007
- 2007-12-18 US US11/958,601 patent/US7930576B2/en active Active
-
2008
- 2008-04-10 CN CN201210196768.1A patent/CN102981983B/zh active Active
- 2008-04-10 TW TW097113118A patent/TWI363276B/zh active
- 2008-04-10 CN CN2008100919010A patent/CN101441607B/zh active Active
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103975286A (zh) * | 2011-11-23 | 2014-08-06 | 飞思卡尔半导体公司 | 微处理器以及管理其重置事件的方法 |
CN106575276A (zh) * | 2014-08-18 | 2017-04-19 | 赛灵思公司 | 子系统的电源管理控制 |
CN107111575A (zh) * | 2014-11-12 | 2017-08-29 | 罗伯特·博世有限公司 | 用于在计算机系统内部传输数据的方法和存储管理装置、存储系统和计算机系统 |
CN108351775B (zh) * | 2015-10-30 | 2022-12-23 | 德州仪器公司 | 嵌入式多处理器系统的启动时间优化的方法和系统 |
CN108351775A (zh) * | 2015-10-30 | 2018-07-31 | 德州仪器公司 | 嵌入式多处理器系统的启动时间优化的方法和系统 |
US11681534B2 (en) | 2015-10-30 | 2023-06-20 | Texas Instruments Incorporated | Method and system for boot time optimization of embedded multiprocessor systems |
CN111488296A (zh) * | 2019-01-28 | 2020-08-04 | 爱思开海力士有限公司 | 存储器系统 |
US11593285B2 (en) | 2019-01-28 | 2023-02-28 | SK Hynix Inc. | Memory system |
CN113205838A (zh) * | 2020-01-31 | 2021-08-03 | 慧与发展有限责任合伙企业 | 用于在其他处理器保持复位时配置子系统的处理器 |
CN113205838B (zh) * | 2020-01-31 | 2023-01-06 | 慧与发展有限责任合伙企业 | 用于在其他处理器保持复位时配置子系统的处理器 |
CN113010470A (zh) * | 2021-03-30 | 2021-06-22 | 上海西井信息科技有限公司 | 边缘节点远程控制系统、方法、设备及存储介质 |
CN113672549A (zh) * | 2021-07-28 | 2021-11-19 | 北京时代民芯科技有限公司 | 一种基于非共享存储多核处理器的微系统架构 |
CN113672549B (zh) * | 2021-07-28 | 2024-04-02 | 北京时代民芯科技有限公司 | 一种基于非共享存储多核处理器的微系统架构 |
Also Published As
Publication number | Publication date |
---|---|
CN102981983A (zh) | 2013-03-20 |
TWI363276B (en) | 2012-05-01 |
US7930576B2 (en) | 2011-04-19 |
US20080256374A1 (en) | 2008-10-16 |
CN101441607B (zh) | 2012-08-01 |
TW200907690A (en) | 2009-02-16 |
CN102981983B (zh) | 2016-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101441607B (zh) | 在处理器之间共享设备的系统和方法 | |
CN101120324B (zh) | 用于在存储设备中设置保留区域的存储管理装置和方法 | |
CN102200916B (zh) | 电子设备、可配置的部件及该部件的配置信息存储方法 | |
US9158716B2 (en) | Memory controller supporting concurrent volatile and nonvolatile memory modules in a memory bus architecture | |
US7761623B2 (en) | Main memory in a system with a memory controller configured to control access to non-volatile memory, and related technologies | |
CN102473089B (zh) | 用于双操作系统的文件系统 | |
US8392659B2 (en) | Extending cache capacity on multiple-core processor systems | |
CN101479707A (zh) | 为混合磁盘驱动器配置非易失性存储器的方法 | |
CN101133404B (zh) | 用于与存储器装置通信的系统和方法 | |
US6237103B1 (en) | Power sequencing in a data processing system | |
US8370548B2 (en) | Methods of assembly of a computer system with randomly accessible non-volatile memory | |
CN110050519A (zh) | 用于计算平台的模块化承载件形状因子 | |
CN109154918A (zh) | 自刷新状态机mop阵列 | |
CN110488673B (zh) | 一种低功耗模式的数据处理模块及数据处理方法 | |
CN107408090A (zh) | 输入/输出控制器访问通道的动态配置 | |
CN110083380A (zh) | 固件更新方法及使用此方法的电子装置 | |
CN103797435A (zh) | 用于控制两个集成电路之间的事务交换的方法 | |
CN108664440A (zh) | 接口服务器和机箱 | |
US10996876B2 (en) | Systems and methods for dynamically modifying memory namespace allocation based on memory attributes and application requirements | |
CN111522602A (zh) | 通信装置的启动方法 | |
CN208907999U (zh) | 一种新型Raid扣卡 | |
US7539819B1 (en) | Cache operations with hierarchy control | |
CN104461977A (zh) | 记忆卡存取装置、其控制方法与记忆卡存取系统 | |
CN110058672A (zh) | 用于管理集成电路中的电力域的技术 | |
CN104077245B (zh) | 一种nvram控制方法和系统 |
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 |