草庐IT

ARM+FPGA

全部标签

【FPGA实验2】二进制转为格雷码

关于FPGA入门实验2——二进制到格雷码的转换的一个记录实验中作用到的仪器信息:芯片商家:ALTERA编程软件:QuartusII试验箱上的芯片型号:EP4CE6E22C8N快速导航🚀题目一、二进制转换为格雷码二、软件仿真三、硬件箱实验1、分析与代码2、编译3、引脚分配4、接线与烧录5、实验结果🚀题目用Verilog语言设计一个4位的二进制格雷码转换电路并使用实验箱进行验证一、二进制转换为格雷码格雷码(循环二进制单位距离码)是任意两个相邻数的代码只有一位二进制数不同的编码,它与奇偶校验码同属可靠性编码。4位二进制数与格雷码一一对应如下:由上图可以看到:从对应的n位二进制码字中直接得到n位格雷码

基于FPGA的信号发生器(三角波、方波、正弦波)

目录DDS实现原理DDS整体设计框图​QuartusII仿真​modelsim仿真顶层代码DDS实现原理DDS(DirectDigital FrequencySynthesizer)直接数字频率合成器,也可叫DDFS。 DDS是从相位的概念直接合成所需波形的一种频率合成技术。 不仅可以产生不同频率的正弦波,而且可以控制波形的初始相位。 主要构成: 内部:相位累加器,正弦查找表 外围:DAC,LPF(低通滤波器)工作过程1、将存于ROM中的数字波形,经DAC,形成模拟量波形。 2、改变寻址的步长来改变输出信号的频率。 步长即为对数字波形查表的相位增量。由累加器对相位增量进行累加,累加器的值作为查

千兆以太网芯片88E1111 RGMII模式的FPGA驱动实现

千兆以太网芯片88E1111RGMII模式的FPGA驱动实现在网络应用领域,千兆以太网已经成为主流,而88E1111作为一款先进的千兆以太网芯片,其驱动实现对于网络设备的性能和稳定性有着至关重要的影响。本文将介绍在RGMII模式下,如何实现88E1111芯片在FPGA上的驱动。一、准备工作首先我们需要了解RGMII模式与MII模式的区别。RGMII(ReducedGigabitMediaIndependentInterface)模式是在MII模式基础上的改进,在保持MII模式信号引脚数目不变的情况下,提高线速率。RGMII模式需要8个引脚来传输数据,其中TXC和RXC作为时钟信号,TXD03和

嵌入式学习---ARM中断控制系统

目录外部事件与CPU的交互方式查询方式中断方式什么是中断源S3C2440支持60个中断源FIQ和IRQ中断处理流程将外设中断通知给CPUSUBSRCPND寄存器INTSUBMSK寄存器SRCPND寄存器INTMSK寄存器INTMOD寄存器INTPND寄存器硬件中断处理是实时系统设计的最重要、最关键的问题。外部事件与CPU的交互方式查询方式程序不断地查询各设备的状态,并做出相应的反应。该方式实现比较简单,常用在比较单一的系统中,比如一个温控系统中可以使用查询方式不断检测温度的变化。特点:实现简单;但CPU利用率很低,不适合多任务的系统。中断方式当事件发生时,硬件会设置某个寄存器;CPU在每执行完

arm-eabi-gcc 和 arm-none-eabi-gcc 都是基于 GCC 的交叉编译器

 arm-eabi-gcc和arm-none-eabi-gcc都是基于GCC的交叉编译器,用于编译ARM架构的嵌入式系统。它们的命名规则如下:arm表示目标架构是ARM。eabi表示嵌入式应用程序二进制接口(EmbeddedApplicationBinaryInterface),是一种用于嵌入式系统的标准接口。gcc表示GNU编译器集合(GNUCompilerCollection),是一种开源的编译器。none表示没有指定供应商或操作系统。它们的主要区别是:arm-eabi-gcc是Android平台使用的交叉编译器,它可以编译Android的boot、kernel、filesystem和应用

