当前位置:首页 > EDA > 电子设计自动化
[导读]SoC芯片的规模一般远大于普通的ASIC,同时深亚微米工艺带来的设计困难等使得SoC设计的复杂度大大提高。仿真与验证是SoC设计流程中最复杂、最耗时的环节,约占整个芯片开发周期的50%~80%,采用先进的设计与仿真验证方

SoC芯片的规模一般远大于普通的ASIC,同时深亚微米工艺带来的设计困难等使得SoC设计的复杂度大大提高。仿真与验证是SoC设计流程中最复杂、最耗时的环节,约占整个芯片开发周期的50%~80%,采用先进的设计与仿真验证方法成为SoC设计成功的关键。一个简单可行的SoC验证平台,可以加快SoC系统的开发与验证过程。FPGA器件的主要开发供应商都针对自己的产品推出了SoC系统的开发验证平台,如基于Nios II微处理器的SOPC系统与基于MicroBlaze微处理器的SOPC系统等。它们功能强大,而且配有相应的开发环境与系统集成的IP核。但每个器件厂商的SOPC系统只适用于自己开发的器件,同时需要支付相应的使用费用且没有源代码,所以在学习以及普通设计开发验证中使用起来会有诸多的不便。

本文采用OpenCores组织所发布的32位微处理器AEMB作为SoC系统的控制中心,通过Wishbone总线互联规范将OpenCores组织发布维护的相关IP核集成在目标SoC系统上,构成了最终的SoC验证平台。

1 AEMB及Wishbone总线介绍

AEMB是一款高效的开源微处理器软核,在指令上与Xilinx公司针对其器件开发的Microblaze微处理器兼容,而且在结构上还有所增强。它主要有以下特点:

①软核设计得非常小,相对于其他的一些微处理器软核,在物理实现上占用较少的硬件逻辑资源;

②支持硬件上的多线程,可以有效地执行操作系统相关的代码;

③AEMB是在LGPL3下开发的,所以它完全可以作为一个部分嵌入到一个大的设计中,同时非常适合一些科研院所以及高校或者个人用来学习;

④支持Wishbone总线规范,可以非常容易地集成其他的一些支持Wishbone总线规范的开源IP核;

⑤完全通过一些参数来定义系统的可配置功能,如系统的地址空间和一些其他可选的功能单元;

⑥在指令上99%与EDK6.2兼容,可以方便地使用已经非常成熟的开发工具链。

Wishbone总线规范是一种片上系统IP核互连体系结构。它定义了一种IP核之间公共的逻辑接口,减轻了系统组件集成的难度,提高了系统组件的可重用性、可靠性和可移植性,加快了产品市场化的速度。Wishbone总线规范可用于软核、固核和硬核,对开发工具和目标硬件没有特殊要求,并且几乎兼容目前存在的所有综合工具,可以用多种硬件描述语言来实现。Wishbone总线提供了4种不同的IP核互连方式:

◆点到点(point-to-point),用于两IP核直接互连;

◆数据流(data flow),用于多个串行IP核之间的数据并发传输;

◆共享总线(shared bus),多个IP核共享一条总线;

◆交叉开关(crossbar switch),同时连接多个主从部件,可提高系统吞吐量。

2 SoC系统验证平台总体框架

SoC系统中主要包含的IP模块有:32位开源微处理器软核AEMB、中断控制器、时钟定时器、Wishbone总线、片上RAM控制器、SDRAM控制器、SSRAM控制器、Flash控制器、UART16550控制器、GPIO控制器。整个SoC系统的总体结构如图1所示。

 

 

图1 SoC系统总体结构

为了方便后续开发与应用,本SoC系统中的Wishbone总线仲裁采用了开源的IP软核wb_conmax。其为8×16的结构,即在该Wishbone总线模块中可以使用8个主设备与16个从设备。本系统中使用了8个从设备接口和2个主设备接口。AEMB软核中没有提供时钟定时器与中断控制器,为了正常使用该软核,本系统中加入了中断控制器和时钟定时器,这两个控制器是作为从设备添加进来的。针对一些对存储空间需求很少的应用,系统将片上RAM作为主存储器。然而,FPGA片上存储器的空间是非常有限的,为了能够运行需要大量存储空间的操作系统,以及让系统正常上电启动,就需要外部存储器作为系统的主存储器。所以,系统中还添加了SDRAM、SSRAM控制器及Flash存储器。UART16550控制器和GPIO控制器作为2个从设备连接在系统中。

3 SoC系统验证平台具体构建

3.1 AEMB版本的选择与配置

AEMB软核采用最新的EDK62版本。本设计的目的在于整个SoC系统验证平台的构建,对微处理器性能及整个SoC系统的具体应用性能没有要求。为了简化设计,将AEMB软核中可配置的一些优化选项全部禁掉。这样不仅省去了对FPGA硬件逻辑资源的占用,而且也避免了因一些具体细节使用不当而带来的诸多问题。

