资讯
HOME
资讯
正文内容
6713控制nand flash 基于SoC芯片HKS6713的弹载计算机设计
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

基于SoC芯片HKS6713的弹载计算机设计

摘要 :弹载计算机是导弹控制的核心部件。为满足弹载计算机对重量、功耗和可靠性等方面的要求,提出了一种采用SoC芯片HKS6713作为处理器的弹载计算机设计方法。从硬件设计和软件设计两方面进行了说明,并对研制过程中程序分区设计、A/D采集结果修正和隔离保护等关键技术进行了阐述。该计算机具有体积小、功耗低、功能丰富和应用简便等特点,对同类弹载计算机设计具有一定参考价值。文中设计的弹载计算机已经经过各种试验,并在系统中进行了全面测试,达到了系统要求的性能,证明此设计切实可行。

0引言

SoC(System on Chip)是以嵌入式系统为核心,追求产品系统最大包容的集成芯片。SoC固有的单芯片特征可极大提高系统性能,降低系统成本、功耗以及重量和尺寸,随着电子技术的发展,SoC芯片被广泛应用在嵌入式计算机的设计之中。

弹载计算机[1,2]是导弹的核心部件,决定着导弹攻击任务的成败。系统要求某型弹载计算机具备与火控系统配合完成发射流程控制、采集惯性组合及舵机和导引头等部件信息进行制导律计算和对舵机系统进行闭环控制等功能。对外交联接口类型包括GJB289A总线、RS422总线、离散量输入输出和模拟量输入输出等。针对对外交联接口种类多、模拟量采集精度要求高和强实时性等特点,本文介绍了一种以国产SoC芯片HKS6713为处理核心的弹载计算机设计方法,并对设计中的关键技术解决方法进行了重点阐述。

1系统架构

弹载计算机由硬件和软件两部分组成。其中硬件包括处理器模块、离散量模块、模拟量模块和电源模块等4部分。处理器模块用于实现控制律计算、RS422异步串行接口通信、GJB289A总线接口通信等功能,采用SoC芯片+CPLD设计;离散量模块用于实现战斗部类型识别信号、开舱信号和供电指令等信号的采集;模拟量模块用于实现A/D转换及数据锁存、D/A转换等功能;电源模块为任务计算机其他模块和外部舵机伺服供电。软件包括初始化、模拟量输入采集和输出控制、离散量输入采集和输出控制、GJB289A总线收发控制和RS422总线收发控制等。弹载计算机系统架构组成见图1。

2硬件设计

2.1处理器模块设计

处理器模块用于进行制导律计算,实现GJB289A总线和RS422异步串行总线等功能,包括SoC芯片HKS6713处理器及其外围电路、电源转换电路、复位电路、存储器电路、RS232和RS422异步串行接口电路、GJB289A总线接口电路和板间互连总线接口等。

HKS6713是集成了DSP内核[3]、GJB289A协议处理器、429总线控制器、CAN总线控制器、多路UART控制图1弹载计算机系统架构

器、64 KB双口存储器、多路中断控制、舵机计数器、加速度计数器、里程计数器、开关量输入输出和ADC采集等功能的大规模SoC芯片,封装形式为CBGA601,工作温度为-55℃~+125℃。处理器模块使用了HKS6713芯片的DSP内核、GJB289A协议处理器、双口RAM以及多路UART控制器等功能。HKS6713的内核与TI公司TMS320C6713兼容,包含程序存储器、数据存储器、直接存储器访问(DMA)、POWER-DOWN逻辑、外部的图2HKS6713功能结构图存储器接口(EMIF)、MCBSP、MCASP、主机接口、GPIO和TIMER等功能,系统输入时钟频率为40 MHz,在C6713的内部,经倍频后工作时钟最高频率为200 MHz。片内带有256 KB存储器,可作为程序和数据存储器使用,其中64 KB可作为高速CACHE使用,这种结构使得用户程序和数据的容量小于256 KB时,处理器无须频繁访问外部存储器,能够提高系统处理速度。HKS6713功能结构图见图2。

