基于FPGA的SOC外部组件控制器IP的设计
1 引言
嵌入式系统已经发展成为应用最广的计算机系统[1]。SOC(SystemOnaChip)则是嵌入式系统的研究和开发热点。SOC的核心概念是把整个系统集成到一片半导体芯片上。目前SOC的中文名称还不统一,可被叫做集成系统芯片、系统芯片或片上系统等。基于可编程器件FPGA(FieldprogrammableGateArrays)的SOC可被称作SOPC(SystemonaProgrammableChip)或PSOC(ProgrammableSOC)[2]。基于FPGA的设计为可重配置(reconfigurable)的SOC的开发带来了方便[3]。SOC运用现代计算机和微电子学的高技术,实现单片系统集成,减小了体积、提高了运行效率、增强了可靠性、降低了功耗、减少了成本,因此被称作嵌入式系统应用的理想结构和高端形式。
IP(IntellectualProperty)是SOC设计不可或缺的部分。在某种程度上,可以说SOC=MP+IP。微处理器MP(Microprocessor)是SOC的核心。IP是SOC各种功能实现的模块。IP模块也被称作IP核,IP核又可分为硬核、软核、固核[4]。由于SOC是针对某种应用或对象设计的专用系统,系统的实现很大程度上依赖于功能模块的设计。此外,许多MP核可以在市场上买到。因此,IP模块的开发已成为许多用户设计SOC的主要工作。
本文侧重于介绍IP模块中组件控制器的设计和实现。一个基于FPGA的LCD控制器设计作为例子被介绍。这个组件控制器设计属于固核IP设计,也就是软硬结合的方法。设计内容主要包括电路结构、VHDL框架和仿真结果。该设计实现了面向可重配置SOC的单指令驱动LCD操作。
2 SOC组件与组件控制器
SOC组件是SOC为实现某种操作功能所需要的器件或设备。这些组件可以是内部的也可以是外部的,如LCD、键盘、设备驱动器等是外部组件,电子转换器、变换器、放大器等则属于内部组件。无论是内部,还是外组件,其控制单元都要被设计在SOC内部。作为一个系统的核心,SOC要完成运行、操作或控制功能,必须有相应的组件配合。而多数组件,尤其是外部组件在SOC内都要有一个对应的控制器。所以,为了实现应用对象操作,SOC要设计相当数量的组件控制器。组件控制器的设计,对SOC而言就是一些IP模块的设计。
SOC与外部组件的基本关系见图1。相对于外部组件而言,SOC由微处理器核MP(microprocessor)和相关的控制器IP构成。为了得到最优的控制效率,SOC的MP常常被设计成可重配置(reconfigurable)的MP[5]。这意味着用户可对MP的一些配置进行修改和添加以适应应用系统的需要,如用户可以对MP的指令系统进行重新配置,设计加入用户需要的专用指令。为了区别于一般的MP,图1中的给出了SOC-MP来代表用于SOC的MP核
图1 SOC与外部组件的基本关系
相关文章
- 2024-01-02提高工程力学专业研究生创新能力的探究
- 2024-05-27车辆动态称重技术现状及典型动态称重方法的探讨
- 2024-10-15分析弹性支承输流管道的失稳临界流速
- 2022-06-24基于PCIE/104总线的高速数据接口设计
- 2024-08-21曲面曲率精简算法研究
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。