CN102520911A - 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法 - Google Patents

一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法 Download PDF

Info

Publication number
CN102520911A
CN102520911A CN2011104274295A CN201110427429A CN102520911A CN 102520911 A CN102520911 A CN 102520911A CN 2011104274295 A CN2011104274295 A CN 2011104274295A CN 201110427429 A CN201110427429 A CN 201110427429A CN 102520911 A CN102520911 A CN 102520911A
Authority
CN
China
Prior art keywords
software
register
read
pointer
write pointer
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
CN2011104274295A
Other languages
English (en)
Other versions
CN102520911B (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.)
Dawning Information System Liaoning Co ltd
Dawning Information Industry Co Ltd
Original Assignee
Dawning Information Industry Beijing Co Ltd
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 Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN201110427429.5A priority Critical patent/CN102520911B/zh
Publication of CN102520911A publication Critical patent/CN102520911A/zh
Application granted granted Critical
Publication of CN102520911B publication Critical patent/CN102520911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种优化收包设备上的软件操作PCI空间寄存器效率的系统和方法,软件中分别设置了一个读指针和一个写指针的缓存变量,以及一个更新缓存变量和寄存器的步长。在一定的时间范围内,软件收包时只对软件中的读写指针变量进行操作,不对pci空间的寄存器进行操作,每隔一个时间段,才把软件中最新的读指针写入pci空间的读指针寄存器,把pci空间的写指针读取到软件的写指针变量中。与现有技术相比,本发明的有益效果在于:优化收包设备上软件操作PCI空间寄存器的效率。

Description

