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

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

相关推荐
碧海银沙音频科技研究院9 小时前
基于炬芯ATS308X 设计的上位机usb 串口音乐EQ调节工具
stm32·单片机·嵌入式硬件
三佛科技-1341638421212 小时前
过认证72W碳化硅方案(12V6A)主控HN1562+HN36228V 典型应用电路、变压器参数分享
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
Zwawa14 小时前
串口为什么会丢字节:从轮询到中断和环形缓冲区
c语言·单片机·嵌入式
Brilliantwxx14 小时前
【STM32】 内部 Flash 详解:寄存器逐位拆解 + 工作流程顺序全讲 + EEPROM再实现
stm32·单片机·嵌入式硬件·1024程序员节
木子单片机14 小时前
基于单片机的DS18B20温度传感器测温系统设计
单片机·嵌入式硬件·51单片机·keil
华清远见IT开放实验室14 小时前
实验室建设案例 | 安徽三联学院物联网实验室
stm32·单片机·嵌入式硬件·物联网·华清远见
深圳光特通信豆子16 小时前
TTL 光模块在工业控制与串口通信中的应用指南(10M BIDI 单模系列)
单片机·嵌入式硬件
桀人16 小时前
SPI概念引入
stm32·单片机·嵌入式硬件
离凌寒17 小时前
一、基于stm32+freertos下LD2410D和R60ADB1两款雷达的使用效果
stm32·单片机·嵌入式硬件
国科安芯17 小时前
商业光学遥感载荷焦平面供电链的低噪声稳压器研究综述——以国科安芯ASP7A84AS型3A低压差线性稳压器为器件级参照
大数据·网络·嵌入式硬件·平面·卫星·商业航天·抗辐射