3.2 片上RAM的生成

为了减少对FPGA逻辑资源的占用,同时又能够满足最基本的启动代码的存放与运行,将片内存储器的大小设为4 KB。使用Altera公司的FPGA开发环境QuartusII 9.0中的MegaWizard Plug-In Manager工具,来生成设定大小为4 KB的片上RAM。EDA开发工具生成的片上存储文件仅是具有相关存储器地址、数据及读写控制信号的一个HDL描述文件。为了能够在本SoC系统中使用,需要将其包装成符合Wishbone总线接口的一个从设备,以挂接在系统的Wishbone总线上。

3.3 片外存储控制器的配置

在该SoC系统上,片外存储控制器主要有SDRAM、Flash、SSRAM控制器。根据台湾友晶公司的DE2-70开发板上实际存储芯片的需要,对控制器的数据总线宽度与地址总线宽度作相应的修改与定制。一般情况下,SDRAM作为系统的主存储器,Flash用来存储系统的一些固化程序。在对一些实时系统进行时间参数测量的过程中,为了减小程序运行空间中时序的不稳定性影响,一般情况下测试程序都是在SSRAM器件中运行的。

作为存储器件的物理芯片,数据总线的端口基本上都是双向的,而在片内系统中数据端口基本上都是单向的。这些片外存储控制器在进行物理板级的连接时需要对相应的数据端口作处理。以Flash控制器为例,数据总线的双向I/O口具体实现RTL代码如下:

 

 

其他的存储器(如SDRAM、SSRAM)的数据总线双向I/O的实现,也都是采用这种方法来完成的。

3.4 中断控制器与时钟定时器的配置

中断控制器主要用于接收外部中断源的中断请求,并对中断请求进行处理后再向CPU发出中断请求,等待CPU响应中断并进行处理。在CPU响应中断的过程中,中断控制器仍然负责管理外部中断源的中断请求,从而实现中断的嵌套与禁止。在本设计中,中断控制器的逻辑结构如图2所示。所采用的中断控制器主要负责接收片内IP核及片外器件所发出的中断请求,然后根据一定的优先级与规则将中断发送给微处理器。微处理器可以通过设置与读取相应的中断寄存器来管理查看中断优先级与中断状态。

 

 

图2 终端控制器逻辑结构

时钟定时器主要是作为操作系统的时钟滴答定时器,本质上就是一个简单的计数器。在每个系统时钟来到时计数器会自动加1,当计数器的值达到设定数值时便产生1次时钟中断。PTC是OpenCores组织发布的一个支持Wishbone总线接口的脉冲定时计数器。其不仅可以作为时钟定时器,还可以通过配置寄存器的设置产生PWM脉冲输出。本SoC系统中主要是使用PTC的定时器功能。

3.5 地址空间的分配

根据DE2-70开发板上各器件的特点与AEMB微处理器的中断例外向量表及wb_conmax的逻辑实现,系统地址空间分配结果为:

 

 

4 SoC系统的FPGA综合实现

针对DE2-70开发板在进行SoC系统的FPGA综合时选用CycloneII系列器件EP2C70F896C6。系统时钟频率预设为50 MHz,不加额外约束条件下进行综合,综合后的逻辑资源占用报告如图3所示。

 

 

图3 SOC系统FPGA综合后逻辑资源使用情况

通过时序分析报告可知,该SoC系统在满足时序的前提下,系统实际运行频率可达到65.31 MHz。

5 SoC系统验证平台软件支持

考虑到SoC验证平台所包含的硬件部件与该平台的具体应用,系统软件主要构成如图4所示。Mini Bootloader负责应用程序从Flash器件向程序运行空间的加载。在DE2-70开发板上,借助于NiosII开发工具与开发板自带的基于NiosII的SOPC硬件系统,烧写Flash很方便。系统启动时可以从Flash开始启动,完成应用程序的拷贝后再跳转到主程序运行的存储器空间。在本系统中,为了使编程更加方便,将拷贝程序放在片上RAM中存储。系统从片上RAM开始启动,完成应用程从Flash到SDRAM的拷贝之后,跳转到SDRAM开始执行应用程序。

 

 

图4 SoC系统软件支持

AEMB微处理器在指令上与MicroBlaze达到99%的兼容,而后者的应用程序及操作系统的开发已经有非常成熟的范例。操作系统的移植主要是完成对硬件地址空间的修改与操作系统一些底层初始化代码的编写。最终在该SoC系统验证平台上完成了μC/OS-II的移植工作。

结 语

本文基于32位微处理器AEMB设计了一款SoC系统验证平台,给出了SoC系统经过FPGA综合后的逻辑资源占用情况,以及系统能够运行的最高时钟频率。该平台已在台湾友晶公司的DE2-70开发板上完成了FPGA验证。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