0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MicroBlaze MCS和MicroBlaze的区别在哪?

OpenFPGA 来源:OpenFPGA 2023-08-23 09:07 次阅读

在Block Design中查找IP时输入Microblaze,就会发现下面几种IP,我们常规使用的就是第一个IP,是一个可以自定义外设的软核,但是第三个MicroBlaze MCS到底是个啥,我们接下来详解。

0414bcde-414d-11ee-a2ef-92fbcf53809c.png

MicroBlaze 微控制器系统 (MCS)是一个 MicroBlaze 实例。MCS 是一个集成的 MicroBlaze 解决方案,在单个模块中包含本地存储器、UART定时器和 GPIO。MCS 旨在减少逻辑资源和程序存储器的占用空间。MCS 可以使用三级或五级管道,具体取决于优化是针对面积还是性能。

042a3d52-414d-11ee-a2ef-92fbcf53809c.png

MCS 的优势之一是,与使用 MicroBlaze 和分立IP创建等效系统相比,MCS 能够实现进一步优化。

MCS 和 MicroBlaze 之间的主要区别如下表所示。

046709da-414d-11ee-a2ef-92fbcf53809c.png

MCS 为我们想要与 GPIO 交互和 UART 接口使用提供了出色的解决方案。

MCS 解决方案提供以下功能:

UART – 具有可配置的波特率、停止位和中断或轮询模式。

固定间隔定时器 (FIT) – 四个具有 32 位的固定内部定时器。每个 FIT 均提供专用输出,可生成 50% 占空比输出。

周期间隔定时器 (PIT) – 四个周期间隔定时器,可在运行时更改。

中断 – IO 模块的中断控制器还可以处理外部中断。

GPIO – 四个通用输出和四个通用输入GPIO。

为了探索 MCS,创建一个针对 Arty S7 的项目。项目打开后,可以将 MCS 添加到BD中,并且可以将 GPIO 输出连接到 Arty S7 上提供的按钮、开关、LED 和 RGB LED。

0499b6dc-414d-11ee-a2ef-92fbcf53809c.png04bb3bb8-414d-11ee-a2ef-92fbcf53809c.png

在此示例中,代码读取 DIP 开关并以一秒循环驱动 LED。

#include

#include"platform.h"

#include"xil_printf.h"

#include"xiomodule.h"

#include"xparameters.h"

#include"xil_printf.h"


intmain()

