[go: up one dir, main page]

CN106682268B - Programmable logic device configuration method and equipment - Google Patents

Programmable logic device configuration method and equipment Download PDF

Info

Publication number
CN106682268B
CN106682268B CN201611068221.8A CN201611068221A CN106682268B CN 106682268 B CN106682268 B CN 106682268B CN 201611068221 A CN201611068221 A CN 201611068221A CN 106682268 B CN106682268 B CN 106682268B
Authority
CN
China
Prior art keywords
model
programmable logic
logic device
module
configuration
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.)
Active
Application number
CN201611068221.8A
Other languages
Chinese (zh)
Other versions
CN106682268A (en
Inventor
姜振宇
刘锐锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Ziguang Tongchuang Electronics Co ltd
Original Assignee
Shenzhen Pango Microsystems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Pango Microsystems Co Ltd filed Critical Shenzhen Pango Microsystems Co Ltd
Priority to CN201611068221.8A priority Critical patent/CN106682268B/en
Publication of CN106682268A publication Critical patent/CN106682268A/en
Application granted granted Critical
Publication of CN106682268B publication Critical patent/CN106682268B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

The embodiment of the invention discloses a configuration method and equipment of a programmable logic device, which are used for realizing design files by generating a PLD (programmable logic device) model file containing a device model and an operator model and a PLD (programmable logic device); mapping a target function module and a connection relation in a design file of a PLD (programmable logic device) to the top layer of a device model in the PLD model file, and configuring a corresponding grid point element on the top layer; traversing and extracting configuration parameters of each lattice point element on the top layer to generate a configuration file; and writing the configuration file into the PLD to be configured. The method can realize the precise configuration process of the PLD, and is beneficial to the development and the test of designers on the PLD. The invention can configure the basic elements forming the PLD, thereby realizing the maximization of the resource utilization of the PLD chip, and simultaneously, flexibly setting the internal structure of the lattice point elements and the connection relation among the lattice point elements, and effectively solving the problem of accurate control of the critical path.

Description

可编程逻辑器件配置方法及设备Programmable logic device configuration method and device

技术领域technical field

本发明涉及数字电子技术领域,尤其涉及一种可编程逻辑器件配置方法及设备。The present invention relates to the technical field of digital electronics, and in particular, to a method and device for configuring a programmable logic device.

背景技术Background technique

可编程逻辑器件(Programmable Logic Device,简称PLD)是一种可以根据实际需求随时改变其逻辑功能的电子器件。PLD一般分为可编程只读存储器(Programmable ReadOnly Memory,简称PROM)、可擦除可编程存储器(Erase Programmable Read Only Memory,简称EPROM)、可编程逻辑阵列(Programmable Logic Array,简称PLA)、可编程阵列逻辑(Programmable Array Logic,简称PAL)、通用阵列逻辑(Generic Array Logic,简称GAL)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、复杂可编程逻辑器件(Complex Programmable Logic Device,简称CPLD)等。Programmable Logic Device (Programmable Logic Device, PLD for short) is an electronic device whose logic function can be changed at any time according to actual needs. PLDs are generally divided into Programmable ReadOnly Memory (PROM), Erase Programmable Read Only Memory (EPROM), Programmable Logic Array (PLA), and Programmable Logic Array (PLA). Array logic (Programmable Array Logic, PAL for short), Generic Array Logic (GAL for short), Field Programmable Gate Array (FPGA for short), Complex Programmable Logic Device (Complex Programmable Logic Device, for short) CPLD), etc.

在数字电子技术领域中,固定逻辑器件的电路永久性的,一旦制造完成,就无法改变,只能完成相应的一种或一组逻辑功能。而PLD由于其具有灵活性高,在设计过程中可以根据实际需求通过编程的方法随时改变其逻辑功能,从而为用户和设计人员提供了更多的选择;同时,在设计过程中,设计人员只需要使用低廉的软件工具进行开发、仿真、调试其设计,不必对PLD本身物理结构进行改变即可实现不同的逻辑功能,极大减少设计人员以及制造厂商在设计开发过程中的成本投入,因此PLD得到了广泛的应用。In the field of digital electronic technology, the circuit of a fixed logic device is permanent, and once it is manufactured, it cannot be changed, and only one or a group of corresponding logic functions can be completed. However, due to its high flexibility, PLD can change its logic function at any time through programming according to actual needs in the design process, thus providing users and designers with more choices; at the same time, in the design process, designers only It is necessary to use low-cost software tools to develop, simulate, and debug its design. Different logic functions can be realized without changing the physical structure of the PLD itself, which greatly reduces the cost of designers and manufacturers in the design and development process. Therefore, PLD has been widely used.

在现有技术中,PLD的配置调试过程多种多样,通常使用Verilog HDL(VerilogHardware Description Language)、VHDL(Very-High-Speed Integrated CircuitHardware Description Language,超高速集成电路硬件描述语言)等硬件描述语言描述设计逻辑,然后使用EDA(Electronics Design Automation,电子设计自动化)工具通过自动布局布线等步骤产生配置文件,再将配置文件下载到PLD中进行调试。然而,受到布局布线算法的限制,上述方法无法实现对PLD资源的最大利用,同时也无法实现对关键路径的精确控制,可能导致上述方法在某些特殊场合下不能适用的问题。In the prior art, the configuration and debugging process of PLD is varied, usually described in hardware description languages such as Verilog HDL (Verilog Hardware Description Language), VHDL (Very-High-Speed Integrated Circuit Hardware Description Language, very high-speed integrated circuit hardware description language). Design logic, and then use EDA (Electronics Design Automation, electronic design automation) tools to generate configuration files through automatic layout and routing and other steps, and then download the configuration files to the PLD for debugging. However, due to the limitation of the layout and routing algorithm, the above method cannot achieve the maximum utilization of PLD resources, and also cannot achieve precise control of the critical path, which may lead to the problem that the above method cannot be applied in some special occasions.

发明内容SUMMARY OF THE INVENTION

本发明提供一种可编程逻辑器件配置方法及设备,以解决现有的PLD配置方法无法实现对关键路径的精确控制以及达到较大的PLD资源利用率的问题。The present invention provides a programmable logic device configuration method and equipment, so as to solve the problem that the existing PLD configuration method cannot achieve precise control of the critical path and achieve greater utilization of PLD resources.

为此,本发明实施例提供一种可编程逻辑器件配置方法,包括:To this end, an embodiment of the present invention provides a programmable logic device configuration method, including:

生成可编程逻辑器件模型文件,所述可编程逻辑器件模型文件中包含器件模型和算子模型;所述器件模型包括位于底层的可编程逻辑器件基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现;Generate a programmable logic device model file, the programmable logic device model file contains a device model and an operator model; the device model includes the basic element of the programmable logic device at the bottom layer, the grid element in the middle layer, and the grid element at the top layer. A point system, the grid element is composed of at least one basic element, and the grid system is composed of at least one grid element; the operator model includes functional modules for realizing each function, and a function module is composed of a grid element in the grid element. The connection and combination between the basic components are realized;

根据待配置可编程逻辑器件的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成可编程逻辑器件实现设计文件;Select the corresponding target function module from the operator model according to the function of the programmable logic device to be configured, and determine the connection relationship between the target function modules to generate the programmable logic device implementation design file;

将所述可编程逻辑器件实现设计文件中的目标功能模块以及连接关系映射到所述可编程逻辑器件模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;mapping the target function modules and connection relationships in the programmable logic device implementation design file to the top layer of the device model in the programmable logic device model file, and configuring the corresponding lattice elements on the top layer;

遍历提取所述顶层上各格点元件的配置参数生成配置文件;Traversing and extracting the configuration parameters of each grid element on the top layer to generate a configuration file;

将所述配置文件写入所述待配置可编程逻辑器件。Writing the configuration file into the programmable logic device to be configured.

进一步地,所述器件模型包括用于唯一标识该器件模型的标识信息、所实现功能的功能参数配置信息以及对应的接口信息;Further, the device model includes identification information for uniquely identifying the device model, functional parameter configuration information of the implemented function, and corresponding interface information;

格点元件包括描述位置的配置描述信息、进行图形表征的图形描述信息以及用于描述内部结构的结构描述信息。The lattice element includes configuration description information for describing positions, graphic description information for graphic representation, and structure description information for describing internal structures.

进一步地,所述功能模块包括用于唯一标识该功能模块的模块标识信息、所实现功能的参数配置信息、对应的接口信息以及实现该功能模块的所有实现方式描述信息。Further, the functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and description information of all implementations for implementing the functional module.

进一步地,所述生成可编程逻辑器件实现设计文件包括:Further, the generation of the programmable logic device implementation design file includes:

