关闭

关闭

关闭

封号提示

内容

首页 在系统编程IP核设计及其软硬件实现研究.pdf

在系统编程IP核设计及其软硬件实现研究.pdf

在系统编程IP核设计及其软硬件实现研究.pdf

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

简介:本文档为《在系统编程IP核设计及其软硬件实现研究pdf》,可适用于IT/计算机领域,主题内容包含电子科技大学硕士学位论文在系统编程IP核设计及其软硬件实现研究姓名:曹大勇申请学位级别:硕士专业:软件工程指导教师:李平崔自中摘要摘要随着嵌入式系统符等。

电子科技大学硕士学位论文在系统编程IP核设计及其软硬件实现研究姓名:曹大勇申请学位级别:硕士专业:软件工程指导教师:李平崔自中摘要摘要随着嵌入式系统与微电子技术的飞速发展硬件的集成度越来越高这使得将CPU存储器和I/O设备集成到一个硅片上成为可能SOC应运而生并以其集成度高、可靠性好、产品问世周期短等特点逐步成为当前嵌入式系统设计技术的主流。传统的嵌入式系统设计开发方法无法满足SOC设计的特殊要求这给系统设计人员带来了巨大的挑战和机遇因此针对SOC的在系统编程技术己经成为当前研究的热点课题。本文首先分析了可编程技术发展趋势和SOC系统架构结合实际的项目完成Ⅲ核的设计仿真和测试。从总体架构上本文将在系统编程口核在SOC系统中的嵌入设计分为三个部分:在系统可编程电路的口核设计IP核在SOC系统中的存储器器接口电路的设计在系统编程口核配套软件的设计本课题的设计是从实际MCU项目出发该项目在最后完成电路仿真、版图设计以及后仿真后采用中芯国际.p.m工艺成功流片并完成测试。关键词:在系统编程SOCIPABSTRACTABSTRACTWiththedevelopmentofembeddedsystemsandmicroelectroniestechnologiestheintegrationlevelofhardwareisbecominghigherandhigher,whichmakesintegratingCPUmemoryandFOdevicesintoasinglechippossible.SOCemergesastimesrequireandbecomesamainstreamdesignapproachofembeddedsystemsbecauseofitshighintegration,highreliabilityandshorttimetomarket.ThetraditionalmethodscannotmeetthespecificrequirementsofSOCdesignswhichbringschancesandchallengestothesystemdesigners.Therefore,theInSystemProgrammingtechnologyforSOCshasbecomeahottopic.ThisthesishasfirstanalyzedtheprogrammabletechnologicaldevelopmenttendencyandtheSOCsystemconstruction,unifiestheactualprojecttocompletethedesignoftheIPcorethesimulationandthetest.Intheoverallstructure,insystemprogrammingIPcoreintheSOCdesignembeddedsystemisdividedintothreepartsinthispaper:ThedesignofInsystemprogrammingIPcoreThedesignofmemoryinterfacecircuitforIPcoreintheSOCsystemThesoftwaredesignofinsystemprogrammingIPc,oreThetopicisoriginatedintheactualMCUproject.Theprojectcompletedinthefinalcircuitsimulation,layoutdesign,aswellasafterthepostsimulationusingSMIC.Bmprocessandthesuccessfulcompletionofthetesttape.Keywords:ISP(InSystemProgramming)SOCIPⅡ独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知除了文中特别加以标注和致谢的地方外论文中不包含其它人已经发表或撰写过的研究成果也不包含为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:尝大易日期:沙年午月艿Et关于论文使用授权的说明本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定有权保留并向国家有关部门或机构送交论文的复印件和磁盘允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数据库进行检索可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后应遵守此规定)签名:髫大雾导师签名:日期:.ooq年牛月目第一章绪论.可编程技术概论第一章绪论在数字电路的生产、研发过程中传统做法是用分立的标准集成电路模块搭建整个电路。采用这种做法的产品研制周期长成本高可靠性差性能指标低。可编程技术【lJ(ProgrammabilityTeclmology)应运而生并且越来越成为数字电子设计的热门课题。年Xilinx公司首先提出的一种新型可编程电路技术即现场可编程门阵列芯片(FPGAFieldProgrammableGateArray)。典型的FPGA结构由一个逻辑单元阵列组成逻辑单元可以被配置实现一系列的组合或者时序逻辑。随着大规模集成电路技术的不断发展可编程技术的一个重要趋势是可编程片上系统(soPcSystemOnProgrammableChip)。SOPC将可编程器件的逻辑灵活性与ASIC的高性能相结合并针对专门的应用领域进行结构优化在保持灵活性的同时还可以提供高性能的运算有着良好的发展前景。.研究意义实现SOC的关键是建立高性能的功能模块与子系统的P库所以IP是SOC设计的核心。随着芯片密度越来越大系统集成更是大势所趋往往在同一块芯片上集成各种嵌入式DSPCPU和存储器等而应用功能也千差万别这样就对存储器的可编程技术提出了多样性需求。本文针对目前大规模集成电路的快速发展对存储器的可编程应用需求出发讨论了存储器在系统编程应用以及软硬件实现技术具有现实的经济意义。.本文工作本论文的主要工作着重于在系统编程硬件电路口核设计及其软硬件实现研究包括可编程技术在SOC系统中的作用在系统编程硬件电路Ⅲ核的设计在系统编程硬件电路口核在SOC中的嵌入设计以及配套软件设计和应用样片测试。首先针对主流的在系统编程技术的特点设计了可编程电路的大体功能模块电路:电子科技大学硕士学位论文串并、并串转换电路微指令译码电路线性反馈移位计数器以及代码保护扩展功能。把他们有机的结合起来实现一个完整的编程功能。其次本文还建立了可编程电路的仿真验证环境基于HSIMNC.Vcrilog的数字模拟混合仿真平台。仿真验证不仅作为检验各功能模块正确性的有效方法同时也为嵌入到SOC系统的接口电路提供必要的时序要求。在可编程技术研究中本文采取了循环渐进的研究思路。首先对在系统编程电路设计各功能模块的设计仿真验证。整合成为具有独立完整功能的口核然后分析待嵌入的SOC系统设计接口电路和串口通道实现软硬件通信接口的应用设计最后开发可编程电路的配套软件工具以及应用样片的功能测试。.论文的结构论文分为七个部分。第一章提出了课题的研究背景指出可编程技术在系统中的重要性并简要阐述了论文的主要工作。第二章则对片上SOC系统口核以及在系统编程技术及其发展进行了总体的归纳和概述。第三章介绍了在系统编程电路的各模块功能和总体功能的设计和验证。第四章则面对实际的片上SOC系统设计了应用电路包括存储器的接口电路和物理版图实现。第五章在完成硬件设计的基础上开发了基于在系统编程电路的配套软件设计包括微指令集设计和编程流程的设计用户界面友好。第六章为流片完成的样片做测试检验芯片的功能正常。最后一章对论文进行总结并对进一步的研究方向做了说明。第二章SOC与口核.片上系统SOC第二章SOC与P核集成电路的发展已有年的历史它一直遵循摩尔所指示的规律推进现已进入深亚微米阶段。由于信息市场的需求和微电子自身的发展引发了以微细加工(集成电路特征尺寸不断缩小)为主要特征的多种工艺集成技术和面向应用的系统级芯片的发展。随着半导体产业进入超深亚微米乃至纳米加工时代在单一集成电路芯片上就可以实现一个复杂的电子系统诸如手机芯片、数字电视芯片、DVD芯片等。在未来几年内上亿个晶体管、几千万个逻辑门都可望在单一芯片上实现。soc(syst锄OnChip片上系统)【】设计技术始于世纪年代中期随着半导体工艺技术的发展IC设计者能够将愈来愈复杂的功能集成到单硅片上SOC正是在集成电路向集成系统转变的大方向下产生的。SOC的定义多种多样由于其内涵丰富、应用范围广很难给出准确定义。一般说来SOC称为系统级芯片也有称片上系统意指它是一个产品是一个有专用目标的集成电路其中包含完整系统并有嵌入软件的全部内容。同时它又是一种技术用以实现从确定系统功能开始到软/硬件划分并完成设计的整个过程。从狭义角度讲它是信息系统核心的芯片集成是将系统关键部件集成在一块芯片上从广义角度讲SOC是一个微小型系统如果说中央处理器(CVV)是大脑那么SOC就是包括大脑、心脏、眼睛和手的系统。国内外学术界一般倾向将SOC定义为将微处理器、模拟口核、数字P核和存储器(或片外存储控制接口集成在单一芯片上它通常是客户定制的或是面向特定用途的标准产品。SOC定义的基本内容主要表现在两方面:其一是它的构成其二是它形成过程。系统级芯片的构成可以是系统级芯片控制逻辑模块、微处理器/微控制器CPU内核模块、数字信号处理器DSP模块、嵌入的存储器模块、和外部进行通讯的接口模块、含有ADC/DAC的模拟前端模块、电源提供和功耗管理模块对于一个无线SOC还有射频前端模块、用户定义逻辑以及微电子机械模块(MEMO)更重要的是一个SOC芯片内嵌有基本软件(RDOS或COS以及其他应用软件)模块或可载入的用户软件等。具体地说SOC设计的关键技术主要包括总线架构技术、口核可复用技术、软硬件协同设计技术、SOC验证技术、可测性设计技术、低功电子科技大学硕士学位论文耗设计技术、超深亚微米电路实现技术等此外还要做嵌入式软件移植、开发研究是一门跨学科的新兴研究领域。当前芯片设计业正面临着一系列的挑战系统芯片SOC已经成为IC设计业界的焦点SOC性能越来越强规模越来越大。SOC芯片的规模一般远大于普通的ASIC同时由于深亚微米工艺带来的设计困难等使得SOC设计的复杂度大大提高。在SOC设计中仿真与验证是SOC设计流程中最复杂、最耗时的环节约占整个芯片开发周期的%%采用先进的设计与仿真验证方法成为SOC设计成功的关键。SOC技术的发展趋势是基于SOC开发平台基于平台的设计是一种可以达到最大程度系统重用的面向集成的设计方法分享口核开发与系统集成成果不断重整价值链在关注面积、延迟、功耗的基础上向成品率、可靠性、EMI噪声、成本、易用性等转移使系统级集成能力快速发展。.IP核SOC芯片需要集成一个复杂的系统这导致了它具有比较复杂的结构如果是从头开始完成芯片设计显然将花费大量的人力物力。另外现在电子产品的生命期正在不断缩短这要求芯片的设计可以在更短的周期内完成。为了加快SOC芯片设计的速度人们将已有的IC电路以模块的形式在SOC芯片设计中调用从而简化芯片的设计缩短设计时间提高设计效率。这些可以被重复使用的IC模块就叫做口核【(IntellectualPropertyc.ores)。口核是一种预先设计好已经过验证具有某种确定功能的集成电路、器件或部件。它有种不同形式:软口核(sottIPcore)、硬口核(hardIPe.ore)和固口核(firmIPe.ore)。软口核主要是基于D核功能的描述。它在抽象的较高层次上对口的功能进行描述并且已经过行为级设计优化和功能验证。它通常以HDL文档的形式提交给用户文档中一般包括逻辑描述、网表以及一些可以用于测试但不能物理实现的文件。硬P核主要是基于口核物理结构的描述。它提供给用户的形式是电路物理结构掩模版图和全套工艺文件是可以拿来就用的全套技术。其优点为完成了全部的前端和后端设计已有固定的电路布局局和具体工艺可以确保性能并缩短SOC的设计时间。但因为其电路布局和工艺是固定的同时也导致了灵活性较差难以移植到不同的加工工艺。第二章SOC与P核固m核主要是基于口核结构的描述可以理解为介于硬口和软P之间的口核。固口一般以门电路级网表和对应具体工艺网表的混合形式提交用户使用。以便用户根据需要进行修改使它适合某种可实现的工艺流程。三种m核之间的特点比较如表.所示。表I三种口核之间的特点比较名称呈现形式与现实工艺的相关性灵活性可靠性软核RTL描述无关高低硬核版图相关低高固核门级网表相关一般一般m核的出现给集成电路设计制造带来了一次巨大的革命设计者可以直接采用第三方厂商提供的预先设计和验证过的Ⅲ核进行开发进而达到了缩短系统生产周期、降低产品成本、降低系统硬件设计复杂性的目的。.在系统编程技术及其发展近年来在系统编程(InSystemProgrammabilityISP)技术的不断发展和成熟使得硬件设计逐步软件化硬件结构的通用性日益增强系统设计、生产、维护、升级等环节都发生着深刻的变革H。在系统编程技术中ISP是一种新的概念、新的标准、新的技术。ISP技术是指在用户设计的目标系统中或印刷电路板上为重新配置逻辑或实现新的功能而对器件进行编程或反复编程的能力。ISP有利于在电路板和系统级设计、编程与制造硬件灵活且易于软件修改、升级。由于ISP器件可以像其他器件一样在印刷电路板上处理因此编程ISP器件不需要专门的编程器和复杂的编程流程通过PC、SunWorkstation、ATE(AutomaticTestEquipment自动测试仪)或嵌入式微处理器系统就能产生编程信号。在系统编程技术提高了产品的适应性延长了产品生存周期提升了经济效益。同时也促使了信息技术的飞速发展和更新换代。..在系统编程技术概述利用ISP技术可使硬件设计变得像软件一样易止于修改硬件的功能可以随时改变或按预定程序改变组态。这不仅扩展了器件的用途缩短了器件的调试周期而且还省去了对器件单独编程所需要的专用设备简化了目标设备的现场电子科技大学硕士学位论文编程工作。一般地利用PC机的串行口通过一条下载电缆就可以对可编程器件进行编程了。用户为了修改逻辑设计或重构数字逻辑在系统(包括添加或修改可比那陈滚落极其简单的I/O引脚在已经设计和制作的数字系统中通过在系统可编程逻辑器件的编程控制信号线直接在线编程印刷电路板上的在系统可编程逻辑器件(即不需要将可编程芯片从印刷电路板上取下)和反复修改并现场调试和验证。即使已经成为定型的产品同样能够不断改进以前的逻辑设计方案加速产品的更新换代周期。在线编程已经焊接在印刷电路板上的在系统可编程逻辑器件时使用电路板上的单伏电源即可。使得原来不容易改变的硬件设计变得和软件一样灵活而易于修改和调试。采用ISP器件的系统设计方法是一种自顶向下的模块化设计方法。从整个系统功能出发按一定的原则将系统分为若干子系统再将每个子系统分为若干个功能模块然后将每个模块再分成若干较小的模块直到分成许多基本模块。在自顶向下的划分过程中最重要的是将系统或子系统从逻辑上划分成控制器和受控制的功能模块。受控电路可取用现成模块(或集成电路)也可自行设计花费的精力不多。因而主要的任务是设计控制器。而控制器相当于一个规模不大的时序机且在系统或子系统中只有一个。将用户程序代码装入FLASH存储器的方法有三种。一种方法是要求供应商在存储器发货前将数据写入但无法满足产品开发阶段用户修改程序的要求。另一种方法是用户使用编程器自己编程。但由于芯片制造工艺的提高芯片单位面积上集成的晶体管数目越来越多FLASH存储器正在向小型化、贴片式发展从而使表面贴装或PLCC封装的FLASH存储器难以利用编程器编程。第三种方法是将存储器安装到用户电路板上进行编程。在系统编程方式是通过系统的微处理器实现对FLASH存储器的编程不需要其它编程设备和附加编程电源具有灵活、方便的优点因此广泛应用在DSP、MCU系统等可编程系统中。..在系统编程技术的发展现状采用在系统编程技术进行产品可发其产品进入市场的时间比用非编程器件设计的方法缩短了%。ISP的性能直接影响设计者选择PLD器件的百分比。据调查年只有%的系统设计者说ISP将影响他们采用PLD的决定然而年后百分率跃升到第二章SOC与口核%o编程和重新编程ISP器件是简单的和直截了当的根据所用器件只需提供.V和V电源、一个简单的或线串行接口。在系统编程工作例如编程(Program)、验证(verify)和擦除(Erase)等由传递指令和数据经串行在系统编程接口到ISP器件来完成。在系统编程技术不仅引起了逻辑设计领域和制造领域产生了引人瞩目的变革减少、消除了系统弊端减低了成本提高了板级测试能力最终提高了系统可靠性。综上所述ISP在设计周期、制造成本、实时更新系统功能和缩短面市时间方面存在着巨大的潜力。大多数情况下使用ISP在制造成本、效益和快速逻辑设计等方面有更明显的好处。尤其在产品装运前后也能即刻进行系统重新组态的能力更具特色。..在系统编程技术的前景在系统编程技术已经广泛的应用于电子信息系统:l、网络布线器和电桥、多媒体图像编辑、蜂窝状电话基础站、电话转换开关系统、存储器子系统、电子测试仪器、硬件加速器、数据捕捉、多路标准视频画面抓取器lO、图像处理在系统编程技术有高度的灵活性可以使同一种硬件结构实现多种专用系统功能减少了搭建专用系统所需的电路板简化了设计、生产流程具有在系统编程技术的多功能硬件平台还能够减少印制电路板上元件的数量和搭建系统的电路板数目使集成系统成本显著降低综合经济效益不可低估。在系统编程技术引起了很多电子信息产业的巨大变革具有广阔的开发应用前景。电子科技大学硕士学位论文.ICSP概述第三章ICSP硬件电路IP核电路设计在传统的单片机应用开发过程中编程器和仿真器是必需的设备。用编程器和仿真器进行编程和仿真有一些弊端。首先在使用仿真器的仿真调试过程中需要把仿真头替换成为目标单片机造成了实际运行环境和调试环境的不完全一致成为高速控制场合不能忽略的问题其次编程器加仿真器的编程仿真模式进一步增加了新产品的推广成本与飞速发展的单片机多样化、功能细化的趋势不相适应。另外利用编程器烧录源程序代码给单片机内部代码的版本升级带来了困难。当前单片机的封装小型化、高速化及功能多样化成为一种必然发展趋势越来越多的新推出的单片机采用了在系统编程技术。在系统编程技术指电路板上的空白器件可以编程写入最终用户代码而不需要从电路板上取下器件己经编程的器件也可以用在系统编程方式擦除或再编程。ICSP(InCircuitSerialProgramming在线串行编程)的实现仅需一根时钟线、一根数据线、编程电压线、电源线和接地线。这使得用户可以使用未编程的器件来制造电路板并在产品发货前才对芯片内部程序存储器编程。ICSP功能框图如图.所示。疆唰>|陀寄存器ICSP鸢内部定时器存储器图ICSP功能框图本文涉及的ICSP电路设计实现需要有两个基本条件一是硬件编程电路二是编程软件。其中编程硬件电路在项目应用中应当与其余硬件电路兼容时钟信号和串行数据都需要上位PC机产生而ICSP电路的作用是把输入的串行数据通第三章ICsP硬件电路口核电路设计过转换保存到存储器里并且将存储器的并行数据通过转换输出到串行数据引脚实现与上位PC机的串行通信。在ICSP电路内部产生一系列的控制信号控制系统协调一致的工作。在编程模式下ICSP电路的输出信号控制PC寄存器内部定时器程序存储器。PC寄存器的值指定程序存储器的操作地址内部定时器控制各个模块的工作定时比如说系统在进行编程、擦除或者读操作时需要等到数据稳定或操作完成才会进行下一个指令的操作定时器控制操作时间的长短存储器控制信号控制存储器的正常工作也是需要ICSP内部电路产生。.ICSP硬件内核电路架构独立的在线串行编程(ICSP)模块适用于生产环境下的批量编程本文提到的ICSP电路在整个系统中的作用就是为程序存储器写入程序代码。由上位PC机端软件开发工具以及ICSP电路就可以重新编程程序存储器实现SOC系统不同应用功能。ICSP的主体电路由串并、并串转换电路线性反馈移位计数器微指令译码电路组成。ICSP硬件内核电路架构如图.所示。图.ICSP硬件内核电路架构串行通信接口输入的串行数据是由上位PC机提供微程序的输入由PC端的烧录软件控制。串并、并串转换电路的功能是将串行的微指令和数据转换到并行并行的数据验证转换到串行输出。微指令译码电路的功能是把转换成并行的微指令通过组合逻辑产生控制信电子科技大学硕士学位论文号控制内部PC寄存器、定时器、存储器。线性反馈移位计数器的功能是在串并或者并串转换时对串行信号进行计数计数器内部的值判断区分是微指令还是数据。.ICSP硬件内核电路设计ICSP硬件内核电路主要包括串并、并串转换电路线性反馈移位计数器以及微指令译码电路。口内核电路如图.所示。图ICSP硬件内核电路..串并、并串转换电路电路能处理的数据是并行数据所以必须将串行输入的数据转换为并行数据才能送入本电路进行处理。串并转换是可编程逻辑设计的一个重要思想常常应用于数据流控制的数字电路中。串并转换的处理流程即是输入数据流通过输入数据流选择单元等时地将数据流分配到N个数据缓冲模块。串并转换电路就是把串行输入的数据进行转换成为能被系统识别的并行数据的电路结构。而数据缓冲模块可以是寄存器阵列也可以是触发器。常见的串并转换电路【】主要有三种:移位寄存器多相时钟和树型结构。移位寄存器串并转换电路结构简单但所有寄存器都工作在输人数据的速率上。多相时钟串并转换电路自身也有不足之处比如在高速下其相位差要精确保持在一定限度内会变得比较困难。而树型结构采用分级解串递减降速的方.式使电路在获第三章ICSP硬件电路P核电路设计得较高速率的同时具有低功耗的特点。同时树型结构可以通过在时钟上、下沿分别采样减小电路的规模。本设计所设计的模块功能是进行串并、并串转换复用电路设计所以采用了移位寄存器结构。微指令通过上位机串口送入SOC系统内部其数据格式是串行数据SOC系统内部电路无法直接对串行微指令进行译码在微指令译码之前要对微指令进行串并转换。微指令的串并转换电路对串行输入微指令进行串并转换并将串并转换的结果送入微指令译码电路。上位计算机从串口送入的也有数据数据的串并转换和微指令的转换电路是相同的。而不同的是当验证数据正确性或者是数据读出的时候需要把存储器中的并行数据通过串口输出到计算机。对SOC内部存储器进行读出时从SOC系统中存储器读出的数据是并行数据无法直接送到上位计算机串口所以要把读出的并行数据转换为串行数据再送到上位机串口。并串转换电路的作用就是对存储器并行读出的数据进行并串转换并将并串转换的结果送到上位机串口。串并、并串转换原理图如图所示。宰行数据硷入串行数据赣出图.串并、并串转换原理图串行移位寄存器由位D触发器构成。数据寄存器具有并行装载、并行输出、串行输入、串行输出功能。串并、并串转换电路如图.所示。电子科技大学硕士学位论文....t幽..工一:。If‘一:=豳.。Tl.£一曲::::L.r卜.精..翌{l卤爿:甬....:JrL一孤』l.I。盘爿由‘‘.Lf。j溺一宰I一.目....br卜:剥~I点譬J《。甬’’j‘’。幽。’三一:=肇卜TJ甲。l’。l’‘r’’‘爿‘甬~‘‘tr卜习碧一..卓..II叫。一.甬...』三r卜:j蠹千‘’审‘.ilo叫H可确一‘.jLf一。ij^b轴lI.b.I’三即‘I净嗡一.削...、寸IL’例L胛。。‘‘‘二i...。‘’:....盂.....三r卜叫酗...掣IiLf卜:一繁k^。‘Khl’。、lI一广乒.豳..‘’TL广.<J一’‘。‘‘’’L=i‘l’‘。‘。‘‘图.串并、并串转换电路在电路左边的输入端口为时钟信号、串行数据输~输出信号右边的输出端口为位并行数据的输出端口。传输门和三态门的控制使能信号由微指令译码电路产生。微指令的串并转换和数据的串并转换是由不同的转换电路实现的。串行数据从上位PC机输入位微指令在进行装载时就进行串并转换数据字在个时钟周期结束之后数据被锁存到个寄存器中并行输出完成。微指令和数据字的串并转换波形如图所示。.第三章ICSP硬件电路毋棱电路设计圈西徽指令和数据字的串井转换波形并奉转换只有在读出指令之后发生而且只是数据字进行并串转换徽指令不需要串并转换读出验证。数据字的并串转换波形如图所示。图数据字的井串转换波形在整个ICSP电路中微指令和数据字的并串、串并转换是最基础的功能实现电路内外部数据格式的统一。.微指令译码电路微指令译码电路负责对转换后的并行指令进行分析译码产生该指令操作所需要的一系列微操作信号以控制ICSP内核电路各部件为完成该指令协调动作。每一条微指令的译码结果都会产生不同的控制信号控制在系统编程电路、串并、并串转换电路、微指令和数据计数器、存储器控制信号、内部定时器。微指令的宽度为位微指令集指令数目为条。微指令的格式包括操作码和操作数。其中条指令是单操作数指令还有条指令是无操作数的。微指令不是每一位都参与译码而每一条指令可能产生多个控制信号。比如说B哂nProgramming(internal血ned)产生存储器的开始编程信号.同时会启动内部的定时器进行定时。微指令和数据的区别计数是微指令译码的最重要的如果系统不能区别数据和指令在系统编程就不能顺利进行。微指令译码电路如图所示。第三章ICSP硬件电路口核电路设计图.微指令译码电路微指令译码电路的仿真的结果如图所示。电于科技大学硕士学位论文譬璺粤熙黟霉霉穗熙尸Il唧苫图徽指令译码电路的仿真微指令译码输出的控制信号比较复杂只有在总体仿真中才能看出使能信号的功能。在口核的仿真验证中讨论。..线性移位反馈计数器设计的微指令分为带数据字的指令和不带数据字的指令。线性反馈移位计数器根据微指令的不同情况以线性反馈移位寄存计数电路作为主体做出判断适时产生微指令门控时钟使能控制信号和数据字门控时钟使能控制信号来控制微指令串并转换模块和数据字串并转换模块的时钟通断。线性反馈移位计数嚣如图.所示。第三章ICSP硬件电路D核电路设计图.线性反馈移位计数器其线性关系为QO】叫Q】划】)Q【】=Q【】Q】:Q【l】Q】=Q】Q】=Q】可以实现到的循环计数。在判断微指令情况下应当有两种计数方式带数据字的要实现到的循环计数而不带数据字的要实现从到的循环计数。不带数据字的计数方式及输出控制信号产生时序如下。线性反馈移位计数器主体在上升沿计数输出控制信号产生的判断发生在下降沿。当计数为时在下降沿判断计数情况若为零就打开微指令时钟使能关断数据字时钟使能在到间正常计数当计到后在下降沿再次判断同时关断微指令时钟使能。在下一个计数时钟到来时判断当前输入微指令为何种情况若是不带微指令则计数主体清零同时在随后到来的下降沿判断到计数主体为初始零状态则打开微指令时钟使能信号。这样就实现了计数主体的到的循环计数以及微指令时钟使能信号和数据字时钟使能信号的判断输出。以下是不带数据字的微指令计数方式(表.)。电子科技大学硕士学位论文表.不带数据字计数方式计数Q【O】Q【l】Q【Q【】Q】OOOlOOOOlllOlOO同理带数据字的计数方式及输出控制信号产生时序如下。线性反馈移位计数器主体在上升沿计数输出控制信号产生的判断发生在下降沿。当计数为时在下降沿判断计数情况若为零就打开微指令时钟使能关断数据字时钟使能在到间正常计数当计到后在下降沿再次判断同时关断微指令时钟使能。在下一个计数时钟到来时判断当前输入微指令为何种情况若是带微指令则计数主体继续计数当计数主体计到以后在随后的下降沿判断后打开数据字时钟使能信号当计数主体计数到l时在随后的下降沿判断后就关断数据字时钟使能再次计数时技术主体清零。这样就实现了计数主体的到的循环计数以及微指令时钟使能信号与数据字时钟使能信号的判断输出。以下表.是带数据字的微指令计数方式仿真波形如图。表带数据字的计数方式计数Q【】O『l】Qf】Q】Q【】OOOllOOlOOlllOOllOllOllOOlOlO第三章IcsP硬件电路m核电路设计OOIllOOlllOOllIllllIOO线性移位反馈计数器仿真波形如图所示图线性移位反馈计数器仿真波形IcsP硬件内核电路设计完成并且各个模块通过仿真验证。接下来的工作就是要把电路封装成为标准的m核。ICSP硬件电路口核框图如图.所示该口核为标准化设计的通用性m核适用于主流的可编程SOC系统中。电子科技大学硕士学位论文理Core图.ICSP硬件电路m核框图口核端口信号列表如表.所示。表.P核端口信号列表Dmo玎mFERSF飓MF阳E圣』【o翻警旦:信号名功能D觚ADATA区使能信号PTOPT区使能信号IDD区使能信号FEFLASH数据输出使能信号P吼o编程模式信号FEl峪FLASH擦除使能信号FPGMFLASH编程使能信号FOEFLASH数据输出使能信号FA【:】FLASH地址总线FpO:】FLASH数据总线.ICSP扩展功能设计在如今竞争激烈的市场中保护开发者的知识产权(IP)是最高优先级的事项之一。多年的开发可能产生了包含很多商业秘密或专有算法的设计。随着基于闪存的微控制器得到更多地应用并集成了更多的特性许多公司摒弃传统的一次性可编程(OTP)微控制器r(MCU)转而采用闪存。闪存允许在生产线的终点进行实时编程也允许在生产之后修改代码。但是如果通过因特网公司将面临代码将泄漏给竞争者的问题。应该采用各种方法来控制更新授权许可并在泄漏产品的代码的情况下提供现场更新。而代码保护从一定程度上降低了开发者的风险。保护现场配置的软件产品的第三章ICsP硬件电路口核电路设计方法很多采用哪种方法取决于供应商希望保护什么。大多数软件保护机制是防止对程序或数据进行未经授权的复制。如今复制文件非常容易通过因特网能很快地找到许多拷贝。当固件是某个硬件平台的一部分时保护固件中包含的代码通常比保护对文件的拷贝更重要。代码保护r】电路的功能有两个:第一、为了防止用户对程序存储器和用户数据存储器误擦除造成源程序和数据丢失或者误编程造成源程序和数据改变。第二、为了防止非法读取用户存放在用户程序存储器和用户数据存储器中的源程序和数据保护广大程序开发者的知识产权。当用户在上一次的程序或数据烧录过程中选定代码保护功能开启后如果执行擦除命令时微指令译码产生的擦除控制信号在存储器控制端口会被代码保护电路屏蔽导致对存储器的擦除操作无法完成。当用户在上一次的程序或数据烧录过程中选定代码保护功能开启后读取数据时则在数据总线上表现为全“"或者全“"状态读出全为伪数据当用户在上一次的程序或数据烧录过程中选定代码保护功能关闭后代码保护电路其输出呈高阻状态则数据总线上的数据为存储器上的正常数据实现正常的读取。当用户在上一次的程序或数据烧录过程中选定代码保护功能开启后如果执行编程命令时微指令译码产生的编程控制信号在存储器控制端口会被代码保护电路屏蔽导致对存储器的编程操作无法完成。Configuration和D区域不受代码保护影响可以被擦除、编程和验证/读出。但指针指向这一区域时执行擦除会一并擦除Flash内容。代码保护电路如图.所示。电子科技大学硕士学位论文图.代码保护电路代码保护使能信号和地址信号该电路的输入位的输出连接到并行数据的总线上。当启动代码保护的时候如果地址线上的地址指向最后一个存储空间则代码保护失效不对这个特殊的存储空间进行保护。.ICSP硬件电路P核的仿真验证目前芯片的一次投片成功率只有%左右主要原因就是仿真验证的不充分。验证(v耐calion)嗍在IC设计和生产中是一个不可或缺的环节它对于保证项目的顺利进行降低风险缩短项目周期有很大的意义。通过各个阶段的验证我们可以避免把前一阶段的问题带到下一个阶段。做到早发现问题降低风险缩短周期提高一次投片成功率。验证的目的是为了保证设计实现的功能特性是正确的是与设计计划中定义的功能特性保持一致的。在本次论文工作中我们建立了可编程电路的仿真验证环境基于HSIMNCVerilog的数字模拟混合仿真平台。仿真验证不仅作为检验各功能模块正确性的有效方法同时也为嵌入到SOC系统的接口电路提供必要的时序要求。仿真激励如图.所示。CLK为ICSP烧写时钟ICSPDATA为ICSP的烧写数据其中包括微指令和bit数据CLK在下降沿采样每两条微指令或微指第三章IcsP硬件电路m核电路设计令和数据之间最小的时问间隙是I璐。似几rr九r几几nn几几几几n几n几几几r几几III璐已唑r:r几几几.几几几n几n图.仿真激励总体矿核仿真结果如图.所示。』:。LL』L’ULlJr|L一LLLULnLLL|LlL雾l一。慢rb『rL|iL删门Ⅵ盯Ⅲ翊}匹一~昌%群L霾剽三剿辫黼摊iE图总体Ⅲ棱仿真结果输入的微指令依次是装载数据一位数据一开始编程一结束编程一读指令一位数据地址加一。读使能信号有效在读指令和位数据之间带数据的指令有效在装载数据指令和数据以及读指令和数据之间编程操作有效在编程开始和结束之间指令标志信号区别指令和数据使系统执行正确的译码操作。电子科技大学硕士学位论文第四章ICSP硬件电路IP核在SOC中的嵌入设计.SOC应用系统架构本设计为八位精简指令集SOC系统嵌入的ICSP硬件电路P核。ICSP硬件电路Ⅲ核连接着上位PC机和SOC的存储器。执行的功能即是将PC软件产生的指令数据编程到SOC系统中的存储体内。为了整个系统能正常工作电路需要对三块存储区域进行操作:FLASHmemory(用户程序存储区)IdentificationInformationmemory(器件型号信息存储区)Configurationmemory(配置存储区)。用户程序存储区:用户程序存放的空间。微处理器为了完成某项或某几项特定任务而需要存储的一段用户定义的程序空间范围是X到XFF。器件型号信息存储区:用户可以存储器件的信号信息在个地址空间里。器件信息映射到X到XF。配置存储区:配置数据存放的空间是SOC系统初始化时配置系统的数据区。SOC应用系统架构如图一l所示。第四章ICSP硬件电路D核在SOC中的嵌入设计图lSOC应用系统架构.ICSP硬件电路口与SOC中存储器的接口设计接口电路【】在它动态连接的部件之间起着“转换器"的作用用以实现彼此之间的信息传送。存储器接口作为口与存储器之间的桥梁专责二者之间的通讯。该接口电路在性能上要满足如下的设计指标:、数据总线为位宽。、P核根据地址访问个不同的目标区域(identification、configuration、data)。、三个区域的地址都分别是独立编址由区域使能信号来选择向目标区域编程。、存储器的数据装载和编程开始信号有一定的建立保持时间。在进行存储器接口设计时首先需要考察和分析接口互连方案并根据存储器的行为特点选择接口的最佳设计方案尽最大可能满足设计的需求既灵活方便又高效快速地访问存储器其次就是接口电路本身的总体设计包括接口内部各个功能模块的划分及相互关联、控制寄存器的设计等。在设计中还有一部分重要的工作是制定接口内侧(面向芯片)通讯协议。电子科技大学硕士学位论文设计任何接口电路都有两个侧面需要考虑。在此我们定义存储器接口的用户一侧为内侧而存储器器件一侧为外侧那么存储器接口互连方案也就是指接口与两侧的连接关系。一般地说接口电路与外部存储器之间的连接相对确定视所选用的存储器类型而定而这里讨论的接口互连结构是指接口电路与存储器用户之间的连接关系。此外无论是ASIC设计还是基于SOC设计的考虑互连结构决定着接口的通讯性能及可扩展性等设计人员往往要在二者之间寻找性能的平衡点。绝大多数情况下存储器接口是多个用户共享存储器资源因此存储器接口电路要能够协调诸多用户有规则地访问存储器起到仲裁的作用。此外存储器接口还具有屏蔽操作和转换协议的功能就每个用户而言不必了解存储器本身复杂的操作时序使得各用户对存储器的读写行为简化。出于对接口性能及可扩展性的考虑采用总线互连结构更利于实现高速度运行和多用户共享。随着芯片集成度的增加从前在多个芯片上的所有功能如今可以在一个芯片上完成因此在这些功能元件之间的数据传输路径或者说总线也将存在于芯片中形成了片上总线。在计算机系统中总线结构已经比较成熟如ISAPCIIIC和USB等它用来实现系统内各个电路模块的集成。然而对于系统芯片的设计这些传统的微机外部总线结构己不再适合片内互连。这是因为传统的微机外部总线必须驱动很大的电路板连线以及连接器的电容电感负载而芯片内部却不存在这个问题对片上总线的电气特性要求相比之下就没有那么苛刻。而且片内提供了丰富的布线资源总线宽度和信号线数量不会受到IC封装和电气特性的限制。计算机总线与片上总线的比较如表.所示。表.计算机总线与片上总线的比较计算机总线片上总线受管脚(Pill)封装数目的严格限制为了缓由于片内提供丰富的连线资源总线宽度解限制通常采用三态门或者地址/数据线分时复用所以几乎不受限制由于通常在PCB板上布线所以使用固布线资源灵活多变根据需要可互连方案以采用不同的结构一并行或纵横定的互连方案开关(crossbarswitch)第四章ICsP硬件电路口核在SOC中的嵌入设计系统集成者根据其具体应用建立地址译码从设备(Slave)对固定地址进行完全译码地址译码器以减少冗余逻辑提高系统速度有固定的时序要求因为要考虑到最坏的也有时序要求但是系统集成者时序要求可以根据情况灵活调整到最佳性可能情况如最大电容电感负载能(用布局布线工具)由于每个模块是单独设计和测试的所以作为一个系统来测试所以要求测试方案测试方案是基于板级的高层次的可测性(testability)存储器接口内侧通过一条存储器总线(MemoryBus)与多个用户进行通讯各个存储器用户分别挂接在总线上接口外侧则与存储器相连接。存储器接口设计的关键在于制定MemoryBus的通讯协议并完成与外部存储器协议之间的转换。存储器接口通信框图如图.所示。图铊存储器接口通信框图内部存储器的端口信号图如图所示。fDATAKxl.(IDxlOptionlx图内部存储器的端口信号图内部存储器控制信号列表及功能如表.所示。F.DO:IOF乙Do睁】电子科技大学硕士学位论文表内部存储器控制信号列表及功能信号名功能PGM暇V编程高压信号DA:rADATA区使能信号O盯OPT区使能信号IDD区使能信号FOEnASH数据输出使能信号PGN【MD编程模式信号FERSFLASH擦除使能信号FPGMFLASH编程使能信号FOEHASH数据输出使能信号F』】FIASH地址总线FDI:】FLASH输入数据总线RESBFLASH复位信号SLEEPFLASH待机信号FDO.】FLASH输出数据总线OPTDO:】OPT区数据输出总线根据嵌入的存储器要求存储器接口电路应该具备以下功能:、DATA/ID/OPT的产生:、数据输入输出使能信号和数据的建立保持时间约束、OPT数据在存储器擦除时数据的保持机制。DATA/ID/oPT信号的产生原理:用户存储空间的范围是X到XFFF。而在编程模式下存储映射空间是X到XFFF。用户存程序储区是X到XFFF配置存储器区是X到XFFF。PC指针从X到XFFF递加然后跳转到X而X到XFFF就跳转到X。如果进入配置存储器区域PC指针的最高位就保持“’’这样编程操作所指的区域都是配置存储器区域。如果要再指向用户程序存储区就必须复位重新进入编程模式。存储器区域使能信号如图.所示。第四章ICsP硬件电路口核在SOC中的嵌入设计图.存储器区域使能信号数据输入输出使能信号和数据的建立保持时间约束。建立保持时间延迟电路如图.所示。图建立保持时间延迟电路v呲=‰(.Rc)‰.输出的电压vir输入的电压RC一电阻电容t..从输入到输出的电压变化的时间当‰变化到Vdd的/时反相器翻转即:/Vdd=‰(艘).c僦=:.t=RCln代入R=KQC=pF得:仁Ils延迟时间可以达到系统建立保持时间。OPT数据在存储器擦除时数据的保持机制:()(.)()()电子科技大学硕士学位论文需要存储区域擦除的时候保存OPT数据当擦除操作完成的时候将电路中的数据重新写回到OPT区域。OPT寄存器电路如图所示。图.PT寄存器电路.ICSP硬件电路IP与SOC片外串行通信的通道设计电路本身对外通道的输人、输出端需要包含一些保护或驱动电路以提供适当的保护避免静电干扰也提供较大驱动能力的电路以驱动电路板上或其他较大的负载uJ。由于在芯片的输人、输出端的电流最大、干扰最多最容易发生闩锁现象而且还会因为静电的伤害使得整个芯片受损无法再使用因此用于连接芯片与封装管保护电路的设计变得至关重要。输人单元主要承担对内部电路的保护一般认为外部信号的驱动能力足够大输人单元不必具备再驱动功能。因此输人单元的结构主要是输入保护电路。因为MOS器件的栅极有极高的绝缘电阻当栅极处于浮置状态时由于某种原因(如触摸)感应的电荷无法很快地泄放掉。而MOS器件的栅氧化层极薄这些感应的电荷使得MOS器件的栅与衬底之间产生非常高的场强。该场强如果超

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/14
仅支持在线阅读

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部