(2007)基于ColdFire的评估系统的设计与实现(16)
时间:2025-07-07
时间:2025-07-07
基于ColdFire的评估系统的设计与实现
第二章 评估板硬件设计 基于ColdFire的评估系统的设计与实现 cache;32位的SDRAM控制器[8]。其引脚图和内部功能模块框分别参见附录A.1和附录A.2。
(2) 快速以太网控制器FEC简介
MCF5271集成的快速以太网控制器(FEC)支持10Mbps和100Mbps的以太网和符合IEEE802.3协议的网络,该模块具有如下特性:
① 支持三种不同的以太网标准物理接口:10Mbps IEEE 802.3 MII接口、100Mbps IEEE 802.3 MII接口和10Mbps 7线接口(工业标准);
② IEEE 802.3 全双工流量控制;
③ 在50MHz的系统时钟下即可支持全双工操作(200Mbps吞吐量),在25MHz的系统时钟下即可支持半双工操作(100Mbps吞吐量);
④ 如果检测到冲突则无需经过处理器总线,直接从发送FIFO缓冲区进行数据重传;
⑤ 自动刷新接收FIFO缓冲区以去除冲突碎片,同时自动进行地址识别,无需利用处理器总线。
图2-1 FEC模块图 FEC模块的内部结构如图2-1所示。图中描述符控制器是一个RISC结构的控制器,该控制器具有以下功能:
① 初始化DMA传输,对DMA通道进行高层控制;
基于ColdFire的评估系统的设计与实现
基于ColdFire的评估系统的设计与实现 第二章 评估板硬件设计
② 解释缓冲块描述符;
③ 对接收到的以太帧进行地址识别;
④ 生成用于发送冲突补偿定时器的随机数。
图中的MII模块功能为对外部的网络物理层设备进行控制和读取状态,与标准含义的MII接口不同。其中EMDC为数据管理时钟,EMDIO为串行输入输出引脚,所有的物理设备控制信号和状态信号都从该引脚输入输出。标准MII接口中的数据发送和接收引脚位于图中的发送和接收模块。
DMA模块提供了多个数据传输通道,通过这些通道,FEC模块中的数据发送/接收、描述符发送/接收就可以独立运行,互不干扰。需要注意的是这里的DMA是指快速以太网控制模块的DMA引擎,该DMA引擎只负责对快速以太网的数据进行传输,与通用含义的DMA不相同。
MCF5271微处理器中的FEC模块使用了缓冲块描述符的概念。以太网最大的数据帧长度可以达到1518个字节,而且可能短时间内收到多个以太帧,如果仅仅使用FEC模块中的存储器来存储显然是不够的,所以FEC模块的以太帧数据必须暂存在FEC外部的存储器中,这其中可能存在的一种情况是一帧的数据存放在多个缓冲块中。为了对这种以太帧进行处理,必须有一种方法将这些缓冲块联系起来,缓冲块描述符(Buffer Descriptors)就是起这个作用的。缓冲区描述符包含起始地址(32位对齐的指针)、数据长度和状态/控制信息,DMA引擎根据缓冲区描述符发送数据。
(3) 队列式串行外设接口QSPI简介及内部逻辑功能
串行外设接口SPI是Freescale公司提出的同步串行外设接口,它允许CPU与各种外设接口器件以串行方式进行通信和交换信息[9]。
MCF5271芯片提供队列式串行外围接口(Queued Serial Peripheral Interface),称其为队列式SPI,是因为该模块可以提供可编程传输队列,允许同时有16个用户排队等候数据传输,而且在传输时不需要CPU参与。该模块具有如下特性:
① 无需用户干预,可编程队列最多支持16个传输;
② 支持从8位到16位的传输长度;
③ 4个外设片选信号,最多可以控制15个外围设备;
④ 在主频75MHz的情况下,可以设置的波特率从147.1Kbps到18.75Mbps; ⑤ 可编程控制传输前后的延时时间;