写专利的步骤有哪些(写专利的技巧及步骤方法)

软件程序类技术方案如果仅以方法权利要求加以保护,可能导致常规固化软件的行为不被视为侵权行为。方法权利要求适用于方法发明,通常应当用工艺过程、操作条件、步骤或者流程等技术特征来描述。与软件最紧密相关的步骤或者流程都给人一种动态的感觉,似乎只有软件运行起来,执行了方法权利要求限定的步骤或流程才真正侵犯了软件专利,只有软件的用户(使用者)才是真正的侵权方,而软件的开发者则没有侵犯专利权。

笔者在十年前从事通信定位芯片和板卡开发的过程中,申请的所有发明专利对应的技术方案都可以被视为一种信号处理或信息处理(参数估计)的方法。所以,当时为笔者服务的专利代理人总是从保护力度的角度建议我们以装置权利要求加方法权利要求的方式申请专利。在转入代理行业后,经过对专利法的学习和实务工作经验的积累,笔者非常认同当初为我服务的代理人的意见。

通常数字电路容易被接受为一种装置,所以笔者当初作为芯片和板卡等数字电路的开发人员对于代理人的建议没有任何抵触情绪,觉得理所当然。但是数字电路与软件在逻辑上是等价的,即用纯粹的数字电路实现的模块同样可以用微处理器加相应的软件程序实现。并且,数字电路既可以用基本的逻辑门分立元件搭建,也可以运用硬件描述语言(VHDL、Verilog HDL等)对逻辑门阵列(FPGA、CPLD等)编写程序实现。

信号处理算法可以先编写计算机程序仿真,通过后通常都以硬件描述语言(VHDL、Verilog HDL等)对逻辑门阵列(FPGA、CPLD等)编写程序实现并进行实际的硬件实验,最后再流片制造为芯片。但是信息处理(参数估计)算法,比如卡尔曼滤波器,也可能出于运算效率的考虑而使用硬件描述语言固化在逻辑门阵列之中,甚至流片。事实上,第一代区块链技术的比特币,在刚问世的时候,其矿机也是微处理器加相应的软件程序实现。后来为了提高运算速度,开发了矿机专用运算芯片,将某些运算功能由微处理器加软件变成纯硬件实现。

装置(包括硬件装置及数字电路)与软件产品的共同点在于,装置也是静态的产品,也是通过模块化设计而制造的,体现了模块的输入、输出、功能和模块之间的关系等。基于硬件描述语言的数字电路设计主要的工作就是设计各种模块(硬件描述语言称之为module即模块)。

比如,方法权利要求中的步骤A要求实现B数据和C数据的相加。可以在装置权利要求中对应地设置加法器模块D,配以功能描述(实现B数据和C数据的相加)。步骤A中B数据和C数据的相加确实是在软件用户手中实施的,似乎与开发者无关。但是开发者却无法否认其开发的软件产品中存在一个实现B数据和C数据的相加的加法器模块D。只要专利权人能够证明疑似侵权产品确实覆盖了专利的装置权利要求中包括的所有必要技术特征,该产品就侵犯了专利权;作为产品的开发制造者就负有不可推卸的侵权责任,无法再以“使用”定义上的模糊玩弄文字游戏。因此,在装置权利要求的保护下,侵权软件开发商固化软件的行为(生产制造受保护装置)也应视为专利侵权行为。

此外,《专利审查指南》规定:为了清楚、完整地描述该计算机程序的主要技术特征,说明书附图中应当给出该计算机程序的主要流程图。说明书中应当以所给出的计算机程序流程为基础,按照该流程的时间顺序,以自然语言对该计算机程序的各步骤进行描述。而且《专利审查指南》列举的方法类专利基本都是按照步骤或者流程的方式加以描述。

迄今为止专利申请文件中,方法权利要求及其相应的说明书记载都以步骤和流程图为主展开。使用图形表示算法的思路是一种极好的方法,因为千言万语不如一张图。流程图在汇编语言和早期的BASIC语言环境中得到应用。由于允许使用流程线,过于灵活,不受约束,使用者可使流程任意转向,从而造成程序阅读和修改上的困难,不利于结构化程序的设计。

故早在面向过程程序设计时代,工程界就已经广泛使用PAD图等支持结构化程序设计的图形设计工具代替流程图,以及数据流图、 ER图等图形工具用于PASCAL或C语言等程序开发。面向对象程序设计以对象为核心,该方法认为程序由一系列对象组成。常用的建模方法有:用例图、领域模型、类图、顺序图、设计类图等。对芯片和FPGA设计进行初步系统规划的时候,通常以Visio 等图形输入工具完成系统功能的定义和模块划分、模块接口定义等工作,而不采用流程图。由此可知,流程图既不是发明人设计其产品技术方案时的必要设计工具,也不一定是记载和限定该技术方案的最佳方式。

《专利审查指南》关于权利要求书的撰写部分还规定:涉及计算机程序的发明专利申请的权利要求可以写成一种方法权利要求,也可以写成一种产品权利要求,例如【根据局令第七十四号将“即”改为“例如”】实现该方法的装置。

如果全部以计算机程序流程为依据,按照与该计算机程序流程的各步骤完全对应一致的方式,或者按照与反映该计算机程序流程的方法权利要求完全对应一致的方式,撰写装置权利要求,即这种装置权利要求中的各组成部分与该计算机程序流程的各个步骤或者该方法权利要求中的各个步骤完全对应一致,则这种装置权利要求中的各组成部分应当理解为实现该程序流程各步骤或该方法各步骤所必须建立的程序模块,由这样一组程序模块限定的装置权利要求应当理解为主要通过说明书记载的计算机程序实现该解决方案的程序模块构架,而不应当理解为主要通过硬件方式实现该解决方案的实体装置。

指南明确建议装置类权利要求各组成部分与该计算机程序流程的各个步骤或者该方法权利要求中的各个步骤完全对应一致,即装置的组成部分与方法的步骤对应一致,或者说每一个步骤的任务都有某个组成部分来完成。但是,方法中的步骤相互之间有一定的时间顺序限制,而装置中的各组成部分可以是并发执行(多线程程序)、甚至并行执行(多核CPU加多线程、FPGA等芯片硬件电路中的模块)。二者的差异意味着装置类权利要求具有更宽的保护范围。

而且,信号或信息处理方法的步骤不一定全部具有严格的时间顺序意义上的先后关系。因此,对软件程序类技术方案撰写权利要求时,应当尽量将产品和方法都记载到权利要求书中,以寻求更为严密周到的保护。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注