根据所述连接关系确定并定义好各输入输出接口;Determine and define each input and output interface according to the connection relationship;

对于所述各目标功能模块,生成描述各目标功能模块的内部实现描述语句以得到目标功能模块实例;For each of the target function modules, generate an internal implementation description statement describing each target function module to obtain an instance of the target function module;

根据所述连接关系生成各走线路径的描述语句,并对关键走线路径进行标识约束得到网线实例。A description statement of each routing path is generated according to the connection relationship, and key routing paths are identified and constrained to obtain network cable instances.

进一步地,将所述可编程逻辑器件实现设计文件中的目标功能模块以及连接关系映射到所述顶层上,并对所述顶层上对应的格点元件进行配置包括:Further, mapping the target function modules and connection relationships in the programmable logic device implementation design file to the top layer, and configuring the corresponding lattice elements on the top layer includes:

将所述器件模型从底层往顶层的顺序依次编译得到器件模型的顶层网格模型存放于模型编译库中,并将所述算子模型中的各功能模块进行编译存放于模型编译库中;Compile the device model sequentially from the bottom layer to the top layer to obtain the top-level grid model of the device model and store it in the model compilation library, and compile and store each functional module in the operator model in the model compilation library;

将所述可编程逻辑器件实现设计文件进行编译得到目标功能模块实例和网线实例;Compile the programmable logic device implementation design file to obtain the target function module instance and the network cable instance;

根据所述目标功能模块实例从所述模型编译库中找到各自对应的功能模块,并根据各目标功能模块实例的参数对相应功能模块进行配置得到参数配置功能模块;Find the respective corresponding function modules from the model compilation library according to the target function module instance, and configure the corresponding function module according to the parameters of each target function module instance to obtain a parameter configuration function module;

根据所述网线实例及各参数配置功能模块的实现方式,将所述各参数配置功能模块映射到所述顶层网格模型对应的网格上,并按照所述各参数配置功能模块的参数对相应网格上的网格元件进行配置。According to the network cable instance and the implementation of each parameter configuration function module, each parameter configuration function module is mapped to the grid corresponding to the top-level grid model, and the corresponding parameters of the parameter configuration function module are paired accordingly. Grid elements on the grid are configured.

本发明实施例还提供一种可编程逻辑器件配置设备,包括:The embodiment of the present invention also provides a programmable logic device configuration device, including:

模型生成模块,用于生成可编程逻辑器件模型文件,所述可编程逻辑器件模型文件中包含器件模型和算子模型;所述器件模型包括位于底层的可编程逻辑器件基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现;The model generation module is used to generate a programmable logic device model file, wherein the programmable logic device model file contains a device model and an operator model; A point element and a top-level lattice point system, the lattice point element is composed of at least one basic element, and the lattice point system is composed of at least one lattice point element; the operator model includes functional modules for realizing each function, one functional module It is realized by the connection and combination between the basic elements in the lattice element;

设计生成模块,用于根据待配置可编程逻辑器件的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的可编程逻辑器件实现设计文件;A design generation module is used to select a corresponding target function module from the operator model according to the function of the programmable logic device to be configured, and determine the connection relationship between the target function modules to generate a programmable logic format in Valence language format. Logic device implementation design file;

处理模块,用于将所述可编程逻辑器件实现设计文件中的目标功能模块以及连接关系映射到所述可编程逻辑器件模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;还用于遍历提取所述顶层上各格点元件的配置参数生成配置文件,并将所述配置文件写入所述待配置可编程逻辑器件。The processing module is used to map the target function modules and connection relationships in the programmable logic device implementation design file to the top layer of the device model in the programmable logic device model file, and map the corresponding grid points on the top layer and is further used for traversing and extracting the configuration parameters of each grid element on the top layer to generate a configuration file, and writing the configuration file into the to-be-configured programmable logic device.

进一步地,所述器件模型包括用于唯一标识该器件模型的标识信息、所实现功能的功能参数配置信息以及对应的接口信息;Further, the device model includes identification information for uniquely identifying the device model, functional parameter configuration information of the implemented function, and corresponding interface information;

格点元件包括描述位置的配置描述信息、进行图形表征的图形描述信息以及用于描述内部结构的结构描述信息。The lattice element includes configuration description information for describing positions, graphic description information for graphic representation, and structure description information for describing internal structures.

进一步地,所述功能模块包括用于唯一标识该功能模块的模块标识信息、所实现功能的参数配置信息、对应的接口信息以及实现该功能模块的所有实现方式描述信息。Further, the functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and description information of all implementations for implementing the functional module.

进一步地,所述设计生成模块用于根据所述连接关系确定并定义好各输入输出接口,对于所述各目标功能模块,生成描述各目标功能模块的内部实现描述语句以得到目标功能模块实例,以及根据所述连接关系生成各走线路径的描述语句,并对关键走线路径进行标识约束得到网线实例。Further, the design generation module is used to determine and define each input and output interface according to the connection relationship, and for each of the target function modules, generate an internal implementation description statement describing each target function module to obtain the target function module instance, and generating description sentences of each routing path according to the connection relationship, and identifying and constraining key routing paths to obtain network cable instances.

进一步地,所述处理模块包括:Further, the processing module includes:

编译子模块,用于将所述器件模型从底层往顶层的顺序依次编译得到器件模型的顶层网格模型存放于模型编译库中,并将所述算子模型中的各功能模块进行编译存放于模型编译库中;还用于将所述可编程逻辑器件实现设计文件进行编译得到目标功能模块实例和网线实例;The compiling sub-module is used to sequentially compile the device model from the bottom layer to the top layer to obtain the top-level grid model of the device model and store it in the model compilation library, and compile and store each functional module in the operator model in the In the model compilation library; also used for compiling the programmable logic device implementation design file to obtain the target function module instance and the network cable instance;

映射子模块,用于根据所述目标功能模块实例从所述模型编译库中找到各自对应的功能模块,并根据各目标功能模块实例的参数对相应功能模块进行配置得到参数配置功能模块;根据所述网线实例及各参数配置功能模块的实现方式,将所述各参数配置功能模块映射到所述顶层网格模型对应的网格上,并按照所述各参数配置功能模块的参数对相应网格上的网格元件进行配置。A mapping submodule is used to find the respective corresponding function modules from the model compilation library according to the target function module instance, and configure the corresponding function module according to the parameters of each target function module instance to obtain a parameter configuration function module; Describe the implementation mode of the network cable instance and each parameter configuration function module, map each parameter configuration function module to the grid corresponding to the top-level grid model, and map the corresponding grid according to the parameters of each parameter configuration function module. on the grid element to configure.

有益效果beneficial effect

根据本发明实施例提供的可编程逻辑器件配置方法及设备,通过生成包含器件模型和算子模型的可编程逻辑器件(PLD)模型文件;器件模型包括位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现;根据待配置PLD所要实现的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的PLD实现设计文件;将所述PLD实现设计文件中的目标功能模块以及连接关系映射到所述PLD模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;遍历提取所述顶层上各格点元件的配置参数生成配置文件;并将所述配置文件写入所述待配置PLD。有效解决无法实现对关键路径的精确控制以及无法达到较大的PLD资源利用率的问题,能够实现对PLD的精确配置,由于本发明可以对构成PLD的基本元件进行配置,因此可以实现PLD芯片的资源利用达到最大化,同时,能够灵活设置格点元件的内部结构以及各格点元件之间的连接关系,因此有利于设计人员对PLD的开发与测试,有利于推动PLD技术的发展。According to the programmable logic device configuration method and device provided by the embodiments of the present invention, by generating a programmable logic device (PLD) model file including a device model and an operator model; A point element and a top-level lattice point system, the lattice point element is composed of at least one basic element, and the lattice point system is composed of at least one lattice point element; the operator model includes functional modules for realizing each function, one functional module It is realized by the connection and combination of the basic elements in the lattice element; according to the function to be realized by the PLD to be configured, the corresponding target function module is selected from the operator model, and the connection relationship between the target function modules is determined to Generate a PLD implementation design file in the Valence language format; map the target function modules and connection relationships in the PLD implementation design file to the top layer of the device model in the PLD model file, and map the corresponding grid elements on the top layer. performing configuration; traversing and extracting configuration parameters of each grid element on the top layer to generate a configuration file; and writing the configuration file into the PLD to be configured. It can effectively solve the problems of inability to achieve precise control of critical paths and inability to achieve greater utilization of PLD resources, and can realize precise configuration of PLDs. The utilization of resources is maximized, and at the same time, the internal structure of the grid element and the connection relationship between the grid elements can be flexibly set, so it is beneficial for designers to develop and test PLDs and promote the development of PLD technology.

附图说明Description of drawings

