CN102522110B - 数字音频接口发送电路中实现数据预加载的方法和装置 - Google Patents
数字音频接口发送电路中实现数据预加载的方法和装置 Download PDFInfo
- Publication number
- CN102522110B CN102522110B CN201110389582.3A CN201110389582A CN102522110B CN 102522110 B CN102522110 B CN 102522110B CN 201110389582 A CN201110389582 A CN 201110389582A CN 102522110 B CN102522110 B CN 102522110B
- Authority
- CN
- China
- Prior art keywords
- data
- counter
- audio interface
- clock
- digital audio
- 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
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Communication Control (AREA)
Abstract
本发明揭示了一种在数字音频接口发送电路中实现数据预加载的方法及装置,其通过在数字音频接口发送电路中设置检测计数器、辅助计数器及数据预加载控制模块,参照检测计数器或者辅助计数器的计数值,由数据预加载控制模块负责提前准备数据,并根据数字音频接口协议判断发出第一个数据的时刻的计数值,由此确定发出数据前的一个周期,即为准备数据的时刻,当同步时钟(LRCK)到来时把第一个数据在位时钟(BCLK)沿上移出,接着把其他数据也在位时钟沿上逐位移出。这样的数据预加载方法减小了因逻辑判断带来的延时,提高了数据传输速率,从架构上改善了电路的时序特性。
Description
技术领域
本发明涉及数字音频接口发送电路领域,尤其是涉及通过在数字音频接口发送电路中通过数据预加载来提高数据传输速度的方法和装置。
背景技术
数字音频接口是由录音设备经过模数转换,把模拟音频数据变成数字的数据流,通过特定的协议发送到***,或者由***通过特定的协议把数字的数据流发送到放音设备,再由放音设备经过数模转换把原本的音频播放出来。
数字音频接口根据音频数据的采样率和量化精度,会有不同的传输速率。最常见的采样率有8KHz,44.1KHz,48KHz,96KHz等,数据的精度也可能有16,18,20,24,32位等。音频数据的质量越高,要求的采样率越高,要求的量化精度也越高,越高的音质要求就要求音频接口电路越高的传输速率。当***环境很差的时候,数字音频接口之间的连线可能会产生很多不确定的延时,就需要一个特性很好的接口电路使得***在这样的环境下也能正常工作。
常见的数字音频接口为串行同步收发,即数据在时钟沿上逐个时钟的发送或者接收,不同声道的采样数据按照同步时钟组织对齐。常见的接口协议有IIS(Integrate Interface of Sound,集成音频接口),左对齐,右对齐,DSP模式等。数据以同步时钟(LRCK)变化沿为标志,在同步时钟变化的时候开始发送数据或者在下一个位时钟(BCLK)沿到来的时候开始发送第一个数据。当数据要求在同步时钟(LRCK)变化的时候马上输出数据的情况下,常见的设计会把数据分两个部分,一部分是检测到同步信号(LRCK)以后马上通过一组判断逻辑切换数据输出端口把第一个数据发 出,然后在下一个位时钟(BCLK)沿到来的时候再切换到由位时钟把数据逐位输出。
在数字音频接口发送电路中,有些接口协议是数据发送没有足够的反应时间,当数据同步时钟(LRCK)出现的时候必须同时发出第一位数据,在下一个位时钟(BCLK)上升沿发出下一位数据,以此类推。通过一组判断逻辑控制选择器切换不同的电路分别发送第一位和其他位数据可以实现,但是复杂的判断逻辑会给第一位传输的数据带来很大延迟,大大影响了整体电路的时序特性,无法达到一定的数据传输速率。为改善电路的时序特性,需要采用预测加载数据的办法,通过预测提前准备数据,然后由位时钟(BCLK)把全部数据逐位移出。
如上所叙,数字音频接口发送电路设计中第一位数据的时序问题是设计的主要瓶颈,而其他位数据都能与位时钟(BCLK)沿对齐,但是因为判断逻辑的复杂度与协议及设计都有关系,可能带来很多不确定的延时,以致整个设计电路特性很差。特别在***环境不好的应用上可能会导致接口电路数据传输错误。
发明内容
本发明的目的是提供一种在数字音频接口电路中实现数据预加载的方法和装置,其在数字音频接口电路中引入数据预加载电路,提前预备数据,让全部数据都在位时钟(BCLK)沿上逐位发送,解决时序不均衡问题,从而提高数据的传输速度。
为实现上述目的,本发明提出技术方案之一为:一种在数字音频接口发送电路中实现数据预加载的方法,包括:
a.由检测计数器检测音频接口发送电路中的同步时钟和位时钟,并确定出数字音频接口的位时钟率和检测时钟的计数值;
b.数据预加载控制模块根据所述检测计数器获得的位时钟率和检测时钟的计数值,按照数字音频接口协议的要求,判断发出数据时的计数值,并确定发出数据前的一个周期即为准备数据的数据准备周期;
c.数据预加载控制模块在数据准备周期发送数据预加载控制信号给数 字发送模块,由数据发送模块将待发送的数据加载到移位寄存器中。
d.由移位寄存器在同步时钟到来时把第一位数据在位时钟沿上发送出。
其中,所述数据发送模块中存有并行左声道数据和并行右声道数据。
本发明提出的另一技术方案为:一种在数字音频接口发送电路中实现数据预加载的方法,包括:
a.由检测计数器检测音频接口发送电路中的同步时钟和位时钟,并确定出数字音频接口的位时钟率和检测时钟的计数值;
b.由检测计数器向辅助计数器产生同步信号,由辅助计数器根据该同步信号进行与所述检测计数器相关联计数;
c.数据预加载控制模块根据所述辅助计数器的计数值,按照数字音频接口协议的要求,判断发出数据的时刻,并确定发出数据前的一个周期即为准备数据的数据准备周期;
d.数据预加载控制模块在数据准备周期发送加载控制信号,将待发送的数据加载到移位寄存器中准备发送。
e.由移位寄存器在同步时钟到来时把第一位数据在位时钟沿上发送出。
其中,所述辅助计数器由所述检测计数器影射而得。
所述数据发送模块中存有并行左声道数据和并行右声道数据。
本发明提出的第三种技术方案为:一种在数字音频接口发送电路中实现数据预加载的装置,包括时钟模块、数据发送模块及寄存器,以及检测计数器,数据预加载控制模块;其中:
所述检测计数器用于检测所述时钟模块中的同步时钟和位时钟,以确定数据的位时钟率;
所述数据预加载控制模块参照所述检测计数器的计数值,控制所述数据发送模块在所述寄存器发出数据前的一个周期准备好待发送的数据。
所述数据预加载的装置还包括辅助计数器,所述辅助计数器的计数由所述检测计数器影射而得。
所述数据预加载控制模块参照所述辅助计数器的计数值,控制所述数据发送模块在所述寄存器发出数据前的一个周期准备好待发送的数据。
所述辅助计数器为选自加法计数器,减法计数器及其他类型计数器中的一种。
本发明采用辅助计数器的技术方案减小了数据预测加载判断逻辑的面积,辅助计数器通过特定的同步机制,产生发送电路所需的计数,使得发送电路无需调用多个加法器进行复杂运算即可简单判断数字音频数据加载控制信号。
当数字音频接口发送的数据和同步时钟对齐的时候,发送数据没有反应的时间,即同步时钟到达的瞬间就要由位时钟驱动发出第一个数据。这就需要预测提前准备数据。为实现预测加载,首先需要检测位时钟比率(BCLKRATIO),这个由检测计数器完成,每次同步时钟(LRCK)发出同步信号的时候,检测计数器的输出值即为位时钟率(BCLKRATIO)。
根据接口的协议,再参照计数器的计数值、位时钟率(BCLKRATIO)经过计算可以确定预备数据的时刻。参照的计数器,可以是检测计数器,也可以是辅助计数器。例如这个计数器设计为加1计数器,在同步信号发出的时候计数为N,那么数据准备的时刻即为计数器到达N-1的时候。当N为0或1的时候,预测时刻需回到计数为BCLKRATIO-1或者BCLKRATIO的时候。为减少判断逻辑,设计一个合适的辅助计数器,可以避免很多加减运算。
以右对齐,数据长度为WLEN的数据为例,假如检测计数器CNTD为加1计数器,该计数器是一个从1加到BCLKRATIO的计数器,每次同步信号到来的时候都会计数到BCLKRATIO,然后清成1,如此循环。采用数据预测加载的话,需要减法器“BCLKRATIO-1”和相应的比较器,用于当BCLKRATIO=WLEN情况下的数据加载;减法器“BCLKRATIO-WLEN”以及“BCLKRATIO-WLEN-1”和相应的比较器,用于判断BCLKRATIO与WLEN的差值,确定加载数据控制信号的位置BCLKRATIO-WLEN-1。如果采用辅助计数器的方法,设计一个减1计数器,在BCLKRATIO-2的 时候计数器清成BCLKRATIO,那么仅需在辅助计数器的值CNTA=WLEN的时候加载数据即可。这样用了一个辅助计数器(以及一个减法器一个比较器),虽然多了1个计数器,却节省了2个减法器和1个比较器,总体上减小了面积。
本发明因为所有数据都是同一个寄存器在时钟沿上输出,数据延时几乎都是一样,即从时钟到管脚这一固定路径的固定延时。发送的第一位数据没有了由于复杂组合逻辑带来的延时,整体电路特性得到了很大的提高,即传输速率得到提高,芯片适应环境更强。同时,利用辅助计数器预测加载数据,使得数字音频接口发送电路能够提前准备数据,再由位时钟(BCLK)逐位移出,减小了因逻辑判断带来的延时,很好的提高了数据传输速率,从架构上改善了电路的时序特性,好的时序特性也使得更多的数字音频接口协议得到更好的支持。
巧妙地设计辅助计数器的同步机制以及计数,可以减少加法器的使用,整体上减少了电路的面积。
附图说明
图1为本发明数字音频接口发送电路中实现数据预加载原理的模块图。
图2为本发明实现数据预加载的模块图。
图3为本发明实施例中右对齐数字音频发送接口利用辅助计数器实现数据预加载的时序图。
具体实施方式
下面将结合本发明的附图,对本发明优选实施例中的技术方案进行清楚、完整的描述。
如图1所示,在数字音频接口发送电路中,包括时钟模块,数据发送模块,移位寄存器以及数据预加载单元,时钟模块产生或处理同步时钟及位时钟,数据发送模块包括并行数据左声道及并行数据右声道。以同步时 钟为参照,数据预加载控制单元产生预加载控制信号在数据即将发出的时候把数据发送模块中的并行左声道数据或者并行右声道数据加载到移位寄存器,移位寄存器始终进行移位,当同步时钟(LRCK)到来的时候正好把第一位数据在位时钟(BCLK)沿上移出,接着把其他位数据也在位时钟沿上逐位移出。
如图2所示,所述数据预加载单元包括检测计数器、辅助计数器及数据预加载控制模块,当采用辅助计数器的时候,数据预加载控制模块的参照系是辅助计数器,辅助计数器的参照系是由同步时钟同步的检测计数器。辅助计数器根据数字音频接口协议等进行设计,产生一个统一的参考系,使数据预加载控制模块可以直接判断产生数据预加载控制信号,控制并行的左右声道载入移位寄存器。
检测计数器是一个加法计数器,目的是检测数字音频接口的同步时钟(LRCK)和位时钟(BCLK),确定数字音频接口数据的位时钟率(BCLKRATIO)。在同步时钟(LRCK)发出同步的信号(可以是上升沿,也可以是下降沿)的时候对这个计数器清零或清成特定值,当这个同步的信号再次到来的时候,检测计数器当前的计数值就是我们需要的位时钟率(BCLKRATIO)。根据检测出的位时钟率(BCLKRATIO)和检测时钟的计数值,就可以判断得出预加载数据的时刻。
辅助计数器可以是加法计数器,也可以是减法计数器或者其他类型计数器,这需要根据数字音频接口协议而定。这是为了减小判断逻辑因为复杂的加减运算带来的硬件消耗而设计的。它可以由检测计数器按照一定的逻辑影射而得,也可以由检测计数器为参照,产生一个特定的同步信号,以此特定同步信号为起始产生一系列计数,也可以根据设计需要结合以上方法,既有一部分计数是由检测计数器影射而得,也有一部分计数由自身自然计数而得。
数据加载预测模块是预测数据加载时刻,提前准备数据,当数字音频接口同步时钟(LRCK)发生翻转的时候,接口发送电路同时在位时钟(BCLK)沿的驱动下把数据发出。数据加载预测模块可以仅仅判断检测计 数器通过特定逻辑得到加载控制信号,但这个判断逻辑会占用比较多的电路面积。辅助计数器的引入可以精简判断逻辑,这也从整体上减小了电路的面积。
如图3所示为本发明的较佳实施例之一,该实施例是以右对齐数字音频接口为例的时序图。M为数据的位比特率,检测计数器是一个从1到M的加1计数器,每次同步时钟(LRCK)到来的时候都计到M。
辅助计数器是一个M到1的减法计数器,在检测计数器在M-2的时候使辅助计数器在位时钟到来的时候同步到M。预加载控制信号的产生需要参照辅助计数器,在辅助计数器的值为位比特率减数据长度的时候,即产生一个数据预加载控制信号。
本发明包括所有数字音频接口协议,在不同协议下采用不同的辅助计数器,辅助计数器可以选自加1计数器,减1计数器以及其他类型的计数器或者计数器组合。
本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。
Claims (5)
1.一种在数字音频接口发送电路中实现数据预加载的方法,其特征在于,该方法包括:
a.由检测计数器检测音频接口发送电路中的同步时钟和位时钟,并确定出数字音频接口的位时钟率和检测时钟的计数值;
b.由检测计数器向辅助计数器产生同步信号,由辅助计数器根据该同步信号进行与所述检测计数器相关联的计数;
c.数据预加载控制模块根据所述辅助计数器的计数值,按照数字音频接口协议的要求,判断发出数据的时刻,并确定发出数据前的一个周期即为准备数据的数据准备周期;
d.数据预加载控制模块在数据准备周期发送数据预加载控制信号给数字发送模块,由数据发送模块将待发送的数据加载到移位寄存器中准备发送;
e.由移位寄存器在同步时钟到来时把第一位数据在位时钟沿上发送出。
2.根据权利要求1所述的方法,其特征在于:所述辅助计数器由所述检测计数器按一定的逻辑影射而得。
3.根据权利要求1所述的方法,其特征在于:所述数据发送模块中存有并行左声道数据和并行右声道数据。
4.一种在数字音频接口发送电路中实现数据预加载的装置,其特征在于:包括时钟模块、数据发送模块及寄存器,以及检测计数器,辅助计数器,数据预加载控制模块;其中:所述检测计数器用于检测所述时钟模块中的同步时钟和位时钟,以确定数据的位时钟率;所述辅助计数器的计数由所述检测计数器按一定的逻辑影射而得,所述辅助计数器是以检测计数器为参照,并由检测计数器产生一个同步信号,辅助计数器并以此同步信号为起始计数的;所述数据预加载控制模块参照所述辅助计数器的计数值,控制所述数据发送模块在所述寄存器发出数据前的一个周期准备好待发送的数据。
5.根据权利要求4所述的装置,其特征在于:所述辅助计数器为选自加法计数器,减法计数器及其他类型计数器中的一种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110389582.3A CN102522110B (zh) | 2011-11-30 | 2011-11-30 | 数字音频接口发送电路中实现数据预加载的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110389582.3A CN102522110B (zh) | 2011-11-30 | 2011-11-30 | 数字音频接口发送电路中实现数据预加载的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102522110A CN102522110A (zh) | 2012-06-27 |
CN102522110B true CN102522110B (zh) | 2014-07-30 |
Family
ID=46293003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110389582.3A Active CN102522110B (zh) | 2011-11-30 | 2011-11-30 | 数字音频接口发送电路中实现数据预加载的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102522110B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731411B (zh) * | 2012-10-16 | 2019-05-31 | 马维尔国际贸易有限公司 | 高带宽可配置的串行链路 |
CN106936847A (zh) * | 2017-04-11 | 2017-07-07 | 深圳市米尔声学科技发展有限公司 | 音频数据的处理方法及处理器 |
CN115174305B (zh) * | 2022-06-28 | 2023-11-03 | 珠海一微半导体股份有限公司 | 基于iis接口的数据转换控制***及芯片 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5671445A (en) * | 1993-07-19 | 1997-09-23 | Oki America, Inc. | Interface for transmitting graphics data to a printer from a host computer system in rasterized form |
CN1521599A (zh) * | 2003-02-12 | 2004-08-18 | ��ķɭ���ó��˾ | 预处理公共格式中央处理输入或输出信号的方法及设备 |
CN1716187A (zh) * | 2004-06-30 | 2006-01-04 | 株式会社东芝 | 预载控制器、由处理器控制将数据预载至临时存储器的预载控制方法和程序 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7145486B1 (en) * | 2005-03-24 | 2006-12-05 | Cirrus Logic, Inc. | Circuits and methods for exchanging data through a serial port and systems using the same |
-
2011
- 2011-11-30 CN CN201110389582.3A patent/CN102522110B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5671445A (en) * | 1993-07-19 | 1997-09-23 | Oki America, Inc. | Interface for transmitting graphics data to a printer from a host computer system in rasterized form |
CN1521599A (zh) * | 2003-02-12 | 2004-08-18 | ��ķɭ���ó��˾ | 预处理公共格式中央处理输入或输出信号的方法及设备 |
CN1716187A (zh) * | 2004-06-30 | 2006-01-04 | 株式会社东芝 | 预载控制器、由处理器控制将数据预载至临时存储器的预载控制方法和程序 |
Also Published As
Publication number | Publication date |
---|---|
CN102522110A (zh) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9026831B2 (en) | Synchronous control system including a master device and a slave device, and synchronous control method for controlling the same | |
CN102065231B (zh) | 多路数据融合装置及其实现方法、多路音频数据处理*** | |
CN103763085B (zh) | 一种多路数据高速采集合并方法及装置 | |
CN102299788A (zh) | 自动发送ieee1588协议报文的控制方法及装置 | |
CN102522110B (zh) | 数字音频接口发送电路中实现数据预加载的方法和装置 | |
CN101877633A (zh) | 信号同步的方法和***、及信号接收装置和信号发送装置 | |
JP2018157456A (ja) | スレーブ、シリアル通信システム、および、シリアル通信システムの通信方法 | |
WO2010080441A2 (en) | Synchronization of a plurality of data streams | |
CN102546084A (zh) | 异步串行通信数据接收时的抗干扰纠错采样***和方法 | |
CN108833366B (zh) | 基于as6802协议的控制帧压缩方法 | |
CN101686185A (zh) | 一种在分组网络中传送tdm业务的方法、装置及*** | |
CN102263633B (zh) | 交换机堆叠***中的时钟同步方法和堆叠控制器 | |
CN101300773A (zh) | 数据接口及寻求同步的方法 | |
JPH05507398A (ja) | 非同期転送モード型ディジタル電気通信ネットワークの端末装置用同期装置 | |
CN111357243B (zh) | 总线***的用户设备、运行方法及总线*** | |
JP3649877B2 (ja) | 時分割多重システムにおけるハイブリッド タイムスロット及びサブタイムスロット動作 | |
CN111010250A (zh) | 一种实现高精度时间同步的方法及其*** | |
CN104935827B (zh) | 视频帧同步时嵌入音频的处理***及处理方法 | |
CN203722758U (zh) | 一种用于分布式视频***的同步装置 | |
CN105718401A (zh) | 一种多路smii信号到一路mii信号的复用方法及*** | |
CN103840934A (zh) | 一种基于时钟自动恢复的开销传递方法及装置 | |
CN205385561U (zh) | 一种多屏拼接显示*** | |
CN100533414C (zh) | 一种多路输入数据的控制***及其控制方法 | |
CN103078700A (zh) | 一种时钟同步处理方法 | |
JP2923363B2 (ja) | 信号処理ユニット |
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 |