系统级芯片(SoC)的复杂设计选择(一)

姓名:任佩怡     学号:19020100348     学院:电子工程学院

转自:https://www.sohu.com/a/437939854_465219

【嵌牛导读】系统级芯片(SoC)是一个将计算处理器和其它电子系统集成到单一芯片的集成电路。SoC可以处理数字信号、模拟信号、混合信号,甚至射频信号,常常应用在嵌入式系统中。

【嵌牛鼻子】内核、IP、EDA和NoC 

【嵌牛提问】SOC设计选择

【嵌牛正文】

       尽管微控制器(MCU)通常只有不到100 kB的RAM,但是事实上它是一种简易、功能弱化的SoC。而“系统级芯片”这个术语常用来指功能更加强大的处理器,比如可以支持运行Windows或Linux操作系统的处理器芯片。高性能系统级芯片集成了更多更强的功能模块,一般都配备有外部存储器,比如闪存。此外,系统级芯片往往配置有很多外部接口,可以连接各种外部设备。为了更快地执行复杂任务,一些SoC还采用了多个处理器内核。SoC的功能、性能和应用越来越复杂,对芯片设计和晶圆制造也提出了更高的要求。

       不同的SoC类型有不同的应用场景,围绕微控制器(MCU)构建的系统级芯片一般用于计算性能要求不高的消费电子、家电和IoT产品。基于微处理器(MPU)的SoC在性能和功能方面相对较高,比如手机的应用处理器(AP)。还有一种可以编程的SoC(PSoC),其部分功能可以灵活编程,就像FPGA一样。当然,针对某些特定应用领域而定制开发的SoC可能更为复杂,比如集成ADC/DAC、显示驱动,以及无线射频等功能模块。

SoC基本构成

典型的系统级芯片结构包括以下部分:

至少一个微控制器(MCU)或微处理器(MPU)或数字信号处理器(DSP),但是也可以有多个处理器内核;

存储器可以是RAM、ROM、EEPROM和闪存中的一种或多种;

用于提供时间脉冲信号的振荡器和锁相环电路;

由计数器和计时器、电源电路组成的外设;

不同标准的连线接口,如USB、火线、以太网、通用异步收发和序列周边接口等;

用于在数字信号和模拟信号之间转换的ADC/DAC;

电压调理电路及稳压器。


基于微控制器(MCU)的系统级芯片结构示意图(来源:维基百科)


有的系统级芯片还包含无线连接模块,比如蓝牙,最新的SoC设计甚至还内置AI引擎。

数据的流动主要借助了片上系统中的I/O总线,例如Arm提供的AMBA标准。采用DMA控制器则可以让外部数据直接被传送到存储器,无需经过中央处理器,这可以大大改善数据吞吐的效率。最近10年来,SoC设计的一个趋势是采用基于网络的拓扑结构,来提高片上通信的效率。这种基于路由的数据包互连网络称为“片上网络“(NoC),可以克服基于传统总线网络的带宽瓶颈。

SoC设计流程

一个完整的系统级芯片由硬件和软件两部分组成,其中软件用于控制硬件部分的微控制器、微处理器或数字信号处理器内核,以及外部设备和接口。系统级芯片的设计流程主要是其硬件和软件的协同设计。

由于系统级芯片的集成度越来越高,设计工程师必须尽可能采取可复用的设计思路。现今大部分SoC都使用预定义的IP核(包括软核、硬核和固核),以可复用设计的方式来完成快速设计。在软件开发方面,协议栈是一个重要的概念,它用来驱动USB等行业标准接口。在硬件设计方面,设计人员通常使用EDA工具将已经设计好(或者购买)的IP核连接在一起,在一个集成开发环境(IDE)下集成各种子功能模块。

系统级芯片的设计流程示意图(来源:维基百科)

      芯片设计在被送到晶圆厂进行流片生产之前,设计人员会采取不同方式对其逻辑功能进行验证。仿真与验证是SoC设计流程中最复杂、最耗时的环节,约占整个芯片开发周期的50%~80% ,采用先进的设计与仿真验证方法已成为SoC设计成功的关键。

系统级芯片(SoC)的复杂设计选择

       SoC设计的发展趋势是基于SoC开发平台进行设计,这是一种可以达到最大程度系统重用、面向集成的设计方法,可以分享IP核开发与系统集成成果,不断重整价值链。在重点考虑面积、延迟、功耗的基础上,向成品率、可靠性、EMI 噪声、成本、易用性等方面转移,使系统级集成能力快速提升。

       SoC设计工程师所面对的选择很多,包括处理器内核、各种IP模块、EDA工具和开发环境,以及RF射频模块、片上网络(NoC)和FPGA等,如何做出符合自己应用和设计需要的最佳选择成了一大难题。

你可能感兴趣的:(系统级芯片(SoC)的复杂设计选择(一))