著录项信息
专利名称 | 触摸屏控制器数据预处理排序电路及方法 |
申请号 | CN200710307137.1 | 申请日期 | 2007-12-27 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2009-07-01 | 公开/公告号 | CN101470553 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F3/041 | IPC分类号 | G;0;6;F;3;/;0;4;1查看分类表>
|
申请人 | 比亚迪股份有限公司 | 申请人地址 | 广东省深圳市大鹏新区葵涌街道延安路1号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 比亚迪半导体股份有限公司 | 当前权利人 | 比亚迪半导体股份有限公司 |
发明人 | 孔静;杨云;冯卫;刘桂云;纪传瑞 |
代理机构 | 深圳鼎合诚知识产权代理有限公司 | 代理人 | 陈俊斌 |
摘要
本发明涉及数据预处理排序电路领域,其提供一种触摸屏控制器数据预处理排序电路,包括一时钟发生模块、一寄存器模块和数据比较模块组;所述时钟发生模块产生所需要的时钟信号;寄存器模块用于临时存储输入的数据,并向数据比较模块组输入需排序处理的数据;所述数据比较模块组对所接收的数据进行排序处理并输出经排序后的数据。本发明克服了普通排序电路占用面积较大的缺点,仅使用D触发器、二选一数据选择器、数据比较器、与门即可完成数据比较排序的工作,从而大大减小控制器的面积,节约了成本。
1.一种触摸屏控制器数据预处理排序电路,包括一时钟发生模块、一寄存器模块和数据比较模块组;所述时钟发生模块产生所需要的时钟信号;寄存器模块用于临时存储输入的数据,并向数据比较模块组输入需排序处理的数据;所述数据比较模块组对所接收的数据进行排序处理及输出经排序后的数据;
所述数据比较模块组由至少一个数据比较模块组成,且数据比较模块的数量对应需进行排序处理的N个数据,所述数据比较模块包括与门、D触发器、比较器和数据选择器;所述与门输出所述D触发器所需的时钟信号;所述数据选择器为二选一数据选择器;
所述时钟发生模块向寄存器模块和数据比较模块组输出复位时钟信号,向所述与门输出移位时钟信号;寄存器模块的输出端连接D触发器、比较器和数据选择器的输入端;比较器的输出端连接与门的输入端和数据选择器的控制端;D触发器的输出端连接数据选择器的另一输入端和比较器的另一输入端;复位时钟信号端分别与D触发器和比较器的复位信号端连接,向D触发器和比较器输入复位信号;
所述时钟发生模块的比较时钟端连接所述比较器的时钟信号端;所述寄存器模块和所述时钟发生模块的输入端均连接时钟信号。
2.根据权利要求1所述的数据预处理排序电路,其特征在于,所述时钟发生模块包括时钟发生器,所述寄存器模块包括寄存器,所述寄存器是D触发器。
3.根据权利要求1所述的数据预处理排序电路,其特征在于,所述与门为二输入端与门,所述数据选择器为二选一数据选择器。
4.一种触摸屏控制器数据预处理排序的方法,用于触摸屏控制器的数据预处理排序电路,该数据预处理排序电路包括时钟发生模块、寄存器模块和数据比较模块组,数据比较模块组包括至少一个数据比较模块,且数据比较模块的数量对应需进行排序处理的N个数据,该方法还包括步骤:
根据时钟发生模块输入的时钟信号,所述寄存器模块将经过模数转换的数据在时钟信号的上升沿或下降沿输出给每个数据比较模块;
数据比较模块在时钟发生模块的比较时钟的上升沿或下降沿到来时,将寄存器模块输入的数据与数据比较模块中原有存储的数据进行比较;
根据比较结果判断所述寄存器模块输入的数据存在数据比较模块组中的具体位置;
所述数据比较模块包括与门、D触发器、比较器和二输入端数据选择器;
所述与门输出所述D触发器所需的时钟信号;所述数据选择器为二选一数据选择器;
所述时钟发生模块向寄存器模块和数据比较模块组输出复位时钟信号,向所述与门输出移位时钟信号;寄存器模块的输出端连接D触发器、比较器和数据选择器的输入端;比较器的输出端连接与门的输入端和数据选择器的控制端;D触发器的输出端连接数据选择器的另一输入端和比较器的另一输入端;复位时钟信号端分别与D触发器和比较器的复位信号端连接,向D触发器和比较器输入复位信号。
5.根据权利要求4所述的触摸屏控制器数据预处理排序的方法,其特征在于,所述根据比较结果判断所述寄存器模块输入的数据存在数据比较模块组中的具体位置是指:
如果寄存器模块输出的数据大于或等于所述数据比较模块中数据,则寄存器模块输出的数据存放在该数据比较模块组的下一个数据比较模块;
如果寄存器模块输出的数据小于所述数据比较模块中的数据,则寄存器模块输出的数据存放在该数据比较模块组的上一个数据比较模块。
6.根据权利要求4所述的触摸屏控制器数据预处理排序的方法,其特征在于,所述根据比较结果判断所述寄存器模块输入的数据存在数据比较模块组中的具体位置是指:
如果寄存器模块输出的数据大于或等于所述数据比较模块中数据,则寄存器模块输出的数据存放在该数据比较模块组的上一个数据比较模块;
如果寄存器模块输出的数据小于所述数据比较模块中的数据,则寄存器模块输出的数据存放在该数据比较模块组的下一个数据比较模块。
触摸屏控制器数据预处理排序电路及方法\n技术领域\n[0001] 本发明涉及数据预处理排序电路,更具体地,特别涉及一种触摸屏控制器数据预处理排序电路及方法。\n背景技术\n[0002] 触摸屏已越来越经常地应用于各种电子产品中,为人们的生活、工作和学习提供了方便。其中,触摸屏控制器是触摸屏不可分割的重要组成部分,其性能的优异直接影响触摸屏的整体性能。\n[0003] 目前,在触摸屏控制器中,从ADC模拟数字转换器转换后的数据,有些没有进行数据预处理,而直接输送到外部控制芯片做处理,容易使芯片检测到误触摸而产生误操作;为防止误操作,有些进行了数据预处理,首先对经过多次转换后的数据进行排序,然后取平均或中值后再送给外部控制芯片,该数据排序处理方法一般是经ADC转换完成的多个数据基于软件数据结构中的单链表进行排序。实现该方法的电路一般采用数据比较器、16选1的多路选择器、2选1的多路选择器、极值指针寄存器、译码器等,其电路面积较大。如申请号为200510135024.9的中国发明专利申请,公开了“一种实现数据排序的硬件电路及方法”,这种数据排序电路结构复杂,应用在触摸屏控制器的数据预处理排序电路中,使得触摸屏控制器芯片的面积会大大增加,从而增加成本。\n发明内容\n[0004] 本发明的目的在于提供一种触摸屏控制器数据预处理排序电路及方法,以减少控制器芯片的面积,节约控制器的生产成本。\n[0005] 本发明提供的触摸屏控制器数据预处理排序电路,包括一时钟发生模块、一寄存器模块和数据比较模块组;所述时钟发生模块产生所需要的时钟信号;寄存器模块用于临时存储输入的数据,并向数据比较模块组输入需排序处理的数据;所述数据比较模块组对所接收的数据进行排序处理及输出经排序后的数据。\n[0006] 优选地,所述数据比较模块组由至少一个数据比较模块组成,所述数据比较模块包括与门、D触发器、比较器和数据选择器。\n[0007] 所述时钟发生模块向寄存器模块和数据比较模块组输出复位时钟信号,向所述与门输出移位时钟信号;寄存器模块的输出端连接D触发器、比较器和数据选择器的输入端;\n比较器的输出端连接与门的输入端和数据选择器的控制端;D触发器的输出端连接数据选择器和比较器的另一输入端;RESET信号端分别与D触发器和比较器复位信号端连接,向D触发器和比较器输入复位信号。\n[0008] 本发明提供的对触摸屏控制器数据进行预处理的方法,包括步骤:\n[0009] 根据时钟发生模块的时钟信号,所述寄存器模块将经过模数转换的数据在时钟信号的上升沿或下降沿输出给数据比较模块;\n[0010] 数据比较模块在时钟发生模块的比较时钟的上升沿或下降沿到来时,将寄存器模块输入的数据与数据比较模块中原有存储的数据进行比较;\n[0011] 根据比较结果判断所述寄存器模块输入的数据存在数据比较模块组中的具体位置。\n[0012] 本发明克服了普通排序电路占用面积太大的缺点,仅使用D触发器、二选一数据选择器、数据比较器和与门即可完成数据比较排序的工作。从电路结构来讲,本发明节省了\n16选1的多路选择器和极值指针寄存器,因此与现有技术相比,可大大减小面积,从而节约成本。\n附图说明\n[0013] 图1是本发明实施例的结构原理框图;\n[0014] 图2是本发明实施例数据比较模块结构原理框图;\n[0015] 图3是本发明实施例时钟发生模块产生的时序图;\n[0016] 图4是本发明实施例具体应用的结构原理框图。\n[0017] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。\n具体实施方式\n[0018] 如图1所示,本发明实施例的数据预处理排序电路的基本原理是是对所需要的N个数据进行排序;该排序电路还可连接取中值或均值模块进行取中间值或平均值操作。其电路结构主要包括一时钟发生模块、一寄存器模块和数据比较模块组;所述时钟发生模块产生比较和移位时所需的比较时钟和移位时钟;寄存器模块用于临时存储输入的数据如经ADC转换(模数转换)输出的数据,并向数据比较模块组输入需排序处理的数据;所述数据比较模块组接收寄存器模块输出的数据,并对所接收的数据进行排序处理并输出经排序后的数据。\n[0019] 结合图2所示,所述时钟发生模块包括时钟发生器,所述时钟发生器产生比较、移位时所需用到的比较时钟(CLK_COMP)和移位时钟(CLK_SHIFT),以减少所需的外部时钟数;其中,时钟发生模块的输入RESET时钟由外部时钟输入,输出RESET时钟则由所述时钟发生模块产生并输出。其时钟的时序如图3所示。\n[0020] 所述寄存器模块包括寄存器,本实施例中,所述寄存器采用D触发器,作为临时寄存器。\n[0021] 所述数据比较模块组由至少一个数据比较模块组成,其数量对应需进行排序处理的N个数据,每个数据比较模块包括一与门、一D触发器、一比较器和一数据选择器E;其中所述与门为二输入端与门,数据选择器为二选一数据选择器。\n[0022] 所述时钟发生器分别与寄存器和数据比较模块组连接,向寄存器和数据比较模块组输入复位时钟信号;该时钟发生器还与二输入端与门的一个输入端口连接,向所述二输入端与门输入移位时钟信号。所述寄存器的输出端分别连接数据比较模块组中的D触发器、比较器和二选一数据选择器的输入端;所述比较器的输出端连接所述二输入端与门的输入端口和二选一数据选择器的控制端口,所述D触发器的输出端分别连接二选一数据选择器和比较器的另一输入端口;RESET信号端分别与D触发器和比较器复位信号端连接,向D触发器和比较器输入复位信号;所述二输入端与门输出所述D触发器所需的时钟信号,所述时钟发生器的比较时钟(CLK_COMP)端连接比较器的时钟信号端,其输出比较时钟(CLK_COMP)信号作作为比较器的时钟信号。\n[0023] 如本领域技术人员所知,所述D触发器的D端为数据输入端口,RESET为复位信号,CLK为时钟,Q为输出端口;在RESET为低电平时触发器正常工作,为高电平时复位,如果希望排序好了的数据在数据比较模块组(0、1...N-1)中以从小到大的顺序输出时,D触发器复位为最大值,否则全部复位为其最小值。在RESET信号为低电平时,在每个时钟CLK沿(上升沿和下降沿均可)到来时,端口Q的输出为D。\n[0024] 所述比较器的i0和i1为两个输入端口,RESET为复位信号,CLK为时钟,Q为输出端口。RESET为低电平时触发器正常工作,为高电平时复位,将Q复位为1;RESET为低电平时,如果希望排序好了的数据在数据比较模块组(0、1...N-1)中以从小到大的顺序输出时,在时钟CLK沿(上升沿和下降沿均可)到来时,如果i1大于i0,则Q输出为1,否则输出为0。如果希望排序好了的数据在数据比较模块组(0、1...N-1)中以从大到小的顺序输出时,在时钟CLK沿(上升沿和下降沿均可)到来时,如果i1小于i0,则Q输出为1,否则输出为0。\n[0025] 所述二选一数据选择器的i0和i1为两个输入端口,S为选择控制端口,Q为输出端口。若S为1时则Q输出为i1,否则Q输出为0。\n[0026] 经ADC转换完成后的数据根据时钟信号的时序在时钟(CLK)的上升沿或下降沿到来时由寄存器输出给D触发器组,并在比较时钟(CLK_COMP)的上升沿或下降沿到来时与D触发器组中的数据进行比较,根据比较结果判断寄存器中的数据放在数据比较模块中的具体位置。\n[0027] 如果寄存器输出的数据大于或等于某一D触发器中的数据时,比较器输出Q为0,当Q和移位时钟(CLK_SHIFT)通过二输入端与门的输出电平全为低电平时,移位时钟(CLK_SHIFT)不起作用,同时二选一数据选择器选择该寄存器输出的数据存放在D触发器组中下一个D触发器中。\n[0028] 若寄存器输出的数据小于某一D触发器中的数据时,比较器输出Q为1,当Q和移位时钟(CLK_SHIFT)通过二输入端与门的输出电平为CLK_SHIFT时,移位时钟(CLK_SHIFT)起作用,并在其时钟的上升沿或下降沿到来时,将寄存器输出的数据存储至D触发器组中的上一个D触发器中;同时二选一数据选择器选择该D触发器中的数据,如此则将ADC转换完成的数据按从小到大的顺序放在其所在的位置。\n[0029] 而如需要将ADC转换完成的数据按从大到小的顺序放在其所在的位置,则根据比较结果判断寄存器中的数据存在位置如下:\n[0030] 如果寄存器输出的数据大于或等于某一D触发器中的数据时,则二选一数据比较器选择该寄存器输出的数据存入在D触发器组中上一个D触发器中。\n[0031] 如果寄存器输出的数据小于某一D触发器中的数据时,则二选一数据比较器选择该寄存器输出的数据存入在D触发器组中下一个D触发器中。\n[0032] 根据以上工作原理,当每个时钟沿到来时,都会将ADC转换完成的数据经寄存器输出,然后再经过比较时钟(CLK_COMP)和移位时钟(CLK_SHIFT)移位至具体确定的某个数据比较模块中。在经过N个时钟周期后即完成了对此N个数据的排序工作,使D触发器中存储的N个数据由小到大完成排序。\n[0033] 结合图4所示,下面以对16个无符号数据进行由小到大的排序为例,详细说明本发明实施例所述的电路,而对数据进行由大到小排序的原理和由小到大排序的原理类同。\n[0034] RESET为1时将寄存器复位为最大值,将D触发器组复位为最大值(若是由大到小排序则复位为最小值),将比较器复位为1;RESET为0时正常工作。\n[0035] 经过ADC转换完成的数据在第一个时钟(CLK)的上升沿或下降沿到来时经寄存器输出,并在比较时钟(CLK_COMP)的上升沿或下降沿到来时与第1个D触发器中的数据进行比较,根据比较结果判断寄存器中的数据放在数据比较模块中的具体位置。\n[0036] 如果寄存器输出的数据大于或等于第1个D触发器组的数据时,比较器输出Q为\n0,当Q和移位时钟(CLK_SHIFT)通过二输入端与门的输出全为低电平时,移位时钟(CLK_SHIFT)不起作用;同时二选一数据选择器选择该寄存器输出的数据存放在D触发器组中下一个D触发器中。\n[0037] 如果寄存器输出的数据小于第1个D触发器组中的数据时,比较器输出Q为1,当Q和移位时钟(CLK_SHIFT)通过与门的输出为CLK_SHIFT,移位时钟(CLK_SHIFT)起作用,在此时钟的上升沿或下降沿到来时将寄存器中的数据存储至第1个D触发器中,同时二选一数据选择器选择第1个D触发器中的数据,如此将ADC转换完成后的第一个数据存储在其所在的位置中。\n[0038] 根据以上原理,ADC转换完成后的第二个数据根据时钟的时序与第2个D触发器中的数据排序完成并存储在数据比较模块中。根据时钟信号进入一个数据便排序一次,假设已经到了第四个时钟CLK沿到来之前,前三个进入的数据已经按从小到大的顺序排序完成。在第四个时钟CLK沿到来时,新来的数据由寄存器进入,在比较时钟(CLK_COMP)沿到来时,新来的数据与16个D触发器C(0、1...15)分别进行比较,16个比较器D(0、1...15)输出比较结果,由于前三个数据已经按从小到大的顺序排列在第0至2个D触发器(0、1、2)中,如果第四个数据比第二个数据大比第三个数据小,则第1比较器D-0的Q端、第2比较器D-1的Q端输出均为0;第2比较器D-2的Q端至第15比较器D-15的Q端输出均为1;\n第2个至第14个D触发器(2、3...14)便依次向下移位至第3个至第15个D触发器(3、\n4...15)中,同时新进入的数据存储在了第2个D触发器(2)中,至此四个数据从小到大排列在了第0个至第3个D触发器(0、1、2、3)中。经过16个CLK时钟,在每个时钟的上升沿或下降沿到来时都会将ADC转换完成的数据经寄存器输出,然后再经过比较时钟(CLK_COMP)和移位时钟(CLK_SHIFT)移位至具体确定的某个数据比较模块中,使数据比较模块中存储了上述由小到大排序完成的数据。\n[0039] 以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
法律信息
- 2020-01-21
专利权的转移
登记生效日: 2020.01.03
专利权人由比亚迪股份有限公司变更为深圳比亚迪微电子有限公司
地址由518119 广东省深圳市龙岗区葵涌延安路变更为518119 广东省深圳市大鹏新区葵涌街道延安路1号
- 2011-11-16
- 2009-12-30
专利实施许可合同的备案
专利实施许可合同的备案合同备案号: 2008440000068让与人: 比亚迪股份有限公司受让人: 深圳比亚迪微电子有限公司发明名称: 触摸屏控制器数据预处理排序电路及方法申请日: 2007.12.27许可种类: 普通许可备案日期: 2008.5.4合同履行期限: 2008.4.25至2015.8.16合同变更
- 2009-12-16
- 2009-07-01
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2002-11-20
|
2001-12-28
| | |
2
| |
2007-06-27
|
2005-12-23
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |