多通道波形显示方法

文档序号:2617018阅读:546来源:国知局
专利名称:多通道波形显示方法
技术领域
本发明涉及图像通信领域的显示技术,尤其涉及嵌入式系统中多个通道波形显示的方法。
背景技术
医用监护仪是一种典型的需要支持多通道波形显示的嵌入式系统设备,系统通过传感器和检测电路测量人体的ECG(心电)、SPO2(血氧饱和度)、NIBP(无创血压)等生理信号,将得到的生理参数值经过计算处理后,以波形方式记录下来并在显示终端,比如CRT(阴极射线管)和LCD(液晶显示屏),上实时显示。通常监护仪的显示终端都要求支持高分辨率(640×480以上)彩色显示,并使用特定风格的显示界面,一般如,在黑色的背景下用多种颜色显示各种生理参数的数值、波形以及菜单、报警和帮助等文字信息,其中波形要能以刷新、滚动或并列双道等方式来动态显示。所述刷新是指从左至右逐点更新显示波形,当更新到波形的最右端时自动返回最左端继续刷新。滚动是指整道波形随着时间从右向左移动,旧的波形从显示区域左端移出,新的波形从显示区域右端移入。并列双道是指在同一水平区域同时有左右两道波形(各占据左右屏)以刷新或滚动的方式并列显示。
在显示技术中,系统一般采用显存来存储显示屏上的点阵信息,从而提高CPU(中央处理器)和主存储器的利用率。其原理是,将显示终端映射到一个二维数组,显示终端上的每一个象素映射到这个二维数组的一个单元,这个单元的值是它对应象素的颜色代码,象素的纵坐标和横坐标就是二维数组的两个下标。即显示终端上坐标为(x,y)的象素映射到二维数组的单元A(x,y)。将显存作为存储所述二维数组的物理器件,这样CPU往显存写入一个数据,即相当于在显示设备上画出了一个点,显示驱动电路会自动地读取显存内的显示数据并将其在显示设备正确位置上显示出来。
所述监护仪和大多数嵌入式系统一样,常采用两类方法来驱动显示设备。一类方法是使用通用显示控制芯片,按照一般的图形显示方法来显示各种字符信息和波形。也就是由主CPU计算所有的显示数据(包括字符和波形),将其写入显存;由通用显示控制芯片控制读取显存中的显示数据,送往显示设备画出相应的字符和波形。用该方法滚动显示波形时,CPU必须清除掉整道显示波形,把经过更新的波形数据全部重新写入显存,才能实现波形的移动,使得CPU的负荷非常大。当要同时显示多道波形,系统必然要大大增加软件开销,以致会影响整体性能。所以该方法尽管成本高昂,效率并不高。
另一类方法是使用FPGA(现场可编程门阵列)来实现专门的显示驱动电路。这种方法用硬件加速实现特定显示模式(如信号波形的滚动),可以大大减轻CPU的负荷。采用这种方法的系统成本较低,效率却更高。其原理是当位于y1<y<y2的水平区域内的波形需要滚动时,改变该区域的显存映射规则,将显存中的A((x+xo)mod X,y)映射到显示终端的(x,y)。其中xo是一个偏移量,X是显示终端横向的像素数,该映射的结果是将所述区域内的显示波形水平左移xo个点,其中被移出显示区(即左移到横坐标为负数的点)的波形绕回显示区的右边。这样,系统只要按一定的速率改变xo的值,就可以不用全部刷新二维数组而实现波形的滚动。为了下文叙述的方便,我们把该FPGA内部用来实现显示的电路称为显示逻辑。
按该方法,在一个y1<y<y2的区域内实现双道波形半屏显示,需要二个偏移量xo,分别对应每一道滚动波形。当这两道波形在左右屏水平排列时,显示逻辑还需要对各道波形的显示区域进行判断,根据不同的区域使用不同的偏移量。在以后的叙述中,我们把根据不同区域使用不同参数的行为称为波形参数的切换。
上述现有技术的缺点有两方面一方面是波形道数的增加,将直接导致显示芯片需要更多的逻辑资源。以1024×768分辨率为例,使用并列双道技术,左、右波形的偏移量lxo和rxo各需要10位,表示显示区域下边界的y2也需要10位,这样每两道波形需要FPGA中30个单元的寄存器来存储波形参数。假如要在每个水平区域内显示更多的波形,则波形道数越多,需要的寄存器量越大。另一方面,波形道数的增加将导致显示芯片性能的下降。因为系统通常需要以更高的显示分辨率来配合波形道数的增加,这意味着要提高显示芯片的最高工作频率。而按照这种设计方法,在FPGA内部需要使用MUX(多路开关)来实现波形参数的切换,当MUX的输入端数量较大时,其切换时延将非常大,从而降低显示芯片的最高工作频率。所以,现有方案一般难以支持7道以上波形的滚动显示。同时,所述现有技术也没有针对多道波形在同一区域内并行显示提供解决方案。

发明内容
本发明要解决的技术问题是针对嵌入式系统,提出一种高效率、低成本实现多个通道波形同时在显示设备上动态显示的方法,解决波形道数的增加与由此而来的逻辑资源大量增加和显示芯片性能下降之间的矛盾,进而使系统有很好的可扩展性。
为解决上述技术问题,本发明的基本构思为在FPGA或ASIC(专用集成电路)实现显示控制电路的系统中,将变化的波形和相对较少变化的文字、界面信息分开处理,由此提高显示效率;所述包括多道变化波形的波形屏信息还可以进一步被分解成多个波形屏进行处理,从而允许多道波形在显示终端的同一区域并行地动态显示;为了使同一波形屏内不同水平区域的多道变化波形,及同一水平区域的不同窗口内的多道变化波形能各自独立地以不同的速率刷新或滚动显示,系统为该波形屏在存储器中建立一个参数表来定义每一道波形的显示模式、窗口边界等参数,使每一道波形可以具有不同的边界和刷新、滚动的速度,从而增加波形布局的灵活性。而且,利用所述存储器参数表来实现的波形参数切换,比用MUX能大大降低切换时延,从而可以高效率、低成本实现多道波形动态显示,还方便于系统扩展。
作为实现本发明构思的第一个技术方案是,提供一种多通道波形显示方法,用于嵌入式系统文字信息和多道波形的同时显示,步骤是,a.在显存内分配多个独立的空间,分别映射同一显示终端;所述空间有一个用来存放字符信息数据,称作为字符屏;所述空间还至少有一个用来存放波形数据,称作为波形屏;CPU对显存的写操作相应分为对字符屏和若干波形屏的写操作;b.显示驱动电路将从显存中读出的各个字符屏和波形屏数据分别送往各自相应的字符屏通道和波形屏通道处理;c.将所述各个字符屏通道和波形屏通道处理输出的多路数据合成,送往显示终端。
上述方案中,可以在各波形屏通道对多道波形进行使各道波形以不同模式显示的处理。所述字符屏通道和波形屏通道处理输出的数据的合成,或是字符信息数据覆盖波形数据,或是波形数据覆盖字符信息数据。所述多个波形屏中映射在显示终端同一区域并行显示的各波形数据所包含的颜色信息各不相同。
采用上述技术方案,可以提高系统处理多波形显示的效率,具有很好的可扩展性。
作为实现本发明构思的第二个技术方案是,提供一种多通道波形显示方法,用于嵌入式系统多道波形的同时显示,步骤是,a.把映射显示终端的显存波形屏分割为垂直方向排列的若干波形窗口,所述每个窗口分别显示一道或水平并列显示多道波形;所述各窗口的边界由至少一组边界寄存器设定的值限定;b.系统在存储器内建立波形参数表,包括每一所述波形窗口内各道波形的特性参数,所述特性参数至少包括该道波形的显示模式;c.CPU通过写显存操作,把波形数据写入显存波形屏中该道波形显示区域对应的逻辑空间;d.显示驱动电路把从显存中读出的每一所述波形窗口的数据送往显示终端之前,根据波形参数表中的该波形窗口的参数,通过改变显存与显示终端的映射关系来实现参数所限定的显示模式。
上述方案中,所述边界寄存器的设定内容,或者为所有的波形窗口设置共同的边界,或者对每个波形窗口单独进行划分并设置其边界;波形的特性参数包括波形窗口的至少一个垂直边界。所述边界寄存器的设定内容,还设置所述窗口水平并列显示多道波形时,各波形显示的水平区域段。波形的特性参数还包括该波形显示的水平起始位置xo。
采用上述技术方案,因为波形参数表不占用FPGA内的寄存器资源,可以解决波形道数的增加与逻辑资源大量增加、显示芯片性能下降之间的矛盾,进而使系统在多通道波形显示上有很好的可扩展性和效率。


