首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

嵌入式SoCIC的设计方法和流程(1)

嵌入式SoCIC的设计方法和流程(1)

  摘要:在介绍嵌入式SoC IC概念的基础上,介绍基于重用(re-use)的SoC IC设计方法和流程,涉及满足时序要求、版图设计流程和测试设计的问题,并给出设计计划考虑项目。
  关键词:嵌入式系统 SoC 重用
  一、系统集成芯片(SoC)是IC设计的发展趋势
  (1)随着微电子技术和半导体工业的不断创新和发展,超大规模集成电路和集成度和工艺水平不断提高,深亚微米(deep-submicron)工艺,如0.18μm、0.13μm已经走向成熟,使得在一个芯片上完成系统级的集成已成为可能。
  (2)各种电子系统出于降低成本、减少体积的要求,对系统集成提出了更高的要求。
  (3)高性能的EDA工具得到长足发展,其自动化和智能化程度不断提高,为嵌入式系统设计提供了功能强大的开发集成环境。
  (4)计算机硬件平台性能大幅度提高,使得很复杂的算法和方便的图形界面得以实现,为复杂的SoC设计提供了物理基础。
  二、何为嵌入式SoC IC
  SoC(System on Chip)是指集系统性能于一块芯片上的系统级芯片。它通常含有一个微处理器核(CPU),有时再增加一个或多个DSP核,以及多个或几十个的外围特殊功能模块和一定规模的存储器(RAM、ROM)等。嵌入式SoC更是针对应用所需的性能,将其设计在芯片上而成为系统操作芯片。芯片的规模常常可以达到数百万门甚至上千万门以上,所以嵌入式SoC是满足应用的系统级的集成电路产生,一方面要满足复杂的系统性能的需要,另一方面也要满足市场上日新月异的对新产品的需求,因此嵌入式SoC的设计也代替了高科技的设计方法和程序。只有在不断地发展优化下,嵌入式SoC才能提供设计周期短而性能优异的产品。因此,要掌握嵌入式系统芯片的设计,就要了解其设计方法和流程。
  三、嵌入式SoC IC的设计方法和流程
  在介绍SoC IC的设计流程之前,先介绍一下“重用”的概念。
  “重用”(re-use)指的是在设计新产品时采用已有的各种功能模块,即使进行修改也是非常有限的,这样,可以减少设计人力和风险,缩短设计周期,确保优良品质。
  SoC IC的设计原则,就是尽可能重用各种功能模块并集成为所需的系统级芯片。读到设计重用,必须对重用时需要考虑的因素作一些说明。首先,重用的功能模块要有详尽的说明书,对模块的功能和适用范围以及芯片集成时的总线接口进行说明。其次,要提供该模块过去已实现的生产工艺。第三,要提供用于测试该模块的测试程序及测试平台。最后,也是最重要的,就是模块的设计内核。通常提供的设计分为“软模块”和“硬模块”两种。“软模块”只提供RTL语言描述,可以用EDA 综合工具产生电路。它的优点是比较灵活,可以根据不同的生产工艺产生对应的电路。“硬模块”提供的是已经完成的电路物理设计(physical design),也就是版图的设计(layout)。它的缺点是一旦生产工艺改变就不能够再使用了,即使是在采用同样生产工艺的情况下,由于模块的物理尺寸已经确定因而也影响了布局(floor-plan)的灵活性;它的优点是在设计采用同样生产工艺的产品并且其物理尺寸不影响芯片布局的情况下,能够直接采用,不用重新设计。由于半导体工艺发展极快,通常重用“软模块”比较多。
  目前,在欧洲和北美已经在产业界形成了基于IP(Interllectual Property)总线模块的重用标准,对于重用的各个因素都有明确的规定。我国的IC设计产业正在迅速发展,应该尽快建立自己的重用标准,与国际接轨。
  通常SoC IC的设计方法有两种:一种是基于模块(module-based)的设计方法,另一种是“门海”(sea-of-cell)的设计方法。
  Module-based的设计方法是指各个单元模块完成各自的RTL和电路综合以及版图设计,然后,在顶层完成整个芯片的版图设计。这种方法的优点是当个别模块进行修改进,不会对整个芯片的设计产生较大的影响。它的设计流程如图1所示。
  Sea-of-cell的设计方法指的是在各个单元模块完成RTL后,直接对整个芯片进行综合,产生整个芯片的网表,然后,完成整个芯片的版图设计。它的优点是能够节省芯片面积,缺点是一旦某个模块修改了,整个芯片要重新做综合和版图设计。它的设计流程如图2所示。
  四、SoC IC满足的时序要求
  无论采用如种设计方法和流程,确保芯片的工作时序要求始终是芯片设计的核心问题。好的设计方法和流程,应该在芯片设计和初级阶段对整个芯片进行时序的控制和分配,以便减少因时序问题造成的反复修改。
  由于SoC IC的规模一般都非常大,因此各个模块用于综合(synthesis)的约束条件必须基于整个芯片的时序要求来产生,才不至于对整个芯片的Timing产生影响。Synopsys公司的Design Budgeting工具能够根据芯片顶层的约束条件对整个芯片以及子模块的约束和时序进行分配和控制,并且产生以此为基础的各个子模块的约束条件用于电路综合,由于芯片顶层以及模块之间的时序已经得到平衡考虑,许多时序问题(timing violations)已经预先得到控制,能够减少后期对设计进行反复修改的次数。
  在对电路进行验证(verify)的时候,除了验证功能正确外,还要验证工作时序的正确性。通常的方法是编写专门的测试程序,运行EDA仿真工具来完成,这通常称为动态仿真(dynamic simulation)。由于SoC IC的规模比较大,仿真(simulation)运行的时间比较长,尤其是在完成版图设计后做后仿真(postlayout simulation)的时候,因此,我们要引入静态时序分析的方法(static timing analysis)。它是从电路的连接和布线上来推测贪污传输的时序,因此当电路的工作时钟和约束条件确定后,电路中信号传输时的设定时间(setup time)和保持时间(hold time)也已经确定,通过静态时序分析就可以把那些不满足要求的路径或电路单元找出来,提供修改设计的依据。它的特点是运行时间远远少于动态仿真。许多电路的时序问题可以预先发现而不用等到动态仿真完成,因而可以帮助我们缩短设计周期。常用的设计工具有Synopsys公司的Primetime和 Cadence公司的Pearl。
  五、版图设计
返回列表