【【Micro Blaze 的 最后补充 与 回顾 】】

Micro Blaze 的 最后补充 与 回顾

Micro Blaze 最小系统

以 MicroBlaze 为核心、LocalMemory(片上存储)为内存,加上传输信息使用的 UART串口就构成了嵌入式最小系统。当程序比较简单时,Local Memory 可以作为程序的运行空间以及存储空间,空间大小可以根据需要设置最小 8KB 到最大 128KB;当程序比较复杂的时候,我们也可以使用片上搭载的外部存储器(如 DDR3)作为程序的运行空间以及存储空间。AXI Interconnect IP 核用于将一个(或多个)AXI 存储器映射的主器件与一个(或多个)存储器映射互联。在这里我们解释一下这个术语------互联(Interconnect):互联实际上是一个开关,它管理并指挥所连接的 AXI 接口之间的通信。

另外一个想法

其实我们使用的外部 LED 按键都是 我们自己认为是这个东西 它的本质都属于 GPIO 设备

我们通过管脚绑定 让 这个 GPIO 变成独属于 设备的 控制器

详情我们可以看 《正点原子 达芬奇 Micro Blaze 的 第四节 》先看结构框图

这个是整个的 Block Design

接下来 见解 最深的是 第八章

自定义 IP 核-呼吸灯实验

我们来看 系统框图

我们注意到的其实是这个 Breath LED 的 自定义 IP核

我们以这个 AXI 接口为核心 添加了端口 out

其实对我们整个设计来说 我们并不需要知道这是怎么完成的

我们 要把 整个设备当成黑盒器件使用

补充了一个 output 在最后有一个 led 的 引脚引出

先说一下 黑盒的用法 里面 分为 3部分 第一部分是 AXI的主函数 我们内部添加了 一个output

第二部分是 AXI 的内容 我们在里面添加了 LED的例化 就是相当于 把寄存器 绑定到 LED 的输入输出

第三部分是 LED的实现内容

其实我们主要关注 主函数的实现 发现就是一个 AXI的接口 还有一个 output LED

我们不理解的话 可以看管脚约束 将这个管脚接在了 PIN R2 上

我们再看 引出的 UART 也会有 管脚绑定 这就是 这两个的相同点

这里面更重要的 一点是 我们需要知道 自定义的IP核 打包之后 会生成一个 .c .h文件供我们使用

我们先介绍一个非常重要的基本概念

IP的接口就是函数的输入参数

生成的.c文件 就相当于 把硬件抽象 成 一个库函数

通过库函数 来设置 输入参数

所以生成的逻辑 就是 根据你的硬件IP 的接口来的

ok 我们在做设计的时候 当合成一个IP之后 进入 C语言的层次之后 其实我们并不需要 知道 这个模块究竟是如何连接的 我们只需要知道这个模块的引脚是什么 功能是什么即可

对于这里的设计 我们需要在意的是 IP的 工作 输入输出 是什么 输入是 S_AXI 而 输出是 LED (LED 我们知道是寄存器达标的值)

那么 功能是 把 数写进 寄存器

LED的改变只是 因为寄存器变化而带来的附加效果

其实相当于把 数据存进到 寄存器

所以可想而知 .c 文件大概率也是这些功能

因为是系统来完成的 我们所能做的就是 观察 得出结论

这句话 就相当于 把数据放进基地址+偏移量的位置

这句话 就相当于 输出的意思

over

接下来 我们来学习第九章

AXI4 接口之 DDR 读写实验

本次设计 不在单单的使用 内部逻辑缓存 而是外挂 DDR

我们来看一下 整个结构框图

我们使用的 是 自己创建的 DDR_TEST 这个 DDR 的 目的是 在 4K 的 存储空间 写入 1024个数据 写入1到1024 每个数据 占用 32Bit

4K = 4096 x 8 bit = 1024 x 32

我们在 Micro Blaze 定义了 cache 所指向的地址 就是内存中的 我们需要使用的地址

然后需要注意的是 这里的地址 必须 和 我们在 IP INTEGRATOR 下的 Address Editor

MIG 内的地址 一致 毕竟我们都是指向的同一个东西嘛

但是 我们 自己定义的IP DDR3_ Test 并不是 写基地址 而是把 偏移量什么的 都需要考虑进去 毕竟 DDR3 _Test 作为一个设施 是直接访问 DDR3 的内存 空间

我们将变量 C M AXI TARGET SLAVE BASE ADDR 的值修改为 0x88000_0000(DDR3的基地址为 0x80000000),它位于 DDR3 存储器的地址空间,是 DDR3_TEST IP 核进行读写操作的起始地址。

懂你意思

接下来我们来看 第十三章 AXI DMA 环路测试实验

下面是这个实验的系统框图

相关推荐
夜月yeyue1 小时前
ARM内核与寄存器
arm开发·stm32·单片机·嵌入式硬件·mcu·链表
云山工作室5 小时前
基于单片机的防火防盗报警系统设计(论文+源码)
单片机·嵌入式硬件
国科安芯6 小时前
高安全等级车规芯片在星载控制终端上的应用
人工智能·嵌入式硬件·物联网·架构·汽车
A-花开堪折6 小时前
Qemu-STM32(十三):STM32F103加入RCC控制器
stm32·单片机·嵌入式硬件
古希腊掌握嵌入式的神7 小时前
[硬件]单片机下载电路讲解-以ch340为例
单片机·嵌入式硬件
lzb7597 小时前
第16届蓝桥杯单片机模拟试题Ⅰ
单片机·蓝桥杯
XYN618 小时前
【嵌入式面试】
笔记·python·单片机·嵌入式硬件·学习
LongRunning9 小时前
【温酒笔记】电源管理-GPIO浮空输入
stm32·单片机
IDIOT___IDIOT11 小时前
为什么要给单片机植入操作系统
单片机·嵌入式硬件
逼子格14 小时前
十三种物联网/通信模块综合对比——《数据手册--物联网/通信模块》
嵌入式硬件·物联网·音视频·硬件工程师·硬件测试·硬件笔试真题·通信模块