图1为本发明实施例一提供的PLD配置方法流程示意图;1 is a schematic flowchart of a PLD configuration method provided in Embodiment 1 of the present invention;

图2为本发明实施例一提供的器件模型中格点系统的结构示意图;2 is a schematic structural diagram of a lattice point system in a device model provided by Embodiment 1 of the present invention;

图3为本发明实施例一提供的PLD实现设计文件的组成示意图;3 is a schematic diagram of the composition of the PLD implementation design file provided in Embodiment 1 of the present invention;

图4为本发明实施例一提供的PLD器件模型的映射配置方法流程示意图;4 is a schematic flowchart of a mapping configuration method for a PLD device model provided by Embodiment 1 of the present invention;

图5为本发明实施例二提供的可编程逻辑器件配置设备的结构示意图;5 is a schematic structural diagram of a programmable logic device configuration device according to Embodiment 2 of the present invention;

图6为本发明实施例二提供的另一种可编程逻辑器件配置设备的结构示意图。FIG. 6 is a schematic structural diagram of another programmable logic device configuration device according to Embodiment 2 of the present invention.

具体实施方式Detailed ways

下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。The embodiments of the present invention will be further described in detail below through specific embodiments in conjunction with the accompanying drawings.

实施例一:Example 1:

本发明实施例一提供一种基于Valence语言来实现可编程逻辑器件配置过程的方法,以达到对PLD进行配置调试的目的,而且配置过程高效便捷,有利于设计人员对PLD逻辑功能的开发与测试,有利于推动PLD技术的发展。Embodiment 1 of the present invention provides a method for implementing a configuration process of a programmable logic device based on Valence language, so as to achieve the purpose of configuring and debugging a PLD, and the configuration process is efficient and convenient, which is beneficial for designers to develop and test PLD logic functions , which is conducive to promoting the development of PLD technology.

请参见图1,图1为本发明实施例一提供的PLD配置方法流程示意图,包括:Please refer to FIG. 1. FIG. 1 is a schematic flowchart of a PLD configuration method provided in Embodiment 1 of the present invention, including:

S11:生成PLD模型文件,所述PLD模型文件中包含器件模型和算子模型;所述器件模型包括位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现。S11: Generate a PLD model file, where the PLD model file includes a device model and an operator model; the device model includes the PLD basic elements at the bottom layer, the lattice point elements in the middle layer, and the lattice point system at the top layer, the lattice points The element is composed of at least one basic element, and the grid system is composed of at least one grid element; the operator model includes functional modules that realize each function, and a functional module is realized by the connection and combination of the basic elements in the grid element .

通过生成PLD模型文件,也即对待配置PLD进行建模,建模生成的PLD模型文件中包括器件模型。其中,器件模型包含位于底层的PLD基本元件(可以称之为Prim Device)、中间层的格点元件(可以称之为Grid Device)以及顶层的格点系统(可以称之为ArchitectureDevice)。底层的基本元件是抽象的最小工作单元,中间层的格点元件由1个或至少两个基本元件组成,当一个格点元件中存在至少两个基本元件时,各基本元件可能全部不同,可能部分不同,也可能全都相同。具体地可以根据待配置PLD的逻辑功能灵活设定格点元件中的基本元件的组成和/或数量。顶层的格点系统由各格点元件按照一定的规律排布形成。所述格点系统至少由一个格点元件组成,通常由多个格点元件组成,例如可以是数十个、数百个、甚至大规模的数千个格点元件组成。为了更好的理解本发明,请参见图2,图2为本发明实施例一提供的器件模型中格点系统的结构示意图。包括顶层的格点系统、中间层的格点元件以及底层的基本元件。格点系统由多个规律排布的格点元件组成,每一个格点元件中由至少一个基本元件组成,各个格点元件内的基本元件可能相同,也可能不同。By generating a PLD model file, that is, modeling the PLD to be configured, the PLD model file generated by modeling includes a device model. Among them, the device model includes a PLD basic element at the bottom layer (which can be called Prim Device), a grid element in the middle layer (which can be called Grid Device), and a grid system at the top layer (which can be called Architecture Device). The basic element of the bottom layer is the abstract minimum work unit, and the grid element of the middle layer is composed of one or at least two basic elements. Some are different, and all may be the same. Specifically, the composition and/or number of basic elements in the grid element can be flexibly set according to the logic function of the PLD to be configured. The grid system on the top layer is formed by the arrangement of grid elements according to certain rules. The grid system is composed of at least one grid element, usually composed of a plurality of grid elements, such as dozens, hundreds, or even thousands of grid elements on a large scale. For a better understanding of the present invention, please refer to FIG. 2 , which is a schematic structural diagram of a lattice point system in a device model provided by Embodiment 1 of the present invention. It includes the grid system of the top layer, the grid elements of the middle layer, and the basic elements of the bottom layer. The grid point system is composed of a plurality of regularly arranged grid point elements, each grid point element is composed of at least one basic element, and the basic elements in each grid point element may be the same or different.

生成的器件模型中还应当包括唯一标识该器件模型的标识信息、所实现功能的功能参数配置信息以及对应的接口信息。应当理解的是,所述唯一标识该器件模型的标识信息可以是该模型器件的名称;该功能参数配置信息可以根据待配置PLD所实现的逻辑功能具体设定。The generated device model should also include identification information that uniquely identifies the device model, functional parameter configuration information of the implemented function, and corresponding interface information. It should be understood that the identification information that uniquely identifies the device model may be the name of the model device; the function parameter configuration information may be specifically set according to the logic function implemented by the PLD to be configured.

在生成器件模型的过程中,应当对生成待配置PLD器件模型的各个组件的功能结构进行描述,从而形成完整的器件模型。每一个模型个体均可以称之为一个组件(Device),具体地可以是基本元件、格点元件以及格点系统,均可以称为组件。所述组件应当包括相应组件的名称、接口信息以及配置参数,其中可以将该组件的名称作为该组件的唯一标识信息,接口主要用于进行信号连接,配置参数决定该组件实现的具体功能。In the process of generating the device model, the functional structure of each component for generating the PLD device model to be configured should be described, so as to form a complete device model. Each model entity can be called a component (Device), and specifically can be a basic element, a lattice element, and a lattice system, all of which can be called a component. The component should include the name of the corresponding component, interface information and configuration parameters, where the name of the component can be used as the unique identification information of the component, the interface is mainly used for signal connection, and the configuration parameters determine the specific function implemented by the component.

本实施例中,以上结构格式(例如PLD模型文件、PLD实现设计文件)的描述语言称之为Valence语言。In this embodiment, the description language of the above structure format (eg, PLD model file, PLD implementation design file) is called Valence language.

基于Valence语言对各个组件的描述可以从多个方面进行,包括结构描述(Structure View)、配置描述(Configuration View)以及图形描述(Schematic View)。结构描述用于定义组件的内部结构,例如格点元件由多个基本元件组合连接而成,结构描述中定义了每个基本元件的配置参数值及基本元件之间的连接关系。应当理解的是,由于基本元件是抽象的最小基本单位,所以基本元件不存在结构描述。配置描述用于定义组件的配置点(Config Bit,与PLD器件中的物理开关一一对应)及配置值(Config Value),由于格点元件在顶层格点系统中的排布是有规律的,所以可以将所有的Config Bit全部规划在格点元件中,这样就可以方便的定位某一个Config Bit在整个PLD器件中的位置。图形描述用于定义组件的图形,主要用于绘图。The description of each component based on Valence language can be carried out from many aspects, including structure description (Structure View), configuration description (Configuration View) and graphic description (Schematic View). The structure description is used to define the internal structure of the component. For example, a grid element is formed by combining and connecting multiple basic elements. The structure description defines the configuration parameter value of each basic element and the connection relationship between the basic elements. It should be understood that since a basic element is an abstract minimum basic unit, there is no structural description of the basic element. The configuration description is used to define the configuration point (Config Bit, one-to-one correspondence with the physical switch in the PLD device) and the configuration value (Config Value) of the component. Since the grid components are arranged regularly in the top-level grid system, Therefore, all Config Bits can be planned in the grid element, so that the position of a certain Config Bit in the whole PLD device can be easily located. Graphical description is used to define the graphics of the component, mainly used for drawing.

