微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 片上系统(SOC)的设计流程及其集成开发环境

片上系统(SOC)的设计流程及其集成开发环境

时间:10-01 来源:3721RD 点击:

第一个可编程片上系统(SOPC)器件以来,已经有众多可编程器件供应商推出了具有自己特色的可编程器件,最为典型的是世界上两大可编程器件供应商--Xilinx公司和Altera公司在FPGA/CPLD基础推出的系列可编程片上系统器件。其中,Xilinx公司先后推出的可编程片上系统器件有:Virtex系列、Virtex-E系列、Virtex-II系列、Virtex-Pro系列、Spaxtan系列、Spartan-II系列等;Altera公司先后推出的可编程片上系统器件有:APEX20系统、APEX II系列、Mercury系列、Excalibur系列、Stratix系列、Cyclone系列等。每个系列器件都有多种产品,以适用于不同的应用要求。因此,对于国内一般的系统设计者来讲,基于可编程片上系统(SOPC)器件的嵌入式系统设计将是进入芯片级电子系统设计的敲门砖。

那么,从板级电子系统设计到芯片级电子系统设计转变将导致哪些方面的变化?主要表现在如下几个方面:

  (1)在设计描述工具方面,传统的板级电子系统设计主要采用电路原理图和元器件外形封装图作为设计描述语言工具,而现在的芯片级电子系统设计主要采用文本方式的硬件描述语言(HDL--Hardware Description Language)作为设计描述语言工具;

  (2) 在设计流程方面,板极电子系统设计主要经历电子系统原理图设计与仿真、印刷电路板(PCB)设计与仿真分板(包括信号完整性分析、电磁兼容性分析等)等二个阶段,而芯片级电子系统设计通常需要经历系统级设计与仿真、算法级设计与仿真、寄存器传输级(RTL)设计与仿真、逻辑综合与验证、版图设计综合与验证等5个阶段;

  (3)在软硬件协同设计方面,板级电子系统设计所采用的方法是先进行硬件系统设计后再进行软件系统设计的方法,难以实现软硬同步设计或协同设计,而芯片级电子系统设计可以比较容易实现软硬件同时设计或协同设计;

  (4)在设计实现方面,板级电子系统设计主要基于具有特定功能的集成电路器件,而芯片级电子系统设计主要是基于具有特定功能的电路模块--知识产权核(IP核)。因此,板级电子系统设计与芯片级电子系统设计无论是在设计方法上还是在设计工具方面都发生了较大的变化。

随着现代信息技术的发展,电子产品生命周期越来越短,特别是电子工业技术不断发展,基于深亚微米和超深亚微米的超大规模集成电路技术的片上系统(SOC) 芯片需求日益扩大,传统的板级电子系统设计方法已不能适应产业界对电子产品需求。因此,基于知识产权(IP)核复用的芯片级电子系统设计方法将成为嵌入式系统设计的主流方式。

  2 基于可编程片上系统(SoPC)的设计流程

  基于可编程片上系统(SOPC)的芯片级电子系统设计主要有两大支撑点:可编程片上系统器件所能提供的片上资源和可复用IP核库所能提供的IP核资源。其中,可编程片上系统器件所能提供的片上资源是由集成电路工艺技术发展决定的,对于系统设计者来讲,应根据设计要求尽量选择合适的器件;可复用TP核库所能提供的IP核资源需要通过系统设计者自行建设。在基于SOC的电子系统设计中,针对各类专门技术、专门应用、专门工具、专门生产工艺、专门产品的IP资源库的建设和共享已形成一种规范,贯穿在系统设计的全过程。图1为典型的基于IP核库的片上系统(SOC)设计流程。

\

  从图1可以看出,在基于可编程上系统(SOPC)的嵌入式系统设计流程中,除了需要强有力的EDA设计工具支持外,离开充分的资源库的支持,可以说是寸步难行,并且必将失去竞争力。从总体上讲,各个层次的IP库和EDA工具是芯片级电子系统设计者必备的两翼,可选的IP核库资源是一种设计者能力的表征。图 2为芯片级电子系统设计中自顶向下设计方法的流程中所依赖的库支持说明。

\

在图1的片上系统(SOC)设计流程中,除了需要强有力的IP核库和EDA工具支持外,与传统的专用集成电路(ASIC)设计流程最明显的区别就是--软硬件协同设计,图3给出软硬件协同设计的一般流程。

\

在软硬件协同设计的过程中,传统的硬件描述语言(VHDL、Verilog HDL)和软件设计语言(C/C++)是无法适应软硬件协同设计这一种新的设计方法上的突破,为此必须使用新的系统级描述语言--S3 基于可编程片上系统(SOPC)的集成设计环境片上系统(SOC)设计所需要的EDA工具,若从硬件设计角度看,在设计流程的前端与ASIC设计差别不大。但是,从整个芯片设计角度出发,这两种类型的芯片设计区别较大。这是因为,在SOC设计中,一般都含有微处理器,所设计的系统级芯片都必须有设备驱动程序与操作系统或嵌入式实时操作系统接口,必须有应用程序完成数字计算、信号处理变换、控制决策等功能。因

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top