一种优化收包设备上的软件操作PCI空间寄存器效率的系统和方法
技术领域
本发明属于网络数据处理领域,具体涉及一种优化收包设备上的软件操作PCI空间寄存器效率的系统和方法。
背景技术
在很多专用的高速收包设备上,软硬件往往共享一个报文缓冲区,硬件向缓冲区内写入报文,软件从缓冲区内读出报文,软硬件之间一般通过硬件pci空间的寄存器实现信息交互,其中交互的一个重要信息是报文缓冲区的读写指针,读指针指示软件读取到了缓冲区的什么位置,写指针指示硬件写入到了缓冲区的什么位置。
专利号为“CN201010123369.3”、发明名称为“一种I/O监控方法”公开了一种I/O监控方法,所述方法包括:1.1检测对虚拟硬件设备的端口访问的类型;1.2当通过客户软件模块对虚拟硬件设备PIO端口的访问时,控制虚拟机监控器截获用户操作系统向CMD寄存器读写指令,并监控从数据寄存器读数据操作状态,当监控到从数据寄存器读数据时,将数据返回给所述操作系统;1.3当通过指令模拟模块对虚拟硬件设备的MMIO端口的访问时,控制虚拟机监控器将物理地址空间转换为真实物理地址空间,在虚拟硬件设备与PRD表中指定的内存之间进行DMA数据传输,实现在设备底层对端口的监控。
专利号为“CN03822682.0”、发明名称为“用于控制多个输入/输出设备的方法、系统和程序”公开了一种用于控制耦合到局部总线的一个或多个I/O设备的方法、系统和产品。局部总线功能与所述一个或多个I/O设备相关联。对应于所述局部总线功能的寄存器被配置为存储器地址。经由所配置的寄存器来控制所述一个或多个I/O设备。
在上述方案中,通过读写指针操作缓冲区时,为避免软硬件操作缓冲区的冲突,软硬件每次对缓冲区的操作必须判断和操作读写指针,硬件向报文缓冲区中写入报文前,要查看并比较读写指针寄存器,判断缓冲区是否有空闲空间,写入报文后,要修改写指针寄存器通知软件报文已经被写入。软件从缓冲区收取报文前,要查看并比较读写指针寄存器,判断缓冲区是否有报文,读出报文后,要修改读指针寄存器通知硬件报文已经被读取。在高速设备上,软件每收到一个包都要对硬件保存读写指针的pci空间的寄存器进行读写操作,会带来系统性能的降低。
发明内容
本发明克服现有技术存在的不足,优化软硬件交互方法,减少软件操作pci空间寄存器的次数。
本发明提供了一种优化收包设备上的软件操作PCI空间寄存器效率的系统,包括软件模块和pc i空间寄存器模块,其特征在于软件模块包括读指针缓存模块和写指针缓存模块。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的系统,其pci空间寄存器模块包括读指针寄存器模块和写指针寄存器模块,分别对应于读指针缓存模块和写指针缓存模块。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的系统,其读指针寄存器模块中的读指针,在读指针缓存模块中进行缓存。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的系统,其写指针寄存器模块中的写指针,在写指针缓存模块中进行缓存。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的系统,其软件模块包括更新缓存变量和寄存器的步长的参数。
本发明还提供了一种优化收包设备上的软件操作PCI空间寄存器效率的方法,其软件中分别设置了一个读指针和一个写指针的缓存变量,以及一个更新缓存变量和寄存器的步长的参数。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的方法,所述软件开始运行时,把pci空间的所述写指针寄存器读取到所述软件的写指针变量中缓存,并使所述软件的所述读指针等于所述写指针。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的方法,每次收包时,所述软件检查缓存的读写指针变量,如果读写指针变量不相等,则读取报文,移动缓存的所述读指针。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的方法,所述软件缓存的所述读写指针相等,或者到达了预设的步长参数的时间段,则把所述软件缓存的所述读指针写到所述PCI空间中,并把所述pci空间的所述写指针读取到所述软件缓存的所述写指针变量中。
本发明提供的优化收包设备上的软件操作PCI空间寄存器效率的方法,硬件收到报文时,判断所述读写指针寄存器内的值,如果所述写指针和所述读指针之间有足够的空闲缓冲区,则把报文写入缓冲区,并修改所述写指针寄存器的值。
本发明在软件中分别设置了一个读指针和一个写指针的缓存变量,用来缓存pci空间寄存器中的读写指针,在一定的时间范围内,软件收包时只对软件中的读写指针变量进行操作,不对pci空间的寄存器进行操作,每隔一个时间段,才把软件中最新的读指针写入pci空间的读指针寄存器,把pci空间的写指针读取到软件的写指针变量中。
与现有技术相比,本发明的有益效果在于:避免软硬件操作缓冲区的冲突;优化收包设备上软件操作PCI空间寄存器的效率。
附图说明
图1是本发明的结构示意图。
具体实施方式
图1是本发明的结构示意图,包括软件模块和pci空间寄存器模块,软件模块包括读指针缓存模块和写指针缓存模块。其中pci空间寄存器模块包括读指针寄存器模块和写指针寄存器模块,分别对应于读指针缓存模块和写指针缓存模块。其中读指针寄存器模块被用来写入读指针缓存模块的指针,而写指针寄存器模块用于向写指针缓存模块写入其存储的指针。
此外其软件模块包括更新缓存变量和寄存器的步长的参数,用以预设时间段。
本发明的实现方法和过程如下:
(1)软件中分别设置了一个读指针和一个写指针的缓存变量,以及一个更新缓存变量和寄存器的步长(可以为时间段或表示时间段的收包数)。
(2)软件开始运行时,把pci空间的写指针寄存器读取到软件的写指针变量中缓存,并使软件的读指针等于写指针。
(3)每次收包时,软件检查缓存的读写指针变量,如果读写指针不相等,则读取报文,移动缓存的读指针。
(4)如果软件缓存的读写指针相等,或者到达了预设的时间段,则把软件缓存的读指针写到PCI空间读指针寄存器中,并把pci空间写指针寄存器的写指针读取到软件缓存的写指针变量中。
(5)硬件收到报文时,判断PCI空间读写指针寄存器内的值,如果写指针和读指针之间有足够的空闲缓冲区,则把报文写入缓冲区,并修改写指针寄存器的值。
本发明避免软硬件操作缓冲区的冲突;优化收包设备上软件操作PCI空间寄存器的效率。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种优化收包设备上的软件操作PCI空间寄存器效率的系统,包括软件模块和pci空间寄存器模块,其特征在于软件模块包括读指针缓存模块和写指针缓存模块。
2.根据权利要求1所述的系统,其特征在于pci空间寄存器模块包括读指针寄存器模块和写指针寄存器模块,分别对应于读指针缓存模块和写指针缓存模块。
3.根据权利要求1-2所述的系统,其特征在于读指针寄存器中的读指针,在读指针缓存模块中缓存。
4.根据权利要求1-3所述的系统,其特征在于写指针寄存器中的写指针,在写指针缓存模块中缓存。
5.根据权利要求1-4所述的系统,其特征在于软件模块包括更新缓存变量和寄存器的步长的参数。
6.一种优化收包设备上的软件操作PCI空间寄存器效率的方法,其特征在于,软件中分别设置了一个读指针和一个写指针的缓存变量,以及一个更新缓存变量和寄存器的步长的参数。
7.根据权利要求6所述的方法,其特征在于,所述软件开始运行时,把pci空间的所述写指针寄存器读取到所述软件的写指针变量中缓存,并使所述软件的所述读指针等于所述写指针。
8.根据权利要求6-7所述的方法,其特征在于,每次收包时,所述软件检查缓存的读写指针变量,如果读写指针变量不相等,则读取报文,移动缓存的所述读指针。
9.根据权利要求6-8所述的方法,其特征在于,所述软件缓存的所述读写指针相等,或者到达了预设的步长的时间段,则把所述软件缓存的所述读指针写到所述PCI空间中,并把所述pci空间的所述写指针读取到所述软件缓存的所述写指针变量中。
10.根据权利要求6-9所述的方法,其特征在于,硬件收到报文时,判断所述读写指针寄存器内的值,如果所述写指针和所述读指针之间有足够的空闲缓冲区,则把报文写入缓冲区,并修改所述写指针寄存器的值。
CN201110427429.5A 2011-12-19 2011-12-19 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法 Active CN102520911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110427429.5A CN102520911B (zh) 2011-12-19 2011-12-19 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110427429.5A CN102520911B (zh) 2011-12-19 2011-12-19 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法