例如,对格点元件从以上三个方面进行描述,从而得到包括描述位置的配置描述信息、进行图形表征的图形描述信息以及用于描述内部结构的结构描述信息。配置描述信息中包括该格点元件的特定坐标值,例如可以表示为:(a,1,4),其中“a”表示该格点元件属于格点系统a,“1,4”表示该格点元件在格点系统a中的具体位置在第1排第4列。图形描述信息中包括用于表征该格点元件的图形,所述图像可以基于该格点元件所要实现的逻辑功能具体设定。结构描述信息用于描述该格点元件的内部结构,具体可以是该格点元件由哪些基本元件组成以及各基本元件之间的连接关系。For example, the grid element is described from the above three aspects, so as to obtain configuration description information including position description, graphic description information for graphic representation, and structure description information for describing internal structure. The configuration description information includes the specific coordinate value of the grid element, for example, it can be expressed as: (a, 1, 4), where "a" indicates that the grid element belongs to grid point system a, and "1, 4" indicates that the grid The specific position of the point element in the grid point system a is in the first row and the fourth column. The graphic description information includes a graphic for representing the grid element, and the image can be specifically set based on the logic function to be implemented by the grid element. The structure description information is used to describe the internal structure of the lattice element, specifically which basic elements the lattice element consists of and the connection relationship between the basic elements.

通过Valence语言对待配置的PLD器件进行建模时,所述PLD模型文件中还包含算子模型,所述算子模型包含实现各功能的功能模块(也即算子),一个功能模块由格点元件内的基本元件之间连接组合实现,不同的基本元件通过不同的连接方式能够形成不同的功能模块,实现不同的逻辑功能。具体的,所述功能模块包括但不限于加法器、乘法器、比较器、触发器等,均可以称为一个功能模块。When modeling the PLD device to be configured by the Valence language, the PLD model file also includes an operator model, and the operator model includes functional modules (that is, operators) that implement each function. The connection and combination between the basic elements in the element are realized, and different basic elements can form different functional modules through different connection methods to realize different logical functions. Specifically, the functional modules include, but are not limited to, adders, multipliers, comparators, flip-flops, etc., all of which may be referred to as a functional module.

所述功能模块包括用于唯一标识该功能模块的模块标识信息、所实现功能的参数配置信息、对应的接口信息以及实现该功能模块的所有实现方式描述信息。应当说明的是,一个功能模块的特定功能在实现方式上并不是唯一的,可能存在多种不同的实现方式,后续的配置过程可以基于实际使用情景合理选择其中的某种实现方式。The functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and description information of all implementations for implementing the functional module. It should be noted that the specific function of a functional module is not unique in terms of implementation, and there may be multiple implementations, and one of the implementations may be reasonably selected in the subsequent configuration process based on actual usage scenarios.

S12:根据待配置PLD的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的PLD实现设计文件。S12: Select a corresponding target function module from the operator model according to the function of the PLD to be configured, and determine the connection relationship between the target function modules to generate a PLD implementation design file in Valence language format.

具体的,可以根据各目标功能模块的连接关系确定各输入输出接口;对于各目标功能模块,生成描述各目标功能模块的内部实现描述语句;以及根据各目标功能模块的连接关系生成各走线路径的描述语句,并对关键走线路径进行标识约束。最终,生成Valence语言格式的PLD实现设计文件。Specifically, each input and output interface can be determined according to the connection relationship of each target functional module; for each target functional module, an internal implementation description statement describing each target functional module is generated; and each routing path is generated according to the connection relationship of each target functional module description statement, and identify constraints on critical routing paths. Finally, a PLD implementation design file in Valence language format is generated.

为了更好的理解本发明,请参见图3,图3为本发明实施例一提供的PLD实现设计文件的组成示意图。所述PLD实现设计文件主要包含三个语句块:接口定义语句块、内部实现语句块、走线路径定义语句块。For a better understanding of the present invention, please refer to FIG. 3 , which is a schematic diagram of the composition of a PLD implementation design file provided in Embodiment 1 of the present invention. The PLD implementation design file mainly includes three statement blocks: an interface definition statement block, an internal implementation statement block, and a routing path definition statement block.

其中,接口定义语句块中包含用于定义设计名称、定义设计的相关参数的描述语句、以及输入输出接口语句;此处的输入输出端口可以简单理解为Verilog语言中module的输入及输出,其主要作用是PLD器件与外部信号的交互,例如输入PLD器件的时钟信号。内部实现语句块中包含设计的内部结构描述语句,具体而言,实例化并连接特定的功能模块以实现相应的功能。编写内部结构时,不仅可以使用现有的功能模块,还可以根据实际需求设计特殊的功能模块,甚至可以直接对格点元件或基本元件进行配置连接,例如可以直接指定功能模块和/或组件在整个待配置PLD中的位置,具体的可以通过格点系统中的各格点坐标来对使用的功能模块和/或组件的位置进行约束。Among them, the interface definition statement block contains description statements for defining the design name, defining the relevant parameters of the design, and input and output interface statements; the input and output ports here can be simply understood as the input and output of the module in the Verilog language. The function is the interaction between the PLD device and external signals, such as the clock signal input to the PLD device. The internal implementation statement block contains the designed internal structure description statement, specifically, instantiate and connect a specific function module to realize the corresponding function. When writing the internal structure, not only the existing function modules can be used, but also special function modules can be designed according to actual needs, and even lattice elements or basic elements can be directly configured and connected, for example, function modules and/or components can be directly specified in The position in the entire PLD to be configured, specifically, the position of the used functional modules and/or components may be constrained by the coordinates of each grid point in the grid point system.

走线路径定义语句块中包含各走线路径的描述语句,用于对该PLD的关键走线路径进行标识约束,实现对关键走线路径的精确控制。本实施例中的关键走线路径可以是任意一个网线(网线可以理解为Verilog语言中的wire,其作用是连接两个功能模块的端口,以实现数据传递),一个网线两端连接的功能模块端口都在内部结构描述语句中确定了,走线路径定义语句只对关键网线的路径进行约束,没有进行约束的网线在后续处理时可采用布线算法进行布线。例如,编写时首先使用布线约束关键字标识开始对一个网线进行约束,然后将该网线从起点至终点间的每一个节点按照前后顺序使用连接符号进行连接,最后以分号结束。The routing path definition statement block contains description statements of each routing path, which are used to identify and constrain the key routing paths of the PLD, and realize precise control of the key routing paths. The key routing path in this embodiment can be any network cable (a network cable can be understood as a wire in the Verilog language, and its function is to connect the ports of two functional modules to realize data transmission), a functional module connected at both ends of the network cable The ports are all determined in the internal structure description statement. The routing path definition statement only constrains the path of the key network cables. The network cables that are not constrained can be routed using a routing algorithm in subsequent processing. For example, when writing, first use the wiring constraint keyword to identify a network cable to start constraining, and then use the connection symbol to connect each node of the network cable from the start point to the end point in sequence, and finally end with a semicolon.

S13:将所述PLD实现设计文件中的目标功能模块以及连接关系映射到所述PLD模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置。S13: Map the target function modules and connection relationships in the PLD implementation design file to the top layer of the device model in the PLD model file, and configure corresponding lattice elements on the top layer.

当所述Valence语言格式的PLD模型文件和PLD实现设计文件编写生成后,可以通过读取其中的目标功能模块、相互之间的连接关系以及器件模型中的顶层模型,并将PLD实现设计文件中的目标功能模块以及连接关系映射到PLD模型文件中器件模型的顶层上,从而实现对PLD器件模型进行配置。After the PLD model file in the Valence language format and the PLD implementation design file are written and generated, the target function modules, the connection relationship between them, and the top-level model in the device model can be read, and the PLD implementation design file can be read. The target function module and connection relationship of the PLD model file are mapped to the top layer of the device model in the PLD model file, so as to realize the configuration of the PLD device model.

为了更好地理解本发明,下面对PLD器件模型映射、配置过程进行详细说明,请参见图4,图4为本发明实施例一提供的PLD器件模型的映射配置方法流程示意图,包括:In order to better understand the present invention, the following describes the PLD device model mapping and configuration process in detail. Please refer to FIG. 4 . FIG. 4 is a schematic flowchart of a mapping configuration method for a PLD device model provided in Embodiment 1 of the present invention, including:

S131:将PLD模型文件进行编译,并将编译结果存放于模型编译库中。S131: Compile the PLD model file, and store the compilation result in the model compilation library.

因为PLD模型文件中包含器件模型和算子模型,对器件模型编译后可以得到器件模型的顶层网格模型,并可以将其存放于模型编译库中;对于算子模型,同样可以将其中的各功能模块进行编译并存放于模型编译库中。Because the PLD model file contains the device model and the operator model, the top-level mesh model of the device model can be obtained after compiling the device model, and it can be stored in the model compilation library; for the operator model, each of the The function modules are compiled and stored in the model compilation library.

S132:对PLD实现设计文件进行编译得到目标功能模块实例和网线实例。S132: Compile the PLD implementation design file to obtain the target function module instance and the network cable instance.