图1是本发明装置工作的原理框2是刷新模式下显存中波形数据读取次序示意3是滚动模式下显存中波形数据读取次序示意4是并列双道模式下显存中波形数据读取次序示意5是各波形在显示终端上的实际显示效果6是存储器结构示意图具体实施方式

下面,结合附图所示之最佳实施例进一步阐述本发明。
为了提高系统处理多波形显示的效率,针对嵌入式系统通常还要显示菜单、报警和帮助等文字信息的特点,本发明设计显示驱动电路的基本结构如图1所示。因为波形的动态显示和文字信息的相对静止的要求不同,可以把物理上在同一显示终端上显示的字符信息和波形定义为逻辑上分离的字符屏和波形屏,即在显存内分配不同的独立空间分别存放字符数据和波形数据,CPU对显存的写操作相应分成对字符屏和波形屏的写操作;这样便于系统将两者按照不同方法处理,显示驱动电路可以将从显存中读出的字符屏和波形屏数据分别送往相应的字符屏通道和波形屏通道处理;然后将所述字符屏通道和波形屏通道处理输出的两路数据合成,在显示时序控制逻辑的作用下送往显示终端。根据现有技术,显示逻辑将针对不同的显示终端输出相应的显示同步信号,把所合成的最终显示数据显示出来,不再赘叙。
以1024×768显示分辨率的系统为例,可以定义两个1024×768字节的二维数组分别存放字符屏数据(数组C)和波形屏数据(数组W)。字符屏的处理方式可以是直接把C(x,y)映像到显示终端的(x,y);特殊情况下,可以先在字符屏通道进行必要的处理。而多道波形可以在波形屏通道进行另外处理,使各道波形能以不同模式动态显示。所述两个通道处理输出的两路数据的合成,根据应用的需要可以灵活定义,或是字符信息数据覆盖波形数据,或是波形数据覆盖字符信息数据。例如监护仪通常在屏幕中央显示生理信号波形,当用户操作仪器时,可以用弹出的菜单来覆盖掉重叠位置的所述生理信号波形。
尤其是,当要在显示终端的某一区域内并行以不同颜色显示多道波形,而所述多道波形具有不同的显示模式,或是以不同速率动态进行显示时,可以在上述处理基础上,在显存内设置多个独立的空间(波形屏),分另映射同一显示终端或该终端的某一区域,每一波形屏存放至少一道波形数据,各波形屏中映射着显示终端同一区域的波形数据所包含的颜色信息各不相同。这样,显示驱动电路可以在各个波形屏通道对多道波形进行使各道波形以不同模式显示的处理后,再将各波形屏通道输出的数据合成,送往显示终端,在同一区域内的允许多道波形以不同颜色并行显示。从而系统通过不同波形显示区域的重叠,来显示更多的波形信息。
本发明针对嵌入式系统多波形动态显示作出的另一贡献是针对每一波形屏数据的处理,提供一种多通道波形显示方法,用于嵌入式系统多道波形的同时显示,步骤是,a.映射显示终端的显存波形屏分割为垂直方向排列的若干波形窗口,所述每个窗口分别显示一道或水平并列显示多道波形;所述各窗口的边界由至少一组边界寄存器设定的值限定;b.系统在存储器内建立波形参数表,包括每一所述波形窗口内各道波形的特性参数,所述特性参数至少包括该道波形的显示模式;c.CPU通过写显存操作,把波形数据写入显存波形屏中该道波形显示区域对应的逻辑空间;d.显示驱动电路把从显存中读出的每一所述波形窗口的数据送往显示终端之前,根据波形参数表中的该波形窗口的参数,通过改变显存与显示终端的映射关系来实现参数所限定的显示模式。
以同样1024×768显示分辨率系统的256色,32道波形显示为例。显存中的波形数据占用一个1024×768字节的二维数组,称之为一个波形屏。把该波形屏分割为垂直方向排列的32个波形窗口,每个窗口显示一道或水平并列显示多道波形(以左右各一道波形为例)。由边界寄存器设定所有波形窗口共同的左右边界和并列双道波形之间的左右边界,如表1所示。四个16位的边界寄存器内容允许由软件设置,其对显示终端的分割如图5所示,其中wflb和wfrb限定波形屏左右两侧不滚动的区域,对应图4显存波形屏中的区域①、⑦;hslb和hsrb限定并列的左右波形之间不滚动的“间隙”,对应图4显存波形屏中的区域④。所有的波形窗口共享这一组边界寄存器,也就是说在这里规定所有波形具有相同的边界划分规则。当然也允许用更多的寄存器资源来指定使各波形窗口具有不同边界,及所述窗口水平并列显示多道波形时各波形显示的水平区域段。
表1 波形边界线寄存器(波形窗口左/右边界,和半屏左边界/右边界;16位)

