FPGA_ASIC-SoC分类及其技术发展趋势

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

SoC分类及其技术发展趋势张志敏1.引言回顾计算机发展史,计算机技术发展与IC(集成电路)技术发展紧密相关。半个多世纪以来,计算机发展主要经历了真空管(1代)、晶体管(2代)、集成电路(3代)、微处理器(4代)等时代。目前IC设计产业中出现了系统设计和IP核设计的分工,形成了以SoC(SystemOnaChip)技术为主导的chipless设计方式,对计算机技术发展将产生较为深远影响。SoC设计方法学已引起了工业界和学术界的极大关注,是后PC时代的重要发展方向。SoC可以充分利用已有的设计积累,显著地提高ASIC的设计能力,缩小设计能力与IC工艺能力的差距。其设计方法学与计算机的发展紧密相关,会进一步拓展计算机体系结构发展方向[1]。SoC通常将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上[2]。SoC可以使应用产品实现小型、轻量、低功耗、多功能、高速度和低成本,因此具备较强的市场竞争力,主要广泛用于计算机、通信、消费、工控、交通运输等领域。在过去6、7年中,SoC得到了快速发展。据估计,到2007年销售额将达347亿美元,年增长率超过20%[2]。二十一世纪初将是SoC快速发展的时期。当前,无论在国际上还是国内,在SoC设计领域已展开激烈竞争。SoC按实现技术可分为三类,一类是CSoC,当前仍以学术研究机构为主导,注重体系结构探索性工作;另一类是SoPC,以FPGA厂商和科研机构为主导,适合多品种少批量产品开发;第三类是ASICSoC,以微处理器和芯片设计公司为主导,追求良好的性价比,适合大批量规模生产;其它如PSoC、EPGA均可归入SoPC类。SoC按指令集来划分,主要有X86系列、ARM系列、MIPS系列和类指令系列,性能成本各有千秋。在国际上,基于x86SoC的产品有国家半导体公司的SC2200,适合做无线浏览器(WebPad)、瘦客户机和机顶盒等产品。在我国台湾地区,如RiseTechnology公司的SCX501,SiS公司的SiS550系列,均属于x86系列的SoC,适合做信息家电产品;基于ARM系列的SoC更是数不胜数,如Sharp的LH7A400,Samsung的S3C44AOA,OKI的ML67Q530等;基于MIPS系列的产品主要是AMDAlchemyAu1000、Au1500等系列产品;基于类指令系列的产品,如CrusoeTM5800,采用超长指令,代码效率高。国内SoC研制开发者主要基于MIPS系列和类指令系列,如中科院计算所中科SoC(基于龙芯CPU核,兼容MIPSIII指令集)、北大众志(定义少许特殊指令)、方舟2号(自定义指令集)、国芯C*Core(继承M*Core)等,提供了面向不同应用领域的解决方案。方舟与国芯走低功耗发展之路,北大走嵌入式发展之路,计算所走高性能系统集成发展之路。SoC自20世纪90年代后期出现以来,随着超深亚微米工艺的不断发展,以3C融合为特征的后PC时代给SoC发展创造了广阔的发展空间,也日益引起学术界和工业界的极大关注[3]。SoC品种日益繁多,在关注面积、延迟、功耗的基础上,设计目标在向高成品率、高可靠性、低EMI噪声、低成本、高易用性等方面转移,这将使系统级集成能力快速发展。本文从计算机体系角度刻画SoC总体架构的分类,力求把握其发展规律,共同探讨SoC学科的发展趋势。2.SoC研究内容尽管SoC沿CSoC、SoPC、ASICSoC这三个方向发展,但最具挑战性的还是ASICSoC研究领域。SoC设计方法学主要研究总线架构技术、IP核可复用技术、可靠性设计技术、软硬件协同设计技术、SoC设计验证技术、芯片综合/时序分析技术、可测性/可调试性设计技术、低功耗设计技术、新型电路实现技术等[4][5],此外还要做操作系统/嵌入式软件移植、开发研究,是一门跨学科的新兴研究领域。2.1总线架构技术总线结构及互连技术,直接影响芯片总体性能发挥。对于单一应用领域,可选用成熟的总线架构;对于系列化或综合性能要求很高的,可进行深入的体系结构研究,构建各具特色的总线架构,做精做强,不受制于第三方,与系统同步发展,更具竞争力。目前SoC开发研制主要有基于平台(包括自主构建总体架构)、基于核、基于合成等方法,不断推出性能更好、扩展性更强的总线规范,如AXI总线(AMBA总线升级)、L*BUS总线(中科院计算所)等。2.2IP核可复用技术IP核一般分为硬核、软核和固核三种,硬核是指经过预先布局且不能由系统设计者修改的IP核,软核通常以HDL语言形式提交,固核由RTL的描述和可综合的网表组成。IP核可复用的研究重点是开发适应多种总线接口的规范和可测试性一体化,以尽量少的外包和测试向量,达到复用目的。IP核应有良好的开发文档和参考手册,包括数据手册、用户使用指南、仿真和重用模型等,而兼容性是重要的因素。2.3可靠性设计技术由于SoC由多级总线组成,每一总线上含有多个设备(IP核),如何确保整个芯片能正常运转十分重要,必须考虑防“死锁”机制和“解锁”机制,即使某一设备(IP核)瘫痪了,不致影响整个芯片其他功能发挥。此外随着超深亚微米技术发展,对总线传输的可靠性提出了严重挑战,必须研究容错机制和故障恢复机制。2.4软硬件协同设计技术由于市场和设计风险的压力,SoC软硬件协同设计尤为重要。改进软硬件协同说明、协同分析、协同设计、协同模拟和协同验证,可大大减少硬件设计风险和缩短嵌入式软件的开发调试时间。同时在协同验证环境中能够及时发现软硬件中所存在的致命问题,避免在最后集成测试阶段重新进行软硬件的调整。2.5芯片综合/时序分析技术由于SoC系统复杂度和规模愈来愈大,像多时钟、多电压以及超深亚微米等新课题不断出现,对SoC的综合性研究提出了更高的要求。尤其对时序预算如何分级、分解,关键路径的特殊约束的研究,要求研究人员具有深厚的系统背景知识。与此同时,静态时序分析(STA)日趋复杂、后端动态仿真效率低下,对总体设计人员提出了严峻的挑战。2.6SoC验证技术主要分IP核验证、IP核与总线接口兼容性验证和系统级验证等三个层次,包括设计概念验证、设计实现验证、设计性能验证、故障模拟、芯片测试等;从验证类型分,有兼容性测试、边角测试、随机测试、真实码测试、回归(Regression)测试和断言验证等。由于芯片愈来愈复杂,软件仿真开销大,硬件仿真验证成为一种重要的验证手段。验证工作约占整个设计工作的70%,如何提高验证覆盖率和验证效率是设计验证的永恒话题。2.7可测性/可调试性设计技术主要研究解决批生产可测性问题和在线可调试性问题,实施技术包括DFT、SCAN、BIST、Iddq、JTAG/eJTAG,要研究基于各种IP核的SoC测试架构和测试向量有效传递性,更重要的是要考虑测试平行化,降低芯片测试占用时间,此外要关注在线调试工作,方便用户开发和调试基于SoC的产品。2.8低功耗设计技术低功耗已经成为与面积和性能同等重要的设计目标,因此精确评估功耗也成为重要问题。芯片功耗主要由跳变功耗、短路功耗和泄漏功耗组成。降低功耗要从SoC多层次立体角度研究电路实现工艺、输入向量控制(IVC)技术、多电压技术、功耗管理技术以及软件(算法)低功耗利用技术等多方面综合解决问题。2.9新型电路实现技术出不穷,半导体工艺特征尺寸向深亚微米发展,要求SoC设计师不断研究新工艺、新工具,研究关键电路架构、时序收敛性、信号完整性、天线效应等问题。2.10嵌入式软件移植/开发主要研究开发SoC的BIOS和嵌入式操作系统移植/开发,要支持多任务,要使程序开发变得更加容易,系统的稳定性、可靠性得到更好提高,要便于维护,易读易懂,要具有安全性好、健壮性强、代码执行效率高等特点。如对SoC片内进行嵌入式Linux操作系统代码的植入研究,可减轻系统开发者基于BSP开发的难度,同时提高开发效率,缩短开发周期。3.SoC分类SoC产品和技术不断发展,但在SoC分类上业界还未形成主流看法,本文将其归类为CSoC、SOPC和ASICSoC等三大类,然后统一到SoC体系结构分类模型中。3.1CSoC技术特点CSoC一般由处理器、存储器、基于ASIC的核和片上可重构的部件(专用化)等构成,相对ASICSoC和基于标准组件多芯片板级开发而言具有明显优势,其特征为:CPU+可重构处理构件效率与灵活性很好结合在一起基于重构确定处理功能在图像处理、模式匹配等方面优于超级计算机根据任务需要可动态重构,提高性价比目前学术界对可动态重构的高效处理件XPP(eXtremeProcessingPlatform)比较关注[3]。XPP是在一个以基于某种总线架构的微处理器核为核心的SoC中嵌入可编程逻辑模块,构成可重构的SoC平台,如图1所示。适用的可重构数据处理架构往往由处理阵列单元(PAE)、面向通信网包、层次化的重构管理树(CM)和I/O模块等构成。XPP具有自动重构流和处理数据流,突破了传统的冯.诺依曼指令流模式。由于高度规整化,很容易获得指令级平行性和流水线效率。Triscend公司就选用了CSoC技术路线。图1.基于XPP/Leon的CSoC体系结构3.2SoPC技术特点SoPC是一种特殊的片上系统,是可编程系统,具有灵活的设计方式,可裁剪、可扩充、可升级,并具备软硬件在线系统开发中可编程的功能,结合了SoC和FPGA各自的优点[6][7],一般具备以下基本特征:至少包含一个以上的嵌入式处理器IP核具有小容量片内高速RAM资源丰富的IP核资源可供灵活选择足够的片上可编程逻辑资源处理器调试接口和FPGA编程接口共用或并存可能包含部分可编程模拟电路SoPC结构框图如图2所示。除了上述特点外,还涉及目前已引起普遍关注的软硬件协同设计技术。由于SoPC的主要逻辑设计是在可编程逻辑器件内部进行,而BGA封装已被广泛应用在微封装领域中,传统的调试设备,如:逻辑分析仪和数字示波器,已很难进行直接测试分析,因此,必将对以仿真技术为基础的软硬件协同设计技术提出更高的要求。同时,新的调试技术也已不断涌现出来,如Xilinx公司的片内逻辑分析仪ChipScopeILA就是一种价廉物美的片内实时调试工具;而在应对复杂设计方面,诸如Xilinx公司的SystemGeneratorforDSP就是一个利用可编程硬件逻辑实现数字信号处理算法的强大辅助工具。ASICASICSoC是一种面向特定应用的片上系统,具有高性能、强实时、高可靠、低功耗、低成本化等特点,一般具备以下基本特征:至少有一个以上的CPU核具有规范的总线架构(如AMBA)具有RAM资源(或片上访存控制器)具有适量的I/O设备(包括模拟的)具有可扩展的接口(如PCI)具有可在线调试口(eJTAG)具有可测试性电路图3L*BUS总线架构图ASICSoC一般是基于IP核或SoC开发平台的产品,需要专门技术、IP库、SoC总线架构和嵌入式软件支持(包括BIOS、OS),需要广泛的多功能IP核和将客户逻辑与之集成在一起的设计艺术,以满足客户产品开发的需求。SoC设计者通过重用证明了的IP核,不仅利用了最新工艺技术优势,而且减少了开发周期和风险。目前SoC总线架构有很多种,如IBM公司的CoreConnect、ARM的AMBA、Silicore公司的Wishbone、MIPS技术公司的SOC-it和CoreFram等。可喜的是国内也有许多自主知识产权的总线架构,如L*BUS(中科院计算所,如图3所示),C*BUS(苏州国芯)等。每一种总线架构都是为满足其特定应用领域的要求而发展起来的。有些适合低端嵌入式产品,有些适合手持产品,有些适合高能性产品,各有自己的优势。SoC的发展离不开功耗、性能、成本、可测性、可靠性、IP核可复用性、平台技术支持性和软硬件协同开发性等方面制约。需要开发者具有强大的计算机体系结构背景知识,才能支持其得到快速发展。3.4SoC的分类原则SOC按照其所采用的体系结构可分类如下:一种是基于指令流计算的体系结构,典型代表是传统的ASICSoC。这一类型中按照其指令流和数据流的控制情

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功