对PLD实现设计文件进行编译时,基于其中的描述各目标功能模块的内部实现描述语句得到目标功能模块实例,根据各个功能模块间的连接关系生成网线实例,并根据走线路径描述语句对关键路径进行约束。对PLD实现设计文件编译后得到的目标功能模块实例和网线实例可以存放于工作库(Work Lib)中。网线实例中存在其连接的各个目标功能模块实例的唯一标识,使用走线路径定义语句块进行过约束的网线实例中还会存放其具体走线路径。When compiling the PLD implementation design file, the target function module instance is obtained based on the internal implementation description statement describing each target function module, the network cable instance is generated according to the connection relationship between each function module, and the key path is determined according to the routing path description statement. Constrain. The target function module instance and network cable instance obtained after compiling the PLD implementation design file can be stored in the work library (Work Lib). The network cable instance has the unique identifier of each target function module instance to which it is connected, and the network cable instance that is over-constrained by using the routing path definition statement block will also store its specific routing path.

S133:根据目标功能模块实例从所述模型编译库中找到各自对应的功能模块,并根据各目标功能模块实例的参数对相应功能模块进行配置得到参数配置功能模块。S133: Find the respective corresponding function modules from the model compilation library according to the target function module instance, and configure the corresponding function module according to the parameters of each target function module instance to obtain a parameter configuration function module.

S134:根据所述网线实例及各参数配置功能模块的实现方式,将所述各参数配置功能模块映射到所述顶层网格模型对应的网格上,并按照所述各参数配置功能模块的参数对相应网格上的网格元件进行配置。S134: According to the network cable instance and the implementation manner of each parameter configuration function module, map each parameter configuration function module to a grid corresponding to the top-level grid model, and configure parameters of the function module according to each parameter Configure the mesh elements on the corresponding mesh.

将工作库中的网线实例取出,将PLD器件的顶层网格模型从模型编译库中取出,将各参数配置功能模块映射到所述顶层网格模型对应的特定格点上,并按照当前各参数配置功能模块的配置参数对当前格点元件进行配置。根据取出的网线实例,利用布线算法为每一个网线分配一个合适的走线路径。对于已经定义的特定走线路径则根据所述走线路径进行布线。Take out the network cable instance in the working library, take out the top-level grid model of the PLD device from the model compilation library, map each parameter configuration function module to the specific grid point corresponding to the top-level grid model, and according to the current parameters The configuration parameters of the configuration function module configure the current grid element. According to the network cable instance taken out, use the routing algorithm to assign a suitable routing path to each network cable. For a specific routing path that has been defined, routing is performed according to the routing path.

各参数配置功能模块的具体实现方式可以手动写入PLD实现设计文件中,也可以通过编译软件自动选择。The specific implementation mode of each parameter configuration function module can be manually written into the PLD implementation design file, or can be automatically selected by the compiling software.

S14:遍历提取所述顶层上各格点元件的配置参数生成配置文件。S14: Traversely extract the configuration parameters of each grid element on the top layer to generate a configuration file.

最终通过遍历PLD顶层格点系统中的每一个格点元件,读取其配置信息并写入文件,待所有格点元件配置完成之后,即可生成PLD的配置文件。Finally, by traversing each grid element in the top-level grid system of the PLD, reading its configuration information and writing it to the file, after the configuration of all grid elements is completed, the configuration file of the PLD can be generated.

S15:将所述配置文件写入所述待配置PLD。S15: Write the configuration file into the to-be-configured PLD.

待PLD的配置文件生成后,即可通过写入软件将其写入所述待配置PLD中。写入后还可对其进行运行测试,验证是否达到所要实现的逻辑功能以及稳定性状况。如果没有达到预计效果,则可以通过修改相应的程序文件实现,方便快捷,无需投入较高的设计成本。After the configuration file of the PLD is generated, it can be written into the PLD to be configured by writing software. After writing, it can also be run and tested to verify that the desired logic function and stability are achieved. If the expected effect is not achieved, it can be achieved by modifying the corresponding program files, which is convenient and quick, and does not require high design costs.

本发明实施例提供一种可编程逻辑器件配置方法,通过生成Valence语言格式的包含器件模型和算子模型的PLD模型文件;所述器件模型包括位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现;以及根据待配置PLD所要实现的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的PLD实现设计文件;将所述PLD实现设计文件中的目标功能模块以及连接关系映射到所述PLD模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;遍历提取所述顶层上各格点元件的配置参数生成配置文件;并将所述配置文件写入所述待配置PLD。能够实现对PLD的精确配置过程,有利于设计人员对PLD的开发与测试。由于本发明可以对构成PLD的基本元件进行配置,因此可以实现PLD芯片的资源利用达到最大化,同时,能够灵活设置格点元件的内部结构以及各格点元件之间的连接关系,有效解决对关键路径的精确控制问题。An embodiment of the present invention provides a method for configuring a programmable logic device, by generating a PLD model file in the Valence language format that includes a device model and an operator model; the device model includes a PLD basic element located at the bottom layer and a grid element in the middle layer. and a top-level grid point system, the grid point element is composed of at least one basic element, and the grid point system is composed of at least one grid point element; the operator model includes functional modules for realizing each function, and one function module is composed of grid points. The connection and combination between the basic elements in the point element are realized; and the corresponding target function module is selected from the operator model according to the function to be realized by the PLD to be configured, and the connection relationship between the target function modules is determined to generate A PLD implementation design file in the Valence language format; map the target function modules and connection relationships in the PLD implementation design file to the top layer of the device model in the PLD model file, and perform the corresponding grid elements on the top layer. configuration; traversing and extracting configuration parameters of each grid element on the top layer to generate a configuration file; and writing the configuration file into the to-be-configured PLD. It can realize the precise configuration process of the PLD, which is beneficial to the designer's development and testing of the PLD. Since the present invention can configure the basic elements constituting the PLD, the resource utilization of the PLD chip can be maximized. The problem of precise control of the critical path.

实施例二:Embodiment 2:

本发明实施例提供一种可编程逻辑器件配置设备,用以实现实施例一所述的可编程逻辑器件配置方法。请参照图5,图5为本发明实施例二提供的可编程逻辑器件配置设备的结构示意图,所述可编程逻辑器件配置设备5包括:模型生成模块51、设计生成模块52、处理模块53,其中:An embodiment of the present invention provides a programmable logic device configuration device, which is used to implement the programmable logic device configuration method described in the first embodiment. Please refer to FIG. 5 , which is a schematic structural diagram of a programmable logic device configuration device according to Embodiment 2 of the present invention. The programmable logic device configuration device 5 includes: a model generation module 51 , a design generation module 52 , and a processing module 53 , in:

模型生成模块51,用于生成PLD模型文件,所述PLD模型文件中包含器件模型和算子模型;所述器件模型包括位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现。The model generation module 51 is used to generate a PLD model file, the PLD model file includes a device model and an operator model; the device model includes the PLD basic elements located at the bottom layer, the grid point elements in the middle layer and the grid point system at the top layer , the grid element is composed of at least one basic element, and the grid system is composed of at least one grid element; the operator model includes functional modules for realizing each function, and a functional module is composed of basic elements in the grid element The connection between the combination is realized.

通过模型生成模块51生成的PLD模型文件,也即对待配置PLD进行建模,生成的PLD模型文件中包括器件模型。其中,器件模型包含位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统。底层的基本元件是抽象的最小工作单元,中间层的格点元件由一个或多个基本元件组合连接而成,顶层的格点系统由各格点元件按照一定的规律排布形成。The PLD model file generated by the model generation module 51, that is, the PLD to be configured is modeled, and the generated PLD model file includes the device model. Among them, the device model includes the basic elements of the PLD at the bottom layer, the lattice elements in the middle layer, and the lattice point system at the top layer. The basic element of the bottom layer is the abstract minimum work unit, the grid element of the middle layer is formed by the combination of one or more basic elements, and the grid point system of the top layer is formed by the arrangement of grid elements according to certain rules.

模型生成模块51生成的器件模型中还应当包括唯一标识该器件模型的标识信息、所实现功能的功能参数配置信息以及对应的接口信息。应当理解的是,所述唯一标识该器件模型的标识信息可以是该模型器件的名称;该功能参数配置信息可以根据待配置PLD所实现的逻辑功能具体设定。The device model generated by the model generation module 51 should also include identification information that uniquely identifies the device model, function parameter configuration information of the implemented function, and corresponding interface information. It should be understood that the identification information that uniquely identifies the device model may be the name of the model device; the function parameter configuration information may be specifically set according to the logic function implemented by the PLD to be configured.

在模型生成模块51生成器件模型的过程中,还用于对生成待配置PLD器件模型的各个组件的功能结构进行描述,从而形成完整的器件模型。所述各个组件包括位于底层的PLD基本元件、中间层的格点元件以及顶层的格点系统。In the process of generating the device model by the model generating module 51, it is also used to describe the functional structure of each component for generating the PLD device model to be configured, so as to form a complete device model. The individual components include PLD basic elements on the bottom layer, lattice elements in the middle layer, and lattice point systems on the top layer.

