CN113724747A - 一种时钟分频模块、音频播停可控的数模转换电路及方法 - Google Patents

一种时钟分频模块、音频播停可控的数模转换电路及方法 Download PDF

Info

Publication number
CN113724747A
CN113724747A CN202111116261.6A CN202111116261A CN113724747A CN 113724747 A CN113724747 A CN 113724747A CN 202111116261 A CN202111116261 A CN 202111116261A CN 113724747 A CN113724747 A CN 113724747A
Authority
CN
China
Prior art keywords
signal
module
value
data
enabling
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
Application number
CN202111116261.6A
Other languages
English (en)
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.)
Zhuhai Amicro Semiconductor Co Ltd
Original Assignee
Zhuhai Amicro Semiconductor 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 Zhuhai Amicro Semiconductor Co Ltd filed Critical Zhuhai Amicro Semiconductor Co Ltd
Priority to CN202111116261.6A priority Critical patent/CN113724747A/zh
Publication of CN113724747A publication Critical patent/CN113724747A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/08Control thereof

Landscapes

  • Analogue/Digital Conversion (AREA)

Abstract

本发明公开了一种时钟分频模块、音频播停可控的数模转换电路及方法,本发明采用新的音频DAC架构,优化了传统架构中大量乘加运算、组合逻辑和寄存器,大大减小了硬件面积和设计复杂度;同时,解决了对音频DAC电路工作时钟频率严格要求的限制,并且可以支持不同采样率的音频,应用和设计上更灵活;此外,本发明还具有延时关闭工作使能的作用,使得所述电路在关闭到重新打开时,CIC滤波器可以正确进行插值,避免出现爆音现象,如果不进行延时则无法正常控制音频的暂停与播放。

Description

