CN117271434B - 现场可编程系统级芯片 - Google Patents
现场可编程系统级芯片 Download PDFInfo
- Publication number
- CN117271434B CN117271434B CN202311514884.8A CN202311514884A CN117271434B CN 117271434 B CN117271434 B CN 117271434B CN 202311514884 A CN202311514884 A CN 202311514884A CN 117271434 B CN117271434 B CN 117271434B
- Authority
- CN
- China
- Prior art keywords
- module
- interface
- architecture
- processing
- chip
- 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
Links
- 238000012545 processing Methods 0.000 claims abstract description 93
- 238000013528 artificial neural network Methods 0.000 claims abstract description 23
- 230000002093 peripheral effect Effects 0.000 claims description 35
- 238000004891 communication Methods 0.000 claims description 20
- 238000013524 data verification Methods 0.000 claims description 4
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 abstract description 6
- 238000000034 method Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004751 neurological system process Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种现场可编程系统级芯片,包括FPGA架构和SoC架构;FPGA架构包括接口资源和调用资源;SoC架构包括处理模块和调试模块;处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;调试模块用于在不启用所述处理模块时,对SoC架构的其他各个模块进行在线调试。通过FPGA架构的接口资源和调用资源与SoC架构之间进行互联,实现两个架构之间的同步访问和异步访问,降低了访问延迟,提高了小数据访问性能;通过对SoC架构的处理模块个性化设计,能够在有效降低NRE和版权费用的同时,提高神经网络和图片的处理效率;如此使得现场可编程系统级芯片的成本较低且运行效率较高,解决了现有现场可编程系统级芯片效率低且成本高的问题。
Description
技术领域
本发明涉及芯片技术领域,特别涉及一种现场可编程系统级芯片。
背景技术
随着半导体芯片技术的发展,集成电路得到了快速的发展。将多种电子元器件进行微小化后进行集成变得到了功能各异的芯片,其中,FPGA(Field Programmable GateArray,现场可编程逻辑门阵列)是一种半定制电路芯片,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点,从而得到了广泛应用;SoC(System on Chip,系统级芯片)是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容,使得处理系统微小化成为可能。
现有的FPGA芯片必须经过编程加载软IP的设计后,使能芯片中的硬核模块,才能正常工作。但由于受到物理实现的局限性,导致FPGA中实现的软IP性能往往要比传统纯ASIC(Application Specific Integrated Circuit,集成电路)中实现的硬IP相差很大。为此,市场上出现了集成硬核SoC IP的FPGA芯片,即,FPSoC(Field Program SoC,现场可编程系统级芯片),一种带有SoC的硬IP的FPGA芯片,其中包括以Xilinx为代表的ZYNQ/ZYNQ-MPSoC/ACAP 等系列产品。FPSoC通过FPGA 软件将原来都在FPGA资源中实现的整体设计,自动切分到SoC 和 FPGA资源中,如此可以在提供灵活可编程资源的同时,提供高性能的SoCIP,从而达到更高的性能与外界进行交互。
然而,以Xilinx为代表的FPSoC由于其主要使用ARM公司提供的CPU core来搭建SoC IP,虽然在性能和生态上的表现都相当不错,但是由于ARM CPU core的NRE(Non-Recurring Engineering,一次性工程费用)和版权费用都比较贵,对于FPGA产品大部分都是资源型设计来说,成本过于高昂。此外,现有的FPSoC中使用的CPU core是通过异步通信方式来实现与FPGA资源进行交换,这种方式资源交换效率不高,成为芯片运行效率的瓶颈问题。
发明内容
本发明的目的在于提供一种现场可编程系统级芯片,以解决现有现场可编程系统级芯片效率低且成本高的问题。
为解决上述技术问题,本发明提供一种现场可编程系统级芯片,包括FPGA架构和SoC架构;
所述FPGA架构包括接口资源和调用资源;所述接口资源用于在软逻辑加载后与所述SoC架构互联以实现通信访问;所述调用资源用于在软逻辑加载后被调用以配合所述SoC架构进行应用;
所述SoC架构包括处理模块、配置模块、调试模块、外设模块、控制模块、存储模块和总线模块;所述处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;所述配置模块用于配置和管理所述SoC架构;所述调试模块用于在不启用所述处理模块时,对所述配置模块、所述外设模块、所述控制模块、所述存储模块和所述总线模块进行在线调试;所述外设模块用于控制外设应用;所述控制模块用于对所述SoC架构的boot进行管理;所述存储模块用于存储软逻辑产生的数据;所述总线模块用于实现所述SoC架构中各个模块之间的通信以及所述SoC架构和所述FPGA架构之间的通信。
可选的,在所述的现场可编程系统级芯片中,所述处理模块包括应用CPU单元、实时CPU单元、综合处理单元;所述应用CPU单元用于进行高性能应用任务处理;所述实时CPU单元用于进行实时任务处理;所述综合处理单元包括神经网络组件和图片处理组件,所述神经网络组件用于对通用的神经网络进行处理,所述图片处理组件用于对jpeg格式的图片进行压缩和解压缩的处理。
可选的,在所述的现场可编程系统级芯片中,所述实时CPU单元包括RSIC-V CPU。
可选的,在所述的现场可编程系统级芯片中,所述接口资源包括可编程接口模块,所述可编程接口模块包括接口0、接口1、接口2、接口3和接口4;所述接口0与所述总线模块相连,用于所述FPGA架构异步访问所述SoC架构;所述接口1与所述总线模块相连,用于所述SoC架构异步访问所述FPGA架构;所述接口2与所述存储模块相连,用于所述FPGA架构异步访问所述存储模块;所述接口3与所述应用CPU单元相连,用于所述FPGA架构异步访问所述应用CPU单元;所述接口4与所述实时CPU单元相连,用于所述SoC架构通过所述实时CPU单元同步访问所述FPGA架构。
可选的,在所述的现场可编程系统级芯片中,所述调用资源包括块随机存取存储器资源、数字信号处理资源、输入输出资源和锁相环资源。
可选的,在所述的现场可编程系统级芯片中,所述配置模块包括安全配置单元和系统配置单元;所述安全配置单元用于处理数据的安全验签和所述FPGA架构需加载的数据推送;所述系统配置单元用于对所述SoC架构进行配置和管理。
可选的,在所述的现场可编程系统级芯片中,所述调试模块包括JTAG接口,所述JTAG接口选用4bit指令寄存器和67bit数据寄存器。
可选的,在所述的现场可编程系统级芯片中,所述外设模块包括外设控制器,所述外设控制器包括CAN、GBE、SD、SDIO、EMMC、USB2.0、SPI、GPIO、I2C、UART。
可选的,在所述的现场可编程系统级芯片中,所述控制模块包括并行的NOR Flash控制器、并行的NAND Flash控制器和QSPI Flash控制器。
可选的,在所述的现场可编程系统级芯片中,所述总线模块包括总线和接口,所述总线为AMBA总线,所述接口为AXI接口和/或AHB接口。
本发明提供的现场可编程系统级芯片,包括FPGA架构和SoC架构;所述FPGA架构包括接口资源和调用资源;所述接口资源用于在软逻辑加载后与所述SoC架构互联以实现通信访问;所述调用资源用于在软逻辑加载后被调用以配合所述SoC架构进行应用;所述SoC架构包括处理模块、配置模块、调试模块、外设模块、控制模块、存储模块和总线模块;所述处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;所述配置模块用于配置和管理所述SoC架构;所述调试模块用于在不启用所述处理模块时,对所述配置模块、所述外设模块、所述控制模块、所述存储模块和所述总线模块进行在线调试;所述外设模块用于控制外设应用;所述控制模块用于对所述SoC架构的boot进行管理;所述存储模块用于存储软逻辑产生的数据;所述总线模块用于实现所述SoC架构中各个模块之间的通信以及所述SoC架构和所述FPGA架构之间的通信。通过FPGA架构的接口资源和调用资源与SoC架构之间进行互联,实现两个架构之间的同步访问和异步访问,降低了访问延迟,提高了小数据访问性能;通过对SoC架构的处理模块个性化设计,能够在有效降低NRE和版权费用的同时,提高神经网络和图片的处理效率;通过对SoC架构的调试模块的个性化设计,能够不启动CPU进行调试,提高调试效率;如此使得现场可编程系统级芯片的成本较低且运行效率较高,解决了现有现场可编程系统级芯片效率低且成本高的问题。
附图说明
图1为本实施例提供的现场可编程系统级芯片的结构示意图;
图2为本实施例提供的现场可编程系统级芯片的具体结构图。
具体实施方式
以下结合附图和具体实施例对本发明提出的现场可编程系统级芯片作进一步详细说明。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。此外,附图所展示的结构往往是实际结构的一部分。特别的,各附图需要展示的侧重点不同,有时会采用不同的比例。
需要说明的是,本发明的说明书和权利要求书及附图说明中的“第一”、“第二”等是用于区别类似的对象,以便描述本发明的实施例,而不用于描述特定的顺序或先后次序,应该理解这样使用的结构在适当情况下可以互换。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本实施例提供一种现场可编程系统级芯片,如图1所示,包括FPGA架构和SoC架构;所述FPGA架构包括接口资源和调用资源;所述接口资源用于在软逻辑加载后与所述SoC架构互联以实现通信访问;所述调用资源用于在软逻辑加载后被调用以配合所述SoC架构进行应用;所述SoC架构包括处理模块、配置模块、调试模块、外设模块、控制模块、存储模块和总线模块;所述处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;所述配置模块用于配置和管理所述SoC架构;所述调试模块用于在不启用所述处理模块时,对所述配置模块、所述外设模块、所述控制模块、所述存储模块和所述总线模块进行在线调试;所述外设模块用于控制外设应用;所述控制模块用于对所述SoC架构的boot进行管理;所述存储模块用于存储软逻辑产生的数据;所述总线模块用于实现所述SoC架构中各个模块之间的通信以及所述SoC架构和所述FPGA架构之间的通信。
本实施例提供的现场可编程系统级芯片,通过FPGA架构的接口资源和调用资源与SoC架构之间进行互联,实现两个架构之间的同步访问和异步访问,降低了访问延迟,提高了小数据访问性能;通过对SoC架构的处理模块个性化设计,能够在有效降低NRE和版权费用的同时,提高神经网络和图片的处理效率;通过对SoC架构的调试模块的个性化设计,能够不启动CPU进行调试,提高调试效率;如此使得现场可编程系统级芯片的成本较低且运行效率较高,解决了现有现场可编程系统级芯片效率低且成本高的问题。
进一步的,在本实施例中,所述处理模块包括应用CPU单元、实时CPU单元、综合处理单元;所述应用CPU单元用于进行高性能应用任务处理;所述实时CPU单元用于进行实时任务处理;所述综合处理单元包括神经网络组件和图片处理组件,所述神经网络组件用于对通用的神经网络进行处理,所述图片处理组件用于对jpeg格式的图片进行压缩和解压缩的处理。
具体的,在本实施例中,如图2所示,应用CPU单元包括Application CPU,其主要担任高性能应用任务处理,速度越高越好。在实际应用中,Application CPU可以选择ARM CPU或者 RSIC-V CPU,一般在28nm的工艺下,其速度可以跑到最高频率1Ghz以上,且能够实现linux SMP+AMP操作系统,兼容软件生态,方便客户进行老项目移植、复用历史代码等操作。
实时CPU单元包括Real Time CPU,其主要担任实时任务处理,包括了本地的指令SRAM和数据SRAM。在实际应用中,Real Time CPU可以选择 RSIC-V CPU,如此,能够在指令读取和数据存储时都不会受到系统数据带宽的影响,确保了实时要求,提高了系统运行效率;此外,RSIC-V CPU核实现的是RTOS或者bare metal操作系统,没有ARM生态的依存要求,因此,与现有技术不同的是,通过引入RSIC-V的CPU核,能够极大降低NRE和版权费用,降低了芯片成本。
以及,在本实施例中,将综合处理单元中的神经网络组件和图片处理组件进行集成,形成NPU+JPU单元,该单元是申请人基于NPU(Neural Process Unit,神经网络处理单元)和JPU(Jpeg Process Unit,图片处理单元)创造性设计的功能模块,主要承担了通用神经网络的处理和jpeg格式的图片的压缩和解压缩的处理。利用NPU+JPU单元,能够加速特殊神经网络的处理速度和jpeg格式的图片的处理速度,进一步提高了系统的运行效率。
进一步的,在本实施例中,所述配置模块包括安全配置单元和系统配置单元;所述安全配置单元用于处理数据的安全验签和所述FPGA架构需加载的数据推送;所述系统配置单元用于对所述SoC架构进行配置和管理。
具体的,在本实施例中,如图2所示,安全配置单元包括Center Security Unit,其能够处理数据的安全验签和FPGA侧需要加载的数据推送。在实际应用中,可以将CenterSecurity Unit划分为Security Management(安全管理)和Device Configuration(设备配置)两个子功能模块,以分别实现数据的安全验签和FPGA侧需要加载的数据推送,如此可以使两个不同的处理过程同步进行,提高系统的运行效率。
以及,系统配置单元包括TOP syscfg,其用于管理系统级配置寄存器、PMU(platform manage unit,平台管理单元)、analog组件(模拟组件)和IO组件(输入输出组件)等。
进一步的,在本实施例中,所述调试模块包括JTAG接口。JTAG接口(Joint TestAction Group,联合测试工作组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。本实施例选用JTAG接口能够在提高芯片通用性的同时降低成本。
具体的,在本实施例中,如图2所示,调试模块包括Debug sys,其是申请人创造性研发的JTAG接口,该JTAG接口选用4bit指令寄存器(IR,Instruction Register)和67bit数据寄存器(DR,Data Register)。通过本申请提供的Debug sys调试模块,能够在CPU不启动的时候,对整个SoC架构的slave设备(包括各个模块,如配置模块、外设模块、控制模块、存储模块和总线模块等)进行在线调试;同时,JTAG接口能够在DFT(Design for Test,可测性设计)的ATE(Automatic Test Equipment,自动测试设备)模式下进行机台测试通路时提供接口支持。
进一步的,在本实施例中,所述外设模块包括外设控制器,所述外设控制器包括CAN、GBE、SD、SDIO、EMMC、USB2.0、SPI、GPIO、I2C、UART。
具体的,在本实施例中,如图2所示,外设模块包括General connectivity,其包括了现有SoC芯片中常用的所有慢速和高速外设,主要包括了CAN、GBE、SD、SDIO、EMMC、USB2.0、SPI、GPIO、I2C、UART等。上述的外设名称均为本领域技术人员所熟知的,此处不再对上述缩写逐一进行解释说明。本实施例配置的多种外设非常有利于基础控制应用,提高了芯片应用的通用性;此外,如果需要进行高级外设应用扩展,也可以直接在FPGA中实现,其具体实现方式为本领域技术人员所熟知的,本申请对此不做赘述。
较佳的,在本实施例中,General connectivity只包括了外设的控制器,不包括相关PHY模块(PHYsical layer,模拟模块),如此可以进一步节约芯片成本。
进一步的,在本实施例中,所述控制模块包括并行的NOR Flash控制器、并行的NAND Flash控制器和QSPI Flash控制器。
具体的,在本实施例中,如图2所示,控制模块包括NVM,其包括并行的NOR Flash控制器、并行的NAND Flash控制器和QSPI Flash控制器,是SoC架构中的所有非易失性存储模块访问控制器。通过NVM,能够方便地对SoC架构boot进行管理。
进一步的,在本实施例中,如图2所示,存储模块包括Memory,其具体划分为OCM单元(on-chip sram,片上静态随机存储器)和DDR单元(Double Data Rate,双倍速率同步动态随机存储器),通过一个静态随机存储器和一个动态随机存储器能够存储来自SoC架构和FPGA结构的软逻辑产生的数据,并能够将存储的数据提供至主动端(Master)进行数据处理。
再进一步的,在本实施例中,所述总线模块包括总线和接口。考虑到方便集成第三方的IP,在本实施例中,所述总线为AMBA总线;以及,考虑到方便SoC架构和FPGA架构之间软逻辑设计的实时通信,在本实施例中,所述接口为AXI接口和/或AHB接口。
具体的,在本实施例中,如图2所示,设置有8个用于内部模块通信的接口,8个通信接口分为5类(接口0-4),即,FPGA_w_SoC接口0-4是FPGA架构和SoC架构直接的互联接口总线。
对应的,在本实施例中,所述FPGA架构的接口资源包括可编程接口模块,所述可编程接口模块包括接口0、接口1、接口2、接口3和接口4;所述接口0与所述总线模块相连,用于所述FPGA架构异步访问所述SoC架构;所述接口1与所述总线模块相连,用于所述SoC架构异步访问所述FPGA架构;所述接口2与所述存储模块相连,用于所述FPGA架构异步访问所述存储模块;所述接口3与所述应用CPU单元相连,用于所述FPGA架构异步访问所述应用CPU单元;所述接口4与所述实时CPU单元相连,用于所述SoC架构通过所述实时CPU单元同步访问所述FPGA架构。
具体的,如图2所示,在本实施例中,可编程接口模块(FPGA PIB资源)是FPGA架构中可编程接口资源,当软逻辑加载后,就可以和SoC架构中的接口互联,进行实际接口通信访问。在本实施例中,FPGA PIB资源有5个接口分别与SoC架构中的接口互联,具体如下:
FPGA_w_SoC 接口0:是FPGA架构软逻辑作为master异步访问SoC架构的slave设备(总线模块),其侧重于控制寄存器访问,数据传输以单笔为主;
FPGA_w_SoC接口1:是SoC架构作为master异步访问FPGA架构软逻辑中的slave设备(FPGA PIB资源),侧重于控制寄存器访问;
FPGA_w_SoC接口2:是FPGA架构软逻辑作为master异步访问SoC架构的存储模块(Memory),侧重于大数据量的高性能访问,数据传输以burst为主;
FPGA_w_SoC 接口3:是FPGA架构软逻辑作为master异步访问SoC架构的应用CPU单元(Application CPU)的一致性memory(寄存器),侧重于数据一致性访问,以提高系统性能;
FPGA_w_SoC接口4:是SoC架构中的实时CPU单元(Real Time CPU)作为master同步访问FPGA架构软逻辑中的slave设备(FPGA PIB资源),侧重于高性能实时访问,解决异步访问瓶颈问题。
通过上述接口的使用配置说明可以得知,本实施例中通过创造性的设置实时CPU单元(Real Time CPU),并通过FPGA_w_SoC接口4,实现SoC架构和FPGA架构之间的同步访问,提高了系统的运行效率。
进一步的,在本实施例中,FPGA架构的调用资源包括块随机存取存储器资源(Block RAM)、数字信号处理资源(DSP)、输入输出资源(IO)和锁相环资源(PLL)等。这些资源在实际应用中都是可以根据实际需求进行编程的资源,在软逻辑加载后,通过调用相关资源以配合SoC架构进行实际应用。
调用资源的具体编程及实现过程为本领域技术人员所熟知的,此处不再赘述。此外,上述的调用资源类型仅以示例说明可能的资源选择,需要说明的是,在不违背本申请主旨前提下的其他调用资源的选择和设置也应当属于本申请的保护范围。
本实施例提供的现场可编程系统级芯片,可以充分利用RSIC-V CPU的廉价、低成本优势,在满足实时性要求的情况下,有效降低芯片设计成本。如果未来RSIC-V生态成熟,完全可以放弃ARM CPU,直接利用RSIC-V来搭建整个FPSoC芯片架构。此外,本实施例提供的现场可编程系统级芯片,引入了Real Time CPU(RSIC-V)和FPGA_w_SoC接口4,实现了同步实时访问,解决了异步访问延迟大的问题,大大提高了对于小数据实时访问场景性能。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可,此外,各个实施例之间不同的部分也可互相组合使用,本发明对此不作限定。
本发明提供的现场可编程系统级芯片,包括FPGA架构和SoC架构;所述FPGA架构包括接口资源和调用资源;所述接口资源用于在软逻辑加载后与所述SoC架构互联以实现通信访问;所述调用资源用于在软逻辑加载后被调用以配合所述SoC架构进行应用;所述SoC架构包括处理模块、配置模块、调试模块、外设模块、控制模块、存储模块和总线模块;所述处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;所述配置模块用于配置和管理所述SoC架构;所述调试模块用于在不启用所述处理模块时,对所述配置模块、所述外设模块、所述控制模块、所述存储模块和所述总线模块进行在线调试;所述外设模块用于控制外设应用;所述控制模块用于对所述SoC架构的boot进行管理;所述存储模块用于存储软逻辑产生的数据;所述总线模块用于实现所述SoC架构中各个模块之间的通信以及所述SoC架构和所述FPGA架构之间的通信。通过FPGA架构的接口资源和调用资源与SoC架构之间进行互联,实现两个架构之间的同步访问和异步访问,降低了访问延迟,提高了小数据访问性能;通过对SoC架构的处理模块个性化设计,能够在有效降低NRE和版权费用的同时,提高神经网络和图片的处理效率;通过对SoC架构的调试模块的个性化设计,能够不启动CPU进行调试,提高调试效率;如此使得现场可编程系统级芯片的成本较低且运行效率较高,解决了现有现场可编程系统级芯片效率低且成本高的问题。
上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (9)
1.一种现场可编程系统级芯片,其特征在于,包括FPGA架构和SoC架构;
所述FPGA架构包括接口资源和调用资源;所述接口资源用于在软逻辑加载后与所述SoC架构互联以实现通信访问;所述调用资源用于在软逻辑加载后被调用以配合所述SoC架构进行应用;
所述SoC架构包括处理模块、配置模块、调试模块、外设模块、控制模块、存储模块和总线模块;所述处理模块用于进行高性能应用任务处理、实时任务处理、神经网络处理和图片处理;所述配置模块用于配置和管理所述SoC架构;所述调试模块用于在不启用所述处理模块时,对所述配置模块、所述外设模块、所述控制模块、所述存储模块和所述总线模块进行在线调试;所述外设模块用于控制外设应用;所述控制模块用于对所述SoC架构的boot进行管理;所述存储模块用于存储软逻辑产生的数据;所述总线模块用于实现所述SoC架构中各个模块之间的通信以及所述SoC架构和所述FPGA架构之间的通信;其中,所述处理模块包括应用CPU单元、实时CPU单元、综合处理单元;所述应用CPU单元用于进行高性能应用任务处理;所述实时CPU单元用于进行实时任务处理;所述综合处理单元包括神经网络组件和图片处理组件,所述神经网络组件用于对通用的神经网络进行处理,所述图片处理组件用于对jpeg格式的图片进行压缩和解压缩的处理。
2.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述实时CPU单元包括RSIC-V CPU。
3.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述接口资源包括可编程接口模块,所述可编程接口模块包括接口0、接口1、接口2、接口3和接口4;所述接口0与所述总线模块相连,用于所述FPGA架构异步访问所述SoC架构;所述接口1与所述总线模块相连,用于所述SoC架构异步访问所述FPGA架构;所述接口2与所述存储模块相连,用于所述FPGA架构异步访问所述存储模块;所述接口3与所述应用CPU单元相连,用于所述FPGA架构异步访问所述应用CPU单元;所述接口4与所述实时CPU单元相连,用于所述SoC架构通过所述实时CPU单元同步访问所述FPGA架构。
4.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述调用资源包括块随机存取存储器资源、数字信号处理资源、输入输出资源和锁相环资源。
5.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述配置模块包括安全配置单元和系统配置单元;所述安全配置单元用于处理数据的安全验签和所述FPGA架构需加载的数据推送;所述系统配置单元用于对所述SoC架构进行配置和管理。
6.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述调试模块包括JTAG接口,所述JTAG接口选用4bit指令寄存器和67bit数据寄存器。
7.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述外设模块包括外设控制器,所述外设控制器包括CAN、GBE、SD、SDIO、EMMC、USB2.0、SPI、GPIO、I2C、UART。
8.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述控制模块包括并行的NOR Flash控制器、并行的NAND Flash控制器和QSPI Flash控制器。
9.根据权利要求1所述的现场可编程系统级芯片,其特征在于,所述总线模块包括总线和接口,所述总线为AMBA总线,所述接口为AXI接口和/或AHB接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311514884.8A CN117271434B (zh) | 2023-11-15 | 2023-11-15 | 现场可编程系统级芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311514884.8A CN117271434B (zh) | 2023-11-15 | 2023-11-15 | 现场可编程系统级芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117271434A CN117271434A (zh) | 2023-12-22 |
CN117271434B true CN117271434B (zh) | 2024-02-09 |
Family
ID=89214566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311514884.8A Active CN117271434B (zh) | 2023-11-15 | 2023-11-15 | 现场可编程系统级芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117271434B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102665049A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院半导体研究所 | 基于可编程视觉芯片的视觉图像处理系统 |
CN104394150A (zh) * | 2014-11-26 | 2015-03-04 | 大连梯耐德网络技术有限公司 | 一种基于硬件重构的拟态安全网络架构的实现系统及方法 |
CN107885694A (zh) * | 2017-10-18 | 2018-04-06 | 广东高云半导体科技股份有限公司 | 一种支持系统级集成电路芯片 |
CN108809864A (zh) * | 2018-06-15 | 2018-11-13 | 中国电子科技集团公司第四十研究所 | 一种基于fpga的多线卡高密度tap交换机 |
CN113485762A (zh) * | 2020-09-19 | 2021-10-08 | 广东高云半导体科技股份有限公司 | 用可配置器件卸载计算任务以提高系统性能的方法和装置 |
CN114428761A (zh) * | 2022-01-18 | 2022-05-03 | 成都信息工程大学 | 一种基于fpga的神经网络编曲方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180046903A1 (en) * | 2016-08-12 | 2018-02-15 | DeePhi Technology Co., Ltd. | Deep processing unit (dpu) for implementing an artificial neural network (ann) |
US10621486B2 (en) * | 2016-08-12 | 2020-04-14 | Beijing Deephi Intelligent Technology Co., Ltd. | Method for optimizing an artificial neural network (ANN) |
US10802992B2 (en) * | 2016-08-12 | 2020-10-13 | Xilinx Technology Beijing Limited | Combining CPU and special accelerator for implementing an artificial neural network |
US20220358332A1 (en) * | 2021-05-07 | 2022-11-10 | Microsoft Technology Licensing, Llc | Neural network target feature detection |
-
2023
- 2023-11-15 CN CN202311514884.8A patent/CN117271434B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102665049A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院半导体研究所 | 基于可编程视觉芯片的视觉图像处理系统 |
CN104394150A (zh) * | 2014-11-26 | 2015-03-04 | 大连梯耐德网络技术有限公司 | 一种基于硬件重构的拟态安全网络架构的实现系统及方法 |
CN107885694A (zh) * | 2017-10-18 | 2018-04-06 | 广东高云半导体科技股份有限公司 | 一种支持系统级集成电路芯片 |
CN108809864A (zh) * | 2018-06-15 | 2018-11-13 | 中国电子科技集团公司第四十研究所 | 一种基于fpga的多线卡高密度tap交换机 |
CN113485762A (zh) * | 2020-09-19 | 2021-10-08 | 广东高云半导体科技股份有限公司 | 用可配置器件卸载计算任务以提高系统性能的方法和装置 |
CN114428761A (zh) * | 2022-01-18 | 2022-05-03 | 成都信息工程大学 | 一种基于fpga的神经网络编曲方法及装置 |
Non-Patent Citations (2)
Title |
---|
基于FPGA的卷积神经网络反向加速设计与实现;孙传猛 等;《传感器与微系统》;第42卷(第8期);107-110 * |
基于FPGA的多卷积神经网络任务实时切换方法;赵子龙;赵毅强;叶茂;;南京大学学报(自然科学)(第02期);167-173 * |
Also Published As
Publication number | Publication date |
---|---|
CN117271434A (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8799728B2 (en) | On-die logic analyzer for semiconductor die | |
Huebner et al. | Real-time LUT-based network topologies for dynamic and partial FPGA self-reconfiguration | |
US6744274B1 (en) | Programmable logic core adapter | |
US20110078525A1 (en) | Method and Apparatus of ATE IC Scan Test Using FPGA-Based System | |
US5706297A (en) | System for adapting maintenance operations to JTAG and non-JTAG modules | |
CN104050146B (zh) | 一种微控制单元mcu芯片 | |
CN203745604U (zh) | 双主控控制器及电子系统 | |
JPH01134541A (ja) | 情報処理装置 | |
US20240095366A1 (en) | Secure boot apparatus and method | |
US20060149958A1 (en) | Code download in a system having multiple integrated circuits with a jtag capability | |
US6792527B1 (en) | Method to provide hierarchical reset capabilities for a configurable system on a chip | |
WO2008093312A1 (en) | On-chip testing | |
US6334198B1 (en) | Method and arrangement for controlling multiply-activated test access port control modules | |
CN105095040A (zh) | 一种芯片调试方法与装置 | |
Benso et al. | HD/sup 2/BIST: a hierarchical framework for BIST scheduling, data patterns delivering and diagnosis in SoCs | |
US6961884B1 (en) | JTAG mirroring circuitry and methods | |
CN117271434B (zh) | 现场可编程系统级芯片 | |
US20040054815A1 (en) | Circuit and/or method for automated use of unallocated resources for a trace buffer application | |
US6834368B2 (en) | Semiconductor integrated circuit including a test facilitation circuit for functional blocks intellectual properties and automatic insertion method of the same test facilitation circuit | |
CN111060807B (zh) | 基于SoC的高速集成电路测试平台及其测试方法 | |
US6550031B1 (en) | Transparently gathering a chips multiple internal states via scan path and a trigger | |
DE102020108216A1 (de) | Verfahren und Vorrichtungen zum Durchführen von Design for Debug über eine Protokollschnittstelle | |
CN107122274A (zh) | 基于fpga重构技术的cpu测试系统及方法 | |
CN113939880A (zh) | 具有并发输入的改进的jtag寄存器 | |
CN115639463A (zh) | 一种基于边界扫描jtag测试系统 |
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 |