CN1564139A - 数据撷取方法及系统 - Google Patents

数据撷取方法及系统 Download PDF

Info

Publication number
CN1564139A
CN1564139A CNA2004100315915A CN200410031591A CN1564139A CN 1564139 A CN1564139 A CN 1564139A CN A2004100315915 A CNA2004100315915 A CN A2004100315915A CN 200410031591 A CN200410031591 A CN 200410031591A CN 1564139 A CN1564139 A CN 1564139A
Authority
CN
China
Prior art keywords
mentioned
data
buffer zone
memory access
direct 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.)
Granted
Application number
CNA2004100315915A
Other languages
English (en)
Other versions
CN1307560C (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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Priority to CNB2004100315915A priority Critical patent/CN1307560C/zh
Publication of CN1564139A publication Critical patent/CN1564139A/zh
Application granted granted Critical
Publication of CN1307560C publication Critical patent/CN1307560C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种数据撷取方法,适用于一数据撷取系统含有一处理器、一北桥芯片、一PCI-Express的端点装置(endpoint device)、直接内存存取缓冲区(DMA buffer)以及一高速缓存用以存放数据,包括部分地回写及无效化(partial write back and inval idate)高速缓存,其中高速缓存中被回写的数据存放至直接内存存取缓冲区;指示PCI-Express的端点装置使用一非监看处理技术(non-snoop transaction),来读取直接内存存取缓冲区的数据;以及当北桥芯片接收到一非监看读取要求时,不监看处理器,而直接撷取直接内存存取缓冲区中的数据。

Description

数据撷取方法及系统
技术领域
本发明涉及一种资料撷取方法,特别是涉及一种支持非监看(non-snoop)处理技术的数据传输方法。
背景技术
一般来说,现在的计算机系统均具有一个或多个处理器单元,并且每一个处理器都会具有专属的高速缓存。高速缓存为一个小型、速度快、昂贵、零等待状态的内存,用来存放经常使用到的程序代码及数据。此外,高速缓存介接于相关的处理器与系统总线之间,用来桥接快速的处理器周期时间与慢速的内存存取时间。
由于先进电子产品,对速度及频宽上的需求,一种非监看处理技术(non-snoop transaction)被提出,用以使北桥芯片,不须监看(snoop)处理器,而读取或写入主存储器的直接内存存取(direct memory access,DMA)缓冲器。非监看处理技术具有两大优点,处理器总线(CPU bus)可以让其它主控器使用,以及存取延迟(access latency)是可以被预期的。
举例来说,在读取数据时,应用非监看处理技术的主控器,永远都是由主存储器(DRAM)读取数据,所以可预期为读取DRAM的延迟(read-DRAM-latency)。但使用监看处理技术(snoop transaction)的主控器,就有可能是读取DRAM的延迟(read-DRAM-latency)或是监视CPU的延迟(snoop-CPU-latency)。在写入数据时,应用非监看处理技术的主控器,都是将数据写入主存储器,例如通过回写(post write)技术。但使用监看处理技术的主控器,假如监视的结果为数据覆写(hit dirty),于是要等待CPUwrite back高速缓存,并且与北桥芯片的数据整合之后,再写入到主存储器。若监视的结果并非数据覆写(not hit dirty),当监看完成后,接着进行数据回写(post write)。
传统上有数种方法,通过非监看处理技术(non-snoop transaction)用以使北桥芯片,不须监看(snoop)处理器(CPU),而读取或写入主存储器的DMA缓冲器。然而,传统方法不是效能不佳,就是会有高速缓存数据一致性的问题(cache coherency issue)。
发明内容
有鉴于此,本发明的首要目的,在于改进非监视处理中的及时效能(realtime performance),同时维持高速缓存数据一致性。
为实现本发明的上述目的,本发明提供一种数据撷取方法,适用于一数据撷取系统含有一处理器、一北桥芯片、一PCI-Express的端点装置(endpoint device)、直接内存存取缓冲区(DMA buffer)以及一高速缓存用以存放数据,包括部分地回写及无效化(partial write back and invalidate)高速缓存,其中高速缓存中被回写的数据存放至直接内存存取缓冲区;指示PCI express的端点装置使用一非监看处理技术(non-snoop transaction),来读取直接内存存取缓冲区的数据;以及当北桥芯片接收到一非监看读取要求时,不监看处理器,而直接撷取直接内存存取缓冲区中的数据。
为实现本发明的上述目的,本发明还提供一种数据撷取系统,包括一PCI-Express的端点装置;一北桥芯片,耦接PCI-Express的端点装置;一主存储器,耦接上述北桥芯片,具有至少一直接内存存取缓冲区;一高速缓存,用以储存数据;以及一处理器,程序化以将高速缓存中的部分数据,回写至直接内存存取缓冲区中,且无效化高速缓存中的上述部分数据,并指示PCI express的端点装置使用一非监看处理技术,来读取直接内存存取缓冲区的数据,使得北桥芯片接收到一非监看读取要求时,不须监看处理器,直接撷取直接内存存取缓冲区中的数据。
为实现本发明的上述目的,本发明还提供一种数据撷取系统,包括一高速缓存,用以储存数据;一处理器,耦接高速缓存;一PCI-Express的端点装置;一主存储器,具有至少一直接内存存取缓冲区;以及一北桥芯片,耦接PCI-Express的端点装置,用以致使处理器将高速缓存中的部分数据,回写至直接内存存取缓冲区中,且无效化高速缓存中的上述部分数据,并指示PCI-Express的端点装置使用一非监看处理技术,来读取直接内存存取缓冲区的数据,使得北桥芯片接收到一非监看读取要求时,不须监看处理器,直接撷取直接内存存取缓冲区中的数据。
为了使本发明的上述和其它目的、特征、和优点能更明显易懂,下文特举一较佳实施例,并结合附图详细说明如下。
附图说明
图1为本发明的数据撷取系统的示意图。
图2为本发明的数据撷取方法的流程图。
附图符号说明
10:处理器;                12:高速缓存;
13:系统总线;              14:北桥芯片;
15:内存总线;              16:主存储器;
18:直接内存存取缓冲区;    21:PCI-Express link;
20:PCI-Express的端点装置。
具体实施方式
一般来说,当一处理器发出一读取要求,并且所要求的数据存在于其高速缓存中时,即发生一快取读取成功(cache read hit),微处理器可以不须存取主存储器,而由高速缓存中得到数据。若所要求的数据不存在于其高速缓存中时,即发生一快取读取失败(cache read miss),并且内存要求会被转发至系统,如同高速缓存不存在一样,当作由主存储器中撷取数据。在快取读取失败(cache read miss)发生时,由主存储器中撷取到的数据,由于统计上该笔数据会被处理器再存取的可能性,所以亦会被写入高速缓存中。同样地,当一处理器发出一写入要求时,(在一回写式高速缓存中时)写入的数据会被写入高速缓存中,而不须在系统总线上存取主存储器。这将可以增加处理器的效能且减少系统总线的使用,提供其它处理器及总线主控器更多的频宽。
一个有效率的高速缓存系统会具有高成功率(hit rate),也就是在整个内存存取过程中,快取成功的比率高。当一快取系统具有高成功率,大部分的存取皆可作为零等待的服务。因此,远离于其区域性内存(local memory)操作的一处理器,会具有很低的“总线使用(bus utilization)”,这将会减少总线被处理器占用,使用其它总线主控器具有较多有效的频宽。此外,当处理器不须要控制总线时,它可以远离其区域性存储器操作,以增加计算机系统的效率。
典型的快取系统有两种,分别为“全部写入式高速缓存系统(write-through cache system)”以及“回写式高速缓存系统(write-backcache system)”。在write-through cache系统中,来自处理器的写入数据会被写入到高速缓存中,也会马上被写入到主存储器中。如此可确保高速缓存中的数据,与主存储器中数据的一致性。然而,write-through cache系统的缺点在于为了每一次处理器的写入,都需要占用系统总线。
在write-back cache系统中,来自处理器的写入数据只会被写入到高速缓存中,并且在其它装置要求该笔数据时,或是因为新数据要求而要被取代时,才会被写回到主存储器中。当处理器的写入数据只写入到高速缓存中时,存放在主存储器中对应地址上的数据,将被视为旧的、失效的。高速缓存的位置用以记住修改过的数据。在write-back cache系统中,在其它总线主控器在使用总线时,需要快取控制器来监看(snoop)。
一般来说,藉由一快取控制器来进行高速缓存的管理。高速缓存最重要的管理政策就是维护高速缓存数据的一致性(coherency)。高速缓存的一致性就是指任何的总线装置都可以接收到最新版本的数据。
在独立总线主控器可以存取主存储器的计算机系统中,有可能一个总线主控器,例如另一处理器、直接存取控制器、网络或磁盘适配卡或影像处理卡,将会修改与高速缓存完全相同的主存储器位置的内容。当此情形发生时,高速缓存则会视为存有失效的数据。如果处理器不小心读取到无效的数据将会发生问题。因此,为了维持高速缓存的一致性,当处理器没有控制总线时,藉由一快取控制器来监看系统总线,看是否有其它总线主控器存取主存储器是有必要的。此监看总线的技术,系称作snooping。
在write-back cache系统中,因为先前的处理器写入(previousprocessor write)已经改变了高速缓存中的数据(尚未更新到主存储器中),因此在主存储器被一总线主控器读取的周期中,快取控制器仍然必须要监看系统总线,称为“读取监看(read snooping)”。在读取监看成功(read snoophit)的情形下,即高速缓存含有尚未更新到主存储中的数据,一般来说快取控制器会提供相关的数据到主存储器以及提出要求的总线。
在内存写入周期中,因为总线主控器会写入或修改存在于高速缓存中内存的位置,所以快取控制器仍然需要监看系统总线,称为“写入监看(writesnooping)”。读取监看成功(write snoop hit)的情形下,在快取控制器中任一个被标示为无效(invalid)的快取项目(cache entry),表示此项目不再正确,或此高速缓存已经和主存储器一起更新过了。
因此,在write-back cache系统中,当一总线主控器读取或写入一主存储器时,或在write-through cache系统中,当一总线主控器写入一主存储器时,快取控制器必须要锁住系统位置,看看将被存取的主存储器的位置,是否有存在于高速缓存中。如果来自此位置上的数据存在于高速缓存中,快取控制器接着会依据已经发生的读取监看成功(read snoop hit)或写入监看成功(write snoop hit),采取适当的动作。这将可以避免储存于主存储器及高速缓存中过时(stale)的数据,藉由维持高速缓存的一致性。虽然,在write-back cache系统中,当总线主控器读取及写入主存储器时都需要监看系统总线,但其系统效能却比write-through cache系统更佳。
图1中所示为本发明的数据撷取系统的示意图。数据撷取系统100包括一处理器10、一高速缓存12、一北桥芯片14、一直接内存存取缓冲区(DMAbuffer)18、一PCI-Express的端点装置(endpoint device)20。
在本实施例中,PCI-Express的端点装置20用以作为一总线主控器,然而并非用以限定本发明。处理器10藉由一系统总线13耦接至北桥芯片14,北桥芯片14藉由一内存总线15主存储器16(含有直接内存存取缓冲区18),而北桥芯片14藉由一PCI-Express link21耦接至PCI-Express的端点装置20。举例来说,PCI-Express的端点装置20为一另一处理器、直接存取控制器、网络或磁盘适配卡或影像处理卡等等。另外,主存储器16分割一部分作为非监视处理(non-snooped)的DMA缓冲区18,并且DMA缓冲区18设定成可被高速缓存12以写回(write back)的方式进行数据存取。
图2为本发明的数据撷取方法的流程图。当一软件或驱动程序欲藉由一非监看读取处理(non-snoop read transaction)对DMA缓冲区18进行读取时,则先进行步骤S10,部分地写回及无效化高速缓存12。
在传统write back cache系统中,若要将高速缓存12中已被修改过的数据更新到主存储器16中,则必须藉由处理器10去执行一个“高速缓存的写回及无效化(cache write back and invalidate;WBINV)”指令,清空(flush)整个高速缓存12,即将高速缓存12中已被修改过的数据都更新到主存储器16中。
然而,若该软件(或驱动程序)仅仅要对DMA缓冲区18进行存取,就因此将整个高速缓存12中的数据更新至主存储器16(含DMA缓冲区18),即藉由处理器10执行“高速缓存的写回及无效化(WBINV)”指令,而清空(flush)整个高速缓存12,将会造成及时效能(real time performance)不佳。故本发明仅部分地写回及无效化高速缓存12,将与DMA缓冲区18有关的数据更新至DMA缓冲区18中,以便上述软件(驱动程序)读取DMA缓冲区18。
在本发明中提供两种方法来实现步骤S10,然并非用以限定本发明。在此实施例中是采用第一种方式来实现步骤S10,即增加一新指令给处理器10,该指令称为“高速缓存的部分写回及无效化(partial cache write back andinvalidate;PWBINV)”,用以根据一第一、第二地址信息,将高速缓存12中的部分数据,写回到DMA缓冲区18中后,再无效化高速缓存12中的上述部分数据。举例来说,第一、第二地址数据可分为一启始地址及一结束地址,或是分为一启始地址及一长度数据。
也就是说,当一软件(或驱动程序)欲藉由一非监看读取处理(non-snoopread transaction)对DMA缓冲区18进行读取时,则根据一PWBINV指令程序化处理器10,而只将高速缓存12中与第一、第二地址信息有关的已修改数据更新至DMA缓冲区18中,而不将整个高速缓存12的数据更新至主存储器16中(即清空高速缓存12)。如此,将可维持高速缓存数据的一致性(coherency),并且避免及时效能(real time performance)不佳。
接着,步骤S20,该软件(或驱动程序)指示PCI express的端点装置20使用非监看技术,来读取DMA缓冲区18中的数据。然后,步骤S30,当北桥芯片14接收到PCI-Express的端点装置20所发出的“非监看处理的读取要求”时,直接撷取DMA缓冲区18中的数据,而不须监看处理器10。之后,再将所撷取的数据传送到PCI-Express的端点装置20。
第二实施例
在此实施例中采用另一种方式来实现步骤S10,此方法是在北桥芯片14中,藉由一第一缓存器(未显示)存放将用于高速缓存12的部分写回及无效化的启始地址,一第二缓存器(未显示)存放将用于高速缓存12的部分写回及无效化的结束地址,一第三缓存器(未显示)用以设定高速缓存的部分写回及无效化的操作状态。在本发明中,当第三缓存器被设为1时,北桥芯片14则会根据第一、第二缓存器中储存的启始地址及结束地址,致使处理器10将高速缓存中启始地址及结束地址范围内已修改的数据,写回到DMA缓冲区18中,再无效化高速缓存12中的该范围内的数据。
也就是说,当一软件或驱动程序欲藉由一非监看读取处理对DMA缓冲区18进行读取时,则会将一启始地址及一结束地址存放到北桥芯片14中的第一、第二缓存器中,并藉由一致能信号将第三缓存器中的操作状态改为1,以便致使处理器10将高速缓存中与第一、第二地址数据范围内数据更新至DMA缓冲区18中,而不将整个高速缓存12中修改过的数据,全部更新至主存储器16中(即清空高速缓存),如此,将可维持高速缓存数据的一致性(coherency),并且避免及时效能(real time performance)不佳。当高速缓存中与第一、第二地址数据范围内数据已经更新至DMA缓冲区18中后,北桥芯片14会将第三缓存器中的操作状态设为0。
接着,步骤S20,该软件(或驱动程序)指示PCI-Express的端点装置20使用非监看技术,来读取DMA缓冲区18中的数据。然后,步骤S30,当北桥芯片14接收到PCI-Express的端点装置20所发出的“非监看处理的读取要求”时,直接撷取DMA缓冲区18中的数据,而不须监看处理器10。之后,再将所撷取的数据传送到PCI-Express的端点装置20。
在本发明的数据撷取方法中,由于仅更新高速缓存12中的部分数据至DMA缓冲区18中,故可避免及时效能(real time performance)不佳,同时维持高速缓存数据一致性。
第三实施例
如图1中所示,本发明的数据撷取系统100包括一处理器10、一高速缓存12、一北桥芯片14、一直接内存存取缓冲区(DMA buffer)18、一PCI-Express的端点装置(endpoint device)20。
在本实施例中,PCI express的端点装置20用以作为一总线主控器,然并非用以限定本发明。在本发明中,PCI-Express的端点装置20为一另一处理器、直接存取控制器、网络或磁盘适配卡或影像处理卡等等。另外,主存储器16分割一部分作为非监视处理(non-snooped)的DMA缓冲区18,并且DMA缓冲区18设定成可被高速缓存12以写回(write back)的方式进行数据存取。
处理器10藉由一系统总线13耦接至北桥芯片14,高速缓存12可设置于处理器10内部或外部。在本实施例中,处理器10设计成可被一PWBINV指令程序化,以根据一第一、第二地址信息,将高速缓存12中的部分数据,写回到DMA缓冲区18中后,再无效化高速缓存12中的上述部分数据。举例来说,第一、第二地址数据可分为一启始址位及一结束地址,或是分为一启始地址及一长度数据。
因此,当一软件(或驱动程序)欲藉由一非监看读取处理(non-snoop readtransaction)对DMA缓冲区18进行读取时,会将“高速缓存的部分写回及无效化(partial cache write back and invalidate;PWBINV)”指令送至处理器10,于是处理器10执行PWBINV指令,根据一第一、第二地址信息,将高速缓存12中的部分数据,写回到DMA缓冲区18中后,再无效化高速缓存12中的上述部分数据。也就是说,处理器10仅将高速缓存12中与第一、第二地址数据有关的数据更新至DMA缓冲区18中,而不将整个高速缓存12中修正过的数据,全部更新至主存储器18中(即清空高速缓存12)。如此,将可维持高速缓存数据的一致性(coherency),并且避免及时效能(real timeperformance)不佳。
北桥芯片14是藉由一内存总线15耦接至主存储器16(含有直接内存存取缓冲区18),而北桥芯片是藉由一PCI-Express link 21耦接至PCI-Express的端点装置20。在处理器10将高速缓存中与第一、第二地址数据有关的数据更新至DMA缓冲区18中后,该软件(或驱动程序)接着会指示总线控器20,使用非监看技术来读取DMA缓冲区18中的数据。当北桥芯片14接收到PCI-Express的端点装置20所发出的“非监看处理的读取要求”时,直接撷取DMA缓冲区18中的数据,而不须监看处理器10。之后,再将所撷取的数据传送到PCI-Express的端点装置20。
第四实施例
如图1中所示,本发明的数据撷取系统100包括一处理器10、一高速缓存12、一北桥芯片14、一直接内存存取缓冲区(DMA buffer)18、一PCI-Express的端点装置(endpoint device)20。
在本实施例中,PCI-Express的端点装置20用以作为一总线主控器,然并非用以限定本发明。在本发明中,PCI-Express的端点装置20为一另一处理器、直接存取控制器、网络适配卡、磁盘适配卡或影像处理卡等等。另外,主存储器16分割一部分作为非监视处理(non-snooped)的DMA缓冲区18,并且DMA缓冲区18设定成可被高速缓存12以写回(write back)的方式进行数据存取。
处理器10藉由一系统总线13耦接至北桥芯片14,高速缓存12可设置于处理器10内部或外部。
北桥芯片14藉由一内存总线15耦接至主存储器16(含有直接内存存取缓冲区18),而北桥芯片14藉由一PCI-Express link 21耦接至PCI-Express的端点装置20。在本实施例中,北桥芯片14被设计成可根据一启始地址、一结束地址以及一致能信号,致使处理器10将高速缓存12中启始地址及结束地址范围内修改过的数据,写回到DMA缓冲区18中,再无效化高速缓存12中的该范围内的数据。
举例来说,在北桥芯片14内,藉由一第一缓存器存放将用于高速缓存12的部分写回及无效化的启始地址,一第二缓存器存放将用于高速缓存12的部分写回及无效化的结束地址,一第三缓存器用以设定高速缓存12的部分写回及无效化的操作状态。在第三缓存器被设为1时,北桥芯片14则会根据第一、第二缓存器中储存的启始地址及结束地址,致使处理器10将高速缓存12中启始地址及结束地址范围内修改过的数据,写回到DMA缓冲区18中,再无效化高速缓存12中的该范围内的数据。
因此,当一软件或驱动程序欲藉由一非监看读取处理对DMA缓冲区18进行读取时,则会将一启始地址及一结束地址存放到北桥芯片14中的第一、第二缓存器中,并藉由一致能信号将第三缓存器中的操作状态改为1,以致使处理器10将高速缓存12中与第一、第二地址数据范围内数据更新至DMA缓冲区18中,而不将整个高速缓存12中修正过的数据,全部更新至主存储器16中(即清空高速缓存),如此,将可维持高速缓存数据的一致性(coherency),并且避免及时效能(real time performance)不佳。当高速缓存12中与第一、第二地址数据范围内修正过的数据,已经更新至DMA缓冲区18中后,北桥芯片14会将第三缓存器中的操作状态设为0。
之后,软件(或驱动程序)会指示总线控器20,使用非监看技术来读取DMA缓冲区18中的数据。当北桥芯片14接收到PCI-Express的端点装置20所发出的“非监看处理的读取要求”时,直接撷取DMA缓冲区18中的数据,而不须监看处理器10。之后,再将所撷取的数据传送到PCI-Express的端点装置20。
在本发明的数据撷取系统中,由于仅更新高速缓存12中的部分数据至DMA缓冲区18中,故可避免及时效能(real time performance)不佳,同时维持高速缓存数据一致性。
要注意的是,本发明的数据撷取系统,在软件(或驱动程序)以正常方式存取主存储器16时,仍可藉由处理器10执行WBINV指令将整个高速缓存12中,修正过的数据更新到主存储器,以维持高速缓存数据一致性。
虽然本发明已以较佳实施例披露如上,然其并非用以限定本发明,本领域的技术人员在不脱离本发明的精神和范围的前提下,可作若干的更动与润饰,因此本发明的保护范围视本申请的权利要求为准。

Claims (10)

1.一种数据撷取系统,包括:
一高速缓存,用以储存数据;
一处理器,耦接高速缓存;
一PCI-Express的端点装置;
一主存储器,具有至少一直接内存存取缓冲区;以及
一北桥芯片,耦接上述PCI-Express的端点装置,用以致使上述处理器将上述高速缓存中的部分数据,回写至上述直接内存存取缓冲区中,且无效化上述高速缓存中的上述部分数据,并指示上述PCI-Express的端点装置使用一非监看处理技术,来读取上述直接内存存取缓冲区的数据,使得上述北桥芯片接收到一非监看读取要求时,不须监看上述处理器,直接撷取上述直接内存存取缓冲区中的数据。
2.如权利要求1所述的数据撷取系统,其中上述北桥芯片根据一含有一第一地址以及一第二地址的指令,将上述高速缓存中的上述部分数据回写至上述直接内存存取缓冲区中,并且无效化上述高速缓存中的上述部分数据。
3.如权利要求1所述的数据撷取系统,其中上述PCI-Express的端点装置为一直接存取控制器、一影像处理卡、一磁盘适配卡或一网络适配卡。
4.一种数据撷取系统,包括:
一PCI-Express的端点装置;
一北桥芯片,耦接上述PCI-Express的端点装置;
一主存储器,耦接上述北桥芯片,具有至少一直接内存存取缓冲区;
一高速缓存,用以储存数据;以及
一处理器,程序化以将上述高速缓存中的部分数据,回写至上述直接内存存取缓冲区中,且无效化上述高速缓存中的上述部分数据,并指示上述PCI-Express的端点装置使用一非监看处理技术,来读取上述直接内存存取缓冲区的数据,使得上述北桥芯片接收到一非监看读取要求时,不须监看上述处理器,直接撷取上述直接内存存取缓冲区中的数据。
5.如权利要求4所述的数据撷取系统,其中上述处理器根据一含有一第一地址以及一第二地址的指令,将上述高速缓存中的上述部分数据回写至上述直接内存存取缓冲区中,并且无效化上述高速缓存中的上述部分数据。
6.如权利要求4所述的数据撷取系统,其中上述PCI-Express的端点装置藉由一PCI-Express link与上述北桥芯片耦接。
7.一种数据撷取方法,适用于一非监看处理系统含有一处理器、一北桥芯片、一PCI-Express的端点装置、直接内存存取缓冲区以及一高速缓存用以存放数据,包括:
将上述高速缓存中的部分数据,回写(write back)至一直接内存存取缓冲区中;
无效化上述高速缓存中的上述部分数据;以及
指示上述PCI-Express的端点装置使用一非监看处理技术,来读取上述直接内存存取缓冲区的数据,使得上述北桥芯片接收到一非监看读取要求时,不监看上述处理器,直接撷取上述直接内存存取缓冲区中的数据。
8.如权利要求7所述的数据撷取方法,其中上述处理器根据一含有一第一地址以及一第二地址的指令,将上述高速缓存中的上述部分数据回写至上述直接内存存取缓冲区中,并且无效化上述高速缓存中的上述部分数据。
9.如权利要求7所述的数据撷取方法,其中上述北桥芯片根据一第一地址、一第二地址以及一致能信号,致使上述处理器将上述高速缓存中的上述部分数据回写至上述直接内存存取缓冲区中,并且无效化上述高速缓存中的上述部分数据。
10.一种数据撷取方法,适用于一数据撷取系统含有一处理器、一北桥芯片、一PCI-Express的端点装置、直接内存存取缓冲区以及一高速缓存用以存放数据,包括:
部分地回写及无效化上述高速缓存,其中上述高速缓存中被回写的数据存放至上述直接内存存取缓冲区;
指示上述PCI-Express的端点装置使用一非监看处理技术,来读取上述直接内存存取缓冲区的数据;以及
当上述北桥芯片接收到一非监看读取要求时,不监看上述处理器,而直接撷取上述直接内存存取缓冲区中的数据。
CNB2004100315915A 2004-03-25 2004-03-25 数据撷取方法及系统 Expired - Lifetime CN1307560C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100315915A CN1307560C (zh) 2004-03-25 2004-03-25 数据撷取方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100315915A CN1307560C (zh) 2004-03-25 2004-03-25 数据撷取方法及系统

Publications (2)

Publication Number Publication Date
CN1564139A true CN1564139A (zh) 2005-01-12
CN1307560C CN1307560C (zh) 2007-03-28

Family

ID=34481265

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100315915A Expired - Lifetime CN1307560C (zh) 2004-03-25 2004-03-25 数据撷取方法及系统

Country Status (1)

Country Link
CN (1) CN1307560C (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1326048C (zh) * 2005-05-31 2007-07-11 威盛电子股份有限公司 存储器存取装置与方法
CN101243394B (zh) * 2005-08-16 2011-09-21 Nxp股份有限公司 利用辅助存储器来访问存储器的方法和系统
CN101277196B (zh) * 2007-03-30 2011-09-28 杭州华三通信技术有限公司 一种基于pcie交换网的通信系统、通信方法及线卡板
CN103186492A (zh) * 2011-12-28 2013-07-03 联芯科技有限公司 基于axi总线的数据一致性保护方法及其系统
CN109101439A (zh) * 2017-06-21 2018-12-28 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0600626A1 (en) * 1992-11-13 1994-06-08 Cyrix Corporation Coherency for write-back cache in a system designed for write-through cache
US5524233A (en) * 1993-03-31 1996-06-04 Intel Corporation Method and apparatus for controlling an external cache memory wherein the cache controller is responsive to an interagent communication for performing cache control operations
US5623633A (en) * 1993-07-27 1997-04-22 Dell Usa, L.P. Cache-based computer system employing a snoop control circuit with write-back suppression
US5555398A (en) * 1994-04-15 1996-09-10 Intel Corporation Write back cache coherency module for systems with a write through cache supporting bus

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1326048C (zh) * 2005-05-31 2007-07-11 威盛电子股份有限公司 存储器存取装置与方法
CN101243394B (zh) * 2005-08-16 2011-09-21 Nxp股份有限公司 利用辅助存储器来访问存储器的方法和系统
US8205053B2 (en) 2005-08-16 2012-06-19 Nxp B.V. Method and system for accessing memory using an auxiliary memory
CN101277196B (zh) * 2007-03-30 2011-09-28 杭州华三通信技术有限公司 一种基于pcie交换网的通信系统、通信方法及线卡板
CN103186492A (zh) * 2011-12-28 2013-07-03 联芯科技有限公司 基于axi总线的数据一致性保护方法及其系统
CN103186492B (zh) * 2011-12-28 2016-03-30 联芯科技有限公司 基于axi总线的数据一致性保护方法及其系统
CN109101439A (zh) * 2017-06-21 2018-12-28 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置
CN109101439B (zh) * 2017-06-21 2024-01-09 深圳市中兴微电子技术有限公司 一种报文处理的方法及装置

Also Published As

Publication number Publication date
CN1307560C (zh) 2007-03-28

Similar Documents

Publication Publication Date Title
US6295582B1 (en) System and method for managing data in an asynchronous I/O cache memory to maintain a predetermined amount of storage space that is readily available
EP2430551B1 (en) Cache coherent support for flash in a memory hierarchy
CN1240000C (zh) 用于改进超高速缓存性能的输入/输出页面删除确定
US6760786B2 (en) Multiprocessing system configured to perform efficient block copy operations
US6721848B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
TWI410796B (zh) 來自窺探過濾器之過期無效異動的減少
US6269427B1 (en) Multiple load miss handling in a cache memory system
US20050204088A1 (en) Data acquisition methods
US20080183972A1 (en) Snoop Filtering Using a Snoop Request Cache
US6751705B1 (en) Cache line converter
CN1509436A (zh) 以推测方式使高速缓存中的缓存行失效的方法及系统
US7089362B2 (en) Cache memory eviction policy for combining write transactions
JP2000250812A (ja) メモリ・キャッシュ・システムおよびその管理方法
US7330940B2 (en) Method and system for cache utilization by limiting prefetch requests
US5909697A (en) Reducing cache misses by snarfing writebacks in non-inclusive memory systems
CN1851673A (zh) 处理器系统及其数据操作方法
CN1851677A (zh) 嵌入式处理器系统及其数据操作方法
GB2507759A (en) Hierarchical cache with a first level data cache which can access a second level instruction cache or a third level unified cache
US6615321B2 (en) Mechanism for collapsing store misses in an SMP computer system
US6321303B1 (en) Dynamically modifying queued transactions in a cache memory system
US20060179173A1 (en) Method and system for cache utilization by prefetching for multiple DMA reads
CN1564139A (zh) 数据撷取方法及系统
US6643741B1 (en) Method and apparatus for efficient cache management and avoiding unnecessary cache traffic
US6477622B1 (en) Simplified writeback handling
US20040133748A1 (en) Unbalanced inclusive tags

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
CX01 Expiry of patent term

Granted publication date: 20070328

CX01 Expiry of patent term