设计中,为SoC芯片配置了外部的Flash和SDRAM存储器,SoC芯片DSP内核与外部存储器通过EMIF总线直接连接, EMIF总线直接支持非同步存储器、SBSRAM和SDRAM等存储器类型无需外部专用控制器,通过配置EMIF寄存器即可实现对这些存储器的支持。DSP内核有多个外部存储器空间[4],每个空间均可独立配置,可支持不同类型存储器,并可通过寄存器设置读写信号的建立、选通、保持时间,以适应各种速度的存储器。本设计中为SoC芯片配置了16 MB Flash芯片作为非易失存储器,用以存储程序及下电后需要保留的数据信息,SoC芯片外部地址空间最多只能直接访问2 MB,因此采用GPIO信号作为Flash芯片的高位地址线,将Flash空间划分为8个页面,程序区与数据区存放在不同页面以提高存储安全性。考虑到DSP内核内部RAM空间较小(256 KB),有一部分还有可能需要划分为CACHE使用,为SoC芯片配置了16 MB SDRAM。

处理器模块使用SoC芯片HKS6713大大简化了电路的设计,仅需在HKS6713芯片外围增加相应的收发器、变压器等芯片,即可完成GJB289A总线、RS422总线接口的设计;通过EMIF总线与SDRAM存储器、Flash存储器完成数据交互功能。

2.2离散量模块设计

离散量模块包括离散量输入和离散量输出两部分,选用CPLD芯片作为模块的控制器,负责与处理器模块间的互联控制,读取输入离散量的状态,确定输出离散量的状态。

为了防止与其他交联设备接口之间相互影响[5],弹载计算机对离散量输入输出电路、RS422串口电路采取了隔离保护设计。离散量输入输出电路的信号属于28 V电源系统,采用光耦隔离;RS422总线收发节点间对共模电压有限制要求,需要进行共地处理,设计时采用五线制,使用隔离型DC/DC电源转换芯片输出为总线电平转换器供电,总线电平转换器与RS422总线上的其他节点共地,总线收发器与协议控制之间使用光耦进行隔离,隔离总线通路对外部的干扰。RS422串口保护电路设计见图3。

2.3模拟量模块设计

模拟量模块在处理器模块控制下,采集来自舵机系统和压力传感器等的模拟量信号,输出模拟量控制舵机舵面[6]。本设计中选用的A/D转换器使用简单、可靠性高,但存在满量程误差较大(典型值±0.38%)的缺点。为了提高A/D转换精度,确保系统性能,采用软件方法对A/D转换结果进行修正。

A/D转换芯片输入与输出的理想状态转换斜率为1,如图4实线所示,但由于增益误差和偏移误差的客观存在,输入输出实际转换斜率与1存在偏差,如图4中虚线所示。图4中斜率k可通过实际测量的A/D转换结果计算获得,如式(1):

k=(y1-y2)/20(1)

图4A/D转换结果修正原理示意调整后的结果由式(2)计算得到:

Ua=(Uts/k)-y0(2)

其中Ua为调整后的结果,Uts为实际测量的A/D转换结果,k为A/D转换结果斜率,y0为输入为0时的误差,即转换偏移。

因A/D芯片中各转换通路相互独立,因此转换斜率k值不相同,设计中将每一路的k值计算出后保存到Flash存储器中的指定位置,采集模拟量时由软件调用该路对应的转换斜率和偏移误差y0,得到修正后的A/D转换结果。经实测,修正后A/D采集误差范围由-50 mV~+50 mV缩小到-10 mV~+10 mV,精度得到大幅提高,满足系统设计要求。

3软件设计

弹载计算机的软件用于实现对系统的控制和自身的测试等功能[7]。包括采集载机火控系统、惯性组件、舵机和导引头的信息,进行制导率结算,发出控制信息,完成对导弹飞行姿态的控制等。设计中针对应用程序代码量大的特点,将应用程序代码分为两类:一类是非时间关键代码,如地面测试、流程控制等函数代码,上电后搬移至SDRAM存储器中执行;另一类是时间关键代码,如飞行控制周期任务等函数,上电后搬移至内部SRAM存储器中执行。解决了代码全部搬至内部SRAM存储器中空间不足的问题和全搬至外部SDRAM存储器中速度不满足控制周期要求的问题。

4总结

