具体实施方式
现在将参考示意性实施例在此说明本发明。本领域的技术人员都知道,使用本发明的讲述还可以实现许多可选实施例,并且本发明并不限于用于解释目的的实施例。
本发明的脉宽调制电路用于例如激光输出调制。图1示出了本发明的脉宽调制电路的整体结构。该脉宽调制电路包括多相位时钟生成电路2、同步位置检测电路3、数字脉冲数据信号处理电路4、多相位时钟(CLK)选择电路5,以及脉宽调制(PWM)信号生成电路6。多相位时钟生成电路2连接到参考时钟输入端1、同步位置检测电路3和多相位CLK选择电路5。同步位置检测电路3连接到数字脉冲数据信号处理电路4和多相位CLK选择电路5。数字脉冲数据信号处理电路4连接到数字脉冲数据输入端7和多相位CLK选择电路5。多相位CLK选择电路5连接到PWM信号生成电路6和输出端8。
将参考时钟通过输入端1输入到多相位时钟生成电路2。多相位时钟生成电路2根据输入参考时钟来生成多相位时钟信号,并且将信号输出到同步位置检测电路3和多相位CLK选择电路5。在本发明中,多相位时钟生成电路2通过对由锁相环电路生成的中间时钟信号进行相位插值来生成多相位时钟信号。如果分辨率为8位,则多相位时钟信号包括256(=28)个时钟相位。本实施例的多相位时钟生成电路2包括32相位输出压控振荡器(VCO)电路21和256相位输出相位插值电路22。
同步位置检测电路3接收从多相位时钟生成电路2输出的多相位时钟信号和作为参考信号的水平同步信号。同步位置检测电路3检测多相位时钟信号的哪一个时钟与水平同步信号是同步的。表示同步位置的检测结果的同步位置检测信号被输出到数字脉冲数据信号处理电路4和多相位CLK选择电路5。
数字脉冲数据信号处理电路4接收作为输入数据的数字脉冲数据和从同步位置检测电路3输出的同步位置检测信号。为了使PWM脉冲与水平同步信号同步,数字脉冲数据信号处理电路4根据同步位置检测结果将输入数字脉冲数据转换成PWM脉冲上升信息和下降信息。包含有上升信息和下降信息的信号被输出到多相位CLK选择电路5。
例如,当与256相位时钟CLKIP{255:0}中的CLKIP{200}同步输出PWM脉冲时,如果输入用于输出具有对于周期中心的周期宽度为100/256的PWM脉冲的脉冲数据,则上升信息和下降信息的计算如下:
上升信息={(256/2)-(100/2)+200}mod256=22
下降信息={(256/2)+(100/2)+200}mod256=122
在以上计算中,“mod”表示除法的余数。
这表明当CLKIP{200}至{255}到{0}至{200}构成一个周期时,生成在CLKIP{22}处上升和在CLKIP{122}处下降的PWM脉冲。本领域技术人员使用逻辑合成等很容易实施执行该处理的算术电路,在此不对其进行讲述。
多相位CLK选择电路5接收从多相位时钟生成电路2输出的多相位时钟信号、从同步位置检测电路3输出的同步位置检测信号,以及从数字脉冲数据信号处理电路4输出的包含有上升信息和下降信息的信号。多相位CLK选择电路5根据上升信息和下降信息从包含在多相位时钟信号中的信号中选择任意时钟。所选的时钟或所选的时钟信号被输入到PWM信号生成电路6。
PWM信号生成电路6从多相位CLK选择电路5接收所选的时钟信号。PWM信号生成电路6根据所选的时钟信号来生成脉宽调制信号或PWM脉冲。脉宽调制信号是用于调制例如激光输出的信号。
下面更加详细地讲述每一个电路的结构和操作。
图2示出了多相位时钟生成电路2的结构例子。本发明的多相位时钟生成电路2使用锁相环(PLL)电路和相位插值电路的组合来作为产生多相位时钟信号的装置。只使用PLL电路的振荡器来产生256相位时钟难以实现高速度操作。另一方面,只使用相位插值电路来产生256相位时钟由于制造变化会引起尺寸增大和精度下降。因此该实施例组合使用了两个电路。
多相位时钟生成电路2包括相位比较器201、电荷泵电路202、滤波器203、压控振荡器(VCO)电路204、相位插值电路205、输出缓存206和延迟电路207。
相位比较器201接收参考时钟。它对参考时钟和通过延迟电路207输入的信号的相位进行比较,并且生成相差脉冲信息。电荷泵电路202将相位比较器201中生成的相差脉冲信息转换成电流信息。
从电荷泵电路202输出的信号通过滤波器203进行过滤,然后输入到VCO电路204。VCO电路204具有根据输入信号而变化的振荡频率并且生成中间时钟信号。在该例子中,它生成32相位中间时钟信号。VCO电路204是由其中串连连接了32级差分放大器并且最后一级的输出被反相并被输入到最初一级的环形振荡器组成。串联连接的32级差分放大器的输出为32相位中间时钟信号。在日本专利No.3512676中公开了该VCO电路。
在VCO电路204中生成的中间时钟信号被输入到相位插值电路205。相位插值电路205根据中间时钟信号生成多相位时钟信号。本实施例依次生成多相位时钟信号:从32相位中间时钟信号到64相位时钟信号,然后从64相位时钟信号到128相位时钟信号,以及最后从128相位时钟信号到256相位时钟信号CLKIP{0}到CLKIP{255}。
256个相位的多相位时钟信号通过输出缓存206被输出。在多相位时钟信号中,信号CLKIP{0}在被延迟电路207延迟之后被反馈并且被输入到相位比较器201。
下面来详细讲述相位插值电路205的结构。相位插值电路205也被称为时差分割电路(time difference dividing circuit)或插值器。图3示出了相位插值电路205的整体结构。相位插值电路205的每一个单元CL11到CL39都具有图4所示的电路结构。
相位插值电路205从VCO电路204接收从VCO{0}至VCO{31}的32个相位的中间时钟信号。中间时钟信号是具有1/32相移的时钟。VCO{0}被输入到单元CL10、CL11和CL12的输入端IN1和IN2。VCO{1}被输入到单元CL12、CL13和CL14的输入端IN1和IN2。
从而32个相位VCO{0}至VCO{31}的中间时钟信号被输入到64个单元的输入端IN1和IN2。第一级中的64个单元生成64个相位的时钟信号。类似地,在第二级中输入到128个单元的64个相位的时钟信号通过相位插值被转换成128个相位的时钟信号。在第三级中输入到256个单元的128个相位的时钟信号通过相位插值被转换成256个相位的时钟信号。
因此,32个相移的三次相位插值之后,最终输出的多相位时钟信号CLKIP{0}至CLKIP{255}包括具有1/256相移的时钟。在该实施例中,三次相位插值的信号被输入到反相器INV,使得在信号下降处插值的边沿改变为信号上升。
下面参照图4来进一步详细讲述每一个单元的结构。在该实施例中,逻辑电路是由输入IN1和IN2所输入到的NAND电路NAND1、IN1所输入到的反相器INV1,以及IN2所输入到的反相器INV2组成。NAND1的输出连接到P-沟道MOS晶体管MP1的栅极。INV1的输出连接到N-沟道MOS晶体管MN1的栅极。INV2的输出连接到N-沟道MOS晶体管MN2的栅极。
P-沟道MOS晶体管MP1的源极连接到恒流源CCS1,并且漏极连接到节点A和N-沟道MOS晶体管MN1的漏极。恒流源CCS1连接到电源端并且具有电流值2I。N-沟道MOS晶体管MN1的源极连接到恒流源CCS2。N-沟道MOS晶体管MN2的漏极连接到节点A,并且源极连接到恒流源CCS3。恒流源CCS2和CCS3具有相同的电流值I,其是CCS1的电流值的一半。电容器C1连接在节点A和接地端之间。反相器INV3的输入端连接到节点A,并且输出端连接到反相器INV4的输入端。反相器INV4的输出端连接到单元的输出端OUT。
在具有这种电路结构的单元中,电流I在VCO电路204的振荡频率的范围中是可变的,从而允许在使用频率内以半个输入相差来精确插值。插值是在输入端IN1和IN2的下降沿执行的。
下面参考图5的时序图来讲述图3所示的相位插值电路205的第一级中的插值操作。图5中T1所示的脉冲从VCO{0}被输入到单元CL11的输入端IN1和IN2以及单元CL12的输入端IN1。来自VCO{0}的脉冲在时刻t1上升并且在t3下降。进而,图5中T2所示的脉冲从VCO{1}被输入到单元CL12的输入端IN2以及单元CL13的输入端IN1和IN2。来自VCO{1}的脉冲在时刻t2上升并且在t4下降。
在单元CL11的节点A中,为VCO{0}产生的边沿具有电流2I,如图5中的T3所示。在单元CL12的节点A中,当VCO{0}下降时,脉冲首先开始下降时电流为I,然后当VCO{1}下降时,电流变为2I,并且脉冲在双倾角处下降,如图5中的T4所示。在单元CL13的节点A中,为VCI{1}产生的边沿具有电流2I,如图5中的T5所示。在单元CL11的输出端中,产生和输出了其上升沿和下降沿与节点A中的边沿相对应的脉冲,如图5中的T7所示。类似地,在单元CL12的输出端中,产生和输出了其上升沿和下降沿与节点A中的边沿相对应的脉冲,如图5中的T8所示。进而,在单元CL13的输出端中,产生和输出了其上升沿和下降沿与节点A中的边沿相对应的脉冲,如图5中的T9所示。这样,从单元CL12输出的脉冲的下降沿的相位位于从单元CL11和CL13输出的脉冲的相位之间。
图6示出了从多相位时钟生成电路2输出的多相位时钟信号的波形。在由虚线所限定的一个周期内,输出具有256个不同上升沿相位的信号。由于该实施例重复进行三次相位插值,因此输出了32组信号,每一组具有下降沿相同的8个信号。
现在,参考图7来讲述同步位置检测电路的结构例子。同步位置检测电路3具有两个不同的同步判别电路,用于判别多相位时钟信号和水平同步信号的同步。每一个同步判别电路判别每一个多相位时钟信号是否与水平同步信号同步。一个同步判别电路接收经过复制延迟电路所延迟的水平同步信号。根据每一个同步判别电路的判别结果,可以通过算术处理来判断要从多相位时钟信号中选择的时钟信号。
同步位置检测电路3包括第一同步判别电路303和第二同步判别电路304。第一和第二同步判别电路303和304对输入的多相位时钟信号和水平同步信号的相位进行比较,并且选择相位最接近水平时钟信号的时钟信号或与水平同步信号同步的时钟信号。第二同步判别电路304接收经过复制延迟电路305延迟的水平同步信号BD2D。复制延迟电路305中的延迟补偿了每一个内部电路中的延迟。
第一和第二同步判别电路303和304输出用于指定所选时钟信号的后缀。在该实施例中,后缀由8位数据来表示。第一同步判别电路303输出后缀DTE,并且第二同步判别电路304输出后缀DDE。算术电路306根据第一和第二同步判别电路303和304的输出信号来判断要从多相位时钟信号中选择的时钟信号,并且将用于指定时钟信号的后缀DT输出给多相位CLK选择电路5。
下面来讲述同步位置检测电路3的整个操作。来自外部的水平同步信号BD通过输入缓存301和输入控制逻辑302被输入到第一同步判别电路303。经过输入缓存301和输入控制逻辑302延迟的水平同步信号用符号BD2表示。经过延迟的水平同步信号BD2被分开并且被输入到复制延迟电路305。然后经过复制延迟电路305延迟的水平同步信号BD2D被输入到第二同步判别电路304。
第一同步判别电路303接收多相位时钟信号CLKIP,并且从多相位时钟信号CLKIP中选择与水平同步信号BD2同步的时钟信号。然后,它将所选的时钟信号的后缀DTE输出到算术电路306。
图8示出了第一同步判别电路303的结构例子。第一同步判别电路303包括由多个(在本实施例中为256个)触发器构成的触发器组311,以及用于根据来自触发器组311的输出信号FF来生成8位信号DTE的编码器312。触发器组311的每一个触发器接收每一个多相位时钟信号CLKIP和作为时钟信号的参考信号BD2。触发器组311的输出信号FF在BD2的上升沿上改变。已经接收了相位与参考信号BD2相同或同步的多相位时钟信号CLKIP的触发器输出“H”。输出“H”的触发器的下一个触发器输出“L”。这样,“H”、“L”的位模式是由用于接收与参考信号BD2同步的时钟信号的触发器和下一个触发器的输出信号生成的。编码器312检测该位模式,判断哪个时钟信号具有与参考信号BD2同步的相位,并且将结果编码成8位数据。在该实施例中,编码器312通过检测9位或更多位的位模式来判别同步时钟信号。确切地说,它通过检测9位的模式“H、H、H、H、H、H、H、H、L”来判别同步。可选情况下,它可以通过作为9位或更多间隔位和4位或更多连续位的位模式来判别同步。这是因为,由于相位插值电路22输出具有相同下降沿的总共8个信号,因此使用8位或较少位的同步判定不能准确地判别同步,导致使电路操作异常。
第二同步判别电路304也接收多相位时钟信号CLKIP并且根据多相位时钟信号CLKIP来判别与水平同步信号BD2D同步的时钟信号。然后,第二同步判别电路304将所选的时钟信号的后缀DDE输出给算术电路306。
算术电路306根据DTE和DDE来确定要从多相位时钟信号CLKIP中选出的时钟信号。然后它将所确定的时钟信号的后缀DT输出给多相位CLK选择电路5。
下面来讲述多相位CLK选择电路5。本发明的多相位CLK选择电路5并不是如图9所示的简单选择器,而是由对低4位和高4位进行分离和解码的解码器,以及从16中选一的高速选择器组成,如图10所示。进而,多相位CLK选择电路5具有与上升信息和下降信息相对应的选择电路和用于交替处理的选择电路。因此它是由总共5个多相位时钟选择电路组成的。
本发明的多相位时钟选择电路包括:解码器DE1,8位选择数据的低4位被输入给它;以及解码器DE2,高4位被输入给它。解码器DE1将选择数据的低4位解码成16个输出。解码器DE2将选择数据的高4位解码成16个输出。因此,解码器DE1和DE2的输出信号的个数总共为32个。
256个相位的多相位时钟信号被分成每16位,并且被输入到16个选择器SEL0到SEL15中的每一个。每一个选择器SEL0到SEL15也从解码器DE1接收16位输出数据。每一个选择器SEL0到SEL15将与输入数据相对应的多相位时钟信号输出到选择器SEL16。因此,选择器SEL0到SEL15从256个多相位时钟中选择16个,并且将它们输入到选择器SEL16。
选择器SEL16接收来自选择器SEL0到SEL15的总共16个选择的时钟。同时选择器SEL16也从解码器DE2接收16位输出数据。然后,选择器SEL16根据来自解码器DE2的输出数据来从输入的16个所选时钟中选择一个。这样,从256个多相位时钟中选择出一个时钟。
图11示出了选择器SEL0到SEL15的内部电路的结构。还生成和使用了反相选择数据。所选的信号总是一个,并且未被选择的单元具有高阻抗输出,这允许对输出进行打包,以实现高速操作。进而,整个多相位时钟选择器将被选择数据分成每4位,并且使选择器SEL0到SEL15和选择器SEL16具有2级结构,以实现高速操作。
图12示出了选择器单元的详细电路结构。输入端IN连接到P-沟道MOS晶体管MP10的栅极和N-沟道MOS晶体管MN10的栅极。P-沟道MOS晶体管MP10的源极连接到电源端。N-沟道MOS晶体管MN10的源极连接到接地端。P-沟道MOS晶体管MP10的漏极连接到P-沟道MOS晶体管MP11的源极。P-沟道MOS晶体管MP11的栅极接收经过反相器INV20反相的A的反相信号。N-沟道MOS晶体管MN10的漏极连接到其栅极接收信号A的N-沟道MOS晶体管MN11的源极。P-沟道MOS晶体管MP11的漏极和N-沟道MOS晶体管MN11的漏极连接到输出端OUT。因此,信号A和经过反相器INV20反相的A的反相信号用作开关,以选择将输入到输入端IN的信号输出到输出端OUT还是将输出端OUT的输出变成高阻抗。
如图13所示,为了执行交替操作,本实施例的脉宽调制电路包括与图10所示的多相位CLK选择电路51类似的总共5个多相位时钟选择电路。
多相位CLK选择电路51接收256个多相位时钟信号和用于交替的8位脉冲数据。它根据用于交替的脉冲数据来从256个多相位时钟信号中选择和输出用于交替的一个时钟信号。
多相位CLK选择电路52接收256个多相位时钟信号和用于Rise1的8位脉冲数据。它根据用于Rise1的脉冲数据来从256个多相位时钟信号中选择和输出一个用于Rise1的时钟信号。Rise1表示被分成用于交替处理的两组信号时钟中的一组的上升。Fall 1表示与Rise1相同的组别的下降。类似地,Rise2表示另一组的上升,并且Fall2表示与Rise2相同的组别的下降。
多相位CLK选择电路53接收256个多相位时钟信号和用于Fall1的8位脉冲数据。它根据用于Fall1的脉冲数据来从256个多相位时钟信号中选择和输出一个用于Fall1的时钟信号。
多相位CLK选择电路54接收256个多相位时钟信号和用于Rise2的8位脉冲数据。它根据用于Rise2的脉冲数据来从256个多相位时钟信号中选择和输出一个用于Rise2的时钟信号。
多相位CLK选择电路55接收256个多相位时钟信号和用于Fall2的8位脉冲数据。它根据用于Fall2的脉冲数据来从256个多相位时钟信号中选择和输出一个用于Fall2的时钟信号。
下面来详细讲述PWM信号生成电路6。PWM信号生成电路6根据由多相位时钟选择电路选择的时钟来生成PWM脉冲。基本上,它可以通过具有触发器F/F和XOR电路的简单逻辑电路来实施。
PWM信号生成电路6具有的电路结构例如图14中所示。图15为PWM信号生成电路6中的时序图。PWM信号生成电路6包括6个双稳触发器TFR1、TFF1、TIL1、TFR2、TFF2和TIL2,4个异或电路EXOR1、EXOR2、EXOR3和EXOR4,以及AND-OR复合门电路。AND-OR复合门电路根据图16所示的真值表来操作。
双稳触发器TFR1接收从多相位CLK选择电路5输出的用于Rise1的时钟信号(图15中的T1)。将双稳触发器TFR1的输出信号R1输入到异或电路EXOR1。双稳触发器TFF1接收从多相位CLK选择电路5输出的用于Fall1的时钟信号(图15中的T2),并且它的输出信号F1被输入到异或电路EXOR1。双稳触发器TIL1接收从多相位CLK选择电路5输出的用于交替的时钟信号(图15中的T7),并且它的输出信号I1被输入到异或电路EXOR2。异或电路EXOR2的另一输入接收L电平信号。双稳触发器TFR2接收从多相位CLK选择电路5输出的用于Rise2的时钟信号(图15中的T4),并且它的输出信号R2被输入到异或电路EXOR3。双稳触发器TFF2接收从多相位CLK选择电路5输出的用于Fall2的时钟信号(图15中的T5),并且它的输出信号F2被输入到异或电路EXOR3。双稳触发器TIL2接收从多相位CLK选择电路5输出的用于交替的时钟信号(图15中的T7),并且它的输出信号I2被输入到异或电路EXOR4。异或电路EXOR4的另一输入接收L电平信号。
将异或电路EXOR1的输出信号P1(图15中的T3)、异或电路EXOR2的输出信号S1(图15中的T8)、异或电路EXOR3的输出信号P2(图15中的T6)和异或电路EXOR4的输出信号S2(图15中的T9)输入到AND-OR复合门电路。AND-OR复合门电路生成和输出PWM脉冲信号(图15中的T10)。
下面参考图17的流程图来讲述本实施例的脉宽调制电路的整个操作。
当输入参考时钟(图17中的T1)时,多相位时钟生成电路2根据所输入的参考时钟来生成256相位多相位时钟信号。确切地说,在多相位时钟生成电路2中,VCO电路21生成32相位时钟信号(图17中的T2)并且将它们输入到相位插值电路22。相位插值电路22根据32相位时钟信号执行插值操作,并且生成256相位多相位时钟信号(图17中的T3)。然后将在多相位时钟生成电路2中生成的多相位时钟信号输入到同步位置检测电路3和多相位CLK选择电路5。
数字脉冲数据信号处理电路4接收作为输入数据的数字脉冲数据(图17中的T4)和从同步位置检测电路3输出的同步位置检测信号。为了使水平同步信号和PWM脉冲同步,数字脉冲数据信号处理电路4根据同步位置检测结果将所输入的数字脉冲数据转换成PWM脉冲上升信息和下降信息。然后将包含有上升信息和下降信息的信号输入到多相位CLK选择电路5。在该实施例中,输出如图17中的T5所示的两组信号,以执行交替。
多相位CLK选择电路5接收从多相位时钟生成电路2输出的多相位时钟信号、从同步位置检测电路3输出的同步位置检测信号,以及从数字脉冲数据信号处理电路4输出的包含有上升信息和下降信息的信号。多相位CLK选择电路5根据上升信息和下降信息从包含在多相位时钟信号中的信号中选择任意时钟信号。所选的时钟信号包括用于交替(IL)切换的时钟信号、用于表示第一组的上升的Rise1的时钟信号、用于表示第一组的下降的Fall1的时钟信号、用于表示第二组的上升的Rise2的时钟信号,以及用于表示第二组的下降的Fall2的时钟信号,如图17中的T6所示。将所选的时钟信号输入到PWM信号生成电路6。
PWM信号生成电路6接收从多相位CLK选择电路5选择的时钟信号。PWM信号生成电路6根据所选的时钟信号来生成脉宽调制信号或PWM脉冲(图17中的T7)。
该脉宽调制电路能够以高速度和高精度来生成具有与任意数据相对应的脉宽的信号。
显然,本发明并不限于上述实施例,在不偏离本发明的范围和精神的情况下,可以对其进行修改和改变。