一种时钟分频模块、音频播停可控的数模转换电路及方法
技术领域
本发明涉及DAC数字电路领域,具体涉及一种时钟分频模块、音频播停可控的数模转换电路及方法。
背景技术
一般情况,扫地机这种简单音频播放应用上少有暂停DAC(数模转换器)播音的需求,但是如果实现此类DAC播音暂停之后重新打开继续播音的功能,则会使DAC在各种设备和不同场景中更灵活,使之应用更广泛。针对此类DAC,如果直接进行DAC使能关闭打开,则会出现在DAC使能关闭到打开期间,由于缺少判断手段,无法得知CIC滤波器(积分-级联-梳状滤波器)插值了几个数据,而导致在打开之后,重新进行插值,导致数据计算溢出出错,出现爆音现象,从而使应用上无法实现此类DAC播音的暂停与重启。
发明内容
为解决上述问题,本发明提供了一种时钟分频模块、音频播停可控的数模转换电路及方法,可以避免爆音现象,实现DAC播音的暂停与重启,同时也支持多种工作时钟和音频采样率。本发明的具体技术方案如下:
一种时钟分频模块,所述模块包括:除法器,用于接收第一分频参数并进行除法运算,得到第二分频参数;其中,被除数为预设值;第一计数器,与除法器连接,用于根据第二分频参数对工作时钟进行计数,得到第一计数序列;第一寄存器,与第一计数器连接,用于根据第一计数序列对工作时钟进行分频,得到CIC滤波器的数据处理使能信号及其频率值;第二计数器,与第一寄存器连接,用于根据所述预设值对CIC滤波器的数据处理使能信号进行计数,得到第二计数序列;第二寄存器,与第一寄存器连接,用于对CIC滤波器的数据处理使能信号进行延时,得到延时使能信号;第三寄存器,分别与第二计数器和第二寄存器连接,用于根据第二计数序列和所述延时使能信号对工作时钟进行分频,得到异步FIFO模块的读使能信号及其频率值;第四寄存器,与第二计数器连接,用于对第二计数序列进行延时,得到延时序列;与门,与第四寄存器连接,用于对延时序列和音频数模转换电路使能信号进行与运算;使能数据选择器,与与门连接,根据与运算结果选择音频数模转换电路使能信号或预设电平信号作为工作使能;其中,当延时序列的取值是所述预设值与1的差值时,使能数据选择器选择音频数模转换电路使能信号作为工作使能,否则选择预设电平信号作为工作使能;其中,预设电平信号可使得所述模块正常工作;其中,CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号的相位同步。
与现有技术相比,本技术方案对工作时钟的分频可以正确地产生原音频数据的采样率,因此支持各种不同采样率的音频数据源;第三寄存器根据第二计数序列和所述延时使能信号对工作时钟进行分频,可使得CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号保持同步,不产生相位偏差,确保数据读取的准确性;此外,设定只有在延时序列的取值是所述预设值与1的差值时,才将音频数模转换电路使能信号作为工作使能,可以在关闭音频数模转换电路使能信号的情况下,产生延时关闭该使能信号的效果,在延时期间,所述时钟分频模块可以正常输出CIC滤波器的数据处理使能信号以及异步FIFO模块的读使能信号。
进一步地,所述第一计数器对工作时钟的上升沿进行计数,每当计数个数达到第二分频参数的值则归零重计。
进一步地,所述第一寄存器在第一计数序列中每个归零的前一个数值处,设置CIC滤波器的数据处理使能信号为高电平,其余情况则设置为低电平,其频率值为工作时钟与第二分频参数的商。产生CIC滤波器的数据处理使能信号,以对数据进行过采样,提高数据的质量。
进一步地,所述第二计数器对CIC滤波器的数据处理使能信号的上升沿进行计数,每当计数个数达到预设值则归零重计。
进一步地,所述第二寄存器对CIC滤波器的数据处理使能信号的延时时间,以及所述第四寄存器对第二计数序列的延时时间均为预设个数的工作时钟周期。可确保CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号保持同步,不产生相位偏差;而第二计数序列的延时可保证其与后级CIC滤波器的数据对齐。
进一步地,所述第三寄存器在第二计数序列中每个归零处,且在延时使能信号为高电平时,设置异步FIFO模块的读使能信号为高电平,其余情况则设置为低电平,其频率值为工作时钟与第一分频参数的商。产生异步FIFO模块的读使能信号,以确保在写入数据的时钟和读出数据的时钟这两个不同的时钟域之间正确进行数据交互处理。
进一步地,所述与门在延时序列的取值是所述预设值与1的差值时,输出第一与运算结果,并使得使能数据选择器选择音频数模转换电路使能信号作为工作使能;所述与门在延时序列的取值不是所述预设值与1的差值时,输出第二与运算结果,并使得使能数据选择器选择预设电平信号作为工作使能。设定只有在延时序列的取值是所述预设值与1的差值时,才将音频数模转换电路使能信号作为工作使能,可以在关闭音频数模转换电路使能信号的情况下,产生延时关闭该使能信号的效果,在延时期间,所述时钟分频模块可以正常输出CIC滤波器的数据处理使能信号以及异步FIFO模块的读使能信号。
一种音频播停可控的数模转换电路,所述电路包括所述时钟分频模块,所述电路还包括:读写控制模块,与时钟分频模块连接,用于接收APB总线信号,输出写使能信号至异步FIFO模块,以及输出音频数模转换电路使能信号和第一分频参数至时钟分频模块;异步FIFO模块,分别与读写控制模块和时钟分频模块连接,用于在写入数据的时钟和读出数据的时钟这两个不同的时钟域之间进行数据交互处理;CIC滤波器,分别与时钟分频模块和异步FIFO模块连接,用于根据相位同步的异步FIFO模块的读使能信号和CIC滤波器的数据处理使能信号从异步FIFO模块中读出数据并进行滤波;其中,当读写控制模块关闭音频数模转换电路使能信号时,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则将音频数模转换电路使能信号作为工作使能以使得所述电路暂停工作;其中,预设电平信号可使得电路正常工作。
与现有技术相比,本技术方案采用新的音频DAC架构,优化了传统架构中大量乘加运算、组合逻辑和寄存器,大大减小了硬件面积和设计复杂度;同时,解决了对音频DAC电路工作时钟频率严格要求的限制,并且可以支持不同采样率的音频,应用和设计上更灵活;此外,本技术方案还具有延时关闭工作使能的作用,使得所述电路在关闭到重新打开时,CIC滤波器可以正确进行插值,避免出现爆音现象,如果不进行延时则所述电路无法正常控制音频的暂停与播放。
进一步地,所述电路还包括数据传输模块和数模转换模块,所述数据传输模块用于传输数据给异步FIFO模块,所述数模转换模块用于接收CIC滤波器滤波后的数据并将其转换成模拟信号。
进一步地,所述数据传输模块包括CPU控制器、DMA控制器和数据选择器;其中,CPU控制器和DMA控制器分别与数据选择器相连,数据选择器通过读写控制模块提供的数据选择信号选择CPU控制器或DMA控制器的数据给异步FIFO模块。
进一步地,所述读写控制模块提供的数据选择信号为音频数模转换电路的中断信号或请求信号;其中,当选择信号为中断信号时,选择CPU控制器的数据给异步FIFO模块,当选择信号为请求信号时,选择DMA控制器的数据给异步FIFO模块。
一种音频播停可控的数模转换方法,所述方法通过所述音频播停可控的数模转换电路实现,所述方法包括:在电路关闭音频数模转换电路使能信号之前,对所述延时序列进行实时判断,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则关闭音频数模转换电路使能信号并将其作为工作使能以使得所述电路暂停工作;其中,预设电平信号可使得电路正常工作。
与现有技术相比,本技术方案具有延时关闭工作使能的作用,使得所述电路在关闭到重新打开时,CIC滤波器可以正确进行插值,避免出现爆音现象,如果不进行延时则所述电路无法正常控制音频的暂停与播放。
进一步地,当延时序列的取值是所述预设值与1的差值时,与门输出第一与运算结果,使得使能数据选择器选择音频数模转换电路使能信号作为工作使能;当延时序列的取值不是所述预设值与1的差值时,与门输出第二与运算结果,使得使能数据选择器选择预设电平信号作为工作使能。设定只有在延时序列的取值是所述预设值与1的差值时,才将音频数模转换电路使能信号作为工作使能,可以在关闭音频数模转换电路使能信号的情况下,产生延时关闭该使能信号的效果。在延时期间,所述时钟分频模块可以正常输出CIC滤波器的数据处理使能信号以及异步FIFO模块的读使能信号,使得CIC滤波器可以完成当前插值。如此一来,在重新打开音频数模转换电路使能信号时,CIC滤波器不会产生插值异常,从而导致数据计算溢出出错,出现爆音现象。
附图说明
图1为典型的音频DAC电路示意图。
图2为本发明一种实施例所述时钟分频模块示意图。
图3为本发明一种实施例所述音频播停可控的数模转换电路示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。应当理解,下面所描述的具体实施例仅用于解释本发明,并不用于限定本发明。需要本领域技术人员注意的是,本发明公开的模块、子模块、控制器以及系统等电路,在不矛盾的情况下,可以采用VHDL或者Verilog等硬件描述语言进行设计,并映射形成一种可供生产制造成集成电路的网表信息。
在下面的描述中,给出具体细节以提供对实施例的透彻理解。然而,本领域的普通技术人员将理解,可以在没有这些具体细节的情况下实施实施例。例如,电路可以在框图中显示,以便不在不必要的细节中使实施例模糊。在其他情况下,为了不混淆实施例,可以不详细显示公知的电路、结构和技术。
如图1所示的一种典型音频DAC电路,不仅面积大、功耗大,且仅支持3种基频(32k、44.1k、48k)为准的采样率,对于其他采样率则不能很好支持。由于这种特定的采样率,则要求这种典型设计的工作时钟必须是可以分出这三种基频或其2的幂次方频率值的时钟源才可以,如典型值为24.576M(用于分出48K和32K)和22.5792MHz(用于分出44.1K)的时钟源。典型的音频DAC电路对时钟源的要求过于严格,兼容性不好。另外,这种音频DAC电路无法实现播音暂停,因为如果直接进行DAC使能关闭打开,则会出现在DAC使能关闭到打开期间,由于缺少判断手段,无法得知CIC滤波器(积分-级联-梳状滤波器)插值了几个数据,而导致在打开之后,重新进行插值,导致数据计算溢出出错,出现爆音现象。
因此,本发明实施例提出一种时钟分频模块,如图2所示,所述模块包括:
除法器,用于接收第一分频参数并进行除法运算,得到第二分频参数。其中,被除数为预设值,具体指的是后级CIC滤波器的过采样率。优选地,过采样率设置为8。
第一计数器,与除法器连接,用于根据第二分频参数对工作时钟进行计数,得到第一计数序列。第一计数器从0开始计数,逢工作时钟的上升沿则加1,每当计数个数达到第二分频参数的值则归零重计。
第一寄存器,与第一计数器连接,用于根据第一计数序列对工作时钟进行分频,得到CIC滤波器的数据处理使能信号及其频率值。在第一计数序列中每个归零的前一个数值处,设置CIC滤波器的数据处理使能信号为高电平1,其余情况则设置为低电平0,其频率值为工作时钟与第二分频参数的商。需要说明的是,当复位信号为0,或音频数模转换电路使能信号为0时,CIC滤波器的数据处理使能信号也为0。所述复位信号为0表示音频数模转换电路进行复位,所述音频数模转换电路使能信号为0时表示音频数模转换电路没有处于工作状态。所述复位信号和音频数模转换电路使能信号作为前级读写控制模块的输出,分别传输到第一计数器、第一寄存器、第二计数器和第三寄存器。
第二计数器,与第一寄存器连接,用于根据所述预设值对CIC滤波器的数据处理使能信号进行计数,得到第二计数序列。第二计数器从0开始计数,逢工作时钟的上升沿则加1,每当计数个数达到预设值则归零重计。
第二寄存器,与第一寄存器连接,用于对CIC滤波器的数据处理使能信号进行延时,得到延时使能信号。所述第二寄存器对CIC滤波器的数据处理使能信号的延时时间为预设个数的工作时钟周期。优选地,对CIC滤波器的数据处理使能信号延时1个工作时钟的周期,可使第三寄存器输出的异步FIFO模块的读使能信号与CIC滤波器的数据处理使能信号的上升沿对齐。
第三寄存器,分别与第二计数器和第二寄存器连接,用于根据第二计数序列和所述延时使能信号对工作时钟进行分频,得到异步FIFO模块的读使能信号及其频率值。在第二计数序列中每个归零处,且在延时使能信号为高电平时,设置异步FIFO模块的读使能信号为高电平1,其余情况则设置为低电平0,其频率值为工作时钟与第一分频参数的商。同样的,当复位信号为0,或音频数模转换电路使能信号为0时,异步FIFO模块的读使能信号也为0。需要说明的是,异步FIFO模块的读使能信号的频率值与音频数据的采样率相等,如此一来,异步FIFO模块就可以在两个不同的时钟域下准确地读出音频数据。
需要说明的是,时钟分频模块的设计还使得CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号保持同步,没有相位偏差,否则CIC滤波器会因采集不到异步FIFO模块的数据而出错。上述时钟分频模块的设计则保证了两个信号的同步,同时又支持小范围采样率误差下的数据处理。
第四寄存器,与第二计数器连接,用于对第二计数序列进行延时,得到延时序列。所述第四寄存器对第二计数序列的延时时间为预设个数的工作时钟周期。优选地,对第二计数序列延时1个工作时钟的周期,可使第二计数序列与后级CIC滤波器的数据对齐。
与门,与第四寄存器连接,用于对延时序列和音频数模转换电路使能信号进行与运算。当延时序列的取值是所述预设值与1的差值时(由上文可知,预设值优选为8),即当延时序列取值7时,与门输出第一与运算结果0;否则当延时序列取值0至6时,与门输出第二与运算结果1。需要说明的是,在前级读写控制模块关闭音频数模转换电路使能信号前(即暂停音频前),会先检测延时序列的取值,只有在检测到延时序列取值7时,才关闭音频数模转换电路使能信号,使得与门输出第一与运算结果0。
使能数据选择器,与与门连接,根据与运算结果选择音频数模转换电路使能信号或预设电平信号作为工作使能。当与门输出第一与运算结果0,使能数据选择器选择音频数模转换电路使能信号作为工作使能,如果此时音频数模转换电路使能信号为0(低电平表示关闭),那么工作使能也为0,所述时钟分频模块停止输出异步FIFO模块的读使能信号和CIC滤波器的数据处理使能信号,音频暂停。当与门输出第二与运算结果1,使能数据选择器选择预设电平信号作为工作使能,使得所述时钟分频模块正常工作。
与现有技术相比,本发明实施例对工作时钟的分频可以正确地产生原音频数据的采样率,因此支持各种不同采样率的音频数据源;第三寄存器根据第二计数序列和所述延时使能信号对工作时钟进行分频,可使得CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号保持同步,不产生相位偏差,确保数据读取的准确性;此外,设定只有在延时序列的取值是所述预设值与1的差值时,才将音频数模转换电路使能信号作为工作使能,可以在关闭音频数模转换电路使能信号的情况下,产生延时关闭该使能信号的效果,在延时期间,所述时钟分频模块可以正常输出CIC滤波器的数据处理使能信号以及异步FIFO模块的读使能信号。
如图3所示,本发明实施例提供一种音频播停可控的数模转换电路,所述电路包括如图2所示的一种时钟分频模块,还包括:
读写控制模块,与时钟分频模块连接,用于接收APB总线信号,APB总线用来连接外围设备,然后输出写使能信号至异步FIFO模块,以及输出音频数模转换电路使能信号和第一分频参数至时钟分频模块。所述第一分频参数由外围设备配置,外围设备在获取音频数模转换电路的工作时钟以及音频数据的采样率后,作商得到第一分频参数,所述工作时钟以及音频数据的采样率均为已知参数。所述读写控制模块是由一些不同地址的寄存器读写模块搭建而成的模块,通过操作APB总线信号来配置各个地址的寄存器值。APB总线为AMBA总线协议的其中一种,是常用的总线协议,其使用方法大致如下:APB总线有PCLK/PSEL/PENABLE/PWRITE/PADDR/PRDATA/PWDATA/PRESET等几种信号,当PENABLE、PSEL、PWRITE同时为1,在PCLK上升沿到来时,向PADDR中写入PWDATA值,即向地址为ADDR的寄存器读写模块中写入WDATA值;相反,当PENABLE、PSEL、PWRITE同时为0,在PCLK上升沿到来时,读PADDR中的PRDATA值,即读出地址为ADDR的寄存器读写模块中的值。所述读写控制模块中的数据输入和输出都是通过这种方式实现的。
异步FIFO模块,分别与读写控制模块和时钟分频模块连接,用于在写入数据的时钟和读出数据的时钟这两个不同的时钟域之间进行数据交互处理。此模块为常见模块,不再进行赘述。
CIC滤波器,分别与时钟分频模块和异步FIFO模块连接,用于根据相位同步的异步FIFO模块的读使能信号和CIC滤波器的数据处理使能信号从异步FIFO模块中读出数据并进行滤波。CIC滤波器也称为积分-级联-梳状滤波器,是FIR滤波器中最优的一种,其使用了积分、梳状滤波器级联的方式。在内插CIC滤波器中,输入信号依次经过梳状滤波器、过采样、以及与梳状数目相同的积分环节。过采样率可以为8、16、32、64等,优选地,过采样率设置为8。CIC滤波器对异步FIFO模块中读出数据进行插值和积分,因此最终输出的数据在时域波形上更平滑,信噪比和总谐波失真等性能都有所提高。
其中,当读写控制模块关闭音频数模转换电路使能信号时,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则将音频数模转换电路使能信号作为工作使能以使得所述电路暂停工作;其中,预设电平信号可使得电路正常工作。
参照图3,所述音频播停可控的数模转换电路还包括数据传输模块和数模转换模块。
其中,所述数据传输模块用于传输数据给异步FIFO模块,包括CPU控制器、DMA控制器和数据选择器。CPU控制器和DMA控制器分别与数据选择器相连,数据选择器通过读写控制模块提供的数据选择信号选择CPU控制器或DMA控制器的数据给异步FIFO模块,即异步FIFO模块有两种数据来源。所述读写控制模块提供的数据选择信号为所述电路的中断信号或请求信号,当选择信号为中断信号时,选择CPU控制器的数据给异步FIFO模块,当选择信号为请求信号时,选择DMA控制器的数据给异步FIFO模块。所述数模转换模块用于接收CIC滤波器滤波后的数据并将其转换成模拟信号。使用本发明实施例所述的音频播停可控的数模转换电路可以接近无损失地将源音频数据播放出来,且支持DAC播音暂停与重启。
与现有技术相比,本发明实施例采用新的音频DAC架构,优化了传统架构中大量乘加运算、组合逻辑和寄存器,大大减小了硬件面积和设计复杂度;同时,解决了对音频DAC电路工作时钟频率严格要求的限制,并且可以支持不同采样率的音频,应用和设计上更灵活;此外,本发明实施例还具有延时关闭工作使能的作用,使得所述电路在关闭到重新打开时,CIC滤波器可以正确进行插值,避免出现爆音现象,如果不进行延时则所述电路无法正常控制音频的暂停与播放。
本发明实施例提供一种音频播停可控的数模转换方法,所述方法包括:
在电路关闭音频数模转换电路使能信号之前,对所述延时序列进行实时判断,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则关闭音频数模转换电路使能信号并将其作为工作使能以使得所述电路暂停工作;其中,预设电平信号可使得电路正常工作。
需要说明的是,电路通过关闭音频数模转换电路使能信号来暂停音频,通过打开音频数模转换电路使能信号使得音频继续播放。
下面结合具体例子对本发明所述的音频播停可控的数模转换电路作进一步的说明。
假设异步FIFO模块从CPU控制器或DMA控制器接收的原始音频数据的各项参数为Fin=1KHz,Fs=11.025K,ENOB=12bit,其中Fin表示音频数据的频率,Fs表示音频数据采样率,ENOB表示信号的有效位宽。
首先,外围设备根据工作时钟DAC_CLK和音频数据采样率Fs计算第一分频参数DAC_D2A_CLK_SCAL。所述工作时钟DAC_CLK为外部时钟源,其频率值不限于典型值24.576M和22.5792MHz。需要强调的是,时钟分频模块的输入时钟源是可以改变的,该模块的设计不依赖特定时钟频率工作,即不管外部时钟源为何种时钟,时钟分频模块都可以正常工作,且整个音频数模转换电路也可以正常工作。优选地,工作时钟选择频率大于20MHz的时钟源。优选地,在本实施例中,工作时钟选择48MHz的时钟源,这种比较普遍的时钟频率值的好处在于可以和SOC项目中其他模块公用一个时钟,从而节省时钟模块的资源占用,又不影响到音频数模转换电路的性能。因此,第一分频参数DAC_D2A_CLK_SCAL=DAC_CLK/Fs=48M/11.025K=4353。除法器接收到第一分频参数DAC_D2A_CLK_SCAL后计算第二分频参数CIC_CLK_SCAL=DAC_D2A_CLK_SCAL/OSR=4353/8=544,其中,OSR表示CIC滤波器的过采样率。
随后,第一计数器对工作时钟DAC_CLK进行计数,每逢上升沿计数,从0计到543后再从0计起,以此类推得到第一计数序列CIC_CLK_SCAL_CNT。每当CIC_CLK_SCAL_CNT计到543,设置CIC滤波器的数据处理使能信号CIC_DATA_EN为高电平1,获得CIC滤波器的数据处理使能信号CIC_DATA_EN=DAC_CLK/CIC_CLK_SCAL=48M/544=88.2K。
然后对CIC滤波器的数据处理使能信号CIC_DATA_EN进行计数,第二计数器从0计到7后再从0计起,以此类推得到第二计数序列CNT_CIC_EN。同时,第二寄存器对CIC滤波器的数据处理使能信号CIC_DATA_EN延时一个工作时钟DAC_CLK周期,得到延时使能信号CIC_DATA_EN_1T。每当CNT_CIC_EN=0且CIC_DATA_EN_1T=1时,设置异步FIFO模块的读使能信号AFIFO_REN为高电平1,获得异步FIFO模块的读使能信号AFIFO_REN=DAC_CLK/CIC_CLK_SCAL/8=48M/544/8=11.025K。可以看出,异步FIFO模块的读使能信号AFIFO_REN与音频数据采样率Fs一致,时钟分频模块将Fs进行了还原,本实施例所述的时钟分频模块适用各种不同音频数据源,不挑音频采样率。较优地,可以很好地做到支持11.025K-1M连续范围内的音频采样率。
需要强调的是,对数据处理使能信号CIC_DATA_EN进行计数和延时,可以使得CIC滤波器的数据处理使能信号CIC_DATA_EN和异步FIFO模块的读使能信号AFIFO_REN保持同步,没有相位偏差,否则CIC滤波器会因采集不到异步FIFO模块的数据而出错。
最后,CIC滤波器利用CIC_DATA_EN和AFIFO_REN对异步FIFO模块的数据进行插值和积分处理,以此提高音频数据的质量,使得经由数模转换模块播放出来的音频保真度更高。
在上述音频播放的过程中,读写控制模块始终输出DAC使能信号(即音频数模转换电路使能信号),参见图2,此时无论使能数据选择器选择哪路信号,音频都能正常播放。而当需要暂停音频播放时,如果直接关闭工作使能,则会出现工作使能重新打开时,CIC滤波器判断不了暂停前已经插值了几个数据,而重新插值8个数据(个数由过采样率决定),当插值大于8个,数据计算溢出出错,出现爆音现象。
因此,需要延时关闭工作使能,只有在CIC滤波器插值达到8个后再关闭工作使能才能避免爆音现象。在第二计数器得到第二计数序列CNT_CIC_EN后,传输至第四寄存器进行一个工作时钟DAC_CLK周期的延时,得到延时序列CNT_CIC_EN_1T,延时操作可保证CNT_CIC_EN_1T与后级CIC滤波器的数据对齐。由上文可知,延时序列CNT_CIC_EN_1T的取值包括0至7。每当延时序列CNT_CIC_EN_1T取值7时,表示CIC滤波器插值已达到8个。所以,当需要暂停音频时,只有读写控制模块在检测到延时序列CNT_CIC_EN_1T取值为7时,才停止输出DAC使能信号。此时,与门的与运算结果为0,当0作为使能数据选择器的选通信号时,选择DAC使能信号作为工作使能。而DAC使能信号已关闭,因此时钟分频模块停止输出CIC滤波器的数据处理使能信号CIC_DATA_EN和异步FIFO模块的读使能信号,从而音频暂停播放。
另一方面,当延时序列CNT_CIC_EN_1T取值0到6时,表示CIC滤波器插值还未达到8个,需要延时关闭工作使能直至延时序列CNT_CIC_EN_1T取值为7。此时,与门的与运算结果为1,当1作为使能数据选择器的选通信号时,选择预设电平信号作为工作使能,一直持续到CIC滤波器插值个数达到8个。需要说明的是,预设电平信号为高电平1,可使得时钟分频模块正常工作。然后,在延时序列CNT_CIC_EN_1T取值为7时,读写控制模块停止输出DAC使能信号,与门输出与运算结果0,选择DAC使能信号作为工作使能以使音频暂停播放。不难看出,当需要重新播放音频时,只需重新输出DAC使能信号即可。而由于CIC滤波器插值个数达到8个,重启后插值个数不会溢出,避免了爆音等异常现象,正常地实现了DAC的播音暂停与重启。
显然,上述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,各个实施例之间的技术方案可以相互结合。此外,如果实施例中出现“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等术语,其指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位或以特定的方位构造和操作,因此不能理解为对本发明的限制。如果实施例中出现“第一”、“第二”、“第三”等术语,是为了便于相关特征的区分,不能理解为指示或暗示其相对重要性、次序的先后或者技术特征的数量。
另外,在本发明的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。这些程序可以存储于计算机可读取存储介质(比如ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质)中。该程序在执行时,执行包括上述各方法实施例的步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (13)