本文介绍了一种采用SoC芯片HKS6713作为处理器的弹载计算机,发挥了国产SoC芯片HKS6713功耗低、接口丰富和可靠性高的优点,满足了弹载计算机在性能、体积和处理性能等方面的要求,简化了系统设计难度。根据该设计方案生产的弹载计算机已经随系统进行了各种试验,试验证明,弹载计算机能够有效完成弹上采集、控制的计算任务。目前,弹载控制系统应用广泛,文中设计的弹载计算机具有很高的通用性,能够以很低的成本移植到其他类似的弹载控制系统中。

参考文献

[1] 李方慧,王飞,何佩琨. TMS320C6000系列DSP原理与应用[M]. 北京:电子工业出版社,2005.

[2] 梁晓庚,王伯荣,余志峰,等.空空导弹制导与控制系统设计[M].北京:国防工业出版社,2006.

[3] 左清清,梁争争,范秀峰. 低成本火箭弹弹载计算机的设计[J]. 电子技术,2015,44(1):5759.

[4] 许少尉,刘硕,景德胜. 基于TMS320C6713B的远程软件加载设计与实现[J]. 航空计算技术,2013,43(4):122123.

[5] 谭志宏,景德胜,缑丽敏. 基于DSP的高速AD采集系统设计与实现[J]. 电子技术,2014,42(4):4144.

[6] 于剑超,于相斌,李清亮,等.基于嵌入式计算机的大气数据计算机检查仪的设计[J].微型机与应用,2014,33(17):9294.

[7] 林盈盈,高红,张明珊,等.嵌入式二维码数据无线多点传输系统设计[J].微型机与应用,2014,33(21):4850,53.

高速PCB培训手记

人类工具发明的历史,就是自身解放的历史。面对享誉全球的Cadence公司的Allegro SPB PCB软件,你不得不发出这样的感慨。当人类对电子类消费产品的需求进一步朝高集成度、高速度、超小型化发展时,芯片的工作频率以摩尔定律增加,而其尺寸反而越来越小,这势必要求更高密度、更高速度的PCB板。而高密度、高速度的布线则带来了诸如反射、串绕、EMI等一系列的信号完整性(SI)问题,如果不抑制这些高速问题则可能使原理无误的电路板无法正常工作或达不到预定的工作能力。于是,信号完整性分析与设计成为了最重要的高速PCB板级和系统级分析与设计手段,在硬件电路设计中扮演着越来越重要的作用,它是整个系统是否成功的最后一个关键。国外对PCB的SI较早就十分关注,伟大的美国工程师以它们敏捷的思维、深厚的数学功底、崇高的敬业精神将似乎无法把握的纷繁芜杂的SI问题抽象成系统的数学公式,使之成为一套完整的理论,并贡献了三本伟大的书,它们是Howard W.Johnson的《High-Speed Digital Design–A Handbook of Black Magic》、Stephen H.Hall的《High-Speed Digital System Design》和BrianYang的《Digital Signal Integrity》,这三本被业界誉为经典的PCB圣经必然和它们的作者一样,在人类的IT发展史上留下光辉一笔。而Cadence的SPB系列软件则建立在这些完整的理论体系上,它细致严谨的原理图设计工具、灵活自如的PCB布线器、完整可靠的SI仿真分析功能将PCB工程师从繁重的劳动中解放了出来,与同类软件(protel、powerpcb等)相比,它绝对能以更短的开发周期完成更高质量的PCB设计。

当我使用Cadence公司的SPB软件,一次次被它散射出的智慧光芒所折服,正如在研读《High-Speed Digital Design–A Handbook of Black Magic》时被作者深邃的知识所折服一样。SPB软件完整而庞大,蕴含着一套完整的设计理论,学习和使用它无疑是一个相当艰难的过程,但是技术人员天性对技术的崇拜和渴求使得这种学习过程也成为一种享受,于是乎,痛并快乐着。可叹我伟大的祖国,何时才能在科技领域剑指乾坤,傲视群雄?可叹我智慧的中国人,充满科研的智慧,却没有创造出智慧的科研!

2.原理图