波形的其它特性由系统在存储器内建立的波形参数表限定,在FPGA内部RAM(随机存储器)或FPGA芯片外RAM建立的参数表,包括至少一道波形的特性参数定义如表2。为便于系统的功能扩展,每个波形窗口用4个16位存储器来定义。Rev为保留位。S为滚动模式控制位,S=0表示本窗口波形不滚动,即按刷新方式显示;S=1表示本窗口波形滚动显示。H为波形多道模式控制位,H=0表示本窗口为一道波形,H=1表示本窗口分左右显示两道波形。设波形窗口按序号从上至下排列,波形的特性参数还包括波形窗口的至少一个垂直边界。表2中Y-end设置波形窗口的下边界纵坐标,系统约定每一窗口的上边界纵坐标即为前一波形窗口的下边界纵坐标加一。也可以设置波形窗口的上边界纵坐标,或利用保留位同时设置波形窗口的上、下边界纵坐标。波形的特性参数还包括显示各波形的水平起始位置xo。在H=1的并列双道显示模式下,xo代表左波形的水平起始位置,用xro设置右波形的水平起始位置。
表2 波形参数存储器中的一组波形参数(16位)

图5是对上述各波形参数定义的进一步示意。这样,系统通过这些设定即可控制每一道波形的布局和显示方式。
CPU通过写显存操作,把需要显示的至少一道的波形数据写入显存中相应的波形窗口对应的逻辑空间,显示驱动电路把从显存中读出的每道波形数据送往显示终端之前,系统根据该道波形上述的参数,改变对应波形窗口与显示终端的映射关系,使之按限定的模式显示。
具体过程是在刷新模式下,如图2所示,因xo记录波形的水平起始位置,系统将xo连续加一(溢出wfrb后重置初值wflb)的同时,根据xo的值清除并更新波形数据,显示驱动逻辑直接把波形数据映像到显示屏上,即实现了波形从左至右逐点刷新显示。
在滚动模式下,由边界寄存器指定某些区域不作水平偏移映射,从而在波形窗口内划出一些不滚动区域,实现灵活的波形布局。如图3所示,系统采用类似刷新模式的方法,对xo作循环加一计数和更新波形数据,显示驱动逻辑对波形数据使用如下映射方式显示完偏移地址小于wflb的不滚动区域①后,跳过区域③而显示以xo为首偏移地址的区域②,然后再依次显示区域③和偏移地址大于wfrb的不滚动区域④。在该波形窗口内,该映射关系的数学表达式为当xo≤x≤wfrb时,将W(x,y)映射到显示终端(x-xo+wflb,y);否则当wflb≤x<xo时,将W(x,y)映射到显示终端(x+wfrb-xo+1,y)。这样就实现了逻辑上的波形屏到实际显示屏的水平偏移,随着xo不断地加一,波形就不断地从右往左滚动。在嵌入式系统中,这种波形滚动的方法(即显存内的波形屏数据往显示终端映射时作水平偏移)是由FPGA或ASIC硬件实现的,系统软件只需要更新波形数据和对xo存储器进行操作。
在所述窗口水平并列显示多道波形时,显示驱动电路根据波形参数表和各所述多道波形的边界线寄存器,依次从左至右切换所述多道波形,分别执行相应的步骤来合成显示终端上的每行扫描数据。以并列双道模式为例,两道波形同时滚动的方法如图4所示,wflb和hslb设定左波形的两边界线,hsrb和wfrb设定右波形的两边界线,显示驱动逻辑依次显示区域①~⑦,即实现了同一波形窗口内两道波形的滚动显示。若对xo和xro按照不同的速率计数,还可实现两道波形的不同速度滚动。也可以对其中的任一道波形改变映像方式以刷新模式显示。仿此思路进行扩展,可以实现更为灵活的波形显示方式。
此外,通过采用显存中波形数据与显示终端的其它映射关系,可以实现并列双道或其它更为复杂的显示模式,在此不在赘叙。
所述一个波形屏可以支持系统显示终端动态显示至少9道波形,而波形参数的切换,通过上述的存储器波形参数表,可以被很容易实现。如图6所示的参数存储器数据结构,地址从低到高分别是每四单元一组的第一、二、三……道波形的控制参数数据。显示逻辑开始显示一帧时,波形参数存储器的高位地址为0,数据线输出第1道波形的参数,显示逻辑按第1道波形参数进行滚动或刷新。当显示逻辑显示完第y-end行时,波形参数存储器的高位地址加1,从而自动获得下一道波形的参数。依此类推,波形参数的切换仅仅通过波形参数存储器的地址变化就能实现。而存储器地址到数据的延时甚至比现有方案(7道波形)的MUX延时还要短。所以,本发明可以实现更高的速度。
本发明已在我公司设计的医疗监护仪上试用验证,只用FPGA的一个4kb(千位)存储块,成功显示了32道波形,显示芯片的性能还比现有方案(7道波形)更高。如果使用并列双道技术,可以实现64道波形。在其他与监护仪有类似显示风格的仪器上,如果使用并列双道或对上述的保留位进行扩展,使用更多的RAM存储器,还可以实现更多的波形。(不过对于监护仪来说,受显示终端分辨率的限制,更多的并列波形意义不大)。在本实施例中,实现1道波形与实现32道波形,需要系统的逻辑资源是一样的,不会随着波形道数的增加而增加。
结合前述的多个波形屏合成技术,在显存中运用多个上述波形屏,分别映射同一显示终端或该显示终端的同一区域,所述多个波形屏中映射在显示终端同一区域上并行显示的各波形对应的数据所包含的颜色信息各不相同,就可以用不同颜色对应不同波形,在同一显示区域以并行方式显示多道波形。这样,系统可以扩展实现更多波形的同时动态显示。
上述RAM存储器用FPGA内部或芯片外部的RAM资源,可以节约FPGA大量的逻辑资源。尤其是内部RAM资源,因系统对它的访问速度非常快,实现效率更高。以Altera公司的EP1C3为例,1个4kb的存储块仅占该芯片存储器资源的7.7%,而同样功能若用逻辑单元实现,用尽该芯片的全部2910个逻辑单元都无法满足要求。
权利要求
1.一种多通道波形显示方法,用于嵌入式系统文字信息和多道波形的同时显示,包括步骤a.在显存内分配多个独立的空间,分别映射同一显示终端;所述空间有一个用来存放字符信息数据,称作为字符屏;所述空间还至少有一个用来存放波形数据,称作为波形屏;CPU对显存的写操作相应分为对字符屏和若干波形屏的写操作;b.显示驱动电路将从显存中读出的各个字符屏和波形屏数据分别送往各自相应的字符屏通道和波形屏通道处理;c.将所述各个字符屏通道和波形屏通道处理输出的多路数据合成,送往显示终端。
2.根据权利要求1所述的多通道波形显示方法,其特征在于所述步骤b中,所述各波形屏通道对多道波形进行使各道波形以不同模式显示的处理。
3.根据权利要求1所述的多通道波形显示方法,其特征在于所述步骤c中,所述字符屏通道和波形屏通道处理输出的数据的合成,或是字符信息数据覆盖波形数据,或是波形数据覆盖字符信息数据。
4.根据权利要求1至3的任一项所述的多通道波形显示方法,其特征在于所述多个波形屏中映射在显示终端同一区域并行显示的各波形数据所包含的颜色信息各不相同。
5.一种多通道波形显示方法,用于嵌入式系统多道波形的同时显示,包括步骤a.把映射显示终端的显存波形屏分割为垂直方向排列的若干波形窗口,所述每个窗口分别显示一道或水平并列显示多道波形;所述各窗口的边界由至少一组边界寄存器设定的值限定;b.系统在存储器内建立波形参数表,包括每一所述波形窗口内各道波形的特性参数,所述特性参数至少包括该道波形的显示模式;c.CPU通过写显存操作,把波形数据写入显存波形屏中该道波形显示区域对应的逻辑空间;d.显示驱动电路把从显存中读出的每一所述波形窗口的数据送往显示终端之前,根据波形参数表中的该波形窗口的参数,通过改变显存与显示终端的映射关系来实现参数所限定的显示模式。
6.根据权利要求5所述的多通道波形显示方法,其特征在于所述边界寄存器的设定内容,或者为所有的波形窗口设置共同的边界,或者对每个波形窗口单独进行划分并设置其边界。
7.根据权利要求6所述的多通道波形显示方法,其特征在于所述边界寄存器的设定内容,还设置所述窗口水平并列显示多道波形时,各波形显示的水平区域段。
8.根据权利要求5所述的多通道波形显示方法,其特征在于所述波形的特性参数包括波形窗口的至少一个垂直边界。
9.根据权利要求5、8所述的多通道波形显示方法,其特征在于所述波形的特性参数还包括显示波形的水平起始位置x0。
10.根据权利要求5所述的多通道波形显示方法,其特征在于所述波形参数表是建立在FPGA或ASIC的内部RAM或芯片外置RAM存储器中。
11.根据权利要求9所述的多通道波形显示方法,其特征在于,对每道波形所述步骤c、d的具体操作步骤为①系统将波形参数存储器中该波形对应的xo连续循环加一,即当xo的值溢出该波形右边界线寄存器wfrb的设定值后,用该波形左边界线寄存器wflb的设定值来重置xo;②同时根据xo的每个值清除并更新显存中的波形数据;③根据显示模式的不同,刷新模式显示驱动逻辑直接把显存中的波形数据映射到显示屏上,实现了波形从左至右逐点刷新显示。滚动模式在波形窗口之外的区域,显示驱动逻辑直接把显存中的波形数据映射到显示屏上;在波形窗口,随着xo不断地自增,波形不断地从右往左滚动时,显示驱动逻辑对波形数据使用的是如下映射关系当xo≤x≤wfrb时,将显存W(x,y)映射到显示终端(x-xo+wf1b,y);否则当wflb≤x<xo时,将W(x,y)映射到显示终端(x+wfrb-xo+1,y)。
12.根据权利要求7或11所述的多通道波形显示方法,其特征在于所述窗口水平并列显示多道波形时,显示驱动电路根据波形参数表和各所述多道波形的边界线寄存器,依次从左至右切换所述多道波形,分别执行相应的步骤来合成显示终端上的每行扫描数据。
13.根据权利要求5所述的多通道波形显示方法,其特征在于所述波形屏支持系统显示终端动态显示至少9道波形。
14.根据权利要求5所述的多通道波形显示方法,其特征在于所述显存包括多个所述波形屏,分别映射同一显示终端或该显示终端的同一区域;所述多个波形屏中映射在显示终端同一区域上并行显示的各波形对应的数据所包含的颜色信息各不相同。
全文摘要
一种多通道波形显示方法,用于嵌入式系统多道波形的动态显示,包括步骤把映射显示终端的显存分割为若干个波形窗口,所述若干个波形窗口的边界由至少一组边界寄存器设定的值所限定;系统在存储器内建立各波形的特性参数表;CPU通过写显存操作把波形数据写入显存中相应的波形窗口;显示驱动电路把从显存中读出的每道波形数据送往显示终端之前,系统根据波形参数表中的该道波形的参数,通过改变该道波形对应的波形窗口与显示终端的映射关系来实现设定的显示模式。采用所述方法,可以解决波形道数增加与由此而来的逻辑资源大量增加和显示芯片性能下降之间的矛盾,进而使显示系统具有高效率、低成本、可扩展性好的优势。
文档编号G09G5/00GK1808563SQ20051003288
公开日2006年7月26日 申请日期2005年1月18日 优先权日2005年1月18日
发明者姚力, 陈巍 申请人:深圳迈瑞生物医疗电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1