关闭

关闭

关闭

封号提示

内容

首页 基于SoPC的外设接口设计与集成.pdf

基于SoPC的外设接口设计与集成.pdf

基于SoPC的外设接口设计与集成.pdf

上传者: xl46512 2012-05-08 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《基于SoPC的外设接口设计与集成pdf》,可适用于IT/计算机领域,主题内容包含电子科技大学硕士学位论文基于SoPC的外设接口设计与集成姓名:钟辉捷申请学位级别:硕士专业:计算机应用技术指导教师:雷航摘要嵌入式系统的设计和实现朝符等。

电子科技大学硕士学位论文基于SoPC的外设接口设计与集成姓名:钟辉捷申请学位级别:硕士专业:计算机应用技术指导教师:雷航摘要嵌入式系统的设计和实现朝着基于芯片特别是系统级可编程芯片(SoPCSystemOnaProgrammableChip)的方向发展。基于FPGA的片上可编程系统技术逐渐成为嵌入式系统技术发展的新方向。FPGA(HddProgrammableGateArray现场可编程逻辑门阵列)可重复修改的特点以及可编程片上系统开发软件的不断跟进使得在一个芯片内进行系统级设计变得容易。它比一般的嵌入式系统具有更大灵活性系统硬件和系统软件都可以根据用户的需要来定制和裁减。以碑模块化的方式可在较短时间就设计出复杂的系统。将RISC处理器口核以及用户以HDL语言开发的逻辑部件可以最终综合到一片FPGA芯片中以实现真正的可编程片上系统。论文深入地调研了国内外SoPC领域的发展状况选择了嵌入PowcrPC处理器硬核的FPGAVh'tex片上可编程系统针对MILsTD.B数据总线协议和UART等外设集成入FPGA的需求构建了满足设计需求的SoPC系统。首先介绍了SoPC的开发流程以及口核的设计方法再比较与本课题相似的系统分析各自的不同。然后重点阐述系统采用SystemC系统级建模的过程完成总线数据传输模拟。其次详细描述创建片上m的层次结构和总线控制器模式(BC)IP核设计过程最后介绍口核集成入FPGA所需的驱动和中断设计。通过以上内容给出SoPC系统的实现方法。与传统的嵌入式系统解决方案相比所采用的嵌入式系统的设计方法一融微处理器技术、可编程系统级芯片设计和软硬件协同设计技术于一体规范了开发流程、减少了器件数目、提高了系统可靠性。使系统易实现、易升级、易移植具有较强的适应性和可扩展性。课题预研成果为SoPC系统设计提供一种可借鉴的方法。关键词:SoPCPoweIPCsystemCBIP核ABSTRACTWiththeincreasingdevelopmenttowardssystemlevelchipespeciallySoPC(systemOnaProgrammableChip)theprogrammableskillbecomesoneofthenewdevelopedfieldsofembeddedsystem.It'seasiertodesignthesysteminachipbe圮,aLffieofthecharacteristicofreprogramabilityofFPGA(FieldProgrannnableGateArray)andthedevelopmentofsoftwareabouttheSoPC.FPGAdesignismoreflexiblethantraditionalembeddedsystemdesign.SoftwareandhardwarecanbecustomizedandclippedintermsofUserrequirement.WithmoreIPcores,modularizationemerges.Inthatcasewecanplanacomplexsystemwithinashortperiod.WecouldmaterializearealSoPCthatintegratestheRISCandcustomHDLcodeintoaFPGA.AftertheseriousresearchaboutthelatestdomesticandabroaddataofSoPC.thissubjectselectsFPGA(FieldProgrammableGateArray)whichembeddedthePowerPCprocessurastheProgrammablesystemtodesignaSoPCsystemtomeettherequirementthatintegratetheperipheralsofBprotocolUARTprotocolandetc..圮paperintroducestheSoPCdevelopedprocessand口coredesignmethodfirstly,afterthat,theemphasesarethemodelingprocesswithSystemCestablishmenthiberarchyofSoPCandthedesignofIPcoresatlasttheseIPcoresareintegratedintotheFPGAincludinginterrupthandlersanddevicedrivers.AbovealltheyalethewaystorealizeaSoPCsystem.Relativelyspeakingforthetraditionalsolutionofembeddedsystemthemethodologybasedonembeddedsystemthatsyncretizesmicroprocessor,programmablechipdesignandSH/HWcodesigninthispaperregulatesthedevelopingprocessreducestheamountofchipsandincreasesthereliabilitySOastorealizeeasily,upgradelightlytransplantexpedientlyachievestrongadjustabilityandexpansibilitywitllthepioscarresearchofthesubject,theproductionwillprovideamethodforSOPCdesignthatCallbeusedforreference.Keywords:SoPCPowerPCsystemCBIntellectualPropertyCoreH独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知除了文中特别加以标注和致谢的地方外论文中不包含其他人已经发表或撰写过的研究成果也不包含为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:日期:年月日关于论文使用授权的说明本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定有权保留并向国家有关部门或机构送交论文的复印件和磁l盘允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数据库进行检索可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后应遵守此规定)签名:翱妣气明也导师签名:!!坐=二一日期:年月日多鲫>中‘第一章绪论第一章绪论SoPC(SystemonProgrammableChip)是在一块现场可编程芯片上提供产品所需的系统级集成以FPGA(FieldProgrammableGateArray现场可编程逻辑门阵列)作为物理载体进行芯片设计的可编程片上系统技术【】其最大到优点是可编程性利用m复用技术缩短开发周期除此之外还降低了设计风险和设计成本SoPC集成度高灵活性大维护和升级方便等。本章简述了片上可编程系统SoPC的发展状况、设计流程、FPGA等内容然后对选题依据及研究意义进行了描述最后介绍了论文总体结构和开展的工作。.SoPC概述..SoPC的发展状况芯片设计业正面I临着一系列的挑战:片上系统芯片SoC(SystemonaChip)已经成为IC业界的焦点SoC是指在单一硅芯片上实现整个系统的功能。SoC是在ASIC的基础上发展起来的具有速度快、集成度高、功耗低等特点。随着芯片性能越来越强规模越来越大开发周期越来越长设计质量越来越难于控制芯片设计成本越来越趋于高昂。为了解决芯片设计的一系列问题在婵核(IntelligenceProperty知识产权)的开发、软硬件协同设计、P复用、VDSM设计、新工艺新器件等方面我国都布置了预研性课题其中m核的设计和制造是SoC技术中最为关键的部分】。SoPC技术基于SoC发展起来。随着微电子工业的发展作为可编程逻辑器件之一的FPGA得到了越来越广泛的应用同时其工艺技术也不断提高。SOPC技术正是在可编程逻辑器件的基础上发展起来的一种灵活、高效的嵌入式系统解决方案。它将处理器、存储器、FO口、LVDS、UART等系统设计所需要的部件集成到一片FPGA器件上各个部件一般都以口核的形式构建成一个可编程的片上系统它具有的灵活性、低成本等特点。随着深亚微米技术的发展FPGA芯片密度不断增加并以强大的并行计算能力和方便灵活的动态可重构性被广泛地应用于各个领域。但是在复杂算法的实电子科技大学硕士学位论文现上FPGA却远没有位RISC处理器灵活方便在设计具有复杂算法和控制逻辑的系统时往往需要RISC和FPGA结合使NE。SOPC技术就是在这样的环境下诞生的。将RISC处理器IP核和用户以HDL语言开发的逻辑最终综合到一片FPGA芯片中实现完整的可编程片上系统。..SoPC在嵌入式领域的应用嵌入式系统的目标是向着更高性能、更小体积、更低功耗、更廉价、无处不在的方向发展。嵌入式系统的设计和实现出现了基于芯片特别是系统级可编程芯片(SoPC)的技术。为了降低研制难度常采用融微处理器技术、数字信号处理技术、可编程系统级芯片设计和软硬件协同设计技术于一体的嵌入式系统设计方法。这样可以提高嵌入式系统的开发效率和质量缩短产品进入市场的周期。SoPC成为嵌入式系统的~种比较流行的解决方案【。利用半定制器件可以构成基于FPGA的硬核处理器或者基于FP(认的软核处理器。这种SoPC面向消费电子、工业、办公自动化、电信和汽车应用中的嵌入式控制。它集MCU和FPGA/CPLD的优点子一身实现可配置SoC既适应了设计人员对系统部件集成的需要又能实现可配置需求的灵活性。从而为许多现实应用提供一种平衡解决方案。.SoPC设计方法..SoPC的特点SOPC是一种特殊的嵌入式系统。它首先是片上系统由单个芯片完成整个系统的主要逻辑功能其次它是可编程系统具有灵活的设计方式可剪裁、可扩充、可升级并具备软硬件可编程的功能。SOPC结合了SOC和FPGA各自的优点一般具备一下基本特征:.至少包含一个嵌入式处理器内核.具有小容量片内高速RAM资源.丰富的IPcOre资源可供选择.足够的片上可编程逻辑资源.处理器调试接口和FPGA编程接口.可能包含部分可编程模拟电路第一章绪论.单芯片、低功耗、微封装。..SoPC设计策略和流程片上系统设计方法随着设计的复杂性增加设计方法从低层次向高层次变换成为必然。SoPC代表了当今电子设计的发展方向它已不是一种功能单一的单元电路而是将信号采集、信号处理及信号输出等功能集成在一起以成为一个有专门用途的电子系统芯片。其基本特征是设计人员采用自顶向下的设计方法【对整个系统进行方案设计和功能划分系统的核心电路用一片高端系统级FPGA或CPLD实现用硬件描述语言完成系统行为级设计最后通过综合器和适配器以CPLD或FPGA为物理载体生成最终的目标器件。soPc相应的设计流程如图所示:需求描述‘系统建模J软硬件划分r/jHDL编码ll软件开发葛订陌磊i:。一集成图.$oPC开发基本流程SoPC设计的设计策略包括如下几点四:.深入的系统级设计与分析合理、仔细安排各个设计阶段的接口电子科技大学硕士学位论文.软件开发小组与硬件小组同步进行.使用一致的工具来进行软硬件的协同设计与验证采用一个完整的验证环境硬件和软件协同仿真以及采用编程语言接口.采msystemC描述功能模型V鲥lo驴mL描述行为级模型.设计小组的版本管理。.IP开发..IP的基本特征根据口核所在集成电路的设计层次IP分为硬核、软核和固核M。硬核以掩膜版图的形式提交验证和仿真都已完成是不可修改的。软核以HDL代码的形式提交描述系统的功能行为是可修改的。固核介于二者之间是完成了综合的功能块以门级网表形式提交。SoC面对着一系列严峻的挑战lⅫ。比如设计规模太大、验证困难、标准的变化和复杂性等。因此采用可重用口设计它是基于重用的SOC设计方法学的基础它的基本目标是要确保IP库中的lP具备较高的可重用性并易于集成到芯片设计中【ll】【。IP的本质特征是可重用性【们有几个重要特征。一是通用性好:m的功能在某一应用领域广泛通用m的实现一般满足子功能可配置、甚至可编程的特点。二是正确性有%的保证:IP的实现严格遵守一系列的可重用设计开发规范口的验证用例具有完备性功能覆盖率、测试覆盖率都能够达到%。三是可移植性好:IP的实现如行为描述、网表、GDSII文件具有可移植性其设计输入可以在不同的开发平台上重现综合用批处理文件具有可移植性IP的综合结果可以用不同的综合工具在不同的综合库条件下正确重现仿真用测试用例可重用测试环境可以很方便的重现IP的验证可以用不同的仿真器在不同的仿真库条件下重现【柚j。通常用户设计的口属于软核软核的开发类似于ASIC设计的前端后端设计由EDA工具完成。其核心是任务是完成一个高质量且可综合的HDL设计描述。..lP的开发流程口核复用技术是SoC设计的关键f。在SoC的设计中AqJ着重的不再是第一章绪论某个新功能的实现而是如何去评估、验证和集成多个已经存在的软硬件模块也就是从以功能设计为基础的传统设计流程转变为以功能组装为基础的全新流程。口复用中存在三种主要角色IP提供方、m集成者和IP工具开发商。尽管采用IP复用技术但是很多情况下仍然需要根据需求开发自主设计的m核。开发的流程如图l所示Ill】流程各阶段分析如表.所示.图.IP开发流程表|IP开发阶段阶段内容规格确定规格确定主要完成可行性分析和确定系统特征。比如系统概述、功能需求、性能需求、物理需求、详细的结构模块框图、对外系统接口的详细定义、可配置功能详细描述、需要支持的制造测试方法、需要支持的验证策略等。确定规格的过程一般又包括行为建模进行功能论证可行性分析就性能和成本进行折中等活动.设计计划设计计划主要完成架构设计、模块划分和开发计划。比如规划师在给出IP结构模块框图的同时对于每个子模块给出一个详细的功能描述同时必须明确子模块之间的接口的时序要求。只有规划好才能够建设好。设计小组对所有子模块的规格进行讨论和审查重点检查时序接口和功能接口的~致性。设计者随后整理出子模块的详细设计方案。编码接下来设计者按照实现方案开始编写RTL代码、编写对问约束文件、综合的批处理文件、子模块验证用测试平台(testbench)和测试套件(储tsuite)等。当这些工作完成并通过代码规范性检查、测试覆盖率检查、功电子科技大学硕士学位论文能覆j蔷}率检查性能分析包括DFI"、STA检查、功耗分析检查等验牧以后这个子模块就可用来与其他模块~起集成了。集成集成就是把子模块集成起来产生顶层模块。并对它做综合处理和功能验证。综合过程包括编写综合的批处理文件在不同的参考库上综台针对在制造上的可测试性插入扫描链、ATPG并进行最终的性能分析和功耗分析等。验证过程包括根据由行为模型发展来的测试向量对顶层模块进行仿真测试针对P模块的可配置选项进行多种配置条件下的回归测试利用仿真工具检验测试向量的覆盖率等。产晶化p产品化的过程包括以下几个郝分:提供IP设计和验证用testbeach.用商用转换器进行打包提交但转换后需要重新验证比如做回归铡试以确保转换有效并强调在几个主流仿真器上做仿真在几种主要工艺库上做综合做门级仿真做形式验证以保证网表和RTL级的一致性产生或更新用户文档等。如果是硬P的开发。还需要在顶层模块(软m)的基础上进行布局布线版图提取时序分析和形式验证集成到试用该P的原型芯片内进行试制投片并在演示板上得到验证。.FPGA设计策略..可编程逻辑器件可编程逻辑器件PLD(ProgrammableLogicalDevice)是一种由用户编程以实现某种逻辑功能的新型逻辑器件分为现场可编程门阵列ffPA)和复杂可编程逻辑器件(cPLD)两大类【。近几年随着芯片制造技术的发展可编程逻辑芯片已从原来的十几门逻辑发展到万门、几十万门、甚至百万门其应用面变锝越来越广泛目前已广泛应用于通讯、电了、电力、军事、仪器仪表、影视等各个高科技研发领域和产品中。可见FPGA和CPLD己在现代电子系统设计中得到广泛应用【切。目前FPGACPLD的主流生产厂商有Xilinx、Altera、Lattice等。Xilinx公司的嵌入式开发套件EDK工具包用于设计嵌入式可编程系统的软件解决方案还提供有IBM的PowerPC处理器的m硬核和Xilinx公司自己的MicroBlaze处理器JP软核支持基于FPGA的SoC设计的仿真验证。本项目所采用的Xilinx公司新一代FPGA器件Virtex系列允许处理器以硬IP的形式嵌入到FPGA中同时还提供相应的开发套件为系统的SoPC设计提供了基本的平台。第一章绪论以Xilinx公司的FPGA为例FPGA主要由可编程逻辑功能模块、可编程输入输出模块和可编程内部互连资源组成。与EDK集成开发环境类似的还有Altcra公司推出了基于可编程芯片SOPC的NiosII集成开发环境【】提供了位嵌入式微处理器NIOSII的IP核和一些嵌入式产品常用的硬件P核并配有MicroC/OS.II实时操作系统可以进行SoC设计的FPGA级仿真、验证。..FPGA的应用嵌入式是f综合性的学科它涉及传统软硬件设计技术的方方面面同时还融入了多任务实时操作系统.在设备高度小型化集成化的今天嵌入式的开发成为了科技最前沿的技术目前国际上流行的SoPC方法是采用嵌入式处理器加上ASIC器件的方式。随着可编程逻辑器件工艺和开发工具迅速的发展目前的可编程逻辑器件都大量集成了数字器件的功能(如CPUEMAC浮点数协处理器等)使得嵌入式产品设计中已经能够实现更多的功能并发挥越来越重要的作用【】。在美国的火星漫步者上美国航天局使用了大量的XilinxFPGA几乎在每一个FPGA上都使用了嵌入式的开发美国时代广场的超大屏幕电子国旗也是使用的Xilinx的FPGA和嵌入式系统实现的高速数据传输和处理美军最新的一带便携式终端通信器的中央处理器使用的也是Xilinx的FPGA和其上的RTOS(RealTimeOperationSystem)系统来完成信号的分析实时任务的处理和显示等功能。未来随着浮点数运算库成熟FPGA集成度和功能的进一步加强数字电路将全面向FPGA集中随着数字中频技术的提高较低频率的信道也将被FPGA取代。..EDA软件仿真与FPGA验证EDA软件仿真验证这种仿真包括RTL级和门级仿真验证。RTL级仿真只是将代码文件调入硬件描述语言的仿真软件进行功能仿真检查逻辑功能是否正确。将RTL级代码转换成门级网表需要厂商提供的工具。门级仿真包括布局布线前和布局布线后仿真。布局布线后仿真可以获得比较精确的时延参数能够比较真实地反映芯片制造完成后模块在实际工作中的行为与性能所以通过了此类仿真就认为模块设计成功可以进行流片。在传统的设计流程中进行功能验证首先需要通过写测试矢量的方式给需要进行功能测试的模块加激励然后通过观察模块的输出结果判断模块的功能是否电子科技大学硕士学位论文正确。但是在写测试矢量时测试工程师是在自己对模块功能理解的基础上进行的。这样就存在一个问题测试矢量对模块的激励有可能是不完备的还有可能是错误的。由此有可能模块的功能是错误的但测试矢量的激励并没有使错误体现出来也有可能模块的功能是正确的误报错误使验证过程变得非常低效。为避免以上闯题在模块的功能验证中采用系统级验证环境。该环境由IP总线、驱动器、监视器、外部模块和协调它们工作的脚本组成。组成系统的各模块可以按需要加入环境。每次验证过程就是相应的激励作用于环境的过程。验证结果由环境产生、检验和输出。.选题依据和所做工作..LSTDB总线现状随着国内外航空航天技术的不断发展飞行器上电子设备种类越来越多复杂度越来越高。因而对空载计算机的性能、速度、集成度等要求也越来越高这就要求研究开发性能、速度更快集成度更高的空载计算机系统。航空电子系统中不仅需要不同的硬件接口来应付不同的航空设备而且航空设备内部接口连线也十分复杂和混乱可靠性能也不高。为了解决这个状况提出了在航空电子系统中使用数据总线使得不同的航空电子设备之间能够互相通信。美国军方在年提出的MILSTDB数据总线协议就是在航空电子综合化技术发展过程中形成的现代航空机载系统设备互联的网络接口标准。MILSTD.B数据总线协议的总线型拓扑结构的优良特性使它在航空电子系统中得到了广泛的应用【刀。因此B总线是航空电子系统的关键技术之一已经是我国现役空军最主要的电子系统数据总线。它对整个航空电子系统的成败起着关键性的作用在航空电子综合化技术的发展过程中占有重要的地位。目前在B总线的实际应用中通常是采用l系列单片机、Intell、EX等专用嵌入式处理器芯片与DDC公司的协议芯片构成B总线上的各个通讯子系统。但这几种处理器的性能、速度有限所需的外围器件较多集成度不高、板上面积较大。..MlL~sTD一B总线IP核研究意义目前我国的空军、海军和陆军中用的数据总线大多是MILSTD一B数据总第一章绪论线民航通信中也广泛地使用这种数据总线协议。然而国内使用的B协议处理器的专用芯片绝大多数从国外厂商购买】。在以往国际形势紧张的时候这些专用芯片曾被禁运即使能够购买到这种专用芯片也从某种程度上向别的国家透露了我国的国防情况。所以独立研发具有自主知识产权的B协议处理器对于我国国防建设和国民经济的发展具有重大的意义。开发具有自主知识产权的B总线芯片对我国的航空发展具有重要作用。而SoPC的出现为自主开发提供良好平台。并且随着后续口核(uART、、USB和网络接口等)设计工作的完成在一块芯片中集成多种外设接口。随着高可信操作系统的移植实现真正意义上的速度快、集成度高、功耗低SoPC系统。本课题受学科建设项目“嵌入式软硬件平台建设”支持。.本课题的研究工作通过前面小节的介绍SOPC技术已经是近年来随着微电子技术的发展而出现的新兴嵌入式系统技术为许多现实应用提供一种平衡解决方案。本课题采用SoPC技术正是它集MCU和FPG~cPLD的优点于一身实现可配置SoC既适应了设计人员对系统部件集成的需要又能实现可配置需求的灵活性。SoPC降低了研制难度提高嵌入式系统的开发效率和质量缩短产品进入市场的周期。在SoPC的开发过程中涉及到软硬件协同设计、口核如何设计以达到最大的可复用性以及验证这些领域上的研究还有待深入。因此在SoPC上进行开发具有理论和实际意义。基于SoPC技术利用XilinxFPGA中嵌入的PowerPC处理器硬核在砒sC处理器外围开发外设接口实现系统集成。达到减少外围器件和PCB面积提高系统抗干扰能力缩小产品体积降低功耗等目的。为移植高可信操作系统实现硬件平台。由于SOPC系统解决方案具有速度快、集成度高、运用灵活等特点和优势SoPC技术业已成为当前及未来嵌入式系统发展的必然方向也是航空航天领域内嵌入式计算机系统发展的一个新方向。课题为了研究SOPC技术在航空航天领域应用的可行性为将来的实际应用积累经验。本课题主要解决以下四个问题。.通过对MIL.STD.B数据总线标准的分析进行系统级功能建模及系统级仿真验证功能的正确性。为软硬件协同测试提供接口。.实现MILSTD.B数据总线的行为级m核。电子科技大学硕士学位论文.继续开发RS、RS和USB等接口IP核复用PowerPC硬核将自主开发的妒核集成入FPGA。.集成IP核后编写相应IP驱动、中断程序。本课题的最终目标是在嵌入PowerPC硬核的FPGA中开发外围多功能接口首先实现MIL.STD一B数据总线再进一步实现其他接口为集成高可信操作系统做好硬件准备最终实现SoPC系统。本文章节安排如下:第一章简要概述SoPC系统和选题依据第二章进行同类系统比较说明该课题和其他类似系统的不同点第三章提出系统总体设计包括需求和协议以及总体结构第四章主要内容是建立系统级模型SystcmC语言编程实现第五章详细讲解IP核的实现级模型VerilogHDL语言编程实现第六章描述其他IP核的设计:第七章讲解驱动和中断的编写以使口核集成入整个系统中能正确运行第八章总结与展望。第二章同类系统比较第二章同类系统比较关于SoPC系统设计很多本课题的研究需要与相类似的系统做一番比较得出优缺点以利于未来的进一步工作。.基于Nios的B接口控制器..系统主要工作】对基于$oPC系统的B数据总线进行了研究提出了采用SoC技术进行B接口控制器模块的设计采用嵌入式NiosMPU加口核的体系结构提出了B接口控制器的总体方案并完成了接口控制器主要模块的设计、仿真和测试。为描述方便把这个系统称为系统l。『结合新兴的SoC技术和集成电路m核的设计方法提出了一种全新的基于嵌入式系统的B协议处理器IP核的设计方法给出了协议的设计、测试和仿真。系统也是采用Nios软核加用户IP核的方式称为系统。..比较从整体设计来看都选择SoPC系统的方式集成入自主开发的m核。但是系统和系统采用Nois软核处理器而本课题采用PowerPC硬核处理器在性能上本课题系统的性能更优。系统的功能仿真在VC中进行采用的c.卜语言使用两个线程来模拟BC和RT的工作。本课题采用systemC语言进行功能仿真可以直接建模端口、进程模块等有仿真软硬件的能力。同时在建模中加入了时钟类型更利于时序分析。从B接口控制器的设计上看模块的划分两个系统都相似分为编码解码、协议处理、中断和寄存器部分。系统与本课题对B总线IP核模块划分也类似分为发送、接收模块(进行曼彻斯特编解码)发选镁收控制模块(实现B控制协议功能)控制单元(实现寄存器控制功能)。具体设计中除去B协议部分的实现本课题增加了与OPB总线的接口电子科技大学硕士学位论文部分IFIP提供了更多的功能如DMA和中断管理。.航天器总线管理系统的S设计与研究..系统主要工作】以B总线控制器为例采用SOC设计方法研究了航天器系统总线的设计和实现。首先按照B总线标准设计了总线管理SOC的系统结构然后重点解决了SOC设计中的m开发应用、可靠性设计、容错机制及低功耗实现等关键技术。采用这些SOC设计方法的B总线协议处理器取得了一次流片成功.为今后更高速率的航天器总线管理系统的SOC研究提供了一种思路和方法上的借鉴。该系统称为系统。..比较系统已经流片在工程上的应用很成功。但是该系统是一个单独B芯片而本课题则采用嵌入式系统的开发方式构成包括处理器、lP核和存储器等一体的嵌入式SoPC系统。基于嵌入式的SoPC系统开发不仅使缩小了PCB板的面积而且设计灵活可以根据需要对P核修改适应不同的需求。$oPC同时涉及到底层的硬件系统设计和软件设计在系统化方面有了广大的自由度。.基于PowerPC处理器硬核的片上可编程系统应用的设计及验证..系统主要工作【选择了嵌入PowerPC处理器硬核的FPGAVirtex片上可编程系统针对B总线远置终端(Ra与总线控制器(Bc)的通讯和闪速存储器(FlashMemory)存储控制两方面的应用需求通过硬件设计和软件编程构建了满足设计需求的SOPC系统。该系统称为系统。用户口核myeore其功能是连接OPB总线到外部芯片BU的数据、地址和控制信号产生满足BU.读写时序要求的接口信号从而使PowerPCA处理器硬核能够控制实现对其内部寄存器和RAM的读写操作。用户口核myflash用于连接OPB总线和FPGA片外FlashMemory芯片第二章同类系统比较KKGUOM。..比较系统和本课题都采用基于PowerPC的Virtex系列FPGA整个SoPC嵌入式系统开发方式相同均利用EDK开发环境以PowerPC硬核为核心开发相应的软口和软件。但是它并不实现B总线协议本身而是实现对RT终端芯片和flash芯片的时序控制。RT终端芯片仍然没有集成到FPGA内部。.B总线接口技术研究及FPGA实现..系统主要工作【】结合目前新兴的EDA技术和大规模可编程技术提出了一种全新的基于FP(认的B总线接口芯片的设计方法。从专用芯片实现的具体功能出发结合自顶向下的设计思想给出了总线接口的总体设计方案考虑到电路的具体实现对结构进行模块细化。在介绍模拟收发器模块的电路设计后重点介绍了基于FPGA的BC、RT、MT三种类型终端设计最终通过工作方式选择信号以及其他控制信号将此三种终端结合起来以达到通用接口的功能。同时给出其设计逻辑框图、算法流程图、引脚说明以及部分模块的仿真结果。为了资源的合理利用对其中相当部分模块进行复用。在设计过程中采用自顶向下、码型转换中的全数字锁相环、通用异步收发器UART等关键技术。该系统称为系统。..比较系统采用自顶向下的开发方式以FPGA实现了B总线协议FPGA上并没包括处理器硬核和其他m核及软件。而本课题是采用SoPC的嵌入式开发方式硬件和软件都集成到一块芯片上。在协议本身的设计上系统和本课题的划分方法相似但具体实现不相同。电子科技大学硕士学位论文.系统概述..系统说明第三章系统总体设计随着深亚微米技术的发展FPGA芯片密度不断增加并以强大的并行计算能力和方便灵活的动态可重构性被广泛地应用于各个领域。但是在复杂算法的实现上FPGA却远没有位RISC处理器灵活方便在设计具有复杂算法和控制逻辑的系统时往往需要RISC和FPGA结合使用。将RISC处理器】P核和以HDL语言开发的逻辑部件综合到一片FPGA芯片中实现完整的可编程片上系统SoPC。本系统采用XilinxVirtexFPGAFPGA中复用PowerPC硬核另外集成自主设计的软核B、RS/RS等。..系统目标基于SoPC技术利用XilinxFPGA中嵌入的PowcrPC处理器硬核在R/SC处理器外围开发外设接口B总线IP核以及常用USB、UART等口实现系统集成。达到减少外围器件和PCB面积提高系统抗干扰能力缩小产品体积降低功耗等目的。为移植高可信操作系统实现硬件平台。..运行环境宿主机环境:硬件环境:软件环境:编程语言:目标机环境:硬件环境:Pentium级以上IBMPC兼容系统XilinxISE.XilinxEDK.Modelsim:VC.VerilogHDL:systcmCXilinxML开发板第三章系统总体设计.需求规定..功能需求该系统的基本目的是实现B总线规范IP核以及RS/规范IP核并集成入XilinxFPGA中。该口核功能、输入输出数据满足MILSTD.和RS/规范。对于RS/规范区别在于电气输出而逻辑上是一致。因此本文统一针对UARTIP核进行说明。MILSTD.B是一个关于数据总线电器特性和协议规范的军事标准。其作用是提供一个在不同系统之间的数据和信息传输的媒体。MILSTD.B的主要技术指标如下:()数据传输率:MHz()字长度:bits()有效数据字长:bitsf)消息长度:最大个数据字()传输技术:半双工()操作:异步传输()编码:ManchesterII编码()协议:命令/响应()容错方式:典型的双冗余备份()终端类型:总线控制器(Bc)、总线监视器(I汀)、远程终端(Mr)()传输媒体:带屏蔽的双绞线串行通信是把传输的数据一位一位地顺序传送的~种通信方式。异步串行通信UART通常以字符(或字节)为单位组成字符帧传送【。字符帧由发送端逐帧发送通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收时钟源彼此独立。接收和发送端由规定的字符帧格式来同步。主要技术指标如下:()波特率:可编程波特率、、等。()帧长度:bits(无效验位)lbits(有效验位)bits(加地址位)()有效数据字长:bits()传输技术:全双工()操作:异步传输电子科技大学硕士学位论文()编码:不归零码..陛能需求本系统需要满足以下性能要求:()健壮性具有完善的错误处理功能保证整个系统能够适应不同应用的需要。()可扩展性根据具体需要集成B总线IP核之外的其他接口如RS/等。()可维护性提供完整、结构清晰的各部分的源代码以及相应详尽的文档说明便于系统的二次开发。..数据需求B总线数据格式满足曼彻斯特II码。曼彻斯特编码是一种广泛应用于航空电子综合系统中的总线数据传输的双极性码。它在每个码位中点存在一个跳变。l信号是一个由到的负跳沿而信号是由到l的正跳沿。它可以直接从数据中分离出定时时钟。通过与隔离变压器耦合协调产生正负V左右的电平。适合用在变压器耦合形式以及传输线缆长度为m(英尺)左右的场合。UART传送不归零码它在一个码周期内维持一种电平如高电平代表‘’低电平代表‘’。曼彻斯特码的优点是:没有直流分量可用要求不高的交流耦合电路‘’、‘l’频繁有利于恢复定时信号等。B编码格式为曼彻斯特Ⅱ它和NRZ编码的异同如图.所示:薹{仁一{)H(卜’图NRZ和曼彻斯特Ⅱ码第三章系统总体设计.B总线协议..B总线结构B总线由总线控制器(BCBusControllcr)、远程终端(RTRemotetermina|)、监控终端(MTmonitorterminal)、子系统和总线传输介质组成嘲其结构如图所示:Ch卸ndAChmmclB图B总线结构BC和RT统称终端是数据总线与子系统的接口其作用相当于我们通常所说的网卡。BC是唯一的启动消息传输和管理总线事务的终端RT是根据BC的传输命令而被动的参与数据传输过程的终端MT是为记录和分析的目的“监听”数据总线传输但不参与任何总线传输的终端子系统是从数据总线接受数据传输服务的装置或功能单元通常是一台嵌入式计算机总线传输介质指为数据传输提供单一通路的媒介包括双绞线屏蔽电缆、数据总线耦合器及短截线等。..B总线操作要求BC模式其基本操作要求是:()总线系统信息传输的控制权唯一归总线控制器BC()总线系统的操作应该是指令/响应型的异步操作()数据总线上的信息传输应该以半双工方式进行()数据总线上的信息流应由消息组成()总线系统应该具有方式控制的能力。..B总线消息B总线上有三种类型的字:命令状态数据字。B的信息字由电子科技大学硕士学位论文位的数据加上位同步位和位奇偶校验位共位。每条消息最多包含个字传输一条消息的时间短强调实时性。这三种类型的字在双冗余总线上传输。命令字的第位为RT地址指示与之相同地址的RT作出响应全或全为广播命令所有RT均需对此命令做出响应。第位T/R.为发送接收标志指示对应的RT发送或接收数据(通过编程BC控制字和命令字的T/R位来确定消息格式)。第位若为RT子地址表示此命令为数据传输命令对应的RT子地址应响应若为全全表示此命令为控制命令。第.位根据位的类型有不同含义若为数据传输命令此处为需传输的数据字个数(为表示数据字个数为)若为控制命令则为控制命令的代码号。第位为奇偶校验位B采用奇校验。B命令、数据、状态字的格式如图.所示其中时钟为MHz。的字口二二卫二二工二丑同步头远程终端地址发送子地址膜式字数据字个戴黻式代码效验位接收数据字状态字同步头教据效验位同步头远程终端地址消息检服保留广播忙出懵舅务命令位请接收求图.B总线字格式B消息是B总线传输过程中的一个完整过程它由命令字、状态字和若干数据字的传输组成。B总线通信过程为命令/响应方式:BC根据总线通信需求发出传输命令启动本条消息传输过程对应的RT发送或等待接收数据并返回状态字本条消息结束启动下一条消息。以上过程对应于单播模式若为广播消息RT不返回状态字(避免造成总线冲突)若需查询RT的状态可向指定RT发送TransmitStatusWord消息。各种消息传输过程如图.所示(按照数据/控制单播/广播的区别分为A、B、c、D四类消息)。效验血终端标志卷线制陡动总控接子系统标击第三章系统总体设计BC.RTRB协BC肝TO灯匝互回圈tt圈*匿姻圈t匝夏圆圈*匦E匾巫j圈:ijii:圃t圃tt圈*国无数据的控翻命令RT发送数据的控制龠令RT接收数据的控制命令BC卜艮hAB总线消息格式(传输数据)圈回*匦圈匪夏圄*匦臣夏回固*匦BB总线消息格式(控制命令)肝协盯sE匹巫二回固CB总线广播消息格式(传输数据)无数据的控制命令r砑#”苄二鬲:i’!l::::}”{::::二j发送数据的控制命令至至三圈*f‘i磊葡L。。...jDB总线广播消息格式(控制命令)图B各种消息传输过程圆*!至遁j为了提供实时通信B对于消息传输有严格的时阃限制:各条消息间的间隙(上图中的“撑”段)至少为.Op.sRT对有效的命令字的响应时间(上图中的“”段)为..as终端至少应等待.肛s后才能判定某条命令没有得到响应。对超时的情况采用重传机制处理。根据反馈的状态字BC检测是否出错否则进行重传操作。电子科技大学硕士学位论文.异步串行通信..串行通信传输方式处理器与外部系统通信通常采用两种方式:并行通信和串行通信f并行通信一次多位同时传送传输效率高但需要多根传输线在长距离通信中不经济。串行通信一位一位先后顺序传输每一位是持续的信号串行传送的数据都是按一定格式编码的。串行通信有两种基本的传输方式同步和异步通信同步通信的发送时钟和接收时钟始终保持严格的同步。同步通信要求发送一方不间断地连续发送数据数据流的中间不可以断否则会出错。而且数据流需要同步字符指示数据流的开始。异步通信则不需要同步字符也不必保持数据流的连续性。可以一个数据一个数据地发送但是发送的数据必须格式化至少有同步位和停止位如上一章的图所示帧格式。除了字符格式的约定还有波特率的约定波特率即数据传输速率。异步通信传送效率不及同步通信但是异步通信的接收发送时钟的并不严格同步.即使有点偏差仍然能保证接收到正确数据。.。异步串行通信协议通信协议是对数据传输方式的规定和规范。包括数据位的定义和数据格式的定义。异步串行通信有如下特点:<)每个字符发送是随机的即字符间可以插入不同时间间隔。()字符传输以起始位开始接收方和发送方保持格式统一。通信双方的字符格式可以改变但必须相同。()通信的数据流以一个字符做为独立信息单元。UART规范数据格式满足异步通信的帧格式如图所示:空闲态时数据保持高电平’l’起始位在一个字符中占一位且为’’。起始位后是数据位一般是到位低位靠前。效验位在数据位之后停止位之前。也可以选择不使用效验位。最后一位必须是停止位表示字符结束。由起始位开始到停止位结束的一串二进制数称为帧。第三章系统总体设计ck厂厂几几厂r厂nn厂I{起始位i数据位i停止位i眦厂厂‘!。。一图.异步通信一帧数据格式通常情况下的UART数据帧格式符合图所示但是针对B总线应用的场合B总线最大可以有个远程终端一个远程终端可能包括有到个子系统。那么整个系统可能有很多终端如果相互除了采用B总线连接还有UART传输的话需要传输线缆若干。因此可以对数据帧格式进行改进在起始位后加入子系统的地址位如图所示。这样可以识别是由哪个子系统传输的。一个远程终端和控制器之间就只需要一对传输线即可。ckrr厂J.n厂厂厂l起始位地址位数据位停止位j一.一眦厂厂一图异步通信一帧数据格式.VirtexFPGA的结构及特点..XcvFXlFPGA结构选择Vh.texFPGA作为本课题的硬件载体是因为它提供了更多选项、更高性能和更低功耗这些优势。Virtcx器件采用世界上第一种三极栅氧化层nmCMOS技术制造拥有层金属互连在可编程器件体系结构、技术和系统设计能力方面实现了巨大突破。Virtex系列采用了多项技术创新并提供款器件和种面向专门领域优化的平台VirtexLXFPGA针对逻辑密集型设计而优化VirtexSXFPGA针对高性能信号处理而优化VirtexFXFPGA针对高速串行连接性和嵌入式处理而优化。FPGAVirtex平台是一种较为完善的SOPC解决方案。本课题所选用的l电子科技大学硕士学位论文XCVFXlFPGA芯片中嵌入了一个IBMPowerPC处理器硬核提供了相应的总线架构丰富的m核资源以及方便、高效的设计开发工具。本课题的典型的系统框图如图.所示。图系统框图..PowerPC处理器的结构及特点口硬核是基于半导体工艺的物理设计已有固定的拓扑布局和具体工艺并已经过工艺验证具有可保证的性能。PowerPC就是一个位哈佛结构RISC硬核【如图.所示。PowerPC处理器硬核主要具有以下特斛:()级数据通道流水()硬件乘法和除法()个位通用目的寄存器()kB路设置关联指令和数据高速缓冲存储器()支持mMCoreConnect总线架构()Memory管理单元(MMU)可以实现RTOS()统一的输入快表(TLB)()可变的页面大小(IKB.KB)()增强的指令和数据片上存储(OCM)控制器直接与嵌入式块RAM接口()Debug和trace支持()时钟工具第三章系统总体设计嚣苫相IOCM}季.:.F存储管理单元。l取指单元.黼rl译码取指/逻辑队列l计数器IIlnma}CPU

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/18
仅支持在线阅读

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部