模型生成模块51对各个组件的描述可以从多个方面进行,包括结构描述、配置描述以及图形描述。结构描述用于定义组件的内部结构,例如格点元件由多个基本元件组合连接而成,结构描述中定义了每个基本元件的配置参数值及基本元件之间的连接关系。应当理解的是,由于基本元件是抽象的最小基本单位,所以基本元件不存在结构描述。配置描述用于定义组件的配置点及配置值,由于格点元件在顶层格点系统中的排布是有规律的,所以可以将所有的Config Bit全部规划在格点元件中,这样就可以方便的定位某一个Config Bit在整个PLD器件中的位置。图形描述用于定义组件的图形,主要用于绘图。The description of each component by the model generation module 51 can be carried out from various aspects, including structural description, configuration description and graphic description. The structure description is used to define the internal structure of the component. For example, a grid element is formed by combining and connecting multiple basic elements. The structure description defines the configuration parameter value of each basic element and the connection relationship between the basic elements. It should be understood that since a basic element is an abstract minimum basic unit, there is no structural description of the basic element. The configuration description is used to define the configuration points and configuration values of the component. Since the grid components are arranged regularly in the top-level grid system, all Config Bits can be planned in the grid components, which is convenient The location of a certain Config Bit in the entire PLD device. Graphical description is used to define the graphics of the component, mainly used for drawing.

通过模型生成模块51对待配置的PLD器件进行建模时,所述PLD模型文件中还包含算子模型,所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现,不同的基本元件通过不同的连接方式能够形成不同的功能模块,实现不同的逻辑功能。具体的,所述功能模块包括但不限于加法器、乘法器、比较器、触发器等,均可以称为一个功能模块。When modeling the PLD device to be configured by the model generation module 51, the PLD model file also includes an operator model, and the operator model includes functional modules for realizing each function. The connection and combination between components are realized, and different basic components can form different functional modules through different connection methods to realize different logical functions. Specifically, the functional modules include, but are not limited to, adders, multipliers, comparators, flip-flops, etc., all of which may be referred to as a functional module.

所述功能模块包括用于唯一标识该功能模块的模块标识信息、所实现功能的参数配置信息、对应的接口信息以及实现该功能模块的所有实现方式描述信息。应当说明的是,一个功能模块的特定功能在实现方式上并不是唯一的,可能存在多种不同的实现方式,后续的配置过程可以基于实际使用情景合理选择其中的某种实现方式。The functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and description information of all implementations for implementing the functional module. It should be noted that the specific function of a functional module is not unique in terms of implementation, and there may be multiple implementations, and a certain implementation may be reasonably selected based on the actual usage scenario in the subsequent configuration process.

本实施例中,所述可编程逻辑器件配置设备5还包括设计生成模块52,用于根据待配置PLD的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的PLD实现设计文件。In this embodiment, the programmable logic device configuration device 5 further includes a design generation module 52 for selecting a corresponding target function module from the operator model according to the function of the PLD to be configured, and determining each target function The connection relationship between modules is to generate a PLD implementation design file in Valence language format.

具体的,设计生成模块52可以根据设计所需要实现的功能确定各输入输出接口;对于各目标功能模块,生成描述各目标功能模块的内部实现描述语句;以及根据各目标功能模块的连接关系生成走线路径的描述语句,对关键走线路径进行标识约束。最终生成Valence语言格式的PLD实现设计文件。Specifically, the design generation module 52 can determine each input and output interface according to the functions to be implemented in the design; for each target function module, generate an internal implementation description statement describing each target function module; and generate a route according to the connection relationship of each target function module. The description statement of the line path, which identifies and constrains the key line path. Finally, a PLD implementation design file in Valence language format is generated.

通过设计生成模块52生成的Valence语言格式的PLD实现设计文件主要包含三个语句块:接口定义语句块、内部实现语句块、走线路径定义语句块。The PLD implementation design file in the Valence language format generated by the design generation module 52 mainly includes three statement blocks: an interface definition statement block, an internal implementation statement block, and a routing path definition statement block.

其中,接口定义语句块中包含用于定义设计名称、定义设计的相关参数的描述语句、以及输入输出接口语句;此处的输入输出端口可以简单理解为Verilog语言中module的输入及输出,其主要作用是PLD器件与外部信号的交互,例如输入PLD器件的时钟信号。内部实现语句块中包含设计的内部结构描述语句,具体而言,实例化并连接特定的功能模块以实现相应的功能。编写内部结构时,不仅可以使用现有的功能模块,还可以根据实际需求设计特殊的功能模块,甚至可以直接对格点元件或基本元件进行配置连接,例如可以直接指定功能模块和/或组件在整个待配置PLD中的位置,具体的可以通过格点系统中的各格点坐标来对使用的功能模块和/或组件的位置进行约束。Among them, the interface definition statement block contains description statements for defining the design name, defining the relevant parameters of the design, and input and output interface statements; the input and output ports here can be simply understood as the input and output of the module in the Verilog language. The function is the interaction between the PLD device and external signals, such as the clock signal input to the PLD device. The internal implementation statement block contains the designed internal structure description statement, specifically, instantiate and connect a specific function module to realize the corresponding function. When writing the internal structure, not only the existing function modules can be used, but also special function modules can be designed according to actual needs, and even lattice elements or basic elements can be directly configured and connected, for example, function modules and/or components can be directly specified in The position in the entire PLD to be configured, specifically, the position of the used functional modules and/or components may be constrained by the coordinates of each grid point in the grid point system.

走线路径定义语句块中包含各走线路径的描述语句,用于对该PLD的关键走线路径进行标识约束,实现对关键走线路径的精确控制。本实施例中的关键走线路径可以是任意一个网线(网线可以理解为Verilog语言中的wire,其作用是连接两个功能模块的端口,以实现数据传递),一个网线两端连接的功能模块端口都在内部结构描述语句中确定了,走线路径定义语句只对关键网线的路径进行约束,没有进行约束的网线在后续处理时可采用布线算法进行布线。The routing path definition statement block contains description statements of each routing path, which are used to identify and constrain the key routing paths of the PLD, and realize precise control of the key routing paths. The key routing path in this embodiment can be any network cable (a network cable can be understood as a wire in the Verilog language, and its function is to connect the ports of two functional modules to realize data transmission), a functional module connected at both ends of the network cable The ports are all determined in the internal structure description statement. The routing path definition statement only constrains the path of the key network cables. The network cables that are not constrained can be routed using a routing algorithm in subsequent processing.

本实施例中,通过模型生成模块51生成的PLD模型文件,以及通过设计生成模块52生成的PLD实现设计文件,生成这种文件格式的描述语言可以称之为Valence语言。In this embodiment, the PLD model file generated by the model generation module 51 and the PLD implementation design file generated by the design generation module 52, the description language for generating this file format can be called the Valence language.

处理模块53用于将所述PLD实现设计文件中的目标功能模块以及连接关系映射到所述PLD模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;遍历提取所述顶层上各格点元件的配置参数生成配置文件,将所述配置文件写入所述待配置PLD。The processing module 53 is used to map the target function modules and connection relationships in the PLD implementation design file to the top layer of the device model in the PLD model file, and configure the corresponding lattice elements on the top layer; traverse extraction The configuration parameters of each grid element on the top layer generate a configuration file, and the configuration file is written into the PLD to be configured.

当模型生成模块51生成所述Valence语言格式的PLD模型文件,且设计生成模块52生成所述PLD实现设计文件之后,处理模块53可以读取其中的目标功能模块、相互之间的连接关系以及器件模型中的顶层模型,并将PLD实现设计文件中的目标功能模块以及连接关系映射到PLD模型文件中器件模型的顶层上,从而实现对PLD器件模型进行配置。After the model generation module 51 generates the PLD model file in the Valence language format, and the design generation module 52 generates the PLD implementation design file, the processing module 53 can read the target function modules, the connection between them, and the components. The top-level model in the model, and the target functional modules and connection relationships in the PLD implementation design file are mapped to the top-level of the device model in the PLD model file, so as to realize the configuration of the PLD device model.