Publications (2)

Publication Number Publication Date
CN102520911A true CN102520911A (zh) 2012-06-27
CN102520911B CN102520911B (zh) 2015-04-29

Family

ID=46291854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110427429.5A Active CN102520911B (zh) 2011-12-19 2011-12-19 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法

Country Status (1)

Country Link
CN (1) CN102520911B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113422738A (zh) * 2021-05-18 2021-09-21 上海赫千电子科技有限公司 一种智能主机的mcu通信服务方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006138649A1 (en) * 2005-06-17 2006-12-28 Level 5 Networks, Inc. Dma descriptor queue read and cache write pointer arrangement
CN101446931A (zh) * 2008-12-03 2009-06-03 中国科学院计算技术研究所 一种实现输入输出数据一致性的系统及方法
CN102006241A (zh) * 2010-12-17 2011-04-06 天津曙光计算机产业有限公司 一种多个应用共享一个缓冲区的报文接收方法
CN102098214A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种采用轮询机制的高速报文接收方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006138649A1 (en) * 2005-06-17 2006-12-28 Level 5 Networks, Inc. Dma descriptor queue read and cache write pointer arrangement
CN101446931A (zh) * 2008-12-03 2009-06-03 中国科学院计算技术研究所 一种实现输入输出数据一致性的系统及方法
CN102006241A (zh) * 2010-12-17 2011-04-06 天津曙光计算机产业有限公司 一种多个应用共享一个缓冲区的报文接收方法
CN102098214A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种采用轮询机制的高速报文接收方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113422738A (zh) * 2021-05-18 2021-09-21 上海赫千电子科技有限公司 一种智能主机的mcu通信服务方法
CN113422738B (zh) * 2021-05-18 2023-07-21 上海赫千电子科技有限公司 一种智能主机的mcu通信服务方法

Also Published As

Publication number Publication date
CN102520911B (zh) 2015-04-29

Similar Documents

Publication Publication Date Title
KR101744126B1 (ko) 비대칭적 프로세서 코어 간의 협력적 실행을 위한 기법
CN104021109B (zh) 用于在计算机系统中传递中断的技术
JP6293888B2 (ja) 競合状態を検出する技法
CN107992436A (zh) 一种NVMe数据读写方法及NVMe设备
US20080177909A1 (en) Content Terminated DMA
US20090119460A1 (en) Storing Portions of a Data Transfer Descriptor in Cached and Uncached Address Space
CN105760311B (zh) trim命令响应方法和系统及操作系统
CN104111870B (zh) 一种中断处理装置及中断处理方法
CN103279428B (zh) 一种显式的面向流应用的多核Cache一致性主动管理方法
CN104461970B (zh) Dma控制器、移动终端以及数据搬运方法
CN102521179A (zh) 一种dma读操作的实现装置和方法
CN113039531B (zh) 用于分配缓存资源的方法、系统和存储介质
CN112162706A (zh) 一种硬盘管理方法、装置、设备及机器可读存储介质
CN103885908A (zh) 一种基于外部设备可访问寄存器的数据传输系统及其方法
EP4042305A1 (en) Resource management unit for capturing operating system configuration states and managing malware
US20110289284A1 (en) Multi-processor device and inter-process communication method thereof
CN105095104A (zh) 数据缓存处理方法及装置
CN106201918B (zh) 一种基于大数据量和大规模缓存快速释放的方法和系统
CN104133802A (zh) 双工件台扫描光刻机的Vxworks嵌入式操作系统和运动控制卡间的数据交换方法
CN101341471B (zh) 动态高速缓存管理的设备和方法
US20210191775A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Offloading Tasks
CN102520911A (zh) 一种优化收包设备上的软件操作pci空间寄存器效率的系统和方法
CN109634583B (zh) 一种基于SystemC和TLM模型的GPU颜色存储Cache模块的硬件及存储装置
CN103488772A (zh) 一种通过外存对文件进行缓存的方法、系统及设备
CN104679687B (zh) 一种识别中断源的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160115

Address after: 124000 Panjin, Liaoning Province, coastal economic zone in the coastal area of the crown building, building 3018, room 3, Liaoning

Patentee after: Dawning Information System (Liaoning) Co.,Ltd.

Address before: 100084 Beijing Haidian District City Mill Street No. 64

Patentee before: Dawning Information Industry (Beijing) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220802

Address after: 124000 room 3018, floor 3, Hongguan building, Liaobin coastal economic zone, Panjin City, Liaoning Province

Patentee after: Dawning Information System (Liaoning) Co.,Ltd.

Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd.

Address before: 124000 room 3018, 3 / F, Hongguan building, Liaobin coastal economic zone, Panjin, Liaoning Province

Patentee before: Dawning Information System (Liaoning) Co.,Ltd.