当我们学习新平台的时候,最快的入门方式就是上手一块开发板。拿到开发板后,首先要做的自然是先弄清楚开发板的结构,看看开发板包含哪些模块,我们能用它做些什么。今天我们就来聊聊系统,看看一个完整的系统要包含哪些部分,以及各部分的作用。
一、主芯片
想了半天,好像也只有主芯片这个词能概括,毕竟每个平台都不一样。无论MCU,FPGA,ARM,MIPS或是PowerPC,一个平台,总少不了一颗主芯片,这是一个系统的核心,系统的主要功能都是通过主芯片来完成的,也是我们主要花精力学习的部分。
二、存储模块
存储模块是系统里的一个很重要的组成部分,一般存储模块的读写速度都很快,是系统中设计的一个难点。存储模块一般分为ROM和RAM两大类。
A)、ROM:ROM(Read-Only Memory)只读存储器,它分为很多类型。
1)、PROM
可编程只读存储器。在芯片内部有行列式熔丝,需要利用电流烧断熔丝写入所需资料,但是能且仅能写入一次。
2)、EPROM
可擦除可编程只读存储器。利用高压将程序写入芯片,并通过紫外线擦除资料,可以重复使用。
3)、EEPROM
电可擦除可编程只读存储器。这是我们常见的并且经常使用的一种。写入和擦除都通过电信号进行。容量一般都不大,方便保存一些少更改的数据。
4)、Flash Memory
Flash Memory是目前系统中使用最多和最常见的ROM。就Flash来说通常也分为NOR Flash和NAND Flash。 SPI Flash是NOR Flash的一种,只是采用SPI接口进行访问,减少连接线的数量。NOR Flash写入可靠,容量偏小(相对NAND Flash而言)。NAND Flash容量可以做的很大,但在操作的时候会有随机错误bit翻转的问题,需要完善的读写校验。
无论是上面提到的哪种ROM,或是一些新技术的ROM,他们的共同特点都是资料写入后不会轻易改变和删除,即使掉电数据也不会丢失。在系统中ROM常被用来储存运行的程序、配置信息等不经常改变的数据。
B)、RAM:RAM(random access memory)随机存储器。同样分为很多类型。
1)、SRAM
静态随机存储器。它是一种具有静态存取功能的存储器,不需要刷新就能够保存内部的数据。
2)、DRAM
动态随机存储器。动态随机存储器与静态随机存储器的主要区别是使用电容保存数据,只能保持很短的时间,所以为了防止信息丢失需要隔一段时间刷新一次数据。