CN117639793A - 一种基于mipi协议的并串转换电路及方法 - Google Patents
一种基于mipi协议的并串转换电路及方法 Download PDFInfo
- Publication number
- CN117639793A CN117639793A CN202311179601.9A CN202311179601A CN117639793A CN 117639793 A CN117639793 A CN 117639793A CN 202311179601 A CN202311179601 A CN 202311179601A CN 117639793 A CN117639793 A CN 117639793A
- Authority
- CN
- China
- Prior art keywords
- data
- clock signal
- parallel
- data transmission
- output
- 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
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 140
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims abstract description 269
- 238000012545 processing Methods 0.000 claims abstract description 23
- 230000008054 signal transmission Effects 0.000 claims description 71
- 230000000630 rising effect Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 30
- 230000010354 integration Effects 0.000 claims description 3
- 101100328073 Schizosaccharomyces pombe (strain 972 / ATCC 24843) ckn1 gene Proteins 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 16
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001934 delay 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
- 238000003672 processing method Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M9/00—Parallel/series conversion or vice versa
-
- 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
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dc Digital Transmission (AREA)
Abstract
一种基于MIPI协议的并串转换电路及方法,该方法包括:时钟产生电路、第一数据转换电路、第二数据转换电路、第三数据转换电路;其中,时钟产生电路,用于根据源时钟信号输出第一、第二、第三时钟信号;第一数据转换电路,用于在并串转换电路处于C‑PHY模式时,根据第一时钟信号对每两个相邻数据传输周期的7bit并行数据进行整合,输出14bit并行数据;第二数据转换电路,用于根据第二时钟信号处理14bit并行数据,输出2bit并行数据;第三数据转换电路,用于根据第三时钟信号处理2bit并行数据,输出串行数据。本申请实施例将C‑PHY模式下输入的7bit并行数据转换成串行数据,以满足后续应用串行数据的要求。
Description
技术领域
本文涉及电路设计技术,尤指一种基于移动产业处理器接口(Mobile IndustryProcessor Interface,MIPI)协议的并串转换电路及方法。
背景技术
现代通信中,MIPI接口在5G移动设备、互联汽车和物联网解决方案中,具有极其重要的战略作用。MIPI标准定义了三种独特的物理层(PHY)规范,分别是:C-PHY、D-PHY、M-PHY,其中D-PHY和C-PHY物理层支持摄像和显示应用。
对于C-PHY模式来说,往往需要在后续数据处理时将C-PHY模式下输入的7bit并行数据转换成串行数据,
然而,相关技术中缺乏相应方法。
发明内容
本申请提供了一种基于MIPI协议的并串转换电路及方法,能够将C-PHY模式下输入的7bit并行数据转换成串行数据。
一方面,本申请提供了一种基于MIPI协议的并串转换电路,包括:时钟产生电路、第一数据转换电路、第二数据转换电路、第三数据转换电路;
其中,所述时钟产生电路,用于根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
所述第一数据转换电路,用于在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
所述第二数据转换电路,用于根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
所述第三数据转换电路,用于根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
另一方面,本申请提供了一种基于MIPI协议的并串转换方法,应用于如上任一所述的基于MIPI协议的并串转换电路,所述方法包括:
所述时钟产生电路根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
所述第一数据转换电路在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
所述第二数据转换电路根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
所述第三数据转换电路根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
与相关技术相比,本申请包括时钟产生电路、第一数据转换电路、第二数据转换电路、第三数据转换电路;其中,所述时钟产生电路,用于根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;所述第一数据转换电路,用于在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;所述第二数据转换电路,用于根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;所述第三数据转换电路,用于根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。本申请实施例能够将C-PHY模式下输入的7bit并行数据转换成串行数据,从而满足了后续应用串行数据的要求。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本申请实施例一种基于MIPI协议的并串转换电路的结构示意图;
图2为本申请实施例一种时钟产生电路的结构示意图;
图3为本申请实施例一种第一数据转换子电路的结构示意图;
图4为本申请实施例一种C-PHY模式下并串数据转换的过程示意图;
图5为本申请实施例另一种基于MIPI协议的并串转换电路的结构示意图;
图6为本申请实施例另一种C-PHY模式下并串数据转换的过程示意图;
图7为本申请实施例一种第一数据整理电路的结构示意图;
图8为本申请实施例另一种时钟产生电路的结构示意图;
图9为本申请实施例又一种D-PHY模式下并串数据转换的过程示意图;
图10为本申请实施例又一种基于MIPI协议的并串转换电路的结构示意图;
图11为本申请实施例另一种D-PHY模式下并串数据转换的过程示意图;
图12为本申请实施例一种第二数据整理电路的结构示意图;
图13为本申请实施例一种基于MIPI协议的并串转换电路的电路示意图;
图14为本申请实施例一种时钟电路的电路示意图;
图15为本申请实施例一种C-PHY模式下7bit并行数据转换至14bit并行数据输出的过程示意图;
图16为本申请实施例一种D-PHY模式下8bit并行数据输出的过程示意图;
图17为本申请实施例一种基于MIPI协议的并串转换方法的流程示意图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
本申请实施例提供了一种基于MIPI协议的并串转换电路,如图1所示,包括:时钟产生电路11、第一数据转换电路12、第二数据转换电路13、第三数据转换电路14;
其中,所述时钟产生电路11,用于根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
所述第一数据转换电路12,用于在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
所述第二数据转换电路13,用于根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
所述第三数据转换电路14,用于根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
其中,7条并列的第一数据传输线中每条第一数据传输线输入1bit数据,7条并列第一数据传输线形式7bit并行数据。
本申请实施例提供的数据处理装置,将C-PHY模式下的7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据,然后处理输出2bit并行数据,再进行并串转换处理输出串行数据。本申请实施例能够将C-PHY模式下输入的7bit并行数据转换成串行数据,从而满足了后续应用串行数据的要求。
在一种示例性实例中,如图2所示,所述时钟产生电路包括11:第一时钟产生模块111、7分频模块112、第一2分频模块113、第二2分频模块114和第二时钟产生模块115;
所述第一时钟产生模块111,用于以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率为所述源时钟信号2倍的时钟信号clkp,以及与所述时钟信号clkp相位相反的时钟信号clkn;
所述7分频模块112,用于对来自所述第一时钟产生模块111的时钟信号clkp和时钟信号clkn的频率除以7,输出时钟信号byte_clkp 1和时钟信号byte_clkn 1;
所述第一2分频模块113,用于对来自所述7分频模块112的时钟信号byte_clkp 1和时钟信号byte_clkn 1的频率除以2,输出时钟信号align_clkp和时钟信号align_clkn;
所述第二2分频模块114,用于对来自所述第一时钟产生模块111的时钟信号clkp和时钟信号clkn的频率除以2,输出时钟信号hclkp 1和时钟信号hclkn 1;
所述第二时钟产生模块115,用于对来自所述第一2分频模块113的时钟信号align_clkp和时钟信号align_clkn进行处理,输出7个单脉冲时钟信号mux_ckp 1和7个单脉冲时钟信号mux_ckn 1。
其中,为了输出的平衡性,正相位的时钟信号与反相位的时钟信号往往是同时输出的,时钟信号byte_clkn 1与时钟信号byte_clkp 1相位相反,时钟信号align_clkn与时钟信号align_clkp相位相反,时钟信号hclkn 1与时钟信号hclkp 1相位相反,时钟信号mux_ckn 1与时钟信号mux_ckp 1相位相反。
在一种示例性实例中,所述第一时钟信号包括:所述时钟信号byte_clkp 1、所述时钟信号align_clkp 1。
在一种示例性实例中,所述第一数据转换12电路包括:7个第一数据转换子电路121,7条所述第一数据传输线和7个所述第一数据转换子电路121一一对应,每个所述第一数据转换子121电路包括:第一触发模块1211、第二触发模块1212、第三触发模块1212和第四触发模块1214;
如图3所示,每个所述第一数据转换子电路121用于根据每三个相邻信号传输周期的时钟信号byte_clkp 1对所在的第一数据传输线上的数据进行如下操作:
所述第一触发模块1211,用于以所述第一数据传输线上的bit数据作为输入,当所述时钟信号byte_clkp 1出现上升沿时,根据所述时钟信号byte_clkp 1的第一信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述时钟信号byte_clkp 1的第二信号传输周期输出第二数据传输周期的bit数据,根据所述时钟信号byte_clkp 1的第三信号传输周期输出第三数据传输周期的bit数据;
所述第二触发模块1212,用于以第一触发模块1211的输出作为输入,当所述时钟信号byte_clkp 1出现上升沿时,根据所述byte_clkp 1的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述byte_clkp 1的第三信号传输周期输出第二数据传输周期的bit数据;
所述第三触发模块1213,用于以所述第二触发模块1212的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据;
所述第四触发模块1214,用于以第一触发模块1211的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第二数据传输周期的bit数据。
其中,就每个第一数据转换子电路121来说,时钟信号byte_clkp 1的信号传输周期与第一数据传输线上的数据传输周期相同,第一触发模块1211与第二触发模块1212之间的传输时延,第二触发模块1212与第三触发模块1213之间的传输时延,以及第一触发模块1211与第四触发模块1214之间的传输时延均相等,且等于一个信号传输周期,因此第一触发模块1211根据byte_clkp 1的第一信号传输周期输出的第一数据传输周期的bit数据需要根据所述时钟信号byte_clkp 1的第二信号传输周期才能传输到第二触发模块1222,第二触发模块1222输出的第一数据传输周期的bit数据需要再经过一个信号传输周期才能到达第三触发模块1213,并且由于时钟信号align_clkp的频率是时钟信号byte_clkp 1的频率的1/2,相应的时钟信号byte_clkp 1的信号传输周期是时钟信号align_clkp的信号传输周期的2倍,因此时钟信号align_clkp的第一传输周期由于没有数据到达第三触发模块1213和第四触发模块1214,因此第三触发模块1213和第四触发模块1214无法输出任何数据,直到时钟信号align_clkp的第二传输周期才有数据达到第三触发模块1213和第四触发模块1214,第三触发模块1213输出第一数据传输周期的bit数据,第四触发模块1214输出第二数据传输周期的bit数据,即第三触发模块1213和第四触发模块1214输出的数据为2bit并行数据。
而1个第一数据转换子电路121输出2bit并行数据,那么7个第一数据转换子电路一共输出14bit并行数据。
在一种示例性实例中,所述第二时钟信号包括:7个单脉冲时钟信号mux_ckp 1。
在一种示例性实例中,所述第二数据转换电路包括:14个以序号标识的开关,14个开关包括:7组开关,每个所述开关组包括:序号相邻的一个偶数序号开关和一个奇数序号开关,14bit并行数据对应的14条第二数据传输线中的每条第二数据传输线上各自连接一个开关,其中,14个开关中的奇数序号开关与奇数数据传输线连接,偶数序号开关与偶数数据传输线连接;
7个单脉冲时钟信号mux_ckp 1与7组开关一一对应,每个所述单脉冲时钟信号mux_ckp 1用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 1出现高电平时,打开该组开关,并将该组开关中偶数序号开关对应的第二数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的第二数据传输线上的bit数据通输出至所述奇数数据传输线。
用于传输7bit并行数据的数据传输线称为“第一数据传输线”,用于传输14bit并行数据的数据传输线称为“第二数据传输线”。
示例性的,14条第二数据传输线的每条第二数据传输线上连接1个开关,假设14个开关依次表示为:开关0、开关1、开关2、开关3、开关4、开关5、开关6、开关7、开关8、开关9、开关10、开关11、开关12、开关13,14个开关包括7组开关,即第一组开关包括开关0、开关1,第二组开关包括开关2、开关3,第三组开关包括开关4、开关5,第四组开关包括开关6、开关7,第五组开关包括开关8、开关9,第六组开关包括开关10、开关11,第七组开关包括开关12、开关13,假设7个单脉冲时钟信号mux_ckp 1包括:mux_ckp1<0>、mux_ckp1<1>、mux_ckp1<2>、mux_ckp1<3>、mux_ckp1<4>、mux_ckp1<5>、mux_ckp1<6>,单脉冲时钟信号mux_ckp1<0>对应开关0、开关1,单脉冲时钟信号mux_ckp1<1>对应开关2、开关3,单脉冲时钟信号mux_ckp1<2>对应开关4、开关5,单脉冲时钟信号mux_ckp1<3>对应开关6、开关7,单脉冲时钟信号mux_ckp1<4>对应开关8、开关9,单脉冲时钟信号mux_ckp1<5>对应开关10、开关11,单脉冲时钟信号mux_ckp1<6>对应开关12、开关13。
当单脉冲时钟信号mux_ckp1<0>出现高电平时,打开开关0、开关1,将开关0对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关1对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<0>出现低电平时,关闭开关0、开关1。
当单脉冲时钟信号mux_ckp1<1>出现高电平时,打开开关2、开关3,将开关2对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关3对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<1>出现低电平时,关闭开关2、开关3。
当单脉冲时钟信号mux_ckp1<2>出现高电平时,打开开关4、开关5,将开关4对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关5对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<2>出现低电平时,关闭开关4、开关5。
当单脉冲时钟信号mux_ckp1<3>出现高电平时,打开开关6、开关7,将开关6对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关7对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<3>出现低电平时,关闭开关6、开关7。
当单脉冲时钟信号mux_ckp1<4>出现高电平时,打开开关8、开关9,将开关8对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关9对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<4>出现低电平时,关闭开关8、开关9。
当单脉冲时钟信号mux_ckp1<5>出现高电平时,打开开关10、开关11,将开关10对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关11对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<5>出现低电平时,关闭开关10、开关11。
当单脉冲时钟信号mux_ckp1<6>出现高电平时,打开开关12、开关13,将开关12对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关13对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp1<6>出现低电平时,关闭开关12、开关13。
由于7个单脉冲时钟信号mux_ckp 1是时钟信号align_clkp产生的,如图4所示,7个单脉冲时钟信号mux_ckp 1高电平的时间宽度总和等于时钟信号align_clkp的一个信号传输周期。
在一种示例性实例中,所述第三时钟信号包括:时钟信号hclkp 1和时钟信号hclkn 1。
在一种示例性实例中,所述第三数据转换电路,用于当所述时钟信号hclkp 1出现高电平时,输出所述偶数数据传输线上的数据,当所述时钟信号hclkn 1出现高电平时,输出所述奇数数据传输线上的数据。
其中,时钟信号hclkp 1和时钟信号hclkn 1相位相反,时钟信号hclkp 1出现高电平时,时钟信号hclkn 1出现低电平,因此当所述时钟信号hclkn 1出现高电平时,输出所述奇数数据传输线上的数据,也可以表述为:当所述时钟信号hclkp 1出现低电平时,输出所述奇数数据传输线上的数据。
示例性的,偶数数据线和奇数数据线上的数据产生过程,与第三数据转换电路输出数据过程是同时进行的,第三数据转换电路交替地通过偶数数据传输线和奇数数据传输线数据,因为时钟信号hclkp 1和hclkn 1的频率是偶数数据传输线和奇数数据传输线上数据产生速度的2倍,所以偶数数据传输线和奇数数据传输线上的数据不会积压,一旦由第二数据转换电路产生通过偶数数据传输线和奇数数据传输线传输,第三数据转换电路就会从偶数数据传输线和奇数数据传输线上交替地通过数据。
如图4所示,假设14bit并行数据D<13:0>为:D0、D1、D2、D3、D4、D5、D6、D7、D8、D9、D10、D11、D12、D13,那么当单脉冲时钟信号mux_ckp1<0>出现高电平时,D0输出至偶数数据传输线,D1输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<1>出现高电平时,D2输出至偶数数据传输线,D3输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<2>出现高电平时,D4输出至偶数数据传输线,D5输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<3>出现高电平时,D6输出至偶数数据传输线,D7输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<4>出现高电平时,D8输出至偶数数据传输线,D9输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<5>出现高电平时,D10输出至偶数数据传输线,D11输出至奇数数据传输线;当单脉冲时钟信号mux_ckp1<6>出现高电平时,D12输出至偶数数据传输线,D13输出至奇数数据传输线。
时钟信号align_clkp一个信号传输周期对应的一组14bit并行数据输出到偶数数据传输线上的数据为:D0、D2、D4、D6、D8、D10、D12,输出到奇数数据传输线上的数据为:D1、D3、D5、D7、D9、D11、D13。
在时钟信号hclkp 1第一信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D0,在时钟信号hclkp 1第一信号传输周期出现低电平(即hclkn 1第一信号传输周期的高电平)时,输出奇数数据传输线上的数据,即D1;
在时钟信号hclkp 1第二信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D2;在时钟信号hclkp 1第二信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D3。
在时钟信号hclkp 1第三信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D4;在时钟信号hclkp 1第三信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D5。
在时钟信号hclkp 1第四信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D6;在时钟信号hclkp 1第四信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D7。
在时钟信号hclkp 1第五信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D8;在时钟信号hclkp 1第五信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D9。
在时钟信号hclkp 1第六信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D10;在时钟信号hclkp 1第六信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D11。
在时钟信号hclkp 1第七信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D12,在时钟信号hclkp 1第七信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D13。
最终,输出串行数据:D0、D1、D2、D3、D4、D5、D6、D7、D8、D9、D10、D11、D12、D13。
在一种示例性实例中,如图5所示,所述并串转换电路还包括:第一数据整理电路15。
在一种示例性实例中,所述时钟产生电路11,还用于根据所述源时钟信号输出第四时钟信号;
所述第一数据整理电路15,用于根据所述第四时钟信号对所述第一数据转换电路产生的14bit并行数据进行处理,得到经过处理的14bit并行数据;其中,所述经过处理的14bit并行数据包括:8bit并行数据,以及与所述8bit并行数据相位相差所述第四时钟信号的半个信号传输周期的6bit并行数据。
示例性的,因为时钟信号align_clkp和时钟信号align_clkn分别是上升沿和下降沿,因此错开了半个半个信号传输周期,那么输出的8bit并行数据和6bit并行数据也错开了半个半个信号传输周期。
如图4所示,如果不对14bit并行数据进行处理,则需要在时钟信号align_clkp的一个信号传输周期中根据7个单脉冲时钟信号mux_ckp1输出14bit并行数据,而由于时钟沿在数据变化的开始和结束端抓取数据时可能出现亚稳态,造成输出数据错误(图4中14bit并行数据的两侧尖部表示数据处于变化中),这时输出数据可能会造成错误,因此可以将14bit并行数据错开半个周期输出,如图6所示,8bit并行数据和6bit并行数据错开时钟信号align_clkp半个周期输出。其中,单脉冲时钟信号mux_ckp1<0>、单脉冲时钟信号mux_ckp1<1>、单脉冲时钟信号mux_ckp1<2>和单脉冲时钟信号mux_ckp1<3>用于输出8bit并行数据,单脉冲时钟信号mux_ckp1<4>、单脉冲时钟信号mux_ckp1<5>和单脉冲时钟信号mux_ckp1<6>用于输出6bit并行数据,从而保证数据抓取准确。
在一种示例性实例中,所述第四时钟信号包括:所述时钟信号align_clkp和所述时钟信号align_clkn。
如图7所示,所述第一数据整理电路15包括:第五触发模块151和第六触发模块152,所述第五触发模块151设置在所述14条第二数据传输线中的8条第二数据传输线上,所述第六触发模块152设置在所述14条第二数据传输线中的其余6条第二数据传输线上;
所述第五触发模块151,用于以对应的8条第二数据传输线上的8bit并行数据作为输入,当所述时钟信号align_clkp出现上升沿时,输出所述8bit并行数据;
所述第六触发模块152,用于以对应的6条第二数据传输线上的6bit并行数据作为输入,当所述时钟信号align_clkn出现上升沿时,输出所述6bit并行数据。
其中,8条第二数据传输线接入第五触发模块151,另外6条第二数据传输线接入第六触发模块152;8条第二数据传输线上每条第二数据传输线上传输1bit数据,8条第二数据传输线上传输并行8bit数据,6条第二数据传输线上每条第二数据传输线上传输1bit数据,6条第二数据传输线上传输并行6bit数据。
在一种示例性实例中,所述时钟产生电路11,还用于在所述并串转换电路复用处于D-PHY模式下,根据所述源时钟信号输出第五时钟信号。
在一种示例性实例中,所述第二数据转换电路13,还用于在所述并串转换电路处于D-PHY模式的情况下,根据所述第五时钟信号对通过8条并列的第三数据传输线输入的8bit并行数据进行处理,输出2bit并行数据。
其中,8条并列的第三数据传输线中每条第三数据传输线输入1bit数据,8条并列第三数据传输线形式8bit并行数据。
本申请实施例提供的数据处理装置,将D-PHY模式下的8条并列的第三数据传输线输入的8bit并行数据进行处理,输出2bit并行数据,再进行并串转换处理输出串行数据。本申请实施例能够将D-PHY模式下输入的8bit并行数据转换成串行数据,从而满足了后续应用串行数据的要求。
在一种示例性实例中,如图8所示,所述时钟产生电路11还包括:第三时钟产生模块116和4分频模块117;
所述第三时钟产生模块116,用于以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率与所述源时钟信号相同的时钟信号hclkp 2,以及与所述时钟信号hclkp 2相位相反的时钟信号hclkn 2;
所述4分频模块117,用于对来自所述第三时钟产生模块116的时钟信号hclkp 2和时钟信号hclkn 2的频率除以4,输出时钟信号byte_clkp 2和时钟信号byte_clkn 2;
所述第二时钟产生模块115,还用于当所述并串转换电路用于D-PHY模式时,对来自所述4分频模块117的时钟信号byte_clkp 2和时钟信号byte_clkn 2进行处理,输出4个单脉冲时钟信号mux_ckp 2和4个单脉冲时钟信号mux_ckn 2。
在一种示例性实例中,所述第五时钟信号包括:4个单脉冲时钟信号mux_ckp 2。
在一种示例性实例中,所述7组开关包括:第一部分开关组和第二部分开关组,所述第一部分开关组包括:4组开关,所述第二部分开关组包括:3组开关;
4个单脉冲时钟信号mux_ckp 2与第一部分开关组中的4组开关一一对应,每个单脉冲时钟信号mux_ckp 2用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 2出现高电平时,打开该组开关,将该组开关中偶数序号开关对应的第三数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的数据传输线上的bit数据通输出至所述奇数数据传输线。
示例性的,8条第三数据传输线的每条第三数据传输线上连接1个开关,假设第一部分开关组的4组开关,即8个开关依次表示为:开关0、开关1、开关2、开关3、开关4、开关5、开关6、开关7,4组第一组开关包括开关0、开关1,第二组开关包括开关2、开关3,第三组开关包括开关4、开关5,第四组开关包括开关6、开关7,假设4个单脉冲时钟信号mux_ckp 2包括:mux_ckp 2<0>、mux_ckp 2<1>、mux_ckp 2<2>、mux_ckp 2<3>,单脉冲时钟信号mux_ckp 2<0>对应开关0、开关1,单脉冲时钟信号mux_ckp 2<1>对应开关2、开关3,单脉冲时钟信号mux_ckp 2<2>对应开关4、开关5,单脉冲时钟信号mux_ckp 2<3>对应开关6、开关7。
当单脉冲时钟信号mux_ckp 2<0>出现高电平时,打开开关0、开关1,将开关0对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关1对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp 2<0>出现低电平时,关闭开关0、开关1。
当单脉冲时钟信号mux_ckp 2<1>出现高电平时,打开开关2、开关3,将开关2对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关3对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp 2<1>出现低电平时,关闭开关2、开关3。
当单脉冲时钟信号mux_ckp 2<2>出现高电平时,打开开关4、开关5,将开关4对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关5对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp 2<2>出现低电平时,关闭开关4、开关5。
当单脉冲时钟信号mux_ckp 2<3>出现高电平时,打开开关6、开关7,将开关6对应的第二数据传输线上的bit数据输出至偶数数据传输线,开关7对应的第二数据传输线上的bit数据输出至奇数数据传输线,当单脉冲时钟信号mux_ckp 2<3>出现低电平时,关闭开关6、开关7。
由于4个单脉冲时钟信号mux_ckp 2是时钟信号byte_clkp 2产生的,如图9所示,4个单脉冲时钟信号mux_ckp 2高电平的时间宽度总和等于时钟信号byte_clkp 2的一个信号传输周期。
如图9所示,假设8bit并行数据D<7:0>为:D0、D1、D2、D3、D4、D5、D6,那么当单脉冲时钟信号mux_ckp2<0>出现高电平时,D0输出至偶数数据传输线,D1输出至奇数数据传输线;当单脉冲时钟信号mux_ckp2<1>出现高电平时,D2输出至偶数数据传输线,D3输出至奇数数据传输线;当单脉冲时钟信号mux_ckp2<2>出现高电平时,D4输出至偶数数据传输线,D5输出至奇数数据传输线;当单脉冲时钟信号mux_ckp2<3>出现高电平时,D6输出至偶数数据传输线,D7输出至奇数数据传输线。
时钟信号byte_clkn 2一个信号传输周期对应的一组8bit并行数据输出到偶数数据传输线上的数据为:D0、D2、D4、D6,输出到奇数数据传输线上的数据为:D1、D3、D5、D7。
在时钟信号hclkp 1第一信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D0,在时钟信号hclkp 1第一信号传输周期出现低电平(即hclkn 1第一信号传输周期的高电平)时,输出奇数数据传输线上的数据,即D1;
在时钟信号hclkp 1第二信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D2;在时钟信号hclkp 1第二信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D3。
在时钟信号hclkp 1第三信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D4;在时钟信号hclkp 1第三信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D5。
在时钟信号hclkp 1第四信号传输周期出现高电平时,输出偶数数据传输线上的数据,即D6;在时钟信号hclkp 1第四信号传输周期出现低电平时,输出奇数数据传输线上的数据,即D7。
最终,输出串行数据:D0、D1、D2、D3、D4、D5、D6、D7。
在一种示例性实例中,如图10所示,所述并串转换电路还包括:第二数据整理电路16;
所述时钟产生电路11,还用于根据所述源时钟信号产生所述第二数据整理电路16所需的第六时钟信号;
所述第二数据整理电路16,用于根据所述第六时钟信号对8bit并行数据进行处理,得到经过处理的8bit并行数据;其中,所述经过处理的8bit并行数据包括:第一4bit并行数据,以及与所述第一4bit并行数据相位相差所述第六时钟信号的半个信号传输周期的第二4bit并行数据。
示例性的,因为时钟信号byte_clkp 2和时钟信号byte_clkn 2分别是上升沿和下降沿,因此错开了半个信号传输周期,那么输出的第一部分4bit并行数据和第二部分4bit并行数据也错开了半个信号传输周期。
如图9所示,如果不对8bit并行数据进行处理,则需要在时钟信号byte_clkp 2的一个信号传输周期中根据4个单脉冲时钟信号mux_ckp2输出8bit并行数据,而由于时钟沿在数据变化的开始和结束端抓取数据时可能出现亚稳态,造成输出数据错误(图9中8it并行数据的两侧尖部表示数据处于变化中),这时输出数据可能会造成错误,因此可以将8bit并行数据错开半个周期输出,如图11所示,第一部分4bit并行数据和第二部分4bit并行数据错开时钟信号byte_clkp 2半个周期输出。其中,单脉冲时钟信号mux_ckp2<0>、单脉冲时钟信号mux_ckp2<1>用于输出第一部分4bit并行数据,单脉冲时钟信号mux_ckp2<2>、单脉冲时钟信号mux_ckp2<3>用于输出第二部分4bit并行数据,从而保证数据抓取准确。
在一种示例性实例中,所述第六时钟信号包括:时钟信号byte_clkp 2和时钟信号byte_clkn2。
在一种示例性实例中,如图12所示,所述第二数据整理电路16包括:第七触发模块161和第八触发模块162,所述第七触发模块161设置在所述8条第三数据传输线上的4条第三数据传输线上,所述第八触发模块162设置在所述8条第三数据传输线上的其余4条第三数据传输线上;
所述第七触发模块161,用于以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkp 2出现上升沿时,输出所述第一4bit并行数据;
所述第八触发模块162,用于以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkn 2出现上升沿时,输出所述第二4bit并行数据。
其中,4条第三数据传输线接入第七触发模块161,另外4条第三数据传输线接入第八触发模块162;4条第三数据传输线上每条第三数据传输线上传输1bit数据,4条第三数据传输线上传输并行4bit数据,另外4条第三数据传输线上每条第三数据传输线上传输1bit数据,4条第三数据传输线上传输并行4bit数据。
在一种示例性实例中,所述源时钟信号为四相时钟信号,其中,按照相位从前往后的顺序所述四相时钟信号中前一相位的时钟信号与后一相位的时钟信号相差90度。
现代通信中,MIPI接口在5G移动设备、互联汽车和物联网(IoT)解决方案中,具有极其重要的战略作用。MIPI标准定义了三种独特的物理层(PHY)规范:C-PHY/D-PHY/M-PHY,其中D-PHY和C-PHY物理层支持摄像和显示应用。在FPGA芯片中,根据用户的需要,需要将MIPI设置为C-PHY或D-PHY使用。然而D-PHY数据传输是差分对结构,而C-PHY为三线传输,两者电路不能完全复用,拼凑两套单独的C-PHY和D-PHY电路不仅电路复杂,而且面积大,功耗大,成本高。本申请实施例还提供一种并行转串行数据电路,此电路不仅可以单独在C-PHY应用中使用,也能和D-PHY并转串数据电路复用,使电路简单化,以达到节省功耗,面积,成本的目的。
本申请实施例提供的并串转换电路主要有接收数据模块和并转串模块两部分组成,另外配合时钟产生电路。基于mipi协议而言,D-PHY接收的数据为8bit,而C-PHY接收数据为7bit,两者数据位无法共享,于是在接收模块将C-PHY的7bit数据先转为14bit数据,这样和D-PHY一样均为偶数位数据。后续并转串模块都是将偶数位数据分为奇数序列data_odd和偶数序列data_even,便于最后高频时钟做二选一选择形成串行数据列。在转换路径上,D-PHY的8bit数据转换电路可以复用C-PHY的14bit数据转换电路。在时钟产生电路里,C-PHY和D-PHY均要用到div2,div4和mux时钟产生模块,所以两者时钟产生电路基本能复用。
如图13所示,本申请实施例提供的并串转换电路,设置模式选择信号mode_sel=0为D-PHY模式,model_sel=1为C-PHY模式。
C-PHY模式:
当model_sel=1时,7bit并行数据din<6:0>由顶层输入到7to14模块(对应上述实施例中的第一数据转换电路),输出14bit并行数据dat<13:0>,经过mux再由14to2模块(对应上述实施例中的第二数据转换电路)转成2bit并行数据data_odd和data_even,最后由2to1模块(对应上述实施例中的第三数据转换电路)转成1bit串行数据。
din<6:0>进来的数据byte_clkp打一拍,就变成了a<6:0>(其中的<6:0>),同时将a<6:0>作为输入接到了dff2,又接到了dff1,dff1、dff2是以align_clkp为时钟,这个时候也是align_clkp的第一个上升沿,但b<6:0>因为是a<6:0>又打了一拍得到的数据,这个时候还没有打拍,因此也没传输过来,而a<13:7>也未传输过来,所以在align_clkp的第一个上升沿采集不到数据。但等数据传输过来,此时align_clkp并非上升沿,所以打不了数据。然后byte_clkp再打一拍,这个时候align_clkp上升沿来了,打出b<6:0>线上的D0<6:0>和a<6:0>线上D0<13:7>,得到c<13:0>。
D-PHY模式:
当model_sel=0时,8bit并行数据din<7:0>由顶层输入mux模块,再由8to2模块转成2bit并行数据data_odd和data_even,最后由2to1模块转成1bit串行数据。
本申请实施例提供的并串转换电路的时钟电路如图14所示,当model_sel=1时,从顶层输入的4相时钟clk0,clk90,clk180,clk270,其中clk90与clk0相位差90°,clk180与clk0相位差180°,clk270与clk0相位差270°,此四相时钟最高频率为f Hz,经由clk_gen模块(对应上述实施例中的第一时钟产生模块)产生与clk0正沿对齐的2f Hz时钟clkp,以及其反相时钟clkn。clkp和clkn经由div7除频模块(对应上述实施例中的7分频模块)得到频率除7的byte_clkp/byte_clkn,其频率为2f/7=f/3.5Hz;byte_clkp/byte_clkn时钟经由div2除频模块(对应上述实施例中的第一2分频模块)得到频率为2f/14=f/7Hz的align_clkp/align_clkn。align_clkp/align_clkn时钟经由mux_clk_gen模块(上述实施例中的第二时钟产生模块)得到7个单脉冲时钟mux_ckp<6:0>/mux_ckn<6:0>。另外,经由div2除频模块(对应上述实施例中的第二2分频模块)得到频率除2的hclkp1/hclkn1,其频率为2f/2=fHz。
D-PHY时钟产生关系为,与C-PHY相同,由顶层输入的四相时钟clk0/clk90/clk180/clk270,频率为f Hz,经过buffer模块(对应上述实施例中的第三时钟产生模块)直接与clk0同沿同频率的时钟hclkp以及其反相时钟hclkn,再由div4除频模块(对应上述实施例中的4分频模块)产生byte_clkp/byte_clkn,频率为f/4Hz,最后经过mux_clk_gen模块(对应上述实施例中的第二时钟产生电路)得到4个单脉冲时钟mux_ckp<3:0>/mux_ckn<3:0>。
其中,C-PHY模式下7bit数据转换成14bit数据的电路可以如图15所示,其中,dff0<6:0>对应上述实施例中的第一触发模块,dff1<6:0>对应上述实施例中的第二触发模块,dff2<6:0>对应上述实施例中的第三触发模块,dff2<13:7>对应上述实施例中的第四触发模块,dff3<7:0>对应上述实施例中的第五触发模块,dff3<13:8>对应上述实施例中的第六触发模块。C-PHY模式下7bit数据转换成14bit数据示意图可以如图16所示,输入数据为din<6:0>,将前一数据传输周期的7bit并行数据记为D0<6:0>,后一数据传输周期的7bit并行数据记为D0<13:7>,时钟byte_clkp上升沿将输入din<6:0>上的D0<6:0>打两拍得到b<6:0>上的D2<6:0>,D0<13:7>打一拍得到a<6:0>上的D1<13:7>,将a<6:0>和b<6:0>都送给align_clkp(p:上升沿,n:下降沿)对齐打出数据c<13:0>;并且由align_clkp上升沿打出8个并行数据D<7:0>,下降沿打出6个并行数据D<13:8>,使得D<13:8>相对于D<7:0>延迟半拍,以便于后续mux_ckp时钟选择数据。
D-PHY模式下8bit并行数据转换成错开半个周期的8bit并行数据示意图可以如图17所示,数据din<7:0>,时钟byte_clk上升沿将并行的4bit打一拍输出D<3:0>,下降沿将另外4bit数据打一拍输出D<7:5>,使得D<7:5>比D<3:0>延迟半拍。
输出的14bit并行数据或8bit并行数据选出奇数个数据串联得到data_odd,偶数个数据串联得到data_even,然后由时钟hclk高/低电平选通电路将2bit并行数据转成1bit串联数据,最后送给tx diver输出。
本申请实施例提供的并串转换电路,D-PHY模式下并没有额外设计电路结构,都是选用C-PHY电路结构中的部分电路,实现了CD-PHY combo的并行数据转为串行数据的电路复用。
本申请实施例还提供一种基于MIPI协议的并串转换方法,应用于如上任意一种实施例所述的基于MIPI协议的并串转换装置,如图17所示,所述方法包括:
步骤201、所述时钟产生电路根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
步骤202、所述第一数据转换电路在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
步骤203、所述第二数据转换电路根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
步骤204、所述第三数据转换电路根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
本申请实施例提供的数据处理方法,将C-PHY模式下的7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据,然后处理输出2bit并行数据,再进行并串转换处理输出串行数据。本申请实施例能够将C-PHY模式下输入的7bit并行数据转换成串行数据,从而满足了后续应用串行数据的要求。
在一种示例性实例中,所述时钟产生电路包括:第一时钟产生模块、7分频模块、第一2分频模块、第二2分频模块和第二时钟产生模块。
在一种示例性实例中,所述方法还包括:
首先,所述第一时钟产生模块以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率为所述源时钟信号2倍的时钟信号clkp,以及与所述时钟信号clkp相位相反的时钟信号clkn;
其次,所述7分频模块对来自所述第一时钟产生模块的时钟信号clkp和时钟信号clkn的频率除以7,输出时钟信号byte_clkp 1和时钟信号byte_clkn 1;
再次,所述第一2分频模块对来自所述7分频模块的时钟信号byte_clkp 1和时钟信号byte_clkn 1的频率除以2,输出时钟信号align_clkp和时钟信号align_clkn;
接下来,所述第二2分频模块对来自所述第一时钟产生模块的时钟信号clkp和时钟信号clkn的频率除以2,输出时钟信号hclkp 1和时钟信号hclkn 1;
最后,所述第二时钟产生模块对来自所述第一2分频模块的时钟信号align_clkp和时钟信号align_clkn进行处理,输出7个单脉冲时钟信号mux_ckp 1和7个单脉冲时钟信号mux_ckn 1
在一种示例性实例中,所述第一时钟信号包括:所述时钟信号byte_clkp 1、所述时钟信号align_clkp 1。
在一种示例性实例中,所述第一数据转换电路包括:7个第一数据转换子电路,7条所述第一数据传输线和7个所述第一数据转换子电路一一对应,每个所述第一数据转换子电路包括:第一触发模块、第二触发模块、第三触发模块和第四触发模块。
在一种示例性实例中,每个所述第一数据转换子电路用于根据每三个相邻信号传输周期的时钟信号byte_clkp 1对所在的第一数据传输线上的数据进行如下操作:
首先,所述第一触发模块以所述第一数据传输线上的bit数据作为输入,当所述时钟信号byte_clkp 1出现上升沿时,根据所述时钟信号byte_clkp 1的第一信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述时钟信号byte_clkp 1的第二信号传输周期输出第二数据传输周期的bit数据,根据所述时钟信号byte_clkp 1的第三信号传输周期输出第三数据传输周期的bit数据;
其次,所述第二触发模块以第一触发模块的输出作为输入,当所述时钟信号byte_clkp 1出现上升沿时,根据所述byte_clkp 1的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述byte_clkp 1的第三信号传输周期输出第二数据传输周期的bit数据;
再次,所述第三触发模块以所述第二触发模块的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据;
最后,所述第四触发模块以第一触发模块的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第二数据传输周期的bit数据。
在一种示例性实例中,所述第二数据转换电路包括:14个以序号标识的开关,14个开关包括:7组开关,每组开关包括:序号相邻的一个偶数序号开关和一个奇数序号开关,14bit并行数据对应的14条第二数据传输线中的每条第二数据传输线上各自连接一个开关,其中,14个开关中的奇数序号开关与奇数数据传输线连接,偶数序号开关与偶数数据传输线连接。
在一种示例性实例中,7个单脉冲时钟信号mux_ckp 1与7组开关一一对应,每个所述单脉冲时钟信号mux_ckp 1用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 1出现高电平时,打开该组开关,并将该组开关中偶数序号开关对应的第二数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的第二数据传输线上的bit数据通输出至所述奇数数据传输线。
在一种示例性实例中,所述第三时钟信号包括:时钟信号hclkp 1和时钟信号hclkn 1。
在一种示例性实例中,所述第三数据转换电路当所述时钟信号hclkp 1出现高电平时,输出所述偶数数据传输线上的数据,当所述时钟信号hclkn 1出现高电平时,输出所述奇数数据传输线上的数据。
在一种示例性实例中,所述并串转换电路还包括:第一数据整理电路。
在一种示例性实例中,所述方法还包括:
首先,所述时钟产生电路根据所述源时钟信号输出第四时钟信号;
其次,所述第一数据整理电路根据所述第四时钟信号对所述第一数据转换电路产生的14bit并行数据进行处理,得到经过处理的14bit并行数据;其中,所述经过处理的14bit并行数据包括:8bit并行数据,以及与所述8bit并行数据相位相差所述第四时钟信号的半个信号传输周期的6bit并行数据。
在一种示例性实例中,所述第四时钟信号包括:所述时钟信号align_clkp和所述时钟信号align_clkn。
在一种示例性实例中,所述第一数据整理电路包括:第五触发模块和第六触发模块,所述第五触发模块设置在所述14条第二数据传输线中的8条第一数据传输线上,所述第六触发模块设置在所述14条第二数据传输线中的其余6条第二数据传输线上。
在一种示例性实例中,所述方法还包括:
首先,所述第五触发模块以对应的8条第二数据传输线上的8bit并行数据作为输入,当所述时钟信号align_clkp出现上升沿时,输出所述8bit并行数据;
其次,所述第六触发模块以对应的6条第二数据传输线上的6bit并行数据作为输入,当所述时钟信号align_clkn出现上升沿时,输出所述6bit并行数据。
在一种示例性实例中,所述方法还包括:
首先,所述时钟产生电路在所述并串转换电路复用处于D-PHY模式下,根据所述源时钟信号输出第五时钟信号;
其次,所述第二数据转换电路在所述并串转换电路处于D-PHY模式的情况下,根据所述第五时钟信号对通过8条并列的第三数据传输线输入的8bit并行数据进行处理,输出2bit并行数据。
在一种示例性实例中,所述时钟产生电路还包括:第三时钟产生模块和4分频模块。
在一种示例性实例中,所述方法还包括:
首先,所述第三时钟产生模块以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率与所述源时钟信号相同的时钟信号hclkp 2,以及与所述时钟信号hclkp 2相位相反的时钟信号hclkn 2;
其次,所述4分频模块对来自所述第三时钟产生模块的时钟信号hclkp 2和时钟信号hclkn2的频率除以4,输出时钟信号byte_clkp 2和时钟信号byte_clkn 2;
其次,所述第二时钟产生模块当所述并串转换电路用于D-PHY模式时,对来自所述4分频模块的时钟信号byte_clkp 2和时钟信号byte_clkn 2进行处理,输出4个单脉冲时钟信号mux_ckp 2和4个单脉冲时钟信号mux_ckn 2。
在一种示例性实例中,所述第五时钟信号包括:4个单脉冲时钟信号mux_ckp 2。
在一种示例性实例中,所述7组开关包括:第一部分开关组和第二部分开关组,所述第一部分开关组包括:4组开关,所述第二部分开关组包括:3组开关。
在一种示例性实例中,4个单脉冲时钟信号mux_ckp 2与第一部分开关组中的4组开关一一对应,每个单脉冲时钟信号mux_ckp 2用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 2出现高电平时,打开该组开关,将该组开关中偶数序号开关对应的第三数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的数据传输线上的bit数据通输出至所述奇数数据传输线。
在一种示例性实例中,所述并串转换电路还包括:第二数据整理电路。
在一种示例性实例中,所述方法还包括:
首先,所述时钟产生电路根据所述源时钟信号产生所述第二数据整理电路所需的第六时钟信号;
其次,所述第二数据整理电路根据所述第六时钟信号对8bit并行数据进行处理,得到经过处理的8bit并行数据;其中,所述经过处理的8bit并行数据包括:第一4bit并行数据,以及与所述第一4bit并行数据相位相差所述第六时钟信号的半个信号传输周期的第二4bit并行数据。
在一种示例性实例中,所述第六时钟信号包括:时钟信号byte_clkp 2和时钟信号byte_clkn2。
在一种示例性实例中,所述第二数据整理电路包括:第七触发模块和第八触发模块,所述第七触发模块设置在所述8条第三数据传输线上的4条第三数据传输线上,所述第八触发模块设置在所述8条第三数据传输线上的其余4条第三数据传输线上。
在一种示例性实例中,所述方法还包括:
首先,所述第七触发模块以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkp 2出现上升沿时,输出所述第一4bit并行数据;
其次,所述第八触发模块以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkn 2出现上升沿时,输出所述第二4bit并行数据。
在一种示例性实例中,所述源时钟信号为四相时钟信号,其中,按照相位从前往后的顺序所述四相时钟信号中前一相位的时钟信号与后一相位的时钟信号相差90度。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (14)
1.一种基于MIPI协议的并串转换电路,其特征在于,包括:时钟产生电路、第一数据转换电路、第二数据转换电路、第三数据转换电路;
其中,所述时钟产生电路,用于根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
所述第一数据转换电路,用于在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
所述第二数据转换电路,用于根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
所述第三数据转换电路,用于根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
2.根据权利要求1所述的并串转换电路,其特征在于,所述时钟产生电路包括:第一时钟产生模块、7分频模块、第一2分频模块、第二2分频模块和第二时钟产生模块;
所述第一时钟产生模块,用于以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率为所述源时钟信号2倍的时钟信号clkp,以及与所述时钟信号clkp相位相反的时钟信号clkn;
所述7分频模块,用于对来自所述第一时钟产生模块的时钟信号clkp和时钟信号clkn的频率除以7,输出时钟信号byte_clkp 1和时钟信号byte_clkn 1;
所述第一2分频模块,用于对来自所述7分频模块的时钟信号byte_clkp 1和时钟信号byte_clkn 1的频率除以2,输出时钟信号align_clkp和时钟信号align_clkn;
所述第二2分频模块,用于对来自所述第一时钟产生模块的时钟信号clkp和时钟信号clkn的频率除以2,输出时钟信号hclkp 1和时钟信号hclkn 1;
所述第二时钟产生模块,用于对来自所述第一2分频模块的时钟信号align_clkp和时钟信号align_clkn进行处理,输出7个单脉冲时钟信号mux_ckp 1和7个单脉冲时钟信号mux_ckn1。
3.根据权利要求2所述的并串转换电路,其特征在于,所述第一时钟信号包括:所述时钟信号byte_clkp 1、所述时钟信号align_clkp 1;
所述第一数据转换电路包括:7个第一数据转换子电路,7条所述第一数据传输线和7个所述第一数据转换子电路一一对应,每个所述第一数据转换子电路包括:第一触发模块、第二触发模块、第三触发模块和第四触发模块;
每个所述第一数据转换子电路用于根据每三个相邻信号传输周期的时钟信号byte_clkp 1对所在的第一数据传输线上的数据进行如下操作:
所述第一触发模块,用于以所述第一数据传输线上的bit数据作为输入,当所述时钟信号byte_clkp 1出现上升沿时,根据所述时钟信号byte_clkp 1的第一信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述时钟信号byte_clkp 1的第二信号传输周期输出第二数据传输周期的bit数据,根据所述时钟信号byte_clkp 1的第三信号传输周期输出第三数据传输周期的bit数据;
所述第二触发模块,用于以第一触发模块的输出作为输入,当所述时钟信号byte_clkp1出现上升沿时,根据所述byte_clkp 1的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据,并根据所述byte_clkp 1的第三信号传输周期输出第二数据传输周期的bit数据;
所述第三触发模块,用于以所述第二触发模块的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第一数据传输周期的bit数据;
所述第四触发模块,用于以第一触发模块的输出作为输入,当所述时钟信号align_clkp出现上升沿时,根据所述时钟信号align_clkp的第二信号传输周期输出所述第一数据传输线上第二数据传输周期的bit数据。
4.根据权利要求3所述的并串转换电路,其特征在于,所述第二时钟信号包括:7个单脉冲时钟信号mux_ckp 1;
所述第二数据转换电路包括:14个以序号标识的开关,14个开关包括:7组开关,每组开关包括:序号相邻的一个偶数序号开关和一个奇数序号开关,14bit并行数据对应的14条第二数据传输线中的每条第二数据传输线上各自连接一个开关,其中,14个开关中的奇数序号开关与奇数数据传输线连接,偶数序号开关与偶数数据传输线连接;
7个单脉冲时钟信号mux_ckp 1和7组开关一一对应,每个所述单脉冲时钟信号mux_ckp1用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 1出现高电平时,打开该组开关,并将该组开关中偶数序号开关对应的第二数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的第二数据传输线上的bit数据通输出至所述奇数数据传输线。
5.根据权利要求4所述的并串转换电路,其特征在于,所述第三时钟信号包括:时钟信号hclkp 1和时钟信号hclkn 1;
所述第三数据转换电路,用于当所述时钟信号hclkp 1出现高电平时,输出所述偶数数据传输线上的数据,当所述时钟信号hclkn 1出现高电平时,输出所述奇数数据传输线上的数据。
6.根据权利要求4所述的并串转换电路,其特征在于,所述并串转换电路还包括:第一数据整理电路;
所述时钟产生电路,还用于根据所述源时钟信号输出第四时钟信号;
所述第一数据整理电路,用于根据所述第四时钟信号对所述第一数据转换电路产生的14bit并行数据进行处理,得到经过处理的14bit并行数据;其中,所述经过处理的14bit并行数据包括:8bit并行数据,以及与所述8bit并行数据相位相差所述第四时钟信号的半个信号传输周期的6bit并行数据。
7.根据权利要求6所述的电路,其特征在于,所述第四时钟信号包括:所述时钟信号align_clkp和所述时钟信号align_clkn;
所述第一数据整理电路包括:第五触发模块和第六触发模块,所述第五触发模块设置在所述14条第二数据传输线中的8条第二数据传输线上,所述第六触发模块设置在所述14条第二数据传输线中的其余6条第二数据传输线上;
所述第五触发模块,用于以对应的8条第二数据传输线上的8bit并行数据作为输入,当所述时钟信号align_clkp出现上升沿时,输出所述8bit并行数据;
所述第六触发模块,用于以对应的6条第二数据传输线上的6bit并行数据作为输入,当所述时钟信号align_clkn出现上升沿时,输出所述6bit并行数据。
8.根据权利要求4所述的并串转换电路,其特征在于,所述时钟产生电路,还用于在所述并串转换电路复用处于D-PHY模式下,根据所述源时钟信号输出第五时钟信号;
所述第二数据转换电路,还用于在所述并串转换电路处于D-PHY模式的情况下,根据所述第五时钟信号对通过8条并列的第三数据传输线输入的8bit并行数据进行处理,输出2bit并行数据。
9.根据权利要求8所述的并串转换电路,其特征在于,所述时钟产生电路还包括:第三时钟产生模块和4分频模块;
所述第三时钟产生模块,用于以所述源时钟信号为输入,输出与所述源时钟信号中第一相位正沿对齐,频率与所述源时钟信号相同的时钟信号hclkp 2,以及与所述时钟信号hclkp 2相位相反的时钟信号hclkn 2;
所述4分频模块,用于对来自所述第三时钟产生模块的时钟信号hclkp 2和时钟信号hclkn2的频率除以4,输出时钟信号byte_clkp 2和时钟信号byte_clkn 2;
所述第二时钟产生模块,还用于当所述并串转换电路用于D-PHY模式时,对来自所述4分频模块的时钟信号byte_clkp 2和时钟信号byte_clkn 2进行处理,输出4个单脉冲时钟信号mux_ckp 2和4个单脉冲时钟信号mux_ckn 2。
10.根据权利要求9所述的并串转换电路,其特征在于,所述第五时钟信号包括:4个单脉冲时钟信号mux_ckp 2;
所述7组开关包括:第一部分开关组和第二部分开关组,所述第一部分开关组包括:4组开关,所述第二部分开关组包括:3组开关;
4个单脉冲时钟信号mux_ckp 2与第一部分开关组中的4组开关一一对应,每个单脉冲时钟信号mux_ckp 2用于控制对应的一组开关进行如下操作:
当该组开关对应的单脉冲时钟信号mux_ckp 2出现高电平时,打开该组开关,将该组开关中偶数序号开关对应的第三数据传输线上的bit数据输出至所述偶数数据传输线,将该组开关中奇数序号开关对应的数据传输线上的bit数据通输出至所述奇数数据传输线。
11.根据权利要求9所述的并串转换电路,其特征在于,所述并串转换电路还包括:第二数据整理电路;
所述时钟产生电路,还用于根据所述源时钟信号产生所述第二数据整理电路所需的第六时钟信号;
所述第二数据整理电路,用于根据所述第六时钟信号对8bit并行数据进行处理,得到经过处理的8bit并行数据;其中,所述经过处理的8bit并行数据包括:第一4bit并行数据,以及与所述第一4bit并行数据相位相差所述第六时钟信号的半个信号传输周期的第二4bit并行数据。
12.根据权利要求11所述的电路,其特征在于,所述第六时钟信号包括:时钟信号byte_clkp 2和时钟信号byte_clkn 2;
所述第二数据整理电路包括:第七触发模块和第八触发模块,所述第七触发模块设置在所述8条第三数据传输线上的4条第三数据传输线上,所述第八触发模块设置在所述8条第三数据传输线上的其余4条第三数据传输线上;
所述第七触发模块,用于以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkp 2出现上升沿时,输出所述第一4bit并行数据;
所述第八触发模块,用于以对应的4条第三数据传输线的4bit并行数据为输入,当所述时钟信号byte_clkn 2出现上升沿时,输出所述第二4bit并行数据。
13.根据权利要求1或2或6或8或9或11所述的并串转换电路,其特征在于,所述源时钟信号为四相时钟信号,其中,按照相位从前往后的顺序所述四相时钟信号中前一相位的时钟信号与后一相位的时钟信号相差90度。
14.一种基于MIPI协议的并串转换方法,其特征在于,应用于如权利要求1-13任一项所述的并串转换电路,所述方法包括:
所述时钟产生电路根据源时钟信号输出第一时钟信号、第二时钟信号和第三时钟信号;
所述第一数据转换电路在所述并串转换电路处于C-PHY模式的情况下,根据所述第一时钟信号对通过7条并列的第一数据传输线输入的每两个相邻数据传输周期的7bit并行数据进行整合处理,输出14bit并行数据;
所述第二数据转换电路根据所述第二时钟信号对所述14bit并行数据进行处理,输出2bit并行数据;
所述第三数据转换电路根据所述第三时钟信号将所述2bit并行数据进行并串转换处理,输出串行数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311179601.9A CN117639793A (zh) | 2023-09-12 | 2023-09-12 | 一种基于mipi协议的并串转换电路及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311179601.9A CN117639793A (zh) | 2023-09-12 | 2023-09-12 | 一种基于mipi协议的并串转换电路及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117639793A true CN117639793A (zh) | 2024-03-01 |
Family
ID=90020566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311179601.9A Pending CN117639793A (zh) | 2023-09-12 | 2023-09-12 | 一种基于mipi协议的并串转换电路及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117639793A (zh) |
-
2023
- 2023-09-12 CN CN202311179601.9A patent/CN117639793A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7253754B2 (en) | Data form converter between serial and parallel | |
US7307558B1 (en) | Dual shift register data serializer | |
US7840727B2 (en) | Serial-to-parallel conversion/parallel-to-serial conversion/ FIFO unified circuit | |
EP1753143B1 (en) | Deserializer circuitry for high-speed serial data receivers on programmable logic device integrated circuits | |
JP5547569B2 (ja) | パラレルシリアル変換装置 | |
US6741193B2 (en) | Parallel in serial out circuit having flip-flop latching at multiple clock rates | |
JP2009525625A (ja) | シリアル相互接続の多数レーン用の装置及びデスキュー | |
US7307559B2 (en) | Serial-to-parallel converter circuit and parallel-to-serial converter circuit | |
CN103888147A (zh) | 一种串行转并行转换电路和转换器以及转换系统 | |
CN111404550B (zh) | 模数转换器及其时钟产生电路 | |
CN101217277B (zh) | 非整数除频器以及可产生非整数时脉信号的锁相回路 | |
EP2163998B1 (en) | Cooperation circuit | |
JP2001352318A (ja) | 送信回路とその方法、受信回路とその方法およびデータ通信装置 | |
KR100337687B1 (ko) | 직병렬컨버터 | |
JP5610540B2 (ja) | シリアル通信用インターフェース回路及びパラレルシリアル変換回路 | |
US7990293B2 (en) | Programmable deserializer | |
JP2002280908A (ja) | 並列−直列コンバータ回路及び並列−直列コンバータ方法 | |
CN117639793A (zh) | 一种基于mipi协议的并串转换电路及方法 | |
US7982639B1 (en) | Deserializer circuitry including circuitry for translating data signals between different formats or protocols | |
CN112953472B (zh) | 一种数据位数转换电路 | |
JP2007312321A (ja) | シリアル・パラレル変換用の半導体集積回路 | |
WO2002001725A1 (fr) | Emetteur optique et circuit convertisseur de code utilise dans ce dernier | |
JP4945800B2 (ja) | デマルチプレクサ回路 | |
JP3327732B2 (ja) | 並列直列変換回路 | |
CN118316458A (zh) | 一种高速10:1并串转换电路 |
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 |