基于ARM 的SoC 设计入门基于 ARM 的 SoC 设计入门 我们跳过所有对 ARM 介绍性的描述,直接进入工程师们最关心的问题。 要设计一个基于 ARM 的 SoC,我们首先要了解一个基于 ARM 的 SoC 的结构。图 1 是一个典型的 SoC 的结 构: 图1 从图 1 我们可以了解这个的 SoC 的基本构成: ARM core:ARM966E AMBA 总线:AHB+APB 外设 IP(Peripheral IPs):VIC(Vector Interrupt Controller), DMA, UART, RTC, SSP, WDT… Memory blocks:SRAM, FLASH… 模拟 IP:ADC, PLL… 如果公司已经决定要开始进行一个基于 ARM 的 SoC 的设计,我们将会面临一系列与这些基本构成相关的 问题,在下面的篇幅中,我们尝试讨论这些问题。 1. 我们应该选择那种内核? 的确,ARM 为我们提供了非常多的选择,从下面的表-1 中我们可以看到各种不同 ARM 内核的不同特点: 表1 ARM 已经给出了基本的参考意见: *如果您在开发嵌入式实时系统,例如汽车控制、工业控制或网络应用,则应该选择 Embedded core。 *如果您在开发以应用程序为主并要使用操作系统,例如 Linux, Palm OS, Symbian OS 或 Windows CE 等等,则应选择 Application core。 *如果您在开发象 Smart card,SIM 卡或者 POS 机一样的需要安全保密的系统,则需要选择 Secure Core。 举个例子,假如今天我们需要设计的是一个 VoIP 电话使用的 SoC,由于这个应用不需要使用到操作系 统,所以我们可以考虑使用没有 MMU 的内核。另外由于网络协议盏对实时性的要求较高,所以我们可以 考虑 ARM9 系列的内……