传说中的Capture,Cadence收购自orCAD,作为本次培训讲授的原理图设计软件。为什么选择培训它而不选择Cadence自身研发的Design Entry HDL,Cadence是聪明的。Capture本身拥有庞大的用户群体,其设计思路和低端的protel等又十分相似,学员能更快上手。与protel相比,Capture的优势是明显的,它具备如下特点:

1) 快速的器件建库能力,严谨的器件参数设置

如图1所示,在建立part时,需要指定Part Reference、PCB Footprint和指定其part分成几个部分(是同构还是异构)。也需指定其类型(即class,如图2),类型分为IO、IC和分离元件,这里的class设置会映射到PCB仿真时指定不同类型的model。

part的pin也需指定形状(shape)和电气类型,如图3所示。

反观protel,它没有这样严谨的参数设置,所以protel绘制的工程转化到Cadence工具中后,器件类型全为IC。

在用Capture建立part时,可以一次添加一组pin,点击

即可。

在国际互联网上,可以下载到许多器件的库文件。一些大型的企业则分门别类地将器件库存放在特定的服务器上,由专人管理。

2)绘图灵活方便

当part已经建立并放置在某在原理图后,若需修改该part,无需修改库文件本身,只需要在原理图的该器件上点击右键选择Edit Part(如图4)。

在Capture中,可以直接copy某张原理图到本工程的其它位置或者其它工程,器件编号的排序会在器件放入时自动增加。

Capture是与Cadence的PCB布线工具紧密联系的,可以在原理图中指定某一器件在PCB图里被选中,也可以在PCB中指定某一器件在原理图中被选中。另外,还可以在PCB中对器件按照PCB板上的摆放位置重新排序后将序号反标回原理图中。

3.PCB

Allegro,令人惊奇的布线器,本次培训讲授的PCB设计软件,几乎可以用“神速”来形容。Cadence公司的资深工程师孙皖平曾经在一次吃饭时不经意间提起用Allegro两天内可以布完一个PCB板,我抱以不信任,而这种粗浅的怀疑很快就被事实击地粉碎。当我这个PCB水货用不到一周时间布完了用protel四十天布完的PCB后,我知道两天布完一个普通的PCB板绝不是神话。如果是神话,那么,Cadence创造了神话。而神话,总是被创造。今日,新兴的信息技术渗透入世界的每个角落,在百年前的人类看来,这何尝不是一个神话的世界?当神话般的科技被一次次创造的时候,又有更多的科技神话等待着人类去创造,中国人,需要有勇于创造神话的气慨。

1) 总线布线

在Allegro,选择一组网络为总线,则可以一次布一组线,如图6所示。

2) 自动推挤

有一件事令天下PCB工程师烦恼,那就是先前的线布好后,需要布后面的线时发现先前的线与当前的走线靠得太近,当前的走线无法通过DRC检查。这时,不得不删除先前的线,把先前的线和当前的线布密一些,都挤下。有了Allegro,再也不需要费劲的删除和重绘。在Allegro中直接布当前走线的同时,先前的线会自动挤开,如图7所示。

3) 消耗很小的系统资源

protel的慢是人所共知的,因为其消耗太多的系统资源,在protel的布线过程中,时时蕴藏着死机的危险。面对Allegro这个功能如此强大的布线器,必会以为其布线过程反应很慢。恰恰相反,用Allegro布线基本不需要停滞和等待。Cadence里一群可爱的美国鬼子把图形学和数据库技术玩到了巅峰水平。 4) 规则驱动的布线

规则驱动的布线,即布线在一组规则的监控之下,规规矩矩地走线。高速PCB设计规则通常分两种:物理规则和电气规则。所谓物理规则是指设计工程师指定基于物理尺寸的某些设计规则,比如线宽为4Mil,线与线之间的间距为4Mil,平行走线长度为4Mil等。而电气规则是指有关电特性或者电性能方面的设计规则,如布线延时控制在1ns到2ns之间,某一个PCB线上的串扰总量小于70mV等等。

低端的布线器几乎只能基于物理规则布线,也就是说这些布线器只能够自动满足设计工程师指定的物理尺寸方面的要求,而并不能够直接受高速电气规则所驱动。Allegro则可以支持电气规则驱动布线,电气规则驱动的高速布线器对于确保高速设计信号完整性来说非常重要,设计工程师总是最先得到电气规则而且设计规范也是电气规则,换句话说我们的设计最终必须满足的是电气规则而不是物理规则,最终的物理设计实现满足设计的电气规则要求才是最本质的。

4.SI

通常认为如果数字逻辑电路的频率达到或者超过45MHZ~50MHZ,而且工作在这个频率之上的

电路已经占到了整个电子系统一定的份量(比如说1/3),就称为高速电路。

实际上,信号边沿的谐波频率比信号本身的频率高,是信号快速变化的上升沿与下降沿(或称信号的跳变)引发了信号传输的非预期结果。因此,通常约定如果线传播延时大于1/2数字信号驱动端的上升时间,则认为此类信号是高速信号并产生传输线效应。

信号的传递发生在信号状态改变的瞬间,如上升或下降时间。信号从驱动端到接收端经过一段固定的时间,如果传输时间小于1/2的上升或下降时间,那么来自接收端的反射信号将在信号改变状态之前到达驱动端。反之,反射信号将在信号改变状态之后到达驱动端。如果反射信号很强,叠加的波形就有可能会改变逻辑状态。

由高速信号所导致的SI问题主要有: 传输线效应

PCB板上的走线可等效为图8所示的RLC电路的多次连接。串联电阻的典型值为0.25-0.55 ohms/foot。将寄生电阻、电容和电感加到实际的PCB连线中之后,连线上的最终阻抗称为特征阻抗Zo。线径越宽,距电源/地越近,或隔离层的介电常数越高,特征阻抗就越小。如果传输线和接收端的阻抗不匹配,那么输出的电流信号和信号最终的稳定状态将不同,这就引起信号在接收端产生反射,这个反射信号将传回信号发射端并再次反射回来。随着能量的减弱反射信号的幅度将减小,直到信号的电压和电流达到稳定。这种效应被称为振荡,信号的振荡在信号的上升沿和下降沿经常可以看到。

串扰

信号之间由于电磁场的相互耦合而产生的不期望的噪声电压信号称为信号串扰。串扰超出一定的值将可能引发电路误动作从而导致系统无法正常工作。信号线距离地线越近,线间距越大,产生的串扰信号越小。异步信号和时钟信号更容易产生串扰。因此解决串扰的方法是移开发生串扰的信号或屏蔽被严重干扰的信号。

电磁干扰

EMI(Electro-Magnetic Interference)即电磁干扰,产生的问题包含过量的电磁辐射及对电磁辐射的敏感性两方面。EMI表现为当数字系统加电运行时,会对周围环境辐射电磁波,从而干扰周围环境中电子设备的正常工作。它产生的主要原因是电路工作频率太高以及布局布线不合理。PCB是产生EMI的源头,所以PCB设计直接关系到电子产品的电磁兼容性(EMC)。如果在高速PCB设计中对EMC/EMI予以重视,将有助缩短产品研发周期加快产品上市时间。EMC的三要素为辐射源,传播途径和受害体。传播途径分为空间辐射传播和电缆传导。所以要抑制谐波,首先看看它传播的途径。电源去耦是解决传导方式传播,此外,必要的匹配和屏蔽也是需要的。业界资深工程师李宝龙认为,滤波是解决EMC通过传导途径辐射的一个好办法,除此之外,还可以从干扰源和受害体方面入手考虑。干扰源方面,如果存在反射或Overshoot、undershoot或ringing,可以考虑匹配;另外尽量避免做50%占空比的信号,因为这种信号没有偶次谐波,高频分量更多。受害体方面,可以考虑包地等措施。

Allegro PCB SI 的设计流程包括如下六个步骤:

1) Pre-Placement

2) Solution Space Analysis

3) Constraint-Driven Floorplanning

4) Constraint-Driven Routing

5) Post-Route DRC

6) Post-Route Analysis Pre-Placement

如图9所示先将芯片、接插件等按照设计要求预放置在板上。

Database Setup Advisor

通过Database Setup Advisor可以设置板的层叠方式、DC网络、芯片和接插件的仿真模型等。第一步是定义板的层叠方式,如图10所示。板的层叠中需设置各层的材料、厚度、传输线的线宽、绝缘材料的介电常数、差分传输线的间距,这些因素决定了各层传输线的阻抗。整个层叠的目的是各层的阻抗要连续,而阻抗的值需控制到50-75欧姆的范围内,最好是50欧姆。如果阻抗不连续,则需要进一步修改。