1.一种时钟分频模块,其特征在于,所述模块包括:
除法器,用于接收第一分频参数并进行除法运算,得到第二分频参数;其中,被除数为预设值;
第一计数器,与除法器连接,用于根据第二分频参数对工作时钟进行计数,得到第一计数序列;
第一寄存器,与第一计数器连接,用于根据第一计数序列对工作时钟进行分频,得到CIC滤波器的数据处理使能信号及其频率值;
第二计数器,与第一寄存器连接,用于根据所述预设值对CIC滤波器的数据处理使能信号进行计数,得到第二计数序列;
第二寄存器,与第一寄存器连接,用于对CIC滤波器的数据处理使能信号进行延时,得到延时使能信号;
第三寄存器,分别与第二计数器和第二寄存器连接,用于根据第二计数序列和所述延时使能信号对工作时钟进行分频,得到异步FIFO模块的读使能信号及其频率值;
第四寄存器,与第二计数器连接,用于对第二计数序列进行延时,得到延时序列;
与门,与第四寄存器连接,用于对延时序列和音频数模转换电路使能信号进行与运算;
使能数据选择器,与与门连接,根据与运算结果选择音频数模转换电路使能信号或预设电平信号作为工作使能;
其中,当延时序列的取值是所述预设值与1的差值时,使能数据选择器选择音频数模转换电路使能信号作为工作使能,否则选择预设电平信号作为工作使能;
其中,预设电平信号可使得所述模块正常工作;
其中,CIC滤波器的数据处理使能信号和异步FIFO模块的读使能信号的相位同步。
2.根据权利要求1所述的一种时钟分频模块,其特征在于,所述第一计数器对工作时钟的上升沿进行计数,每当计数个数达到第二分频参数的值则归零重计。
3.根据权利要求2所述的一种时钟分频模块,其特征在于,所述第一寄存器在第一计数序列中每个归零的前一个数值处,设置CIC滤波器的数据处理使能信号为高电平,其余情况则设置为低电平,其频率值为工作时钟与第二分频参数的商。
4.根据权利要求3所述的一种时钟分频模块,其特征在于,所述第二计数器对CIC滤波器的数据处理使能信号的上升沿进行计数,每当计数个数达到预设值则归零重计。
5.根据权利要求3所述的一种时钟分频模块,其特征在于,所述第二寄存器对CIC滤波器的数据处理使能信号的延时时间,以及所述第四寄存器对第二计数序列的延时时间均为预设个数的工作时钟周期。
6.根据权利要求5所述的一种时钟分频模块,其特征在于,所述第三寄存器在第二计数序列中每个归零处,且在延时使能信号为高电平时,设置异步FIFO模块的读使能信号为高电平,其余情况则设置为低电平,其频率值为工作时钟与第一分频参数的商。
7.根据权利要求5所述的一种时钟分频模块,其特征在于,所述与门在延时序列的取值是所述预设值与1的差值时,输出第一与运算结果,并使得使能数据选择器选择音频数模转换电路使能信号作为工作使能;所述与门在延时序列的取值不是所述预设值与1的差值时,输出第二与运算结果,并使得使能数据选择器选择预设电平信号作为工作使能。
8.一种音频播停可控的数模转换电路,其特征在于,所述电路包括权利要求1至7任一项所述的时钟分频模块,所述电路还包括:
读写控制模块,与时钟分频模块连接,用于接收APB总线信号,输出写使能信号至异步FIFO模块,以及输出音频数模转换电路使能信号和第一分频参数至时钟分频模块;
异步FIFO模块,分别与读写控制模块和时钟分频模块连接,用于在写入数据的时钟和读出数据的时钟这两个不同的时钟域之间进行数据交互处理;
CIC滤波器,分别与时钟分频模块和异步FIFO模块连接,用于根据相位同步的异步FIFO模块的读使能信号和CIC滤波器的数据处理使能信号从异步FIFO模块中读出数据并进行滤波;
其中,当读写控制模块关闭音频数模转换电路使能信号时,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则将音频数模转换电路使能信号作为工作使能以使得所述电路暂停工作;
其中,预设电平信号可使得电路正常工作。
9.根据权利要求8所述的一种音频播停可控的数模转换电路,其特征在于,所述电路还包括数据传输模块和数模转换模块,所述数据传输模块用于传输数据给异步FIFO模块,所述数模转换模块用于接收CIC滤波器滤波后的数据并将其转换成模拟信号。
10.根据权利要求9所述的一种音频播停可控的数模转换电路,其特征在于,所述数据传输模块包括CPU控制器、DMA控制器和数据选择器;其中,CPU控制器和DMA控制器分别与数据选择器相连,数据选择器通过读写控制模块提供的数据选择信号选择CPU控制器或DMA控制器的数据给异步FIFO模块。
11.根据权利要求10所述的一种音频播停可控的数模转换电路,其特征在于,所述读写控制模块提供的数据选择信号为音频数模转换电路的中断信号或请求信号;其中,当选择信号为中断信号时,选择CPU控制器的数据给异步FIFO模块,当选择信号为请求信号时,选择DMA控制器的数据给异步FIFO模块。
12.一种音频播停可控的数模转换方法,其特征在于,所述方法通过权利要求8至11任一项所述一种音频播停可控的数模转换电路实现,所述方法包括:
在电路关闭音频数模转换电路使能信号之前,对所述延时序列进行实时判断,若延时序列的取值不是所述预设值与1的差值,则将预设电平信号作为工作使能以使得所述电路正常工作,若延时序列的取值是所述预设值与1的差值,则关闭音频数模转换电路使能信号并将其作为工作使能以使得所述电路暂停工作;其中,预设电平信号可使得电路正常工作。
13.根据权利要求12所述的一种音频播停可控的数模转换方法,其特征在于,当延时序列的取值是所述预设值与1的差值时,与门输出第一与运算结果,使得使能数据选择器选择音频数模转换电路使能信号作为工作使能;当延时序列的取值不是所述预设值与1的差值时,与门输出第二与运算结果,使得使能数据选择器选择预设电平信号作为工作使能。
CN202111116261.6A 2021-09-23 2021-09-23 一种时钟分频模块、音频播停可控的数模转换电路及方法 Pending CN113724747A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111116261.6A CN113724747A (zh) 2021-09-23 2021-09-23 一种时钟分频模块、音频播停可控的数模转换电路及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111116261.6A CN113724747A (zh) 2021-09-23 2021-09-23 一种时钟分频模块、音频播停可控的数模转换电路及方法

