




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【Word版本下载可任意编辑】 双MicroBlaze软核处理器的SOPC系统设计(一) 引 言:随着时代的发展,单核片上可编程系统SOPC(SystemOn a Programmable Chip)解决复杂问题的能力与处理速度已很难满足用户的需求,面向多处理器SOPC系统的设计成为片上系统发展的必然趋势。具有*度、大容量逻辑的FPGA(Field Programmable Gate Array)的出现使得高性能片上多处理器的设计成为现实。目前,片上多核系统的设计已有一定发展,但在处理器间通信和中断方面仍需进一步的研究。本文在处理器间通信和中断控制方面开展了深入的研究。 MicroBlaze是
2、一个被优化过的可以在Xilinx公司FPGA中运行的软核处理器,可以和其他外设IP核一起完成可编程系统芯片的设计。它具有运行速度快、占用资源少、可配置性强等优点,广泛应用于通信、高端消费市场等领域。MicroBlaze处理器采用RISC(Reduced InstructionSet Computer)指令集构造和哈佛存储构造,指令、数据总线位宽均为32位。本文MicroBlaze处理器采用面积优化,流水线分为3级,即取指、译码和执行,减少了硬件开销。 1 系统设计 1.1 双MicroBlaze SOPC系统构造 双MicroBlaze SOPC系统构造图如图1所示。从图1中可知,整个SOPC
3、系统可以分为两个处理器子系统。系统采用两个PLB(Processor Local Bus)v46总线作为系统的通信构造,所有的模块都是直接或间接地连接到这两个总线上。两个总线上均挂有用于处理器间通信和同步的核,即Mailbox和Mutex,因此两个处理器并不是完全独立的。表1列出了SOPC系统包含的主要模块。 表1中的BRAM 有两种用途:一是作为单个处理器的私有存储器用来存储指令和数据,它通过存储器局部总线LMB与处理器相连;二是作为两个处理器之间的共享存储器(Shared Memory)用作通信模块开展数据传输。 它所传输的数据量比Mailbox大很多,特别是在传输信息量大于千字节时,共享
4、存储器是常用的通信模块。 图1 双MicroBlaze SOPC系统构造图 表1 SOPC系统的主要模块 1.2 硬件设计 1.2.1 硬件构造 图1所示的SOPC系统的整体构造不仅和处理器的数目有关,还和系统中模块的配置及功能有关,外部存储器和外围设备的不同配置都会影响系统的构造和功能。 具体如下: SOPC系统通过各自独立的PLBv46总线隔离两处理器子系统,可以确保两个处理器系统在执行各自的处理器事务时不会相互干扰。 共享模块(例如MPMC),采用多端口构造,这些多端口模块使多个处理器在访问共享模块时可以并行开展。 两个独立的MicroBlaze处理器Mb_0和Mb_1,通过共享部件连接
5、在一起,这些共享部件使得两个Micro-Blaze处理器之间以各种方式通信。 此SOPC系统中有两个MicroBlaze处理器软核,其中任何一个MicroBlaze都可以灵活地被其他类型的处理器所代替,比方PowerPC,因此处理器的选择是非常灵活的。 两个处理器可以共享互斥访问设备,比方串口UART、串行外设接口SPI(Serial Periphieral Interface)等,这种情况需要在没有直接连接此外设的总线和直接连接此外设的总线之间提供一个系统总线桥。 关键的外围设备是外部存储控制器MPMC,它多提供8个端口,可以通过XCL(Xilinx Cache Link)连接处理器局部存储
6、器(BRAM),通过PLBv46总线连接到系统中,因此,可以将14个处理器同时连接到MPMC控制器上。 两个处理器之间的Mailbox和Mutex有简单通信的功能,主要表达在处理器之间的通信和同步上。 1.2.2 存储器映像 当程序没有被加载或者运行的时候,它以文件的形式存放在硬盘上。当它被到MPMC内存中的时候,系统会自动从MPMC内存中划分出一段区域,用来将这个磁盘上的文件映射到内存相应的位置上。此时这块内存中的数据就是磁盘文件的一个拷贝。存储器映像就是指和被加载的磁盘文件相对应的一块内存区域。由于MPMC存储器和外围设备是统一编址的,两者的地址范围不可能重叠,因此直接或者间接连接到处理器
7、上的外围设备地址的分配决定了外部存储器的地址空间。 一般而言,当多个处理器共用一条总线时,存储器、外围设备和共享元素是密不可分的,在本文设计的处理器系统中,每一个处理器都有自己独立的系统总线,因此,所有的存储器和外围设备与共享元素都是分开的。也就是说,不同总线上的相同外围设备可以有相同的地址范围。在每一个处理器子系统中,为了能够运行可执行文件,对存储器映像有一些要求。每个处理器都必须将自己的可执行文件加载到各自私有的MPMC地址空间中,可执行文件加载地址不能重叠。在私有存储器里必须有各自的复位和中断存储器映像,这种私有存储器可以通过本地存储器接口(XCL)或者PLBv46总线接口连接起来。一旦
8、私有存储器与其他总线连接完毕,XPS的地址发生器会为每一个MicroBlaze处理器子系统(包括外围设备和存储器)生成适当地址范围的存储器映像。 1.2.3 处理器之间的通信与同步 在Xilinx SOPC系统设计中,常用的处理器之间的通信模块是Shared Memory和Mailbox,同步控制模块是Mutex,调试模块是MDM。 Shared Memory共有两个通信端口,它通过存储器控制端口分别连接到系统的两条PLBv46总线上。系统通过处理器对Shared Memory模块开展读写操作完成通信。 Shared Memory可以由片上本地存储器或者外部存储器构成。当信息传输量比较大时,S
9、hared Memory的异步传输效率比较高,它支持零拷贝或者原状信息队列拷贝。 利用Mailbox也可以开展处理器之间的通信。关于Mailbox,有如下一些特征描述: Mailbox可以认为是处理器之间的类似于TCP/IP的一个简单的通信协议。 处理器之间通过Mailbox通信有同步和异步之分:同步主要表达在处理器之间的通信上,接收者实时地读取Mailbox中的数据;异步主要表达在处理器之间的中断上,发送者通过Mailbox发送中断信息给接收者,接收者收到中断后反应给发送者。 每一个Mailbox核都有一个FIFO和一个双端队列,分别用来发送和接收信息,用户可以根据自己的需要对它们的深度开展
10、配置,主要通过分布式的RAM 或者BRAM 来实现。 Mailbox共有两个端口分别连接到系统的两个总线上来实现处理器之间的通信。 Mailbox软核比较适合传输信息量小于100字节的信息,发送者需要从本地或者外部存储器拷贝整个信息到FIFO,然后,接收者同步地拷贝整个信息到自己的存储器中,因此,Mailbox不适合传输信息量较大的信息,这些将会消耗掉处理器的一些时钟周期。 处理器间的中断是指一个处理器去中断另一个处理器的行为,通过Mailbox的异步通信来实现,处理器发送中断就是往Mailbox里写入一个信息,然后Mailbox通过中断控制器对接收者产生一个中断,接收者收到中断以后会反应给发
11、送者,当Mailbox中没有新的信息时,中断为无效状态。 本文在SOPC系统设计中,用到的同步控制模块是Mutex。此模块主要有以下特点: 存储器映像以后,Mutex存放器的数量可配置这些存放器中有分别存储数据和处理器ID的区域,Mutex存放器中的数据和ID分别通过Mutex开展测试和设置。 复位时,Mutex的值变为0,它表示Mutex处于开锁状态(UNLOCK),并且其中的处理器ID号没有赋值,当Mutex处于锁定状态(LOCK)时,其中的值保持不变。 处理器通过软件赋值的方式将各自的处理器ID号写入到相应的Mutex存放器中,从而获得Mutex的使用权,当两个处理器同步访问Mutex存放器时,每个处理器都会读取Mutex存放器中的值,然后和自己的ID号开展比较,比较匹配的处理器才可访问Mutex存放器,修改其中的数据。 MicroBlaze核通过处理器调试口与MDM(MicroprocessorDebug Module)调试模块相连。调试模块MDM可以调试系统中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学-北京市朝阳区人教版小学毕业考试数学试卷
- 管理类联考综合-2018年考研《管理类联考综合》真题
- 血液透析操作流程
- (高清版)DB5103∕T 31.2-2022 知识产权保护 市场监管系统工作规范 第2部分:专利
- 面馆创业经验分享
- 直播策划与运营实务(第二版) 课件 项目七任务一了解直播数据指标
- 一年级数学(上)计算题专项练习汇编
- 三年级数学计算题专项练习汇编及答案
- 二年级数学计算题专项练习1000题汇编
- 老年人失智症的早期诊断和管理
- 生态保护红线内人类活动生态环境影响评价技术指南
- 钢构件出厂合格证
- 全国大学生化工设计竞赛金奖作品答辩(国赛)课件
- DB32/T+4399-2022《高层建筑工程抗震设防超限界定界定标准》-(高清正版)
- 色谱分离技术经典课件
- 腹腔镜下直肠癌根治术的手术配合
- 锁骨下动脉盗血综合症课件
- 平行四边形对角线的性质(说课)课件
- 竹木制品检验规范及要求
- 宁波大学双语教学课程管理办法
- 幼儿园绘本故事:《袁隆平》 课件
评论
0/150
提交评论