- 博客(11)
- 收藏
- 关注
转载 Nios II 系统时钟timestamp的应用
在用Nios II做外设时序驱动的时候,经常会用延时函数。有时会常使用某个FPGA芯片和时钟,比如笔者一直使用的芯片是cyclone系列 EP2C35F484C8N,PLL输入SOPC时钟是50M。因此,提前测试硬件运行延时情况并编写今后常用的延时函数有一定的意义。软件:Quartus II 9.0, Nios II 9.0硬件配置:1、 在SOPC中调用Interval T
2014-05-22 19:13:43 2196
转载 FIFO存储深度(容量)计算
如果数据流连续不断则FIFO深度无论多少,只要读写时钟不同源同频则都会丢数;FIFO用于缓冲块数据流,一般用在写快读慢时,FIFO深度 / (写入速率 - 读出速率) = FIFO被填满时间 应大于 数据包传送时间= 数据量 / 写入速率例:A/D采样率50MHz,dsp读A/D读的速率40MHz,要不丢失地将10万个采样数据送入DSP,在A/D在和DSP之间至少加多大容量(深
2014-05-20 21:38:31 7951
原创 Quartus II中FPGA的管脚分配保存方法
一、摘要 将Quartus II中FPGA管脚的分配及保存方法做一个汇总。 二、管脚分配方法 FPGA 的管脚分配,除了在QII软件中,选择“Assignments ->Pin”标签(或者点击按钮) ,打开Pin Planner,分配管脚外,还有以下2种方法。方法一:Import Assignments步骤1: 使用记事本或类似软件新建
2014-05-16 20:29:20 758
转载 理解Avalon总线的静态地址对齐与动态地址对齐
尽管看了不少资料,但是一直对 Avalon slave 的动态地址对齐和静态地址对齐的理解不是很透彻。前两天自己做了一个SOPC的自定义组件,通过Deprecated这个选项的不同选取,一下子就理解了Avalon slave的两种地址对齐方式之间的区别。下面以Altera提供的PWM自定义外设的例子,介绍两种地址对齐方式的区别。该例子有所改动,源代码中的32-bit的接口被改成了8-bit
2014-05-16 16:26:27 1919
原创 NIOSII Slave with readdatavalid signal must support at least 1 pending read 解决方法。
NIOS // ============这算鸟解决办法,那我用SOPC builder该如何解决。在『Avalon Interface Specifications』文档中搜索相关内容,可能与maximumPendingReadTransactions有关,(文档22页,3-6)修改SOPC配置,把MaximumPendingReadTransactio
2014-05-15 20:56:44 2257
原创 const与volatile关键字的用法
const最主要的特点就是只读,有常量、常量指针,如果不是特别小心的分析C语言语句的书写格式,再加上指针的使用,就特别容易弄错。volatile关键字是一个类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问;如果不使用valatile,则编译
2014-05-12 16:37:25 1772
原创 C语言中const的用法
基本解释 const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。 虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面几个问题。 问题:const变量 &常量
2014-05-12 16:33:19 622 1
转载 嵌入式C语言中的volatile关键字。
/*********以下是转载《16道嵌入式C语言面试题中的一题》***********/关键字volatile有什么含意 并给出三个不同的例子。 一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去 假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读 取这个变量的值,而不是使用保存在寄存器里的备份。下面是volat
2014-05-12 14:49:15 457
原创 关于STM32上电后不自动运行程序,需要按一下复位才运行。
FRAM在上电后也要进行一些内部初始化,所以在上电之后很快就对它进行操作,它可能还没有“准备好”,所以会出现有时出错的情况。一定延时之后,FRAM初始化完毕,再进行操作就不会错了。
2014-05-09 16:32:11 24732 3
转载 关于可屏蔽中断与不可屏蔽中断。
可屏蔽中断和不可屏蔽中断都属于外部中断,是由外部中断源引起的;但它们也有区别:可屏蔽中断是通过CPU的INTR引脚引入,当中断标志IF=1时允许中断,当IF=0时禁止中断,不可屏蔽中断是由NMI引脚引入,不受IF标志的影响。 不可屏蔽中断源一旦提出请求,CPU必须无条件响应,而对可屏蔽中断源的请求,CPU可以响应,也可以不响应。CPU一般设置两根中断请求输入线:可屏蔽中断请求INTR(
2014-05-07 19:10:38 14348 2
转载 ST库函数的assert_param程序的疑惑(转)
不少人问在ST官方的STM32的库函数里有很多assert_param是什么作用比如下面的assert_param(IS_ADC_ALL_PERIPH(ADCx));assert_param(IS_ADC_IT(ADC_IT));assert_param(IS_GPIO_ALL_PERIPH(GPIOx));assert_param(IS_GPIO_MODE(GPIO_Init
2014-05-07 16:21:06 883
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人