Publications (1)

Publication Number Publication Date
CN113724747A true CN113724747A (zh) 2021-11-30

Family

ID=78684782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111116261.6A Pending CN113724747A (zh) 2021-09-23 2021-09-23 一种时钟分频模块、音频播停可控的数模转换电路及方法

Country Status (1)

Country Link
CN (1) CN113724747A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1777088A (zh) * 2005-12-13 2006-05-24 北京中星微电子有限公司 一种数字音频信号传输系统及方法
CN101446845A (zh) * 2008-12-19 2009-06-03 那微微电子科技(上海)有限公司 频率调节装置
US7587131B1 (en) * 2004-05-28 2009-09-08 Magnum Semiconductor, Inc. Audio clocking in video applications
CN206820737U (zh) * 2017-04-20 2017-12-29 南京德睿智芯电子科技有限公司 一种数模转换器的时序矫正数字电路
CN113285719A (zh) * 2021-06-29 2021-08-20 珠海市一微半导体有限公司 一种音频数模转换电路
CN215954834U (zh) * 2021-09-23 2022-03-04 珠海一微半导体股份有限公司 一种时钟分频模块及音频播停可控的数模转换电路

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587131B1 (en) * 2004-05-28 2009-09-08 Magnum Semiconductor, Inc. Audio clocking in video applications
CN1777088A (zh) * 2005-12-13 2006-05-24 北京中星微电子有限公司 一种数字音频信号传输系统及方法
CN101446845A (zh) * 2008-12-19 2009-06-03 那微微电子科技(上海)有限公司 频率调节装置
CN206820737U (zh) * 2017-04-20 2017-12-29 南京德睿智芯电子科技有限公司 一种数模转换器的时序矫正数字电路
CN113285719A (zh) * 2021-06-29 2021-08-20 珠海市一微半导体有限公司 一种音频数模转换电路
CN215954834U (zh) * 2021-09-23 2022-03-04 珠海一微半导体股份有限公司 一种时钟分频模块及音频播停可控的数模转换电路