其中,所述处理模块53还可以包括编译子模块531和映射子模块532。请参见图6,图6为本发明实施例二提供的另一种可编程逻辑器件配置设备的结构示意图。其中,编译子模块531用于将所述器件模型从底层往顶层的顺序依次编译得到器件模型的顶层网格模型存放于模型编译库中,并将所述算子模型中的各功能模块进行编译后存放于模型编译库中;还用于将所述PLD实现设计文件进行编译得到目标功能模块实例和网线实例。The processing module 53 may further include a compiling sub-module 531 and a mapping sub-module 532 . Please refer to FIG. 6. FIG. 6 is a schematic structural diagram of another programmable logic device configuration device according to Embodiment 2 of the present invention. The compilation sub-module 531 is used to sequentially compile the device model from the bottom layer to the top layer to obtain the top-level grid model of the device model, which is stored in the model compilation library, and compiles each functional module in the operator model. Then, it is stored in the model compilation library; it is also used to compile the PLD implementation design file to obtain the target function module instance and the network cable instance.

编译子模块531在对PLD模型文件进行编译时,由于PLD模型文件中包含器件模型和算子模型,对器件模型编译后可以得到器件模型的顶层网格模型,并可以将其存放于模型编译库中;对于算子模型,编译子模块531同样可以将其中的各功能模块进行编译并存放于模型编译库中。When the compiling submodule 531 compiles the PLD model file, since the PLD model file contains the device model and the operator model, the top-level mesh model of the device model can be obtained after compiling the device model, and can be stored in the model compilation library. For the operator model, the compiling sub-module 531 can also compile each functional module therein and store it in the model compiling library.

编译子模块531对PLD实现设计文件进行编译时,基于其中的描述各目标功能模块的内部实现描述语句得到目标功能模块实例,根据各个功能模块间的连接关系生成网线实例,并根据走线路径描述语句对关键路径进行约束。对PLD实现设计文件编译后得到的目标功能模块实例和网线实例可以存放于工作库中。网线实例中存在其连接的各个目标功能模块实例的唯一标识,使用走线路径定义语句块进行过约束的网线实例中还会存放其具体走线路径。When the compilation sub-module 531 compiles the PLD implementation design file, it obtains an instance of the target function module based on the internal implementation description statement describing each target function module, generates a network cable instance according to the connection relationship between the various function modules, and describes it according to the routing path. Statements constrain the critical path. The target function module instance and network cable instance obtained after compiling the PLD implementation design file can be stored in the work library. The network cable instance has the unique identifier of each target function module instance to which it is connected, and the network cable instance that is over-constrained by using the routing path definition statement block will also store its specific routing path.

应当理解的是,编译子模块531对PLD模型文件和PLD实现设计文件的编译结果并不限于将其存放在模型编译库和工作库中,还可以存放于其他可以存放该编译结果的存储空间内。It should be understood that the compilation result of the PLD model file and the PLD implementation design file by the compilation submodule 531 is not limited to being stored in the model compilation library and the work library, but can also be stored in other storage spaces that can store the compilation result. .

映射子模块532用于根据所述目标功能模块实例从所述模型编译库中找到各自对应的功能模块,并根据各目标功能模块实例的参数对相应功能模块进行配置得到参数配置功能模块;根据所述网线实例及各参数配置功能模块的实现方式,将所述各参数配置功能模块映射到所述顶层网格模型对应的网格上,并按照所述各参数配置功能模块的参数对相应网格上的网格元件进行配置。The mapping submodule 532 is used to find the respective corresponding function modules from the model compilation library according to the target function module instance, and configure the corresponding function module according to the parameters of each target function module instance to obtain the parameter configuration function module; Describe the implementation mode of the network cable instance and each parameter configuration function module, map each parameter configuration function module to the grid corresponding to the top-level grid model, and map the corresponding grid according to the parameters of each parameter configuration function module. on the grid element to configure.

本发明实施例提供一种可编程逻辑器件配置设备5,通过模型生成模块51生成Valence语言格式的PLD模型文件,所述PLD模型文件包含器件模型和算子模型,所述器件模型包括位于底层的基本元件、中间层的格点元件以及顶层的格点系统,所述格点元件由至少一个基本元件组成,所述格点系统由至少一个格点元件组成;所述算子模型包含实现各功能的功能模块,一个功能模块由格点元件内的基本元件之间连接组合实现;设计生成模块52用于根据待配置PLD所要实现的功能从所述算子模型中选择对应的目标功能模块,并确定所述各目标功能模块之间的连接关系以生成Valence语言格式的PLD实现设计文件;处理模块53用于将所述PLD实现设计文件中的目标功能模块以及连接关系映射到所述PLD模型文件中器件模型的顶层上,并对所述顶层上对应的格点元件进行配置;遍历提取所述顶层上各格点元件的配置参数生成配置文件;并将所述配置文件写入所述待配置PLD。通过所述的可编程逻辑器件配置设备,能够实现对PLD的精确配置,有效解决无法对关键路径进行精确控制以及无法达到较大的PLD芯片资源利用率的问题。同时,能够灵活设置格点元件的内部结构以及各格点元件之间的连接关系,有利于设计人员对PLD逻辑功能的开发与测试。The embodiment of the present invention provides a programmable logic device configuration device 5, which generates a PLD model file in the Valence language format through the model generation module 51, where the PLD model file includes a device model and an operator model, and the device model includes a bottom layer. A basic element, a lattice element in the middle layer, and a lattice system in the top layer, the lattice element is composed of at least one basic element, and the lattice system is composed of at least one lattice element; the operator model includes the realization of each function The function module, a function module is realized by the connection and combination between the basic elements in the lattice element; the design generation module 52 is used to select the corresponding target function module from the operator model according to the function to be realized by the PLD to be configured, and Determine the connection relationship between the described target function modules to generate the PLD implementation design file in the Valence language format; the processing module 53 is used to map the target function module and connection relationship in the PLD implementation design file to the PLD model file on the top layer of the middle device model, and configure the corresponding grid elements on the top layer; traverse and extract the configuration parameters of each grid element on the top layer to generate a configuration file; and write the configuration file into the to-be-configured PLD. Through the programmable logic device configuration device, the precise configuration of the PLD can be realized, and the problems that the critical path cannot be accurately controlled and the resource utilization ratio of the PLD chip cannot be achieved effectively can be solved. At the same time, the internal structure of the grid element and the connection relationship between the grid elements can be flexibly set, which is beneficial for designers to develop and test the PLD logic function.

