本发明属于电子领域,具体涉及通过自定制qsys外设控制dds输出的系统及方法。
背景技术:
现有的dds输出控制系统的原理如下:mcu通过并行输入输出(pio)模式直接控制dds模块。pio模式是一种通过cpu执行i/o端口指令来进行数据读写的数据交换模式。这种模式数据传输速率低下,cpu占有率也很高,大量传输数据时会因为占用过多的cpu资源而导致系统停顿,无法进行其它的操作。
技术实现要素:
发明目的:本发明针对上述现有技术存在的问题做出改进,即本发明的第一个目的在于公开了通过自定制qsys外设控制dds输出的系统,其通过qsys中的自定制元件功能定制所需组件时序上的转换逻辑,通过所描述的元件接口将外设直接接入系统总线(avalon总线),并编写相关的软件对其进行操作。本发明的第二个目的在于公开了通过自定制qsys外设控制dds输出的方法。
技术方案:通过自定制qsys外设控制dds输出的系统,包括:
软核处理器,用于配置dds的频率和波形;
avalon总线,与所述软核处理器相连,用于软核处理器和外设进行数据交互;
元件接口转换匹配模块,与所述avalon总线相连,用于对来自avalon总线的信号进行译码;
dds输出控制模块,与所述元件接口转换匹配模块相连,用于配置dds的寄存器;
dds信号产生模块,与所述dds输出控制模块相连,用于产生输出信号。
进一步地,所述dds输出控制模块包括:
波形数据寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于存储波形在不同时刻的输出幅度;
频率控制字寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于存储当前待输出波形的频率;
控制命令寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于启动和停止波形输出;
波形信号寄存器,其输出端与元件接口转换匹配模块的输入端相连,用于寄存dds信号产生模块产生的波形信号。
通过自定制qsys外设控制dds输出的方法,包括以下步骤:
(1)软核处理器通过avalon总线发送波形数据,该波形数据存储在波形数据寄存器中,
(2)软核处理器再通过avalon总线向频率控制字寄存器发送产生波形所需的频率控制字,并将频率控制字发送给dds信号产生模块,
(3)软核处理器向控制命令寄存器发送控制命令,并将控制命令发送给dds信号产生模块,
(4)dds信号产生模块通过获得的频率控制字和控制命令,读取波形数据寄存器中的波形数据产生波形信号,并将该波形信号寄存在波形信号寄存器中,
(5)软核处理器发送读取命令,即可读取波形信号寄存器中的数据,获得dds信号产生模块产生的波形信号。
有益效果:本发明公开的通过自定制qsys外设控制dds输出的系统及方法具有以下有益效果:
1、软核处理器可以像访问普通的外设一样直接系统中的各种寄存器;
2、通过该方法,可以将波形产生的任务卸载至dds输出控制模块,使得软核处理器可以处理更多的事务,提高系统实时响应性能。
附图说明
图1为本发明公开的通过自定制qsys外设控制dds输出的系统的结构示意框图;
图2为本发明公开的通过自定制qsys外设控制dds输出的方法的流程示意图。
具体实施方式:
下面对本发明的具体实施方式详细说明。
如图1所示,通过自定制qsys外设控制dds输出的系统,包括:
软核处理器,用于配置dds的频率和波形;
avalon总线,与软核处理器相连,用于软核处理器和外设进行数据交互;
元件接口转换匹配模块,与avalon总线相连,用于对来自avalon总线的信号进行译码;
dds输出控制模块,与元件接口转换匹配模块相连,用于配置dds的寄存器;
dds信号产生模块,与dds输出控制模块相连,用于产生输出信号。
进一步地,dds输出控制模块包括:
波形数据寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于存储波形在不同时刻的输出幅度;
频率控制字寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于存储当前待输出波形的频率;
控制命令寄存器,其输入端与元件接口转换匹配模块的输出端相连,用于启动和停止波形输出;
波形信号寄存器,其输出端与元件接口转换匹配模块的输入端相连,用于寄存dds信号产生模块产生的波形信号。
如图2所示,通过自定制qsys外设控制dds输出的方法,包括以下步骤:
(1)软核处理器通过avalon总线发送波形数据,该波形数据存储在波形数据寄存器中,
(2)软核处理器再通过avalon总线向频率控制字寄存器发送产生波形所需的频率控制字,并将频率控制字发送给dds信号产生模块,
(3)软核处理器向控制命令寄存器发送控制命令,并将控制命令发送给dds信号产生模块,
(4)dds信号产生模块通过获得的频率控制字和控制命令,读取波形数据寄存器中的波形数据产生波形信号,并将该波形信号寄存在波形信号寄存器中,
(5)软核处理器发送读取命令,即可读取波形信号寄存器中的数据,获得dds信号产生模块产生的波形信号。
上面对本发明的实施方式做了详细说明。但是本发明并不限于上述实施方式,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。