首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
» 基于OR1200的嵌入式SoPC硬件平台设计(1)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于OR1200的嵌入式SoPC硬件平台设计(1)
发短消息
加为好友
我是MT
当前离线
UID
1023166
帖子
6651
精华
0
积分
3328
阅读权限
90
来自
燕山大学
在线时间
230 小时
注册时间
2013-12-19
最后登录
2016-1-5
论坛元老
UID
1023166
性别
男
来自
燕山大学
1
#
打印
字体大小:
t
T
我是MT
发表于 2015-12-16 19:42
|
只看该作者
基于OR1200的嵌入式SoPC硬件平台设计(1)
关键词
,
嵌入式
,
可靠性
,
硬件
,
成本
摘要:针对现有商业SoPC系统的固有问题,提出了基于开源IP核与软件资源的SoPC系统硬件平台构建方案,并使用Cyclone FPGA进行了实际验证,证明了该硬件平台的实用性。探讨了该平台在普及SoPC技术和研究更高性能系统方面的积极作用。 关键词:OpenRISC1200可编程片上系统IP核 FPGA SoC(System on Chip)片上系统是现代电子系统设计的一个发展方向,它将原先分立的多个芯片集成在一块芯片上,通过提高芯片的集成度、减少系统芯片的数量和相互之间的 PCB连线、减少PCB面积来降低整个系统的成本,同时使系统的性能、功能和可靠性都有很大的提高。随着新型的高性能、低成本FPGA的出现和综合技术的提高,基于FPGA的SoPC(System on Programmable Chip)可编程片上系统正逐步走向市场。基于FPGA的SoPC与基于ASIC技术的SoC相比,具有设计周期短、产品上市速度快、设计风险和设计成本低、集成度高、灵活性大、维护和升级方便、硬件缺陷修复和排除简单等优点。因此基于FPGA和包括32位CPU在内的各种IP核的系统级应用开发将是下一代电子系统设计的发展方向。 顺应这个潮流,FPGA器件的方要供应商Altera和Xilinx都推出了各自的SoPC解决方案:Nios系统和MicroBlaze系统。它们功能强大、开发环境和配套IP核完善,是工程应用的首选。但是它们只能用在各自厂商的FPGA上,不但配套IP核价格昂贵,而且用户无法获得所有源代码,不利于我国SoPC技术的发展。
针对这种情况,笔者使用Altera公司的Cyclone FPGA和OpenCores组织提供的各种免费、开源的IP核,构建了以OpenRISC1200CPU为核心,配以各类外围IP核的完全开源的 SoPC系统,并成功地运行了μClinux系统。同时本系统采用的所有IP核在源代码不变的情况下可以使用Xilinx的开发工具进行综合、布线,为该系统在其他FPGA平台上的运行打下了良好的基础。 1 OR1200 本系统使用的OpenRISC1200处理器(以下简称OR1200)是OpenRISC系列RISC处理器内核的一员。OpenRISC是由 OpenCores组织负责开发和维护、免费、开源的RISC处理器内核家族。OpenRISC1200出现于2001年7月,支持ORBIS32指令集。该指令集包括32位整数指令、基本的DSP指令、32位的Load和Store指令、程序流程控制指令和特殊指令(实际上还不支持除法指令)。 2002年8月,OpenRISC1200基本成熟,配有比较完善的软件开发环境和操作系统,改进和维护一直持续到现在。 OR1200是一种32位、标量、哈佛结构、5级整数流水线的RISC处理器,它有32个32位通用寄存器,支持缓存、虚拟存储器和基本的DSP功能,外部数据和地址总线接口符合Wishbone标准。辅助功能包括用于实时调试的调试单元、计数器、可编程中断控制器和电源管理单元,这些功能大大增强了 CPU独立工作的能力,对软件调试和操作系统的支持较好,简化了整体系统的设计。OR1200的标准组成结构如图1所示。 CPU/DSP单元是OR1200处理器的核心,其基本结构框图如图2所示。 当使用0.18μm和6层金属工艺时,OR1200的主频可达300MHz,此时可以提供300Dhrystone2.1MIPS和300M次/秒的 32%26;#215;32的DSP乘加操作能力。 OR1200在2002年9月被Flextronics公司选中,用于集成在Flextronics的设计中,并提供商业服务。2003年8 月,Flextronics公司成功实现了集成OR12000、10Mbps/100Mbps自适应以太网MAC控制器、32位33MHz /66MHzPCI接口、16550兼容UART和Memory控制器的SoC芯片,并成功运行了μClinux和Linux操作系统。
2 板级系统组成 板级系统以Altera的Cyclone系列FPGA EP1C12QC240为核心,配以EPCS4配置存储器和配置电路组成核心系统,再配以2片29LV160DB NOR Flash(4MB)、2片IS61LV25616 SRAM(1MB)、2片HY561620 SDRAM(64MB)、1个RS232串行口、1个通用JTAG接口和8段LED、按钮、拨码开关组成基本系统。Flash、SRAM和SDRAM组成存储系统,它们共用FPGA的存储器总线,大大减少了存储系统占用的FPGA管脚数,并为系统提供了运行大型软件所需要的存储器空间。通用JTAG接口可以通过专用接口电缆与PC机的并口相连,实现对CPU的在线调试和系统存储空间的访问。串行口可以为系统实现一个基本的控制台,并可以作为向系统下载大量数据的通道。因此,基本系统的组成足以调试和运行基本的μClinux系统。 完整的板级系统的组成框图如图3所示,它除了基本系统以外,还包括1片10Mbps/100 Mbps自适应以太网PHY芯片、320%26;#215;240彩色STN LCD、10位%26;#215;3通道视频DAC和2个PS2接口。使用以上完整的板级系统可以实现简单的网络和人机界面应用,再配以μClinux操作系统即可实现一个完整的计算机系统。 3 内核的集成、仿真与验证 内核的集成、仿真与验证是建立本平台的难点。要实现上述所有功能,除了OpenRISC1200 CPU外,至少还需要以下IP: %26;#183;Wishbone总线互连; %26;#183;CPU Debug模块; %26;#183;通用I/O控制器; %26;#183;片内高速RAM控制器; %26;#183;16550兼容UART控制器; %26;#183;Memory控制器; %26;#183;10Mbps/100 Mbps自适应以太网MAC控制器; %26;#183;VGA/LCD控制器; %26;#183;8042兼容PS/2控制器。 以上多数IP可以从OpenCores获得,像通用I/O控制器和片内高速RAM控制器这类简单的IP,可以自己编写。不过需要注意的是,为了使系统能够正确地运行或者获得更好的综合效果,多数IP在集成时都要进行修改。需要修改的IP及其修改内容如下: %26;#183;OR1200:通用寄存器组、缓存、MMU使用的RAM块需要针对Synplify进行修改,以便能够综合至M4KRAM块中,MMU、DSP MAC单元根据需要决定是否在配置中去掉,以提高速度,减少逻辑资源的占用;
%26;#183;Wishbone总线线连:添加空穴地址空间的访问处理; %26;#183; UART控制器:数据接收和发送FIFO需要针对Synplify进行修改,以便能够综合到M4K RAM块中; %26;#183;Memory控制器:添加复位后的默认值配置,以便系统可以选择从Flash或者SRAM启动; %26;#183;以内网控制器:控制寄存器和FIFO需要针对Synplify进行修改,以便能够综合进M4K RAM块中,并且需要添加对不支持Burst模式的Wishbone总线互连接口的支持; %26;#183;VGA/LCD控制器:显示FIFO需要针对Synplify进行修改,以便能够综合进M4K RAM块中,并且需要修改对扫描时钟输出的控制。 使用以上IP构建的系统内核的结构框图如图4所示。中间模块是Wishbone总线互连IP,它有8个主设备、8个从设备接口。OR1200的指令和数据接口各占用了一个主设备接口。Debug模块需要访问存储空间,因此也用了一个主设备接口。以太网控制器使用主存储器来存储、获得数据,VGA/LCD控制器使用主存储器获得显示缓冲数据,因此它们也都占用了一个主设备接口。以太网、VGA/LCD和Memory控制器的控制寄存器空间各占用了一个从设备接口,Memory控制器的存储器空间占用了一个从设备接口,其余的UART、PS/2、I/O和片内RAM控制器各占用了一个从设备接口。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
无线技术
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议