【【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 环路测试实验

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

相关推荐
深圳市九鼎创展科技1 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计1 小时前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件
小龙报3 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
范纹杉想快点毕业3 小时前
嵌入式与单片机开发核心学习指南——从思维转变到第一性原理的深度实践
单片机·嵌入式硬件
Industio_触觉智能3 小时前
瑞芯微RK3566开发板规格书,详细参数配置,型号EVB3566-V1,基于RK3566核心板SOM3566邮票孔封装
嵌入式硬件·开发板·rk3568·rk3566·核心板·瑞芯微
czwxkn3 小时前
4STM32(stdl)TIM定时器
stm32·单片机·嵌入式硬件
Love Song残响3 小时前
NVIDIA显卡终极优化指南
stm32·单片机·嵌入式硬件
qq_672592754 小时前
电源芯片为什么发热
单片机·嵌入式硬件
天天爱吃肉82184 小时前
【跨界封神|周杰伦×王传福(陶晶莹主持):音乐创作与新能源NVH测试,底层逻辑竟完全同源!(新人必看入行指南)】
python·嵌入式硬件·算法·汽车
国科安芯4 小时前
抗辐照MCU在精密时频系统中的单粒子效应评估与可靠性验证
单片机·嵌入式硬件·架构·制造·安全性测试