关闭

关闭

关闭

封号提示

内容

首页 基于IP核的SOPC设计技术

基于IP核的SOPC设计技术.pdf

基于IP核的SOPC设计技术

xl46512 2012-05-08 评分 0 浏览量 0 0 0 0 暂无简介 简介 举报

简介:本文档为《基于IP核的SOPC设计技术pdf》,可适用于IT/计算机领域,主题内容包含复旦大学硕士学位论文基于IP核的SOPC设计技术姓名:梅宏亮申请学位级别:硕士专业:计算机系统结构指导教师:陈泽文摘要随着半导体加工工艺的发展在一块符等。

复旦大学硕士学位论文基于IP核的SOPC设计技术姓名:梅宏亮申请学位级别:硕士专业:计算机系统结构指导教师:陈泽文摘要随着半导体加工工艺的发展在一块芯片上可以集成上十亿个晶体管。如今各种各样的功能模块(例如CPU、内存、模拟模块等)都可以集成进一个芯片形成所谓的片上系统(SOC)。这在以前需整个电路板才能实现一完整的系统。当前片上系统以其低功耗、低成本、高性能和高可靠性的特性而被广泛地应用于军事、航空航天、工业控制、仪器仪表、汽车电子、通讯和家用消费类等领域。在SOC开发过程中设计人员面临着许多的困难与难题其中IP重用、系统集成和验证是主要的障碍。然而近年柬随着FPGA技术取得突飞猛进的发展片上可编程系统(SOPCSystemnaProgrammingChip)作为一种全新的理念被提了出来。SOPC灵活性高、设计周期短及风险低的优点刚好弥补了SOC的不足。SOPC已成为当今一个非常热门的研究领域之一。本文将介绍SOPC的设计方法并在此基础上提出一种设计方法以提高设计效率或克服一些设汁障碍。第一章引言简单介绍片上概念及其当前的状态第二章现场可编程逻辑阵列(FPGA)和片上可编程系统(SOPC)概述主要介绍FPGA的特点及最新进展另外再介绍SOPC的概念及其发展趋势:第三章基于IP软核的SOPC设计技术这是本文的重点本文将系统地介绍基于IP软核的SOPC设计技术的过程与方法第四章基于AlteraFPGA的SOPC设计实例本章通过一实例详细介绍SOPC设汁的开发环境系统组成等第五章是总结及对以后工作的展望。最后本文附录将给出JTAGIP核的详细设计报告。【关键词】片上系统片上可编程系统IP核嵌入式系统AbstractThecontinuousdownscalingofCMOStransistorshasenabledeverincreasingnumbersoftransistorstobeintegratedonasinglechip.Now,variouskindsoffunctionalblockssuchasCPUmemoryandanalogblockscanbeintegratedonachipcalledaSystemonaChiporSOCtobuildasystemthatformerlyhadtoberealizedonaprintedcircuitboardThisfeatureofSOCshasbeencontributingtothepowerreduction.costreductionandminiaturizationofvarioussystemsespeciallymobilebatterypoweredsystems.Fortheseadvantagesseehasbeenusedwidelyinthefieldofthemilitary,aviationindustrycontrolintelligentinstrument,autoelectroncommunicationhomeappliancesandSOon.TheturnaroundtimesfordesignandverificationhavebecomemajorobstaclesinSOCdevelopment.However,withthequickdevelopmentofFPGAtechnologyinrecentyearstheconceptofSOPC(SystemOnaProgrammingChip)becomesmoreandmorefamous.Becauseofthefeaturesofhighflexibility,shortdesigncycleandlowriskSOPCovercomessomedisadvantagesofSOCandhasmadearapiddevelopment.ThispaperwillintroduceSOPCdesigntechnology,thenbringforwardadesignmethodtoimprovedesignefficiencyorovercomesomedesigncrisises.Thefirstchapterwillsimplyintroduceseeconceptandit'scurrentstatus.ThesecondisaboutsomeintroductionsofFPGAandSOPC.Thethirdistheemphasisofthispaper.Inthischapter,thispaperwilldescribeIPbasedSOPCdesignmethodologyindetail.Thefourthwillgiveaconcreteexampletodemonstratethevalidityandfeasibilityofourideas.Atlastitisaboutsummaryandprospectforfutureresearches.FinallythispaperwillgiveadesignreportofJTAGIPCoreinappendix.KeyWordSOCSOPCIPCoreEmbeddedSystem第一章引言.片上系统(SOC)的现状与发展趋势年Intel创始人摩尔提出单位面积晶体管的集成度每十八个月增加一倍。这就是著名的摩尔定律。遵循摩尔定律集成电路技术进入了G规模(可集成以上个晶体管的规模)时代它使得集成电路制造技术具备了一种更高的能力即可以将lO亿以上个晶体管集成在一块芯片上。现在人类社会正步入一个崭新的时代信息时代。在这样一个时代无论工作和生活每个人都离不开信息产品。如果没有集成电路或没有进一步发展的芯片技术的产生那么人类社会的信息基础设施即信息高速公路的建设就无从谈起更何况未来人类生活中的各种信息物质产品比如c产品(即融计算机、通讯和消费概念于一体的信息电子产品)也不会产生。人类在信息时代的生存需要普及的、轻巧易用的信息化生活、办公用品。于是在需求和技术的双重作用下片上系统(SOC。SystemonaChip)应运而生。那么到底什么是片上系统呢片上系统是在集成电路(简称IC)向集成系统(简称IS)转变的大方向下产生的概念。从狭义角度讲它是信息系统的芯片集成。通俗地说它是将系统集成在一块芯片上。从广义角度讲片上系统就是一个微系统如微电子机械系统和微光机电系统等值得一提的是片上系统即SystemOnaChip(简称SOC)它有几种叫法:单芯片系统芯片系统系统芯片。本文采用片上系统这种称谓。片上系统技术提高了系统的稳定性和可靠性同时又降低了整个系统的成本。由于这些优点片一卜系统应用范围愈来愈广包括:军用产品各种武器控制(火炮控制、导弹控制、智能炸弹制导引爆装置)、坦克、舰艇、轰炸机等陆海空各种军用电子装各:雷达、电予对抗军事通信装备野战指挥、侦察和作战用设备等。信息家电各种信息家电产品如数字电视机、机项盒数码相机。VCD、DVD音响设备可视电话家庭网络设备电冰箱智能玩具等。消费类电子各种使携式设备如手机、寻呼机、个人数字助理(PDA)等。商用产品复印机、打印机、传真机、扫描仪、激光照排系统、安全监控设备、变频空调设备、通信终端、程控交换机、网络设备、录音录像及电视会议设备、数字音频广‘播系统等。总之通过片上系统可以满足人们新的要求和希望从而开发出新产品开拓出新市场。统观未来片上系统的发展如下发展趋势值得注意:市场不断增长比起传统设计方式来片上系统的优势明显。近几年一些生产技术的变化成为驱动片上系统市场的因素包括:mm晶圆片的采用大规模生产中使用铜布线硅锗工艺投入批量生产新型晶体管结构的应用亚微米、深亚微米制造工艺的采用。片上系统市场规模估计年近亿美元同年传统ASIC市场亿美元年将分别增长到亿美元和亿美元年均增长率分别为%和%片上系统的增长极为迅速。在整个半导体中片上系统的比重年为.%年将提高到.%。IP质量不断改进随着从事片上系统设计公司的增多IP模块质量成为必须克服的障碍之一。所有IP是不同样的也是不等值的因此每个设计人员在应用前需对IP进行评估确定是否适用。此外某种专用IP模块可能不是设计中真正需要的市场上买得到的IP模块又可能不切合客户要求在使用以前要进行一定的修改。VSIA(VirtualSocketInterfaceAssociation)正为此而在制定相关的标准这项工作看来近年将一宜持续做下去复杂模拟/混合信号IP的问世许多公司无论大小现都在积极开发和提供MCU芯核、嵌入存储器、各种有关逻辑电路以及ATM、IEEEl、USB等的IP模块。其中有一个领域曾普遍受到人们忽略那就是模拟/混合信号和RFIP模块开发不足。原因之一是模拟仍属于工艺范畴而不够科学因此工程精英从事模拟设汁的极少人才难得。可喜的是现在已有所改变若干第三方IP公司己开始提供片上系统用的各种复杂IP模块。这一趋势随着公司的增多而继续发展。无论如何毕竟现实世界是模拟的因而这方面未来需求殷切前景看好。合作设计片上系统设汁中包括的功能愈来愈多设计方法必须重新思考。由于设计一种极为复杂的片上系统需要很长的时间半导体、系统和软件公司很难再彼此独立开发。相反他们必须紧密合作以保证产品及时上市。设计时间增长和产品寿命周期缩短近五、六年来电子产品的寿命周期不断缩短而片上系统的设计时间却在增长。现在非常复杂的设计需时个月而产品寿命周期却只有个月。末来设计肯定更趋复杂设计时间和产品寿命周期的矛盾将进一步加剧。加之新一代产品的上市时问是极为重要的成功要素之一这些都将影响到片上系统的发展。代加工厂近年世界各地代加工厂发展迅速热切企望取代传统的独立半导体器件生产厂。代加工厂当然也看到了片上系统的发展趋势而愿为之服务但一开始还做不到全面服务。为此他们还必须在近年内改善基础设施争取系统和器件应用工程师的支持建设高速数据网并拥有自己的IP。.片上系统(soc)面临的障碍与挑战片上系统作为一个刚刚起步不断发展中的产业必然面临诸多障碍和挑战。总的来说其主要面临如卜四个方面的障碍和挑战:深亚微米(DSM<.mm)设计问题片上系统一定要采用深亚微米或亚.微米的工艺制造技术以达到片卜I系统所要求的高密度、小面积、高速度、高性能、低电压以及低功耗的要求同时互联线也是困扰设计性能的一个最大问题。片卜系统的软硬件协同设计问题片上系统采用软硬件协同设计技才案尹这与传统的系统设计思路(先硬件后软件软件和硬件分开设计)完全不同。可以说片上系统使用的是一套系统确定后软硬件协同并行优化设计的全新理念。片上系统的验证问题片上系统的复杂度极高验证需要花费很长的时间验证已成为片上系统设计的主要任务之一。所以设计出新的验证算法消除传统模拟验证所带来的部分数据无法验证的隐患已成为设计片上系统所需要突破的重大课题。复杂片上系统的测试和可测试问题复杂片上系统的测试和可测试问题是一个不可逾越的、重要而困难的问题。知识产权(IntellectualProperty简称IP)核技术片上系统设计及其复杂动折就需几百万门。而传统的手工设计即使最富有经验的Ic设计工程师每天也最多只能设计几百个门电路这肯定己不适应片上系统复杂的设计要求。因此采用IP核已成为片上系统设计的基础。IP核由有相应的专家设计完成通过授权将技术转移到具体的片上系统中。一般IP核包括软核、固核及硬核三种形式。片上系统要求这些模块必须具有可重用性。.片上系统(SOC)技术的发展片上系统作为一个全新的研究领域其技术随着半导体工艺和技术的进步也在不断的创新发展。最新有世界最大的可编程器件供应商之一的Altera公司提出了全新的片上可编程系统(soPCSystemnaPrograrmingChio)概念。片上系统和片上可编程系统两者相比较两者拥有各自的优缺点。对于片上系统其优点有成本低(仅仅对于大批量应用)、高速度和高性能但其高风险、高投入、面市晚和缺乏灵活性的缺点也很明显。而对于片上可编程系统其优缺点刚好与片七系统相反其优点是低风险、低投入、快速面市和应用灵活缺点是高成本(注:其成本有愈来愈低的趋势)、速度和性能较低(相对于片上系统)。片上可编程系统与片上系统相结合相互补充相互促进业已成为一个非常热门的研究方向。第二章现场可编程逻辑阵列(FPGA)和片上可编程系统概述(SOPC).FPGA的特点与最新进展自年xilinx公司推出第一片现场可编程逻辑器件(FPGA)至今FPGA已经历了近二十年的发展历史。在这近二十年的发展过程中以FPGA为代表的数字系统现场集成技术取得了惊人的发展:现场可编程逻辑器件从最初的个可利用门发展到年代的万个可利用门到现今国际上现场可编程逻辑器件的著名厂商AItera公司、XiIinx公司已陆续推出了数百万门的单片FPGA:出片将现场可编程器件的集成度提高到一个新的水平并向千万门的方向发展。纵观现场可编程逻辑器件的发展历史其之所以具有巨大的市场吸引力根本原因在于:FPGA不仅可以解决电子系统小型化、低功耗、高可靠性等问题而且其开发周期短、开发软件投入少、:枣片价格也在不断地降低。这就促使FPGA越来越多地取代了ASIC的市场特别是对小批量、多品种的产品需求使FPGA成为首选。目前FPGA的主要发展动向是:随着大规模现场可编程逻辑器件的发展系统设计进入了“片上可编程系统(SOPC)”的新纪元:芯片朝着高密度、低压、低功耗的方向挺进国际各大公司都在积极扩充其IP库以优化资源更好地满足用户的需求并进一步扩大市场特别引人注目的是所谓FPGA动态可重构技术的开拓将推动数字系统设计观念的巨大转变。下面的章节将简要介绍世界三大FPGA供应厂商xilinx、Altera和Actel的不同FPGA产品的不同特征。旧..xilinx公司研制开发的FPGA系列产品的主要特征txilinx公司自发明FPGA以来就不断推出新器件和开发工具力求芯片的速度更高、功耗更低。在其新近开发的产品中x订inx重新定义了未来的可编程逻辑为用户提供.v.v和v可编程逻辑系列选择并利用先进的、.、.、.Sum工艺技术生产出低成本、高性能的可编程逻辑产品。主要推出了Virtex系列和SpantanTM系列的FPGA。Virtex系列突破了传统FPGA密度和性能的限制使FPGA不仅仅是逻辑模块而成为一种系统元件。而SpantanTM系列为替代ASIC的大容量FPGA树立了一个新的低成本标准。virtex系列FPGA集成了许多满足系统级设计要求的新性能具有独特的结构特点。整个Virtex系列由九种器件组成系统门数从万到万门(到个逻辑单元)提供给用户的I/O引脚数最多超过个采用多种封装形式包括先进的.OmmFinePitchTMBGA和.mm芯片封装采用层金属的.微米CMOS工艺实现V容差的i/o接口借助于优选的时序驱动的布局和布线工具在MHz的PIICPU上编译速度可达万f/秒。Virtex系统的独特结构使它具有以下一些重要性能:拥有四重数字化延时锁相电路(DLL)用于内外时钟同步:使芯片到芯片间的通讯速度达到MHz所有器件从时钟到输出的延时均小于ns时钟可倍频和分频可进行相移。各种密度产品均设置向量式互连使布线快速可预测与内核配合良好。virtex支持级存储。它的SelectRAM存储层为字节级(分布式存储)、千字节级(块存储)和兆字节级(与外部DRAM和SRAM的SSTL接口)存储块提供很高的频宽。一采用SelectI/O“技术同时支持多种电压和信号标准。兼容MHz/比特PCI和CompactPCI。在推出VirtexFPGA之后不到一年xilinx又推出了VirtexE系列产品其性能和密度可与ASIC匹敌。VirtexE系列产品的主要特点是:拥有万个系统门:k位的双端口内部块状RAM:个DLL并支持超过种不同的信号标准包括LVDS、BusLVDS以及LVPECL采用.um工艺制造在单个器件上实现了.亿个晶体管的密度。总之Virtex和VirtexE系列不仅将FPGA性能推向一个新层面还解决了向系统集成的挑战。xilinx产品的另~个发展方向是实现可编程逻辑器件在大批量生产中的应用所以对成本要求更高。Spartan系列是以XC系列结构为基础并结合了片上RAM、强大的IP库支持和大容量、低价格的特点使其可在大批量生产中替代ASIC。Spartan系列的主要特点是:系统门数可达门灵活的片上存储器分布式和块存储器个数字延迟锁相环有效的芯片级/板级时钟管理Selecti/o技术保证同所有主要总线标准女HHSTL、GTL、SSTL等的接口具有功率管理(睡眠模式)等功能。Eltl..Actel公司研制开发的FPGA系列产品的主要特征儿Actel公司一直是世界反熔丝技术FPGA的领先供应商主要有两大系列的反熔丝FPGA产品SXA系列和MX高速系列。sxA系列FPGA的主要特点是功耗低、在接上了所有内部寄存器之后MHZ运行时的功耗不到w而且价格也较为低廉、并拥有良好的性能。SXA(./.um)和SX(.um)FPGA系列可以提供到个可用门一bitMHZ的PCIMHZ的内部时钟频率ns的时钟延迟它的输入设置时间小于.ns不需要逐步锁定的循环指令可提供.v.v和v的电压。这就使FPGA能够具有一些以前无法实现的功能使设计者能够把多个高性能的CPLD压缩到一片FPGA中大大降低了功耗节省了电路板空间减少了费用。另一方面众所周知采用反熔丝技术的FPGA尽管具有许多优点但是却有一个致命的弱点即只能进行一次性编程。这就为大规模FPGA产品的开发带来了许多不便。为了弥补这一不足近年来Actel公司也在积极开发其它结构类型的FPGA产品。最具代表的是其新近推出了一种非易失性、可重新编程的门阵列一ProASICFPGAs。该系列产品集于高密度、低功耗、非易失性和可重新编程于一身。ProASICFPGAs的主要特点是:提供到个可用门内嵌拥有FIFO控制逻辑的两端口SRAM(容量达到比特)提供大于MHZ的内部时钟频率该系列产品的功耗仅是基于SRAM的FPGA产品的/到/。亡..Altera公司研制开发的FPGA系列产品朐主要特征f’Altera公司自从事FPGA的开发研制以来不断的进行技术创新研制开发新产品。该公司基于CMOS的现场可编程逻辑器件同样具有高速、高密度、低功耗的特点。近期Altera公司主要有四个品种系列:粘合(glue)逻辑类的MAX系列低价位的ACEX系列、高速FLEX系列、高密度的APEX系列。Altera公司针对通信市场推出的新型低成本器件一ACEX系列(以前的名称是ACE)。该系列的主要特点为:密度范围从万到万门(到系统门)配备锁相环(PLL)与位、MHZ的PCI兼容产品系列从原l|v扩展至.v提供系统速度超过MHZ的高性能。Altera公司还对FPGA的结构进行优化提供更多的嵌入式RAM。新近推出的FLEXIOKE系列器件是以前的FLEXK系列器件的增强型该系列在结构上采用了与FLEXIOK系列相同的逻辑块但片内嵌入式RAM是FLEXIOK系列的两倍而且增加了一个双端口RAM这对通信应用来说是一个重要的优势所在。Atera公司预计该系列器件可用于MHZ的工作频率密度范围为万’万门能够用于MHZ的PCI和通信应用。Altera公司的高密度APEXKE系列器件其主要特点是:真正实现了的低压差信号(wvoltagedifferentialsignalingLVDS)通道并提供兆比特的数据传输率。在APEXKE系列中的锁相环(PLL)可以提供多种LVDS。设计者可以在lx和数据传输模式中实现LVDSi/o标准。另一方面随着现场刊’编程逻辑器件越来越高的集成度加上对不断出现的i/标准、嵌入功能、高级时钟管理的支持使得设计人员开始利用现场可编程逻辑器件来进行系统级的片上设计。Atera公司现在正积极倡导SOPC(SystemODaProgrammableChip片上可编程系统)。“片上可编程系统(SOPC)”得到迅速发展主要有以下几个原因:密度在万门以上的现场可编程逻辑芯片已经面市第代现场可编程逻辑器件的开发工具已经成形可对数量更多的门电路进行更快速的分析和编译并可使多名设计人员以项目组的方式同步工作一知识产权(IP)得到重视越来越多的设计人员以“设计重用”的方式对现有软件代码加以充分利用从而提高他们的设计效率并缩短上市时间:由于连接延迟时间的缩短片上J’编程系统(SOPC)能够提供更高的性能而且由于封装体积的减小产品尺寸也减少了。Atera公司为了实现SOPC的设计不仅研制开发出新器件而且还研制开发出新的开发工具对这些新器件提供支持并且与新芯片及软件相配合的是带知识产权的系统级设计模块解决方案它们的参数可由用户自己定义。芯片、软件及知识产权功能集构成了Altera完整的可编程解决SOPC方案Excalibur解决方案。..FPGA技术的最新进展从以上对xilinx、Altera和Actel三家公司各自开发产品特征的介绍我们可以看出年以来FPGA为代表的数字系统现场集成技术发展的一些新动向、新进展归纳起来有以下几点:深亚微米技术推动FPGA向片上可编程系统(SOPC)的发展。越来越多的设计需求需要利用SOPC技术。而SOPC要利用深亚微米技术才能实现。随着深亚微米技术的发展使SOPC的实现成为可能。与以往的芯片设计不同SOPC需要对设计和在产品中实现的方法进行根本的重新评价。新的SOPC世界要求~种着重于快速投放市场的具有可重构性、高效自动化的设计方法。这种方法的主要要素是:I.系统级设计方法.高级的多处理器和特长指令字(VLIW).应用级映射和编译。但是真正推动SOPC设计的将是系统级设计而不是特定的硬件或软件设计方法。系统级设计是把一个应用当作一个并行的通信任务系统的设计。着重点放在设计活动的并行性以及在整个应用中利用高度并发的、平行的特性。在SOPC领域中所要求的关键技术是在这些平台上把一个应用的系统级描述转化成一个高效率的实现。为了实现SOPC国际上著名的现场可编程逻辑器件的厂商Altera公司、Xilinx公司都为此而努力以开发出适于系统集成的新器件和开发工具这又进一步促进了SOPC的发展。芯片朝着高密度、低压、低功耗的方向挺进。采用深亚微米的半导体工艺后器件在性能提高的同时价格也在逐步降低。由于便携式应用产品的发展对现场可编程器件的低压、低功耗的要求日盏迫切。因此无论那个厂家、哪种类型的产品都在瞄准这个方向而努力。例如在前面所提到的xilinx公司的SpantanTM系列的FPGA、Altera公司的APEXKE器件、ACEX系列以及Actel公司的sx系列产品都是向高密度、低压、低功耗发展的典范。不仅如此更有新型的公司以其特色的技术加入低压、低功耗芯片的竞争。典型的如PhilipsSemiconductors推出的CoolRunner是,co具有个宏单元的CPLD无论在何种应用中都能提供标准的ns传输延迟、工作于v的电压下。该器件低功耗的关键是采用了ZeroPower互连阵列它用一个由外部逻辑实现的CMOS门代替了其它CPLD常用的对电流敏感的运放。这样当其它的相等规模的CPLD需要消耗mA的静电流时CRunner的耗电不到lOOmA。IP库的发展及其作用。为了更好的满足设计人员的需要扩大市场各大现场可编程逻辑器件的厂商都在不断的扩充其知识产权(IP)核心库。这些核心库都是预定义的、经过测试和验证的、优化的、可保证正确的功能。设计人员可以利用这些现成的IP库资源.高效准确的完成复杂片上的系统设计。典型的IP核心库有Xilinx公司提供的LogiCORE和AllianceCORE。FPGA动态可重构技术意义深远。随着数字逻辑系统功能复杂化的需求单片系统的芯片正朝着超大规模、高密度的方向发展。与此同时人们却发现一个有趣的现象即一个超大规模的数字时序系统芯片在其工作时从时间轴上来看并不是每一瞬间系统的各个部分都在工作而系统是各个局部模块功能在时间链卜的合成。同时人们还发现基于SRAM编程的FPGA可以在外部逻辑的控制下通过存储于存储器中不同的目标系统数据的重新下载来实现芯片逻辑功能的改变。正是基于这个称之为静态系统重构的技术有人设想能不能利用芯片的这种分时复用特性用较小规模的FPGA芯片来实现更大规模的数字时序系统。在研究过程中有人尝试了这种设想发现常规的SRAM的FPGA只能实现静态系统重构。这是凶为该芯片功能的重新配置大约需要数毫秒到数十毫秒量级的时间而在重新配置数据的过程中旧的逻辑功能丢失新的逻辑功能尚未建立电路逻辑在时间轴上断裂系统功能无法动态连接。但是要实现高速的动态重构要求芯片功能的重新配置时间缩短到纳秒量级这就需要对FPGA的结构进行革新。可以预见一旦实现了FPGA的动态重构则将引发数字系统的设计思想的巨大转变。综上所述我们可以看到以FPGA为代表的数字系统现场集成技术正朝着以下几个方向发展。随着便携式设备需求的增长对现场可编程器件的低压、低功耗的要求日益迫切。芯片向大规模系统芯片挺进力求在大规模应用中取代ASIC。一动态可重构技术的发展将带来系统设计方法的转变。向更高密度、更大容量的千万门系统级方向迈进向低成本、低电压、微功耗、微封装和绿色化发展为增强市场竞争力各大厂商都在积极推广其知识产权IP库。一IP资源复用理念将得到普遍认同并成为主要设计方式MCU、DSP、MPU等嵌入式处理器IP将成为FPGA应用的核心I.片上可编程系统(SOPC=}、的现状及特点片上系统是一个面向应用、技术密集、资金密集的产业随着各个领域应用需求的多样化片上系统设计技术不断向前发展经历着一次又一次的革新。虽然ASIC/SOC的成本很低但设计周期氏、投入费用高、风险较大而可编程逻辑器件(ProgrammableLogicalDevice)设计灵活、功能强大尤其是高密度现场可编程逻辑器件(FieldProgrammableGateArray)其设计性能已完全能够与ASIC/SOC媲美。Altera公司最新推出的Stratix系列高性价比FPGA其系统门数达到几百万门足已将一系统植入单个芯片内而其批量成本却降到了美元/lOO万门。此性能价格比己足以与ASIC/SOC相抗衡。因此FPGA在系统设计应用领域已占据着越来越重要的地位。随着处理器以IP的形式嵌入到FPGA中ASIC}HFPGA之间的界限将越来越模糊未来的某些电路版上可能只有这两部分电路:模拟部分(包括电源)和一块FPGA芯片晟多还有一些大容量的存储器。xilinx等公司最新一代FPGA:SpartanII/E、VirtexIIPro尤其是SpartanlII及其相关IPCore的推出片上可编程系统(SystemonProgrammableChip)的时代已经来临了。iJ.编程片上系统(SOPC)是一种特殊的片上系统:首先它是片上系统(SOC)即由单个芯片完成整个系统的主要逻辑功能其次它是可编程系统具有灵活的设计方式可裁减、可扩充、可升级并具备软硬件在系统可编程的功能。SOPC结合了SOC和FPGA各自的优点一般具备以下基本特征:至少包含一个以上的嵌入式处理器IPCore具有小容量片内高速RAM资源丰富的IPCore资源町供灵活选择足够的片上可编程逻辑资源处理器调试接口和FPGA编程接口共用或并存可能包含部分可编程模拟电路单芯片、低功耗、微封装SOPC设计技术实际上涵盖了片上系统设计技术的几乎全部内容除了以处理器和实时多任务操作系统(RTOS)为中心的软件设计技术以外SOPC还涉及目前已引起普遍关注的软硬件协同设计技术。由于SOPC的主要逻辑设计是在可编程逻辑器件内部进行而BGA封装已被广泛应用在微封装领域中传统的调试设备如:逻辑分析仪和数字示波器已很难进行直接铡试分析因此必将对以仿真技术为基础的软硬件协同设计技术提出更高的要求。同时新的调试技术也己不断涌现出来如x订inx公司的片内逻辑分析仪ChipScopeILA和Altera公司的片内逻辑分析仪SignalTAP这两种片内实时调试工具为验证调试SOPC设计带来了非常大的方便。一第三章基于IP核的SOPC设计技术随着芯片容量的快速增长在单个芯片中集成一个完整的系统已成为现实即所谓的片上系统(SOC)而同时迫于市场的压力必须缩短产品开发周期降低产品开发成本。这成为了一个矛盾的双方。于是片上可编程系统(SOPC)概念及时提出为我们开创了一条全新的、富有生机的道路。对于缩短开发周期降低开发成本重用IP核和改善系统抽象级设计是两个重要的方面。现在基于IP软核的SOPC设计技术已成为一个很热的研究领域其研究的方面主要是定义和设训’基于FPGA的系统、创建可重用的IP核构建IP库然后方便地集成它们至片上可编程系统中。本文的重点就在于研究基于IP核的SOPC设计方法并从基于IP核的SOPC设计流程的四个不同阶段(高层系统级设计、IP核设计、IP核集成和SOPC验证)来描述我们当前的研究成果。为了更有效地重用IP核我们不仅仅研究设计可重用的IP核、可重用的设计方法并同时也开发EDA工具创建可重用的结构。因此在我们的方法中我们集中在二个方面进行研究:.方法包括设计流程和标准.组件包括EDA工具和可重用的IP核、IP库。一些方法我们己用于设计流程中其它一些我们还正在开发研究中。.高层系统级设计定义一个系统级设计方法已成为影响未来成功开发工业、消费类等产品软件和硬件的一个关键因素。现在在许多应用中需集成一个或多个嵌入式处理器。这些应用有实时、分布、并行等特性。这些特性使得系统设计变得越来越复杂产品设计周期越来越长。过去当系统规范和设计过程是在清晰已知的情况下系统需求对于设计人员是透明的系统设计直接从需求跳到具体实现。然而如以上面的步骤在单片上设计一个系统将冒很大的风险。丁.是随着系统设计复杂性的增长研究人员正在需求和实现之间利用结构化规范方法和抽象系统建模来探索一条新的设计道路。当前系统级设计在业界还没有一种完善的方法。本文的工作在于给出一个系统级设计方法、流程的介绍。系统级设计方法的概念是在系统抽象层次定义和优化系统设计。在本文中我们定义了如下的系统级设计流程:系统规范建模它描述系统的行为和功能而不涉及系统的详细实现细节。IP组件建模它定义系统结构的组件模型。在这一级划分系统功能到多个不同的IP组件中。组件中进程的执行延迟通过“等待”状态来建模到系统中并通过消息传递来实现组件间的通讯建模。总线仲裁建模总线仲裁模型定义为:利用总线通道来实现IP组件中不同进程之间的通讯。通讯协议可选择阻塞型或非阻塞型。因此总线信道隐藏了不必须的实现细节如精确的接口定义、精确的时序转换。每一个进程元素我们都分配一个总线优先级。然后一个总线仲裁器根据其总线优先级来分配总线访问权。总线功能建模总线功能建模定义IP组件的总线功能描述。其根据系统总线互联机议建立精确的总线周期实现。此模型内嵌总线协议到进程元素中。因此此时模型中已包括精确的接口信息。具体实现建模具体实现建模根据系统寄存器传输或指令集结构来定义组件。系统中的时间和事件顺序被定义到每个组件的单个时钟周期内。图显示了此系统级的设计流程。图的右手边显示了五个相对应的探索阶段。概念探索概念探索阶段捕捉设计规范明确设计需求。结构探索在这一阶段选择确定进程和存储组件。系统行为的进程被映射到进程组件系统行为的变量被映射进程元素的本地内存或全局内存(存储组件)。处理探索这一步涉及定义通过系统总线进行进程和存储组件的互联模型例如定义系统的拓扑结构。在这一步通讯协议被分类成阻塞和非阻塞两种此外如必要的话也选择一个总线仲裁机制。协议选择这一步具体选择总线协议。执行协议的内嵌操作并决定如何把协议的不同部分分配到各进程元素中去。实现探索在这一步对于那些映射到定制硬件的行为模型决定其配置、绑定和调度策略而对丁I那些映射到微处理器的行为模型生成相应的可执行C代码和实时操作系统(RTOS)。这一步和系统级设计中前四步相比较其主要任务是在组件设计的基础上实现进程元素到寄存器传输级/指令集模拟级(RTL(RegiSterTransferLevel)/ISS(InstructionSetSimulation)的详细设计。I。一‘。‘‘‘’。‘‘‘‘‘。。:I一一‘。‘‘一一一。。一一I定义i探索上=塑线仲裁建模二>l验证、分析上l通讯定义ll协议选择上:线功能建!塞.:>I验证、分析上‘图l:系统级设计流程上述系统级设计方法的实现需要一个系统级设计语言(SLDLSystemLevelDesignLanguage{葬薯滞。当前的系统级设计语言有C/C、Java、HDL(VHDL、Verilog)、SystemC脚s面cC等。SystemC是其中一种被广泛采用的系统级设计语言其通过使用一个基于普通c类库的建模平台来加速系统级IP模型的交换和软硬件的协同设计。对于片上可编程系统(SOPC)的系统级设汁设汁人员首先应该考虑系统的结构以增强系统设计的灵活性IP的可重用性以快速方便地集成IP。没有一个通用的完善的系统结构软件和硬件模块的可重用性就无从谈起。基于IP核的片上可编程系统设计技术大大增强了IP核的可重用性:此外内部IP通讯互联的通用总线结构进一步提高了IP核的可重用性。当前已有多种总线标准己被定义并使用如AMBAAvlaon.Wishbone等。当IP重用技术变的越来越成熟之际改善芯片级结构的可重用性变的越来越重要。一个基于平台的系统结构设计常常被用来创建一整个系列的派生产品。演生设计基于同一个处理器核和通讯互联总线但是选择不同的外设和加速硬件或者修改软件。软硬件协同设计将成为将来设计流程中的一个非常重要的部分。当前算法和系统级结构设计都是通过手动来实现的这就使的从系统级设计不能得到预期的且可复用的结果。因此新的基于应用和基于系统级结构的设计方法和工具需要开发以优化系统实现。另外也必须实现系统级描述语言、综合和验证工具的无缝连接以完成从系统级描述到实现和系统建模验证的直接映射。.IP核设计谈了这么多那么到底什么是IP核呢IP(一IntellectualProperty)核原意为知识产权核在半导体产业中有人将经过设计、验证具备特定功能的电路设计称为IP核。通常学术界把IP核分类成四种:可综合的IP核(synthesizableIPcore)、软核IP(softIP)、固核IP(firmIP)和硬核IP(hardIP)。可综合的IP核以一种不依赖于具体工艺技术的高级描述语言的形式存在。其布局布线是非常灵活的但是其速度和密度受限于实际采用何种技术工艺。可综合的IP核须经过综合、测试、静态时序分析和用户验证这四阶段后才成为一个确实可用IP核。因此可综合的IP核具有最大的灵活性但重用很困难。软核IP是一种依赖于具体工艺技术的门级网表。在某些情况下一个软核IP中也可以包含一些高级的技术独立的代码以使设计人员在综合期间可以参数化软核IP。因为软核IP技术依赖的属性所以其面积和速度相对于可综合的IP核来说更加可预测。但是其应用的灵活性却受到了一定的限制当然它的可重用性得到了加强。吲核IP是一种被加密或抽象的黑盒子以保护核的知识产权。一个固核IP的面积大小、针脚分配等都可以改变以满足客户的具体需求。由于其技术依赖的特性固核IP的面积和性能比软核IP更加容易预测。但其灵活性进一步受到了限制虽然可重用性又得到了加强。硬核IP也是一种被加密或抽象的黑盒子。然而不似固核IP硬核IP有一个固定的定制的物理布局布线。技术依赖的属性使其在性能和密度之间作了最大的优化。然而硬核IP具有最差的可重用性且其灵活性也最差。开发设计衍生产品需要的快速增长带动了设计使用IP核的不断发展。高品质的IP核是IP重用和集成的关键保证。为设计高品质的易于重用和集成的IP核一般要满足如下的要求和采用如下的设计技术:.参数化设计.良好的编码风格:.片上总线接口的设计:.模块化设计。下面一一详细介绍之。参数化设计参数化设计是灵活多变设计IP核的一项关键技术。通过使用VHDL的generics关键词或Verilog的parameters关键词来对IP核进行参数化设计这就使得设计人员可以在综合期间选择或消除一般的IP核客户定制属性。有开发人员定义并经过验证的一系列参数限制了IP核的允许修改范围这就大大减少了客户随后进行的熏复验证也大大简化和最小化了对于支持多核可配置的任务。例如通过参数化设计我们可以配置IP核的基地址波特率时钟DMA通道数FIFO数等。良好的编码风格VHDL利Verilog硬件描述语言是两种功能类似的支持系统和电路设计的高级硬件描述语言。它们支持各种各样不同抽象级别的设计包括指定结构的设计。在更高的层次上它们也可以用来进行不涉及具体技术的系统设计。为了创建一个含有某种功能的设计你仅仅需要考虑一种具体目标技术。然而为了在你的目标系统中获得最佳的性能和最小的面积设计人员必须熟悉目标设备的结构然后再编制适合的代码。良好的编码风格对于创建优秀的设计是至关重要的。设计的结构应是硬件描述语言代码结构的直接映射。此外遵循一定地硬件描述语言编码标准有助于在其它设计中或被其它设计人员重用。当前工业界己广泛定义并采用了一些编码标准。如:命名习惯如文件命名的习惯一般是每个文件包含一个设计单元即含有单个module/endmodule块且文件名就是设计实体的模块名等。HDL代码的命名如常数、参数和块名等使用大写字母信号、结构和实例标签等使用小写字母有意义的信号、变量、端口名等。注释每个文件必须包含一个文件头含有如下一些信息:本文件名、结构名、设计作者和版本历史等。.、详细标准就不一一介绍了最后给出一个良好的Verilog代码格式例子。如图所示。o擀igl止fcI眦ceola//髓to托lconfidentlalPz啦latal////PILEH^艇:presc札rv//TYP{rdele//DⅡP^gn锄T:aocDTfowmdi"F.、utinTX//^nTⅡ】胤hr呲tley柏蜘强。日腿zLrt#口咖il目pt.c锄//|}ialeaslhistoryⅥlRBIoDat瓤髓OADECIIPTIC目//tSeptonmykirIitiaIverslcⅡ//。鼢ri~tlmyUpdatedfor瞄compatibili时/itmarkljncastarCleanedpprosoalerl..paas.//A矗d日dcmM#妇inbht.}|//柏HwlDs口ckdividezdividebyE////mpD%idiyideinputalock埘‘。//船咄iISSUES船a日tStrategyf知珂n血r瑚activesystem唧:一tclockDolIinIyBte‘LPl*kcloc】LincriticalTLmi目l茁/^//TeaCweatureslpreacaleri聊auedh匝sca.modehassertedmy啦mIFImg砖J/scaⅡN吡hodolo如t眦D//t地t眦iati矾slN^//other:ue日synthesisdirectiret口inferam峨to|favoidglltchingclockouI“clockouuj//FHD:r帖auleprecalerCclockoutlclcckoutbclockinsystemcck.canmode。resetj)output口l。吡Dut}//i印ut=lockdividedbyoIl‘Put=lockoutJt//i。nput‘clockdlvided坤andiⅡverted“wt吨hmzclack如wtaysCemclockf//systemclockinputcanmede日a面向e口kinput越盹与bi//actl.vt埘hrd珀吐syncha”cemclockragbIo】口吼mt}cotRAEertaakeclockdi岫.d雠regcl帅tt//iI】押tclo哪c融Viddby‘regclcckc“tbI/姗ut=lo=k““dedbyl‘Indinverted图:良好的Verilog代码格式例子片上总线接口的设计设计人员利用标准片上总线来消除那些不是最理想的粘合逻辑这些粘合逻辑用来集成多个IP核成一个完整的系统。总线技术已在印刷电路板中使用多年了现在这种方法也被引入到片上可编程系统中来。通过提供一个标准的接口和通讯协议标准总线就可使外设模块或用户自定义模块很方便地集成到系统中。遵循标准协议设计的核逻辑和用户逻辑可以快速的互联而不需要额外的粘台逻辑门。和板级设计一样不同特性的模块之问需在带宽、速度和接口兼容之间作出均衡因此一般片上总线也选用层次结构的选计例如ARM的AMBA总线结构和PowerPC的总线结槲‘本文以AMBA总线丙例说明片上总线设计。对于AMBA总线ARM公司设计开发了两层片上总线结构(如图):先进性能总线(AHB)服务于高速设备:先进外设总线(APB)服务于低速设备。一个单独的核用于提供总线仲裁逻辑总线桥用于在这两种不同类型的总线之间交换数据。除了ARM外设IP核之外许多其它的IP核可以添加到AHB/APB总线结构上去。这些IP核包括通用异步接受发送器(UARTUniversalAsynchronous图:片上总线结构ReeeiveTransmit)、通用串行总线(UniversalSerialBus)、以太网和IEEE并行接口单元等。图显示了一个包含ARM处理器核及几个ARM软核外设的设计结构。所有的IP软核都通过AHB/APB总线结构进行互联。ARM的DRAM和SRAM控制器邦直接和AHB总线相联:而以太网接口、UART及通用IO等和APB总线相联。模块化设计图:片上总线实现IP核开发人员考虑到设计的灵活性常常按照功能将一个大的设计划分成多个小的、单独的IP核模块。在这更小的子模块中其布局布线后的静态时序须保证不变。这样设计者就可以选择所需要的的子模块来定制IP核。满足时序约束的位、MHz的组件接口核IP如图所示。因为PCIa啪卫玎功能高度的可配置性所以我们把这一设计划分成九个子模块于是不同的应用可以根据需要灵活选择。例如利用PCI引擎模块再联合寄存器配置模块、主FIFO读服务子模块和主FIFO写服务予模块实现一个PCI总线控制器也可以利用PCI引擎模块再加配置模块、主DMA写服务子模块和主DMA读服务子模块来构成一个PCI总线控制器。设计中包含FIFO服务模块的PCI总线控制器要比一个包含完整九个子模块的

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +1积分

资料评分:

/68
0下载券 下载 加入VIP, 送下载券

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部

举报
资料