ARM7伪中断分析

本文为多年前查找一个LPC2136引发伪中断的问题,特从网上搜索资料,特记录之。伪中断为ARM7特有,当前更高级的单片级是不存在这种概念了。1伪中断产生的原因  由于异步中断处理,伪中断可能出现在基于ARM7TDMIS的微控制器LPC2292中。如果不进行正确处理,有可能引起严重的后果。中断处理的异步特性来源于内核和向量中断控制器(VIC)的相互作用。如果在内核中检测到中断和内核真正开始处理中断的过程中VIC的状态发生改变,则产生中断的异步特性[4]。  应用中可能经过以下步骤:  ①VIC判断是否有IRQ中断。若有,则向内核发送IRQ信号。  ②内核保存IRQ状态。  ③执行流水线的多个周期

mac for m1(arm):安装redis的四种方式(本机安装、homebrew安装、虚拟机安装、docker安装)

0.引言redis作为当今最常用的非关系型数据库,被广泛应用于数据缓存场景。而macm1采用arm芯片,使得众多软件安装成为问题,今天我们来看macm1如何安装redis1.本机安装redis1、下载redis安装包:https://redis.io/download/这里选择6.2版本下载(经测试5.0版本的安装会有报错),如果下载缓慢的可在下述网盘地址下载:redis网盘下载提取码:tteb2、解压安装包3、在该目录下执行编译测试指令sudomaketest4、如上图所示没有报错,则说明环境正常,开始正式安装sudomakeinstall5、启动redis-server6、连接redisr

深入浅出 Linux 中的 ARM IOMMU SMMU II

SMMU驱动中的系统I/O设备探测要使系统I/O设备的DMA内存访问能通过IOMMU,需要将系统I/O设备和IOMMU设备绑定起来,也就是执行SMMU驱动中的系统I/O设备探测。总线发现系统I/O设备并和对应的驱动程序绑定,与IOMMU设备驱动程序注册并为IOMMU设备执行探测初始化的相对顺序不固定,可能系统I/O设备先被发现并和对应的驱动程序绑定,也可能IOMMU设备驱动程序注册及为IOMMU设备执行探测初始化先进行。SMMU驱动中的系统I/O设备探测有两个时机:如果系统I/O设备发现并和对应的驱动程序绑定先执行,在为IOMMU设备执行探测初始化时,调用bus_set_iommu()函数为总

ARM_CORE 梳理--ARM系列

ARM_core系列梳理一、ARM系列core概述ARM分为三个不同的系列:1、Cortex-A:面向尖端的基于虚拟内存的操作系统和用户应用2、Cortex-R:针对实时系统,一般用于车规级芯片3、Cortex-M:微控制器,替代对应的51单片机Cortex-ACortex-RCortex-M运用场景高性能高实时性低功耗/低面积操作系统Linux/RichOSRTOSRTOS指令级32/64bARM32bARM32bThumb中断GICGIC(固定延时的中断响应)NVICMemory多级cacheL1cacheandTCMTCM安全等级ASIL-BASIL-DASIL-D本文章主要描述R和系列

CRC校验原理与FPGA实现(含推导过程)

CRC校验原理与FPGA实现(含推导过程)写在前面一、CRC校验原理1.1CRC校验基本概念1.2CRC校验计算1.2.1发送端CRC校验码计算1.2.1.1CRC校验码计算方法1.2.1.2CRC校验码计算例子1.2.2接收端CRC校验1.2.2.1校验通过1.2.2.2数据段出错1.2.2.3CRC校验码段出错二、CRC校验电路设计2.1串行CRC校验电路推导2.1.1长除法电路推导2.1.2线性移位法电路推导2.1.3串行CRC校验小结2.2并行CRC校验电路推导(单个时钟出结果)三、RTL级代码3.1长除法串行CRC校验RTL级代码3.2线性移位寄存器法串行CRC校验RTL级代码3.3