论文部分内容阅读
摘 要:凭着高集成度和可扩展性以及使用的便利性,可编程融合芯片已广泛应用在众多领域。为避免“卡脖子”技术难题的影响,对国产化替代方案进行了硬件平台的选型和设计,并对平台的启动流程和软件开发流程进行了研究,最终实现了全国产化自主可控通用平台的研制。该平台可作为国外芯片或者CPU+FPGA通常方案的替代选择,满足工业控制、无线通信等多个领域的产品开发需求。
关键词:国产化;PSOC;硬件平台;模块化
中图分类号:TP332 文献标识码:A 文章编号:2096-4706(2020)24-0046-05
Design of a General Hardware Platform Based on Domestic PSOC
CHEN Kun,ZHU Jun
(Guangzhou Haige Communications Group Incorporated Company,Guangzhou 510663,China)
Abstract:With high integration,scalability and ease of use,programmable fusion chip has been widely used in many fields. In order to avoid the influence of the “neck sticking” technical problems,the hardware platform selection and design of the domestic alternative scheme are carried out,and the start-up process and software development process of the platform are studied. Finally,the development of the national independent controllable general platform of industrialization is realized. The platform can be used as an alternative to the common solutions of foreign chips or CPU+FPGA to meet the product development needs of industrial control,wireless communication and other fields.
Keywords:domestic;PSOC;hardware platform;modularization
0 引 言
凭借着高度的集成性、灵活的可扩展性和高性能,可编程融合芯片(PSOC)目前已广泛应用在工业自动化控制、汽车驾驶辅助、医疗成像、机器视觉、无线基带以及航空航天等众多领域。但受国际局势的变化、贸易战和“卡脖子”技术难题的影响,推出国产化的替代方案,实现自主可控已迫在眉睫,国内某公司适时推出了可编程融合PSOC芯片,在单芯片上集成了高性能处理器系统和可编程逻辑,不仅具有FPGA的灵活和可扩展性,同时也兼顾了专用芯片的性能、功耗和易用性。基于该国产化PSOC芯片,本文设计了一种全国产化的通用硬件平台,可实现与国外芯片平台的互换,并且采用模块化设计,便于产品快速开发。
1 平台系统架构
该芯片通过高速片内总线AXI和多个互连控制信号,将高性能处理器(PS)和可编程逻辑(PL)紧密耦合。四核32位高性能处理器CPU最高运行频率可达1 GHz,支持单精度和双精度浮点运算,具有128 kB片上启动BOM和256 kB片上SRAM,单核独立拥有32 kB指令缓存和32 kB数据缓存,可外接DDR3/DDR3L/LPDDR2,具有通用存储器接口,支持10/100/1 000 Mbps以太网和USB高速通信接口,并具有多个通用外设(2×UART,2×CAN2.0,2×I2C,2×SPI,4×32b GPIO,2×SD/SDIO)。可编程逻辑部分可提供高达350 K个逻辑单元,多种片上存储器模块和数字信号处理单元,可满足多样化的接口和系统设计需求。
本文选择该芯片作为通用硬件平台的设计核心,以此开展芯片本身和相关功能模块的设计。在硬件结构上,采用核心板的模块化设计,通过高速板对板连接器与功能底板连接,可做到与国外芯片平台核心板的直接替换。图1是基于该芯片的通用硬件平台系统框图。
2 平台硬件设计
2.1 MIO管脚分配
该芯片处理器系统PS侧I/O有128个,支持HSTL 1.8 V,LVCMOS 1.8 V、2.5 V和3.3 V电平,PL侧可编程I/O有100个,支持1.2~3.3 V电平。根据所属电源域不同,又可划归为bank500、bank501、bank502、bank34和bank35,其中PS侧的复用管脚MIO0~MIO15和MIO16~MIO53分属bank500和bank501,bank502为DDR接口专属电源域,bank34和bank35为PL侧,各自包含24个差分对和2个单端I/O。
基于通用功能开发需求和限于核心板面积,本文主要进行最小系统设计,其他相关管脚通过高速连接器全部引出,便于相关外设功能开发。通过管脚复用表或者借助开发软件可完成MIO管脚的复用配置工作,表1是管脚复用分配表。
2.2 启动模式
启动模式可通过配置MIO2~MIO8管脚的上下拉状态来选择,BootROM支持NAND、NOR、QSPI、SD card、JTAG启动,本文采用常用的QSPI启动,并预留SD卡启动模式,便于调试程序使用。根据启动模式配置表,QSPI启动模式下MIO[5:3]=100。MIO7和MIO8是MIO bank电压配置位,bank500连接QSPI FLASH和EMMC芯片,这两种芯片多是3.3 V供電,所以bank500配置为3.3 V电压,bank501连接以太网PHY芯片,又可扩展出多种外设,考虑到低功耗和多种外设的1.8 V工作电压,bank501配置为1.8 V。配置管脚如图2所示。 2.3 芯片选型
2.3.1 QSPI FLASH
QSPI FLASH主要存储FSBL文件、裸机程序或者Uboot
文件,本文选择兆易创新的32 MB QSPI FLASH GD25Q257D YFG来替换镁光的MT25QL256ABA1EW9-0SIT,二者管脚定义相同,封装兼容,且工作电压均为2.7~3.6 V,支持×1、×2和×4工作模式,但二者所支持的最大时钟频率不同,在初始化QSPI FLASH时要注意相关参数设置。
2.3.2 EMMC
EMMC芯片主要作为QSPI FLASH的补充,存储较大的文件,比如文件系统和用户数据文件。本文选择得一微电子的8 GB EMMC芯片GSE51BSS8GE,该芯片与常用的镁光MTFC8GAKAJCN-4M IT封装兼容,工作电压均为2.7~ 3.6 V,可实现原位替换,并支持-40℃工业级低温使用场景。
2.3.3 DDR3
DDR3芯片选用了两片紫光国芯的HXI15H4G160AF-13K,该芯片和镁光的MT41K256M16HA封装兼容,单片16位512 MB容量,2片组合数据位宽32位,容量1 GB,最高运行速度可达533 MHz。两片DDR3芯片在PCB设计上采用fly-by拓扑模式,并在地址线和控制线上加了VTT端接阻抗匹配,来确保信号完整性。VTT电源芯片选择了株洲电子的XC51200DZA来替换TI的TPS51200DRCT,二者封装兼容,可直接使用。另外,该芯片的DDR管脚ZQ需要接240 Ω1%精度电阻到地,ATO管脚悬空,如图3所示。
2.4 电源设计
分析平台各芯片的电源需求,共有1.0 V、1.8 V、1.5 V和3.3 V四种电压。结合预估的最大电流值,选取株洲电子可输出5 A平均电流的XC9618ASNA作为S400核心1.0 V电源芯片,XC9618是一款集成电感的高效率同步降压模块,尺寸较小5×5 mm,适合在核心板上使用,并具有外部使能控制和PG功能管脚,可配合完成系统的时序控制。图4为1.0 V电源设计。
对其他三种电源最大电流进行预估,并进行归一化设计,选取了株洲电子XC9884QNA作为1.8 V、1.5 V和3.3 V的电源芯片。XC9884是一款集成电感的高效率同步降压模块,尺寸较小3×3 mm,可输出4 A平均电流,输出电压范围0.6 V~VIN,可通过调整分压电阻输出不同电压,还具有外部使能控制和PG功能管脚,方便系统电源时序控制。另外,bank34和bank35的可编程I/O适应宽电压范围,考虑到平台通用性,VCCO_34和VCCO_35分别由两个XC9884芯片单独供电,默认输出3.3 V。图5为VCCO_35的电源设计。
2.5 上电时序设计
按照主芯片的电源上电时序要求,上电次序为1.0 V—1.8 V—1.5 V—3.3 V——VCCIO,本文利用电源芯片的外部使能EN管脚和状态指示PG管脚,设计了电源上电时序,如图6所示。
2.6 以太网芯片选型及设计
以太网接口使用较为广泛,本文在最小系统基础上增加了以太网PHY芯片电路,以满足多数项目的功能需求。该芯片的以太网控制器支持GMII、MII和RGMII等多种PHY芯片接口,但PS部分管脚有限,只支持RGMII接口。RGMII接口与Bank501的MIO16~MIO27管脚复用,Bank501电源设置为1.8 V。基于此,本文选用裕太微电子的YT8521SH作为平台的以太网PHY芯片,实现10/100/1 000 Mbps以太网功能。YT8521SH芯片支持3.3/2.5/1.8 V RGMII接口电平,支持单一3.3 V电源供电,外围器件较少,支持MDI/MDX自适应,速度自适应等,并支持远距离400米传输。该芯片的工作模式、PHY芯片地址以及RGMII接口电平可通过上电配置管脚进行设置。图7为以太网芯片YT8521SH的设计图,芯片地址配置为00001b,RGMII电平设置为1.8 V,与Bank501电平匹配。
3 平台启动流程
该芯片可以看成是有可编程逻辑做外设的四核高性能处理器,所以它的启动过程和传统ARM处理器类似,与FPGA启动完全不同。该芯片的启动过程主要分为三个阶段:(1)阶段1:芯片上电复位或者热复位完成后,在硬件状态机控制下,完成Bootmode pin的采样、等待PLL稳定、load eFuse、memory list和ROM完整性校验等功能,再执行片内BootROM中的只读代码;(2)阶段2:BootROM代码初始化处理器和一些外设后,通过读取BootROM寄存器来确定启动设备,将启动设备的头192 kbyte内容(即first stage bootloader,FSBL),复制到片上OCM中(片上RAM,on-chip RAM),并将控制权交给FSBL;(3)阶段3:FSBL代码会继续初始化处理器,将bitstream写入可编程逻辑,完成FPGA配置(FPGA配置也可在Linux系统启动后做),再将SSBL(Second Stage BootLoader,一般为Uboot)或者裸跑程序复制到内存中,Uboot开始运行,初始化Linux启动环境,最后运行Linux系统。
4 平台软件开发流程
该芯片集成了处理器和可编程逻辑,需要软件设计人员和硬件设计人员协同设计开发,具体流程为:(1)在配套的工具软件Procise上新建工程,添加和配置处理器系统和可编程逻辑相关外设;(2)在Procise里生成顶层HDL文件,添加约束文件,编译生成位流文件system.bit;(3)导出到IAR开发平台,在其环境里编写用户程序实现软硬件协同工作,并编译生成out文件system.out和fsbl.out;(4)在Procise里将fsbl.out、system.bit、system.out幾个文件生成一个BOOT.bin文件;(5)最后把BOOT.bin文件烧写到FLASH中,完成软件开发。
5 结 论
本文基于国产PSoC芯片平台的设计开发,最终实现全国产化自主可控通用平台的研制,经过测试验证,可作为使用国外芯片或者CPU+FPGA通常方案的替代选择,满足工业控制、无线通信、航空航天等多个领域的应用需求。
参考文献:
[1] 刘达,李鑫,徐松艳,等.国产化信息处理平台设计与实现 [J].遥测遥控,2018,39(6):7-12.
[2] 邓肯.基于FPGA和DSP架构的全国产化通用控制接口板硬件设计 [J].电子世界,2019(8):156-157.
[3] 王浩宇.基于兆芯X86架构处理器的国产化CPCI主板设计 [J].机电产品开发与创新,2020,33(1):37-38+45.
[4] 刘豪.基于国产化软件无线电原型系统研究 [J].信息通信,2019(5):162-163.
[5] 宋厚勇,周昊,王闯利.一种基于龙芯处理器的硬件平台 [J].通信与广播电视,2018(4):43-46.
作者简介:陈坤(1985—),男,汉族,安徽阜阳人,工程师,硕士学位,研究方向:卫星通信,电路与系统设计;朱君(1991—),男,汉族,江西新余人,工程师,硕士学位,研究方向:卫星通信,嵌入式开发。
关键词:国产化;PSOC;硬件平台;模块化
中图分类号:TP332 文献标识码:A 文章编号:2096-4706(2020)24-0046-05
Design of a General Hardware Platform Based on Domestic PSOC
CHEN Kun,ZHU Jun
(Guangzhou Haige Communications Group Incorporated Company,Guangzhou 510663,China)
Abstract:With high integration,scalability and ease of use,programmable fusion chip has been widely used in many fields. In order to avoid the influence of the “neck sticking” technical problems,the hardware platform selection and design of the domestic alternative scheme are carried out,and the start-up process and software development process of the platform are studied. Finally,the development of the national independent controllable general platform of industrialization is realized. The platform can be used as an alternative to the common solutions of foreign chips or CPU+FPGA to meet the product development needs of industrial control,wireless communication and other fields.
Keywords:domestic;PSOC;hardware platform;modularization
0 引 言
凭借着高度的集成性、灵活的可扩展性和高性能,可编程融合芯片(PSOC)目前已广泛应用在工业自动化控制、汽车驾驶辅助、医疗成像、机器视觉、无线基带以及航空航天等众多领域。但受国际局势的变化、贸易战和“卡脖子”技术难题的影响,推出国产化的替代方案,实现自主可控已迫在眉睫,国内某公司适时推出了可编程融合PSOC芯片,在单芯片上集成了高性能处理器系统和可编程逻辑,不仅具有FPGA的灵活和可扩展性,同时也兼顾了专用芯片的性能、功耗和易用性。基于该国产化PSOC芯片,本文设计了一种全国产化的通用硬件平台,可实现与国外芯片平台的互换,并且采用模块化设计,便于产品快速开发。
1 平台系统架构
该芯片通过高速片内总线AXI和多个互连控制信号,将高性能处理器(PS)和可编程逻辑(PL)紧密耦合。四核32位高性能处理器CPU最高运行频率可达1 GHz,支持单精度和双精度浮点运算,具有128 kB片上启动BOM和256 kB片上SRAM,单核独立拥有32 kB指令缓存和32 kB数据缓存,可外接DDR3/DDR3L/LPDDR2,具有通用存储器接口,支持10/100/1 000 Mbps以太网和USB高速通信接口,并具有多个通用外设(2×UART,2×CAN2.0,2×I2C,2×SPI,4×32b GPIO,2×SD/SDIO)。可编程逻辑部分可提供高达350 K个逻辑单元,多种片上存储器模块和数字信号处理单元,可满足多样化的接口和系统设计需求。
本文选择该芯片作为通用硬件平台的设计核心,以此开展芯片本身和相关功能模块的设计。在硬件结构上,采用核心板的模块化设计,通过高速板对板连接器与功能底板连接,可做到与国外芯片平台核心板的直接替换。图1是基于该芯片的通用硬件平台系统框图。
2 平台硬件设计
2.1 MIO管脚分配
该芯片处理器系统PS侧I/O有128个,支持HSTL 1.8 V,LVCMOS 1.8 V、2.5 V和3.3 V电平,PL侧可编程I/O有100个,支持1.2~3.3 V电平。根据所属电源域不同,又可划归为bank500、bank501、bank502、bank34和bank35,其中PS侧的复用管脚MIO0~MIO15和MIO16~MIO53分属bank500和bank501,bank502为DDR接口专属电源域,bank34和bank35为PL侧,各自包含24个差分对和2个单端I/O。
基于通用功能开发需求和限于核心板面积,本文主要进行最小系统设计,其他相关管脚通过高速连接器全部引出,便于相关外设功能开发。通过管脚复用表或者借助开发软件可完成MIO管脚的复用配置工作,表1是管脚复用分配表。
2.2 启动模式
启动模式可通过配置MIO2~MIO8管脚的上下拉状态来选择,BootROM支持NAND、NOR、QSPI、SD card、JTAG启动,本文采用常用的QSPI启动,并预留SD卡启动模式,便于调试程序使用。根据启动模式配置表,QSPI启动模式下MIO[5:3]=100。MIO7和MIO8是MIO bank电压配置位,bank500连接QSPI FLASH和EMMC芯片,这两种芯片多是3.3 V供電,所以bank500配置为3.3 V电压,bank501连接以太网PHY芯片,又可扩展出多种外设,考虑到低功耗和多种外设的1.8 V工作电压,bank501配置为1.8 V。配置管脚如图2所示。 2.3 芯片选型
2.3.1 QSPI FLASH
QSPI FLASH主要存储FSBL文件、裸机程序或者Uboot
文件,本文选择兆易创新的32 MB QSPI FLASH GD25Q257D YFG来替换镁光的MT25QL256ABA1EW9-0SIT,二者管脚定义相同,封装兼容,且工作电压均为2.7~3.6 V,支持×1、×2和×4工作模式,但二者所支持的最大时钟频率不同,在初始化QSPI FLASH时要注意相关参数设置。
2.3.2 EMMC
EMMC芯片主要作为QSPI FLASH的补充,存储较大的文件,比如文件系统和用户数据文件。本文选择得一微电子的8 GB EMMC芯片GSE51BSS8GE,该芯片与常用的镁光MTFC8GAKAJCN-4M IT封装兼容,工作电压均为2.7~ 3.6 V,可实现原位替换,并支持-40℃工业级低温使用场景。
2.3.3 DDR3
DDR3芯片选用了两片紫光国芯的HXI15H4G160AF-13K,该芯片和镁光的MT41K256M16HA封装兼容,单片16位512 MB容量,2片组合数据位宽32位,容量1 GB,最高运行速度可达533 MHz。两片DDR3芯片在PCB设计上采用fly-by拓扑模式,并在地址线和控制线上加了VTT端接阻抗匹配,来确保信号完整性。VTT电源芯片选择了株洲电子的XC51200DZA来替换TI的TPS51200DRCT,二者封装兼容,可直接使用。另外,该芯片的DDR管脚ZQ需要接240 Ω1%精度电阻到地,ATO管脚悬空,如图3所示。
2.4 电源设计
分析平台各芯片的电源需求,共有1.0 V、1.8 V、1.5 V和3.3 V四种电压。结合预估的最大电流值,选取株洲电子可输出5 A平均电流的XC9618ASNA作为S400核心1.0 V电源芯片,XC9618是一款集成电感的高效率同步降压模块,尺寸较小5×5 mm,适合在核心板上使用,并具有外部使能控制和PG功能管脚,可配合完成系统的时序控制。图4为1.0 V电源设计。
对其他三种电源最大电流进行预估,并进行归一化设计,选取了株洲电子XC9884QNA作为1.8 V、1.5 V和3.3 V的电源芯片。XC9884是一款集成电感的高效率同步降压模块,尺寸较小3×3 mm,可输出4 A平均电流,输出电压范围0.6 V~VIN,可通过调整分压电阻输出不同电压,还具有外部使能控制和PG功能管脚,方便系统电源时序控制。另外,bank34和bank35的可编程I/O适应宽电压范围,考虑到平台通用性,VCCO_34和VCCO_35分别由两个XC9884芯片单独供电,默认输出3.3 V。图5为VCCO_35的电源设计。
2.5 上电时序设计
按照主芯片的电源上电时序要求,上电次序为1.0 V—1.8 V—1.5 V—3.3 V——VCCIO,本文利用电源芯片的外部使能EN管脚和状态指示PG管脚,设计了电源上电时序,如图6所示。
2.6 以太网芯片选型及设计
以太网接口使用较为广泛,本文在最小系统基础上增加了以太网PHY芯片电路,以满足多数项目的功能需求。该芯片的以太网控制器支持GMII、MII和RGMII等多种PHY芯片接口,但PS部分管脚有限,只支持RGMII接口。RGMII接口与Bank501的MIO16~MIO27管脚复用,Bank501电源设置为1.8 V。基于此,本文选用裕太微电子的YT8521SH作为平台的以太网PHY芯片,实现10/100/1 000 Mbps以太网功能。YT8521SH芯片支持3.3/2.5/1.8 V RGMII接口电平,支持单一3.3 V电源供电,外围器件较少,支持MDI/MDX自适应,速度自适应等,并支持远距离400米传输。该芯片的工作模式、PHY芯片地址以及RGMII接口电平可通过上电配置管脚进行设置。图7为以太网芯片YT8521SH的设计图,芯片地址配置为00001b,RGMII电平设置为1.8 V,与Bank501电平匹配。
3 平台启动流程
该芯片可以看成是有可编程逻辑做外设的四核高性能处理器,所以它的启动过程和传统ARM处理器类似,与FPGA启动完全不同。该芯片的启动过程主要分为三个阶段:(1)阶段1:芯片上电复位或者热复位完成后,在硬件状态机控制下,完成Bootmode pin的采样、等待PLL稳定、load eFuse、memory list和ROM完整性校验等功能,再执行片内BootROM中的只读代码;(2)阶段2:BootROM代码初始化处理器和一些外设后,通过读取BootROM寄存器来确定启动设备,将启动设备的头192 kbyte内容(即first stage bootloader,FSBL),复制到片上OCM中(片上RAM,on-chip RAM),并将控制权交给FSBL;(3)阶段3:FSBL代码会继续初始化处理器,将bitstream写入可编程逻辑,完成FPGA配置(FPGA配置也可在Linux系统启动后做),再将SSBL(Second Stage BootLoader,一般为Uboot)或者裸跑程序复制到内存中,Uboot开始运行,初始化Linux启动环境,最后运行Linux系统。
4 平台软件开发流程
该芯片集成了处理器和可编程逻辑,需要软件设计人员和硬件设计人员协同设计开发,具体流程为:(1)在配套的工具软件Procise上新建工程,添加和配置处理器系统和可编程逻辑相关外设;(2)在Procise里生成顶层HDL文件,添加约束文件,编译生成位流文件system.bit;(3)导出到IAR开发平台,在其环境里编写用户程序实现软硬件协同工作,并编译生成out文件system.out和fsbl.out;(4)在Procise里将fsbl.out、system.bit、system.out幾个文件生成一个BOOT.bin文件;(5)最后把BOOT.bin文件烧写到FLASH中,完成软件开发。
5 结 论
本文基于国产PSoC芯片平台的设计开发,最终实现全国产化自主可控通用平台的研制,经过测试验证,可作为使用国外芯片或者CPU+FPGA通常方案的替代选择,满足工业控制、无线通信、航空航天等多个领域的应用需求。
参考文献:
[1] 刘达,李鑫,徐松艳,等.国产化信息处理平台设计与实现 [J].遥测遥控,2018,39(6):7-12.
[2] 邓肯.基于FPGA和DSP架构的全国产化通用控制接口板硬件设计 [J].电子世界,2019(8):156-157.
[3] 王浩宇.基于兆芯X86架构处理器的国产化CPCI主板设计 [J].机电产品开发与创新,2020,33(1):37-38+45.
[4] 刘豪.基于国产化软件无线电原型系统研究 [J].信息通信,2019(5):162-163.
[5] 宋厚勇,周昊,王闯利.一种基于龙芯处理器的硬件平台 [J].通信与广播电视,2018(4):43-46.
作者简介:陈坤(1985—),男,汉族,安徽阜阳人,工程师,硕士学位,研究方向:卫星通信,电路与系统设计;朱君(1991—),男,汉族,江西新余人,工程师,硕士学位,研究方向:卫星通信,嵌入式开发。