Similar Documents

Publication Publication Date Title
CN113285719A (zh) 一种音频数模转换电路
CN215954834U (zh) 一种时钟分频模块及音频播停可控的数模转换电路
CN108255231B (zh) 一种数据采样方法和芯片
CN105027019A (zh) 用于usb系统内的音频取样率转换器的弹性计时
JP3510618B2 (ja) バスブリッジ回路及びそのアクセス制御方法
WO2020134531A1 (zh) 一种时钟控制电路及控制方法
JP2004248279A (ja) 異なるタイプのインタフェースからの入力信号、又は異なるタイプのインタフェースへの出力信号を共通フォーマットの中央演算処理でプリプロセスするための方法及び装置
CN113724747A (zh) 一种时钟分频模块、音频播停可控的数模转换电路及方法
CN217135473U (zh) 音频数模转换电路
CN113491082B (zh) 一种数据处理装置
CN109448738B (zh) 一种网络音频混音处理方法及装置
CN109586724B (zh) Dac输出信号初相位调节方法及多通道dac同步方法
CN116437266A (zh) 一种音频控制电路及其装置、音频控制方法、系统和车辆
CN113376585B (zh) 一种高分辨率脉冲信号合成装置
CN103065657A (zh) 一种带ssi模块的音频系统及其工作方法
CN111446960B (zh) 一种时钟输出电路
Thiel et al. Digital asynchronous signal interpolation and clock domain crossing
US7990296B1 (en) High speed low power cell providing serial differential signals
US11139904B2 (en) Clock domain crossing buffer
US9355558B2 (en) High bandwidth configurable serial link
CN105610416A (zh) 一种低失真音频信号发生方法
CN108233898B (zh) 一种多时钟动态切换电路
Teixeira Asynchronous Audio Sample Rate Converter
US20120076244A1 (en) Waveform interpolator architecture for accurate timing recovery based on up-sampling technique
CN220673926U (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