CN116542336B - 一种并行模糊推理系统及方法 - Google Patents
一种并行模糊推理系统及方法 Download PDFInfo
- Publication number
- CN116542336B CN116542336B CN202310815099.XA CN202310815099A CN116542336B CN 116542336 B CN116542336 B CN 116542336B CN 202310815099 A CN202310815099 A CN 202310815099A CN 116542336 B CN116542336 B CN 116542336B
- Authority
- CN
- China
- Prior art keywords
- module
- fuzzy
- calculation
- fuzzy inference
- reasoning
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000004364 calculation method Methods 0.000 claims abstract description 365
- 230000006870 function Effects 0.000 claims abstract description 124
- 238000012545 processing Methods 0.000 claims abstract description 21
- 230000005012 migration Effects 0.000 claims description 28
- 238000013508 migration Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 28
- 238000004891 communication Methods 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/048—Fuzzy inferencing
-
- 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/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/126—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Feedback Control In General (AREA)
Abstract
本发明提供了一种并行模糊推理系统,在接收到上位机的基础功能请求和模糊推理计算请求后,通过总控模块实现基础功能,通过模糊推理计算模块以及由存储器接收的外部数据作为模糊推理计算输入数据实现模糊推理计算,在并行处理完上述请求之后,通过控制PCIE模块将基础功能结果和模糊推理计算结果发送至上位机。相比于现有技术,本系统在硬件资源、通信、功耗等因素受限的情况下,通过将基础功能请求和模糊推理计算请求并行处理,可以有效的节约资源,提高系统整体性能,降低功耗和延迟。本发明还提供了一种并行模糊推理方法,具有相同的有益效果。
Description
技术领域
本发明涉及模糊推理计算技术领域,特别是涉及一种并行模糊推理系统及方法。
背景技术
智能控制中有一种基于模糊理论和模糊推理为基础的控制方法,是一种对数学模型精确度要求不太高的控制模式,通过模拟人的思维决策去控制复杂和不确定的对象,常用于具有较大非线性、惯性大、滞后时间长等复杂动态特性时难以用精确数据模型展现实施有效控制的系统中。模糊推理是将基本信息从不精确的前提集合中得出可能的不精确结论的推理过程,主要依赖于相关知识的规则库,使用模糊推理规则得出模糊判断结论。
目前模糊推理常应用于作战系统中自主机动决策、目标毁伤效果评估、目标敌我识别、装备组合决策等场景,配备于星载、机载或舰载等设备上完成数据处理与分析。模糊推理通常采用软件方式实现,需要使用高性能处理器来完成计算功能,这种方式难以满足星载、机载等设备在硬件资源、通信带宽、功耗等因素受限情况下实现对数据处理的高效性、集成性、实时性要求。
因此,提供一种可以同时实现多种功能与模糊推理并行处理的高性能、低功耗、低延迟、资源占用小的并行模糊推理系统及方法是本领域技术人员亟待解决的问题。
发明内容
本发明的目的在于提供一种并行模糊推理系统及方法,该系统结构简单,安全、有效、可靠且操作简便,能在实现多种功能的同时完成模糊推理计算,以使得模糊推理和基础功能实现并行处理的有益效果,提高系统整体性能、降低功耗、延迟和资源占用。
基于以上目的,本发明提供的技术方案如下:
一种并行模糊推理系统,包括:总控模块、模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块;
所述总控模块分别与所述模糊推理计算模块、所述用户寄存器模块、所述PCIE模块和所述存储器模块连接;
所述模糊推理计算模块分别与所述PCIE模块和所述用户寄存器模块连接;
所述存储器模块与外部寄存器连接;
所述PCIE模块与上位机连接;
所述PCIE模块,用于在所述总控模块的控制下,接收由所述上位机所发送的基础功能请求和模糊推理计算请求,并将所述基础功能请求和所述模糊推理计算请求发送至所述总控模块;
所述PCIE模块,还用于在所述总控模块根据所述基础功能请求实现基础功能后,将得到的基础功能结果发送至所述上位机;
所述用户寄存器模块,用于接收由所述总控模块发送的所述模糊推理计算请求,并将所述模糊推理计算请求发送至所述模糊推理计算模块;
所述存储器模块,用于接收由所述外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入所述总控模块中;
所述总控模块,用于将所述模糊推理计算输入数据发送至所述模糊推理计算模块中;
所述模糊推理计算模块,用于根据所述模糊推理计算请求和所述模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
所述用户寄存器模块,还用于将所述模糊推理计算结果发送至所述总控模块;
所述PCIE模块,还用于接收所述模糊推理计算结果,并将所述模糊推理计算结果发送至所述上位机。
优选地,所述总控模块包括:系统RAM和存储控制模块;
所述存储控制模块一端与所述存储器模块连接,另一端与所述系统RAM连接;
所述存储器模块,用于接收由所述外部存储器发送的外部数据,并将外部数据发送至所述存储控制模块;
所述存储控制模块,用于接收由所述存储器模块发送的外部数据,并将外部数据作为所述模糊推理计算输入数据写入所述系统RAM中。
优选地,所述总控模块还包括:系统寄存器和DMA模块;
所述DMA模块一端与所述系统寄存器连接;
所述DMA模块另一端分别与所述PCIE模块和所述用户寄存器模块连接;
所述DMA模块,用于控制所述PCIE模块接收由所述上位机发送的所述基础功能请求,并将所述基础功能请求发送至所述系统寄存器;
所述系统寄存器,用于根据所述基础功能请求实现基础功能,得到基础功能结果并发送至所述DMA模块;
所述DMA模块,还用于控制所述PCIE模块接收所述基础功能结果,并将所述基础功能结果发送至所述上位机;
所述DMA模块,还用于向所述用户寄存器模块发送所述模糊推理计算请求,并接收由所述用户寄存器模块发送的所述模糊推理计算模块的模糊推理计算结果。
优选地,所述模糊推理计算模块包括:多个推理簇、调度器和局部RAM;
多个所述推理簇分别与所述调度器和所述局部RAM连接;
所述局部RAM分别与所述用户寄存器模块和所述存储控制模块连接;
所述调度器与所述用户寄存器模块连接;
所述调度器,用于接收由所述用户寄存器模块发送的多种所述模糊推理计算请求并将所述模糊推理计算请求分别发送至对应的所述推理簇;
所述存储控制模块,还用于将所述系统RAM中的所述模糊推理计算输入数据发送至所述局部RAM;
所述局部RAM,用于接收所述模糊推理计算输入数据,并将所述模糊推理计算输入数据发送至对应的所述推理簇;
所述推理簇,用于根据所述模糊推理计算请求和所述模糊推理计算输入数据实现模糊推理计算,得到模糊推理计算结果,并将所述模糊推理计算结果发送至局部RAM;
所述局部RAM,还用于将所述模糊推理计算结果发送至所述用户寄存器模块。
优选地,所述推理簇包括:一个推理主核和多个推理核;
多个所述推理核均与所述推理主核连接;
所述推理主核和所述推理核均包括:模糊推理计算核心;
所述推理主核与所述调度器连接;
所述推理主核还包括:任务队列模块和分发器;
所述分发器分别与所述任务队列模块和所述模糊推理计算核心连接;
所述任务队列模块,用于接收由所述调度器发送的多种所述模糊推理计算请求,并生成模糊推理计算任务;
所述分发器,用于根据多个所述推理核的工作状态,下发所述模糊推理计算任务;
所述模糊推理计算核心,用于根据所述模糊推理计算任务完成模糊推理计算。
优选地,还包括:
多个所述推理簇之间通过各自的所述推理主核相互连接;
所述推理主核还包括:任务迁移模块;
所述任务迁移模块与所述任务队列模块连接;
所述任务迁移模块,用于根据所述任务队列模块的负载状态,按照预设规则,将所述模糊推理计算任务迁移至对应的所述推理主核。
优选地,所述模糊推理计算核心包括:初始化模块、模糊集数据库、模糊集规则库、计算模块和权重计算模块;
所述初始化模块分别与所述模糊集数据库和所述模糊集规则库连接;
所述模糊集数据库和所述模糊集规则库均与所述计算模块连接;
所述计算模块与所述权重计算模块连接;
所述初始化模块,用于接收所述模糊推理输入数据并进行模糊化处理;
所述模糊集数据库和所述模糊集规则库均基于处理后的模糊推理输入数据构建;
所述模糊集数据库,用于记录处理后的模糊推理输入数据和预设多种计算函数;
所述所述模糊集规则库,用于预设模糊推理规则;
所述计算模块,用于根据所述模糊推理规则和多种预设计算函数对所述处理后的模糊推理输入数据进行计算,输出附加权重的输出数据;
所述权重计算模块,用于计算所述附加权重的输出数据的附加权重值,并输出所述模糊推理计算结果。
优选地,所述计算模块包括:规则设置模块、前提度计算模块和结论度计算模块;
所述规则设置模块和所述结论度计算模块均与所述模糊规则库连接;
所述前提度计算模块和所述结论度计算模块均与所述模糊集数据库连接;
所述前提度计算模块分别与所述规则设置模块和所述结论度计算模块连接;
所述规则设置模块,用于根据所述处理后的模糊推理输入数据与所述模糊推理规则生成模糊规则;
所述前提度计算模块,用于根据所述模糊规则,计算所述处理后的模糊推理输入数据的前提度;
所述结论度计算模块,用于根据多个所述处理后的模糊推理输入数据的前提度,计算所述处理后的模糊推理输入数据的结论度。
优选地,所述模糊推理计算核心还包括:多个流水线模块和控制模块;
所述控制模块分别与所述初始化模块和所述权重计算模块连接;
多个所述流水线模块一端均分别与所述模糊集数据库和所述模糊集规则库连接,另一端均与所述权重计算模块连接;
每个所述流水线模块内均设置有所述计算模块;
所述控制模块,用于控制所述初始化模块和所述权重计算模块实现对应的功能。
一种并行模糊推理方法,包括如下步骤:
PCIE模块在总控模块的控制下,接收由上位机所发送的基础功能请求和模糊推理计算请求,并将所述基础功能请求和所述模糊推理计算请求发送至所述总控模块;
所述PCIE模块在所述总控模块根据所述基础功能请求实现基础功能后,将得到的基础功能结果发送至所述上位机;
用户寄存器模块接收由所述总控模块发送的所述模糊推理计算请求,并将所述模糊推理计算请求发送至模糊推理计算模块;
存储器模块接收由所述外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入所述总控模块中;
所述总控模块将所述模糊推理计算输入数据发送至所述模糊推理计算模块中;
所述模糊推理计算模块根据所述模糊推理计算请求和所述模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
所述用户寄存器模块将所述模糊推理计算结果发送至所述总控模块;
所述PCIE模块接收所述模糊推理计算结果,并将所述模糊推理计算结果发送至所述上位机。
本发明所提供的并行模糊推理系统,设置有总控模块、模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块;总控模块分别与模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块;模糊推理计算模块分别与PCIE模块和用户寄存器模块连接;存储器模块与外部寄存器模块连接;PCIE与上位机连接。
工作过程中,上位机向本系统发送基础功能请求和模糊推理计算请求;PCIE模块在总控模块的控制下,接收基础功能请求和模糊推理计算请求,并将基础功能请求和模糊推理计算请求均发送至总控模块中;总控模块接收到基础功能请求后,实现对应的基础功能,将得到的基础功能结果通过PCIE模块发送至上位机;在上位机发送请求的同时,外部寄存器向本系统发送外部数据;存储器模块接收外部数据并将外部数据作为模糊推理计算输入数据写入总控模块中;总控模块将模糊推理计算请求通过用户寄存器模块发送至模糊推理计算模块中;与此同时,总控模块还将模糊推理计算输入数据发送至模糊推理计算模块中;模糊推理计算模块接收到模糊推理计算请求和模糊推理计算输入数据后,实现模糊推理计算,并将模糊推理计算结果通过用户寄存器模块发送至总控模块中;总控模块通过控制PCIE模块将模糊推理计算结果发送至上位机。
本发明所提供的并行模糊推理系统,在接收到上位机的基础功能请求和模糊推理计算请求后,通过总控模块实现基础功能,通过模糊推理计算模块以及由存储器接收的外部数据作为模糊推理计算输入数据实现模糊推理计算,在并行处理完上述请求之后,通过控制PCIE模块将基础功能结果和模糊推理计算结果发送至上位机。相比于现有技术,本系统在硬件资源、通信、功耗等因素受限的情况下,通过将基础功能请求和模糊推理计算请求并行处理,可以有效的节约资源,提高系统整体性能,降低功耗和延迟。
本发明还公开了一种并行模糊处理方法,由于该方法与该系统解决相同的技术问题,属于相同的技术构思,理应具有相同的有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种并行模糊处理系统的结构示意图;
图2为本发明实施例提供的总控模块的结构示意图;
图3为本发明实施例提供的模糊推理计算模块的结构示意图;
图4为本发明实施例提供的推理簇的结构示意图;
图5为本发明实施例提供的模糊推理计算核心的结构示意图;
图6为本发明实施例提供的模糊推理计算核心的另一种结构示意图;
图7为本发明实施例提供的一种并行模糊处理方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例采用递进的方式撰写。
本发明实施例提供了一种并行模糊处理系统及方法。主要解决现有技术中,在硬件资源、通信、功耗等因素受限的情况下,性能降低、功耗和延迟提高、资源占用大的技术问题。
如图1所示,一种并行模糊推理系统,包括:总控模块、模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块;
总控模块分别与模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块连接;
模糊推理计算模块分别与PCIE模块和用户寄存器模块连接;
存储器模块与外部寄存器连接;
PCIE模块与上位机连接;
PCIE模块,用于在总控模块的控制下,接收由上位机所发送的基础功能请求和模糊推理计算请求,并将基础功能请求和模糊推理计算请求发送至总控模块;
PCIE模块,还用于在总控模块根据基础功能请求实现基础功能后,将得到的基础功能结果发送至上位机;
用户寄存器模块,用于接收由总控模块发送的模糊推理计算请求,并将模糊推理计算请求发送至模糊推理计算模块;
存储器模块,用于接收由外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入总控模块中;
总控模块,用于将模糊推理计算输入数据发送至模糊推理计算模块中;
模糊推理计算模块,用于根据模糊推理计算请求和模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
用户寄存器模块,还用于将模糊推理计算结果发送至总控模块;
PCIE模块,还用于接收模糊推理计算结果,并将模糊推理计算结果发送至上位机。
工作过程中,上位机向本系统发送基础功能请求和模糊推理计算请求;PCIE模块在总控模块的控制下,接收基础功能请求和模糊推理计算请求,并将基础功能请求和模糊推理计算请求均发送至总控模块中;总控模块接收到基础功能请求后,实现对应的基础功能,将得到的基础功能结果通过PCIE模块发送至上位机;在上位机发送请求的同时,外部寄存器向本系统发送外部数据;存储器模块接收外部数据并将外部数据作为模糊推理计算输入数据写入总控模块中;总控模块将模糊推理计算请求通过用户寄存器模块发送至模糊推理计算模块中;与此同时,总控模块还将模糊推理计算输入数据发送至模糊推理计算模块中;模糊推理计算模块接收到模糊推理计算请求和模糊推理计算输入数据后,实现模糊推理计算,并将模糊推理计算结果通过用户寄存器模块发送至总控模块中;总控模块通过控制PCIE模块将模糊推理计算结果发送至上位机。本系统在硬件资源、通信、功耗等因素受限的情况下,通过将基础功能请求和模糊推理计算请求并行处理,可以有效的节约资源,提高系统整体性能,降低功耗和延迟。
在本实施例中,本发明所提供的并行模糊推理系统,采用了四级并行机制,第一级并行体现在模糊推理计算和基础功能并行处理,并一同上传至上位机。第二级并行体现在模糊推理计算核心实现还采用了多套功能流水线并行执行,可实现多维数据的并行模糊推理,提高模糊推理计算的吞吐率;第三级并行体现在多个模糊推理计算核心的并行执行,通过任务调度器和模糊推理核心网络来构建一个包含多个模糊推理计算核心的模糊推理系统,实现程序的更高层次的推理并行执行;第四级并行在第三级并行的基础上,可以继续扩展到多结点多设备上更大规模的模糊推理并行执行。
需要说明的是,基础功能是指通过上位机发送的查询监控状态、远程操作、启动复位和功能测试等内容。
PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准。PCIE属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(QOS)等功能。
如图2所示,优选地,总控模块包括:系统RAM和存储控制模块;
存储控制模块一端与存储器模块连接,另一端与系统RAM连接;
存储器模块,用于接收由外部存储器发送的外部数据,并将外部数据发送至存储控制模块;
存储控制模块,用于接收由存储器模块发送的外部数据,并将外部数据作为模糊推理计算输入数据写入系统RAM中。
实际运用过程中,总控模块内设置有系统RAM和存储控制模块;存储控制模块一端与存储器模块连接,另一端与系统RAM连接。工作过程中,存储器模块接收由外部存储器发送的外部数据后,将外部数据发送至总控模块中的存储器控制模块;存储器控制模块接收到外部数据后,将外部数据按照一定格式转化为模糊推理计算输入数据,并将模糊推理计算输入数据写入系统RAM中。
需要说明的是,RAM是指:随机存取存储器(Random Access Memory,缩写:RAM),也叫主存,是与CPU直接交换数据的内部存储器。它可以随时读写(刷新时除外),而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储介质。RAM工作时可以随时从任何一个指定的地址写入(存入)或读出(取出)信息。它与ROM的最大区别是数据的易失性,即一旦断电所存储的数据将随之丢失。RAM在计算机和数字系统中用来暂时存储程序、数据和中间结果。
如图2所示,优选地,总控模块还包括:系统寄存器和DMA模块;
DMA模块一端与系统寄存器连接;
DMA模块另一端分别与PCIE模块和用户寄存器模块连接;
DMA模块,用于控制PCIE模块接收由上位机发送的基础功能请求,并将基础功能请求发送至系统寄存器;
系统寄存器,用于根据基础功能请求实现基础功能,得到基础功能结果并发送至DMA模块;
DMA模块,还用于控制PCIE模块接收基础功能结果,并将基础功能结果发送至上位机;
DMA模块,还用于向用户寄存器模块发送模糊推理计算请求,并接收由用户寄存器模块发送的模糊推理计算模块的模糊推理计算结果。
实际运用过程中,总控模块内还设置有系统寄存器和DMA模块;DMA模块一端与系统寄存器连接,另一端分别与PCIE模块和用户寄存器模块连接。工作过程中,一方面,DMA模块控制PCIE模块接收由上位机发送的基础功能请求,并将基础功能请求发送至系统寄存器;系统寄存器主要为一组系统状态寄存器,主要包括:系统监控寄存器、操作寄存器、测试寄存器和复位寄存器等;系统寄存器在接收到基础功能请求后,根据所请求的内容,通过对应的寄存器实现相应的基础功能,生成基础功能结果后,将基础功能结果发送至DMA模块;DMA模块控制PCIE模块接收基础功能结果,并将基础功能结果发送至上位机。另一方面,DMA模块向用户寄存器模块发送模糊推理计算请求,并在模糊推理计算模块完成模糊推理计算后,接收由用户寄存器模块发送的模糊推理计算结果。
需要说明的是,DMA,全称Direct Memory Access,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场过程,通过硬件为RAM和IO设备开辟一条直接传输数据的通道,使得CPU的效率大大提高。
如图3所示,优选地,模糊推理计算模块包括:多个推理簇、调度器和局部RAM;
多个推理簇分别与调度器和局部RAM连接;
局部RAM分别与用户寄存器模块和存储控制模块连接;
调度器与用户寄存器模块连接;
调度器,用于接收由用户寄存器模块发送的多种模糊推理计算请求并将模糊推理计算请求分别发送至对应的推理簇;
存储控制模块,还用于将系统RAM中的模糊推理计算输入数据发送至局部RAM;
局部RAM,用于接收模糊推理计算输入数据,并将模糊推理计算输入数据发送至对应的推理簇;
推理簇,用于根据模糊推理计算请求和模糊推理计算输入数据实现模糊推理计算,得到模糊推理计算结果,并将模糊推理计算结果发送至局部RAM;
局部RAM,还用于将模糊推理计算结果发送至用户寄存器模块。
实际运用过程中,模糊推理计算模块设置有多个推理簇、调度器和局部RAM;多个推理簇分别与调度器和局部RAM连接;局部RAM与存储控制模块连接;调度器与用户寄存器模块连接。工作过程中,用户寄存器模块将多种模糊推理计算请求发送至调度器中,调度器对多种模糊推理计算请求进行调度,并将模糊推理计算请求分别发送至对应的推理簇;存储控制模块将系统RAM中的模糊推理计算输入数据发送至局部RAM;局部RAM在接收到模糊推理计算输入数据后,将模糊推理计算输入数据发送至对应的推理簇;推理簇根据已接收的模糊推理计算请求和模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果,并将模糊推理计算结果发送至局部RAM;局部RAM将模糊推理计算结果发送至用户寄存器模块。
如图4所示,优选地,推理簇包括:一个推理主核和多个推理核;
多个所述推理核均与所述推理主核连接;
推理主核和推理核均包括:模糊推理计算核心;
推理主核与调度器连接;
推理主核还包括:任务队列模块和分发器;
分发器分别与任务队列模块和模糊推理计算核心连接;
任务队列模块,用于接收由调度器发送的多种模糊推理计算请求,并生成模糊推理计算任务;
分发器,用于根据多个推理核的工作状态,下发模糊推理计算任务;
模糊推理计算核心,用于根据模糊推理计算任务完成模糊推理计算。
实际运用过程中,推理簇内设置有一个推理主核和多个推理核;多个推理核均与推理主核连接;推理主核和推理核内均设置有模糊推理计算核心;推理主核与调度器连接;推理主核内还设置有任务模块和分发器;分发器分别与任务队列模块和模糊推理计算核心连接;工作过程中,调度器将多种不同的模糊推理计算请求发送至推理主核,推理主核通过任务队列模块生成多种不同的模糊推理计算任务;推理主核通过模糊推理计算核心完成本地的模糊推理计算任务,同时,通过分发器查看簇内其他推理核的忙闲情况,并将其他模糊推理计算任务下发至空闲的推理核;推理核从推理主核处获取模糊推理计算任务后,完成模糊推理计算。
如图4所示,优选地,还包括:
多个推理簇之间通过各自的推理主核相互连接;
推理主核还包括:任务迁移模块;
任务迁移模块与任务队列模块连接;
任务迁移模块,用于根据任务队列模块的负载状态,按照预设规则,将模糊推理计算任务迁移至对应的推理主核。
实际运用过程中,多个推理簇之前通过各自的推理主核相互连接;推理主核内还设置有任务迁移模块。工作过程中,当某个推理主核的任务迁移模块查询该簇任务队列中任务数量处于接近满数或超过半满(大于任务队列长度的一半)的状态,将向其他推理簇发出任务迁移请求。其他推理簇的推理主核中的任务迁移模块接收到来自该推理簇的任务迁移请求后,查询本簇任务队列的负载情况,如果当前任务队列为空或不足半满(少于任务队列长度的一半),则接受任务迁移请求,并告知其可接受的任务迁移数量,具体数量为任务队列长度一半与当前任务数的差值。需要进行任务迁移的推理簇在推理主核中的任务迁移模块接收到迁移任务允许应答后,将根据其返回的任务迁移数量,将任务所需数据传递给指定推理簇的推理主核中的任务迁移模块。发起任务迁移请求的推理簇的推理主核中的任务迁移模块在接收到多个迁移任务允许应答后,可向多个推理簇的推理主核中的任务迁移模块迁移任务,当本地任务队列中任务数量不大于队列长度一半时,将停止任务迁移。
如图5所示,优选地,模糊推理计算核心包括:初始化模块、模糊集数据库、模糊集规则库、计算模块和权重计算模块;
初始化模块分别与模糊集数据库和模糊集规则库连接;
模糊集数据库和模糊集规则库均与计算模块连接;
计算模块与权重计算模块连接;
初始化模块,用于接收模糊推理输入数据并进行模糊化处理;
模糊集数据库和模糊集规则库均基于处理后的模糊推理输入数据构建;
模糊集数据库,用于记录处理后的模糊推理输入数据和预设多种计算函数;
模糊集规则库,用于预设模糊推理规则;
计算模块,用于根据模糊推理规则和多种预设计算函数对处理后的模糊推理输入数据进行计算,输出附加权重的输出数据;
权重计算模块,用于计算附加权重的输出数据的附加权重值,并输出模糊推理计算结果。
实际运用过程中,模糊推理计算核心中设置有初始化模块、模糊集数据库、模糊集规则库、计算模块和权重计算模块;初始化模块分别与模糊集数据库和模糊集规则库连接;模糊集数据库和模糊集规则库均与计算模块连接;计算模块与权重计算模块连接。工作过程中,初始化模块接收到由局部RAM发送的模糊推理输入数据后,对该数据进行模糊化处理,输入数据包括多维数据信息、输入信息表、输出信息表、规则信息表等,利用隶属度函数计算输入数据的隶属度关系;根据处理后的模糊化数据构建模糊集数据库和模糊集规则库,其中模糊规则库为根据专家经验制定的树状模糊推理规则,模糊集数据库中记录了模糊数据以及处理模糊数据的各种运算函数;随后将处理后的模糊化数据、按照模糊推理规则和多种预设计算函数进行计算,输出附加权重的输出数据;通过权重计算模块计算附加权重的数据数据的附加权重值,生成模糊推理计算结果并输出。
如图5所示,优选地,计算模块包括:规则设置模块、前提度计算模块和结论度计算模块;
规则设置模块和结论度计算模块均与模糊规则库连接;
前提度计算模块和结论度计算模块均与模糊集数据库连接;
前提度计算模块分别与规则设置模块和结论度计算模块连接;
规则设置模块,用于根据处理后的模糊推理输入数据与模糊推理规则生成模糊规则;
前提度计算模块,用于根据模糊规则,计算处理后的模糊推理输入数据的前提度;
结论度计算模块,用于根据多个处理后的模糊推理输入数据的前提度,计算处理后的模糊推理输入数据的结论度。
实际运用过程中,计算模块内设置有规则设置模块、前提度计算模块和结论度计算模块;前提度计算模块和结论度计算模块均与模糊集数据库连接;前提度计算模块分别与规则设置模块和结论度计算模块连接。工作过程中,规则设置模块根据每个输入信息表的隶属度和规则信息表的值生成模糊规则。前提度计算模块根据规则信息从输入信息表中获取数据,与输入的多维数据比较计算前提度。结论度计算模块比较多个前提度计算结论度。权重计算模块根据规则信息从输出信息表中获取数据,并根据结论度的值计算权重值,并将结果输出。
如图6所示,优选地,模糊推理计算核心还包括:多个流水线模块和控制模块;
控制模块分别与初始化模块和权重计算模块连接;
多个流水线模块一端均分别与模糊集数据库和模糊集规则库连接,另一端均与权重计算模块连接;
每个流水线模块内均设置有计算模块;
控制模块,用于控制初始化模块和权重计算模块实现对应的功能。
实际运用过程中,模糊推理计算核心还设置有多个流水线模块和控制模块;控制模块分别与初始化模块和权重计算模块连接;多个流水线模块一端均分别与模糊集数据库和模糊集规则库连接,另一端均与权重计算模块连接;每个流水线模块内均设置有计算模块。工作过程中,由控制模块控制初始化对模糊推理输入数据模糊化处理后,通过流水线计算结论度;流水线由规则设置、前提度计算和结论度计算三段功能组成,规则设置功能根据每个输入信息表的隶属度和规则信息表的值生成模糊规则;前提度计算功能根据规则信息从输入信息表中获取数据,与输入的多维数据比较计算前提度;结论度计算模块比较多个前提度计算结论度;控制模块控制权重计算模块根据规则信息从输出信息表中获取数据,并根据结论度的值计算权重值,并将结果输出。模糊推理计算核心中采用多套流水线并行,多套流水线可根据输入数据维度和用户需求指定使用的流水线套数,比如针对输入二维数据时可以仅启用两套流水线并发计算,输入三维数据时可以启用三套流水线并发计算,针对高维数据也可以复用多套流水线。多套流水线被启用时,模糊集数据库、模糊规则库会同时向启用的流水线传递计算所需数据,实现模糊推理计算核心的第二级数据并行,从而加快数据推理的计算。
如图7所示,一种并行模糊推理方法,包括如下步骤:
S1.PCIE模块在总控模块的控制下,接收由上位机所发送的基础功能请求和模糊推理计算请求,并将基础功能请求和模糊推理计算请求发送至总控模块;
S2.PCIE模块在总控模块根据基础功能请求实现基础功能后,将得到的基础功能结果发送至上位机;
S3.用户寄存器模块接收由总控模块发送的模糊推理计算请求,并将模糊推理计算请求发送至模糊推理计算模块;
S4.存储器模块接收由外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入总控模块中;
S5.总控模块将模糊推理计算输入数据发送至模糊推理计算模块中;
S6.模糊推理计算模块根据模糊推理计算请求和模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
S7.用户寄存器模块将模糊推理计算结果发送至总控模块;
S8.PCIE模块接收模糊推理计算结果,并将模糊推理计算结果发送至上位机。
步骤S1至步骤S8中,上位机向本系统发送基础功能请求和模糊推理计算请求;PCIE模块在总控模块的控制下,接收基础功能请求和模糊推理计算请求,并将基础功能请求和模糊推理计算请求均发送至总控模块中;总控模块接收到基础功能请求后,实现对应的基础功能,将得到的基础功能结果通过PCIE模块发送至上位机;在上位机发送请求的同时,外部寄存器向本系统发送外部数据;存储器模块接收外部数据并将外部数据作为模糊推理计算输入数据写入总控模块中;总控模块将模糊推理计算请求通过用户寄存器模块发送至模糊推理计算模块中;与此同时,总控模块还将模糊推理计算输入数据发送至模糊推理计算模块中;模糊推理计算模块接收到模糊推理计算请求和模糊推理计算输入数据后,实现模糊推理计算,并将模糊推理计算结果通过用户寄存器模块发送至总控模块中;总控模块通过控制PCIE模块将模糊推理计算结果发送至上位机。本方法在硬件资源、通信、功耗等因素受限的情况下,通过将基础功能请求和模糊推理计算请求并行处理,可以有效的节约资源,提高系统整体性能,降低功耗和延迟。
在本申请所提供的实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
另外,在本发明各实施例中的各功能模块可以全部集成在一个处理器中,也可以是各模块分别单独作为一个器件,也可以两个或两个以上模块集成在一个器件中;本发明各实施例中的各功能模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令及相关的硬件来完成,前述的程序指令可以存储于计算机可读取存储介质中,该程序指令在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
应当理解,本申请中如若使用了“系统”、“装置”、“单元”和/或“模块”,仅是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
本申请中如若使用了流程图,则该流程图是用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
以上对本发明所提供的一种并行模糊处理系统及方法进行了详细介绍。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种并行模糊推理系统,其特征在于,包括:总控模块、模糊推理计算模块、用户寄存器模块、PCIE模块和存储器模块;
所述总控模块分别与所述模糊推理计算模块、所述用户寄存器模块、所述PCIE模块和所述存储器模块连接;
所述模糊推理计算模块分别与所述PCIE模块和所述用户寄存器模块连接;
所述存储器模块与外部寄存器连接;
所述PCIE模块与上位机连接;
所述PCIE模块,用于在所述总控模块的控制下,接收由所述上位机所发送的基础功能请求和模糊推理计算请求,并将所述基础功能请求和所述模糊推理计算请求发送至所述总控模块;
所述PCIE模块,还用于在所述总控模块根据所述基础功能请求实现基础功能后,将得到的基础功能结果发送至所述上位机;
所述用户寄存器模块,用于接收由所述总控模块发送的所述模糊推理计算请求,并将所述模糊推理计算请求发送至所述模糊推理计算模块;
所述存储器模块,用于接收由所述外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入所述总控模块中;
所述总控模块,用于将所述模糊推理计算输入数据发送至所述模糊推理计算模块中;
所述模糊推理计算模块,用于根据所述模糊推理计算请求和所述模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
所述用户寄存器模块,还用于将所述模糊推理计算结果发送至所述总控模块;
所述PCIE模块,还用于接收所述模糊推理计算结果,并将所述模糊推理计算结果发送至所述上位机;
其中,所述总控模块实现基础功能的过程与所述模糊推理计算模块实现模糊推理计算的过程为并行处理的两个过程;
所述总控模块包括:系统RAM和存储控制模块;
所述存储控制模块一端与所述存储器模块连接,另一端与所述系统RAM连接;
所述存储器模块,用于接收由外部存储器发送的外部数据,并将外部数据发送至所述存储控制模块;
所述存储控制模块,用于接收由所述存储器模块发送的外部数据,并将外部数据作为所述模糊推理计算输入数据写入所述系统RAM中;
所述总控模块还包括:系统寄存器和DMA模块;
所述DMA模块一端与所述系统寄存器连接;
所述DMA模块另一端分别与所述PCIE模块和所述用户寄存器模块连接;
所述DMA模块,用于控制所述PCIE模块接收由所述上位机发送的所述基础功能请求,并将所述基础功能请求发送至所述系统寄存器;
所述系统寄存器,用于根据所述基础功能请求实现基础功能,得到基础功能结果并发送至所述DMA模块;
所述DMA模块,还用于控制所述PCIE模块接收所述基础功能结果,并将所述基础功能结果发送至所述上位机;
所述DMA模块,还用于向所述用户寄存器模块发送所述模糊推理计算请求,并接收由所述用户寄存器模块发送的所述模糊推理计算模块的模糊推理计算结果;
所述模糊推理计算模块包括:多个推理簇、调度器和局部RAM;
多个所述推理簇分别与所述调度器和所述局部RAM连接;
所述局部RAM分别与所述用户寄存器模块和所述存储控制模块连接;
所述调度器与所述用户寄存器模块连接;
所述调度器,用于接收由所述用户寄存器模块发送的多种所述模糊推理计算请求并将所述模糊推理计算请求分别发送至对应的所述推理簇;
所述存储控制模块,还用于将所述系统RAM中的所述模糊推理计算输入数据发送至所述局部RAM;
所述局部RAM,用于接收所述模糊推理计算输入数据,并将所述模糊推理计算输入数据发送至对应的所述推理簇;
所述推理簇,用于根据所述模糊推理计算请求和所述模糊推理计算输入数据实现模糊推理计算,得到模糊推理计算结果,并将所述模糊推理计算结果发送至局部RAM;
所述局部RAM,还用于将所述模糊推理计算结果发送至所述用户寄存器模块。
2.如权利要求1所述的并行模糊推理系统,其特征在于,所述推理簇包括:一个推理主核和多个推理核;
多个所述推理核均与所述推理主核连接;
所述推理主核和所述推理核均包括:模糊推理计算核心;
所述推理主核与所述调度器连接;
所述推理主核还包括:任务队列模块和分发器;
所述分发器分别与所述任务队列模块和所述模糊推理计算核心连接;
所述任务队列模块,用于接收由所述调度器发送的多种所述模糊推理计算请求,并生成模糊推理计算任务;
所述分发器,用于根据多个所述推理核的工作状态,下发所述模糊推理计算任务;
所述模糊推理计算核心,用于根据所述模糊推理计算任务完成模糊推理计算。
3.如权利要求2所述的并行模糊推理系统,其特征在于,还包括:
多个所述推理簇之间通过各自的所述推理主核相互连接;
所述推理主核还包括:任务迁移模块;
所述任务迁移模块与所述任务队列模块连接;
所述任务迁移模块,用于根据所述任务队列模块的负载状态,按照预设规则,将所述模糊推理计算任务迁移至对应的所述推理主核。
4.如权利要求2所述的并行模糊推理系统,其特征在于,所述模糊推理计算核心包括:初始化模块、模糊集数据库、模糊集规则库、计算模块和权重计算模块;
所述初始化模块分别与所述模糊集数据库和所述模糊集规则库连接;
所述模糊集数据库和所述模糊集规则库均与所述计算模块连接;
所述计算模块与所述权重计算模块连接;
所述初始化模块,用于接收模糊推理输入数据并进行模糊化处理;
所述模糊集数据库和所述模糊集规则库均基于处理后的模糊推理输入数据构建;
所述模糊集数据库,用于记录处理后的模糊推理输入数据和预设多种计算函数;
所述模糊集规则库,用于预设模糊推理规则;
所述计算模块,用于根据所述模糊推理规则和多种预设计算函数对所述处理后的模糊推理输入数据进行计算,输出附加权重的输出数据;
所述权重计算模块,用于计算所述附加权重的输出数据的附加权重值,并输出所述模糊推理计算结果。
5.如权利要求4所述的并行模糊推理系统,其特征在于,所述计算模块包括:规则设置模块、前提度计算模块和结论度计算模块;
所述规则设置模块和所述结论度计算模块均与所述模糊集规则库连接;
所述前提度计算模块和所述结论度计算模块均与所述模糊集数据库连接;
所述前提度计算模块分别与所述规则设置模块和所述结论度计算模块连接;
所述规则设置模块,用于根据所述处理后的模糊推理输入数据与所述模糊推理规则生成模糊规则;
所述前提度计算模块,用于根据所述模糊规则,计算所述处理后的模糊推理输入数据的前提度;
所述结论度计算模块,用于根据多个所述处理后的模糊推理输入数据的前提度,计算所述处理后的模糊推理输入数据的结论度。
6.如权利要求5所述的并行模糊推理系统,其特征在于,所述模糊推理计算核心还包括:多个流水线模块和控制模块;
所述控制模块分别与所述初始化模块和所述权重计算模块连接;
多个所述流水线模块一端均分别与所述模糊集数据库和所述模糊集规则库连接,另一端均与所述权重计算模块连接;
每个所述流水线模块内均设置有所述计算模块;
所述控制模块,用于控制所述初始化模块和所述权重计算模块实现对应的功能。
7.一种并行模糊推理方法,其特征在于,包括如下步骤:
PCIE模块在总控模块的控制下,接收由上位机所发送的基础功能请求和模糊推理计算请求,并将所述基础功能请求和所述模糊推理计算请求发送至所述总控模块;
所述PCIE模块在所述总控模块根据所述基础功能请求实现基础功能后,将得到的基础功能结果发送至所述上位机;
用户寄存器模块接收由所述总控模块发送的所述模糊推理计算请求,并将所述模糊推理计算请求发送至模糊推理计算模块;
存储器模块接收由外部寄存器发送的外部数据,并将外部数据作为模糊推理计算输入数据写入所述总控模块中;
所述总控模块将所述模糊推理计算输入数据发送至所述模糊推理计算模块中;
所述模糊推理计算模块根据所述模糊推理计算请求和所述模糊推理计算输入数据,实现模糊推理计算,得到模糊推理计算结果;
所述用户寄存器模块将所述模糊推理计算结果发送至所述总控模块;
所述PCIE模块接收所述模糊推理计算结果,并将所述模糊推理计算结果发送至所述上位机;
其中,所述总控模块实现基础功能的过程与所述模糊推理计算模块实现模糊推理计算的过程为并行处理的两个过程;
所述总控模块包括:系统RAM和存储控制模块;
所述存储控制模块一端与所述存储器模块连接,另一端与所述系统RAM连接;
所述存储器模块,用于接收由外部存储器发送的外部数据,并将外部数据发送至所述存储控制模块;
所述存储控制模块,用于接收由所述存储器模块发送的外部数据,并将外部数据作为所述模糊推理计算输入数据写入所述系统RAM中;
所述总控模块还包括:系统寄存器和DMA模块;
所述DMA模块一端与所述系统寄存器连接;
所述DMA模块另一端分别与所述PCIE模块和所述用户寄存器模块连接;
所述DMA模块,用于控制所述PCIE模块接收由所述上位机发送的所述基础功能请求,并将所述基础功能请求发送至所述系统寄存器;
所述系统寄存器,用于根据所述基础功能请求实现基础功能,得到基础功能结果并发送至所述DMA模块;
所述DMA模块,还用于控制所述PCIE模块接收所述基础功能结果,并将所述基础功能结果发送至所述上位机;
所述DMA模块,还用于向所述用户寄存器模块发送所述模糊推理计算请求,并接收由所述用户寄存器模块发送的所述模糊推理计算模块的模糊推理计算结果;
所述模糊推理计算模块包括:多个推理簇、调度器和局部RAM;
多个所述推理簇分别与所述调度器和所述局部RAM连接;
所述局部RAM分别与所述用户寄存器模块和所述存储控制模块连接;
所述调度器与所述用户寄存器模块连接;
所述调度器,用于接收由所述用户寄存器模块发送的多种所述模糊推理计算请求并将所述模糊推理计算请求分别发送至对应的所述推理簇;
所述存储控制模块,还用于将所述系统RAM中的所述模糊推理计算输入数据发送至所述局部RAM;
所述局部RAM,用于接收所述模糊推理计算输入数据,并将所述模糊推理计算输入数据发送至对应的所述推理簇;
所述推理簇,用于根据所述模糊推理计算请求和所述模糊推理计算输入数据实现模糊推理计算,得到模糊推理计算结果,并将所述模糊推理计算结果发送至局部RAM;
所述局部RAM,还用于将所述模糊推理计算结果发送至所述用户寄存器模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310815099.XA CN116542336B (zh) | 2023-07-05 | 2023-07-05 | 一种并行模糊推理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310815099.XA CN116542336B (zh) | 2023-07-05 | 2023-07-05 | 一种并行模糊推理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116542336A CN116542336A (zh) | 2023-08-04 |
CN116542336B true CN116542336B (zh) | 2023-09-12 |
Family
ID=87456401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310815099.XA Active CN116542336B (zh) | 2023-07-05 | 2023-07-05 | 一种并行模糊推理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116542336B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0296238A (ja) * | 1988-09-30 | 1990-04-09 | Omron Tateisi Electron Co | フアジイコンピュータ |
US5051932A (en) * | 1988-03-25 | 1991-09-24 | Hitachi, Ltd. | Method and system for process control with complex inference mechanism |
JPH0830459A (ja) * | 1994-07-19 | 1996-02-02 | Hitachi Ltd | 半導体集積回路 |
US5677996A (en) * | 1993-12-29 | 1997-10-14 | Korea Telecommunication Authority | Fuzzy computer |
JPH09319581A (ja) * | 1996-05-27 | 1997-12-12 | Toshiba Corp | 並列ファジィ推論方法 |
US5710867A (en) * | 1994-05-23 | 1998-01-20 | Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno | Method for parallel processing of fuzzy logic inference rules and corresponding circuit architecture with fuzzy inputs and outputs |
CN1231441A (zh) * | 1998-04-03 | 1999-10-13 | 中国科学院计算技术研究所 | 模糊推理协处理器 |
KR20000013535A (ko) * | 1998-08-10 | 2000-03-06 | 윤종용 | 디지털 로직구조의 퍼지추론장치 |
KR20110037183A (ko) * | 2009-10-06 | 2011-04-13 | 한국과학기술원 | 뉴로-퍼지 시스템과 병렬처리 프로세서가 결합된 전력 제어 가능한 컴퓨터 시스템, 이를 이용하여 영상에서 물체를 인식하는 방법 및 장치 |
-
2023
- 2023-07-05 CN CN202310815099.XA patent/CN116542336B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5051932A (en) * | 1988-03-25 | 1991-09-24 | Hitachi, Ltd. | Method and system for process control with complex inference mechanism |
JPH0296238A (ja) * | 1988-09-30 | 1990-04-09 | Omron Tateisi Electron Co | フアジイコンピュータ |
US5677996A (en) * | 1993-12-29 | 1997-10-14 | Korea Telecommunication Authority | Fuzzy computer |
US5710867A (en) * | 1994-05-23 | 1998-01-20 | Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno | Method for parallel processing of fuzzy logic inference rules and corresponding circuit architecture with fuzzy inputs and outputs |
JPH0830459A (ja) * | 1994-07-19 | 1996-02-02 | Hitachi Ltd | 半導体集積回路 |
JPH09319581A (ja) * | 1996-05-27 | 1997-12-12 | Toshiba Corp | 並列ファジィ推論方法 |
CN1231441A (zh) * | 1998-04-03 | 1999-10-13 | 中国科学院计算技术研究所 | 模糊推理协处理器 |
KR20000013535A (ko) * | 1998-08-10 | 2000-03-06 | 윤종용 | 디지털 로직구조의 퍼지추론장치 |
KR20110037183A (ko) * | 2009-10-06 | 2011-04-13 | 한국과학기술원 | 뉴로-퍼지 시스템과 병렬처리 프로세서가 결합된 전력 제어 가능한 컴퓨터 시스템, 이를 이용하여 영상에서 물체를 인식하는 방법 및 장치 |
Non-Patent Citations (1)
Title |
---|
模糊控制系统的垂直切换判决算法分析;孟超 等;《重庆大学学报》;第38卷;第130-135页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116542336A (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ni et al. | A distributed drafting algorithm for load balancing | |
CN104714852A (zh) | 一种适用于分布式机器学习的参数同步优化方法及其系统 | |
CN106603692B (zh) | 一种分布式存储系统中的数据存储方法及装置 | |
CN113946431B (zh) | 一种资源调度方法、系统、介质及计算设备 | |
CN104580447A (zh) | 一种基于访问热度的时空数据服务调度方法 | |
CN111966289A (zh) | 基于Kafka集群的分区优化方法和系统 | |
CN115543626A (zh) | 采用异构计算资源负载均衡调度的电力缺陷图像仿真方法 | |
CN116542336B (zh) | 一种并行模糊推理系统及方法 | |
CN114721818A (zh) | 一种基于Kubernetes集群的GPU分时共享方法和系统 | |
CN110222410A (zh) | 一种基于Hadoop MapReduce的电磁环境仿真方法 | |
CN103095812A (zh) | 一种基于用户请求响应时间的副本创建方法 | |
DE102015218250A1 (de) | Initiierung mehrerer Datentransaktionen auf einem Systembus | |
WO2022237484A1 (zh) | 一种推理系统、方法、装置及相关设备 | |
CN115878333A (zh) | 进程组间的一致性判断方法、装置及设备 | |
CN114896070A (zh) | 一种用于深度学习任务的gpu资源分配方法 | |
CN113556242B (zh) | 一种基于多处理节点来进行节点间通信的方法和设备 | |
CN106027685A (zh) | 一种基于云计算机系统的高峰访问的方法 | |
CN106354673A (zh) | 基于多dma队列的数据传输方法和装置 | |
JPH04288638A (ja) | コンピュータシステム | |
WO2024114728A1 (zh) | 一种异构处理器及相关调度方法 | |
CN110928818B (zh) | 直接存储访问、处理器和电子设备 | |
Kumaresan et al. | Priority based Multi-Server Queueing Model for Electric Vehicle Charging | |
CN115242649B (zh) | 数据回传方法和系统 | |
CN107656894A (zh) | 一种多主机处理系统和方法 | |
CN115952074B (zh) | 片上系统的性能验证方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |