datasheet
超过460,000+ 应用技术资源下载
doc

硬件工程师手册

  • 1星
  • 日期: 2014-03-05
  • 大小: 1.47MB
  • 所需积分:1分
  • 下载次数:11
  • favicon收藏
  • rep举报
  • 分享
  • free评论
标签: 硬件工程师手册

目  录第一章  概述 3第一节  硬件开发过程简介 3§1.1.1  硬件开发的基本过程 4§1.1.2  硬件开发的规范化 4第二节  硬件工程师职责与基本技能 4§1.2.1  硬件工程师职责 4§1.2.1  硬件工程师基本素质与技术 5第二章  硬件开发规范化管理 5第一节  硬件开发流程 5§3.1.1  硬件开发流程文件介绍 5§3.2.2  硬件开发流程详解 6第二节  硬件开发文档规范 9§2.2.1  硬件开发文档规范文件介绍 9§2.2.2  硬件开发文档编制规范详解 10第三节  与硬件开发相关的流程文件介绍 11§3.3.1  项目立项流程: 11§3.3.2  项目实施管理流程: 12§3.3.3  软件开发流程: 12§3.3.4  系统测试工作流程: 12§3.3.5  中试接口流程 12§3.3.6  内部验收流程 13第三章  硬件EMC设计规范 13第一节  CAD辅助设计 14第二节  可编程器件的使用 19§3.2.1  FPGA产品性能和技术参数 19§3.2.2  FPGA的开发工具的使用: 22§3.2.3  EPLD产品性能和技术参数 23§3.2.4  MAX + PLUS II开发工具 26§3.2.5  VHDL语音 33第三节  常用的接口及总线设计 42§3.3.1  接口标准: 42§3.3.2  串口设计: 43§3.3.3  并口设计及总线设计: 44§3.3.4  RS-232接口总线 44§3.3.5  RS-422和RS-423标准接口联接方法 45§3.3.6  RS-485标准接口与联接方法 45§3.3.7  20mA电流环路串行接口与联接方法 47第四节  单板硬件设计指南 48§3.4.1  电源滤波: 48§3.4.2  带电插拔座: 48§3.4.3  上下拉电阻: 49§3.4.4  ID的标准电路 49§3.4.5  高速时钟线设计 50§3.4.6  接口驱动及支持芯片 51§3.4.7  复位电路 51§3.4.8  Watchdog电路 52§3.4.9  单板调试端口设计及常用仪器 53第五节  逻辑电平设计与转换 54§3.5.1  TTL、ECL、PECL、CMOS标准 54§3.5.2  TTL、ECL、MOS互连与电平转换 66第六节  母板设计指南 67§3.6.1  公司常用母板简介 67§3.6.2  高速传线理论与设计 70§3.6.3  总线阻抗匹配、总线驱动与端接 76§3.6.4  布线策略与电磁干扰 79第七节  单板软件开发 81§3.7.1 常用CPU介绍 81§3.7.2 开发环境 82§3.7.3 单板软件调试 82§3.7.4 编程规范 82第八节  硬件整体设计 88§3.8.1  接地设计 88§3.8.2  电源设计 91第九节  时钟、同步与时钟分配 95§3.9.1  时钟信号的作用 95§3.9.2  时钟原理、性能指标、测试 102第十节  DSP技术 108§3.10.1  DSP概述 108§3.10.2  DSP的特点与应用 109§3.10.3  TMS320 C54X  DSP硬件结构 110§3.10.4  TMS320C54X的软件编程 114第四章  常用通信协议及标准 120第一节  国际标准化组织 120§4.1.1  ISO 120§4.1.2  CCITT及ITU-T 121§4.1.3  IEEE 121§4.1.4  ETSI 121§4.1.5  ANSI 122§4.1.6  TIA/EIA 122§4.1.7  Bellcore 122第二节  硬件开发常用通信标准 122§4.2.1  ISO开放系统互联模型 122§4.2.2  CCITT  G系列建议 123§4.2.3  I系列标准 125§4.2.4  V系列标准 125§4.2.5  TIA/EIA 系列接口标准 128§4.2.5  CCITT  X系列建议 130参考文献 132第五章  物料选型与申购 132第一节 物料选型的基本原则 132第二节 IC的选型 134第三节 阻容器件的选型 137第四节 光器件的选用 141第五节 物料申购流程 144第六节 接触供应商须知 145第七节 MRPII及BOM基础和使用 146

硬件工程师手册 目 录 第一章 概述 3 第一节 硬件开发过程简介 3 §1.1.1 硬件开发的基本过程 3 §1.1.2 硬件开发的规范化 4 第二节 硬件工程师职责与基本技能 4 §1.2.1 硬件工程师职责 4 §1.2.1 硬件工程师基本素质与技术 5 第二章 硬件开发规范化管理 5 第一节 硬件开发流程 5 §3.1.1 硬件开发流程文件介绍 5 §3.2.2 硬件开发流程详解 6 第二节 硬件开发文档规范 9 §2.2.1 硬件开发文档规范文件介绍 9 §2.2.2 硬件开发文档编制规范详解 10 第三节 与硬件开发相关的流程文件介绍 11 §3.3.1 项目立项流程: 11 §3.3.2 项目实施管理流程: 12 §3.3.3 软件开发流程: 12 §3.3.4 系统测试工作流程: 12 §3.3.5 中试接口流程 12 §3.3.6 内部验收流程 13 第三章 硬件EMC设计规范 13 第一节 CAD辅助设计 14 第二节 可编程器件的使用 19 §3.2.1 FPGA产品性能和技术参数 19 §3.2.2 FPGA的开发工具的使用: 21 §3.2.3 EPLD产品性能和技术参数 23 §3.2.4 MAX + PLUS II开发工具 25 §3.2.5 VHDL语音 33 第三节 常用的接口及总线设计 42 §3.3.1 接口标准: 42 §3.3.2 串口设计: 43 §3.3.3 并口设计及总线设计: 44 §3.3.4 RS-232接口总线 44 §3.3.5 RS-422和RS-423标准接口联接方法 45 §3.3.6 RS-485标准接口与联接方法 45 §3.3.7 20mA电流环路串行接口与联接方法 47 第四节 单板硬件设计指南 48 §3.4.1 电源滤波: 48 §3.4.2 带电插拔座: 48 §3.4.3 上下拉电阻: 49 §3.4.4 ID的标准电路 49 §3.4.5 高速时钟线设计 50 §3.4.6 接口驱动及支持芯片 51 §3.4.7 复位电路 51 §3.4.8 Watchdog电路 52 §3.4.9 单板调试端口设计及常用仪器 53 第五节 逻辑电平设计与转换 54 §3.5.1 TTL、ECL、PECL、CMOS标准 54 §3.5.2 TTL、ECL、MOS互连与电平转换 66 第六节 母板设计指南 67 §3.6.1 公司常用母板简介 67 §3.6.2 高速传线理论与设计 70 §3.6.3 总线阻抗匹配、总线驱动与端接 76 §3.6.4 布线策略与电磁干扰 79 第七节 单板软件开发 81 §3.7.1 常用CPU介绍 81 §3.7.2 开发环境 81 §3.7.3 单板软件调试 82 §3.7.4 编程规范 82 第八节 硬件整体设计 88 §3.8.1 接地设计 88 §3.8.2 电源设计 91 第九节 时钟、同步与时钟分配 95 §3.9.1 时钟信号的作用 96 §3.9.2 时钟原理、性能指标、测试 102 第十节 DSP技术 108 §3.10.1 DSP概述 108 §3.10.2 DSP的特点与应用 109 §3.10.3 TMS320 C54X DSP硬件结构 110 §3.10.4 TMS320C54X的软件编程 114 第四章 常用通信协议及标准 120 第一节 国际标准化组织 120 §4.1.1 ISO 120 §4.1.2 CCITT及ITU-T 121 §4.1.3 IEEE 121 §4.1.4 ETSI 121 §4.1.5 ANSI 122 §4.1.6 TIA/EIA 122 §4.1.7 Bellcore 122 第二节 硬件开发常用通信标准 122 §4.2.1 ISO开放系统互联模型 122 §4.2.2 CCITT G系列建议 123 §4.2.3 I系列标准 125 §4.2.4 V系列标准 125 §4.2.5 TIA/EIA 系列接口标准 128 §4.2.5 CCITT X系列建议 130 参考文献 132 第五章 物料选型与申购 132 第一节 物料选型的基本原则 132 第二节 IC的选型 134 第三节 阻容器件的选型 137 第四节 光器件的选用 141 第五节 物料申购流程 144 第六节 接触供应商须知 145 第七节 MRPII及BOM基础和使用 146 第一章 概述 第一节 硬件开发过程简介 §1.1.1 硬件开发的基本过程 产品硬件项目的开发,首先是要明确硬件总体需求情况,如CPU处理能力、存储容量及速度,I/O端口的分配、接口要求、电平要求、特殊电路(厚膜等)要求等等。其次,根据需求分析制定硬件总体方案,寻求关键器件及电咱的技术资料、技术途径、技术支持,要比较充分地考虑技术可能性、可靠性以及成本控制,并对开发调试工具提出明确的要求。关键器件索取样品。第三、总体方案确定后,作硬件和单板软件的详细设计,包括绘制硬件原理图、单板软件功能框图及编码、PCB布线,同时完成开发物料清单、新器件编码申请、物料申领。第四,领回PCB板及物料后由焊工焊好1~2块单板,作单板调试,对原理设计中的各功能进行调测,必要时修改原理图并作记录。第五,软硬件系统联调,一般的单板需硬件人员、单板软件人员的配合,特殊的单板(如主机板)需比较大型软件的开发,参与联调的软件人员更多。一般地,经过单板调试后在原理及PCB布线方面有些调整,需第二次投板。第六,内部验收及转中试,硬件项目完成开发过程。 §1.1.2 硬件开发的规范化 上节硬件开发的基本过程应遵循硬件开发流程规范文件执行,不仅如此,硬件开发涉及到技术的应用、器件的选择等,必须遵照相应的规范化措施才能达到质量保障的要求。这主要表现在,技术的采用要经过总体组的评审,器件和厂家的选择要参照物料认证部的相关文件,开发过程完成相应的规定文档,另外,常用的硬件电路(如ID.WDT)要采用通用的标准设计。 第二节 硬件工程师职责与基本技能 §1.2.1 硬件工程师职责 一个技术领先、运行可靠的硬件平台是公司产品质量的基础,硬件工程师职责神圣,责任重大。 1、硬件工程师应勇于尝试新的先进技术之应用,在产品硬件设计中大胆创新。 2、坚持采用开放式的硬件架构,把握硬件技术的主流和未来发展,在设计中考虑将来的技术升级。 3、充分利用公司现有的成熟技术,保持产品技术上的继承性。 4、在设计中考虑成本,控制产品的性能价格比达至最优。 5、技术开放,资源共享,促进公司整体的技术提升。 §1.2.1 硬件工程师基本素质与技术 硬件工程师应掌握如下基本技能: 第一、由需求分析至总体方案、详细设计的设计创造能力; 第二、熟练运用设计工具,设计原理图、EPLD、FPGA调试程序的能力; 第三、运用仿真设备、示波器、逻辑分析仪调测硬件的能力; 第四、掌握常用的标准电路的设计能力,如ID电路、WDT电路、π型滤波电路、高速信号传输线的匹配电路等; 第五、故障定位、解决问题的能力; 第六、文档的写作技能; 第七、接触供应商、保守公司机密的技能。 第二章 硬件开发规范化管理 第一节 硬件开发流程 §3.1.1 硬件开发流程文件介绍 在公司的规范化管理中,硬件开发的规范化是一项重要内容。硬件开发规范化管理是在公司的《硬件开发流程》及相关的《硬件开发文档规范》、《PCB投板流程》等文件中规划的。硬件开发流程是指导硬件工程师按规范化方式进行开发的准则,规范了硬件开发的全过程。硬件开发流程制定的目的是规范硬件开发过程控制,硬件开发质量,确保硬件开发能按预定目的完成。 公司硬件开发流程的文件编号为4/QM-RSD009,生效时间为1997年月21日。 硬件开发流程不但规范化了硬件开发的全过程,同时也从总体上,规定了硬件开发所应完成的任务。做为一名硬件工程师深刻领会硬件开发流程中各项内容,在日常工作中自觉按流程办事,是非常重要的,否则若大一个公司就会走向混乱。所有硬件工程师应把学流程、按流程办事、发展完善流程、监督流程的执行作为自己的一项职责,为公司的管理规范化做出的贡献。 §3.2.2 硬件开发流程详解 硬件开发流程对硬件开发的全过程进行了科学分解,规范了硬件开发的五大任务。 硬件需求分析 硬件系统设计 硬件开发及过程控制 系统联调 文档归档及验收申请。 硬件开发真正起始应在立项后,即接到立项任务书后,但在实际工作中,许多项目在立项前已做了大量硬件设计工作。立项完成后,项目组就已有了产品规格说明书,系统需求说明书及项目总体方案书,这些文件都已进行过评审。项目组接到任务后,首先要做的硬件开发工作就是要进行硬件需求分析,撰写硬件需求规格说明书。硬件需求分析在整个产品开发过程中是非常重要的一环,硬件工程师更应对这一项内容加以重视。 一项产品的性能往往是由软件和硬件共同完成的,哪些是由硬件完成,哪些是由软件完成,项目组必须在需求时加以细致考虑。硬件需求分析还可以明确硬件开发任务。并从总体上论证现在的硬件水平,包括公司的硬件技术水平是否能满足需求。硬件需求分析主要有下列内容。 系统工程组网及使用说明 基本配置及其互连方法 运行环境 硬件整体系统的基本功能和主要性能指标 硬件分系统的基本功能和主要功能指标 功能模块的划分 关键技术的攻关 外购硬件的名称型号、生产单位、主要技术指标 主要仪器设备 内部合作,对外合作,国内外同类产品硬件技术介绍 可靠性、稳定性、电磁兼容讨论 电源、工艺结构设计 硬件测试方案 从上可见,硬件开发总体方案,把整个系统进一步具体化。硬件开发总体设计是最重要的环节之一。总体设计不好,可能出现致命的问题,造成的损失有许多是无法挽回的。另外,总体方案设计对各个单板的任务以及相关的关系进一步明确,单板的设计要以总体设计方案为依据。而产品的好坏特别是系统的设计合理性、科学性、可靠性、稳定性与总体设计关系密切。 硬件需求分析和硬件总体设计完成后,总体办和管理办要对其进行评审。一个好的产品,特别是大型复杂产品,总体方案进行反复论证是不可缺少的。只有经过多次反复论证的方案,才可能成为好方案。 进行完硬件需求分析后,撰写的硬件需求分析书,不但给出项目硬件开发总的任务框架,也引导项目组对开发任务有更深入的和具体的分析,更好地来制定开发计划。 硬件需求分析完成后,项目组即可进行硬件总体设计,并撰写硬件总体方案书。硬件总体设计的主要任务就是从总体上进一步划分各单板的功能以及硬件的总体结构描述,规定各单板间的接口及有关的技术指标。硬件总体设计主要有下列内容: 系统功能及功能指标 系统总体结构图及功能划分 单板命名 系统逻辑框图 组成系统各功能块的逻辑框图,电路结构图及单板组成 单板逻辑框图和电路结构图 关键技术讨论 关键器件 总体审查包括两部分,一是对有关文档的格式,内容的科学性,描述的准确性以及详简情况进行审查。再就是对总体设计中技术合理性、可行性等进行审查。如果评审不能通过,项目组必须对自己的方案重新进行修订。 硬件总体设计方案通过后,即可着手关键器件的申购,主要工作由项目组来完成,计划处总体办进行把关。关键元器件往往是一个项目能否顺利实施的重要目标。 关键器件落实后,即要进行结构电源设计、单板总体设计。结构电源设计由结构室、MBC等单位协作完成,项目组必须准确地把自己的需求写成任务书,经批准后送达相关单位。 单板总体设计需要项目与CAD配合完成。单板总体设计过程中,对电路板的布局、走线的速率、线间干扰以及EMI等的设计应与CAD室合作。CAD室可利用相应分析软件进行辅助分析。单板总体设计完成后,出单板总体设计方案书。总体设计主要包括下列内容: 单板在整机中的的位置:单板功能描述 单板尺寸 单板逻辑图及各功能模块说明 单板软件功能描述 单板软件功能模块划分 接口定义及与相关板的关系 重要性能指标、功耗及采用标准 开发用仪器仪表等 每个单板都要有总体设计方案,且要经过总体办和管理办的联系评审。否则要重新设计。只有单板总体方案通过后,才可以进行单板详细设计。 单板详细设计包括两大部分: 单板软件详细设计 单板硬件详细设计 单板软、硬件详细设计,要遵守公司的硬件设计技术规范,必须对物料选用,以及成本控制等上加以注意。本书其他章节的大部分内容都是与该部分有关的,希望大家在工作中不断应用,不断充实和修正,使本书内容更加丰富和实用。。 不同的单板,硬件详细设计差别很大。但应包括下列部分: 单板整体功能的准确描述和模块的精心划分。 接口的详细设计。 关键元器件的功能描述及评审,元器件的选择。 符合规范的原理图及PCB图。 对PCB板的测试及调试计划。 单板详细设计要撰写单板详细设计报告。 详细设计报告必须经过审核通过。单板软件的详细设计报告由管理办组织审查,而单板硬件的详细设计报告,则要由总体办、管理办、CAD室联合进行审查,如果审查通过,方可进行PCB板设计,如果通不过,则返回硬件需求分析处,重新进行整个过程。这样做的目的在于让项目组重新审查一下,某个单板详细设计通不过,是否会引起项目整体设计的改动。 如单板详细设计报告通过,项目组一边要与计划处配合准备单板物料申购,一方面进行PCB板设计。PCB板设计需要项目组与CAD室配合进行,PCB原理图是由项目组完成的,而PCB画板和投板的管理工作都由CAD室完成。PCB投板有专门的PCB样板流程。PCB板设计完成后,就要进行单板硬件过程调试,调试过程中要注意多记录、总结,勤于整理,写出单板硬件过程调试文档。当单板调试完成,项目组要把单板放到相应环境进行单板硬件测试,并撰写硬件测试文档。如果PCB测试不通过,要重新投板,则要由项目组、管理办、总体办、CAD室联合决定。 在结构电源,单板软硬件都已完成开发后,就可以进行联调,撰写系统联调报告。联调是整机性能提高,稳定的重要环节,认真周到的联调可以发现各单板以及整体设计的不足,也是验证设计目的是否达到的唯一方法。因此,联调必须预先撰写联调计划,并对整个联调过程进行详细记录。只有对各种可能的环节验证到才能保证机器走向市场后工作的可靠性和稳定性。联调后,必须经总体办和管理办,对联调结果进行评审,看是不是符合设计要求。如果不符合设计要求将要返回去进行优化设计。 如果联调通过,项目要进行文件归档,把应该归档的文件准备好,经总体办、管理办评审,如果通过,才可进行验收。 总之,硬件开发流程是硬件工程师规范日常开发工作的重要依据,全体硬件工程师必须认真学习。 第二节 硬件开发文档规范 §2.2.1 硬件开发文档规范文件介绍 为规范硬件开发过程中文档的编写,明确文档的格式和内容,规定硬件开发过程中所需文档清单,与《硬件开发流程》对应制定了《硬件开发文档编制规范》。开发人员在写文档时往往会漏掉一些该写的内容,编制规范在开发人员写文档时也有一定的提示作用。《硬件开发文档编制规范》适用于中央研究部立项项目硬件系统的开发阶段及测试阶段的文档编制。规范中共列出以下文档的规范: 硬件需求说明书 硬件总体设计报告 单板总体设计方案 单板硬件详细设计 单板软件详细设计 单板硬件过程调试文档 单板软件过程调试文档 单板系统联调报告 单板硬件测试文档 单板软件归档详细文档 单板软件归档详细文档 硬件总体方案归档详细文档 硬件单板总体方案归档详细文档 硬件信息库 这些规范的具体内容可在HUAWEI服务器中的“中研部ISO9000资料库”中找到,对应每个文档规范都有相应的模板可供开发人员在写文档时“填空”使用。模块在rndI服务器中的文档管理数据库中。 §2.2.2 硬件开发文档编制规范详解 1、硬件需求说明书 硬件需求说明书是描写硬件开发目标,基本功能、基本配置,主要性能指标、 运行环境,约束条件以及开发经费和进度等要求,它的要求依据是产品规格说明书和系统需求说明书。它是硬件总体设计和制订硬件开发计划的依据, 具体编写的内容有:系统工程组网及使用说明、硬件整体系统的基本功能和主要性能指标、硬件分系统的基本功能和主要性能指标以及功能模块的划分等。 2、硬件总体设计报告 硬件总体设计报告是根据需求说明书的要求进行总体设计后出的报告,它是硬件详细设计的依据。编写硬件总体设计报告应包含以下内容: 系统总体结构及功能划分,系统逻辑框图、组成系统各功能模块的逻辑框图,电路结构图及单板组成,单板逻辑框图和电路结构图,以及可靠性、安全性、电磁兼容性讨论和硬件测试方案等。 3、单板总体设计方案 在单板的总体设计方案定下来之后应出这份文档,单板总体设计方案应包含单板版本号,单板在整机中的位置、开发目的及主要功能,单板功能描述、单板逻辑框图及各功能模块说明,单板软件功能描述及功能模块划分、接口简单定义与相关板的关系,主要性能指标、功耗和采用标准。 4、单板硬件详细设计 在单板硬件进入到详细设计阶段,应提交单板硬件详细设计报告。在单板硬件详细设计中应着重体现:单板逻辑框图及各功能模块详细说明,各功能模块实现方式、地址分配、控制方式、接口方式、存贮器空间、中断方式、接口管脚信号详细定义、时序说明、性能指标、指示灯说明、外接线定义、可编程器件图、功能模块说明、原理图、详细物料清单以及单板测试、调试计划。有时候一块单板的硬件和软件分别由两个开发人员开发,因此这时候单板硬件详细设计便为软件设计者提供了一个详细的指导,因此单板硬件详细设计报告至关重要。尤其是地址分配、控制方式、接口方式、中断方式是编制单板软件的基础,一定要详细写出。 5、单板软件详细设计 在单板软件设计完成后应相应完成单板软件详细设计报告,在报告中应列出完成单板软件的编程语言,编译器的调试环境,硬件描述与功能要求及数据结构等。要特别强调的是:要详细列出详细的设计细节,其中包括中断、主程序、子程序的功能、入口参数、出口参数、局部变量、函数调用和流程图。在有关通讯协议的描述中,应说明物理层,链路层通讯协议和高层通讯协议由哪些文档定义。 6、单板硬件过程调试文档 开发过程中,每次所投PCB板,工程师应提交一份过程文档,以便管理阶层了解进度,进行考评,另外也给其他相关工程师留下一份有参考价值的技术文档。每次所投PCB板时应制作此文档。这份文档应包括以下内容:单板硬件功能模块划分,单板硬件各模块调试进度,调试中出现的问题及解决方法,原始数据记录、系统方案修改说明、单板方案修改说明、器件改换说明、原理图、PCB图修改说明、可编程器件修改说明、调试工作阶段总结、调试进展说明、下阶段调试计划以及测试方案的修改。 7、单板软件过程调试文档 每月收集一次单板软件过程调试文档,或调试完毕(指不满一月)收集,尽可能清楚,完整列出软件调试修改过程。单板软件过程调试文档应当包括以下内容:单板软件功能模块划分及各功能模块调试进度、单板软件调试出现问题及解决、下阶段的调试计划、测试方案修改。 8、单板系统联调报告 在项目进入单板系统联调阶段,应出单板系统联调报告。单板系统联调报告包括这些内容:系统功能模块划分、系统功能模块调试进展、系统接口信号的测试原始记录及分析、系统联调中出现问题及解决、调试技巧集锦、整机性能评估等。 9、单板硬件测试文档 在单板调试完之后,申请内部验收之前,应先进行自测以确保每个功能都能实现,每项指标都能满足。自测完毕应出单板硬件测试文档,单板硬件测试文档包括以下内容:单板功能模块划分、各功能模块设计输入输出信号及性能参数、各功能模块测试点确定、各测试参考点实测原始记录及分析、板内高速信号线测试原始记录及分析、系统I/O口信号线测试原始记录及分析,整板性能测试结果分析。 10、硬件信息库 为了共享技术资料,我们希望建立一个共享资料库,每一块单板都希望将的最有价值最有特色的资料归入此库。硬件信息库包括以下内容:典型应用电路、特色电路、特色芯片技术介绍、特色芯片的使用说明、驱动程序的流程图、源程序、相关硬件电路说明、PCB布板注意事项、单板调试中出现的典型及解决、软硬件设计及调试技巧。 第三节 与硬件开发相关的流程文件介绍 与硬件开发相关的流程主要有下列几个: 项目立项流程 项目实施管理流程 软件开发流程 系统测试工作流程 中试接口流程 内部接收流程 §3.3.1 项目立项流程: 是为了加强立项管理及立项的科学性而制定的。其中包括立项的论证、审核分析,以期做到合理进行开发,合理进行资源分配,并对该立项前的预研过程进行规范和管理。立项时,对硬件的开发方案的审查是重要内容。 §3.3.2 项目实施管理流程: 主要定义和说明项目在立项后进行项目系统分析和总体设计以及软硬件开发和内部验收等的过程和接口,并指出了开发过程中需形成的各种文档。该流程包含着硬件开关、软件开发、结构和电源开发、物料申购并各分流程。 §3.3.3 软件开发流程: 与硬件开发流程相对应的是软件开发流程,软件开发流程是对大型系统软件开发规范化管理文件,流程目的在对软件开发实施有效的计划和管理,从而进一步提高软件开发的工程化、系统化水平,提高XXXX公司软件产品质量和文档管理水平,以保证软件开发的规范性和继承性。软件开发与硬件结构密切联系在一起的。一个系统软件和硬件是相互关联着的。 §3.3.4 系统测试工作流程: 该流程规定了在开发过程中系统测试过程,描述了系统测试所要执行的功能,输入、输出的文件以及有关的检查评审点。它规范了系统测试工作的行为,以提高系统测试的可控性,从而为系统质量保证提供一个重要手段。 项目立项完成,成立项目组的同时要成立对应的测试项目组。在整个开发过程中,测试可分为三个阶段,单元测试、集成测试、系统测试。测试的主要对象为软件系统。 §3.3.5 中试接口流程 中试涉及到中央研究部与中试部开发全过程。中研部在项目立项审核或项目立项后以书面文件通知中试部,中试部以此来确定是否参与该项目的测试及中试准备的相关人选,并在方案评审阶段参与进来对产品的工艺、结构、兼容性及可生产性等问题进行评审,在产品开发的后期,项目组将中试的相关资料备齐,提交《新产品准备中试联络单》,由业务部、总体办、中研计划处审核后,提交中试部进行中试准备,在项目内部验收后转中试,在中试过程中出现的中试问题,由中试部书面通知反馈给项目组,进行设计调整直至中试通过。 由上可见中试将在产品设计到验收后整个过程都将参与,在硬件开发上,也有许多方面要提早与中试进行联系。甚至中试部直接参与有关的硬件开发和测试工程。 §3.3.6 内部验收流程 制定的目的是加强内部验收的规范化管理,加强设计验证的控制,确保产品开发尽快进入中试和生产并顺利推向市场。项目完成开发工作和文档及相关技术资料后,首先准备测试环境,进行自测,并向总体办递交《系统测试报告》及项目验收申请表,总体办审核同意项目验收申请后,要求项目组确定测试项目,并编写《测试项目手册》。测试项目手册要通过总体办组织的评审,然后才组成专家进行验收。 由上可见,硬件开发过程中,必须提前准备好文档及各种技术资料,同时在产品设计时就必须考虑到测试。 第三章 硬件EMC设计规范 引言: 本规范只简绍EMC的主要原则与结论,为硬件工程师们在开发设计中抛砖引玉。 电磁干扰的三要素是干扰源、干扰传输途径、干扰接收器。EMC就围绕这些问题进行研究。最基本的干扰抑制技术是屏蔽、滤波、接地。它们主要用来切断干扰的传输途径。广义的电磁兼容控制技术包括抑制干扰源的发射和提高干扰接收器的敏感度,但已延伸到其他学科领域。 本规范重点在单板的EMC设计上,附带一些必须的EMC知识及法则。在印制电路板设计阶段对电磁兼容考虑将减少电路在样机中发生电磁干扰。问题的种类包括公共阻抗耦合、串扰、高频载流导线产生的辐射和通过由互连布线和印制线形成的回路拾取噪声等。 在高速逻辑电路里,这类问题特别脆弱,原因很多: 1、电源与地线的阻抗随频率增加而增加,公共阻抗耦合的发生比较频繁; 2、信号频率较高,通过寄生电容耦合到步线较有效,串扰发生更容易; 3、信号回路尺寸与时钟频率及其谐波的波长相比拟,辐射更加显著。 4、引起信号线路反射的阻抗不匹配问题。 第一节 CAD辅助设计 一、总体概念及考虑 1、五一五规则,即时钟频率到5MHz或脉冲上升时间小于5ns,则PCB板须采用多层板。 2、不同电源平面不能重叠。 3、公共阻抗耦合问题。 模型: VN1=I2ZG为电源I2流经地平面阻抗ZG而在1号电路感应的噪声电压。 由于地平面电流可能由多个源产生,感应噪声可能高过模电的灵敏度或数电的抗扰度。 解决办法: ①模拟与数字电路应有各自的回路,最后单点接地; ②电源线与回线越宽越好; ③缩短印制线长度; ④电源分配系统去耦。 4、减小环路面积及两环路的交链面积。 5、一个重要思想是:PCB上的EMC主要取决于直流电源线的Z C→∞,好的滤波,L→0,减小发射及敏感。 Z0=L/C=377(d/w) (μr/εr),如果 < 0.1Ω极好。 二、布局 下面是电路板布局准则: 1、 晶振尽可能靠近处理器 2、 模拟电路与数字电路占不同的区域 3、 高频放在PCB板的边缘,并逐层排列 4、 用地填充空着的区域 三、布线 1、电源线与回线尽可能靠近,最好的方法各走一面。 2、为模拟电路提供一条零伏回线,信号线与回程线小与5:1。 3、针对长平行走线的串扰,增加其间距或在走线之间加一根零伏线。 4、手工时钟布线,远离I/O电路,可考虑加专用信号回程线。 5、关键线路如复位线等接近地回线。 6、为使串扰减至最小,采用双面#字型布线。 7、高速线避免走直角。 8、强弱信号线分开。 四、屏蔽 1屏蔽 > 模型: 屏蔽效能SE(dB)=反射损耗R(dB)+吸收损耗A(dB) 高频射频屏蔽的关键是反射,吸收是低频磁场屏蔽的关键机理。 2、工作频率低于1MHz时,噪声一般由电场或磁场引起,(磁场引起时干扰,一般在几百赫兹以内),1MHz以上,考虑电磁干扰。单板上的屏蔽实体包括变压器、传感器、放大器、DC/DC模块等。更大的涉及单板间、子架、机架的屏蔽。 3、静电屏蔽不要求屏蔽体是封闭的,只要求高电导率材料和接地两点。电磁屏蔽不要求接地,但要求感应电流在上有通路,故必须闭合。磁屏蔽要求高磁导率的材料做封闭的屏蔽体,为了让涡流产生的磁通和干扰产生的磁通相消达到吸收的目的,对材料有厚度的要求。高频情况下,三者可以统一,即用高电导率材料(如铜)封闭并接地。 4、对低频,高电导率的材料吸收衰减少,对磁场屏蔽效果不好,需采用高磁导率的材料(如镀锌铁)。 5、磁场屏蔽还取决于厚度、几何形状、孔洞的最大线性尺寸。 6、磁耦合感应的噪声电压UN=jwB.A.coso=jwM.I1,(A为电路2闭合环路时面积;B为磁通密度;M为互感;I1为干扰电路的电流。降低噪声电压,有两个途径,对接收电路而言,B、A和COS0必须减小;对干扰源而言,M和I1必须减小。双绞线是个很好例子。它大大减小电路的环路面积,并同时在绞合的另一根芯线上产生相反的电动势。 7、防止电磁泄露的经验公式:缝隙尺寸 < λmin/20。好的电缆屏蔽层覆视率应为70%以上。 五、接地 1、300KHz以下一般单点接地,以上多点接地,混合接地频率范围50KHz~10MHz。另一种分法是:< 0.05λ单点接地;< 0.05λ多点接地。 2、好的接地方式:树形接地 3、信号电路屏蔽罩的接地。 接地点选在放大器等输出端的地线上。 4、对电缆屏蔽层,L < 0.15λ时,一般均在输出端单点接地。L<0.15λ时,则采用多点接地,一般屏蔽层按0.05λ或0.1λ间隔接地。混合接地时,一端屏蔽层接地,一端通过电容接地。 5、对于射频电路接地,要求接地线尽量要短或者根本不用接线而实现接地。最好的接地线是扁平铜编织带。当地线长度是λ/4波长的奇数倍时,阻抗会很高,同时相当λ/4天线,向外辐射干扰信号。 6、单板内数字地、模拟地有多个,只允许提供一个共地点。 7、接地还包括当用导线作电源回线、搭接等内容。 六、滤波 1、选择EMI信号滤波器滤除导线上工作不需要的高频干扰成份,解决高频电磁辐射与接收干扰。它要保证良好接地。分线路板安装滤波器、贯通滤波器、连接器滤波器。从电路形式分,有单电容型、单电感型、L型、π型。π型滤波器通带到阻带的过渡性能最好,最能保证工作信号质量。 一个典型信号的频谱: 2、选择交直流电源滤波器抑制内外电源线上的传导和辐射干扰,既防止EMI进入电网,危害其它电路,又保护设备自身。它不衰减工频功率。DM(差摸)干扰在频率 < 1MHz时占主导地位。CM在 > 1MHz时,占主导地位。 3、使用铁氧体磁珠安装在元件的引线上,用作高频电路的去耦,滤波以及寄生振荡的抑制。 4、尽可能对芯片的电源去耦(1-100nF),对进入板极的直流电源及稳压器和DC/DC转换器的输出进行滤波(uF)。 Cmin≈△I△t/△Vmax △Vmax一般取2%的干扰电平。 注意减小电容引线电感,提高谐振频率,高频应用时甚至可以采取四芯电容。电容的选取是非常讲究的问题,也是单板EMC控制的手段。 七、其它 单板的干扰抑制涉及的面很广,从传输线的阻抗匹配到元器件的EMC控制,从生产工艺到扎线方法,从编码技术到软件抗干扰等。一个机器的孕育及诞生实际上是EMC工程。最主要需要工程师们设计中注入EMC意识。 第二节 可编程器件的使用 §3.2.1 FPGA产品性能和技术参数 一、FPGA概念: 用户现场可编程门阵列——FPGA器件(Field Programmable Gate Array)是八十年代中期出现的新概念,是一种可由用户自行定义配置的高容量密度的专用集成电路(ASIC)。FPGA概念由美国Xilinx公司首创,成为九十年代集成电路产业销售额增长速率最快的产品。 与EPLD器件(Erasable Programmable Logic Devices)相比,FPGA主要具有下述特点: 1)EPLD器件为逻辑块级可编程,而FPGA为逻辑门级可编程。 EPLD器件由不同个数的宏单元(Macrocell)组合而成,宏单元作为一个整体,其内部连线相对固定,因此其编程灵活性及逻辑容量均受到限制。FPGA为门级可编程,其编程灵活性与内部逻辑容量远大于EPLD。 2)FPGA器件集成度高,阵列引脚数多,功耗低。 3)FPGA器件具有用户现场可编程的优越特性。 由于FPGA的现场可编程特性,其在线的电路调试与修改不须将FPGA从电路板中取出,因此能以多种封装形式(如PQFP、TQFP、BGA等)减小体积,增加引脚数量。而EPLD须用专门的编程器擦写,因而通常为PLCC封装,体积大,引脚相对较少。 4)EPLD器件为EPROM-base而FPGA为SRAM-base。 5)与EPLD器件相比较,FPGA的时延较难控制。 二、FPGA的基本结构与基本工作原理: 1、FPGA的组成与结构: CLB:Configurable Logic Block IOB:Input/Output Block PIC:Programmable Interconnect SRAM阵列 内部晶体振荡器 2、FPGA的结构特点: 1)FPGA内部为逻辑单元阵列(LCA:Logic Cell Array)结构: 在FPGA中,CLB作为逻辑组件的基本单元,通过一定的内部连线连接在一起以综合阵列中的逻辑功能,形成LCA结构。CLB为门级结构,但LCA对用户而言表现为逻辑块的特性,使得LCA具有一个极强的逻辑解来实现优化的高密度门阵列。 2)FPGA内部逻辑功能的配置是基于内部阵列分布的SRAM原理: FPGA器件的编程实现,实际上是由加载于其内部阵列分部的SRAM上的配置数据决定和控制各个CLB、IOB的逻辑功能及PIC之间的互连关系。因此,允许LCA靠简单的加载新的数据进行配置SRAM单元,从而实现芯片新的逻辑配置。通过加载不同的配置数据,芯片逻辑功能可不断更新,反复使用。 3、FPGA的基本工作原理: 1)FPGA的工作模式: FPGA的工作模式有主动模式、周边模式和从动模式三种。不同的工作模式可通过模式选择控制位来控制。 A、主动模式: 在主动模式下,LCA自动地从外部PROM或EPROM加载配置的程序数据。主动模式又可分类如下: 主动并行低地址模式 主动并行模式 主动并行高地址模式 主动串行模式 并行模式中,在相应的时钟控制下,配置数据并行地进入FPGA器件,在内部再变成串行。为了能使LCA与其它器件分享外部存储器,占用不同的地址段,LCA在主动并行模式下提供高、低地址两种模式,使得LCA按不同的顺序产生地址信号。其中高地址模式是从高地址向低地址读数,低地址模式是从低地址向高地址读数。 串行模式中,在相应的时钟信号控制下,配置数据串行地由外部的PROM器件进入LCA的内部存储区。 当单片FPGA不足以定义数字系统完整的逻辑功能时,可以采用多个FPGA芯片,以一定的格式相互连接,分部定义,从而总合地完成整个系统的功能。这种链连的电路方式构成菊花链。在这种情况下,第一片FPGA应选择主动模式,作为其它链连的FPGA的数据源且控制从动器件。 B、周边模式: 周边模式提供一个简单的接口,通过该接口,FPGA器件可作为一个周边设备,由微处理器直接加载配置,数据以串行方式输入FPGA。当系统使用多个FPGA器件时,每个器件可选定微处理器数据总线的一个数据位,这样多个器件就可在微处理器每一个写周期同时加载,这种“宽边”加载方法提供了一个非常简单而又高效的多器件同时加载的实现途径。 C、从动模式: 处于从动模式的FPGA,在加载过程中数据及与其同步的时钟均由外部电路提供。通常,从动模式用于对菊花链上的后接器件的配置,每个从器件的数据均由链上的上一个器件提供,时钟由首器件提供。 2)FPGA的工作原理: FPGA设计的主要目的在于实现应用系统的逻辑设计,通过相应的FPGA开发系统将逻辑关系转换成一定格式的FPGA芯片配置数据,并基于一定的配置工作模式,将数据配置于芯片内部的SRAM点阵,从而使芯片成为具有一定逻辑功能的单片系统。 FPGA的工作模式由模式配置引脚M0、M1、M2配置,系统上电后LCA自动开始进行初始化操作,通过复位FPGA,系统首先清除LCA芯片内部的SRAM存储器,作好配置准备。当LCA被初始化并正确判断其配置模式后,配置数据开始被加载。在数据配置过程中,配置数据以固定的格式传输,数据流均由一串行引导数据引导,且配置数据按帧传输。数据在LCA内部串行并转换成数据字,然后被并行地写入内部配置存储器阵列。在多个LCA器件菊花链接时,当第一个器件配置数据加载完毕,其DOUT输出将继续允许其它数据通过并加载于下一个器件。数据加载完成后,FPGA从数据配置向用户定义的逻辑功能与操作转移,系统启动并开始工作,此时,系统完成从一个时钟方式向另一个时钟方式的转变,同时完成从多数输出是三态的并行或串行配置数据的界面向由用户系统激活的I/O引脚的正常操作的转变。 §3.2.2 FPGA的开发工具的使用: 1· FPGA开发系统 在PC机用户的XILINX FPGA开发系统之中,目前主要采用Viewlogic的XACTstep6.0.1和ALDEC的Foundation Series。XACTstep的设计流程如下: Design Entry Prosim Prowave 功能仿真 XACTstep Prosim Prowave 时序仿真 Download 首先在Design Entry作原理图输入,原理图完成后可由Prosim作功能仿真并通过Prowave显示仿真波形,亦可在原理图完成后直接进入XACTstep,将原理图转换成为XILINX FPGA的网表格式,进行逻辑优化、布局、布线。布线生成LCA文件或BIT文件后即可通过专用的FPGA加载电缆将配置数据下载到芯片进行调试,亦可先通过Prosim与Prowave作布线完成后的时序仿真,调整时序后再下载配置数据文件。 二、FPGA芯片的容量与指标: 下表给出XILINX FPGA最常用的XC3000、XC4000系列的参数: Device Gates CLBs IOBs Flip-Flops XC3120 1000-1500 64 64 256 XC3130 1500-2000 100 80 360 XC3142 2000-3000 144 96 480 XC3164 3500-4000 224 120 688 XC3190 5000-6000 320 144 928 XC3195 6500-7500 484 176 1320 表一 XC3000系列的逻辑容量 Device Gates CLBs IOBs Flip-Flops XC4002A 2000 64 64 256 XC4003A 3000 100 80 360 XC4003/H 3000 100 80/160 360/300 XC4004A 4000 144 96 480 XC4005A 5000 196 112 616 XC4005/H 5000 196 112/192 616/392 XC4006 6000 256 128 768 XC4008 8000 324 144 936 XC4010/D 10000 400 160 1120 XC4013/D 13000 576 192 1536 XC4020 20000 784 224 2016 XC4025 25000 1024 256 2560 §3.2.3 EPLD产品性能和技术参数 1、引言 可编程逻辑器件(PLD)是用户进行编程实现所需逻辑功能的数字集成电路,利用PLD内部逻辑电路可以实现任意布尔表达式或寄存器函数,相反,那些分立逻辑IC,如TTL电路,只能提供特定的功能而不能按不同电路设计要求进行修改,PLD曾被看作分立逻辑和定制或半定制器件(如ASIC)的替代品,然而,近年来它已成为更受青睐的一种选择了,由于大批量生产和采用先进的工艺技术,PLD的价格降低,PLD厂家提供的器件同许多离散器件或全定制器件相比,其集成度更高,性能更好,并且每一功能的价格更低。 2、ALTERA的PLD系列产品 ALTERA公司提供7个系列的通用PLD产品:FLEX 10K、FLEX8000、MAX9000、MAX7000、FLASHLogic、MAX5000和Classic器件,如表所示,灵活逻辑单元阵列(Flexible Logic Element Matrix,FLEX)结构,使用查找表实现逻辑功能。而多阵列矩阵(Multiple Array Matrix,MAX)结构、FLASHlogic结构和Classic结构使用可编程的“与阵列”和乘积项的固定的“或”结构实现。各种产品系列提供不同的速度和不同的性能,在特定应用中各有优点: ALTERA器件结构 器件系列 逻辑单元结构 连线结构 配置单元 FLEX 10K 查找表 连续式 SRAM FLEX 8000 查找表 连续式 SRAM MAX9000 积之和 连续式 EEPROM MAX7000 积之和 连续式 EEPROM FLASHLogic 积之和 连续式 RAM&FLASH MAX5000 积之和 连续式 EPROM Classic 积之和 连续式 EPROM 下面总结各ALTERA通用PLD系列产品的关键性能: 1、Classic系列 Classic是ALTERA公司最早的产品系列,最多集成900个可用门,引脚最多达68个,工业标准的Classic系列由一个具有公共互连逻辑的阵列构成,适用于集成度低,价格便宜的应用,该系列具有独特的“0功率”模式,维持状态的电流只有微安量级,对于低功耗应用非常理想,该系列基于EPROM工艺,编程信息不易失去,并可用紫外线擦除和多次编程。 2、MAX5000系列 MAX5000系列是ALTERA第一代MAX器件,它广泛应用于需要高级组合逻辑,其成本又较便宜的场合,这类器件的集成度为300~3800可用门,有20~100个引脚,由于该产品已经很成熟,加之ALTERA公司对其不断改进和采用更先进的工艺,使得MAX5000器件每个宏单元的价格可与大批量生产的ASIC和门阵列相近,基于EPROM的MAX5000系列也是编程信息不易失的。 3、MAX7000系列 MAX7000系列是ALTERA第二代结构的器件,它是工业界速度最快的高集成度可编程逻辑器件系列, 其集成度为600~5000门可用门,有32~256宏单元和36~164个用户I/O引脚,该系列器件的组合传播延时快达5 ns,16位计数器频率为178.9MHZ。此外,它们能提供很快的输入寄存器建立时间,多个系统时钟和可编程的速度/功率控制,I/O引脚输出电压摆率是可控制的。 从而提供一个附加的开关噪声电平控制,基于EEPROM的MAX7000系列是编程信息不易失的电可擦除的器件。 MAX7000E器件是MAX 7000系列中密度更高,性能更强的成员,MAX7000S不仅提供MAX7000E的增强性能,它还可以提供JTAG BST、ISP支持和片内时钟放大锁相环电路。 4、MAX9000系列 MAX9000 系列 把MAX 7000系列的高效的宏单元结构和FLEX器件的高性能、可预测速度的快速通道结合在一起,使它非常适用于集成多个系统级功能。基于EEPROM的MAX9000系列有6000~12000个可用门,320~560个宏单元,最多216个用户I/O引脚,这种集成度以及JTAG BST和ISP支持,使它成为即用到PLD特性又具有ISP的灵活性的门阵列设计中的理想选择。 5、FLASHlogic系列 FLASH Logic系列的性能结构革新使它非常适合于那些要求内部RAM,在线重新配置(ICR)、ISP或JTAG BST支持的应用,FLASH Logic系列是基于SRAM的,此外内部还有不易失的FLASH单元,省却了外部数据源。它的密度从1600~3200,可用门有80~160个宏单元,有62~120个用户I/O引脚。 这些性能以及10ns的组合时延,使它非常适用于基于微处理器的系统和总线接口应用。 6、FLEX 8000系列 FLEX 8000系列适用于需要大量寄存器和I/O引脚的应用,该系列器件的集成度为2,500~16,000可用门,282~1500寄存器,78~208个用户I/O引脚,这些特性以及其高性能、可预测速度的互连结构使FLEX 8000很适合用作基于乘积项的器件,此外,基于SRAM的FLEX 8000维护状态功耗很小,可在线重新配置(ICR)的特性,使它适用于PC附加卡,电源供电设备和多功能电信卡。 FLEX 10K系列 FLEX 10K系列包括含有嵌入式阵列的PLDS及工业界最大的PLD(100,000门),由于共高集成度和用作复杂宏和存贮器的能力,使其可以满足随着单片系统设计发展而对集成度的增长要求, FLEX10K包括一个嵌入式阵列,它可以给设计者提供高效的嵌入式门阵列功能和灵活的可编程逻辑,嵌入式阵列由大量的嵌入阵列块(EAB)组成,它可以用作存贮器和复杂逻辑功能。其它结构特性如多个偏差时钟,时钟锁定、时钟放大锁相环电路和内部三态总线,可以满足系统级集成要求的性能和效率,这些特性使它可用于那些传统上使用门阵列的领域。 所有ALTERA器件使用CMOS工艺,与双极性工艺相比它的功耗小,可靠性高。 附录 现有EPLD器件性能参数 器件系列 3.3V 器件 3. 3V或5.0V I/O PIN PLL PCI Compliance ISP ICR JTAG 嵌入 SRAM 斜率控制 开漏极输出 FLEX10K          FLEX8000       MAX9000      MAX7000 MAX7000S             FLASH logic         MAX5000 Classic §3.2.4 MAX + PLUS II开发工具 1、引言 一个理想的可编程逻辑设计环境应当满足各种各样的设计要求:例如,应当支持具有不同结构的器件,能在多平台上运行,具有易于使用的界面并提供广泛的特性。而且,该设计环境还应当允许设计者自由选择他们使用的设计输入方法和工具。Altera的MAX+PLUSⅡ开发系统是一种全集成化的可编程逻辑设计环境,能满足所有这些要求。 MAX+PLUSⅡ设计环境提供的灵活性和高性能是无可比拟的。其丰富的图形界面,再加以完整、可即时访问的在线文档,使用户能又快又容易的学习和使用MAX+PLUSⅡ。 □结构无关 MAX+PLUSⅡCompiler(编译程序)是MAX+PLUSⅡ系统的核心,它支持Altera的Classic、MAX5000、MAX7000、MAX 9000、FLASHlogic、FLEX 8000和FLEX 10K可编程逻辑器件系列,提供工业界唯一真正与结构无关的可编程逻辑设计环境。该编译程序(或称编译器)还提供强有力的逻辑综合与最小化功能,使用户比较容易将其设计集成到器件中。 □多平台 MAX+PLUSⅡ可在基于486、奔腾之PC的Microsoft Windows或Windows NT下运行,也可以在Sun SPARC工作站、HP9000系列700工作站和DEC Alpha AXP工作站的X windows下运行。 □全集成化 MAX+PLUSⅡ的设计输入、处理与校验功能一起提供了全集成化的一套可编程逻辑开发工具,可以加快动态调试,缩短开发周期。 □模块组合式工具软件 设计者可从各种设计输入、设计处理和设计校验选项(全部在3.2.4节中描述)中进行选择从而使设计环境用户化。需要时,还可保留初始的工具投入,并增添新性能。由于MAX+PLUSⅡ支持各种器件系列,设计得不必学习新工具即可支持新结构。 □硬件描述语言 (HDL)MAX+PLUSⅡ 支持各种HDL设计输入选项,包括VHDL、Verilog HDL和Altera硬件描述语言AHDL。 □开放的界面 Altera的工作与CAE厂家联系紧密,MAX+PLUSⅡ可与其它工业标准设计输入、综合与校验工具链接。它与CAE工具的接口符合EDIF 200和209、参数化模块库(LPM)、Verilog、VHDL及其它标准。设计者可以使用Altera或标准CAE设计输入工具去建立逻辑设计,使用MAX+PLUSⅡ Compiler(编译程序)对Altera器件设计进行编译,并使用Altera或其它CAE校验工具进行器件或板级仿真。目前,MAX+PLUSⅡ支持与Synopsys、Viewlogic、Mentor Graphics、Cadence、Exemplar、Date I/O、Intergraph、Minc、OrCAD等公司提供的工具的接口。 使用MAX+PLUSⅡ软件进行设计的过程包括四个阶段:设计输入、设计处理、设计校验和器件编程。 2、设计输入 MAX+PLUSⅡ能够将使用MAX+PLUSⅡ设计输入工具或其它各种工业标准CAE设计输入工具生成的设计文件综合为一个设计体系。MAX+PLUSⅡ各应用程序间高度的集成化允许信息在各应用程序之间自由地来回流动。例如,可以自动将编译、仿真和定时分析中识别的错误定位,并在原始的设计文件中将其加亮。如果一个设计(在MAX+PLUSⅡ中叫做“Project”)中包括二级或多级层次结构,设计者可以从一个设计文件直接到达层次结构内所有的其它设计文件,无论这些文件是基于图形、文本或波形的。 2.1、原理图输入与非符合编辑 图3.2.4.1 中所示,MAX+PLUSⅡGraphic Editor(图形编辑器)能方便、快捷地输入设计原理图。这种“drag-and -drop”的图形编辑方法可以快速移动一个或多个对象,也可以移动整个一块区域。移动过程中,连线就像橡皮筋那样保持着。还可通过总线连接多个图元(Primitive)建立起符合阵列,从而使设计更加紧凑。该软件中有74系列的300多个及其它定制宏功能可供使用。 图3.2.4.1 2.2、硬件描述语言输入 MAX+PLUSⅡ软件包含一个Text Editor(文本编辑程序),适用于输入和编辑用VHDL、Verilog HDL或AHDL(Altera硬件描述语言)编写的HDL(硬件描述语言)设计文件。MAX+PLUSⅡCompiler(编译程序)可以对这些语言表达的逻辑进行综合并将其映射到Altera的任何器件系列中。 这些HDL中的每一种都能实现状态机、其值表、条件逻辑和布尔方程,也支持加、减、相符和比较复杂的设计了。 2.3、设计的波形输入 MAX+PLUSⅡWaveform Editor(波形编辑程序或称波形编辑器)用于建立和编辑建立波形设计文件及输入仿真向量和功能测试向量。波形编辑程序还有逻辑分析仪的功能,设计者可以查看仿真结果。 波形设计输入最适合于时序和重复的函数。Compiler的先进的波形综合算法根据用户定义的输入波形及输入波形(经过寄存器的、组合的状态机逻辑的)自动生成逻辑关系。Compiler自动为分配状态位和状态变量。 波形编辑功能允许设计者对波形进行拷贝、剪切、粘贴、重复与伸展,从而可用内部节点,触发器和状态机建立设计文件;把波形组合成组,显示出二进制、八进制、十进制或十六进制值;通过把一组波形重迭到另一组波形上,对两组仿真结果进行比较。 2.4、底层编辑 MAX+PLUSⅡFloorplan Editor(底层编辑程序)(图3.2.4.2)简化向器件引脚和逻辑单元分配逻辑的过程。设计方案中使用的表示每种器件的图形很容易进行逻辑布局。高层的和详细的器件视图都可供利用。设计者可在设计编译之前分配和逻辑单元,编译后再察看与修改结果。 图3.2.4.2 底层编辑程序的特性允许设计者观察器件中所有已分配的和未分配的逻辑。任何节点或引脚都可以被拉到新的位置。可以把逻辑分配给专用引脚和逻辑单元,也可分配给器件中更加合适的区域。 2.5、工业标准的CAE设计输入 MAX+PLUSⅡ Compiler(编译程序)可以与产生EDIF200和290网表文件的其它CAE工具接口。Compiler使用库映射文件(.lmf)把其它CAE工具专用的符号和引脚名映射为MAX+PLUSⅡ宏功能和基本门库单元。Altera为74系列的100多种器件及定制宏功能提供LMF(库映射文件),这些宏功能适合于Cadence、Mentor Graphics、Minc、OrCAD和Viewlogic等公司的工具生成的文件。Cadence、Exemplar、Intergraph、Mentor Graphics、Racal-Redac,Synopsys和Viewlogic公司也支持VHDL和Veilog设计输入。 MAX+PLUSⅡ也支持使用参数化模块库(LPM,Library of parameteride modules)的设计输入。LPM标准描述计数器、加法器、多路选择器之类规模可变的宏功能,允许最佳设计信息在CAE 工具之间流通。MAX+PLUSⅡ Compiler从EDIF网表文件读取LPM模块,自动进行优化,产生具有特定结构的宏功能。MAX+PLUSⅡ支持LPM标准定义的所有门和运算部件。 MAX+PLUSⅡ也能读取OrCAD的原理图文件(.sch)和Xilinx的网表格式文件(.xnf),以便面向Altera器件,对设计进行编译和集成。 2.6、层次设计输入 层次设计可能包含用几种不同格式建立的设计文件,包括原理图输入、HDL设计输入、波形设计输入和EDIF(电子设计交换格式)。MAX+PLUSⅡ在一个设计方案中支持多级层次。这种灵活性使设计者可以采用最适合于设计中每个部门的设计输入方法。MAX+PLUSⅡ层次显示程序可以显示方案的层次结构,允许设计者穿越层次,自动打开适合于每个设计文件的编辑程序。 3、设计原理 MAX+PLUSⅡ处理一个设计时,Compiler(编译程序)在设计文件中读取信息并产生编程文件和仿真文件,Timing Analyze(定时分析程序)分析设计的定时,Message Processor (信息处理程序)自动定位错误。 3.1、自动错误定位 MAX+PLUSⅡ的Message Processor 与MAX+PLUSⅡ的所有应用程序通信,报告错误、信息,对于连线或句法等问题给出警告消息。设计者可利用它自动打开有错误源的文件,并以高亮度显示错误位置。见图3.2.4.3 图3.2.4.3 3.2、逻辑综合与试配 MAX+PLUSⅡCompiler的Logic Synthesizer(逻辑综合)模块对设计方案进行逻辑综合并让你看到设计实现的真正结果(WYSIWYG:what-yuo-see-what-you-ger)。该模块选择合适的逻辑化简单法,并去除冗长逻辑,确保对某种特定的器件结构尽可能有效地使用器件的逻辑资料。还要去除设计方案没用的逻辑。 逻辑综合选择有助于设计师引导逻辑综合的结果。Altera提供三种“现成的”综合方式,可以为多种逻辑综合选择指定位置。可选择缺省方式,以设置缺省的综合选择;可以建立定制方式;还可以在被选择的逻辑功能上指定一些单独的综合选择。综合选择可以是面向特定器件系列专门设置的,以发挥器件结构的优势。很多先进的逻辑选择可以进一步扩展设计者对逻辑综合施加影响的能力。 Compiler 的Fitter(试配)模块应用试探法把经过综合的设计最恰当地用一个或多个器件实现。这种自动试配功能使设计者得以从冗长与布线工作中解脱出来。Fitter生成报告文件(Report File)(.rpf),该文件展示设计的具体实现以及器件中没使用的资料。 3.3、定时驱动的编译 Compiler(编译程序)可以实现用户指定的定时要求,例如,传播延时(tpD)、时钟到输出的延时(TCO)、建立时间(TSU)和时钟频率(FMAX)等。设计者可以为选定的逻辑功能指定定时要求,也可以把设计作为一个整体来指定定时要求。Fitter的报告文件提供详细信息说明设计中的定时要求是如何实现的。 3.4、设计规则检查 MAX+PLUSⅡCompiler(编译程序)包括有Design Doctor(设计规则检查程序)。该程序检查每个设计文件,因为能够造成系统极可靠性问题,一般只有在设计已成为产品后才暴露出来。用户可以从预先定义的三组设计规则中选择一种,这种规则对设计的检查一个比一个彻底,用户也可以建立自己的一组规则。 设计规则的基础是可靠性,这涉及到含有异步输入、行波时钟、以时钟为基础的多级逻辑、置位与消除的配置及竞争条件等性能的逻辑。指明规则违反的情况,以帮助设计者决定在设计中需要编辑哪些部分。 3.5、多器件划分 如果整个设计不能装入一个器件,Compiler(编译程序)的Partitioner(划分)模块可将设计进行划分以装入同一器件系列的多个器件中。划分时力图使所需器件数目尽可能少,同时要使用于器件之间通信引脚数目最少。Fitter(试配模块)自动将逻辑装入指定的器件。 划分工作可以全部自动进行,可以部分由用户控制,也可以全部由用户控制进行。若设计太大无法装入指定器件,设计者可以指定增加器件的类型和数目。 3.6、工业标准输出格式 MAX+PLUSⅡCompiler(编译程序)可以建立多种仿真环境里使用的网表。这些网表包含综合后的功能,以及其它标准设计校验工具进行器件级或板级仿真时可以使用定时信息。 以下接口可供使用: EDIF接口 建立EDIF200和290网表。 Verilog接口 建立与Verilog-XL仿真器一起使用的Verilog网表。 VHDL接口 建立与VHDL仿真器一起使用的VHDL网表。 3.7、编程文件的产生 Assembler(装配程序)模块为一个已编译的设计创建一个或多个编程目标文件(.pof)、SRAM目标文件(.sof)和/或JEDEC文件(.jed)。MAX+PLUSⅡ编程器使用这些文件和标准的Altera硬件对所要求的器件进行编程。使用工业标准的其它编程设备也可对器件编程。此外,MAX+PLUSⅡ可以产生Intel格式的十六进制(.hex)、Tab-ular文本文件(.ttf)和配置FLEX8000器件使用的串行Bit流文件(.sbf)。 4、设计校验 设计校验过程包括设计仿真和定时分析,使用是测试逻辑操作和设计的内部定时。Altera和各种CAE卖主均可提供设计校验软件。 4.1、仿真 MAX+PLUSⅡ的仿真器具有灵活性,可以控制对单器件或多器件设计的仿真。仿真器使用编译期间生成的二进制仿真网表进行功能、定时的仿真,或对组合连接的多个器件作为一个设计进行仿真。 可以使用简明的向量输入语言定义输入激励,也可以使用MAX+PLUSⅡ的波形编辑程序直接画出波形。仿真结果可以在波形编辑器或文本编辑器中看到,也可以作为波形文件或文本文件打印出来。 设计者可以交互式地指定命令,或者通过基于文本的命令文件去完成和种任务,诸如监视设计方案中的毛刺、振荡器和寄存器的建立和保持时间;到达用户定义的条件时,停止仿真;强制触发器为高或低电平;进行功能测试等。如果建立或保持时间、最小脉宽或振荡周期不合要求,Message Processor(信息处理器)就报告出现的问题。然后,设计者就可以使用信息处理器确定这个问题在Waveform Editor(波形编辑器)中发生的时间,并确定该错误在原始设计文件中的位置。 (1)功能仿真 MAX+PLUSⅡSimulator(仿真器)支持功能仿真,可在对设计方案进行综合之前,测试其逻辑操作,使设计者能迅速知道逻辑上的错误并改正之。MAX+PLUSⅡ的波形编辑器可显示功能仿真的结果,并且为访问设计(包括组合功能)中所有节点提供便利条件。 (2)定时仿真 在定时仿真里,MAX+PLUSⅡ的仿真器在设计方案被综合和优化之后,对其进行测试。进行定时仿真的分辨率是0.1ns。 (3)多器件仿真 MAX+PLUSⅡ可以把来自多个Altera器件的定时和/或功能信息组合起来,这样,设计者可以仿真几个器件在一起的工作。在同一设计中可以使用Altera不同系列的器件。 4.2、定时分析 MAX+PLUSⅡ的Timing Analyzer(定时分析程序)可以计算到点的器件延时矩阵,确定器件引脚上的建立时间与保持时间要求,还计划最高的时钟频率。MAX+PLUSⅡ的设计输入工具与Timing Analyzer 集成在一起,这样只需简单地设计中的起点和终端加上标志即可确定最短与最长的传播延时。此外,Message Processor(信息处理器)可以找出Timing Analyzer在设计文件中已证实的关键路径,并在适当的设计编辑器中显示之。 5、器件编程 图3.2.4.4 展示的MAX+PLUSⅡProgrammer(编程器)使用Compiler生成的编程文件给Altera器件编程。它可以用来对器件编程、校验、试验、检查是否空白以及进行功能测试。编程器硬件包括一块附加的逻辑编程卡(用于PC-AT或兼容机),该卡驱动Altera的主编程部件(MPU-Master Programmer Unit)。MPU要进行连通性检查,以确保编程适配器与器件之间有良好的电接触。通过配套的编程适配器,MPU还支持功能测试,这样为仿真而建立的向量也可以应用于已编程器件,从而校验其功能。 Altera还提供FLEX卸装电缆和FLEX8000编程用的BitBlaster。FLEX8000卸载电缆可以把装在MPU上的任何配置EPROM编程适配器与样板系统中的一个FLEX8000相连。BitBlaster串行卸装电缆连接一个标准的RS-232端口,它向系统板上的FLEX8000器件提供配置数据。BitBlaster使PC和工作站用户能够独立地配置FLEX8000器件,而不需要MAX+PLUSⅡ编程器或任何其它编程硬件。 对器件进行编程和校验的全部硬件和软件均可从Altera公司获得。其它还有很多编程器硬件厂家都能提供编程支持。 图3.2.4.4 6、联机求助 联机求助可以访问MAX+PLUSⅡ上的所有信息。包括所有MAX+PLUSⅡ应用程序的完整的、最新的文档,各种信息的起因和可起的作用,关于Altera文档的参考资料,文本文件的格式(例如AHDL)及Altera器件与适配器的信息。 联机求助只能用击键或揿动鼠标来工作。按F1键可以即时访问对话框上的信息、高亮度的菜单命令或弹出式信息。键入shift+F1将鼠标指针变为一个问号,可以图元、宏功能、AHDL关键字等屏幕的任何项目上掀动鼠标以获得有关该项目上下文意义的帮助。 7、推荐的系统配置 为使MAX+PLUSⅡ达到最佳效果,Altera推荐下述系统配置。 7.1、PC系统配置 □基于486或Pentium(奔腾)的PC-AT或兼容机 □16兆字节RAM □DOS5.0或更高的版本 □Microsoft Windows3.1 □与Micosoft Windows兼容的图形卡与监视器 □1.44兆字节3英寸软盘驱动器或CD-ROM驱动器 □适用于Microsoft Windows人3.1 的二键或三键鼠标器 □适用于逻辑编程卡的全长8位ISA插槽 □并行口 7.2、Sun工作站系统配置 □使用彩色或单色监视器的Sun SPARC工作站 □32兆字节RAM □Sun OS4.1.2(或Solaris 1.0)或更高版本 □Sun Open Windows 3.0(或Solaris 1.0)或更高版本 □ISO9660兼容的CD-ROM驱动器 7.3、HP工作站系统配置 □使用彩色或单色监视器的HP Series700工作站 □32兆字节RAM □HP-UX 9.03或更高版本 □Hp-VUE □ISO9660兼容的CD-ROM驱动器 7.4、DEC Alpha AXP工作站系统配置 □使用彩色或单色监视器的DEC Alpha APX工作站 □32兆字节RAM □OSF/1 1.3或更高版本 □Motif 1.2或更高版本 □ISO 9660兼容的CD-ROM驱动器 §3.2.5 VHDL语音 一、VHDL的基本概念: VHDL(VHSIC Hardware Description Language)是70年代末80年代初美国国防部提出的VHSIC(Very High Speed Integrated Circuit)计划的产物。VHDL诞生于1981年,新语言的目标有两方面:首先是设计者企图用这种语言描述复杂的电路系统;其次他们希望这种语言成为一种标准,使之在VHSIC计划中各种成员能按标准的格式向其他成员提供设计。1987年12月VHDL被接纳作为IEEE1076标准,目前,计算机辅助工程工作站制造厂家的整个业界正在把VHDL作为它们的仿真、综合与布图等工具的输入与输出的标准,VHDL正迅速地被接纳为一种通用的设计交换媒介,成为一种工业级标准语言。 二、VHDL的基本术语: 在VHDL中,有的术语几乎要用于VHDL的每一种描述,因此在进一步介绍VHDL语言以前必须对这些基本术语作一清楚描述。 1、实体(entity): 实体与VHDL的所有设计有关,是VHDL设计中最基本的模块。在分层设计中,顶层设计中有顶层实体,底层设计中有底层实体,底层实体包含于顶层实体之中。VHDL中的实体,具体地说可与电原理图中的器件符号相对应,它描述对外接口、端口数目、端口方向与端口类型等信息。 下面的例子给出一个二选一的数据选择器的实体描述: ENTITY mux2 IS PORT(i0:IN std_logic; i1:IN std_logic; cnt:IN std_logic; y:OUT std_logic); END mux2; 其中大写的词为VHDL的关键字,小写的词可由用户自行定义。在上例中,mux2代表实体名,i0、i1为实体mux2的两个输入,cnt为输入控制端,y为输出端,IN、OUT代表信号端口的方向,std_logic为VHDL中定义的一种标准逻辑数据类型。需说明的是,大写与小写在VHDL中是不敏感的,本文中的大写只是为了表示VHDL语言中的固定结构。 2、结构体(architecture): 所有能被仿真的实体都有一个结构体描述,结构体描述实体的结构组成或行为功能。一个实体可以有多个结构体,一种结构体可能为实体的行为描述,而另一种结构体可能为实体的结构描述。因此,结构体可分为结构型结构体和行为型结构体。 1)行为型结构体: 行为型结构体描述实体的行为功能,如下例为实体mux2的行为型结构体: ARCHITECTURE mux2_behav OF mux2 IS BEGIN y<=i0 WHEN cnt=‘0’ ELSE i1; END mux2_behav; 其中mux2_behav为结构体名,mux2为实体名,BEGIN和END之间的部分为结构体的功能描述,它表示当cnt=‘0’时选择i0输出到y,否则选i1为输出。 2)结构型结构体: 结构型结构体描述实体的结构组成,如下例为实体mux2的结构型结构体: ARCHITECTURE mux2_arch OF mux2 IS SIGNAL temp0:std_logic; SIGNAL temp1:std_logic; SIGNAL temp2:std_logic; COMPONENT and2 PORT(i1:IN std_logic; i2:IN std_logic; o:OUT std_logic); END COMPONENT; COMPONENT or2 PORT(i1:IN std_logic; i2:IN std_logic; o:OUT std_logic); END COMPONENT; BEGIN temp0<=NOT cnt; U1:and2 PORT MAP(i0=>cnt,i1=>i1,o=>temp1); U2:and2 PORT MAP(i0=>i0,i1=>temp0,o=>temp2); U3:or2 PORT MAP(i0=>temp1,i1=>temp2,o=>y); END mux2_arch; 其中,mux2_arch为结构体名,可由用户自行定义,mux2为实体名。关键词ARCHITECTURE和BEGIN之间的区域为变量说明区,中间信号变量、元件及常量等可在该区中定义,上例中定义了三个中间信号变量temp0-temp3,它们均为std_logic的标准逻辑数据类型。该区中还定义了两个元件and2和or2,用于构造实体mux2。and2和or2均有三个信号端,i1、i2为两个信号输入端,o为信号输出端,它们均为std_logic类型。BEGIN与END之间的部分为结构型结构体描述部分,它给出了构成实体mux2的各个元件的具体连接与装配关系,即实体的结构。 3、配置(configuration): 由于一个实体可有多个结构体,所以在给定的仿真中,对于某实体选用哪一个结构体须由配置语句给予说明,如下例: CONFIGURATION mux2_config OF mux2 IS FOR mux2_behav END FOR; END mux2_config; 该例指定对实体mux2采用行为型结构体mux2_behav,其中mux2_config为用户定义的配置体名称。 4、属性(attribute): 属性是附到VHDL对象上的数据或者是有关VHDL对象的预定义数据,如在FPGA设计中,可通过属性定义某信号的pin number。 5、进程(process): 进程是VHDL中最重要最基本的概念之一,在VHDL中进程是基本的执行单元,仿真时将把所有的运算都划分为单个或多个进程。关于进程的概念在后面详述。 四 VHDL的语句 1、元件具体安装语句: 在第一节的mux2_arch结构体中,有三个元件具体安装语句,现以其中一个为例作出说明: U1:and2 PORT MAP(i0=>cnt,i1=>i1,o=>temp); 元件and2具有两个输入端i0、i1和一个输出端o,上例表明,该元件在具体装配时,其元件标号为U1,而将信号cnt映射(连接)到该元件的i0端,将信号i1映射到该元件的i1端,信号temp映射到o端。 2、语句的并行性与并行信号赋值语句: 第一节中结构体mux2_arch的BEGIN和END之间的四个语句为并行语句。并行语句不象C或PASCAL语言一样是按照语句的排列顺序依次执行的,而是具有并行性,即语句执行的先后次序与其排列的先后次序无关,而只跟其敏感表中的信号变化的情况有关。 为了进一步说明这个问题,让我们再来分析下面的例子:输入信号为a、b、c、d,输出信号为e,我们构造逻辑表达式e=ab+c/d的VHDL语言描述。为了给读者一个关于VHDL语言的较完整的概念,此处给出一个完整的VHDL程序: -- This is an example of combinational logic; -- Version 1.0 , 20/5/1997; LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY comb_test0 IS PORT(a:IN std_logic; b:IN std_logic; c:IN std_logic; d:IN std_logic; e:OUT std_logic); END comb_test0; ARCHITECTURE comb_test0_behav OF comb_test0 IS SIGNAL temp0:std_logic; SIGNAL temp1:std_logic; SIGNAL temp2:std_logic; BEGIN temp0<=NOT d; temp1<=c AND temp0; temp2<=a AND b; e<=temp1 OR temp2; END comb_test0_behav; CONFIGURATION comb_test0_config OF comb_test0 IS FOR comb_test0_behav END FOR; END comb_test0_config; 本例的结构体中BEGIN和END之间有四个并行信号赋值语句,但由于语句的并行性,它与按如下顺序排列的语句等效: BEGIN e<=temp1 OR temp2; 语句1 temp2<=a AND b; 语句2 temp1<=c AND temp0; 语句3 temp0<=NOT d; 语句4 END comb_test0_behav; 由此可见,并行信号赋值语句是不按排列顺序执行的。现以信号d的变化为例说明上例并行信号赋值语句的执行顺序:当信号d变化时,由于temp0对信号d敏感,故d的变化将引发信号temp0的变化,此时语句4被执行;而信号temp1又对temp0敏感,因此temp0的变化会导致temp1的变化,此时执行语句3;同理,temp1的变化导致输出信号e的变化,因此语句1被执行。 3、进程语句(process): 除了并行语句以外,VHDL中亦有顺序语句,进程process中的语句就是顺序语句,现以一例说明。该例中给出一个用D触发器实现的二分频器的VHDL语言描述,其中nrd为D触发器的异步清除信号,cp为脉冲触发信号,q为输出信号: -- This VHDL module devides frequence by two . -- Version 1.0 , 5/4/1997 . LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY fdiv2 IS PORT(cp:IN std_logic; nrd:IN std_logic; q:BUFFER std_logic); END fdiv2; ARCHITECTURE fdiv2_behav OF fdiv2 IS BEGIN PROCESS(nrd,cp) BEGIN IF nrd=‘0’ THEN q<=‘0’; ELSIF rising_edge(cp) THEN q<=NOT q; END IF; END PROCESS; END fdiv2_behav; 让我们来看PROCESS和END PROCESS之间的语句部分,该部分为进程语句。第一节中提到过,进程语句是VHDL中最基本的执行单元,因而是一个非常重要的概念。 进程语句一般由三个部分组成:1)敏感表区(Sensitivity list):关键字PROCESS后面括号中的信号清单称为敏感表,该表严格地枚举将引起进程语句执行的信号,在本例中为信号nrd与cp,只有当这些信号变化时,进程才被执行。2)进程说明区:进程说明部分由敏感表的结尾和关键字BEGIN之间的部分组成,该区域用来说明局部变量和一些仅在进程内部用的内容。本例中该部分为空。3)进程语句部分:进程语句部分从关键字BEGIN开始并在END PROCESS行结束,进程内包含的所有语句都是顺序语句。 4、顺序语句: 我们以上例的进程为例来说明顺序语句。顺序语句的执行顺序是严格按照语句的书写顺序排列的,这种风格和C或PASCAL语言的编程风格完全一致。上例中,首先判断信号nrd是否为0,如果为0,则输出信号q被清零;否则在信号cp的上升沿,D触发器的d端的状态(在二分频器中d端状态应为/q,即程序中的NOT q)被锁存到q端,即q<=NOT q。 5、语句的并行性与顺序性小结: 综合本节内容可知,在并性信号赋值语句、元件具体安装语句与进程语句之间,各语句为并行关系,语句的执行由敏感表中的变量触发;而在进程语句内部,各语句为顺序关系,语句的执行严格按照其书写顺序排列。 五 VHDL程序综述 通过上两节的叙述,我们对VHDL语言的一些基本概念、编程风格与规范有了一些初步的了解,为了深入理解更复杂一些的VHDL设计,有必要对VHDL的程序再作一些细致的说明。 1、VHDL语言的程序格式: 首先我们仍以第二节中的实体fdiv2为例来对VHDL语言的格式作出说明。该程序段中开头两行为程序的注释行,所有的注释行前都由符号“--”打头。注释行可位于VHDL程序中的任何位置。 IEEE-1164是为VHDL定义的一个标准,在ieee.vhd程序中定义了一个标准程序包(package)std_logic_1164,该程序包中定义了VHDL语言的一些标准逻辑状态、标准函数和标准数据类型等,如上面用到的数据类型std_logic、buffer与标准函数rising_edge()等,在std_logic_1164程序包中均有定义。为了使用该程序包,应在每个实体说明前加上如下两句: LIBRARY ieee; USE ieee.std_logic_1164.ALL; 用户亦可定义自己的程序包,经USE语句说明后即可用于VHDL程序中。如果在构造一个实体时,要将本project中已定义好的另一个实体作为其中的一个底层元件,则用户应给出如下说明: USE work.ALL; 其中work代表了当前的project。 VHDL语言中接下来的部分为实体说明部分,该部分可视为与原理图中的器件相对应,它定义实体的信号端及其方向、类型、属性等。可在同一文件中定义多个实体,并把其它的实体作为其中某个顶层实体的组成元件。 实体说明之后为结构体说明,可认为结构体说明部分大致与传统设计方法中的电原理图相对应。在结构体中BEGIN之前,应先定义结构体中需用的信号、元件及子类型等。BEGIN与END之间为结构体描述部分,如前所述,可采用功能型描述,亦可采用结构型描述。如有必要,还可在结构体说明之后加上相应的配置说明。 2、信号与变量: 信号与变量是有区别的,模块间的逻辑关系均通过信号来传递,而变量只能在模块内起到信息暂存的作用。另外,信号要占用系统的存储量,而变量只有在模块需要时才占用存储量,程序一旦退出本模块,则相应变量占用的存储区将被释放,变量随之消失。 在VHDL语言中,信号用关键词SIGNAL定义,在前述例子中已出现过。而变量用关键词VARIABLE定义,如下例所示: -- This VHDL module provides a four_to_one MUX . -- Version 1.0 , 3/4/1997 . LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY mux4 IS PORT(i0:IN std_logic; i1:IN std_logic; i2:IN std_logic; i3:IN std_logic; contr0:IN std_logic; contr1:IN std_logic; o:OUT std_logic); END mux4; ARCHITECTURE mux4_behav OF mux4 IS BEGIN PROCESS(contr0,contr1,i0,i1,i2,i3) VARIABLE temp_vec:std_logic_vector(1 DOWNTO 0); BEGIN temp_vec(0):=contr0; temp_vec(1):=contr1; CASE temp_vec IS WHEN “00” => o<=i0; WHEN “01” => o<=i1; WHEN “10” => o<=i2; WHEN “11” => o<=i3; END CASE; END PROCESS; END mux4_behav; 由此例可见,信号和变量除了上述的区别以外,它们的赋值方式亦不相同,信号是通过“〈=” 赋值,而变量通过“:=” 赋值。本例中定义了一个变量temp_vec,为二维std_logic_vector型。std_logic_vector为标准逻辑向量类型,通常用于定义总线或一组有规律的信号线,并可用一个指针寻址其各个分量。变量temp_vec在进程内部定义,而且它仅在本进程内部是可见的。 上例描述了一个四选一的数选器,i0-i3为四个输入端,contr0、contr1为控制端,o为输出端。结构体中只有一个进程,该进程对信号contr0、contr1、i0-i3敏感。进程中用了一个CASE语句,它通过匹配向量temp_vec的值选择i0-i3中的一个到输出端o。 3、变量与预定义类型的可视性: 变量与一些用户自行定义的数据子类型只在本模块内是可视的。因此,变量有局部变量和全局变量之分。在一个模块内定义的变量,只在本模块内的各个并行语句之间、各个进程之间以及构成本模块的各个底层元件之间是可视的,而在本模块外为不可视。信号用于在各个对其可视的子模块之间传递逻辑关系,而变量只能用于对本模块内的逻辑进行暂存。 4、组合逻辑、时序逻辑与反馈逻辑的VHDL编程: 对于组合逻辑,采用并行信号赋值语句对其编程往往比较容易,而对于时序逻辑则往往只能通过顺序逻辑描述方式才能解决。在第二节中的fdiv2例子中,我们还用过反馈逻辑:q<=NOT q。 上述反馈逻辑中实际上还包含了一个较为深刻的概念,现作如下分析:在上述反馈逻辑中,信号q对其自身敏感,上式右边的q变化就会导致左边的q随之变化,但上式左边的q和右边的q实际上就是同一个信号,如此,是否会导致信号q形成逻辑上的“振荡”,即左边的q又导致右边的q变化,右边的q又导致左边的q变化,如此循环形成逻辑上的不稳定?我们说这种情况是不会出现的,因为信号赋值语句所执行的赋值操作并不是立即完成的,而是需要一个延时之后才能完成,而在此延时之后,当赋值完成后,该赋值语句的执行条件:即cp信号的上升沿已过,故该语句不会重复执行。这相当于物理上竞争的概念。同时,变量赋值与信号赋值在这一点上也是存在差别的,即变量赋值是立即完成的。 VHDL语言还能很有效地描述有限状态机的状态迁移。有限状态机(FSM:Finite State Machines)可分为Moore型和Mealy型两种,在Moore型状态机中,状态迁移只跟状态机当前的状态有关,而Mealy型状态机的状态同时是当前状态和系统输入的函数。关于状态机的VHDL编程,可参考VHDL的专业书籍。 5、VHDL程序的分层结构: 通常采用分层设计的方法来设计一个完整的VHDL project。在低层设计中,一般采用行为建模方式,而在高层设计中可采用结构建模的方式来构造高层结构图。特别是在顶层设计中,一般都采用结构建模。 VHDL的各个元件可放在同一文件中,亦可放在不同文件中。如前所述,当各模块放在不同文件中而又要相互调用时,文件中应包含语句USE work.ALL。 第三节 常用的接口及总线设计 §3.3.1 接口标准: 常用的接口类型,接物理电气特性划分,大致可分为以下几类: TTL电平接口:最通用的接口类型,常用做板内及相连板间接口信号标准。其信号速度一般限制在二、三十兆HZ以内。驱动能力一般为几毫安到几十毫安,产品设计特别是总线设计时必须考虑负载能力。 CMOS电平接口:速度范围与TTL相仿,驱动能力要弱一些。 EIL电平接口:为高速电气接口,速率可达几百兆,但相应功耗较大,电磁辐射与干扰与较大。 1. RS-232电平接口:为低速串行通信接口标准,电平为 12V,用于DTE与DCE之间的连接。 2. 差分平衡电平接口:能实现较远距离,较高速率的传输,2MHZ信号在匹配适当地情况下,传输距离在15m以上。 3. 光隔离接口:能实现电气隔离,允许信号带宽一般在10M以内,更高速率的器件价格较昂贵。 4. 线圈耦合接口:电气隔离特性好,但允许信号带宽有限。 常用的板极接口类型,按接口实现的逻辑形式,主要有以下几类: 共享内存接口 并行口(PIO)接口 串行口(STI)接口 多总线技术 §3.3.2 串口设计: 异步串口:速度可达几百Kbps,在速度大于15kbps时,为可靠传输,一般推荐用EIA-402或EIA 485电平接口标准进行传输。 同步串口:常用的接口芯片如82525、20320,速率为2Mbps或4Mpbs。 无论同步或异步,在较高速率传输时,除在板内或传输线长度较短的板间传输时可用TTL电平接口外,一般要求用差分平衡电平接口:EIA422、端到端传输 FIA-485:差分总线传输、终端可达329。 使用差分平衡电平传输时,为保证传输质量,应进行信号匹配,对EIA-422,常用的匹配方法: 对于EIA-485差分总线传输,需在端点进行匹配: §3.3.3 并口设计及总线设计: 以AT总线为例,总线设计的几个主要注意事项如下: 1. 总线驱动能力设计;根据实际应用中可能接入总线的板卡板,应使系统线具有足够的驱动能力。 2. 总线隔离挂接在总线上的各单板应使用总线隔离器件。一方面减轻时总线的负载要求,另一方面对故障进行隔离,另外也确保信号是总线方式而非星形方式传送。 3. 时延考虑:各类总线都有一个速率限制范围,这就限制了总线的物理尺寸、设计时应考虑这点。另外,在底板尺寸较大时,地址、数据、控制,总线任一槽位的时延确保其时序联系正确。 4. 防串扰考虑:总线设计时,应尽量避免总线长距离相邻走线,如PCB板尺寸允许,线线之间应加入保护隔离地线。 §3.3.4 RS-232接口总线 RS-232 总线是采用按位串行的通讯总线,但它并不限制所传送的数据类型和数据帧长。可用于同步通信也用于异步通讯。 RS-232对其所传输的数据格式约定为:信息起始位、数据块停止位、奇偶校验位及若干数据位。 RSS-232为了增加抗干扰能力,采用负逻辑电路,其逻辑电平范围如下图所示: RS-232的接口电气:微机接口及内部电路是采用TTL和CMOS型电路。这些电路都不能直接与RS-232相连,中间必须要进行电平转换,常用的转换芯片有MC1488、MC1489、MAX232等。MC1488、MC1489需接12V的电源,其中MC1488用在通讯设备的发送端,MC1489用在通讯设备的接收端。MAX232是单5V供电。片内集成有升压电路产生12V的电压,使用时片外需匹配相应的电容。 RS-232传输的速率有300、600、1200、2400、4800、9600等标准的波特率。 RS-232最大传输距离是30m,如果要以较高的波特率传输较远的距离,则可选用RS-422,其传输距离可达1500m。 §3.3.5 RS-422和RS-423标准接口联接方法 1、RS-423接口 RS-232应用广泛,但对于现代通信网络来说存在以下问题:①数据传输速率慢,只有20KB/s;②传输距离短,一般只允许20~30m;③抗干扰能力差,为提高传输过程的抗干扰能力,RS-232采用高压(10V)传输数据。即使如此,由于它采用不平衡方式传输,即传输线中一条为信号线,另一条为地线,干扰电平对信号线的影响与较大,影响传输的接口的可靠性。因此,为提高干扰能力和加大传输距离,可采用RS-232或RS-422标准接口。 RS-423接口实际上是用双端差分接收器代替单端接收器,联接方式如图1 所示。由于两条传输线是双曲线,所受的干扰基本相同,对差分接收器的输入端来说相当于共模信号,不影响其差值,故对接收器无影响。 RS-423规定为单端输出线接到接收器的一个输出端,接收器的另一个输入端接驱动器的参考电平(地),驱动器与接收器没有公共地线,即为双端非平衡联接方式。要求逻辑1电平为-0.2~-6V,逻辑0电平为+0.2~6V。RS-423与RS-232 兼容,6V信号可作为RS-232一起工作时,其标准与RS-232一致。 与RS-232相比,RS-423抗干扰能力强,传输距离较远,传输速率也较高。传输距离为90m时,最大传输速率为100KB/s,则传输长度可达到1200m。 2、RS-422接口 RS-422采用双端平衡传输方式,即输入输出均为差动方式。其中一条线是逻辑1时,另一条线为逻辑0。由于两条双扭线传送的是一对互补信号,故抗干扰能力强、传输速率高。应用RS-422驱动器和接收器时,最大传输速率为10MB/s,这种情况下传输长度为120m。传输速率降低时,传输距离可达1200m。平衡驱动器的双端输出信号差要求在2V以上。RS-422联接方式如图 2 所示。 图 1 RS-423联接方法 图 2 RS-422联接方法 3、RS-423接口电平转换电路与联接方法 RS-423接口标准对接口电路的要求是:传输速率为100KB/s,传输距离最大12m,接收器为双端接收器。高电平必须在+4~+6V范围内,低电平必须在-4~-6V范围内。图12-30是使用3691驱动器和26L32接收器时的RS-423接口联接方法。 4、RS-422接口电平转换电路与联接方法 它要求驱动器双端输出电平在2V~6V之间,接收器可检测到的信号为200mV。RS-422接口电平转换电路及联接方法如图 所示。有些驱动/接收器具有三态控制,用适当的信号控制芯片的三态控制端,就可实现几个设备在一对接口传输线上采用半双工方式接收和发送数据。 §3.3.6 RS-485标准接口与联接方法 与RS-422类似,RS-485也是采用平衡驱动、双端平衡差分输入方式,技术性能规范与RS-422相同,接口联接方法与一样。它与RS-422驱动器具有较强负载能力,接收器的负载较小,允许一个驱动器驱动多个从机输入上,多个从机的输出(每个时刻只有一个有效)需联到主机的输入端。在这种一个驱动器连到多个连接器的场合,应使用RS-482接口。 常用的RS×485接口发送器为MC/SN75174、接收器为MC/SN75175,以及发送驱动器/接收器为MC75176,它包括一个驱动器和一个接收器。SN75174和SN75175引脚与结构如图 所示。在应用时如果为双机通信,可不使用驱动器/接收器的允许控制端,即把75175的允许端接固定高电平。在多机通信时,从机的驱动器必须加以控制,在收到主机传送的地址与本机相符时,才允许接通该驱动器。 图 3 SN75174和SN75175的管脚与内部结构 §3.3.7 20mA电流环路串行接口与联接方法 20mA电流环路串行接口也是目前串行通信中广泛使用的接口,但未形成正式标准的接口电路。这种接口比RS-232接口简单得多,只有4条线,如图 4所示。正、负发送端和正、负接收端形成一个输入电流回路和一个输出电路回路。当发送数据时,根据数据的逻辑1或0,分别使回路形成通断状态,如图 4 中的开关所示。 20mA电流环路是异步串行接口,每次发送数据时必须以无电流的起始位作为每一个字符的起始位,接收端检测到起始位时便接收一个字符数据。这种接口方法的最大优点是低阻传输线对噪声不敏感,并且容易实现光电隔离。 20mA电流环路串行接口采用信号电流传输,接口电路的联接方法如图 所示。图中先将TTL电路转换成电流信号,传输后经光耦合器再转换成TTL 电平信号。这是一个对地隔离的电流环路传送和接收电路。 第四节 单板硬件设计指南 §3.4.1 电源滤波: 1·输入侧电源的滤波: 对于单板的电源输入侧,出于上电特性及热插拔的需要,需要加П型滤波电路,基本的电路形式为图1所示。 图1 其中,C1为输入侧的输入电容,L为输入电感,C2为П型滤波电路的输出侧电容;C1的主要目的是为了限制上电瞬间的电压上升率,并滤除输入侧电路由电源引入的纹波,因此,C1一般是由直流电容及交流电容组成的并联电容组,其中直流电容的主要作用是去除电容中的纹波,而交流电容的主要作用是为了去耦。 从参数及器件选择上,输入侧一般选取钽电容,去耦电容的值为 0.01uf ~1uf之间,针式或贴片均可,但从生产工艺的角度,则以选取贴片为佳,推荐的参数为直流电容10uf,交流电容0.1uf。 电感的作用为抑制电流变化率,电感越大,抑制效果越好,但同时电感太大时的上电特性不好,上电及下电时,电感两端会产生反电势,这样会对后面的负载产生影响,故参数不宜过大,因而推荐的参数为10uH。 输出侧的电容不仅要完成去耦及滤纹波的作用,而且还须维持滤波后电平不受电感反电势的影响,兼顾考虑板内负载大小及板内其他去耦电容的数量,推荐参数为直流电容10uf,交流电容0.01~1uf。 2·IC的电源去耦: 经过П型滤波电路的瞬态电压特性会有较大改善,但由于负载及非线形器件的影响,使得电源纹波不可能完全被消除,且分布特性对于电源的特性影响较大,因此,在器件两端应加去耦电容,以改善板内IC侧的电源特性。 器件选择同1所述,推荐的参数为直流电容10uf,交流电容推荐0.01~1uf。 §3.4.2 带电插拔座: 带电插拔座的特性是先使地线连接,然后电源部分再上电,这样使得热插拔的上电过程有序,避免了电源上电不均衡所带来的冲击。 而在系统调试中,一些单板的热插拔成为了一种经常且必要的行为,而热插拔所带来的电流及电压冲击是极其巨大的,这时对单板的损伤是由电流及电压变化率过快所造成的,而对系统的冲击是由负载的突变造成的,因此,遏制电流、电压变化率,减轻负载突变是热插拔的先决条件,但单靠П型滤波电路是不够的,这样需要有热插拔的单板必须加带电插拔座。 §3.4.3 上下拉电阻: 1·上拉电阻的选取原则: A·提高灌电流的能力: 单板内部的器件功耗及驱动能力各不相同,这样在器件连接时的灌电流能力不尽相同,连接上会有驱动问题,此时需要加上拉电阻。 B·电平兼容: 板内或板间器件选取各不相同,信号电平特性各不相同,出于兼容性的考虑,须加上拉电阻以保证兼容性。 C·电平稳态的特性: 个别器件在上电时要求某些管脚的初始电平固定为高,此时必 须加上拉电阻以保证器件能够正常的工作。 D·器件及参数选取: 对于A,B,一般的上拉电阻选取2K~1M欧姆,视负载情况 而定,重负载时电阻应选取靠近下限,轻负载时选取上限,这里的 负载以器件功耗指标来确定;对于上述C的情况,则以该种器件的 数据特性来决定。器件一般以金属膜的电阻或阻排为准。 2·下拉电阻的选取原则: A·电平兼容: 板内或板间器件选取各不相同,信号电平特性各不相同,出于兼容性的考虑,须加下拉电阻以保证兼容性。 B·端接: 板内或板间的信号频率较高或信号上升沿较陡时,需要加端接 电阻下拉到地,一般此时经常性的会再串入一个适当的电容。 C·电平稳态特性: 个别器件在上电时要求某些管脚的初试电平固定为低,此时必 须加下拉电阻以保证器件能够正常的工作。 D·器件及参数选取: 对于A,下拉电阻一般选取1K~100K欧姆,视负载电平情况 而定,CMOS电平的负载,电阻应选取下限,TTL电平时选取上 限,这里的电平以负载指标来确定;对于上述B的情况,一般选取 75~150欧姆的电阻;对于上述C的情况,则以该种器件的数据特 性来决定;器件一般以金属膜的电阻或阻排为准。 §3.4.4 ID的标准电路 ID即为单板的板位信号,一般用来作邮箱地址译码选择,ID信号在母板上接VCC或GND,所以在单板上需作处理,典型电路如下: §3.4.5 高速时钟线设计 在PCB布线中对高速时钟信号线,应少打过孔,减少线径变化层次,维持线宽一致性,不用T型接头分支,增加时钟线与其它线的间距,减少平行走线,条件允许的情况下,在时钟线两侧加上地线隔离。另外可采用终端匹配技术消除反射。 (1)始端串阻 在驱动端,加一个小阻值串阻,反射将发生在负载端,目的是确保反射波不会从源端再反射回来。串阻的值须满足下列等式: Rs≥ZT--Tout Rs--串阻 ZT-线的特性阻抗 Rout-源端输出阻抗 串阻方式对每根时钟线只需一个电阻,几乎没有直流功耗,而且电阻还起着限流作用,减小地线反冲。但是反射仍然有可能发生,沿线也将存在中间电压,因此,这种方式不适合分布式负载。另外,高的电阻值还会减少时钟波形的幅度和增加上升时间(在驱动端的接口芯片应为74AC16244系列芯片)。 (2)终端并联AC方式 在负载端并联一个RC,电容值的选取一定要非常小心,它的值必须大得能够吸收传输波的能量,但又一定要小得不会损害信号的上升时间,通常用小于50PF的电容。电阻值RL大约等于ZT(几十欧姆左右)。 并接RL方式对时钟线来说很少采用,对信号的上升时间损害较大,但它没有DC功耗,能够消除长线的反射。 总的来说,终端匹配技术,常用来防止电压反射,减小上冲和下冲,防止时钟错误和损害片子。对一个系统来说,可选的终端匹配技术有很多,但要确保终端元件尽量靠近源端(串阻)或靠近负载端(并接RC),这样可以减小诱导电感,使匹配有效。 §3.4.6 接口驱动及支持芯片 这里所说的接口主要是指总线(地址总线,数据总线等),从驱动能力和速度上综合考虑,对地址总线、控制总线和时钟信号等统一采用TI公司的74AC16244;对双向的数据总线采用TI公司的74AC16245。 禁止选用74FCT16244或74FCT16245系列芯片。 §3.4.7 复位电路 复位电路采用AD公司的复位电路芯片ADM708,常用电路如下: 图一 常用的复位电路 /MR为复位信号输入端,低电平有效。它可以直接和手动复位开关相连,也可以接由逻辑电路产生的软复位信号,或二者的组合。 §3.4.8 Watchdog电路 根据清除Watchdog方法的不同,常用到两种Watchdog电路。 1)利用并行口某一位对Watchdog进行清除,电路原理如下: 图二 Watchdog电路一 这种电路的特点是对Watchdog不能进行开、关,CTL脚为高或为低电平超过一定时间就会引起Watchdog触发,避免了因CPU死机Watchdog造成被长期清除的现象。 2)Watchdog占用CPU的地址空间,电路原理如下: 图三 Watchdog电路二 这种电路的特点是对Watchdog可以灵活地进行开、关。并且只要Watchdog打开,如果没有定时清Watchdog,就一定会造成Watchdog触发,不会出现Watchdog无法触发的现象。 §3.4.9 单板调试端口设计及常用仪器 1) 常用的单板调试端口: A、异步串口:通过RS232口和PC机相连,利用软件debug进行调试; B、80口:实际是ISA总线的扩展板,板上有LED(占用CPU I/O地址80H), 可将简单调试信息显示出来。 2) 常用仪器: A、 仿真器:8031仿真器,80186/188仿真器,80386EX仿真器,68360 仿真器。 B、 调试仪器:逻辑分析仪、示波器、万用表、波形涵数发生器、协议分析 仪。 第五节 逻辑电平设计与转换 §3.5.1 TTL、ECL、PECL、CMOS标准 随着电路工艺和制造技术的不断改进,单板集成电路的集成度将越来越高,功能将更趋完善,这是集成电路工业发展的必然趋势。 为帮助设计人员对各种设计应用选择最佳的逻辑系列,本章将提供三种主要逻辑系列的特性以及有关的资料。同时,阐述设计数字电路的步骤和有关问题。 一 逻辑系列的类型 集成电路工艺虽有多种,但占据主导地位的是TTL逻辑(晶体管-晶体管逻辑)、CMOS逻辑(互补金属氧化物半导体逻辑)、和ECL逻辑(发射极耦合)。 1 TTL工艺 由于TTL集成电路妥善地处理了速度与功耗之间的矛盾,所以自从1964年德克萨斯仪器公司投产以来,已得到了广泛的认可,并成为最流行的集成电路系列。 除了标准的TTL系列之外,整个系列还包括低功耗TTL、高速TTL、高速肖特基TTL(S-TTL)、低功耗肖特基TTL(LS-TTL)、改进的肖特基TTL(AS-TTL),和改进的低功耗肖特基TTL(ALS-TTL)。全部TTL系列采用相同的基本电路结构,因此,它们之间是兼容的。 每个子系列均体现了速度与功耗之间的综合平衡。由于速度与功耗的乘积近似为一个常数,因此为了提高速度必须增加功耗,反之亦然。这是因为要达到较高的速度和较低的传输延迟,必须降低电路的电阻值。而电阻值的降低,意味着功耗的增加。 只有改善速度-功耗曲线才能进一步提高性能,这就要求改进电路的设计。采用肖特基箝位二极管,基本上阻止了电路中晶体三极管进入饱和状态,可降低晶体管的存贮时间。这样,虽提高了速度,却没有增加功耗,因此,肖特基系列具有更吸引人的性能。 TTL系列的工作范围有两种,如下表所示: 系列 温度范围 电源范围 军用 54XX -55~+125℃ +4.5V DC~~+5.5V DC 工业用 74XX 0~+70℃ +4.75V DC~5.25V DC 2 CMOS工艺 互补对称金属氧化物半导体逻辑(CMOS逻辑)很受设计人员的欢迎,这是因为它的功耗低,且能在宽的电源电压范围内可靠地工作。一个CMOS器件是由两种金属-氧化物半导体(MOS)门制成的。一个是N沟道门,另一个是P沟道门。两个门的连接方法给出了该器件的命名(互补-对称金属-氧化物半导体)。 CMOS门无论在1状态或在0状态,均没有电流通过它,这是其独特的性质。因此,CMOS门只有在状态转换过程之中,电源才会消耗。可见,其功耗与门的转换频率成正比。 CMOS系列为其特有的低功耗所付出的代价,是较低的工作速度。正像全部MOS集成电路一样,早期的CMOS最高工作频率为7MHz,即仅适合中低速应用。现在已有74HC高速CMOS系列,其工作速度与TTL系列相当,因此目前使用范围也十分广阔。 CMOS逻辑一般的工作范围也有两种。以RCA DC4000A系列为例,两种范围如下表所示: 温度范围 电源范围 陶瓷封装 塑料封装 -55~+125℃ 40~+85℃ +3V DC~+12V DC +3V DC~+12V DC 3 ECL工艺 发射极耦合逻辑(ECL)以其高的工作速度为人们所熟知。ECL属于非饱和型数字逻辑,从而消除了晶体管饱和时间,即消除了限制速度的主要障碍。因此,在三种逻辑系列中,ECL功耗最高,应用最少。 ECL利用一对输入晶体管:一个在导电状态,另一个在截止状态。由公共发射极电阻止施加的信号完成导电状态的转换。发射极耦合逻辑正由此而得名。 MECL I是由莫托洛拉公司于1962年投产的第一种单片数字集成电 路,那时认为MECL I是超过当时工艺水平的,没有另外的逻辑形式能达到MECL I的性能。因此,一些高性能系统均采用MECL I逻辑系列。 二十年之后,肖特基TTL工艺已缩短了性能的差距。莫托洛拉公司也在ECL逻辑系列中增加了MECL II,MECL II和MECL10000几个品种。后来投产的系列,在性能上和使用方面均较先前的有所改进。MECL II系列典型的传输延迟为1ns,触发器的最高触发频率为500Mhz。 ECL的工作范围有三种,如下表所示: 系列 温度范围 电源电压范围 1. MC10500 MC10600 MCM10500 MC1648M MC12500 2. MC10100 MC10200 MC1600 MC1200 3. MC10100 MC1697A MC12000 -55~+125℃ -30~+35℃ 0~+75℃ VEE=-5.2V±0.010V VEE=-5.2V±0.010V VEE=-5.2V±0.010V 设计者根据设计系统的逻辑要求,除了合理地选择相应的系列电路和品种外,还必须通过器件-插件板(印制电路板)-底板(也可以是印制底板)-机柜等四组装才能构成一个完整的数字系统。因此在用TTL电路进行系统设计时,除了必须了解TTL电路的基本功能和特性外,还必须熟悉工程的实施方法。 2 TTL集成电路的工程设计 本节阐述设计人员在设计TTL电路时需考虑的各种要求。 1、电路的极限参数和规范参数 极限参数是保证集成电路能可靠工作的权限值。为了防止电路损坏,电路的工作条件不应超过所规定的极限范围。规范参数是保证集成电路能够正常工作的参数,所以电路必须严格按器件参数规范值进行测试和使用。 目前,国内外推出的各种产品其种类,特性参数,即使是同一种功能的TTL器件其工作特性也不完全相同,因此在选用一种新器件以前,一定要仔细阅读厂家提供的参数。 2、电源和地 对电源的纹波和稳定度的要求: I类、III类 ≤±5%(±250mV) III类 ≤±10%(±500mV) 同时根据不同系列电路的速度指标和电流变化率的差异还必须加接旁路滤波电容。其容量通常为0.01μF~0.1μF。 低频滤波电容器应连接在印制电路板两边电源线入口处,通常用两个20μF~50μF的钽电容或电解电容。 3、电路的工作环境 国产各系列TTL电路的适用环境温度可分为下述三类: I类 -55℃~+125℃ II类 -40℃~+85℃ III类 -10℃~+70℃ 在此工作温度范围内,电路的功能和参数应完全符合产品规定的要求。 4、电路外引线端的连接 (1)在使用TTL电路时,不能将电源Vcc和地线颠倒错接,否则将引起很大的电流而造成电路失效。 (2)电路的各输入端不能直接与高于+5.5V和低于-0.5V的低内阻电源连接。因为低内阻电源能提供较大电流,会由于过流而烧坏电路。 (3)不允许将电路的输出端与低内阻电源直接相连接,但可以通过电阻相连以提高输出高电平。当使用集电极开路输出电路时,必须通过计算选用阻值合适的外接电阻。 (4)具有图腾柱或达林顿输出结构的TTL电路不允许并联使用。只有三态或集电极开路输出结构的电路可以并联使用。当若干个三态逻辑门并联使用时只允许其中一个门处于使能状态(“0”态或“1”态),其它所有门应处于高阻态。当将集电极开路门输出端并联使用时,只允许其中一个门处于低电平输出状态,其它门则应处于高电平输出状态,否则将会出现逻辑错误。 (5)当将一些集电极开路门路的输出端并联而使电路具有“线与”功能时,通常应在其公共端出端加接一个上拉负载电阻RL到Vcc端。 (6)集电极开路输出门电路中输出管的击穿电压一般在10V以上,有的可达20V。只要在输出管所允许的驱动能力和击穿电压范围内就可任意选用工作电压值,用作电平转换接口,指示灯驱动等。 5、对输入信号边沿的要求 驱动TTL电路的输入信号必须具有较快的转换时间。当输入信号上升或下降时间大于1μS时,有可能在输出端出现信号振荡。这种振荡信号送入触发器或单稳态触发器中就可能引起逻辑错误。 一般组合电路的输入信号上升或下降沿变化速率应小于100ns/V,时序电路输入信号上升或下降沿变化速度应小于50ns/V。施密特触发器把缓慢变化的信号边沿变成陡变的边沿。对于慢边沿输入信号,必须加整形器。 6 TTL 门、扩展器和触发器的使用要求 (1)、输出端的连接 TTL电路的输出端不允许与电源短路,但允许瞬间接地。当一个管壳内封装有若干个单元电路时,不允许其中的几个单元电咱的输出端同时瞬间接地。 (2)、不使用的输入端的处理方法 A·若电源电压不超过5.5V,与门电路的使用端入端和触发器不使用的置位、复位端可直接连到电源Vcc上;也可将不用的输入端分别通过一个大于或等于1kΩ的电阻连到Vcc上;或把几个不使用输入端通过一个公共电阻连到电源Vcc上;也可以把同一块电路的不使用的输入端并联到该电路的一个已被使用的输入端上。 B·如果前级驱动器具有足够的驱动能力,可将与或非门的不使用的与输入端直接连到与或非门的已使用的某一个输入端上,但也可把不使用的或输入端接地。 C·为了达到最低功耗,可将不使用的与非门和或非门等器件的所有输入端接地,同时也可将它的输出高电平连到不使用的与输入端上。 D·不使用的输入端可以悬空但决不允许带开路长线,以免产生“低频效应”,造成单拍工作失常。 (3)扩展器、触发器输入端的连接 带扩展的门应尽量与其所带的扩展器靠近,使其连线最短,以避免增加扩展器连线的分布电容。一个或扩展门最多可带两个或扩展器,而且每带一个或扩展器级延迟将增加40%左右。 不应将触发器的不使用输入端悬空。触发器的输入端连接线应尽量短。当用若干触发器构成时序电路时,由于时钟信号沿传输线传送时存在着时间偏差,到达或进入触发器的时钟信号将产生时钟偏移tskew。应使tskcw尽可能小。 (4)、触发器对输出负载和信号源的要求 A 应正确区分锁存触发器,D型触发器和J-K触发器对电位输入和时钟信号的要求,即电位输入信号(数据)与时钟信号的时间关系必须满足推荐使用条件中的建立时间tset和保持时间th的要求。 B 一般不允许触发器的输出直接驱动各种指示灯、长传输线和电感负载,否则必须附加缓冲门。 三 CMOS电路的工程设计 CMOS IC是压敏器件,其输入阻抗很高,用CMOS IC直接带动CMOS IC时,其直流负载是很轻的。主要考虑电平匹配就可以。 1、对总线终端的驱动 高速CMOS系统中,以CMOS IC驱动总线是很常见的事。工作时不能让总线浮空,而是通过上拉或下拉把总线接到Vcc或Vss上。为了提高工作速度,根据一般充电慢于放电的特点,在实际中大多数采用常态时将总线上拉为高电平的方法。加入上拉或下拉电阻后,可以大大减少总线受噪声的干扰,使总线工作在所有三态总线驱动器全部处在三态时,也不会被悬浮起来的状态。 在总线设计中,终端电阻阻的选择,往往要考虑速度和或功耗的折衷。总线的工作速度是与总线相关寄生电容和终端电阻形成的RC时间常数的函数,终端电阻越低,总线工作速度越快,总线功耗也越大。Motorola建议用户在使用HCMOS IC系列电路时,选取总线终端电阻的阻值可在1kΩ-1MΩ之间。 当数据长距离传送时,数据的通过的导线可以看作是长线。当然,线距离的长短,应当是相对于数据传输率而言的。高速工作的总线、PCB板上的长线、同轴线和带状电缆都可视为长线。所有的长线都可以接成低阻抗终端。低阻终端有利于减少噪声,减少瞬时扰动,减少过冲和串扰,低阻终端还可更快地将传至接收终端,然而却加大了功耗。所以长线终端阻值的选定,仍旧是功耗、数率速度及传输线长度诸因素之间的折衷。 当然可以使用更高的电阻阻值,但却减慢了速度且可能使信号退化,然而可以降低功耗。 虽然所有的导线都具有传线特性,但并不是对每一根导线都要考虑它的传输线效应。一般认为,只有在驱动器输出波形上升时间和下降时间等于或小于长线(即传输)延时的3倍时,才需要考虑传线效应,这种终端的功耗比较大,往往超过逻辑元件本身的功耗,因此在高速CMOS IC系统中,一般不提倡使用它。 四 ECL电路的工程设计 ECL电路(即发射极耦合逻辑电路)是一种非饱和型的数字逻辑电路。与DTL、TTL、S-TTL等逻辑电路不同,ECL电路内部的晶体管工作在线性区或截止区,从根本上消除了限制速度提高的少数载流子的“存储时间”。因此,它是现有各种逻辑电路中速度最快的一种电路形式,也是目前唯一能够提供亚毫微秒开关时间的实用电路。 1、基本门电路的结构 典型的ECL基本门电路的结构由三部分组成:差分放大器输入电路:温度-电压补偿(跟踪)偏压网络(参考源)和射极跟随器输出电路。 ECL电路一般能用于驱动传输线,因此通常设计成射极开路输出的形式。此时,传输线的终端匹配电阻RL即为输出负载。 2 ECL电路的特点及应用范围 ECL电路是根据高速噪声数字的应用要求设计的,它具有以下独特的优点: (1)、速度快 速度快是高速数字系统线咱设计者广泛采用ECL电路的一个重要原因。ECL基本门电路的典型传输延迟时间已达到亚毫微秒量级,其触发器、计数器的工作频率也在1GHz范围。因此,一个ECL系统与等效的TTL系统相比,其工作速度至少可以快一倍以上。 (2)、逻辑功能强 ECL电路能同时提供互补逻辑输出,这样不仅可以节省系统所用的组件数,减小系统功耗,而且由于互补输出具有相同的传输延迟时间,因此可以消除一般逻辑电路中为产生互补逻辑功能而设置反相器所增加的时间延迟,进而提高了系统的速度。 (3)、扇出能力高 输入阻抗高(通常约10KΩ),输出阻抗低(约7Ω)是ECL电路的性能特点之一,这种特点允许电路有高的扇出能力以CE10K。 (4)、噪声低 系统噪声的大小直接与噪声源的能量、逻辑的消噪性能和互连线的阻抗等有关。就噪声的产生来说,ECL电路的内部噪声较小。 (5)、便于数据传输 ECL电路具有互补、大电流驱动能力输出特别适合于以差分方式驱动和接收双绞线或其它平衡线上的信号。ECL电路的差争线接收器具有1V或者更大的共态噪声抑制能力。这是因为差分工作时,耦合到双绞线上的任何噪声一般是等同地出现在该双绞线的每股线上(共态),即串扰是等同地被线拾取,而接收器只响应两条线上的电压差,所以可双大大抑制引线串扰的影响,从而易于实现远距离的数据传输。驱动同轴电缆时,其距离只受电缆频带宽度的限制,而且可以改善系统的性能,驱动双绞线的长度可以在300m(约1000ft)以上,并且较同轴电缆经济。 除了上面介绍的主要特点以外,ECL电路的结构还提供了其它若干有益的特性,它们是: (1)可以简化电源。ECL电咱对电源电压的同步变化是不太敏感的,因此可以在某些应用中相对地放松对电源波纹、偏差和分配的要求。有时允许ECL电路的电源电压范围可宽至±10%。由于ECL电路工作时电源电流基本上恒定(不随逻辑状态变化而变化,也不随工作频率增加而增加),因此可以考虑放宽对电源内阻的要求。加上参考电源是设计在电路内部,因此整个电路可以由单一电源供电。所有这些,使电源系统设计简单、成本降低。 (2)逻辑功能变化范围宽,适应性强。ECL电路的差分放大器设计允许它作线性方面的应用。ECL线接收器可以用施密触发器和线性放大器用。由于这一应用灵活性,许多功能可以用标准的ECL电路来完成。 (3)由频率提高引起的附加功耗小。开关工作时因对寄生电容充放电而要消耗一定的能量,对于有电源电流尖峰的逻辑电路来说消耗的能量更大。由于每次充放电都要消耗能量,所以TTL电路的功耗在高频范围随开关频率提高而显著增加。由于存储在杂散电容中的能量与电压平方成正比,而ECL电路的信号摆幅又比TTL电路小3~4倍,所以它因杂散电容引起的附加功耗要较TTL电路小一个数量级。特别是,它没有电源电流尖峰引起的附加功耗。,ECL电路的功耗基本上不随频率而变化,关于这一点在高频领域是甚为重要的。 (4)便于实现各种规模的集成。 当然,ECL电路并不是完美无缺的,它的主要缺点是直流功耗大。从某种意义上来说,ECL电路开关速度的提高是以牺牲功耗换取的。 2、应用范围 ECL电路在高速信息系统中有着广泛的应用,主要包括: (1)大型高速电子计算机;(2)高速计数器、缓冲存储器;(3)高速模拟/数字转换系统;(4)数字通信系统;(5)航天和通信卫星系统、雷达系统;(6)频率合成器;(7)高速数字仪器和仪表;(8)微波测量系统;(9)数据传输、情报处理系统。 5 PECL电路 PECL电路是单正电源供电的ECL电路,其特点同ECL电路,由于其单正电源供电,简化了整个系统的电源设计。目前在高速光模块电路中,使用十分广泛。 六 传输线电路 线电路是指在一个系统内部或在几个系统之间和总线相接的、用于数字通信的专用集成电路。它是向传输线发送或从传输线接收信号的电路。 当系统互连线的距离增加和信号传送频率提高时,信号在传输线上的反射、串扰、衰减以及共地噪音等问题对信号传输的可靠性的影响就不能忽略。 1、信号在传输线上的传输 (1)、传输线的概念及长线和短线的区分 传输线是具有分布参数的传输信号的长线,其特性阻抗Zo和信号在线上的传输速度由传输线单位长度的分布参数决定。 长线和短线和概念是相对于信号本身来说的。当信号沿线传播的延迟时间比信号的变化时间(例如信号的上升时间tr或下降时间tf)短得多时,信号在线上的任何反射仅反映在信号的边沿上,这样的线就称为短线。当信号沿线传播的延迟时间与信号变化时可以相比拟时,就必须考虑信号传播的延迟时间。此时,由于长线不均匀或负载不匹配而产生的信号反射将在线上出现“振铃”,这种较长的传输线就叫做长线。所以长线和短线的概念是相对的。 在数字信号传输领域中,常采用下述定义:线的传输延迟时间(tpd)大于驱动电路信号上升时间(tr)的一半,即大于(tr/2)的线称为长线,反之就是短线。例如,对于ECL和STTL电路来说,几十厘米长的线就算是长线,而对中速CMOS逻辑电路来说,则要几米长的线才算是长线。 (2)、传输线的反射和“振铃” 信号在传输线上传输时,若遇到阻抗不连续的情况,则将出现反射现象。 反射波将按正负反射系数在线上来回传输,形成所谓“振铃”现象。这往往会增加系统的噪音干扰,通常应采用匹配的方法来消除或抑制反射及“振铃”现象。 (3)、线间串扰 串扰是指一条线上的信号通过互感和互容在被干扰的线上产生不希望的耦合信号。 串扰分为电感性成和电容性成两种(参看图4-2)。电感性串扰正比于信号线上电流变化率;电容性串扰正比于线上信号电压的变化率。 串扰是系统是噪音的一个主要来源,系统设计者必须仔细加以考虑。 串扰还分近端(异向)串扰和远端(同向)串扰两种。近端串扰是电容串扰和电感串扰之和;远端串扰是电感串扰和电容串扰之差。在TTL系统中,双绞线间的近端串扰幅度可达0.8V左右。应该尽量避免产生近端串扰,将平行传输信号的发送线和接收线分开,或在要求严格的场合,应采用如同轴电缆等屏蔽优良的线。 (4)、共式噪音 一个良好的系统必须有一个很好的地系统和电源系统,否则通过系统共公的阻抗(电阻R和电抗jωL)将产生较大的共式噪音而使系统发生故障。 为了减少在传输信号时长经下线电流对电源和地的扰动,驱动器和接收器的接地端应该直接与电缆的地线相连,同时它们的电源和地之间要加去耦电容,这样就保证了信号传输时,线电流回路不对其它电路产生共式干扰。 上面讨论的是系统内部噪音。若走线很长,外部的噪音就成为一个重要因素。随着地线长度的增加,获得一个良好的地线就更加重要,但也更加困难。同时当回路的几何尺寸很大时,它相当于一个良好的天线,接收外部电磁场的干扰。为了避免形成回路,信号地线系统必须和安全地线分开,最后只通过一点接大地。 在噪音环境恶劣或对噪音要求严格的场合,信号的驱动和接收都必须采用差分平衡方式,通过抑制共式干扰(串扰也是共式干扰),而实现可靠的传输。 七 逻辑系列的特性TTL,CMOS, ECL及设计选择 选择最佳逻辑系列是所有数字系统设计的关键一步。有的设计要求高速操作,有的需要较低的功耗,还有的可能要求较低的成本。 1、电压传输特性 各逻辑系列的典型电压传输特性如图1.2所示。这些曲线含有电路设计人员感兴趣的某些信息,例如,输出导电,截止电压,以及直流噪声容限,均为输入导电、截止电压的函数。除此之外,这些曲线还表明了以下四点: 1、作为电源电压的函数,传输特性随电源电压的改变而改变。 2、作为温度的函数,传输特性随温度的改变而改变。 3、转换时的功率(设在同一图上描绘出电源电流曲线)。 4、滞后特性(对施密特触发器有用)。 (a)TTL;(b)肖特基TTL;(c)CMOS;(d)ECL 图 电压传输特性 2、速度或传输延迟 当设计一个系统时,逻辑系列可能的运行速度是需要考虑的重要因素。速度一般通过“传输延迟”予以说明,而传输延迟则定义为信号通过器件传输的所需要的时间。 应注意,需说明两个延迟时间。一个是tplh,它定义了输出从低状态改变到高状态的传输延迟。而另一个是tphl,它定义了输出从高状态改变到低状态的传输延迟。通过一个电路的总传输延迟等于该电路中每个器件单个传输延迟之和。因此,正确地确定各器件的状态转换是十分重要的。 工厂用另外一种方法说明器件的速度,常叫做“触发频率”,像触发器这样的器件,转换到另外一种状态的最高频率,便是极大触发频率。若转换速率快于极大触发频率,将产生不确定的输出状态,自然这是必须避免的。 3、功耗 必须严格限定电源电流值时,或者当电路的热耗成为必须满足的关键条件时,功耗便特别重要。 电源电压和电源供给电路的平均电流的乘积定义为功耗。一般来说,功耗是针对电源对每个门的耗散定义的。为了估算总功耗,必须将单个门的耗乘上系统或电路中的等效门的个数。 对TTL而言,直至5MHz之前每个门的功耗几乎是不变的,然后随着频率尖锐地增长。而CMOS逻辑系列的每个门的功耗随着频率线性变化。 5、抗扰度 没有一个逻辑系统是绝对完善的。噪声是影响系统正常工作的客观现实,因此,设计人员必须认真地予以处理。显然,噪声可能产生不应有的逻辑状态,并会引起错误的系统操作。消除有害的噪声可从两方面着手处理。一个方法是努力降低噪声源,传输线技术、去耦、屏蔽是用于降低噪声源的几种可供采用的方案;第二个方法是努力使噪声接收端不易受噪声源的。逻辑系列的抗扰度体现了在噪声的环境下正常操作的能力。通常,缓慢的逻辑系列对噪声不敏感,这是因为它们对噪声尖峰响应缓慢。 6、负载加载 设计任何一个系统,均必须将一些逻辑组件相互连接起来,以实现某种逻辑功能,即必定碰到逻辑门的加载问题。将一个逻辑器件可能驱动的逻辑器件的数目定义为负载能力。它可以通过“扇出”和“扇入”两个参数很好地予以说明。“扇出”是逻辑器件驱动能力的量度。“扇入”是逻辑器件所呈现的输入加载的量度。扇入系数Ni是TTL门电路输入端的数目,在制造时确定,一般Ni≤8。 表1.2比较了各逻辑系列的负载特性。 表1.2 逻辑系列的负载特性 驱动级 接收端 TTL S-TTL LS-TTL AS-TTL ALS-TTL CMOS(5V) ECL TTL S-TTL LS-TTL AS-TTL ALS-TTL CMOS ECL 10 12 5 12 5 0 ** 8 10 4 10 10 0 ** 40 50 20 50 20 1 ** 8 10 4 10 4 0 ** 40 50 20 50 20 1 ** *>100 *>100 *>100 *>100 *>100 >100 ** ** ** ** ** ** ** △ * 设采用了上拉电阻R ** 因逻辑电平的差异,不能直接兼容,需采用电平移位器才能互相连接。 △ 参考工厂的器件手册 §3.5.2 TTL、ECL、MOS互连与电平转换 一、TTL集成电路与CMOS集成电路的连接 一般CMOS电路既不能提供出大电流也不允许灌入大电流。因此两者之间的连接主要是电平转换,和驱动能力的问题。 通常在靠近TTL端,接一上拉电阻,具体接口参数与具体的芯片有关,要保证可靠的工作,一定要根据芯片的参数进行计算选型。 二·TTL集成电路与ECL电路的接口 用ECL电路驱动TTL电路时,其间的连接稍许复杂,分别为TTL至ECL和ECL至TTL的专用电平转换接口电路,可达到高速转换的要求。如XEL22,XEL23等芯片。 3· CMOS电路与ECL转换 由于CMOS电路通常驱动能力较弱,必须先进行TTL转换后再驱动ECL转换芯片,反之亦然。 在三种逻辑电平进行转换时,主要考虑以下几点: 1· 电平关系,必须保证在各自的电平范围内工作,否则,不能满足正常逻辑功能,严重时会烧毁芯片。 2·驱动能力,必须根据器件的特性参数仔细考虑,计算和试验,否则很可能造成隐患,在电源波动,受到干扰时系统就会崩溃。 3·时延特性,在高速信号进行逻辑电平转换时,会带来较大的延时,设计时一定要充分考虑其容限。 4·选用电平转换逻辑芯片时应慎重考虑,反复对比。通常逻辑电平转换芯片为通用转换芯片,可靠性高,设计方便,简化了电路,但对于具体的设计电路一定要考虑以上三种情况,合理选用。 第六节 母板设计指南 母板为安装在模块插框背面的印制板,它通过板内的联接器使得每个电路板相互联接,单板间信号的传送,电源的供给,均由母板上印制线来实现,避免了电路板间的电缆缠接,从而使整个系统具有很高的可靠性与易维护性,也保证整机背面连线的条理性。CC08机机所需要的母板的共同特点是面积大,走线长,插座多,传输信号速度快,常常需用多层印制板来实现,其设计必须按高速传输线理论及电磁干扰理论来设计。 §3.6.1 公司常用母板简介 CC08机交换机的母板主要有主控框母板、用户框母板、中继框母板和时钟框母板四种类型,它们都是为了单板的连接、信号的传送而设计的,由于功能不一,其特点不尽相同。 1、主控框母板 主控框母板是为连接、MPU、控制板、通信板、网板、信令板而设计的PCB板,根据用途不同它分为模块主控框母板(如A型机、C型机模块、B型机)和AM/CM控制框母板(如8模块AM/CM、16模块AM/CM、32模块AM/CM、128模块AM/CM)两大类。图1为B型机主控框母板示意图,它的面积为两个机框的尺寸,图2为32模块主控(通信)框母板示意图,它面积为一个机框尺寸,它们的共同特点是面积大,插板多且种类复杂,板内信号速度高,各种总线很多并形成大量的平行线,线间距较小,常常用6层PCB板完成。合理的布局走线,正确的信号匹配是满足整个系统工作稳定的关键。 图1 B型机主控母板示意图 图2 32模块主控(通信)母板示意图 2、时钟框母板 时钟板(CK2,CK3),通过时钟母板与其它框相连,为整个交换机系统提供各类时钟信号。该板上提供较多的同轴插座和背板配线座,以满足对时钟的平衡或不平衡传输的要求,由于对时钟的抖动要求较高,故母板设计时,应考虑减少线间耦合及变化负载的匹配,并注意同类时钟走线的一致性。如图3,是CC08时钟框的母板示意图,它有一个机框的面积。 图3 时钟框母板示意图 3、中继框母板 中继框母板是用于连接DTM与外界而设计的PCB板,该板的同轴座多,背面出线,空间紧凑、信号变化幅度大,接插件的合理布局是本板设计重点,该板设计一般用4层板完成。如图4是26槽位新万门PMB,它大小为一个框的尺寸。 图4 中继框母板示意图 4、用户框母板 用户框母板完成用户板与外界的连接,它不仅使DRV板与各用户板间进行信号的传递,还向外提供配线的插座,该板有部分信号电压较高,合理地分配走线,减少线间耦合是该板设计的关键。 图5是26个槽位可插24块用户板(304线)的母板示意图,它一般可用2层PCB板完成(现在也有用4层)。 图5 CC01SLM用户框母板 CC08机及其它产品采用的母板种类很多,公司母板产品达几十种,在此不作介绍,请参见有关的文档。在设计母板时,怎样保证母板上单板布局合理、保证信号传输质量,提高生产工艺,是每一块母板设计必须考虑的。针对以往设计母板的经验,保证高速信号传质量是母板设计的关键和难点。简单的物理逻辑连接,常常会产生严重的振铃和串扰现象,使系统的稳定性受到影响,因此有必要运用高速传输理论以及电磁干扰原理设计母板。 §3.6.2 高速传线理论与设计 母板上传输的信号速度快,传输距离长,当信号波长(或上、下边沿时间)与印制传输线传输时间相当时,其每根线都应认为是传输线,必须按传输线理论进行考虑,而母板繁杂的信号又必须进行合理的布局和处理,以减少串扰影响。长线信号的可靠传输和线间串扰的减少是母板设计的两个关键,下面对有关的概念进行说明。 一、信号的长线传输 图6是一个点对点传输的简单模型。 图6 在图中,驱动信号的上升时间tR小于传输线的传输时延TD,也就是说,完整的电平转移将发生在传输线的接收端收到脉冲之前。 这将引起反射(或振铃)。在传输线上,A点的电压变化可用(1)式来表示: (1) 式中,Vint为驱动器输出的内部电压;Ro为驱动门的输出阻抗;RL为负载阻抗;Zo为传输线的特征阻抗;VA为传输线输入端的源电压。 因为Ro与传输线相比较小,A点的电压变化ΔVA将约等于内部电压ΔVint的变化。电压变化将沿着传输线传播下去,北过传输线的传输时延TD后,就可在B点处观察到电压变化。 在B点,根据(2)有一部分信号被反射回A点: ρL=(RL-Zo)/(RL+Zo) (2) 式中,ρL称为电压反射系数,它实际上是反射电压与入射电压之比。 考察(2)式,可以发现-1≤ρ≤+1。显而易见,如果RL=Zo就不会发生反射。也就是说,只要根据传输线的特征阻抗进行终端匹配,就能消除反射。从原理上说,反射波的幅度可以大到入射电压的幅度,极性可以为正,也可以为负。 反射系数的概念既适用于传输线的发送端,又适用于接收。也即: ρs=(Ro-Zo)/(Ro+Zo) (3) 高速逻辑电路板的分布特性如果处理不当,这时常会导致振铃现象,这是未经终端匹配的传输线从其终端多次反射的结果。未经终端匹配的传输线没有负载阻抗RL=∞,因而其阻抗是失配的。这种失配传输线与高摆率器件相连接时,波形在传输线中的传播情况如图7所示(作为一个例子进行理解)。在t=0之前,传输线上各点都为2.5V的稳态直流电压(图7a)。在t=0时,在A点产生从2.5V到0.5V的初始电压过渡即A点电压下降到0.5V,向B点送出一个2V的负脉冲(图7b)。在时间TD之后,信号达到了B点,被负载反射回来。负载的反射系数为ρL。 图7 在B点,器件的输入阻抗相对于Zo很高;RL可视为无穷大。将其代入(2)式,反射系数PL约为+1。也就是说,从负载反射的电压约等于入射电压。在t=TD时,负脉冲从B点反射回来,与传线上的0.5V相迭加,向A点发出1.5V的负脉冲(图7c)。反射波沿着信号通道朝A点反向传播(图7d)。 在传线的发送端A点,Ro近似为0,重复上述运算,可得到-1的源反射系数ρs。也就是说,源和负载都存在着反射,但源所反射的是其入射波的反向波(图7e)。 图8 从B点信号的变化来看,t=0时的单一阶跃电压过渡引发了振荡,其电压摆幅为4V,即早先电压过渡的两倍。电压加倍的原因大致上由于B点的电压是同一点上的入射波与反射波之和(图8a)。实事上,由于实际电路板的非理想特性(有限的输入阻抗和输出阻抗,传线的损失等等),ρL将小于+1,ρs也将大于-1。结果,反射将越来越小,成为我们所熟悉的衰减振现象(图8b)。 如果振铃幅度足够大的话,就会在其后继器件的输入端上产生非法的电平过渡,并有可能会出现影响逻辑设计的寄生逻辑状态。在某些情况下,振铃的幅度可能会大得以足以后继器件的输入端损坏。 从上面的分析可看出,要使信号传质量达到要求,必须采取措施消除或最大地减少反射出现的振铃现象,最直接的办法就是匹配,有关匹配的方法在下一节讲述。作为设计人员来说,必须确定是否该加匹配,匹配的值应怎样取,这两项参数是由信号传输时延大小和传输线的特性阻抗决定的。这里作一讨论。 信号传输的时延估算: 假定现代高速逻辑器件的典型上升时间为2ns,那么当电路板的传输时延到达1ns时其线路长度为何?对于具有连续地线层且信号走线在其邻近层的印刷电路板,传时延仅取决于一个变量,这就是电路板材料的电介质常数。延迟时间由下式决定: tPD=3.33660(0.475eR+0.65)1/2(ns/m) (4) 对于通常用的FR4材料制成的板子,电介质常数eR为4.7至4.9。如果取其平均值4.8,就可求得每米长度的tPD为5.73ns,也即每17.45cm的时延为1ns 。所以作为一种习惯性做法,一旦线路长度超过17cm就应当将其作为传输线来考虑并采取相应的措施。 传输线特征阻抗估算 传输线的特征阻抗是传输线的一个重要指标,不同的条件有不同的计算方法,针对母板设计的实际情况,可近似归纳成stripline和Microstrip两类。如图9,图10。 对于微波带状线(stripline),特征阻抗: 对于微带线(microstrip),特征阻抗: 其中,εr为PCB板介质的介电常数。 根据(5)、(6)式和实际情况,就可估算出匹配时,匹配电阻的取值。 二、信号的串扰 串扰是一导体的对其邻近导体不希望的耦合。随着信号摆率的上升,平行线的增多,增长,串扰将成为越来越严重的问题,它可能使原理上毫无瑕疵的逻辑设计毁于一旦,串音通常作用于靠近的电路和导体上,并用电路和导线的互容和互感来表征。对带有大面积地平面的PCB带状线来说互容耦合为主,为了计算方便,可简单地用下式对耦合电压进行估算。 耦合电压:Vc=C.V1 (7) (7)式中,V1为激励源印制线上的激励电压(平均值) C为线间耦合系数 Vc受激励源印制线上的感应电压(平均值) 有关线间耦合系数的计算可参见《电磁兼容性原理及运用》,国防出版社1996.4 (ISBN 7-118-01514-8)。下面提供线间耦合系数C的查表。 针对母板,可等效为PCB两层间的PCB线,图9和PCB表面的一对微带线图10,若假设两线均匹配,可得表1,表2。 图9 表1 图9带状线串音系数 w/h s/h εr=4 εr=2 C C 0.3 0.01 0.55 0.55 0.3 0.10 0.38 0.38 0.3 0.50 0.09 0.09 0.5 0.01 0.48 0.48 0.5 0.10 0.27 0.27 0.5 0.50 0.08 0.08 1.0 0.01 0.35 0.35 1.0 0.10 0.20 0.20 1.0 0.50 0.05 0.05 表2 图10微带线串音系数C w/h s/h εr=4 εr=2 C C 0.2 0.2 0.2 0.2 0.2 0.5 0.5 0.5 0.5 1.0 1.0 1.0 1.0 2.0 2.0 2.0 2.0 0.01 0.05 0.20 0.50 1.00 0.05 0.20 0.50 1.00 0.05 0.20 0.50 1.00 0.05 0.20 0.50 1.00 0.55 0.56 0.42 0.27 0.15 0.52 0.38 0.26 0.15 0.45 0.33 0.23 0.14 0.37 0.26 0.18 0.12 0.55 0.56 0.42 0.27 0.15 0.52 0.38 0.26 0.15 0.45 0.33 0.23 0.14 0.37 0.26 0.18 0.12 从上面看到,欲减小耦合干扰,即串扰,就应使耦合系数C降至最低,具体措施见3.6.4节。 §3.6.3 总线阻抗匹配、总线驱动与端接 消除信号反射最直接的方法是根据传输线的特征阻抗进行匹配,对于一般的总线驱动电路,在发送端和接收端都可以进行匹配。 1、终端并联匹配: 根据§3.6.2节的(2)式,当终端电阻RL=Zo时,反射系数ρL=0,这意味着传输线上不再有反射或失真,除去时延TD之外,线路将变得如同直流电路一般。故终端并联匹配电阻一般取Zo的值。应当注意的是,终端匹配电阻应尽可能靠近接收电路。 2、始端串联匹配 对于始端的串联匹配,其匹配的原理是使得ρs=0和ρL=+1为此,应使得RL等于无穷大(不加任何匹配)在信号源端串入电阻,以使得总的源阻抗等于传输线的特性阻抗。 Rs+Ro=ZOL (8) 然而,使Rs+Ro等于ZOL会产生信号分压,结果有一半的信号幅度电压降落在传输线上,另一半则降落在Rs和Ro上。因此,在采用串联终端匹配的情况下,传输波形的幅度为无匹配情形之半。 更为有趣的是,未经匹配的传输线接收端能够精确地补偿上面的半幅度现象。其原因如下:在接收端,在收到半幅度波形的同时又反射出半幅度波形。但切记这是两个不同的波形,它们的幅度将在反射点相迭加。由于迭加的结果,我们在传线的接收端就只能观察到全幅度的波形。 串联终端匹配的主要缺点是接收信号的负载器件必须位于线路的终端而不能沿着线路分布。与并联匹配相比,串联终端匹配的突出优点是无需与电源相连接,并可保护电路过流。 在母板设计中,PCB板上的连线多种多样,针对不同的拓补结构,应采用不同类型的匹配技术来解决信号的反射问题。 (1)“点-点”结构 常见的一种驱动端接一个负载端,可在驱动端串小阻值电阻或并联一个阻值为Zo的电阻在终端。 (2)星形结构 对于星形结构来讲,其负载分散,各负载之间影响小,但需提高驱动能力,减小驱动端的输出阻抗,可采用始端串阻方式实现。需要注意的是,这种方法改善有限,因此一般不要采用此种结构。 (3)远端族型结构 远端簇形结构是星形结构的一种变化,当各负载端接近时,需考虑相互之间的影响。在布线时应减小接头T到各负载端的距离。这种结构可在各负载终端处加电阻并联匹配。电阻阻值为n.Zo(n为分枝数)。 (4)菊花链结构 菊花链结构中负载相互有一定影响,但总线传输较稳定,常在最后一个终端,根据特性阻抗加上/下拉匹配电阻或并联AC方式匹配,不能用串阻方式解决反射问题。推荐使用这种方式。 (5)H型结构 H型结构也是星形结构的一种变化,各负载干扰小,比星形结构易驱动,可在各负载端加并联上/下拉电阻或并联AC方式。 在母板设计时,需要了解长线的驱动问题对于这类问题,只考虑直流负载,也即常见的扇出和扇入数。未免难以反映出代高速逻辑器件的问题。在高速逻辑电路的设计中,更为有意义的是输入和输出的交流负载。 由于器件的输入电容将影响到逻辑电路的总体性能,因此当选取某种器件来进行设计时,尤其应当注意其输入电容。为保证特定的性能,某一器件所驱动的总负载电容,包括导线的分布电容在内,应当不超过该器件所规定的容性负载。许多高速逻辑器件的最大负载为50pF。作为一条经验之谈,为保证最佳速度性能和负载性能,任何一种逻辑器件的最大负载都不应当超过4~6个。当然,目前市场上已有一些输入驱动能力强的高摆率器件。 另外,在选器件时,只要满足要求,尽可能选低速器件。与母板相连的还有许多差分电路,当线路过长时也需要进行端接匹配,具体见附录1。 为了保证信号的传输,线路特性阻抗必须考虑一致,由于有诸多限制,实际很难达到,不过,母板设计时应注意: (1)线宽尽量保证一致; (2)线上过孔尽可能少,尽量把线走在同一层; (3)少走折线、弯线。 §3.6.4 布线策略与电磁干扰 设计一个优质的母板,不仅要解决好信号的传输问题,还要消除电磁耦合的影响,即减少串扰,从3.6.2节知道,只要减小耦合系数,就可达到降低相互影响的目标,具体的方法很简单。 1、扩大线间距 2、尽可能少走平行线 3、减少线长 4、不走环形线 显然,由于电路板的面积,总体安装位置等的限制,按上述原则设计会受到一定的限制。因此,在设计时,需要对布局和布线分别考虑,最终目的就是要尽可能地达到上述要求。 一、布局 当总体方案定后,单板的种类、数量已定,所有送到母板上的信号也定下来了,因此,布局就是要调整单板的位置,以及信号的出线位置(有的单板不能改变出线位置)使整个板面尽可能满足如下条件: 1、总的连线尽可能短,关键信号线最短 2、交叉线最少,过孔最少 3、地线层和电源层没有连线 4、高电压、大电流信号与小电流,低电压的弱信号完全分开 5、模拟信号与数字信号分开 6、高频信号与低频信号分开 7、高频数字信号的间隔要大 8、有可能情况下,减小电源地层与信号层层距布线 二、布线 布线时应考虑如下因素: 1、增加线间距,减少平行走线长度 2、增加线宽度,降低其特性阻抗 3、重要信号间,可采用平行地线的方法隔离 4、尽可能少折线,不走90o折线 5、少走过孔 6、重要线不要走插座脚间穿过,频率高的线也应尽量避免 实际中,会碰到各种情况的串扰影响,除了上述的一些原则外,还可考虑屏蔽、抵消等方法,具体的可参看有关电磁干扰的书藉。在此不在论述。 第七节 单板软件开发 §3.7.1 常用CPU介绍 OOOOO数字程控交换采用了三级程控分散控制结构,一个2000门模块采用了近200个嵌入处理器,软、硬件协同完成系统功能。单板软件在系统中,主要完成各种硬件电路控制、信号检测功能,同进还必须具有实现板间通讯功能。 目前,我司产品中使用许多厂家不同系列的处理器,其性能、处理能力、应用场合差别较大,主要有以下类型: 1、MCS-51系列 以ATMEL公司AT89C51使用量最大,因所有ASL板均采用该芯片,其它一些控制功能较简单的板也采用,如光板FBC、OPT等;其次8031在除ASL外的大部分单板中被采用,如DRV、NOD、DTM等常用板;部分单板对处理能力有较高的要求,已开始采用Intel公司升级产品251系列,如DTF、MFC板均采用了80C251SB。 2、X86系列 主要有80C186/188、80386EX两种,386SC、486、586在主控板上也有使用,188在公司早期开发的一些单板MC2、MC4、NO7、FCP等使用较多,186在96年改板中使用较多,386EX作为嵌入式处理器正越来越广泛地在各项目中使用。 3、683XX系列 主要有68302、68360各种型号,68040等,其68EN360,68FE360为8MH360使用较多,其主要优势在于处理器片上包含了QUICC协议处理部分,在通讯领域中使用较多。 4、其它 其它厂商处理器现使用较少,主要是在早期产品中使用,如Zilog Z80系列,Intel 8098等,现已停用。 §3.7.2 开发环境 目前,单板软件开发语言主要采用C汇编两种,个别情况有用PLM的。 对MCS51系列,有C51编译器、ASM51汇编程序,主要是Intel公司工发工具,地186系列,现可采用Intel IC86、ASM86,也可采用BC/CH,VC/CH等常用开发语言。386EX现主要用MCC386、HIGHC两种编译器。 §3.7.3 单板软件调试 调试有两种方法:硬件仿真器、软件调试器。 硬件仿真器主要用于开发初期目标板硬件系统尚未稳定期间的软、硬件调试。当目标板稳定后仍可用仿真器调试,查找软件疑难问题。缺点是调试时借助其强大的硬件查错功能、硬件断点、硬件跟踪功能,常见人仿真器有北京三环公司产品MDS-55系列不太方便,需要采用仿真器连到目标板上,有8051、80186/188、8098、Z80等型号,Applied Microsystems Corporation公司产品Code TAP 186XL,386EX等,Microtek 386仿真器,HP公司360仿真器等等。 软件调试器一般是通过PC串口与目标板串口相连,通过目标板上监控程序(monitor)下载程序在目标板中进行调试,重点调试软件的流程功能等,其前提条件下目标板硬件应已经完全没有问题,至少是CPU程序、RAM、串口等部分可正常运行。常见软件调试器主要是Microtec Researich公司的XRAY,有386EX和360两种版本在公司使用,另外现刚刚引入Paradigm DEBUG RT186,可调试186、386EX实模式软件,其界面操作Borland Turbo Debugger完全相同,可加快软件调试进度。 §3.7.4 编程规范 现在微系统软件研究部已初步拟订关于软件编程的初步规范,正在试行中,单板软件库也正在建设中,软件开发共享库建立起来后将大大促进软件开发的效率。 单板软件编程规范(试行) 目的:为了开发人员之间更好地进行交流,提高代码的可读性,可维护性,特制订本规范,作为程序编写的指导文件。本规范只涉及到源码书写的格式,希望能有较统一的编程风格。将来若有和公司相关规定冲突的地方,本规范有可能作适当修改。 范围:本规范暂时适用于微系统软件研究部开发人员。 内容: 1。模块描述 模块是为了实现某一功能的函数的集合,文件名使用缺省的后缀,在每一模块的开头应有如下的描述体: /********************************************************************************* * PROJECT CODE :项目代号或名称 * * CREATE DATE :创建日期 * * CREATED BY :创建人 * * FUNCTION :模块功能 * * MODIFY DATE :修改日期 * * DOCUMENT :参考文档 * * OTHERS :程序员认为应做特别说明的部分,如特别的编译开关 * *********************************************************************************/ 不同的修改人应在修改的地方加上适当的注释,包括修改人的姓名。另外,如有必要,要注明模块的工作平台,如单板OS、DOS、WINDOWS等。注明适用的编译器和编译模式。 2。函数描述 函数是组成模块的单元,一般用来完成某一算法或控制等。在每一函数的开头应有如下的描述体: /********************************************************************************* * FUNCTION NAME:函数名称 * * CREATE DATE :创建日期 * * CREATED BY :创建人 * * FUNCTION :函数功能 * * MODIFY DATE :修改日期 * * INPUT :输入参数类型(逐个说明) * * OUTPUT :输出参数类型(逐个说明) * * RETURN :返回信息 * *********************************************************************************/ 可选的描述有: * RECEIVED MESSAGES:收到的消息 * * SENT MESSAGES :发送的消息 * * DATABASE ACCESS :存取的数据库 * * CALLED BY :该函数的调用者 * * PROCEDURES CALLED:调用的过程 * * RECEVED PRIMITIVES : 收到的原语 * * SENT PRIMITIVES : 发送的原语 * 及其它程序员认为应有的描述。标题可以只大写第一个字母。例如:Function Name: 3。命名规则: A) 函数: 函数名应能体现该函数完成的功能,关键部分应采用完整的单词,辅助部分若太长可采用缩写,缩写应符合英文的规范。每个单词的第一个字母大写。如:ShowPoints,CtrlDestBoard,SendResetMsg 等。 B) 变量: 变量的命名规则部分采用匈牙利命名规则(鼓励完全使用匈牙利名规则)。变量的第一个或前两个字母小写,表示其数据类型,其后每个词的第一个字母大写。推荐的类型前缀如下: 前缀 含义 前缀 含义 a 数组 n short int b BOOL np 短指针 by BYTE p 指针 c char l LONG cb 字节记数 lp 长指针 cr 颜色参考值 s 串 cx,cy 短型(x,y长度的记数) sz 以零结尾的串 dw DWORD tm 文本 fn 函数 w WORD h HANDLE x,y 短型(x或y的坐标) i int g_ 全局变量 m_ 类的数据成员 uc unsigned char 如iCurrentValue,uTransitionCount 等。对于其他复合类型或自定义类型,请用适当的前缀来表示。除局部循环变量外,不鼓励单个字母的变量名。 对于常用的类型定义,尽量使用WORD、BOOL、LPWORD、VOID、FAR、NEAR等惯用写法,避免使用char、long、void、far、near等小写格式。不使用_UC、 _UL等XXXX公司以前一些人的习惯写法。 C) 结构:结构的定义有两个名称,一个是该结构的类型名,一个是变量名。按照C语言的语法,这两个名称都是可选的,但二者必有其一。我们要求写类型名,类型名以tag做前缀。下面是一个例子: struct tagVBXEVENT { HCTL hControl; HWND hWindow; int nID; int nEventIndex; LPCSTR lpEventName; int nNumParams; LPVOID lpParamList; }veMyEvent; tagVBXEVENT veMyEvent[MAXEVENTTYPE], *lpVBXEvent; 对于程序中常用的结构,希望能使用 typedef 定义,格式如下: typedef struct tagMYSTRUCT { struct members ....... } TMYSTRUCT,* PTMYSTRUCT,FAR * LPTMYSTRUCT; struct 后的类型名有tag前缀,自定义的结构名称一律用大写字母,前面可以加一大写的T。而结构类型变量定义则可以写为: TMYSTRUCT variablename; 并可在定义 MYSTRUCT_S 同时根据需要,定义其指针,远指针和尺寸常量: typedef tagMYSTRUCT { struct members … … }TMYSTRUCT,* PTMYSTRUCT,FAR * LPTMYSTRUCT; #define MYSTRUCTSIZE sizeof ( TMYSTRUCT ); 结构变量的命名,建议采用如下方式: 从结构名中,取出二至三个词的首字母作为代表此结构的缩写,小写作为变量前 缀。例如:(取自Microsoft Windows示例) struct OPENFILENAME ofnMyFile strcut CHOOSECOLOR ccScreenColor D) 联合:联合的命名规则和结构相似,如: union tagMYEXAMPLE { int iInteger; long lLongInt; } myExample; typedef tagMYEXAMPLE { int iInteger; long lLongInt; } MYEXAMPLE,* PMYEXAMPLE,FAR * LPMYEXAMPLE; 4。书写风格: A) 函数:函数的返回类型一定要写,不管它是否默认类型,函数的参数之间应用一逗号加一空格隔开,若有多个参数,应排列整齐。例如: int SendResetMsg( PTLAPENTITY pLAPEntity, int iErrorNo ) { int iTempValue; . . . } 函数的类型和上下两个括号应从第一列开始,函数的第一行应缩进一个TAB,不得用空格缩进。(按大多数程序范例,TAB为四个字符宽,我们规定:TAB为四个字符宽。) B) 语句:循环语句和if语句等块语句的第一个大括号‘{’可跟在第一行的后面,接下来的语句应缩进一个TAB,如: for ( count = 0 ; count < MAXLINE ; count++ ) { if ( (count % PAGELINE) == 0 ) { . . . } . . } 也可另起一行,如: for ( count = 0 ; count < MAXLINE ; count++ ) { if ( (count % PAGELINE) == 0 ) { . . . } . . } 两种写法在世界著名的程序员手下均可见到,我们尊重个人的习惯,但推荐使用后一种写法。 复杂表达式(两个运算符以上,含两个)必须用括号区分运算顺序,运算符的前后应各有一空格,习惯写在一行的几个语句(如IF语句),中间应有一空格,其它语句不鼓励写在同一行。 空格加在适当的地方,如 if ( ; for ( ; ) {; 语句的上下对齐也可使程序便于阅读,如: myStruct.iFirstNumber = 0; myStruct.lSecondNumber = 1; myStruct.pThePoint = NULL; C) 常量:常量一般情况下可用宏定义,用大写的方式,单词之间用下划线隔开 如: #define MAX_LINE 100 #define PI 3.1415926 不鼓励在程序中出现大量的数字常数。 注:对于一些有必要说明的缩写,可以在模块描述内加以说明。 5。 头文件:头文件一般包括了数据结构的定义,函数原形的说明,宏定义等,不许包含函数体和变量实体,文件名使用缺省的后缀.h,不使用类似.DEF等非标准的后缀名,头文件的开始可包括如下的注释: /******************************************************************************** * CREATE DATE:创建日期 * * CREATED BY :创建人 * * MODIFIED BY :修改人 * * USED BY :由哪些模块使用 * *********************************************************************************/ 为了避免重编译,应加上条件编译语句,如文件headfille.h应包含下列语句: #ifndef __HEADFILE_H #define __HEADFILE_H . . . #endif 6¡£ 预编译宏:对于代码中使用到的预编译宏,应在文件的适当处加以说明。对于连续多行的宏,在书写上也采用缩进的格式。例如: #ifdef _BORLANDC_ #define FAR far #define NEAR near #ifdef OS_DEBUG #define HHH 0x11 #define JJJ 0x22 #undef KKK #endif #else #define FAR #define NEAR #endif 对于夹在代码中的编译开关,在书写格式上当作源代码一样处理。例如: … lpPrim = (LPTL2L1PRIM)GetMessage( &queL2L1 ); if( lpPrim == NULL ) { #if OS_DEBUG Printf(“Queue L2->L1 is empty!” ); #endif return; } … 7。注释:注释是源码中非常重要的部分,不应少于源码行数的15%,我们希望能达到25%或更多。注释用中英文都可以,但应易读易懂。不要在一个语句的中间插入注释。 本规范内容符合公司有关文档要求,参照了北京研究部的相关文档,并听取了大家的意见,希望诸位在软件开发过程中,能主动遵照本规范,写出高质量的源码! 附 页 本附页的内容不是“软件编程规范”的一部分,但对于较大的软件,值得推荐。 1。接口函数(被其它模块调用的函数)及接口变量(被其它模块引用的变量),其命名可增加前缀表明其所归属的模块。 如:NLS_MsgProc, NLP_GetPHTime, NLS_LogcnToConnid ... 由于C的函数都是全程的,其它函数也建议增加前缀来避免重名或混淆。 2。头文件分开定义 A) 自用头文件:定义模块自用的函数,结构,变量等。 B) 输出头文件:用于该模块向外输出,即别的模块在使用该模块提供功能时需要引用的头文件,包含该模块的输出函数和输出数据结构,输出常量。 3。建议在使用有一定关联的成组常量时使用枚举定义: typedef enum { MONDAY, ..... SUNDAY, } WEEKDAY; 在有特殊数值要求时在枚举内定义: typedef enum { MONDAY = 1, ....... SUNDAY = 7, } WEEKDAY; 好处:容易理解有关联的常量;枚举变量可以当作整型变量使用。 六、参考书目 1、3H Text View使用手册 2、ASM86 IC86使用手册 3、 ASM51使用手册 4、Paradigm CT186/RT186User’s Guide 第八节 硬件整体设计 §3.8.1 接地设计 1·1 接地系统分类 数字程控交换机工程设计时,可分为三个相对独立的系统即交换机系统、总配线架系统和交流配电系统。接地实施时要对这三个系统分别考虑。 1·2 接地系统的布置 对于2000门以上的交换局,有三个方案可供选择,按优劣排序如下: (1)三个子系统放置在不同房间,可分别放置在交换机房、配线架房和交流配电房,以便于管理和维护; (2)对无法提供上述条件的交换局,交换机和配线架可放在一个机房,配电系统在另一个房间。 (3)三个子系统可放在同一机房,但必须在空间上分开放置,相互之间距离不得少于2米,以避免相互干扰。 2000门以下的交换局(如远端模块局),原则上按(2)的要求设计。若采用副机柜,配线和一次电源为一体化设计,可与主机柜并列放置。 1·3 地线的要求 数字程控交换机系统工程设计时,要求局方提供三个相对独立的地线,即交换机工作地、总配线架防雷地和交流配电系统安全地。 由于局方场地限制不能提供三种地线,或是采用建筑物本身钢筋躯体作为接地时,可将三种地线合设接地,合设接地要求接地电阻小于0.5Ω。对于万门以上的交换局,建议采用各种地线合设的方案,在整个建筑物下形成地网。 对2000门以下的交换局,若局方只能提供两个地线,可将交流安全地和总配线架(MDF)地线合设,另一个地线作为交换机工作地,但不作为推荐方案。此方案,在交换机外线遇雷电冲击时,经一次保安单元泄放的大电流将引起地电位升高,触摸配线架,可能会危及人身安全。 1·4 接地电阻 接地电阻应达到以下要求: 接地电阻指标 交换机容量 市话10000门以上 长话2000路以上 市话10000门以下 长话2000路以下 市话2000门以下 接地电阻(Ω) ≤1Ω ≤3Ω ≤5Ω 温度、湿度及土壤的变化均对接地电阻有影响,交换机上网运行过程中,维护人员应定期测量接地电阻并作出相应处理,以满足交换机对接地电阻的要求,保证交换机稳定运行。 1·5 防雷接地 程控交换机机房的防雷接地,遵照相关专业的规定设计。 2 交换机直流电源及地线连接要求 OOOOO直流地源及交换机地线接入配套设备建议使用XXXX的一次电源及配套直流配电柜,以充分保证交换机各模块直流电源的过流保护及地线引接的可靠性。配套的直流配电柜有两种规格,最多都可分配60组-48V/GND电源线,每组-48V的过流保护动作点为30A,另外直流分配柜提供了16个PGND的接线端子。 直流电源及地线连接方法如下: (1)B型机机架的风机盒上有两个-48V接线端子:-48V1、-48V2,通常只用-48V1即可,-48V2可留作备用。如-48V引出两组电源线分别接至-48V1及-48V2,则注意将每路的过流保护点应降下来,原先每路为30A,否则一个模块的-48V直流点提至60A,将是不能有效保护的。 (2)OOOOO数字程控交换机机架上提供了两个接地螺柱GND和PGND,GND为交换机的工作地线,其内部已将各种直流工作电源地线及机壳相连;PGND为交换机用户模块,中继模块和管理模块二次保护电路地线,接入大地可泄放一次保安单元剩余的电荷。 (3)OOOOO数字程控交换机,由于保护电路设计上的区别,AM/CM模块内,要求将PGND和GND机柜内直接相连,同样TSM模块内,PGND与GND也在机柜内相连,为减少至直流分配柜的引出线,用随机所发的6mm2导线将AM与TSM模块之间的地线(黑色)及-48V1(蓝色)互连起来,再用10mm2将-48V(蓝色)、地线(黑色)分别连至直流分配柜上。 (4)用户模块SM内,GND与PGND要分开,模块内的主机柜与副机柜之间可用随机所附的6mm2将两机柜的GND(黑色)、PGND(黄色)、-48V1(蓝色)互连起来,然后用10mm2的导线将-48V(蓝色)、GND(黑色)、PGND分别连至直流分配柜上。 (5)后台终端计算机机壳要求与交换机工作地(GND)相连。若计算机供电采用UPS,也要求UPS机壳与工作地(GND)相连,并且要求交流供电系统只能提供两线市电,必须将交流安全地线断开。 (6)配线架的副机柜如与交换机主机并列放置时,副机柜的机壳要求与交换机工作地(GND)相连。 (7)一次电源输出至直流分配柜的引线,及蓄电池至一次电源的引线,截面积应不少于95mm2,实际工程中可根据交换机容量及距离进行估算。 3 总配线架(MDF)接地要求 (1)局方需为总配线架(MDF)提供一个单独的地线,一次保安单元的地线(LGND)接至大地,可泄放由于外线碰高压、雷击干扰、电力感应等异常情况引起的过剩电荷。 (2)外线用户电缆屏蔽层在总配线架(MDF)处应与防雷大地(LGND)相连。 (3)若为扩建交换局时,考虑到现场实际情况,再增加接地装置有一定困难,故应尽可能与现有设备合用现有的接地装置。数字程控交换机和模拟局共存的机房,两种设备的防雷地线应分开走,并防止通过走线架或钢梁在电气上连通。 (4)总配线架上的一次保安单元要求有过压、过流保护功能。交换机维护人员需定期检查,及时更换失效的保安单元。 4 交流配电系统接地要求: (1)交流配电系统要求局方提供独立的交流安全地,并将交流电网提供的保护地线断开。若局方不能提供独立的交流安全地时,可与配线架防雷地共用。 (2) 采用电源防雷装置可以防止来自交流电网的干扰信号,保证交流配电系统正常工作。 (3) 对于电网不稳而又未装交流稳压器的交换局,电网过压、欠压会导致终端设备损坏,建议采用逆变器终端设备供电。 5 接地处理 (1)接地的基本要求是接地电阻要小。工程设计时,为达到交换机接地要求,接地体一般采用镀锌材料,并且有足够的长度、宽度和厚度(如:50×50×5mm角钢,长2.5m)。 (2)影响接地电阻大小的因素为接地桩的电阻,连接引线,接地桩和土壤间的接触电阻及土壤的类型。土壤类型对接地电阻影响最大,对于土壤条件差的地区,可在接地桩周围加入化学助剂(降阻剂,如:丙烯酰胺降阻剂),以达到交换机的接地要求。温度是影响接地电阻变动的另一原因。当温度超过0℃以下时,接地电阻变化较大。对于安装在北方的交换局,要考虑到温度对接地电阻的影响,可采用深埋地桩及加入化学助剂,以满足交换机对接地电阻的要求。另外,土壤湿度对接地电阻也有影响。 (3)从接地桩到交换设备上接地螺栓的连接电缆应采用铜芯,截面不小于50mm2,并且尽可能缩短距离,长度超过50米时应适当加粗铜线直径。连接引线两端应镀锡或浸锡,并将涂料、清漆、油漆等从紧固点附近清除掉,以保证两金属表面的良好接触,对所有的接地连接件应给防腐保护,接地螺栓必须用机械方法加以紧固,以保证低电阻的连结。 §3.8.2 电源设计 一、电源设计的一般原则 单板上的电源线及地线按其提供给哪部分电路使用可分为模拟电源线及地线和数字电源线及地线。如果数字部分存在较高频的信号,则必然在电源线和地线上产生毛刺,有可能对模拟电路部分造成干扰,使模拟电路部分噪音增大,指标变差,或工作不正常,所以通常的原则是模拟电源线及地线与数字电源及地线分别相连,两者再在板口相连,即通常所说的“一点接地”如图(对电源线同样适用),以减少相互间的干扰。 二、电源滤波 从交换机背板上提供给单板的电源一般须经滤波后才可供板上器件使用,在板口对电源的常用滤波方法有电容滤波、LC滤波、型滤波,分述如下: 1、电容滤波 仅采用电容滤波是最简单的滤波方式,通常采用的组合方式是10uF的电解电容并0.1uF的独石电容。 2、LC滤波 LC滤波也是较常采用的电源滤波方式,设计中应注意L、C值的选取,若选取不当不仅不能保护电路,反而会对电路造成损坏。其电路如下: 其等效频域电路如左图,R为L内阻及电源的内阻和,电路的传输函数 W02 H(S) = S2+2§W0S+W02 其中,W0= ,称为LC电路的特征频率 §=,称为LC电路的阻尼系数 若§>1,传输函数H(S)有两不相等负实根,若§>1,传输函数H(S)有两共轭复根,则在两种情况下,电路对阶跃冲击的响应分别如下图a、b 所示: 由以上分析,可知:若§<1,LC电路在阶跃冲击下会产生振荡,(对应于单板带电插拔),产生比电源供电电压更高的瞬间过冲,对电路中IC造成不良影响,所以在设计时应避免出现此类现象。 3、型滤波 型滤波仅适用于负载输出较平稳,工作电流小,电流变化不大的情况。从实验效果看,对电流有0~2A间变化的电路电感采用10uH,电容用220uF能有较好的滤波效果。 三、上电次序的考虑 通信电路中大量采用CMOS器件,由于其工艺上的原因,CMOS器件上电瞬间可能发生“Latch_up”现象损坏芯片,为避免这种情况的出现,必须注意CMOS器件的上电次序,通常的原则是:首先连地线、然后连较低电压的电源线,然后是较高电压的电源线,最后是信号线。对于不同器件,上电次序可能不同,所以如果器件手册上有对上电次序的要求时,应按照手册上的说明实现上电次序安排。 §3.8.3 防雷与保护 一、防雷及其保护的重要性 程控交换机数字化后,体积小,集成高度的电子元器件取代了以前体积庞大且笨重的机电式器件,这就带来了一个问题──集成IC的耐电压、电流冲击能力远低于机电式器件,尤其是当某些单板有外线接入时,这些单板上的接口器件会因由外线导入的过电流、过电压而损坏,甚至有可能扩散至全板甚至整个交换机,所以,对这类单板必须加保护,以抵消或削弱外线过电压、过电流的损害。 二、过电压、过电流产生的方式及特征 1、雷击:线路条件好的国家及地区,雷击是过电压、过电流产生的主要原因。雷击可分为两种,第一种是直击雷,即雷击直接作用于外线上,这类雷击理论上不可预防(性价比不可接受),对交换机的影响可能是致命的,有时会造成整个交换系统瘫痪;第二种是感应雷,雷击并未直接作用于外线上,而是通过电容效应耦合到外线,与直击雷相比,其幅值小得多,因而可以预防。无论是直击雷还是感应雷,其共同特征是:上升速度快(几百到几千伏每微秒),作用时间短(几十毫秒以下),幅值高(几千伏),瞬间能量大。 2、感应:感应的产生是通常是由于线路邻近的电力供电线路或铁道供电系统发生故障而在线路上造成短时间的交流感应,其特征是:作用时间较短(秒级)感应电压值波动范围大(几十伏至几百伏),通常是工频(50HZ)。 3、电力线碰触:如果外线的外层绝缘老化或受损造成绝缘下降,则外线有可能接触到供电力线,从而造成电力线碰触故障。通常情况是220V碰线,持续时间较长(几秒到几十小时均有可能)。 三、CCITT(ITU-T前身)关于外线路保护的建议及标准 CCITT关于线路保护的建议见建议K.20,建议中对雷击、感应、及碰触的故障、模拟故障发生电路、对线路防护的要求均作了详细说明如下。 1、模拟雷电冲击测试 电压波形10/700us,试验电压1kV,正负极性各试验5次。试验端子为A-E(B接地)、B-E(A接地)和(A+B)-E。 判别标准:标准A 2、电力线感应测试 最大试验电压650Vrms,持续时间500ms,试验电阻600Ω,试验5次。试验端子为(A+B)-E。 判别标准:标准A 3、电力线接触试验测试 最大试验电压220Vrms,持续时间15min,试验电阻分别为600Ω和10Ω时各试验1次。试验端子为(A+B)-E。 判别标准:标准B 判别标准 标准A:设备应能受受得起试验而无损坏或其他扰乱(如软件讹误或故障保护装置发生误动作),而且在试验之后,应在规定的范围内正常工作(当试验条件存在时,不要求能正常运行)。如经主管部门特许,试验可允许引起熔丝或其它器件动作,而在恢复正常运行之前必须将它们更换或使它们复原。 标准B:试验不应该引起设备着火。发生的任何损坏或持久性的故障应局限于少量的外线接口电路。 四、常用过流过压防护器件介绍 1、过流防护 (1)熔丝:选用熔点低的金属丝作为过流防护器件,一旦线路中出现瞬间过电流,则金属丝熔断,将外线的过电流切断,以保证其不对单板造成损坏,使用熔丝不会对线路的传输性能造成任何影响,这是它的优点,但熔丝一旦在过电流作用下断开,则须人工进行恢复,在线路条件下不好的地区,维护的工作量非常大。 (2)热敏电阻(PTC):热敏电阻的可自复性能使其得到越来越广泛的应用。热敏电阻常温下呈现一电阻特性(几欧到几十欧),当其中流过一定电流时,所产生的热量使热敏电阻的温度升高,热敏电阻的阻值也缓慢升高,或温度上升至超过特定温度点(称为热敏电阻的居里点)。 热敏电阻阻值会急剧增大至几十到几百千欧,从而达到阻断过电流的目的。热敏电阻呈高阻态后,还会有少量漏电流流过以维持热敏电阻继续发热。过电流消失后,热敏电阻值又会随温度的逐步下降而恢复常温阻值。所以热敏电阻不需要更换,免除了维护人员的工作量。 热敏电阻又分两种:陶瓷型PTC及高分子型PTC。陶瓷型PTC优点是易做大阻值,稳定性好,缺点是动作速度不及高分子PTC,动作后表面温度高,耐高压性能不如高分子PTC;高分子PTC动作速度快,动作后表面温度低,耐高压性能较好,做小阻值易做,缺点是稳定性差,多次动作后回不到原阻值,有时候阻值差别过大,用于对双线平衡要求高的电路时受到一定限制。 2、过压防护 (1)气体放电管:气体放电管到利用空气隙放电的原理。在园柱形陶瓷管内封装入惰性气体,在园柱体的两底面引出两金属极,一端接地,另一端接要保护的线路。当线路与地之间的电压超过一定值,两金属极之间的空气隙被击穿放电,使线路对地电压降低。从而保护了线路中的器件,气体放电管耐流能力强,可流过几百安的电流,缺点是放电电压不精确,有很大的波动范围;隋性气体易泄漏造成放电管失效,某些气体管含有幅射性物质。 (2)压敏电阻:压敏电阻通常情况下呈现开路状态,一旦线路电压超过其动作电压,则呈现一类似二极管正向导通时的特性,电压稍有增大,则电流急剧上升,即I/V曲线非常陡峭,从而超到了泄流箝压的作用。压敏电阻瞬间过电流能力强,可达几百安培(8/20波形),长时间过电流能力很弱,所以必须配合限流器件使用。 上述两种器件的动作电压不是任意可选,即只能选取有限的标称动作电压,且由于器件的离散性,即使是同样标称动作电压的同一批器件,其实际动作电压也是不相同的,可能会有几十伏的差异,这样,它们只适用于对限压电压准确度要求不很高的场合。如果对限压电压准确度要求较高,限压电压不在标称电压范围内,则我们可采用以下器件。 (3)二极管桥 二级管桥的结构如上图,由图可见,当外线电压高于正参考源电压时,二极管D2、D4导通,从而将外线电压箝至(正参考源电压 + 二极管正向导通压降),当外线电压低于负参考源电压时,二极管D1、D3导通,从而外线电压被箝至(负参考源电压 - 二极管正向导通压降)。从以上对二极管桥的工作原理的描述,我们可以看到: ①正参考源电压与负参考源电压可以任意选取,只要正参考源电压>负参考源电压。 ②箝位电压较准确。 (4)可挂硅: 程控交换机中外线过电压防护通常正参考源都是地,而负参考源为-48V。考虑这种情况,采用二极管桥过压防护时,多条外线同时遭受负电压雷击,这时每条外线都要从负参考源(-48V)吸收电流,所以对电源-48V造成很大冲击,有可能还会损坏电源。基于这一点考虑,过压防护中越来越多地采用可控硅限压器件。其基本结构如下: 当外线呈现一过电压高于正负考源电压时,二极管D1、D2导通,从而外线电压被箝位在略高于正参考源的电位上;当外线过电压低于负参考源电压时,分两种情况,一种是过电压产生的电流低于可控硅的触发电流Itrip,这时电流方向是从负参考源流入外线(流向1),外线电压被箝位在略低于负参考源电压的电位上;如果由过电压产生的电流高于可控硅的触发电流Itrip,这时Q1或Q2导通,电流流向是从正参考源流入外线(流向2),只要此时电流不低于可控硅的维持电流Ihold,则外线电压被箝位在略低于正参考源电压的电位上。由于正参考源通常为‘地’,所以电流由正参考源提供,降低了对负参考源-48V的冲击,从而保护了电路板。 必须要指出的是,以上各类过压防护器件的额定电压(或动作电压)均是指过电压为直流时的值。由于各类器件动作需一定的动作时间,所以对于上升快(即dv/dt大)的波形,各类器件的动作电压与其标称电压有很大的差别,如额定动作电压220V的放电管,在峰值4KV,10/700波形电压冲击下,其动作前电压可能升高至七、八百伏,所以我们在选择过压防护器件时,要对其耐流能力,动作电压、反应速度作综合考虑。 还值得一提的是厚膜电阻(有时也称作浪涌电阻),厚膜电阻采用激光修阻,可以做到很高的双线匹配,利用厚膜电阻抗瞬间电流冲击能力强的优点,用来限制雷击等情况下的电流以保护电路。而且在长时间碰触情况下,如果线路中无PTC等限流器件,厚膜电阻也会熔断,从这一点来看,可将厚膜电阻看作一过流防护器件。 第九节 时钟、同步与时钟分配 §3.9.1 时钟信号的作用 1 对交换及传输系统 同步是指信号之间在频率或相位上保持某种严格的特定关系,就是它们相对应的有效瞬间以同一个平均速率出现。 在模拟通信网中,传输系统中载波机两端机间的载波频率需同步,即用于终端机的载波频应该相等或基本相等并保持稳定,以保持在音频通路中端到端的频差不超过2Hz。 在数字通信网中,传送和交换的信号是对信息进行编码后的比特流,且具有特定的比特率,这就需要网内的各种数字设备(或网元)的时钟具有相同的频率,以相同的时标来处理比特流。所以数字网的同步是数字网中和数字设备内的时钟之间的同步,而且在数字网同步中的“同步”包括了比特同步和帧同步两种含意,这是因为在数字通信中,对比特流的处理是以帧来划分段落的,在实现多路时分复用或进入数字交换机进行时隙交换时,都需要经过帧调整器,使比特流的帧达到同步,也就是帧同步。 数字通信网是在原有的模拟通信网的基础上发展起来的,而且是随着数字设备逐渐引入到通信网中而最终形成的。 当系统仅有一套数字交换设备,而传输为模拟设备时,交换设备不需要与其它外部频率同步,而需要同步的则是模拟传输设备,如模拟载波的载波频率fc,见图3.9.1(a)。 若两套数字交换设备用模拟传输设备相连接时,数字交换设备也不需要相互同步,需要同步的传输设备的载波频率fc,见图3.9.1(b)。 若两套模拟交换设备用数字传输设备相连接时,模拟交换设备不存在同步问题,若数字传输PDH(准同步数字系列)设备,则不需外加同步信号,因PDH使用码速调整技术,可使传送到对端的信号频率与输入信号的频率相等,既使用准同步复用设备内部的时钟也能保持传送信号的频率不变。若数字传输设备为SDH(同步数字系列)设备,则需外加同步信号fr以保持系统同步。见图3.9.1(c)。 若数字传输设备两端的交换设备分别为数字型和模拟型,则数字交换设备不需外同步信号,传输设备为SDH系列时需外同步信号fr。见图3.9.1(d)。 若两端的数字设备用数字传输设备相连接时,则两端的交换设备内的时钟需要同步,即用外同步基准信号fr来统一两端交换设备时钟的频率,传输设备为SDH设备时需要外同步信号fr。见图3.9.1(e)。 由上述5种连接方式对同步的要求可以看出,数字和模拟设备混合连接时,交换设备不需要相互之间进行同步,而数字传输设备为SDH系列时才需要同步。只有当交换和传输设备都是数字设备时,交换设备之间才需要进行设备时钟的同步。 *数字传输设备为SDH设备时需要同步基准信号 图3.9.1 模拟、数字设备连接方式 现在我国运行中的通信网有的已经数字化,即传输和交换都是数字设备,有的网则正向数字化过渡或即将实现数字化,因此对数字通信网内的时钟同步问题,应根据对同步的要求研究解决,因此必须面向全网,形成相对独立存在的“数字同步网”。 数字同步网的基本功能是应准确地将同步信息从基准时钟向同步网各同步节点传递,从而调节网中的时钟以建立并保持同步,满足电信网传递业务信息所需的传输和交换性能。因此,同步网的结构是面向基准频率的生成、传送、分配和监控,因而与通信网有所不同,在需要时应能向模拟通信网和专用通信网提供同步信息。 数字通信网是由数字交换节点和数字链路组成的,使用数字交换设备和数字传输设备在两个或多个指定的点间提供数字连接,是用数字信号来传送和交换信息的电信网,因而在整个通信过程中的各个环节都应该对数字信号有相应规范要求。 数字通信的特点是将时间上连续的信号通过抽样、量化及编码变成时间上离散的信号,再将各路信号的传送时间安排在不同时间间隙内。为了分清首尾和划分段落,还要在规定数目的时隙间加入识别码组即帧同步码,形成按一定时间规律排列的比特流,即PCM信息码。在通信网内PCM信息码的生成、复用、传送、交换及译码等处理过程中,各有关设备都需用相同速率的时标(time scale)去识别和处理信号,如果时标不能对准信号的最佳判决瞬间,则有可能出现误码,也就是数字设备要协调无误地运行就需要各时标具有相同的速率,即时钟同步。 数字传输系统对信息编码后以时分复用方式传送现在通信网中使用的时分多路复用传输系统主要有两类,即准同步数字系列(PDH)和同步数字系列(SDH)。 PDH的复用是逐级进行的,因为被复接的支路信号可能来自不同方向,各支路信号的码率和到达时间不可能完全相同,因此在进行复接前各支路的码率应相等,并把划分比特流段落的帧同步码对齐,即码率和帧同步码都要同步,为达到此目的,要使用码速调整技术。码速调整(一般用正码速调整)的原理是把参与复接的低次群的准同步码流调整到一个较高的码率,其中增加了帧了帧同步码、业务码、插入码及插入标志码等,例如PCM一次群在码速调整过程中将码率由2.048Mbit/s提高到2.112Mbit/s,使各参与复接的支路信号码率达到同步,然后进行复接;复接后的高次群码流传送到收信端,先进行帧同步码检出,在实现帧同步后再进行分接,分接后的各支路再经码速单元,将各支路信号恢复为与原输入码率相等的准同步码流,因此可将PDH传输系统看作是“透明”的,即收信端的信号码率与发信端的码率相等,但在进行码速调整时有比特插入,在收信端恢复码速时要取消被插入的比特,因此信号将受到损伤,即信号增加了抖动分量。抖动对通信有不良影响,但在PDH传输系统内部进行复接同步时,用插入比特的方法产生的抖动无法完全消除,所以这个系统内的同步方法不理想。 SDH是用于光缆传输设备的同步数字系列,是一整套可以进行同步数字传输、复用和交叉连接的标准化数字传送结构等级,用于在物理传输网(主要是光缆网)上传送经适配的净负荷。同步传送模块(STM-1)是基本信息结构,它由信息净负荷(payload)、段开销(SDH Section Over head)及管理单元(AU)指针构成,SDH系统内各网元如复用器、分插复用器(ADM)及数字交叉连接设备(DXC)之间的频率差是靠调节指针值来修正的,指针调节是把净负荷起始点向前或向后移动与帧相关的一个字节,这是因为SDH系列是以字节为单位进行复接的,所以指针进行调节也是以字节为单位进行的。一次指针调节引起的抖动可能不超出网络接口所规定的指标,当指针的调节的速率不能受到控制而使抖动频繁地出现和积累并超过网络接口抖动的规定指标时,将引起净负荷出现错误,因此在SDH系统中的网元内时钟也应保持同步,并纳入数字同步网中。 数字交换设备是通过数字信号中的时隙交换来完成时隙的重新安排的。在信号进入交换网络之前,需要具备时隙交换的条件是: (1)参加交换的数字信号的帧要在时间上对齐,即各路信号的帧要同步; (2)各路信号的码率都要以交换设备的时钟速率为准,转换为相同码率,使时隙具有相同的速率,这样才能准确无误地进行时隙交换。 但参与交换的信号可能来自不同的交换节点和传输设备,到达时间不可能完全相同,信号的码率也可能与本地时钟不同步,这就需要通过帧调整器进行帧同步及比特同步。当外来信号与交换设备内的时钟频率有差异时,则在进行比特同步时将产生滑动,滑动将使信号受到损伤,影响通信质量,若频差过大,则可能使信号产生严重误码,直至中断通信。 综合上述各种数字设备对时钟同步的需求,以及数字通信网的发展和新设备的开发对同步的要求更多、更严和更高,数字同步网是现代通信网所必不可少的。 由于外来的参与交换的信号的速率(比特率)由对端决定,在进入交换网络之前需转换为本地交换设备的速率,也称“再定时”。可使用通过缓冲存储器的办法,以外来信号的速率写入,用本系统时钟的速率读出,见图3.9.2。 写入时钟的频率fw从外来信号中提取,读时钟频率fR由本地时钟控制,通过写入和读出的频率控制,将外来信号的速率转换为本地交换机所使用的比特率。 图3.9.2 信号再定时方框图 缓冲存储器的容量至少是PCM一次群的1个帧的长度(254bit),典型值是2个帧长。若写入和读出的速率相等(fw=fR),则缓冲存储器不会发生上溢或下溢,任何小于缓冲存储器长度的相位变化都会被缓冲存储器吸收而不影响通信。大的相位变化或外来信号和本地时钟的速率不相等(不同步)即写入和读出速率不相等,将导致缓冲存储器的上溢或下溢。 缓冲存储器的写和读都是受写入和读出的地址信号所控制而且周期循环进行的,如fw=fR,则读和写的相对时差是固定不变的,不会产生重读或漏读。当读出速率低于写入的速率(fRfw)时,读和写之间的相对的时差将逐渐缩小,当时差小于1帧时,缓冲存储器中尚未写入新的信息而读出指令已到,读出的信息是已读过的,也就是重读了1个帧的信息,也就是插入了1帧。 由于缓冲存储器的读出和写入的速率不同,在同步或准同步的比特流中重复或取消一组比特,称为“滑动”。 由于收到的比特流与本地时钟速率的差异而导致缓冲存储器的上溢或下溢,仅对完整的1个帧重读或取消,而不打乱帧结构的滑动称“受控滑动”或“帧滑动”。 对收到的比特流进行再定时的缓冲存储器应设置在PCM一次群的路由终点,一次群中帧定位信号的提取是在进入缓冲存储器之前,因此不影响帧结构码,使帧定位不受影响,帧结构不致遭到破坏。 用于对比特流再定时的缓冲存储器不是在PCM一次群的的路由终点,在进入缓冲存储器之前不提取帧定位信息。当缓冲存储器产生上溢或下溢时,比特流的结构将会被破坏,将使比特流受到损伤导致帧同步的丢失或被打乱,对数字网也会产生影响。 为了使比特流达到帧同步和比特同步,使用了帧调整器。帧调整器的功能如下: (1)用本地时钟速率取代收到的比特流的速率,使参与交换的数字信号与本地时钟之间实现比特同步,并在一定程度上吸收数字信号的相位抖动和漂移。 (2)由于输入的数字信号来自不同地点,帧定位信号到达时间不同,通过帧调整器对信号提供不同的延时,使帧定位信号同步。 (3)使输入数字信号与本地时钟的频率差值转化为帧滑动而仍能保持帧同步。因此时钟不同步,即时钟速度之差是产生滑动的原因之一。 滑动的频次影响对通信的质量。当产生一次滑动时,在一个帧内的每个0次群(64kbit/s)都产生一次重复或丢失,产生误码。 对话音通路,一次滑码将产生一次“喀达”噪声,滑动次数少于每分钟1次时影响不大。 对数据通路,滑动一次对64kbit/s的通路相当于丢失或重复1个字节或8个比特,造成1个误码秒或两个误码秒。按ITU的X.50建议,对固定长度分组数据的滑动门限约为1小时1次;对可变长度分组数据的滑动门限约为每小时0.3次。 III类传真传输使用9600Bd的模拟调制解调器。经验证明,在传真传输过程中,滑动能导致2mm的垂直图文丢失。 在数字数据链路上,滑动发生时数据必须重发,降低了数据传送的质量。对加密数据而言,滑动会造成严重的降质,因每次滑动都要求加密密码重新传递,这就严重影响信息的传递并降低了加密的可靠性。 2、对于系统内部而言 时钟信号的主要作用是使数据处理按照一定的节拍进行。一定的节拍包含两层的含义:1、周期性,对于一个数据处理芯片来说,这一点很重要的,如CPU按照一定的时钟周期来组成机器周期,继而组成指令周期来完成一次操作,这种情况下,时钟仅提供一种周期性的触发功能,因此对时钟的要求不高;2、同步性,主要针对数据的分布处理,同步传输,交换起作用,此时,数据的分布处理,同步传输,交换这几个进程都受同一时钟(或相关时钟)驱动,达到同步的目的。这种情况对时钟信号的要求很高,不但要求频率绝对一致,而且对相互之间的相位关系有要求。否则数据会出现混乱。 §3.9.2 时钟原理、性能指标、测试 晶体钟体积小、重量轻、耗电少 、高级恒温控制晶体钟(OCXO)的短期稳定较好、但长期稳定度和老化率比原子钟差,价格比较便宜,平均故障间隔时间(MTBF)较长。 铷钟与铯钟和氢钟相比,体积较小,重量较轻,耗电较小。有比较好的短期频率稳定度,在时间常数τ<1000s时优于铯钟。老化率优于晶体种,预热时间也较短。价格比铯钟低。 铯钟长期频率稳度性能非常好,没有老化现象,但能耗高,体积较大。价格贵而且铯束管的寿命为3~5年,届时需更换。 氢钟具有极高的频率稳定度,但体积大,耗能高,价格也高,7年左右需更换氢元素。 上述各种时钟的主要特性见表3.9.1,稳定度(以阿伦方差的平方根表示)的比较见图3.9.3及表3.9.1。 表中数字及图中曲线仅能作比较参考用,具体性能指标应以厂家提供或实测为准。 表3.9.1 时钟性能比较表 性 能 时钟 短期稳定度 (1秒) 长期稳定度 (1天) 频率老化率 (1年) 价 格 比 (基数为1) 晶体钟 TCXO OCXO 超级OCXO(BVA) 1×10-9 5×10-12 5×10-13 4×10-8(1) 7×10-10(1) 9×10-10(1) 1×10-6 5×10-8 2×10-8 1~4 8~40 40~80 铷钟 普通商用铷钟 高性能铷钟 GPS用铷钟 1×10-10 1×10-11 1×10-11 7×10-12 3×10-13 ~1×10-12 5×10-10 2×10-10 无 40~80 120~160 300~400 铯钟 标准铯钟 高性能铯钟 6×10-11 5×10-12 2×10-13 3×10-14 无 无 1000~1100 1200~1400 氢钟 被激型氢钟 自激型氢钟 ~1×10-12 4×10-13 1×10-14 5×10-15 <3×10-13 <3×10-13 1400~2000 3000~9000 注(1)为最佳估计值 稳定度及老化率为近似值 图3.9.3 时钟稳定度比较示意图 时钟性能指标 1、时延(time delay) 时延是时钟信号与理想信号在相对应的有效瞬间的延迟时间,经常称作相位时间(phase time)。有代表性的时钟信号的同步性能,由在指定的时间内测得的一组时延来确定。 2、时间间隔误差TIE 时间间隔误差是在特定的时间周期内,给定的定时信号与理想定时信号的相对时延变化。时间间隔误差很小,通常用ns、us或单位时间间隔UI表示。 3、最大时间间隔误差MTIE MTIE为在观测时间为S的时间间隔内,出现的最大时间间隔误差,TIE和MTIE都随观测时间的长短而不同。 4、最大相对时间间隔误差MRTIE MRTIE为定时信号与某个指定作为参考信号相对的最大时间间隔误差。MTIE与MRTIE的区别仅在于MTIE是对理想信号的时延,而MRTIE则是对某个指定作为参考信号的时延。 5、频率准确度 频率准确度表征信号的实际频率值与理想的或定义频率值(以UTC为标准的频率,实际是国际原子时TAI的速率)的偏离或符合程序,一般用相对频率偏差来表示。 在国际电联(ITU-T)的G.811建议中只提“长期频率偏离”,对原始基准的要求是:具有不大于1×10-11的长期频率偏离,并以UTC作为比对长期频率偏离的基准,还提出有些电信主管部门支持不大于7×10-12的原始基准钟长期频率偏离。 美国贝尔通信研究所Bellcore(Bell Communication Inc.)的文件提到准确度,定义为在没有外部频率基准的情况下(自由运行),最大的长期(20年)的标称频率的偏移。 我国在国标GB12048-89中对各级时钟提出了最低准确度的要求,定义最低准确度是时钟未接收基准频率时的频率相对于标称的最大长期频率偏离。 6、频率漂移率 频率漂称率表征时钟在连续运行过程中频率值随时间的变化,它由时钟的内部元件老化以及外部环境影响所引起。如果外部环境条件完全保持不变,则频率漂移率可视为频率老化率。频率漂移率以在特定的时间周期内相对的频率变化来表示。如特定时间为日、月或年,则称为日、月或年漂移率。 7、频率复现性 频率复现性指时钟工作一段时间t1后,频率为f1;停机一段时间t2,再开机一段时间t3后频率为f3,f3与f1之间的相对频率。频复现性以下式表示为: fo为标称频率,一般取t1=t2=t3=24小时,或按给定的技术条件检测。 8、开机特性或加热时间 开机特性或加热时间以时钟接通电源后,输出信号的频率达到其稳定频率值的某个百分数所需的时间表示。所需的时间及规定的频值视时钟类型而异。 9、时钟的牵引范围 时钟的牵引范围是指时钟能够锁定的输入信号的最大频带宽度。要保证同级时钟的信号在允许的极限频偏时而被测时钟的信号在其相反方向的频偏时能获得同步,亦即使时钟能够与之同步的输入信号的频偏移(与标称信号的相对频偏)的范围。时钟应能够在同等级时钟的自由运行状态最大频偏称时达到同步。时钟还对超过1.1×(牵引范围+准确度)的输入信号不与之同步,并转入保持状态。时钟的牵引范围除一级外,对各级时钟都有不同要求。 10、同步保持范围或同步带 在时钟的信号的频率变化很慢时能够保持锁定的最大频率范围,此范围不得小于其牵范围。 11、保持状态频率稳定度 当时钟的外加定时信号全部中断后,时钟应进入保持状态,的频率失去锁定。在开始进入保持状态时,影响频率稳定的因素有三种: (1)、初始频率偏差:时钟的外同步信号全部中断(失去基准)后的初邕最大频率偏差,它随时钟的级别而异。 (2)、温度变化影响:时钟失去锁定后,振荡器的频率的受温度影响,在不同的温度条件下,时钟有不同的变化率,不同的温度范围有不同的指标要求。 (3)、老化及其它外部因素影响:时钟进入保持状态后,控制振荡器频率的电压不再随外部定时信号的频而变化,老化及外部因素对频率产生影响。 时钟进入保持状态后的技术指标有(1)初始最大频率偏差;(2)最大频率移,指保持状态上时钟频率的单向最大变化率,用每天的变化率来变示;(3)正常温度范围内及超出此范围的频最大偏移率。 12、从保持状态恢复到正常运行状态的相位变化要求 为说明这项指标的具体内容,现以美国Bellcore的标准为例介绍如下。 时钟在保持状态运行时,频率已产生偏差,再恢复到与外加信号同步时,若因为频率的变化而使相位产生突变,大的或快速的频率变化会使以此频率为基准的下级时钟不能跟踪,因此对恢复过程中的相位时间应有限制。 图3.9.4 恢复正常运行状态时相位时间偏移范围 其中:to为进入保持状态的时间; t1为收到基准定时信号的时间; t2为确定收到的定时信号无中断及帧失步,恢复正常运行状态的开始时间; to~t2为保持状态下的相位时间偏移(对村称频率); t3为时钟完成同步恢复正常运行的时间; (3)、时钟的插入提取 两个系统之间数据传输的同时,还必须同时传时钟信息,时钟信息传送的方式很多,目前在数字传输系统中用得最多的一种是插放同步码的方法。 接收端通过判同步码来产生一个同步时钟。另外数据本身就带有时钟分量,通过声表滤波器或锁相环技术可以直接提取时钟分量。 (4)、时钟的传输、净化及变换 信号在传输过程中,由于反射,负载等因素的影响,信号的边沿会变平坦,且上面会叠加过冲并出现台阶。对于一般的信号,大都是电平有效,即状态由稳定后的电平决定,而时钟信号则是边沿有效,是靠边沿触发来工作的。因此时钟信号对质量的要求要高得多。因此我们对时钟信号的发送、传输、接收应注意以下几点:(1)输出的上升、下降时间(最小和最大);(2)输出电流、电压驱动能力(直流和交流);(3)地扰动电压容限;(4)输入阈值和噪声容限;(5)输入波形要求;(6)传输、负载带来的时延。 时间信号的净化主要针对信号的相位噪声,而不是幅度噪声。信号在传输中的损伤(误码等),指针调整以及环境的影响(温度、电磁干扰),都会给插入的时钟带来相位噪声。 净化主要是通过锁相环来完成。其性能的好坏主要用抖动转移曲线来表示。对抖动的衰减主要取决于锁相环的参数以及外部鉴相频率,因此选用锁相环时一定要考虑到这一点。 目前锁相环分为模拟锁相环和数字锁相环两类,模拟锁相环是通过调节电压来改变振荡回路的电容,以达到改变频率的目的,数字锁相环则是通过调节分频比(增、减脉冲)的方法来调节频率。模拟锁相环中压控振荡器可分为晶体压控振荡器(VCXO),LC压控荡器(LCVCO)和压控多谐振荡器(VCM)。 使用时要详细阅读数据手册中抖动及其转移曲线。 第十节 DSP技术 §3.10.1 DSP概述 1、基本概念 通常DSP(Digital Signal Processing)是指数字信号处理。DSP芯片是专用的数字信号处理器(Digital Signal Processor),它采用哈佛结数、流水线作业方式的并行处理技术,有专用的指令系统,尤其适用于数字信号的算法实现,编码变换等处理。 2、DSP的发展历史和现状 (1)DSP发展的历史背景 现代信号处理起源于17-18世纪的数学,并以1807年12月21日法国工程师J、B、Fourier提出FT变换为标志。我们现在讨论的数字信号处理,是随着数字电子计算机的发展而发展起来。在数字信号处理的初期(本世纪50~60年代),人们只是在通用的数字计算机上进行算法的研究和处理系统的模拟与仿真,1965年库利-图基(Cooley Tukey)提出快速付氏变换FFT是数字信号处理发展史上的一个里程碑。同时随着FFT及其它算法的提出,也促进了专用数字处理硬件的发展,并最终导致高速高位DSP的出现。 一般认为:70年代后期推出的Iatel 2920是第一块脱离了通用型微处理器结构的DSP芯片,1980年前后推出的μPD7720具有专门的硬件乘法器,从而被认为是第一块单片DSP器件,1983年Ti推出的TMS系列,标准着实时数字信号处理领域的重大突破。 (2)DSP主要机种与生产商 DSP主要分浮点与定点运算两类 定点运算有Anolog Derives ADSP2100系列,AT&T DSP 16系列 Motorola DSP5600系列、NEC u PD77220、TMS320C2x/c5x/c54x系列等; 浮点运算有Anolog Derives ADSP 2120、AT&T DSP32c/3210、Motorola DSP 96002、TMS3200 c3x/c4x等。 目前DSP主要生产商有:Anolog Devices公司,其主要产品ADSP2100定点系列和ADSP21020定点系列;Motorola公司其主要产品:Motorola DSP 5600定点系列和Motorola 9600浮点系列;Texas Fustruments公司,其主要产品:TMS320c2x/c5x/c54x定点和TMS3x/4x系列浮点。并且,Ti公司宣传即将推出TMS320C6X/C62XX系列产品,速度1000MP1S以上。Anolog Devices公司也将推出高性能的SHARC产品。 §3.10.2 DSP的特点与应用 1、DSP的特点 (1)DSP总线结构都采用哈佛结构或改进的哈佛结构。 通用的微处理采用冯.诺依曼结构,即程序指令和数据共用一个存储空间及单一的地址和数据总线。为进一步提高运算速度,以满足实时信号处理的要求,当前的DSP芯片采用哈佛结构。所谓哈佛结构,是将指令和数据的存储空间分开。这样使得处理指令和处理数据可以同时进行,从而大大提高处理效率。 (2)采用流水线技术 DSP大多采用了流水线技术。计算机在进行一条指令时,要经过取指、译码、访问数据、执行等几个步骤,需若干个指令周期才能完成。流水线技术将各指令和执行时间可以重叠起来。即第一条指令取指后,在进行译码的同时,可进行第二条指令的取指;第一条指令访问数据时,第二条指令译码……。这样尽管每条指令的执行时间仍然是几个指令周期,但由于用了流水线的作业方式,使得总体处理速度大大提高。而DSP所采用的指令与数据存储空间分开的哈佛结构,为实现流水线作业方式提供了方便。 (3)具有硬件乘法器和MAC单元 在数字信号处理算法中,乘法和累加是最基本和大量的运算,例如在卷积运算、数字滤波、快速付里叶变换、相关计算、矩阵运算等算法中大多都有乘加(乘法和累加)运算。通用的乘法运算是采用软件实现的,往往一次乘法运算需要若干个机器周期才能完成。DSP中都设置了硬件乘法器和MAC乘加(乘法并累加)一类指令,取两个操作数到乘法器中作乘法,并将乘积加到累加器中,这些操作在DSP芯片中往往可以在单个在指令周期内完成,使得DSP作乘和累加这种数字信号处理基本运算的速度大为提高。 (4)具有循环寻址(circular addressing)及位倒序(bit reverse)寻址功能。 为满足FFT、卷积等数字信号处理的特殊要求,当前的DSP大多在指令系统中设置了循环寻址及位倒序指令及其它特殊指令、体现在作这些运算时寻址、排序及计算机速度大大提高。 另外,DSP系统设计和软件开发,往往需要相当规模的仿真调试系统,为方便用户的设计与调试,许多DSP在片上设置了仿真模块或仿真调试接口、如Motorala在DSP片是设置了一个QnCE (On-Chip Emalation)功能块、通过行脚、使用户可以检查片内存储器、寄存器及外设,用单步运行,设置断点、跟踪等方式控制与调试程序。Ti则在DSP片上设置了JIAG(Joint Test Aotion Group)标准测试接口及相应的控制器。 在PC机上插入一块调试插板,接通JIAG接口,就可以在PC机上运行一个软件去控制它。 DSP有自己的汇编语言指令系统,为适用于高级语言编程,各公司也陆续推出适用于DSP的高级语言编译器,主要是C语言编译器,也有Ada、Pascal等编译器,程序员可用高级语言编程,通过编译器,将程序汇编、连接成DSP目标代码。 2、DSP应用领域 随着DSP性能的改善和成本的降低,DSP在通用数字信号算法处理的基础上,其应用几乎遍及电子学每个领域。 (1)通信:网络通信,高速调制解调器,编/解码器,自适应均衡器,移动通讯,语音邮箱,回音消除,噪声对消,会议电视,扩频通信等。 (2)声音/语音处理、图像/图形处理:语言识别,语言合成、语音编码、图形变换、机器人视觉、模式识别、电子地图等。 (3)仪器/仪表:谱分析、函数发生器、波形发生器、数据采集、状态分析、石油/地质勘探、VR航空(Visual Reality)试验,医学仪器等。 (4)计算机:阵列处理器、图形加速器、神经网络、多媒体等。 (5)消费电子: 数字电视、高清晰度电视、VR游戏、汽车工业等。 (6)军事: 雷达与声纳信号处理、导航、制导、全球定位、搜索跟踪、VR式器试验等。如下图: (下面以TMS320C54X系列为例介绍DSP的硬件结构及软件编程方法) §3.10.3 TMS320 C54X DSP硬件结构 1、TMS 320C54X内部组成单元与总线结构 TMS320C54XDSP的结构简图如图1所示: 图1 TMS320C54X内部组件与总线连接 可见DSP内部的程序总线P、数据总线D、控制总线C和数据写存储器总线E都是独立分开的,以便于组件单元的并行处理和数据传送。 TMS320C54X C54X的结构部件其实可看作是围绕挂换在8束16 bit的总线上的。(见图2 TMS320 C54X内部硬件结构框图),其中: (1)程序总线PB传送指令码和程序存储器的直接操作码。 (2)三束数据总线(CB、DB和EB)相互连接起各个单元,如CPU、数据地址产生逻辑(DAGEN)、程序地址产生逻辑(PAGEN)及其它芯片组件和数据存储器(其中CB、DB传送从数据存储器读出的数据,EB传送向存储器写的数据)。 (3)四束地址总线(PAB、CAB、DAB和EAB)传送指令执行期间所需的地址数据。 2、内部存储器结构 54X的存储器由程序空间、数据空间和输入/输出空间三个分开的空间组成,包括随机存取存储器RAM和只读存储器ROM。RAM可当作DARAM(dnal-access RAM)和SARAM(Single-access RAM)54X系列中各种芯片的ROM、DARAM和SARAM空间大小有所不同。 (1)片上ROM(On-Chip ROM)它是程序存储器的一部分,常用以接受boot Loading。 (2)DARAM(On-Dhip Dual-Access RAM)。它由若干块组成,对DARAM中的数据,CPU在一个机器周期内可对它进行两次操作(读或写),DARAM总是映射在数据空间,其主要目的是存储数值,它也可映射于程序存储空间用以存储程序代码。 (3)SARAM(On-Chip Single-Access RAM)。它由若干块组成,每块在一个机器周期内,可被读或写一次,它一般映射在数据空间,主要是存储数值,它也可映射于程序空间存储程序代码。 (4)片上RAM保护。当设计片上RAM保护时,外部指令就不能对其进行读写。 3、CPU(Central Processing Vnit) TMS 320 C54X CPU包括: a) 40-bit的算术逻辑单元(ALU)。可实现2个40bit操作数的算术逻辑运算,也可进行布尔运算。 b) 2个40-bit的累加器(A、B)。可存储ALU或乘/加(Multiplier/adder)运算的输出,也可提供ALU的二次输入。累加器A还可作乘/加运算的输入,每个累加器都可划分成以下三部分: i) 保留位(bit 39-32); ii) 高字节(bit31-16); iii) 低字节(bit15-0)。 c) 桶式移位器(Barrel shiffer)。桶式移位器有一个来自40bit的累加器(A或B)或数据存储器(通过CB或DB)的输出,其40bit的输入,送到ALU或到数据存储器(通过EB)中。它可对输入产生0-31bit的左移和0~16bit的右移。并由指令进行控制。 d) 17×17-bit的乘法器。它实现两个17bit操作数的乘运算,并与40bit的加法器等共同实现在一个指令周期内完成乘/加运算;和AKU共同在一个指令周期内完成并行的乘/累加(MAC)运算。 e) 40-bit加法器(Adder(40)),配合Multiplier执行乘/加运算。 f) 比较、选择和存储单元(CSSU),实现累加器高、低字节中数据的大小比较测试或控制标志位TC、状态寄存器ST0和发送寄存器(TRN)以保持发送状态等。 g)数据地址产生单元(DAGEN) h) 程序地址产生单元(PAGEN) 4、DSP外部信号引脚 DSP处理信号引脚包括:(C548) (1)外部总线接口包括:(External Bus Iaterface) 并行地址总线口(23-bit) 并行数据总线口(16-bit) 存储器选择MSTRB_、程序空间选择PS_、数据空间选择DS、I/O选择IOSTRB_、IS_读/写信号R/W、READY、信号保持HOLD_、指令获得IAQ_等。 (2)控制信号(Control Signals) 复位信号RS; 外部中断输入INTX_及中断响应IACK_等; 分支控制BIO-; 外部标志输出XF; 工作方式选择MP/MC等。 (3)晶振/时钟信号(Oscillator/Timer Signals) 晶振输出插入 X1、X2/CLKIN 时钟信号:包括CLKOUT、CKKMDX、TOUT等。 (4)缓冲串行口信号(Buffered Serial Ports Signals) 接收时钟:BCLKRO、BCLKR1;发送时钟:BCLKXO、BCLKX1; 串行数据接收:BDR0、BDR1;串行数据发送BDX0、DBX1; 帧同步接收:BFSR0、BFSR1;帧同步发送BFSX0、BFSX1。 (5)TDM串口信号 TDM 接收时钟TCLKR;TDM发送时钟TCLKX 串行数据接收TDR;串行数据发送TDX 接收帧同步/地址 TFSR/TADD;帧同步发送TFSX/TFRM (6)仿真信号(Emulation) JTAG测试时钟TCK JIAG数据输入TDI JIAG口模式选择TMS JIAG数据输出TD0 JIAG口复位TRST_ 仿真引脚 EMU0、EMU1/OFF (7)Host接口Host Port Interface 并行数据口 HD0~7 控制输入 HCNTL0、HCNTL1 字节识别输入 H+BIL 片选 1+CS 数据输入选择 HDS1_HDS1; 地址选通:HAS; 读/写信号:HRW、HRDY 串断输出:HINT; HPI模式选择 HPIENA/VDD 如图3 “C54X信号引脚”和”C548信号引脚”。 5、DSP硬件设计的几个主要问题: (1)总线控制方案 (2)boot loading (3)Hardware wait_states (4)I/O与中断设计 (5)Memory Map (6)串口工作方式与时序设计 (7)TAP接口 §3.10.4 TMS320C54X的软件编程 1、DSP编程工具与流程 DSP的设计目标是进行数字信号处理,在硬件设计的基础上选择好一定的优化算法并通过编程在DSP芯片上实现是DSP技术的核心内容。对DSP进行编程,目前最有效的语言工具仍是DSP汇编语言,同时为方便用户用高级语言进行编程开发,也相继推出了C语言编译器,ADa、Pascal等编译器。 图4是TMS C320C54X软件开发流程,图中有阴影的部分是通常开发的必需步骤,其它可据需要选作,最后产生COFF(Common Object File Format) 文件。 2、DSP汇编语言编程 (1)DSP汇编过程有以下几个步骤 a) 源程序的编写。将算法的详细实现过程用DSP指令系统的语句描述出来,其中源程序一般包括:data、bss和text三个基本组成内容。下面是一段程序例子,图5是COFF文件格式和object file在存储器中的分配情况。 2 ********************************************* 3 ** assemble an initialized table into data.** 4 ********************************************** 5 0000 data 6 0000 0011 coeff word 011h,022h,033h 0001 0022 0002 0033 7 ********************************************** 8 ** Reserve space in bss for a variable *** 9 ********************************************** 10 0000 bss buffer,10 11 ********************************************* 12 ** Still in .data. 13 ********************************************* 14 0003 0123 ptr word 0123h 15 ********************************************* 16 ** Assemble code into the text section **** 17 ********************************************** 18 0000 text 19 0000 100f add: LD 0Fh,A 20 0001 f010 aloop: SUB #1,A 0002 0001 21 0003 f842 BC aloop,AGEQ 22 ********************************************** 23 ** Another initialized table into data ********** 24 ********************************************** 25 0004 data 26 0004 00aa ivals .word 0AAh,0BBh,0CCh 0005 00bb 0006 00cc 27 ********************************************** 28 *** Define another section for more variables** 29 ********************************************** 30 0000 var2 .userct “newvars”,1 31 0001 inbuf .userct “newvars”,7 32 ********************************************** 33 *** Assemble more code into text ******** 34 ********************************************** 35 0005 text 36 0005 110a may: LD 0Ah,B 37 0006 f166 mloop: MPY #0Ah,B 0007 000a 38 0008 f868 BC mloop,BNOV 0009 0006’ 39 ********************************************** 40 *** Define a named section for int vectors ******** 41 ********************************************** 42 0000 .sect “vectors” 43 0000 0011 .word 011h,033h 44 0001 0033 b) cmd文件的编写。在使用不同的DSP芯片时,我们还要根据不同芯片的内部存储器情况,修改cmd文件,com文件中的内容必须按照系统的存储器地址分配确定。C54X系统与CMD文件配置情况见图6。 c) 编译与连接。通过对源程序(*.asm)的编译产生COFF目标文件(*.obj),再通过连接产生可执行的COFF文件(*.out),就可以进行仿真和加载。编译与连接格式如下: 编译:asm 500[input file [object file[list file]]][-option] 连接:Link 500[-option]filcname,…filenamen 3、DSP开发系统仿真 Ti提供了TMS320C54X与DSP开发仿真环境,包括Simulator和Emulator Simulator是软件仿真器,它可仿真54X的全部指令、I/O和主要外设功能,装入由汇编器/连接器产生的目标代码后,可连接或单步运行,仿真观察各存储器、寄存器的内容,以作汇编、编辑与修改等。 Emulator是PC机插件形式的硬件仿真器及开发系统;它具有良好的用户界面,可作全速的在线仿真。 图2 TMS320 C54X硬件结构 External Interfaces on the C542 TMS320LC548 TQFP Tentative Pinout 图3 C542和C548的信号引脚 TMS320C54x Software Development Flow 图4 TMS320 C54X软件开发流程 Introduction to Common Object File Format 图5 COFF文件及Object File 在存储器中的分配 Example System 图6 C54X系统与CMD文件配置 第四章 常用通信协议及标准 引 言 每个行业都有其标准和规范,它是设备质量及不同供应商所提供设备间互通的依据,我们做为电信设备制造商,应该遵从本行业相应的标准和规范,才能设计出合格的产品,并取得相 应机构的入网许可。本章主要介绍一些电信行业相应的标准化组织,及硬件开发常用的标准。 第一节 国际标准化组织 §4.1.1 ISO ISO(International Organization for Standardization),即国际标准化组织。是非官办机构,成立于1947年,成员包括世界上118个国家的官方标准化机构。ISO所从事的研究活动主要来源于用户协会和制造商,其主要目标是定义设备的基本兼容性要求,在通信领域影响最大的是OSI(Open System Interconnection)七层协议模型,即开放系统互联模型。它的影响不在于制定了某一个标准,而在于其七层模型的思想影响深远,理解了OSI七层模型,对通信及计算机技术领域其它协议的理解是非常有帮助的。 §4.1.2 CCITT及ITU-T CCITT(International Telegraph and Telephone Consultation Conmmittee),即国际电报电话咨询委员会,它是国际电信联盟(ITU,International Telegraph Union) 所属的一个组织,主要负责电信领域特别是有关电话、电报和数据传输方面技术、操作和资费问题的研究,研究结论以建议的形式发布。目标是实现全世界电信标准化。CCITT已经制定了许多电话交换、数字系统、终端和数据通信的建议,是目前电信领域应用最广泛的标准。比如,有关电话网上进行数据通信的V系列建议、有关数字网标准的I系列建议、 有关数据通信网络的X系列建议、 有关终端设备的T系列建议、有关数据传输系统的G系列建议等。ITU-T(International Telecommunication Union-Telecommunication Standardization Sector),即国际电信联盟标准化部,其前身即为CCITT,九十年代初改为ITU-T。ITU成 立 于1865年,是一个协商组织,有187个政府和400个其它成员(主要是电信营业商、增值网络运营者、设备制造商等),也是联合国的一个专门机构。 §4.1.3 IEEE IEEE(Institute of Electrical and Electronic Engineers),即电气和电子工程师协会,成 立于1884年,成员包括147个国家的32万名工程及研究人员。IEEE所制定的最有影响的规范是其1980年起陆续推出的有关局域网LAN(Local Area Network)及城域网MAN(Metropolitan-Area Network) 的IEEE802系列标准。 §4.1.4 ETSI ETSI(European Telecommunications Standards Institute),即欧洲电信标准协会,1988年 成立,包括410个全权成员、25个联系成员和84个观察员,主要致力于欧洲范围内电信标准 的制定。 §4.1.5 ANSI ANSI(American National Standards Institute),即美国国家标准协会,成立于1918年,是美国的最高标准化解释和协调机构,也是ISO的成员。ANSI的成员包括1400家公司、组织、政府机构和协会,主要致力于LAN和WAN标准的制定。 §4.1.6 TIA/EIA TIA(Telecommunication Industry Association)即电信工业协会,EIA(Electronic Industries Association) 即电子工业协会,都是美国的工业贸易协会,多年来一直积极从事数据通信领域接口标准的制定工作。TIA/EIA颁布自己的标准,同时也向ANSI提交建议,作为美国国家标准颁布。TIA/EIA最出名的标准是接口系列标准,特别是TIA/EIA232、TIA/EIA422等(早期称为RS系列标准)。最新的如TIA/EIA-449、TIA/EIA-530等在数据通信领域都得到广泛应用。 §4.1.7 Bellcore Bellcore原是美国贝尔公司的一个附属研究机构,80年代末,由于美国反垄断法的制定, 贝尔公司被分解为几个部分。由于80年代前贝尔公司在美国电信行业具垄断地位,因此贝尔设备入网标准也就是美国的电信设备入网标准,Bellcore即为贝尔标准制定者,现在贝尔虽然 解散了但其过去所制定的标准的影响依然存在,比如在MODEM方面的标准等。 第二节 硬件开发常用通信标准 §4.2.1 ISO开放系统互联模型 80代初,计算机网络飞速发展,各个厂家相应推出自己的标准,ISO吸取了IBM的SNA和其它计算机厂商的网络体系结构,1983年提出了开放系统互联(OSI, Open system Interconnection)模型。OSI模型由7个功能层组成: 物理层 数据链路层 网络层 运输层 会话层 表示层 应用层。 下图表示了两个计算机通过交换网络互相连接和它们对应的OSI参考模型分层的例子: 用户信息从最高的应用层下移到网络层,由该层负责处理越过网络的路径选择,网络层为了完 成它的任务需要链路层提供服务,保证网络层的信息正确无差错的传输。用户A发送的信息经 过网络到达接收端后,由网络层上移,并经高层的处理,成为用户B可识别的信息。由高层组 提供的功能使得各不同厂家制造的计算机之间可以开放式的互相通信。 OSI模型受到全世界的普遍接受和欢迎,因为它提供了解决异种计算机通信问题的可能。 两个系统不管它们是怎样不同,如果有下列共同之处,则可以有效的通信: a. 它们执行相同的通信功能集; b. 这些功能由同样的层次集合组成,对等层提供同样的功能(提供功能的方式可以不同); c. 对等层必须采用相同的协议。 d. OSI模型只是确定了一个七层体系结构,它为确定这些标准和通信协议提供了标准的骨架。 §4.2.2 CCITT G系列建议 CCITT G系列建议是有关国际电话连接和电路的一般特性、国际模拟载波系统、传输媒质、数字传输系统、数字网、数字段和数字线路系统的建议。G系列建议中应用最广泛的是G.703建议。G.703建议定义了分级数字接口的物理电气特性。 1、 64kbit/s接口 接口功能要求 对发送和接收两个方向,都有三种信号通过接口:64kbit/s信息信号,64kHz定时信号,8kHz定时信号。 有三种接口类型: 同向接口:信息及定时同向传输; 反向接口:定时信号都由数字传输设备提供给终端设备; 中央时钟接口:定时信息由一个中央时钟设备供给. 接口电气特性 对同向接口: 标称比特率64kbit/s,通过接口的信号的最大容差:100ppm 每一传输方向用一对平衡线对,用编码的方法将三种信号(64kbit/s信息、64kHz定时、8kHz定时)综合在一个传输信号中 编码方法:二进制1:编为1100;二进制0:编为1010;通过交替变换相邻码组的极性, 把二进制码转换成三电平信号;在每第8组破坏码组的极性交替(第8组不改变极性),从而 表示该码组代表了八比特信息组的最后一比特。全双工时,接口只需两对(四条)平衡线对。 接口特性:接口电路的输出信号为矩形脉冲,传号的标称峰值电压为1.0V,空号的峰值 电压为0V,标称脉冲宽度为3.9ns(信号波特率256KBd)。如果平衡线对是屏蔽的,屏蔽层在输出口接地,必要时也要在输入口将屏蔽接地。 反向接口的电气特性:与同向接口不同的是,它需要在每个传输方向使用两对平衡线,一对用于传输数据信号,另一对用于传输综合定时信号。数据信号采用100%占空比的双极性AMI(Alternate Mark Inversion) 码,综合定时采用50%占空比的双极型AMI码传递64kHz定时信息,并通过引入编码规则破坏点的办法来传递8kHz定时信息。反向接口电路的波形也是矩形波,数据信号的标称脉冲宽度为15.6us,定时信号的标称脉冲宽度为7.8us。 其它特性与同向接口相同。 中央时钟接口的电气特性:在每一个传输方向上需要用一对平衡线传输数据信号,另 外还需用一对平衡线将来自中央时钟源的综合定时信号送至局内终端设备。其它与反向接口 类似。 2、2048kbit/s接口, 比特率为2048kbit/s,信号采用HDB3码( 三阶高密度编码),输出信号特性:传号(有脉冲)的标称峰值为2.37V(同轴线对),或3V(对称线对);空号(无脉冲)的标称峰值电压为0.237(同轴线对)或0.3V(对称线对),标称脉冲宽度244ns。 具有G.703接口的通信设备可直接与数字通信设备(PCM设 备)连接,对具有V系列或X系列接口的通信设备要利用数字通信信道传输数据时,需要在中间加接口和速率转换器。 §4.2.3 I系列标准 CCITT I系列建议是关于综合业务数字网(ISDN)的建议, 其中有关物理层硬件的是I.430、I.431。I.430定义了基本入口S/T参考点的参考配置、信号在线路上的编码方式、帧结构、传输时的同步原理、多个终端对D信道竞争的裁决方式、激活和解 除激活的方法、物理特性以及供电方式。 基本入口S/T参考点上三个信道(两个64kbit/s的B信道和一个16kbit/s的D信道)以同步时分的方式复用在同一条线路上,传输速率192kbit/s, 采用伪三进制码,四线传输、最大传输距离1公里(0。6mm线径时)。 基本用户网络接口S/T参考点的接口芯片主要有MOTOROLA的MC145574和SIEMENS的PEB2086等,另外NS、AMD等也有相应的芯片。 一次群速率入口的物理层协议I.431是建立在G.703基础上的,一次群入口只采用点对点 配置,2048kbit/s的接口的电器特性由G.703规定,见下图。 §4.2.4 V系列标准 CCITT V.xx系列建议从60年代开始制定V系列建议,现在已经几经修订,成为一个较为全面和完善的建议。V系列建议是为电话网上的数据通信而制定的,包括几部分: V.1—V.7 总则 V.10--V.33 接口与话音频带调制解调器 V.35--V.37 宽带调制解调器 V.40--V.42 差错控制 V.50--V.57 传输质量与维护 V.100、V.110、V.120、V.230 与其它网互通 下面分别介绍一些常用的V系列建议. 一、接口电路电器特性的V系列建议 CCITT V系列建议中规定电器特性的标准有:V.10、V.11、V.28、V.35等共四 种。 1、V.28 V.28建议规定了使用分立元件实现的不平衡双流接口电路的电器特性,它适用以低于20kbit/s的数据传信速率操作的接口电路,具体规定如下: 负载: 3000< Rl<7000 Cl<2500Pf 发生器输出开路电压:Vo<15V 任何两条接口电路间短路时短路电流I<0.5A 有效电平:对数据接口电路 V<-3V时,为二进制’1’ V>+3V时,为二进制’0’ 对控制和定时电路V<-3V时,为‘接通’状态 V>+3V时,为断开状态 信号特性:对数据和定时电路,信号跃变所需的时间不超过1ms及码元周期的3%,取其中较小的数值;为防止串话,电压的瞬时变化率限定为30V/us;对控制信号通过跃变区所需 时间不超过1ms。 V.28电平即为大家非常熟悉的的RS232或EIA232电平。 2、V.10 V.10建议规定了在数据通信领域中与集成电路一起使用的不平衡双流接口电路的特适用于具100kbit/s数据传信率的环境。具体规定如下: 发生器输出阻抗 <50 发生器开路电压4+0.3V时为二进制’0’,控制电路为ON 接收器规定与V.11相同 由于V.10规定的发生器采用非平衡电路, 而接收器采用与V.11相同的差分平衡电路, 因此V.10与V.28和V.11在一定程度上都能实现互通。 3、V.11 V.11建议规定了在数据通信领域中同集成电路设备一起使用的、传信速率可达10Mbit/s的平衡双流接口电路的特性,具体规定如下: 有效电平:对发生器 V+>V-时为数据的’0’或控制电路的’ON’;V++0.3V时为数据电路的’0’或控制电路的接通。 开路差动电压不应大于6V 各线短路时电流不应大于150mA V.11电平也就是我们常用的RS422电平。 4、V.35 V.35规定了使用60-108KHZ基群电路以48kbit/s进行数据传输的电路特性,接口线 采用平衡绞合多线对电缆,特性阻抗为80-120,信号源阻抗50-150,负载阻抗100+-10 平衡线对间正常电压:0.55V+-20% 平衡线对电压V+>V-时为二进制’0’ 平衡线对电压V+> 程时端编著 人民邮电出版社 2. <<分组交换工程>> 杜治龙编著 人民邮电出版社 3. <<数据通信技术>> [美]Gilbert Held著 清华大学出版社 4. CCITT V系列标准蓝皮书 5. <> 1997年25期 第五章 物料选型与申购 第一节 物料选型的基本原则 中试、生产、物料等部门发生的物料问题日益增多,而物料选型基本上是在开发中进行的,因此必须在源头对物料选型进行引导和控制,各硬件人员有责任和义务认真对待器件选型。 鉴于现阶段开发部硬件人员选型存在一定的盲目性,有必要建立物料选型指南来规范选型工作。 1、问题发生阶段: 中试:质量不稳定--影响中试进度 生产:品质因数差,供货困难--生产成本增加,降低供货能力 市场:由于物料品质导致的大量损坏--维护费用高,影响XXXX信誉 2、问题发生原因: 器件停产 供应商不明 供应商商务差(价格高,货期长,供货能力差,独家生产) 品质差 3、选型的重要环节: 立项预研:专用物料选型 开发样机:所有物料选型 中试申请:清单物料优选 4、选型指导原则: 1) 选用性能参数合适的器件 2) 选用技术成熟的元器件 3) 选用公司现已批量生产产品中使用的器件 4) 选用具有直接替代器件的器件 5) 选用功能上归一化的器件 6) 选用货源稳定、充足的通用器件 7) 选用技术和商务认证均好的器件 8) 慎选商务认证不好的器件 9) 慎选独家生产的器件 10) 不选技术认证不好的器件 11) 非尖端技术产品不选用尖端技术器件 12)新开发产品专用物料必须经过多方认证 尚处于开发阶段的产品应遵循上述选型原则。 6、公用物料选型的基本原则 公用物料的选型按上述原则进行,新器件选型时商务情况不可忽视。 7、专用物料选型的基本原则 专用物料选型时除遵守上述原则外,还应注意以下事项: 1)在选型论证时要尽可能多的收集各公司、各供应商的资料,除了注重器件技术性能,还要考虑供应商商务是否良好,供货周期是否稳定,供货能力是否能满足大批量生产的需求,以及价格是否适中等。 2)由于专用器件存在公司间的技术封锁,可能无法找到直接替代的器件,所以在专用器件的选用上不能采取信手牵来的使用作法,一定要慎重,若能选用公司已使用的器件就尽可能选用。 8、选型信息查询指南: 1)物料品质专栏Notes: 技术分析报告,器件归一化通知,MRPII项目描述操作指导书,物料与品质 2)中试WEB服务器(IP:129.9.200.8) 产品设计中元器件的选择 3)物料部WEB(IP:129.9.14.201): AVL(合格供应商)物料清单,长货期物料清单,停产物料清单 4)中研部硬件论坛Notes: 经验与讨论 即将建立的器件优选信息查询系统:将以快捷、简明的方式向开发人员提供器件选用参考信息,其中的器件优选状态将直接影响到产品物料清单的审核。 9、选型步骤: 优先选用优选物料 注意停用停产器件 长货期物料应提前申购 对慎选物料应逐步替代 第二节 IC的选型 1、IC的常见技术问题 闭锁效应 公司中使用了大量的CMOS器件,CMOS器件的基本结构中存在有寄生双极型晶体管,它有可能成为器件中的危险电流的路径。一般说来,寄生晶体管的基极-发射结和基极收集结都不是正向偏置的,所以这些晶体管都不导通。图中示出了一个CMOS硅片的断面及其一级模型的寄生晶体管。为保证所有的结都是反向偏置,P型衬底接到芯片上的最负电压(GND)上,而N型阱则连接到芯片上最正的电压(Vcc)处。 COMS结构中的寄生双极型晶体管 该图也示出了CMOS结构中出现的寄生电阻。一般而言,只要电流不在结构中横向流通,这些电阻无关紧要。然而,若有任何一个有关的二极管导通,则有可能出现电流在电阻上形成的(IR)压降。这些二极管可能一开始加电时就被电源电压接通,或是被I/O引脚的超过GND和Vcc限度的瞬变电压接通。这些瞬变电压可能是信号上升变化和系统中电感效应引起的。 这些寄生结构一旦导通,则可能会出现严重事故,因为导通效应是再生效应,能够自身增强,直到最后产生强大的破坏性的电流流通。这种可控硅整流器(SCR)效应称作“闭锁”效应。这些电流流过寄生晶体管,寄生电阻上的IR压降随之增加,进而基-发射结上的正向偏置也增加。这种恶性循环一直继续到电流受到电流主路径的压降限制而不再增长为止。这时电流所达到的值可能足以造成内部电路无可挽回的损坏。 某些器件在设计时已经考虑了这种电源和I/O引脚瞬变引起的闭锁效应,并已采取措施,使之降直最小。如果在推荐工作条件下运行,所有的器件都能承受住大小为100mA或稍低的强行通过器件引脚的电路,以及范围为(GND-1)和(Vcc+1)V之间的输入电压极值。 在电源加电期间,随着电源电压上升,同时给器件加上输入电压和Vcc,只要Vcc上升时间小于规定的最大上升时间,应当是安全的。设计者应当保证输入电压上升不能快于Vcc引脚的上升速度。 当把单板插到一个正在工作的系统上,即“带电插拔”时,闭锁现象会频繁发生,这是因为电源尚未来得及提供电流给单板上的Vcc和GND,逻辑电平就已经出现在单板子系统的逻辑器件上了。这种情况很可能引起闭锁现象。 为减少加电时引发闭锁的机会,应当首先把GND电压加到器件上,然后加Vcc电压,最后再输入信号电压。器件断开电源时应当遵从相反的操作次序:首先去掉输入信号,然后是Vcc,最后是GND。所以在交换机单板上设计有加电保护器装置,其主要原理就是增加Vcc和GND的插头长度,使单板电源先加电,后掉电,从而防止闭锁。 而在公司一些技术部门单板调试中,仍很轻视这些技术环节,往往用未装加电保护器的单板和装置进行经常性的带电插拔操作,因而使产生闭锁而损坏CMOS器件的因素成为影响公司质量、效率和成本的潜在因素之一,希望公司同仁们能了解这点,并在单板设计、调试和生产中一定不要轻视。 2、 常用IC选型举例 对老产品中质量稳定可靠的元器件,在设计新产品时应尽量选用,在此基础上,吸收技术过关的新技术、新工艺元器件,使设计有所创新。 以IDT74FCT16244的选用为例: 最近公司的市场返修及生产过程中IDT74FCT16244(IDT公司生产)失效率较高,对公司造成较大的损失。我部通过分析发现,IDT74FCT16244是在公司前期强调新技术、高速率的环境下引入的器件,其品质在生产和市场中呈现出高失效率,但这些信息并未反馈到中研部,中研部开发的新产品仍源源不断选用IDT74FCT16244。通过分析表明,单从速率上考虑,公司产品中许多应用IDT74FCT16244的地方,信号速率在保证器件降额使用条件下,选用74AC16244或74ACT16244(TI公司生产)已足够了,且无论从价格、使用中可靠性、优选厂商等方面考虑,选用IDT74FCT16244都属不优。仅仅因技术新、速率高等用不上的“优点”而在产品中大量应用,进而造成:不慎选用大面积应用高失效率分析处理改用 这样一个大弯路,浪费了大量人力物力,影响了公司产品在用户中的形象。 尽量减少器件品种规格,增加元器件的复用率,使元器件的品种规格与数量之比减少至最小程度 在器件选用时,若不考虑减少元器件品种规格与数量则必然会出现网上垃圾增多,给采购带来较大的工作量,增加了供货厂数目,使得供应商的品质控制难以监控,同时也增加了库存和成本,不利于从成批购买中得到好处等许多不利因素。 目前正在做的归一化工作,就是针对这种情况而进行的。由于以前BOM的申请未得到有效的监控,因而网上数据混乱,垃圾很多。仅金膜电阻品种规格达到1800余条,厂家有7、8家之多,而且许多阻值也不标准,经过归一化工作后,将金膜电阻归并到600余条、厂家仅有两个。电容、存贮器电路归并后,品种规格也大幅度减少,并覆盖公司全部使用范围。 所以在开发设计阶段,器件选型时,尽量提高元器件复用率,减少品种规格。 3、表面贴IC选用的封装及包装: 目前,表面贴技术在世界得到了突飞猛进的发展,其突出的优点是:所占面积小,封装密度高,可靠性好,便于大规模生产。表面贴技术同样在XXXX公司得到广泛的应用,单板版本的每次升级都是单板上器件表面贴化的一次飞跃。我公司引进的松下高速SMT贴片机更为单板表面贴化和大规模生产奠定了基础。下面就表面贴器件的特点,结合我公司生产的实际需要做如下的介绍: 一、表面贴IC的封装形式 一般来说,常用表面贴IC的封装形式有两种,即小外形封装(SOIC)和四边有引线方形扁平封装(QFP)。而网格针栅阵列封装(PGA)和塑料芯片载体封装(CC),也是常见的封装,所以在这里一并介绍。 下表给出了以上四种封装的分类: 上述封装形式是随着集成电路内部高密度化,超大规模化而应运而生的,随着工艺的改进,内部工艺线宽由刚开始的几十m到1—2m在不断减小。当我们还在为0.3—0.5m的芯片水平而鼓舞的时候,国外大公司早已将目光转向了0.1m的开发。正是在这种高速的发展下,IC的封装形式也在不断的变化,管脚节距越来越小,封装密度越来越高,品种越来越多,仅SOIC封装就有SSOP(密小引线封装)、TSOP(细小引线封装),VSOP(极小轮廓封装)等多种形式。其中薄形四边有引线扁平封装(TQFP),又称密集型(shrink, QFP)的引出端已达524个,引线节距为0.254mm,采用载带自动键合(Tape Automated Bonding, TAB)方式封装。以满足速度更快,集成度更高的新一代VLSI的要求。 二、表面贴IC的包装形式 表面贴IC的包装形式对于贴片机生产影响很大,若包装形式不符合要求,轻者会影响生产效率,重者能造成无法生产。因此,表面贴器件的包装对于生产至关重要。 目前,SMT器件的包装主要有三种形式,即:卷带式(Tape and Reel),盘式(Tray)和管式(Tube)。 我公司的贴片机CM92,主要有两种送料器,分别适用于盘式和带式。因此,在采购时应尽量避免采用管式(Tube)包装,以免对生产造成影响,如果进料是Tube包装,在这种情况下,有两个解决办法:一是修改贴片程序,但这将会导致生产停顿且贴片速度低;二是把Tube中的器件换到托盘上。这样,不仅影响生产效率,而且会出现损伤、放错方向,人体静电影响等。因此,我们根据XXXX公司贴片机的实际生产情况,制定了以下有关SMT类IC包装形式的规定: 1) QFP、PLCC封装的IC一律采用盘式(Tray)包装。 2) 对28PIN以下的SOIC(包括SOP、SSOP、TSOP、SOJ等)采用带式(Tape)包装。 3) 对28PIN以上的SOIC,可根据实际情况采用盘式(Tray)或带式(Tape)包装。 对于以上IC的包装规定,应在BOM特征描述一栏中加以描述,请BOM科尽早录入。对于新申请编码的表面贴IC一律要在特征描述中加入包装要求。 采购料采购表面贴IC时,请注意参照上述规定。 以上规定,请各部门在采购、检验和生产中遵照执行。 以上规定制定出来以后,技术认证部在BOM科及工艺科的配合下,做了大量的工作,使BOM中的SMT器件包装形式的规范化达到了80%以上,并对生产量大,生产急需单板做到100%包装规范化,大大提高了生产效率。比如,对产量最大的用户板CC07ASL清单上所有器件进行了包装规范化处理,生产中已显示出了其巨大的优越性,较明显的改进如下: 1) 原来贴装一块耗时34秒,现在只需要12秒。 2) 原来只有一台贴片机工作,另一台闲置,现在生产得以均衡。 3) 原来的片精度只有±0.2mm,现在提高到±0.15mm。 4) 原来所有物料集中在一台片机上换料时间长,现在将一些20PIN的IC转移到高速机上,减少了换料总占机时间。 5) 在优化回流焊参数的基础上,整个生产效率提高约30%以上,用户板是产量最大的单板,这一改进就直接加大了设备的生产能力,为推行JIT创造了条件。 从以上事实不难看出,SMT器件包装的规范化大大提高了生产效率,在不增加设备投入的情况下,直接加大了生产能力。 总之,表面贴器件在我公司得到了广泛的应用,我们将更加努力的工作,使SMT器件的分类更科学,包装更规范,进一步提高生产质量和生产效率。 第三节 阻容器件的选型 1、电阻器的选型 金膜电阻的选型 为保证程控交换机的长期可靠性,在电阻选型上主要选择稳定性好、精度高的金膜电阻。刚开始,由于供货商多,技术、人员等多种原因,造成了金膜电阻选型的一些混乱,影响了物料的规范管理及运用,经过中试部技术认证部的长期努力及相关部门的协作,基本上保证了物料技术上的规范管理,其中金膜电阻方面主要作了规范归一化管理,清理了久未使用,已无库存的器件,在精度上作了归一化,归一化原则为: 精度为±0.1%,保持不变, 功率1/2W或阻值1M,精度向±5%归并; 功率1/2W且阻值1M,精度向±1%归并; 厂商主要选择美科电子有限公司,其它厂商向其归并。在BOM库中美科的型号定义规范如下: 例: MF—25 3922 F MF表示金膜电阻型号代码; 如+为RN—60,则为美科生产的精度为±0.1%,1/4W的型号。 表示额定功率的数字; 数字 12 25 50 100 200 功率(W) 1/6W 1/4W 1/2W 1W 2W 注:精度为±0.1%,1/4W用RN-60表示。 阻值:前3位为有效值,最后一位为0的个数,3922即39.2K; 原则上精度为0.1%,1%电阻,用4位数表示;精度为5%用3位数表示,小于100电阻一般加R(表示欧),如10R0,则为10。 阻值允许偏差符号: 符号 J F B 允许偏差(%) ±5% ±1% ±0.1% 在MRPII项目申请中,也应注意描述的规范化,金膜电阻大类为07,小类为01,项目描述格式如下: 例:金膜电阻器 —— 1/4W-24K±5% 内容由小类名称(金膜电阻器)与BOM库中的型号说明合并而成。 美科公司电阻种类齐全,其阻值系列规格采用标准的E24、E96、E192系列 ±5%精度主要对应E24系列; ±1%、±0.1%精度主要对应E96、E192系列。 2、电容器的选型 1)铝电解电容器 现公司所用的铝电解电容器,均采用105摄氏度,以保证其工作可靠性,选用厂家为日本Nichicon公司和Marcon公司。 请特别注意:极性铝电解电容器只可正向工作,实际工作电压应为其额定电压的0.6倍左右,纹波峰值不能超过其额定电压。 2)独石电容归一化通知 现公司所用的独石电容,均采用NPO、X7R介质以保证其工作的可靠性,所选用厂家为AVX和DALICAP,其精度为5%和10%。 独石电容的种类因材料而异,它主要是NPO、X7R、Z5U等几种材料,而这些材料中,NPO的温度系数最好,其它依次次之。由于材料不同,它们的容量和用途各异。NPO独石电容主要是小容量的电容,一般在1.0PF~100,000PF之间。其性能不受电压和温度变化的影响。不随时间推移而老化及改变容量,称为超“稳定”电容,该类电容用于要求长期稳定的电路。X7R独石电容器一般在470PF~4.7F之间,为温度稳定电容器。在规定的工作温度范围内,容值变化率不超过±15%,但该电容随电压及频率改变而改变,老化率为1%。Z5U独石电容器为普通用途电容器,该电容受电压和温度影响很大,老化率5%,该电容器用于工作温度变化不大,电容值容量大且允许有一定变化,而体积要求小的场合。 怎样申请独石电容器? 一、型号定义(以AVX独石电容器为例) SR21 5 C 472 K A A 类型 电压 温度系数 容差 SR15 50V=5 NP0=A NP0:C=±0.25PF SR20 100V=1 X7R=C D=±0.5PF SR21 200V=2 Z5U=E F=±1.0%(50PF) SR22 300V=9 G=±2.0%(25PF) SR27 400V=8 J=±5% K=±10% SR30 500V=7 X7R:J=±5% ,K=±10% ,M=±20% SR40 容量 Z5U M=±20% ,Z=+80%,-20% SR50 472=47×102PF F和G不适用于SR15 104=10×104PF 二、型号说明: 额定电压—容值±容差 例如:SR215C472MAA 50V—4700PF±20% 三、MRPII项目描述 独石电容器—额定电压—容值±容差—温度系数 例如:SR215C682KAA的项目描述 独石电容器—50V—6800PF±10%—X7R 目前我司所用电容以AVX为标准,且全部使用NPO和X7R独石电容。 3、电缆及接插件的选用 1) 同轴电缆的选用 同轴电缆是一种由内、外导体组成,外导体接地作为屏蔽层传输线,其屏蔽性能好,衰减小,常被用于频率较高时信号的传输。随着我公司在无线通讯领域的发展,同轴电缆的选用将越来越多,希望大家在选用以及申请编码时能注意以下几点: 一、射频同轴电缆型号的组成 二、电性能 射频同轴电缆的电性能主要包括特征阻抗、衰减常数、阻抗均匀性(回波损耗)等。 特征阻抗是选用同轴电缆时首先应该考虑时,其值的选择必须与所使用的系统相匹配。它的定义是电缆处于匹配状态时,其上电压与电流之比,实际上它代表无限长线路所呈现的阻抗,其值主要取决于内导体外径和外导体内径以及绝缘层的等效介电常数。目前,常用的标准的特征阻抗为50欧、75欧及93欧几种。(一般情况下,都是指在频率为200M,温度为20℃的条件下测得值) 其中50欧±2.0 — 用于射频及微波频段 75±3.0 — 用于视频或脉冲数据传输 电缆的衰减也是十分重要的指标,特别是在长距离传输时更是如此,为了便于比较,通常用不同频率下单位长度电缆的衰减 — 衰减常数表示,单位为dB/m或dB/Km。电缆的衰减常数与工作频率有关,一般与工作频率成正比。为了减少衰减,可选用空气或半空气绝缘,内导体为管状结构的,如SDV系列。 阻抗均匀性常用回波损耗或驻波系数SWR表示,它反映的是由于电缆加工工艺造成电缆结构参数不均匀,使得沿电缆传输线中产生波动,沿线特征阻抗变化。阻抗的不均匀会造成信号在传输中有反射,影响主波信号的接收质量,同时也会增大衰减。 同轴电缆的选用应与所用的同轴连接器、匹配负载阻抗一致,50、75电缆连接器不可混用,以避免损伤接头内导体,影响其使用性能。 三、推荐厂家及描述规范 目前,我公司使用的主要是SYV75、SYV50及RG58、RG59型(RG型是按美军标规定的电缆型号),推荐生产厂家主要是天津609厂及万泰电线电缆公司。 同轴电缆MRPII系统中编码为2507XXXX。 描述规范:同轴电缆—型号说明—芯线绝缘外径—特征描述 示例:同轴电缆—SYV75—2—7根/0.08 2)接插件 我公司使用的接插件种类繁多,涉及到的供货商厂家较多、较杂,目前在BOM网上的信息也较乱,这样给采购、认证、生产替代、品质跟踪带来了许多不便。为了改善目前的这种状况,必须对物料的种类和供应商(厂家)进行合理的归一化。为此,技术认证部通过我公司长期使用接插件的情况,结合商务认证部的具体意见,总结出接插件在选型使用方面的优选厂家,供技术部门在选型时参考使用。 希望各相关部门在新的接插件选型时,尽量在优选的厂家中寻找所需要的物料,现将接插件优选厂家列表如下: MRPII分类 MRPII类别 规格 优选厂家、公司名称 1401 欧式连接器 64PIN、96PIN BERG、Winchester 300PIN Winchester, RN 1402 护套 3×32、4×32 AMP 324 Burndy 1403 IC插座 所有 NEXTRON、Berg 1404 同轴连接器 BNC AMP SMA AMP、853、Molex 1405 插针 所有 NEXTRON、 Berg 1406 电缆连接器 D-Sub系列 AMP、Berg、NEXTRON I.D.C.(牛头系列) RN 1407 导线连接器(小插头) 3×8,4×8 AMP 1408 电话连接器 所有 AMP、NEXTRON 1409 柔性印制板连接器 AMP 1413 光连接器 深圳中和,深圳光波 1414 SIMM座 NEXTRON 1420 插座 所有 NEXTRON、SAMTEC、Berg 1422 2mmHM连接器 所有 AMP 第四节 光器件的选用 XXXX公司光传输技术起步较晚,但在很短的时间内,光传输板已随着OOOOO交换机、68M光端机、184M光端机等产品销往祖国的大江南北,为公司产品的配套化、系列化提供了有力的支撑。而由于历史的原因,在器件选型、电路设计等方面也存在一些问题,给生产和质量控制带来较大的困难。目前,光传输板的产量已较之过去大大增加,以后,其比重还将不断提高。光传输板的大规模生产对质量控制的要求将越来越高。在加强对供货厂商的质量控制,培训公司内部生产、调测人员以减少人为损坏的同时,“如何在设计中构建产品质量”也应当提上议事日程,我部门根据近段时间对光传输板做的一些工作,对光传输板上相关器件的选型作了一些总结,希望能对开发部及中试等相关部门起点参考和帮助作用。 一、厂家优选 XXXX公司目前生产上光源器件使用情况为:0.85m器件,由HP公司供货,质量稳定、可靠,很少出现质量问题。1.31m器件分别由武汉电信和深圳飞通两家供货,频频出现质量问题。从整个光器件生产行业来说,光纤通信发展也仅二、三十年左右时间,光器件在国际上已有众多的生产厂商,如:AT&T、MRV、OCP、HP、FUJITSU、NORTEL、OPTEK、OPLINK、EPITAXX、HONEYWELL、LASERTRON、LASER DIODE等,真可谓“诸候纷呈”。在众多的厂商之中,也没有某一家或某几家在这个行业能占据绝对领先的地位,结合国内国际的器件使用情况,用得较多的集中于以下几家:MRV、OCP(主营非标的光传输器件,其中MRV做发送器件,OCP做接收器件)、AT&T(主要做SDH用光器件、光模块)、HP(主要做近距离、短波长光器件)、FUJITSU(主要做CATV用的大功率,线性度好的光器件)。国内厂商中,仅有深圳飞通和武汉电信两家推出了实用化、商品化的产品,不过,其制造水平仅局限于封装,管芯仍然依赖于进口,且由于光收发器件工艺非常复杂,要求很高,造成质量状况得不到保证。我公司现阶段使用国内器件,出现了诸多的质量问题,已迫使我们在加强对国内厂家质量控制的同时,必须考虑国外厂商,争取在一年以后,主要供应厂商全为国外知名厂家,国内厂商只做为备用厂商,目前中研部开发阶段器件选型已开始瞄准国外,对已经投产的光传输板在版本优化时,应尽可能考虑选用国外器件。 二、光器件的封装 DIP封装,体积大,价格昂贵,国外已不太采用这种封装,是一种趋于淘汰的封装形式,国内武汉电信目前的器件主要还采用这种封装形式,但也开始推出同轴封装的器件。同轴封装的器件体积小,价格便宜,符合国际流行趋势。我公司也应在光器件的使用选型上与国际接轨,尽量采用同轴封装。对无尾纤ST接头的光发射器件,由于光束很小用久了易偏移,且一旦污染,无法清洗,这对我公司生产水平来说可能较易出问题,请选用时需特别慎重。光接收器件由于光窗较大,上述问题较少,可选用无尾纤封装。 三、光收、发模块的使用 我公司目前大量生产的光传输板均采用光器件加厚膜的光电接口电路,开发阶段的SBS155/622系统的光电接口采用光收、发模块。一般说来,采用光器件加分立器件的光电接口电路,具有较大的灵活性,各种接口速率的光电接口均可实现,成本也较低,若电路设计合理,可达到很高的性能/价格比。但对生产上的质量控制却有诸多的不便,特别是在器件质量不能保证的情况下,要使光传输板可靠稳定地工作,就非常困难。比如:我公司40M光板,68M光板的光接收电路中实现主放功能的厚膜SH713,实现后级放大及相位调整的厚膜SH714,实现时钟恢复的声表面波滤波器等,坏品率较高,可靠性不好,使得光传输板及整个光传输系统的质量控制任务艰巨。而采用光收、发模块就不存在这一问题,对光发送电路,经复接扰码后的数据流(已转换为ECL或PECL电平)直接驱动光发送模块,将电信号转换为光信号,对光接收电路,带时钟恢复的光接收模块,可直接将光信号转换为ECL或PECL电平的电信号。并且这些光收、发模块,国内、外均有很成熟的产品,很多公司,如AT&T、HP、MRV、OCP等都可供出这些产品,基本上不会出现质量问题,其缺点是:缺乏灵活性,供应商只能供出SDH系列标准速率的光收、发模块,如我公司40M光板、68M光板所需的40M、68M光收、发模块便无从采购到刚好满足要求的产品,光发送模块还好办一点,可以用能采购到的稍高速率的光发送模块替代,而接收模块却无从找到替代。再则,使用模块,价格较高,成本会上升。总之,两种方案各有千秋,但针对我公司目前光传输系统出现了大量的质量问题,建议尽量选用光收、发模块。 四、IC的使用 鉴于我公司使用厚膜的光传输板在生产及市场上出现了较多的质量问题,特提出考虑用IC来实现目前厚膜的功能。如用MICROCOSM的MC2042(LED驱动IC)或MC2060(LD驱动IC)来完成目前光发送电路的驱动厚膜SH702、SH726所实现的功能,光接收电路的实现也可考虑用MICROCOSM公司的MC24045、MC2070、AD公司的AD800、AD802、AD805、AD807及AT&T的T7032、T7035等芯片来完成。这些想法仅根据相关资料提出,具体能否实现,若相关部门认为有必要的话,可实验验证,与MICROCOSM公司接洽可先联系香港太平科技拓展公司,一般说来,IC的质量及可靠性要高于厚膜,如有可能,建议尽量选用IC来实现。 五、光传输板结构 我公司现生产的光板的光输出接头多与机柜面垂直,而光纤走向是与机柜面平行,这就使光输接头与光纤有约90的弯曲,可能造成以下两个问题: 1. 无尾纤的器件如光板FBI、OPT用的短波长器件接头,通常是塑料的,易造成运输等过程中损坏接头。去年这样损坏的光器件达二十多只,而因质量问题返修的这类光器件才五只。 2. 光纤接头处的光纤可能因弯成90而造成损伤,且并不怎么雅观。能否在设计或升级时将光输出接头与机柜面设计成约45角。当然,母板也需作相应改动。 六、结论 综上所述,从品质控制的角度,在光传输板相关器件选型等过程中从以下几个方面考虑: (1) 优先选用光收、发模块。 (2) 光电接口电路尽量采用IC实现。 (3) 光器件优先选用国外器件。 (4) 所选用光器件的封装形式应符合国际流行趋势。 (5) 结构设计方面,尽量兼顾到实际使用的具体情况。 第五节 物料申购流程 1、物料申购流程 注:NOTES开发物料申购数据库使用方法见数据库联机帮助。 2、 领料须知 按公司财务核算的有关规定(“关于按责任中心进行费用核算的规定”已下发至各二级部门),各开发部门都划分了相应的核算责任中心和对应的编码。 请开发人员领料时在领料单上注明业务部名称,并在用途一栏填写产品名称,在型号(描述)和数量域明确填写相应内容。 当需到西乡领料时,还必须填写业务部核算责任中心编码和物料的MRPII项目编码。 3、自采购物料须知 凡属自购的物料,需经研究计划处同意方能采购。项目组采购时应选择较稳定的采购渠道,并将采购信息作好记录同时反馈给物料部进行认证,入库时须作出标识或批号(以日期为准),以便对其使用情况进行跟踪。 第六节 接触供应商须知 1、不要透露公司器件使用情况,包括现遇到的困难和问题,给商务谈 判留有商量余地,以减少公司损失。 2、不要向供应商估算器件的年用量及希望价格。数量往往是争取价格 的重要因素,如让供应商知道,就很难挖出大批量的价格。 3、与技术无关的情况尽可能不谈,如价格及目前采用的几种型号等。在选 用新器件时,要向供应商了解样品价格及批量价格,但不作出任何评价, 商务问题让认证部人员来谈。 4、对供应商进行了哪些介绍,应书面通知物料部,以便保持口径一致。 第七节 MRPII及BOM基础和使用 参考读物 附录 四 公司物料申购流程文件 附录 五 公司器件选型厂家一览表 附录 六 公司物料名称命名一览表 硬件工程师手册 目 录 (手写的目录,和内容有点对不上) 第一章 概述 第一节 硬件开发过程简介 § 1.1.1 硬件开发的本过程 § 1.1.2 硬件开发的规范化 第二节 硬件工程师职责与基本技能 § 1.2.1 硬件工程师职责 § 1.2.2 硬件工程师的基本素质与技能 第二章 硬件开发规范化管理 第一节 硬件开发流程 § 2.1.1 硬件开发流程文件介绍 § 2.1.2 硬件开发流程详解 第二节 硬件开发文档规范 § 2.2.1 硬件开发文档规范文件介绍 § 2.2.2 硬件开发文档编制规范详解 第三节 与硬件开发相关的流程文件介绍 § 2.3.1 项目立项流程 § 2.3.2 项目实施管理流程 § 2.3.3 软件开发流程 § 2.3.4 系统测试工作流程 § 2.3.5 中试接口流程 § 2.3.6 内部验收流程 第四节 PCB投板流程(陆波写) § 2.4.1 PCB投板系统文件介绍 § 2.4.2 PCB投板流程详解 第三章 硬件设计技术规范 第一节 CAD辅助设计(陆波写) § 3.1.1 ORCAD辅助设计软件 § 3.1.2 Cadence简介 第二节 可编程器件的使用 § 3.2.1 PPGA产品性能和技术参数 § 3.2.2 FPGA的开发工具的使用 § 3.2.3 EPLD产品性能和技术参数 § 3.2.4 Max+PLUSII开发工具 § 3.2.5 VHDL语言 第三节 常用的接口及总线设计 § 3.3.1 接口标准 § 3.3.2 串口设计 § 3.3.3 并口及总线设计 § 3.3.4 RS-232接口总线 § 3.3.5 RS-422和RS-423标准接口连接方法 § 3.3.6 RS-485标准接口与联接方法 第四节 单板硬件设计指南 § 3.4.1 电源滤波 § 3.4.2 带电插拨座 § 3.4.3 上下接电阻 § 3.4.4 LD的标准电路 § 3.4.5 高速时钟线设计 § 3.4.6 接口驱动及支持芯片 § 3.4.7 复位电路 § 3.4.8 Watchdog电路 § 3.4.9 单板调试端口设计及常用仪器 第五节 逻辑电平设计与转换 § 3.5.1 TTL、ECL、PECL、CMOS标准 § 3.5.2 TTL、ECL、MUSII连为电平转换 第六节 母板设计指南 § 3.6.1 公司常用母板简介 § 3.6.2 高速传输线理论与设计 § 3.6.3 总线阻抗匹配、总线驱动及端接 § 3.6.4 布线策略与电磁干扰 第七节 单板软件开发 § 3.7.1 常用CPU介绍 § 3.7.2 开发环境 § 3.7.3 单板软件调试 § 3.7.4 编程规范 第八节 硬件整体设计 § 3.8.1 接地设计 § 3.8.2 电源设计 § 3.8.3 防雷与保护 第九节 时钟、同步与时钟分配 § 3.9.1 时钟信号的作用 § 3.9.2 时钟原理及性能指标测试 第十节 DSP开发技术 § 3.10.1 DSP 概述 § 3.10.2 DSP的特点与应用 § 3.10.3 TMS320 C54X DSP的结构 第四章 常用通信协议及标准 第一节 国际标准化组织 § 4.1.1 ISO § 4.1.2 CCITT及ITU-T § 4.1.3 IEEE § 4.1.4 ETSI § 4.1.5 ANSI § 4.1.6 TIA/EIA § 4.1.7 Bell Core 第二节 硬件开发常用通信标准 § 4.2.1 ISO开放系统自联模型 § 4.2.2 CCITT G系列建议 § 4.2.3 I系列标准 § 4.2.4 V系列标准 § 4.2.5 TIA/EIA系列接口标准 § 4.2.6 CCITT X系列建议 § 4.2.7 IEEE常用标准 第五章 物料选型与申购(物料部) 第一节 物料选型的基本原则 §5.1.1常用物料选型的基本原则 §5.1.2 专业物料选型的基本原则 第二节 IC的选型 §5.2.1 IC的常用技术指标 §5.2.2 常用IC选型举例 第三节 阻容器件的选型 §5.3.1 电阻器的选型 §5.3.2 电容器的选型 §5.3.3 电感器的选型 §5.3.4 电缆及接插件标准与选用 第四节 物料申购流程 §5.4.1 物料流程文件介绍 §5.4.2 物料流程详解 § 5.4.3 物料申购案例分析 第五节 接触供应商须知 第六节 MRPII及BOM基础和使用 参考读物 附录 四 公司物料申购流程文件 附录 五 公司器件选型厂家一览表 附录 六 公司物料名称命名一览表 第六章 实验室 第一节 中央研究部实验室管理条件 第二节 中研部实验室环境检查评分细则 附录一 硬件开发流程 符录二 PCB技术板流程 符录三 硬件文档编写规范 FPGA归档要求 FPGA(Field Programmable Gate Array)已广泛用于硬件的逻辑设计中,在其开发过程中,出现了多种版本的开发工具,而每一种版本,从原理图输入到最终形成加载文件需要对一些参数进行设定,为了更好地利用已开发的成果,避免在文件的传递过程中出现错误或误解,我们在归档时,除了按要求对硬件作必要说明 ,还应针对FPGA作专门说明。 (由于我公司用Xilinx公司的FPGA较多,这里以其为例,其它公司FPGA产品可类似)。 1、归档文件种类 归档文件必须有如下文件: (1)原理图(包括所有子层的原理图)或VHDL语言描述的逻辑设计文件; (2)单层结构的网图文件,即XFF文件; (3)已布线的LCA文件; (4)可直接卸载的bit和MCS文件; (5)除标准库外,定义的所有库文件; (6)Viewdraw.INI文件; (7)仿真文件;(当需要对某些重要波形进行控制时,提供) (8) 生成的布线指导文件Guide文件。(对布线要求严格,编译选项有 Guide时, 提供) 2、加载文件的编程说明 (1)FPGA的工作模式及加载方式; (2)加载文件的编程工具; (3)对MCS文件的编程过程; (4)复位位说明。 3、使用开发工具,及参数选择说明 (1)开发工具的类型及版本: 如Viewlogic DOS 版FPGA开发工具,版本号4.00版 Foundation windows版FPGA开发工具,版本号2.00版 (2)采用器件系列库: 如:XC3000…… XC5000等 (3)开发使用的计算机环境(硬件、软件环境) (4)使用FPGA具体器件的详细型号 如:XC4003EPLCC84-5 注:对有重点要求的参数如速率、温度等,需在此作一说明 (5)原理图中定义的关键网络有特殊要求电路的说明 如:时延要求、长线驱动、快速I/O等 (6)编译后,FPGA引脚定义 (7)自动布线的参数说明 每一种FPGA开发工具都提供自动布线功能,当布线的参数选择不同时,编辑后的结果可能差别很大,必须对要求的参数选择进行说明,下面列出部分常用参数选择项供参考。(说明:实际中,只需把要求的选项列出)。 附:自动布线的参数设置 (A)Foundation版本或Viewlogic Windows版本 Xilinx FPGA XC4000 implemenlation 1.lmplementation A.Placement Effort( )1--4 Routimg Effort ( )1--4 B.Use Xact-Performance( ) 2.Optimization ( )Trim Unconnected Signats ( )Use Global Resources For High fan-out Signals ( )Create RPMs for Register-based X-Blox Modules ( )Merge Flip-Flop into I/Os 3.Guide/Resource A.Resoutces Available fot Fouting CLBs:( )Partially Used ( )Any ( )Unused Gloabal buffers B.Guide Placement ( )AllBlocks ( )Only block that Have Routed Signals C. Guide Routing locking Routing ( )None ( )Whole Signails ( )All Xilinx FPGA XC4000 Configuation 1.Configuration Configuration Rate:( )Fast (Slow) TDO:( )Float ( )Pull-up ( )Pull-down M1:( )flat ( )Pull-up ( )Pull-down DONE: ( )Pull-up ( )Pull-down ( )performance CRC Durng Configuration ( )Produce ASCII Configlration File // XC4000E:Inputs threshold:( )TTL ( )CMOS Outpus threshold:( )TTL ( )CMOS Configuration Pins: M0:( )Foat ( )Pull-up ( )Pull-down M2:( )Foat ( )Pull-up ( )Pull-down 2.Startup Startup clock:( )clock ( )user clock ( )Synchronize Startup to Done IN Pin Output Events Done: ( )C1 ( )2 ( )C3 ( )C4 Enable Outpts:( )C2 ( )C3 ()C4 Release Set/Reset: ( )C2 ( )C3 ( )C4 3.Readback Clock:( )clock ( )user clock ( )Capture CLBIOB Outputs wher TR G Goes Active ( )Abort Readback when TRIG Eces Inactive SC4000 Optional Targets ( )Produce Timing Simulation Date ( )Produce Timing Report ( )Produce Configuration Data Xilinx FPGA XC3000 Implementation 1.Implementation A.Placement Effort ( )1---4 Routing Effort ( )1---4 B.Use Xact-Performance ( ) 2.Optimization ( )Trim Unconnected Signais ( )Pack Design ( )Use Global Resourece For High Fan-out Signas ( )Create RPMs for Register-beased X-Blox Modules ( )Merge Flip-Flop into I/Os 3.Guide/Resoutce A.Resources Available fot Fouting CLBs:( )Partially Used ( )Any ( )None Unused Global Buffers B.Guide Placement ( )All Blocks ( )Only Block that Have Routed Signats C. Guide Routing Locking Routing ( )None ( )Whole Signals ( )All Silinx FPGA XC3000 Configuration 1.Configuration: Inputs threshole :( )TTL ( )CMOS Configuration Pins: Done/Program:( )Float ( )Pull-up Crystal Oscillator:( )Disable ( )Enable ( )Enable (Divide by 2) 2.Startup Statup clock:( )clock ( )user clock ( )Synchornize Startup to Done INPin Output Events: Done:( )C1 ( )C2 ( )C3 ( )C4 Enable Outputs ( )C2 ( )C3 ( )C4 Release Set/Reset: ( )C2 ( )C3 ( )C4 3.Readback Mode:( )Never ( )Once ( )On Command Output Events: Done:( )Before I/O Active ( )After I/O Active Reset:( )Before I/O Active ( )After I/O Active SC3000 Optional Targets ( )Produce Timing simulation Data ( )Produce timing Report ( ) Produce Configuration Data Foundation Xilinx FPGA XC5200 Implemcntation 1.Implememtation A.Placement Effort ( )1--4 Routing Effort ( )1--4 B.Use Xact-Performance ( ) 2.Optimization ( )Trim Unconnected Signais ( )use Global Resources For High Fan-out Signals ( )Create RPMs for Register-based X-Blox Modules 3.Guide/Resource A.Resources Available fot Fouting CLBs:( )partially used ( )Any Unused global Buffers B.Guide Placement ( )All Blocks ( )Only block that Have Routed Signats C. Guide Routing Locking Routing ( )None ( )Whole Signals ( )All Xilinx FPGA XC5200 Configuration 1.Configuration Inputs threshold:( )TTL ( )CMOS configuration Rate:( )Fast ( )Slow ( )Wed configuration Pins: Program:( )flcat ( )Pull-up Done: ( )Float ( )Pull-up Perform CRC During Configuration ( ) Produce ASCII configuration File( ) 2.Startup Startup clock :( )clock ( )user clock ( )Synchronize Statuup to Done IN Pin Output Events: Done:( )C1 ( )C2 ( )C3 ( )C4 enable Outputs :( )C2 ( )C3 ( )C4 Release Set/Reset: ( )C2 ( )C3 ( )C4 3.Readback Clock :( )clock ( )user clock ( )Capture CLB/IOB Outputs when TRG Goes Active ( )Abort Readback when TRIG Genes Inactive Optional Targets ( )Produce Timing Simulation Data ( )Produce Timing Report ( )Produce Configuration Data 2.Startup Startup clock :( )clock ( )user clock ( )Synchronize Statuip to Done IN Pin Output Events Done: ( )C1 ( )C2 ( )C3 ( )C4 Enable Optputs:( )C2 ( )C3 ( )C4 Release Set/Reset : ( )C2 ( )C3 ( )C4 3.Readback Clock ( )clock ( )user clock ( )Capture CLB/IOB Outputs when TRG Goes Active ( )Abort Readback when TRIG Geses Inactive Optional Targets ( )Produce Timing Simulaton Data ( )Produce Timing Report ( )Produce configuration Data 2.Startup Startup clock :( )clock ( ) user clock ( )Synchronize Startup to Done IN Pin Makebit -I (lgnore Critical Net Flags on Nets) -U (Enable Mackebits to Tle using critical nets) -B (Create rawbits file in RBT) -C (Cmos inputs) -D (Create DRC report in DRC) -J (Suppress making bitstream) -L (Create Readback into file in .LL) -M (Creare mack file in .MSK) -MBO=(File) (Read Makebits options from FILE) -N (Save tied desigt) -O (Output filemame) -P (No pullup on LCA Done pad) -R0 (Disable readblack) -R1 (Enable readback once) -R2 (Enable readback mary) -S0 (Disable Oscillator) -S1 (Enable Oscillator) -S2 (Enable Oscillator Div 2) -T (Tiedown Unused Interoonnect) -V (verbose Mode) -XA (Done after IOBs active) -XB (Done before IOBs active) -YA (Reset after IOBs active) -YB (Reset before IOBs avtive) (B) ViewLog DOS版本 Xmake的部分选项 -X Use XNF files only -L Use old library only -B perform XBLOX opfimization -I 〈file〉 Use PPR Guide file -G Generate MAK file only -O Don’t redirect output -R Force re-execation of all programs -V Verbose message made Makebit -Input TTL ( ) COMS( ) -Donepad Pullup( ) NoPullup( ) -Read 0( ) 1( ) Cmd( ) -XtaIOsc Disable( ) Enable( ) DIV2( ) -DoneTime Before( ) After( ) -RestTime Before( ) After( )
更多简介内容

评论

下载专区


TI最新应用解决方案

工业电子 汽车电子 个人电子
$(function(){ var appid = $(".select li a").data("channel"); $(".select li a").click(function(){ var appid = $(this).data("channel"); $('.select dt').html($(this).html()); $('#channel').val(appid); }) })