{

XIOModuleIOModule;

XIOModule_Config*IOCfgPtr=IOModule.CfgPtr;


u32switches;


init_platform();

print("MicroBlazeMCS

");


XIOModule_Initialize(&IOModule,XPAR_IOMODULE_0_NUM_INSTANCES);


while(1){

switches=XIOModule_DiscreteRead(&IOModule,1);

usleep(1000000);

xil_printf("DIPSwitches%x

",switches);

XIOModule_DiscreteWrite(&IOModule,3,switches);

}




cleanup_platform();

return0;

}

由于 MCS 不提供从外部存储器运行的能力,因此由 Vitis 生成并包含应用程序的 ELF 文件必须与 Vivado 中的比特流合并。这也能确保了 MCS 应用程序在 FPGA 配置完成后立即开始运行。

04cd9254-414d-11ee-a2ef-92fbcf53809c.png

当然,当我们开发这些应用程序时,我们希望应用程序适合用于 MCS 的 BRAM。我们还希望确保不会在 MCS 定义阶段分配过多的 BRAM 。

当我们在 Vitis 中编译程序时,我们可以在控制台中看到已编译程序的字节大小。

04e411b4-414d-11ee-a2ef-92fbcf53809c.png

我们可以使用此值来确保最佳的 BRAM 大小。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7551

    浏览量

    151397
  • 存储器
    +关注

    关注

    38

    文章

    7490

    浏览量

    163816
  • mcs
    mcs
    +关注

    关注

    0

    文章

    73

    浏览量

    24801
  • UART接口
    +关注

    关注

    0

    文章

    124

    浏览量

    15293
  • 中断控制器
    +关注

    关注

    0

    文章

    59

    浏览量

    9456
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66509

原文标题:【Vivado那些事儿】MicroBlaze MCS 和 MicroBlaze区别

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MEN文件无法创建,MicroBlaze MCS仿真失败,究竟怎么办?

    在我的 Vivado IP Integrator BD 设计中,有一个 MicroBlaze MCS。 但当我尝试仿真时,出现了类似于以下情况的错误:
    的头像 发表于 09-24 06:48 8303次阅读
    MEN文件无法创建,<b class='flag-5'>MicroBlaze</b> <b class='flag-5'>MCS</b>仿真失败,究竟怎么办?

    MicroBlaze串口设计

    本系统中,Basys3的MicroBlaze模块调用基于AXI协议的UART IP核,通过AXI总线实现MicroBlaze-UART之间的通信,完成串口打印。
    发表于 08-02 09:32 1484次阅读
    <b class='flag-5'>MicroBlaze</b>串口设计

    请问使用microblaze和使用vhdl核心有什么区别

    你好我试图在xilinx spartan 3e启动器上实现以太网我注意到两个选项使用microblaze和使用vhdl核心有什么区别?我真的不了解微光泽制造它的优点并且易于实现,因为mac核心可以
    发表于 09-09 09:55

    Microblaze MCS设计时命令行出现错误该怎么办?

    我已经创建了一个VHDL设计,添加了Microblaze mcs核心,我使用了microblaze_mcs_setup.tcl脚本没有问题。命令> source ipcore_dir
    发表于 11-08 15:51

    VHDL生成声明和Microblaze是什么

    我试图根据某些泛型的值有条件地生成一个微型实例。当edkBmmFile中的名称与网表中的名称不匹配时,会出现Myproblem。例如,edkBmmFile尝试查找“microblaze
    发表于 05-21 14:07

    Microblaze怎么使用?

    Microblaze怎么使用?
    发表于 06-21 06:16

    基于MicroBlaze 软核的FPGA 片上系统设计

    分析软处理器MicroBlaze 的体系结构, 给出MicroBlaze 内核在软件无线电系统中的应用, 实现SOPC(可编程系统芯片)。
    发表于 04-15 10:16 22次下载

    基于MicroBlaze软核的FPGA片上系统设计

    分析软处理器MicroBlaze 的体系结构,给出MicroBlaze 内核在软件无线电系统中的应用,实现SOPC
    发表于 11-30 15:02 31次下载

    基于MicroBlaze的嵌入式系统设计

    基于MicroBlaze的嵌入式系统设计
    发表于 03-01 13:12 21次下载

    利用Vivado进行MicroBlaze处理器应用教程

    1、在工作流导向面板中的IP Integrator中,点击Create Block Design。(表示你要开始构建带有IP核的框图了) 2、Add IP,找到MicroBlaze,添加到
    发表于 11-17 11:16 1.9w次阅读

    MicroBlaze性能详解

    MicroBlaze是一个高度灵活可以配置的软核。你可以根据你设计的需要,对MicroBlaze进行裁减,用最少的资源完成设计的需要。 MicroBlaze的基本特性: 32个32位的通用寄存器
    发表于 11-25 09:11 8543次阅读

    基于MicroBlaze嵌入式高级应用及设计技巧

    基于MicroBlaze嵌入式高级应用及设计技巧
    发表于 03-07 16:13 6次下载
    基于<b class='flag-5'>MicroBlaze</b>嵌入式高级应用及设计技巧

    Xilinx公司的MicroBlaze处理器的结构和原理是怎么样的?

    本文主要介绍Xilinx公司的MicroBlaze处理器的结构及其原理。 该介绍MicroBlaze处理器时,重点介绍了MicroBlaze处理器结构,MicroBlaze处理器信号
    发表于 09-05 08:00 282次下载
    Xilinx公司的<b class='flag-5'>MicroBlaze</b>处理器的结构和原理是怎么样的?

    MicroBlaze的特点与功能概述

    MicroBlaze概述
    的头像 发表于 11-28 06:09 3796次阅读

    MicroBlaze处理器参考指南

    电子发烧友网站提供《MicroBlaze处理器参考指南.pdf》资料免费下载
    发表于 09-14 15:02 3次下载
    <b class='flag-5'>MicroBlaze</b>处理器参考指南