下一步定义DC网络的电位,如图11所示。

下一步定义分离器件和接插件,这些器件由系统创建仿真model,如图12所示

接下来是与仿真关系最紧密的一步,即分配SI仿真模型(如图13),要指定IC的IBIS model, 上一步定义的电阻、电容、I/O等可以由系统创建其仿真模型。

如果芯片厂商提供的IBIS model不完整,则需利用Cadence提供的Model Integrity进行修正,如图14所示。

进行下一步的SI审计后结束Database Setup Advisor过程。

Solution Space Analysis/Constraint-Driven Floorplanning/Constraint-Driven Routing

只有完成上述的过程后,我们才可能提取网络的拓朴,尔后进行仿真反射、串绕和定时等的仿真,图15是我们利用SigXplorer提取的TMS320C6713数据总线中一部分的拓朴。

布线拓朴的不同对信号完整性是有一定影响的。对于一组总线(地址,数据,命令)驱动多达4、5个设备(FLASH、SDRAM等)的情况,在PCB布线时,是总线依次到达各设备,如先连到SDRAM,再到FLASH……还是总线呈星型分布,即从某处分离,分别连到各设备?布线拓扑对信号完整性的影响,主要反映在各个节点上信号到达时刻不一致,反射信号同样到达某节点的时刻不一致,所以造成信号质量恶化。一般来讲,星型拓扑结构,可以通过控制同样长的几个分支,使信号传输和反射时延一致,达到比较好的信号质量。在使用拓扑之间,要考虑到信号拓扑节点情况、实际工作原理和布线难度。不同的Buffer,对于信号的反射影响也不一致,所以星型拓扑并不能很好解决上述数据地址总线连接到FLASH和SDRAM的时延,进而无法确保信号的质量;另一方面,高速的信号一般在DSP和SDRAM之间通信,FLASH加载时的速率并不高,所以在高速仿真时只要确保实际高速信号有效工作的节点处的波形,而无需关注FLASH处波形;星型拓扑比较菊花链等拓扑来讲,布线难度较大,尤其大量数据地址信号都采用星型拓扑时。

我们可以在SigXplorer设置不同的拓朴结构、不同的端接电阻值仿真出信号的波形质量(减缓反射),可以设置不同的平行线长度和间距来仿真获得串绕值并将串绕限制在一定的范围内,并由上述仿真结果获得布线规则,如图17所示,这些规则会自动用于指导布线。从图17可以看出,规则的种类较多。

我们发现,整个规则管理的层次结构是跨平台的,体现在原理图设计到PCB布线、SI分析的整个过程中(如图18)。

Post-Route DRC/Post-Route Analysis

在布线结束后,我们可以利用SI依次点击菜单Analyze > SI/EMI Sim > Probe进行后分析,如图19,这时候的传输线模型是真正的有损传输线模型,包括过孔也被赋予其仿真模型,我们仍然可以进行反射、串绕、定时等的分析看布线结果是否真的符合规则。

5.Bug

Cadence的Allegro SPB是一套Bug丛生的软件。另一套Bug丛生的软件是著名的“瘟酒吧”――Windows 98,然而它们都是世界上最好的软件。我们永远在做1+1的数学题,哪里会有Bug?但终究发现,也许最大的Bug便是没有Bug。

没有Bug丛生软件的民族是悲哀的。

相关问答

qq朋友发来视频怎么转到自己的空间-ZOL问答

xunuo1979很简单,QQ好友发来的视频已经接收了的话上传就可以了。首先登录QQ,进入QQ空间。在发表说说哪里点击下图的图标就可以选择视频上传了。上传之后登...

我是小米手机,为何开机却显示苹果。太奇怪了-ZOL问答

litong19830630都是系统错误造成的,只要更换电池就会好吧.!.有用(0)回复...电脑下载miflash线刷工具和开发版线刷包,手机关机后按住音量下键开机,进入fast...

 marineaquarium3  迪昂维特斯 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部