CN113676164A - 脉冲调制控制系统、装置及方法 - Google Patents
脉冲调制控制系统、装置及方法 Download PDFInfo
- Publication number
- CN113676164A CN113676164A CN202110799813.1A CN202110799813A CN113676164A CN 113676164 A CN113676164 A CN 113676164A CN 202110799813 A CN202110799813 A CN 202110799813A CN 113676164 A CN113676164 A CN 113676164A
- Authority
- CN
- China
- Prior art keywords
- data signal
- signal
- pulse modulation
- parameter data
- waveform
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000011664 signaling Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 13
- 238000005457 optimization Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 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
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K7/00—Modulating pulses with a continuously-variable modulating signal
- H03K7/08—Duration or width modulation ; Duty cycle modulation
-
- 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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/321—Program or instruction counter, e.g. incrementing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Transmitters (AREA)
Abstract
本申请涉及一种脉冲调制控制系统、装置及方法,所述处理器及脉冲调制接口模块,其中,所述处理器基于RISC‑V开源指令集架构,用于接收用户操作指令,并基于所述操作指令生成数据信号;所述脉冲调制接口模块与所述处理器连接,用于接收所述数据信号,并基于所述数据信号输出预设波形。基于RISC‑V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
Description
技术领域
本申请涉及脉冲调制领域,特别涉及一种脉冲调制控制系统、装置及方法。
背景技术
脉冲宽度调制PWM(Pulse width modulation,PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
然而,传统的脉冲宽度调制控制系统采用的微处理器多为x86与ARM架构,这两种架构作为通用型的架构,没有专门用于PWM的指令,控制效率较低下,往往需要多条指令才能完成一次PWM输出操作。
并且,作为商用的架构的x86与ARM架构在其使用与发展过程中,为了能够保持架构的向后兼容性,其不得不保留许多过时的定义,导致其指令数目多,指令冗余严重,用它们设计新的处理器,面积和功耗不可避免地比较大,除此之外,使用商用的架构还存在着高昂的专利和授权费用问题。
发明内容
基于此,有必要针对上述背景技术中的问题,提供一种脉冲调制控制系统、装置及方法,基于RISC-V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
本申请的一方面提供一种脉冲调制控制系统,包括处理器及脉冲调制接口模块,其中,所述处理器基于RISC-V开源指令集架构,用于接收用户操作指令,并基于所述操作指令生成数据信号;所述脉冲调制接口模块与所述处理器连接,用于接收所述数据信号,并基于所述数据信号输出预设波形。
上述实施例中的脉冲调制控制系统中,通过设置基于RISC-V开源指令集架构的处理器接收用户操作指令,并基于操作指令生成数据信号,从而控制脉冲调制接口模块输出预设波形。基于RISC-V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
在其中一个实施例中,所述处理器包括基础指令子模块及扩展指令子模块,其中,基础指令子模块用于实现RISC-V标准定义的标准指令集;扩展指令子模块用于实现用户定义的自定制指令集。
在其中一个实施例中,所述自定制指令包括脉冲调制控制指令,所述脉冲调制控制指令用于生成控制脉冲调制参数的参数数据信号。
在其中一个实施例中,所述脉冲调制接口模块包括十六条脉冲调制通道,任一条所述脉冲调制通道包括寄存器组、计数器及方向控制器,其中,寄存器组与所述处理器连接,所述寄存器组用于接收并存放所述参数数据信号;计数器与所述寄存器组连接,用于获取开始信号及所述数据信号,基于所述开始信号及所述数据信号开始计数,并生成阶段信号;方向控制器与所述寄存器组及所述计数器均连接,用于获取所述数据信号及所述阶段信号,基于所述数据信号及所述阶段信号,输出所述预设波形。
在其中一个实施例中,所述参数数据信号包括第一参数数据信号、第二参数数据信号、第三参数数据信号及第四参数数据信号;所述寄存器组包括脉冲波形控制位、起始相位控制位、占空比控制位及波形周期控制位,其中,所述脉冲波形控制位占1比特,用于存放所述第一参数数据信号;所述起始相位控制位占1个字节,用于存放所述第二参数数据信号;所述占空比控制位占1个字节,用于存放所述第三参数数据信号;所述波形周期控制位占2个字节,用于存放所述第四参数数据信号。
所述阶段信号包括触发信号、第一阶段控制信号及第二阶段控制信号,所述计数器包括第一计数器、第二计数器及第三计数器,其中,第一计数器与所述起始相位控制位及所述方向控制器均连接,用于获取开始信号及所述第二参数数据信号数值,基于所述开始信号及所述第二参数数据信号数值开始计数,并生成所述触发信号及所述第一阶段控制信号;第二计数器与所述占空比控制位及所述第一计数器均连接,用于获取触发信号及所述第三参数数据信号数值,基于所述触发信号及所述第三参数数据信号数值开始计数,并输出所述第二阶段控制信号;第三计数器与所述脉冲波形控制位连接,用于获取所述第一参数数据信号数值,基于所述第一参数数据信号数值开始计时,并控制所述脉冲调制控制系统停止。
在其中一个实施例中,所述预设波形包括凸波形及凹波形,所述方向控制器被配置为:
获取所述第一参数数据信号及所述第一阶段控制信号,基于所述第一参数数据信号及所述第一阶段控制信号生成所述凸波形或所述凹波形;
获取所述第一参数数据信号及所述第二阶段控制信号,基于所述第一参数数据信号及所述第二阶段控制信号生成所述凹波形或所述凸波形。
在其中一个实施例中,脉冲调制控制系统还包括接口控制器及第一接口模块,其中,接口控制器与所述基础指令子模块连接,用于执行所述标准指令集;第一接口模块与所述接口控制器连接,用于实现数据的传输及外接设备的控制。
在其中一个实施例中,所述第一接口模块包括UART接口、QSPI接口、I2S接口、I2C接口、GPIO接口及JTAG接口中至少一种。
本申请的另一方面提供一种脉冲调制控制装置,包括任一本申请实施例中所述的脉冲调制控制系统。
上述实施例中的脉冲调制控制装置,通过设置基于RISC-V开源指令集架构的处理器接收用户操作指令,并基于所述操作指令生成数据信号,从而控制脉冲调制接口模块输出预设波形。基于RISC-V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
本申请的又一方面提供一种脉冲调制控制方法,包括如下步骤:
获取用户操作指令;
基于RISC-V开源指令集架构的处理器基于所述用户操作指令生成数据信号;
基于脉冲调制接口模块接收所述数据信号,根据所述数据信号输出预设波形。
本申请中的脉冲调制控制方法,利用RISC-V内核可自定义指令集的特点,设计了一组专门用于PWM控制的指令,该指令可单条指令实现PWM波形的生成。比传统x86和ARM架构多指令操作效率要高出很多,而且RISC-V架构的控制器更加的轻盈、低功耗。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他实施例的附图。
图1为本申请第一实施例中提供的一种脉冲调制控制系统结构示意图;
图2为本申请第二实施例中提供的种脉冲调制控制系统结构示意图;
图3为本申请第三实施例中提供的一种脉冲调制控制系统结构示意图;
图4为本申请第四实施例中提供的一种脉冲调制通道结构示意图;
图5为本申请第五实施例中提供的一种脉冲调制控制指令参数示意图;
图6为本申请第六实施例中提供的一种脉冲调制通道结构示意图;
图7为本申请第七实施例中提供的一种脉冲调制控制系统结构示意图;
图8为本申请第八实施例中提供的一种脉冲调制控制系统结构示意图;
图9为本申请一实施例中提供的一种脉冲调制控制方法流程示意图;
图10为本申请另一实施例中提供的一种脉冲调制控制方法流程示意图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳的实施例。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
在使用本文中描述的“包括”、“具有”、和“包含”的情况下,除非使用了明确的限定用语,例如“仅”、“由……组成”等,否则还可以添加另一部件。除非相反地提及,否则单数形式的术语可以包括复数形式,并不能理解为其数量为一个。
应当理解,尽管本文可以使用术语“第一”、“第二”等来描述各种元件,但是这些元件不应受这些术语的限制。这些术语仅用于将一个元件和另一个元件区分开。例如,在不脱离本申请的范围的情况下,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件。
在本申请中,除非另有明确的规定和限定,术语“相连”、“连接”等术语应做广义理解,例如,可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
在处理器领域,目前主流的架构为x86与ARM架构,经过几十年的发展,现代的x86与ARM架构的架构文档长达几百数千页,且版本众多,一个主要的原因是因为其架构的发展的过程也伴随了现代处理器架构技术的不断发展成熟,并且作为商用的架构,为了能够保持架构的向后兼容性,其不得不保留许多过时的定义,或者在定义新的架构部分时为了能够将就已经存在的技术部分,久而久之就变得极为冗长。然而,RISC-V作为一种指令集,与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。它同时兼顾数据的传输量和传输速度,是异构IoT时代绝佳的架构,由其衍化而来的一系列生态日趋完善。RISC-V优势还在于:开源,CPU设计成本低,通过协作在硬件中产生的任何创新都将创造巨大的经济效益;简单,基础指令集仅40多条,满足嵌入式及物联网对代码体积的高要求;灵活,预留大量的编码空间和4条用户指令,可用于扩展指令集。虽然RISC-V不是第一个开源指令集,但它具有重要意义,因为其设计使其适用于现代计算设备。设计者考虑到了这些用途中的性能与功率效率。该指令集还具有众多支持的软件,这解决了新指令集通常的弱点。
本申请的一个实施例中,如图1所示,提供了一种脉冲调制控制系统100,包括处理器10及脉冲调制接口模块20,其中,所述处理器10基于RISC-V开源指令集架构,用于接收用户操作指令,并基于所述操作指令生成数据信号;所述脉冲调制接口模块20与所述处理器10连接,用于接收所述数据信号,并基于所述数据信号输出预设波形。
上述实施例中的脉冲调制控制系统100中,通过设置基于RISC-V开源指令集架构的处理器10接收用户操作指令,并基于所述操作指令生成数据信号,从而控制脉冲调制接口模块20输出预设波形。基于RISC-V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
在其中一个实施例中,如图2所示,所述处理器10包括基础指令子模块11及扩展指令子模块12,其中,基础指令子模块11用于实现RISC-V标准定义的标准指令集;扩展指令子模块12用于实现用户定义的自定制指令集。
具体地,RISC-V架构相比其他成熟的商业架构的最大一个不同还在于它是一个模块化的架构,在本申请中符合RISC-V ISA标准的CPU包括基础指令子模块11,该模块用于实现RISC-V标准定义的标准指令集,所述标准指令集包括RV32I、RV32E、RV64I及RV128I,其中,RV32I为32位整数指令集,RV32E为RV32I的子集,用于小型的嵌入式场景,RV64I为64位整数指令集,兼容RV32I,RV128I为128位整数指令集,兼容RV64I和RV32I;符合RISC-V ISA标准的CPU还包括扩展指令子模块12,用于实现用户定义的自定制指令集。RISC-V架构不仅短小精悍,而且其不同的部分还能以模块化的方式组织在一起,从而试图通过一套统一的架构满足各种不同的应用,这种模块化是x86与ARM架构所不具备的。RISC-V ISA开源意味着针对不同的应用场景,均可创造相应的芯片架构,借助相应的定制化指令工具可以使应用加速更有效率,多核异构的特点也促进功耗优化。
在其中一个实施例中,所述自定制指令包括脉冲调制控制指令,所述脉冲调制控制指令用于生成控制脉冲调制参数的参数数据信号。
具体地,基于RISC-V开源指令集架构中扩展指令集,用户可以自定制指令,应用在脉冲调制技术中,用户可以根据需求,指定脉冲调制控制指令,所述脉冲调制控制指令用于生成控制脉冲调制参数的参数数据信号,所述脉冲调制参数包括脉冲长度、占空比、开始相位、波形等。
在其中一个实施例中,如图3和图4所示,所述脉冲调制接口模块20包括十六条脉冲调制通道,任一条所述脉冲调制通道包括寄存器组、计数器及方向控制器,其中,寄存器组与所述处理器连接,所述寄存器组用于接收并存放所述参数数据信号;计数器与所述寄存器组连接,用于获取开始信号及所述数据信号,基于所述开始信号及所述数据信号开始计数,并生成阶段信号;方向控制器与所述寄存器组及所述计数器均连接,用于获取所述数据信号及所述阶段信号,基于所述数据信号及所述阶段信号,输出所述预设波形。
具体地,所述脉冲调制接口模块20包括十六条脉冲调制通道PWM0、PWM1、PWM2……PWM15,每一条PWM通道包括寄存器组、计数器及方向控制器。通过寄存器组与处理器连接,用于接收脉冲调制控制指令并存放所述参数数据信号,经由所述计数器及方向控制器处理后,输出预设波形。
在其中一个实施例中,所述参数数据信号包括第一参数数据信号、第二参数数据信号、第三参数数据信号及第四参数数据信号;所述寄存器组包括脉冲波形控制位、起始相位控制位、占空比控制位及波形周期控制位,其中,所述脉冲波形控制位占1比特,用于存放所述第一参数数据信号;所述起始相位控制位占1个字节,用于存放所述第二参数数据信号;所述占空比控制位占1个字节,用于存放所述第三参数数据信号;所述波形周期控制位占2个字节,用于存放所述第四参数数据信号。
其中,所述阶段信号包括触发信号、第一阶段控制信号及第二阶段控制信号,所述计数器包括第一计数器、第二计数器及第三计数器,其中,第一计数器与所述起始相位控制位及所述方向控制器均连接,用于获取开始信号及所述第二参数数据信号数值,基于所述开始信号及所述第二参数数据信号数值开始计数,并生成所述触发信号及所述第一阶段控制信号;第二计数器与所述占空比控制位及所述第一计数器均连接,用于获取触发信号及所述第三参数数据信号数值,基于所述触发信号及所述第三参数数据信号数值开始计数,并输出所述第二阶段控制信号;第三计数器与所述脉冲波形控制位连接,用于获取所述第一参数数据信号数值,基于所述第一参数数据信号数值开始计时,并控制所述脉冲调制控制系统停止。
作为示例,如图5所示,通过RISC-V自定义指令集,定义一组脉冲调制控制指令setPWMn(s,a,b,c),其中s,a,b,c为脉冲调制控制指令用于生成控制脉冲调制参数的参数数据信号。a对应第一参数数据信号用于控制预设波形的起始位置,b对应第二参数数据信号用于控制预设波形的占空比,c对应第三参数数据信号用于控制预设波形的波长,s对应第四参数数据信号用于控制预设波形,具体地,s为0时,生成上凸波形,s为1时,生成为下凹波形。通过设定指令参数s,a,b及c,即可生成对应参数数据的预设波形。而传统x86和ARM架构多指令实现脉冲调制,完成一个脉冲的输出需要5到10条指令,还需要占用处理器的进程。本发明使用自定义指令,配合PWM控制器,只需要一条指令即可完成一个脉冲生成,且不占用处理器进程。
作为示例,如图6所示,寄存器包括脉冲波形控制位、起始相位控制位、占空比控制位及波形周期控制位,所述寄存器用于存放参数数据信号,其中,脉冲波形控制位占1比特(1bit),用于存放所述第一参数数据信号a;所述起始相位控制位占1个字节(8bit),用于存放所述第二参数数据信号b;所述占空比控制位占1个字节(8bit),用于存放所述第三参数数据信号c;所述波形周期控制位占2个字节(16bit),用于存放所述第四参数数据信号s。计数器包括第一计数器、第二计数器及第三计数器。
具体地,当用户下达操作指令setPWMn(s,a,b,c)后,寄存器组读取数据参数a,b,c,s参数,并分别传给第一计数器、第二计数器、第三计数器及方向控制器,同时一个开始信号被发给第一计数器,第一计数器和第三计数器同时开始计数,第一计数器的计数阶段输出第一阶段控制信号,控制方向控制器输出与s相同的逻辑电平,即s=0时,输出0,s=1时输出1。第一计数器计到a后,结束计数并输出触发信号,第二计数器开始计数。第二计数器的计数阶段输出第二阶段控制信号,控制方向控制器输出与s相反的逻辑电平,即s=0时,输出1,s=1时输出0。第二计数器计到b结束,方向控制器输出s相同的逻辑电平。第三计数器计到c计数整个计数周期,输出一个结束标志,表示完成操作指令setPWMn(s,a,b,c),并输出预设的波形。
在其中一个实施例中,所述预设波形包括凸波形及凹波形,所述方向控制器被配置为:
获取所述第一参数数据信号及所述第一阶段控制信号,基于所述第一参数数据信号及所述第一阶段控制信号生成所述凸波形或所述凹波形;
获取所述第一参数数据信号及所述第二阶段控制信号,基于所述第一参数数据信号及所述第二阶段控制信号生成所述凹波形或所述凸波形。
具体地,方向控制器基于第一参数数据信号及阶段控制信号控制输出脉冲的波形,其中,第一参数数据信号s存储在寄存器组的脉冲波形控制位中,阶段信号由计数器控制发出,作为示例,当第一参数数据信号s=0,且方向控制器获取到第一阶段信号时,方向控制器输出上凸波形;当第一参数数据信号s=0,且方向控制器获取到第二阶段信号时,方向控制器输出下凹波形;当第一参数数据信号s=1,且方向控制器获取到第一阶段信号时,方向控制器输出下凹波形;当第一参数数据信号s=1,且方向控制器获取到第二阶段信号时,方向控制器输出上凸波形。本申请通过设置一条基于RISC-V的参数指令,即可进行脉冲宽度调制控制,大大简化了脉冲宽度调制控制过程,且降低了成本。
在其中一个实施例中,如图7所示,脉冲调制控制系统100还包括接口控制器30及第一接口模块40,其中,接口控制器30与所述基础指令子模块11连接,用于执行所述标准指令集;第一接口模块40与所述接口控制器30连接,用于实现数据的传输及外接设备的控制。
具体地,第一接口模块可以为处理器常用的接口,用于执行除了脉冲调制控制之外的其他功能,接口控制器可以为I/O控制器。
在其中一个实施例中,如图8所示,所述第一接口模块包括UART接口、QSPI接口、I2S接口、I2C接口、GPIO接口及JTAG接口中至少一种。
具体地,UART为通用异步收发传输接口,QSPI为六线串行外设接口,I2S为集成电路内置音频总线,I2C为二线制同步串行总线,GPIO为通用型输入输出接口,JTAG为联合测试总线。它们通过一个I/O控制器,由RISC-V内核的普通指令集操作。而PWM接口组则由扩展指令集X配合实现波形发生器的操作。
本申请的另一方面提供一种脉冲调制控制装置,包括任一本申请实施例中所述的脉冲调制控制系统。
上述实施例中的脉冲调制控制装置,通过设置基于RISC-V开源指令集架构的处理器接收用户操作指令,并基于所述操作指令生成数据信号,从而控制脉冲调制接口模块输出预设波形。基于RISC-V开源指令集架构使得用户可以自定义操作,提高脉冲调制过程的效率和灵活度,同时实现功耗优化。
本申请的又一方面提供一种脉冲调制控制方法,如图9所示,所述方法包括:
步骤202:获取用户操作指令;
步骤204:基于RISC-V开源指令集架构的处理器基于所述用户操作指令生成数据信号;
步骤206:基于脉冲调制接口模块接收所述数据信号,根据所述数据信号输出预设波形。
本申请中的脉冲调制控制方法利用RISC-V内核可自定义指令集的特点,设计了一组专门用于PWM控制的指令,该指令可单条指令实现PWM波形的生成。相比传统x86和ARM架构多指令操作效率要高出很多,而且RISC-V架构的控制器更加的轻盈、低功耗。
作为示例,利用RISC-V内核可自定义指令集的特点,设计了一组专门用于PWM控制的指令setPWMn(s,a,b,c),其中s,a,b,c为脉冲调制控制指令用于生成控制脉冲调制参数的参数数据信号。a对应第一参数数据信号用于控制预设波形的起始位置,b对应第二参数数据信号用于控制预设波形的占空比,c对应第三参数数据信号用于控制预设波形的波长,s对应第四参数数据信号用于控制预设波形,具体地,s为0时,生成上凸波形,s为1时,生成为下凹波形。具体地,操作指令控制PWM生成的过程如图10所示,控制器执行setPWMn(s,a,b,c)指令,将s,a,b,c参数数据信号送至寄存组,经由所述计数器及方向控制器处理后,输出预设波形。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
请注意,上述实施例仅出于说明性目的而不意味对本发明的限制。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种脉冲调制控制系统,其特征在于,包括:
处理器,所述处理器基于RISC-V开源指令集架构,用于接收用户操作指令,并基于所述操作指令生成数据信号;
脉冲调制接口模块,所述脉冲调制接口模块与所述处理器连接,用于接收所述数据信号,并基于所述数据信号输出预设波形。
2.根据权利要求1所述的脉冲调制控制系统,其特征在于,所述处理器包括:
基础指令子模块,用于实现RISC-V标准定义的标准指令集;
扩展指令子模块,用于实现用户定义的自定制指令集。
3.根据权利要求2所述的脉冲调制控制系统,其特征在于,所述自定制指令包括:
脉冲调制控制指令,所述脉冲调制控制指令用于生成用于控制脉冲调制参数的参数数据信号。
4.根据权利要求3所述的脉冲调制控制系统,其特征在于,所述脉冲调制接口模块包括十六条脉冲调制通道,任一条所述脉冲调制通道包括:
寄存器组,与所述处理器连接,所述寄存器组用于接收并存放所述参数数据信号;
计数器,与所述寄存器组连接,用于获取开始信号及所述数据信号,基于所述开始信号及所述数据信号开始计数,并生成阶段信号;
方向控制器,与所述寄存器组及所述计数器均连接,用于获取所述数据信号及所述阶段信号,基于所述数据信号及所述阶段信号,输出所述预设波形。
5.根据权利要求4所述的脉冲调制控制系统,其特征在于,所述参数数据信号包括第一参数数据信号、第二参数数据信号、第三参数数据信号及第四参数数据信号;
所述寄存器组包括:
脉冲波形控制位,所述脉冲波形控制位占1比特,用于存放所述第一参数数据信号;
起始相位控制位,所述起始相位控制位占1个字节,用于存放所述第二参数数据信号;
占空比控制位,所述占空比控制位占1个字节,用于存放所述第三参数数据信号;
波形周期控制位,所述波形周期控制位占2个字节,用于存放所述第四参数数据信号;
其中,所述阶段信号包括触发信号、第一阶段控制信号及第二阶段控制信号,所述计数器包括:
第一计数器,与所述起始相位控制位及所述方向控制器均连接,用于获取开始信号及所述第二参数数据信号数值,基于所述开始信号及所述第二参数数据信号数值开始计数,并生成所述触发信号及所述第一阶段控制信号;
第二计数器,与所述占空比控制位及所述第一计数器均连接,用于获取触发信号及所述第三参数数据信号数值,基于所述触发信号及所述第三参数数据信号数值开始计数,并输出所述第二阶段控制信号;
第三计数器,与所述脉冲波形控制位连接,用于获取所述第一参数数据信号数值,基于所述第一参数数据信号数值开始计时,并控制所述脉冲调制控制系统停止。
6.根据权利要求5所述的脉冲调制控制系统,其特征在于,所述预设波形包括凸波形及凹波形,所述方向控制器被配置为:
获取所述第一参数数据信号及所述第一阶段控制信号,基于所述第一参数数据信号及所述第一阶段控制信号生成所述凸波形或所述凹波形;
获取所述第一参数数据信号及所述第二阶段控制信号,基于所述第一参数数据信号及所述第二阶段控制信号生成所述凹波形或所述凸波形。
7.根据权利要求1所述的脉冲调制控制系统,其特征在于,还包括:
接口控制器,与所述基础指令子模块连接,用于执行所述标准指令集;
第一接口模块,与所述接口控制器连接,用于实现数据的传输及外接设备的控制。
8.根据权利要求7所述的脉冲调制控制系统,其特征在于,所述第一接口模块包括UART接口、QSPI接口、I2S接口、I2C接口、GPIO接口及JTAG接口中至少一种。
9.一种脉冲调制控制装置,其特征在于,包括:
根据权利要求1-8任一项所述的脉冲调制控制系统。
10.一种脉冲调制控制方法,其特征在于,所述方法包括:
获取用户操作指令;
基于RISC-V开源指令集架构的处理器基于所述用户操作指令生成数据信号;
基于脉冲调制接口模块接收所述数据信号,根据所述数据信号输出预设波形。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110799813.1A CN113676164A (zh) | 2021-07-15 | 2021-07-15 | 脉冲调制控制系统、装置及方法 |
PCT/CN2021/121672 WO2023284131A1 (zh) | 2021-07-15 | 2021-09-29 | 脉冲调制控制系统、装置及方法 |
US18/544,453 US20240118893A1 (en) | 2021-07-15 | 2023-12-19 | Pulse modulation control system, device, and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110799813.1A CN113676164A (zh) | 2021-07-15 | 2021-07-15 | 脉冲调制控制系统、装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113676164A true CN113676164A (zh) | 2021-11-19 |
Family
ID=78539207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110799813.1A Pending CN113676164A (zh) | 2021-07-15 | 2021-07-15 | 脉冲调制控制系统、装置及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240118893A1 (zh) |
CN (1) | CN113676164A (zh) |
WO (1) | WO2023284131A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8731042B2 (en) * | 2012-02-24 | 2014-05-20 | Silicon Laboratories Inc. | Generating pulse width modulated signals |
CN110968972B (zh) * | 2018-09-28 | 2022-06-14 | 比亚迪股份有限公司 | 基于fpga的模拟速度的脉冲生成装置、方法,及计算机设备 |
CN109743046B (zh) * | 2019-01-16 | 2021-04-27 | 深圳市显控科技股份有限公司 | 一种逐脉冲调制方法和系统 |
CN110690879B (zh) * | 2019-10-18 | 2023-09-01 | 西安许继电力电子技术有限公司 | 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 |
CN111400986B (zh) * | 2020-02-19 | 2024-03-19 | 西安智多晶微电子有限公司 | 一种集成电路计算设备及计算处理系统 |
CN112199322A (zh) * | 2020-09-30 | 2021-01-08 | 中国电力科学研究院有限公司 | 一种电力智能控制终端及其基于risc-v的soc电力芯片架构 |
-
2021
- 2021-07-15 CN CN202110799813.1A patent/CN113676164A/zh active Pending
- 2021-09-29 WO PCT/CN2021/121672 patent/WO2023284131A1/zh unknown
-
2023
- 2023-12-19 US US18/544,453 patent/US20240118893A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023284131A1 (zh) | 2023-01-19 |
WO2023284131A9 (zh) | 2023-12-21 |
US20240118893A1 (en) | 2024-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103678187B (zh) | 一种微控制单元及其控制方法 | |
CN106980587B (zh) | 一种通用输入输出时序处理器及时序输入输出控制方法 | |
CN104615439A (zh) | 一种可重构系统的配置控制器 | |
CN107526614B (zh) | Fpga开发板的通信方法 | |
CN109613970A (zh) | 一种基于fpga和dsp架构的低功耗处理方法 | |
CN114817114B (zh) | 一种mipi接口、及其控制方法、装置及介质 | |
CN109857190A (zh) | 一种时钟信号处理方法、装置、设备及可读存储介质 | |
CN113676164A (zh) | 脉冲调制控制系统、装置及方法 | |
CN103293373B (zh) | 电能计量装置及其电能计量芯片 | |
CN111710357B (zh) | Mcu的mtp单元读写控制电路 | |
CN110856195B (zh) | 射频组件的配置系统及方法 | |
CN101799793A (zh) | 闪存控制方法及装置 | |
CN203259592U (zh) | 电能计量装置及其电能计量芯片 | |
CN205247119U (zh) | 低频缓变信号实时监测装置 | |
CN109388531B (zh) | 基于dsp板卡的测试装置及其测试方法 | |
CN114721464A (zh) | 片上系统和计算装置 | |
CN107872152A (zh) | 电源管理电路及其实现方法 | |
CN111782574A (zh) | 一种串行外设接口控制方法和串行外设接口控制器 | |
CN104331385A (zh) | 一种串行外围接口的高速半硬件实现方法 | |
CN110674077A (zh) | 基于fpga的数字引脚转换装置及方法 | |
CN201007923Y (zh) | 一种针对flash的高效图形发生装置 | |
CN211123733U (zh) | 一种可扩展的plc核心模块 | |
CN113760809B (zh) | 一种gpio接口的配置方法、系统、装置及可读存储介质 | |
CN111062469B (zh) | 计算装置及相关产品 | |
CN213876697U (zh) | 一种高灵活度低带宽的ssd主控芯片的运算加速电路 |
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 |