显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(ROM/RAM、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。Obviously, those skilled in the art should understand that each module or each step of the above-mentioned embodiments of the present invention may be implemented by a general-purpose computing device, and they may be centralized on a single computing device, or distributed among multiple computing devices. On the network, they can optionally be implemented with program code executable by a computing device, so that they can be stored in a computer storage medium (ROM/RAM, magnetic disk, optical disk) for execution by the computing device, and in some In some cases, the steps shown or described may be performed in a different order than herein, either by fabricating them separately into individual integrated circuit modules, or by fabricating multiple modules or steps of them into a single integrated circuit module. . Therefore, the present invention is not limited to any particular combination of hardware and software.

以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。The above content is a further detailed description of the embodiments of the present invention in combination with specific embodiments, and it cannot be considered that the specific implementation of the present invention is limited to these descriptions. For those of ordinary skill in the technical field of the present invention, without departing from the concept of the present invention, some simple deductions or substitutions can be made, which should be regarded as belonging to the protection scope of the present invention.

Claims (10)

1. A method for configuring a programmable logic device, comprising:
generating a programmable logic device model file in a Valence language format, wherein the programmable logic device model file comprises a device model and an operator model; the device model comprises basic elements of the programmable logic device at the bottom layer, lattice point elements at the middle layer and a lattice point system at the top layer, wherein the lattice point elements consist of at least one basic element, and the lattice point system consists of at least one lattice point element; the operator model library comprises functional modules for realizing all functions, and one functional module is realized by connecting and combining basic elements in the lattice element;
selecting a corresponding target function module from the operator model according to the function of the programmable logic device to be configured, and determining the connection relation among the target function modules to generate a programmable logic device implementation design file in a Valence language format; generating description sentences of each routing path according to the connection relation, and identifying and constraining the key routing paths;
mapping a target function module and a connection relation in the programmable logic device implementation design file to the top layer of a device model in the programmable logic device model file, and configuring a corresponding lattice point element on the top layer;
traversing and extracting configuration parameters of each lattice point element on the top layer to generate a configuration file;
and writing the configuration file into the programmable logic device to be configured.
2. The programmable logic device configuration method of claim 1, wherein the device model includes identification information for uniquely identifying the device model, functional parameter configuration information of the implemented function, and corresponding interface information;
the lattice element includes configuration description information describing a position, graphic description information performing graphic representation, and structure description information describing an internal structure.
3. The programmable logic device configuration method according to claim 2, wherein the functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and all implementation description information for implementing the functional module.
4. The programmable logic device configuration method of claim 3, wherein said generating a programmable logic device implementation design file comprises:
determining and defining each input/output interface according to the connection relation;
for each target function module, generating an internal implementation description statement describing each target function module to obtain a target function module example;
and generating description sentences of each routing path according to the connection relation, and identifying and constraining the key routing paths to obtain a network cable example.
5. The method for configuring a programmable logic device according to claim 4, wherein mapping the target function module and the connection relation in the implementation design file of the programmable logic device onto the top layer, and configuring the corresponding lattice point element on the top layer comprises:
sequentially compiling the device model from the bottom layer to the top layer to obtain a top layer grid model of the device model, storing the top layer grid model in a model compiling library, and compiling and storing each functional module in the operator model in the model compiling library;
compiling the programmable logic device implementation design file to obtain a target function module example and a network cable example;
finding out respective corresponding functional modules from the model compiling library according to the target functional module examples, and configuring the corresponding functional modules according to the parameters of the target functional module examples to obtain parameter configuration functional modules;
and mapping each parameter configuration function module to a grid corresponding to the top grid model according to the network cable example and the implementation mode of each parameter configuration function module, and configuring grid elements on the corresponding grid according to the parameters of each parameter configuration function module.
6. A programmable logic device configuration apparatus, comprising:
the model generation module is used for generating a programmable logic device model file in a Valence language format, and the programmable logic device model file comprises a device model and an operator model; the device model comprises basic elements of the programmable logic device at the bottom layer, lattice point elements at the middle layer and a lattice point system at the top layer, wherein the lattice point elements consist of at least one basic element, and the lattice point system consists of at least one lattice point element; the operator model library comprises functional modules for realizing all functions, and one functional module is realized by connecting and combining basic elements in the lattice element;
the design generation module is used for selecting a corresponding target function module from the operator model according to the function of the programmable logic device to be configured, and determining the connection relation among the target function modules to generate a programmable logic device implementation design file in a Valence language format; generating description sentences of each routing path according to the connection relation, and identifying and constraining the key routing paths;
the processing module is used for mapping the target function module and the connection relation in the programmable logic device implementation design file to the top layer of the device model in the programmable logic device model file and configuring the corresponding lattice point element on the top layer; and the configuration file is also used for traversing and extracting the configuration parameters of each lattice point element on the top layer to generate a configuration file, and writing the configuration file into the programmable logic device to be configured.
7. The programmable logic device configuration apparatus of claim 6, wherein the device model includes identification information for uniquely identifying the device model, functional parameter configuration information of the implemented function, and corresponding interface information;
the lattice element includes configuration description information describing a position, graphic description information performing graphic representation, and structure description information describing an internal structure.
8. The programmable logic device configuration apparatus of claim 7, wherein the functional module includes module identification information for uniquely identifying the functional module, parameter configuration information of the implemented function, corresponding interface information, and all implementation description information for implementing the functional module.
9. The configuration device of claim 8, wherein the design generation module is configured to determine and define each input/output interface according to the connection relationship, generate, for each target function module, an internal implementation description statement describing each target function module to obtain a target function module instance, generate a description statement describing each routing path according to the connection relationship, and perform identification constraint on a key routing path to obtain a network cable instance.
10. The programmable logic device configuration apparatus of claim 9, wherein the processing module comprises:
the compiling submodule is used for compiling the device models from the bottom layer to the top layer in sequence to obtain top layer grid models of the device models and storing the top layer grid models in a model compiling library, and compiling and storing each functional module in the operator models in the model compiling library; the programmable logic device is also used for compiling the programmable logic device implementation design file to obtain a target function module example and a network cable example;
the mapping submodule is used for finding out the corresponding functional module from the model compiling library according to the target functional module example and configuring the corresponding functional module according to the parameter of each target functional module example to obtain a parameter configuration functional module; and the grid element configuration module is also used for mapping each parameter configuration function module to the grid corresponding to the top grid model according to the network cable example and the implementation mode of each parameter configuration function module, and configuring the grid element on the corresponding grid according to the parameters of each parameter configuration function module.
CN201611068221.8A 2016-11-28 2016-11-28 Programmable logic device configuration method and equipment Active CN106682268B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611068221.8A CN106682268B (en) 2016-11-28 2016-11-28 Programmable logic device configuration method and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611068221.8A CN106682268B (en) 2016-11-28 2016-11-28 Programmable logic device configuration method and equipment

Publications (2)

Publication Number Publication Date
CN106682268A CN106682268A (en) 2017-05-17
CN106682268B true CN106682268B (en) 2020-06-30

Family

ID=58866205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611068221.8A Active CN106682268B (en) 2016-11-28 2016-11-28 Programmable logic device configuration method and equipment

Country Status (1)

Country Link
CN (1) CN106682268B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107944183B (en) * 2017-12-11 2021-07-20 深圳市紫光同创电子有限公司 Method, apparatus, computer equipment and medium for creating FPGA top-level netlist
CN110489344A (en) * 2019-08-02 2019-11-22 Oppo广东移动通信有限公司 Engine test method and Related product
CN113391798B (en) * 2020-03-11 2024-12-31 北京灵汐科技有限公司 A method and system for automatically optimizing configuration generation
CN112039703B (en) * 2020-08-28 2022-04-22 迈普通信技术股份有限公司 Path determining method, device, equipment and readable storage medium
CN112257357B (en) * 2020-09-14 2022-09-13 深圳市紫光同创电子有限公司 Method, device and storage medium for constructing top-level circuit of FPGA chip
CN113255325B (en) * 2021-05-10 2023-05-23 成都微视联软件技术有限公司 Method for automatically calculating content of electronic document

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769107B1 (en) * 2001-12-03 2004-07-27 Lsi Logic Corporation Method and system for implementing incremental change to circuit design
CN101246510B (en) * 2008-02-28 2010-12-29 复旦大学 Programmable logic device hard structure universal modeling method
US8504973B1 (en) * 2010-04-15 2013-08-06 Altera Corporation Systems and methods for generating a test environment and test system surrounding a design of an integrated circuit
CN103019947B (en) * 2012-11-28 2016-02-24 复旦大学 A kind of stratification construction method of fpga chip configuration information model
CN103164228B (en) * 2013-03-29 2015-12-23 北京经纬恒润科技有限公司 A kind of generation method of field programmable gate array program and device
CN105740520A (en) * 2016-01-25 2016-07-06 深圳市同创国芯电子有限公司 FPGA (Field Programmable Gate Array) modeling method and device

Also Published As

Publication number Publication date
CN106682268A (en) 2017-05-17

Similar Documents

Publication Publication Date Title
CN106682268B (en) Programmable logic device configuration method and equipment
US9298865B1 (en) Debugging an optimized design implemented in a device with a pre-optimized design simulation
US9990458B2 (en) Generic design rule checking (DRC) test case extraction
US8686753B1 (en) Partial reconfiguration and in-system debugging
US10860776B1 (en) Printed circuit board (PCB) modular design
US8924913B1 (en) Schematic display of connectivity in an integrated circuit design
CN107315863B (en) Layout optimization method and device, terminal and storage medium
CN105143895A (en) Automated generation of a test class pre-header from an interactive graphical user interface
WO2012063147A1 (en) Circuit visualization using flightlines
US7367006B1 (en) Hierarchical, rules-based, general property visualization and editing method and system
US7584448B1 (en) Constructing a model of a programmable logic device
US10073938B2 (en) Integrated circuit design verification
CN117077616A (en) Circuit generation method, device, equipment and medium based on structure guidance
CN114492282B (en) Signal line layout processing method and device, chip and storage medium
CN116090396B (en) Method for displaying data stream of chip design and related equipment
Kashani et al. Bitfiltrator: A general approach for reverse-engineering Xilinx bitstream formats
US8868396B1 (en) Verification and debugging using heterogeneous simulation models
CN115081389B (en) A printed circuit board wiring inspection method, device, equipment and storage medium
CN113705143A (en) Automatic simulation system and automatic simulation method
US8046206B1 (en) Method and system using subgraph isomorphism to configure hardware resources
JP7062793B2 (en) Circuit wiring storage method, FPGA system and storage medium
CN117807948B (en) Method and device for generating top-level netlist file, computer equipment and storage medium
US9870206B2 (en) Replication structure in a graphical programming language
US10885243B1 (en) Logic partition reporting for integrated circuit design
CN114169081A (en) Method, system, equipment and storage medium for generating ship body region design structure tree

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
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 518000 Guowei R & D building 401, No.015, Gaoxin South 1st Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Ziguang Tongchuang Electronics Co.,Ltd.

Country or region after: China

Address before: 16th Floor, Haowei Technology Building, Science and Technology South Eighth Road, Nanshan District, Shenzhen, Guangdong Province, China

Patentee before: SHENZHEN PANGO MICROSYSTEMS Co.,Ltd.

Country or region before: China