基于 ARM 内核 SoC 的 FPGA 验证环境设计方法
引 言
随着片上系统(SoC) 设计的复杂度和性能要求的不断提高, 软硬件协同设计
(Hardware/ Software Co2de2sign) 贯穿于 SoC 设计的始终。软硬件协同设计是一个
以性能和实现成本为尺度的循环优化过程,验证设计是其中必不可少的重要环节。目前大
多数公司提供的开发验证系统(开发板) 存在两个弱点:一是开发板的性能、规模难以根据
特定的设计需求灵活、自由地调节;二是开发板的功能大多数只能进行软件代码的调试,即
使 ARM 公司提供的开发平台也只能调试部分硬件。这两个弱点均在一定程度上限制了软
硬件划分的探索空间,使所设计的 SoC 不能获得更佳结构实现的能力。
本文利用现场可编程门阵列(FPGA) 重用性好、现场灵活性好的优势,开发一个能进
行详细的行为监测和分析的实时运行验证平台,实现软硬件的紧密和灵活耦合,从而克服
上述结构的弱点,以全实时方式运行协同设计所产生的硬件代码和软件代码,构成一个可
独立运行、可现场监测的验证平台。这样,不但能够提高 SoC 流片成功率,加快 SoC 的
开发,而且可以降低整个 SoC 应用系统的开发成本。
验证平台的设计
系统设计
图 1 是我们设计的 SoC 系统架构, 选用了 ARM7TDMI 处理器核, 它是一个 RISC
体系的 32 位 CPU ,具有功耗低、性价比高、代码密度高三大特色(ARM 公司本身不生产
芯片,普通用户无法获得 ARM 可综合的 CPU 核) ,包括 AMBA 总线、DMA 控制器和
Bridge 、(外部存储器接口 EMI) 、通用串行总线(USB) 客户端控制器、液晶显示器
(LCD) 控制器、多媒体加速器(MMA) 、AC97 控制器、通用串口/ 红外(UART/ IrDA) 、
通用定时器/ 脉宽调制器(TIMER/ PWM) 、中断控制器( INTC) 、同步外设接口(SPI) 、实
时时钟(RTC/ WD) 、时钟和功耗管理单元(PMU) 。
图 1 SoC 的系统架构
图 2 是该 SoC 验证平台的结构框图,选用 Altera 公司的 APEX20K1500E 作为验证
SoC 用的 FPGA ,该器件由一系列的 MegaLAB 结构构成,每个结构包含一组逻辑阵列
块(LAB) 、一个嵌入式系统块( ESB) 及一个在 MegaLAB 结构内提供信号通道的
评论0