草庐IT

ARM+FPGA

全部标签

【ARM AMBA AXI 入门 2 - AXI协议中的 BURST Transfer】

请阅读【ARMAMBAAXI总线文章专栏导读】文章目录1.1突发传输简介1.1.1AXI4突发传输控制信号1.1.1.1AxLEN突发传输长度1.1.1.2AxSIZE突发传输宽度1.1.1.3AxBURST突发传输类型1.1.2AXI传输实例1.1.3AIX传输相关术语transaction/burst/transfer1.1突发传输简介突发传输(BurstTransfer)是指在地址总线上进行一次地址传输后,进行多次数据传输(datatransfer),相比于每次只读写一个数据

阿里云RDS标准版(x86) vs 经济版(ARM)性能对比

概述阿里云数据库在去年云栖大会上发布了基于阿里倚天芯片(ARM架构)的RDS实例,后正式命名为经济版。本文通过标准的sysbench测试,来看看相比与标准版,经济版是否更加“经济”,以帮助开发者选择适合自己的规格。这里选择了用户较为常用的4c16g的规格进行测试,测试工具使用了sysbench的oltp_read_write模型进行测试。配置参数与选项,均尽量使用RDS购买过程中的默认选项,以给出更加接近用户使用时的配置。具体的,使用了默认的“高性能参数模板”、使用了ESSDPL1存储,选择了默认的8.0实例。结论在如上的默认配置中,分别使用了2、4、8、10、12、14、16、24、32个并

嵌入式ARM设计编程(三) 处理器工作模式

文章和代码已归档至【Github仓库:hardware-tutorial】,需要的朋友们自取。或者公众号【AIShareLab】回复嵌入式也可获取。一、实验目的(1)通过实验掌握学会使用msr/mrs指令实现ARM处理器工作模式的切换,观察不同模式下的寄存器,加深对CPU结构的理解;(2)通过实验掌握ld中如何使用命令行指定代码段起始地址。二、实验环境硬件:PC机。软件:ADS1.2集成开发环境三、实验内容通过ARM汇编指令,在各种处理器模式下切换并观察各种模式下寄存器的区别;掌握ARM不同模式的进入与退出。四、实验要求(1)按照2.3节介绍的方法,在ADS下创建一个工程asmmodelab,

FPGA基础设计(八):串口收发之RAM存储

串口收发之RAM存储前言整体设计模块划分RAMIP核创建RAMIP核IP核测试前言实现上位机通过串口发送数据到FPGA,FPGA接收到数据后将其存储在RAM的一段连续空间中,然后通过按键触发读出RAM数据,再通过串口发送到上位机。整体设计模块划分1、串口接收模块;2、按键消抖模块3、创建RAMIP核模块4、RAMIP核控制模块;5、串口发送模块。前面已经设计好了串口发送模块,串口接收模块和按键消抖模块,还剩RAMIP的创建和控制RAM模块的设计。控制RAM读写的逻辑:1、简易双端口RAM,有两组地址:写地址wraddress、读地址rdaddress;2、只设置了写使能wren,没有设置读使能

FPGA开发基础篇之一(接口篇)UART串口

写在前面从本文开始,将连载fpga开发基础知识,将这几年浅显的fpga开发经验整理出来,一是梳理一下这几年给别人做fpga的经历,同时也是分享给大家,也希望大牛批评指正。一、UART串口通信基本概念串口通信是非常基本且应用十分广泛的低速通信接口,无论是在dsp、单片机、arm还是在fpga中,编写uart串口通信程序是必备的基础。首先要先了解UART串口通信的基本概念,UART串口通信是全双工的,支持发送和接收通信同时进行。硬件上UART串口只需要两条线tx和rx,分别进行发送和接收。UART串口通信没有同步时钟线,这就需要引入一个概念波特率来区分两位数据实现串行通信,波特率是指每秒传输的位数

基于FPGA的查表式运算器的设计与仿真

摘要随着我国的经济的发展,人们要求计算的方法更好简单和方便,尤其是在计算这个方面,所以对于运算器的设计是非常的重要的,所以为了更好的设计该设计采用了现场可编程逻辑器件FPGA设计,并基于硬件描述语言VHDL在Altera公司的QuartusⅡ软件上实现仿真。系统由计算部分、存储部分、显示部分和输入部分四个部分组成,计算部分为加法器、减法器、乘法器和除法器,存储部分需要3个存储器来实现:内部累加器(acc)、输入寄存器(reg)以及结果暂存器(ans)。显示部分由四个七段译码管组成,分别来显示输入数字,输入部分采用外接键盘,由0—9十个数字按键,加减乘除四个运算符按键,一个等号按键和一个清零按键

Ubuntu上搭建ARM Linux GCC交叉编译环境

在Ubuntu操作系统上搭建ARMLinuxGCC交叉编译环境是为了能够在x86架构的主机上编译运行适用于ARM架构的程序。本文将介绍详细的步骤以及相应的源代码。安装必要的软件包首先,我们需要安装一些必要的软件包,包括GCC、GNUBinutils和GDB。打开终端,运行以下命令来安装这些软件包:sudoapt-getupdatesudoapt-getinstallgcc-arm-linux-gnueabisudoapt-getinstallbinutils-arm-linux-gnueabisudoapt-getinstallgdb-multiarch设置环境变量安装完成后,我们需要设置一些

FPGA接口小结

记录一下FPGA学习过程中学到的一些接口协议一、SPISPI是串行外设接口(SerialPeripheralInterface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议1.1SPI协议SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。(1

FPGA解析串口指令控制spi flash完成连续写、读、擦除数据

前言最近在收拾抽屉时找到一个某宝的spiflash模块,如下图所示,我就想用能不能串口来读写flash,大致过程就是,串口向fpga发送一条指令,fpga解析出指令控制flah,这个指令协议目前就是:55+AA+CMD+LEN_h+LEN_m+LEN_l+DATACMD:01写;02读;03擦除(片擦除);LEN_h/m/l:三个字节表示读写长度,高字节在前低字节灾后;DATA:如果是写flah,DATA则为需要写入的数据,其它两种状态可以不填;1.串口指令解析软件使用序列式状态机完成串口指令解析,最后解析出三个使能信号,以及相应的数据、长度、地址。always@(posedgeclk,neg

android - 如何在不发疯的情况下使用 ARM DS-5 在 eclipse 中调试 Android native 库?

我在这里召唤AndroidNDK调试忍者!我已经尝试了很多关于调试Android原生代码的教程,所以我无法全部记住它们。现在我正在尝试让ARMDS-5工作。我已经让它与AndroidNDK示例一起使用,其中主要Activity加载库。滞后,但有效。但是我的项目有点复杂。我的MainActivity有一个按钮,当我点击它时,SubActivity会启动,并加载native库。当我只是尝试使用DS-5调试器时,当加载主Activity时,我想调试器会尝试连接到lib,但失败了,说:Executionstoppedat:0xAFD0C52CConnectedtounknownplatform