现在位置: 首页 > FPGA开发 > 文章
2017年09月30日 FPGA开发 ⁄ 共 998字 cyclone iii 器件远程升级(Remote Update)小结已关闭评论 ⁄ 阅读 44 次
由于项目需要,前段时间做了ALTERA cyclone iii  FPGA的远程升级功能,由于项目时间紧迫,在最初的时候考虑做的简单一些,不加bootloader代码,只在主程序中加一个函数接收上位机的升级数据,然后刷FLASH,由于有之前在ARM上做的经验,这样实现起来相对简单很多,但是有很大隐患,万一升级过程中掉电、通信线缆出现问题、或者其他不可控因素,很容易导致设备OVER,不能用了,只能拆开板子重新连jtag口烧写程序,这样对于后期设...
阅读全文
2017年09月08日 FPGA开发 ⁄ 共 643字 评论 2 条 ⁄ 阅读 40 次
最近项目中使用到了18B20温度传感器,平台使用的altera的FPGA,由于温度对系统的稳定运行很重要。要时刻检测,低于某个温度要开启加热,考虑到使用软件读要占用CPU时间,决定把读取18B20温度写到硬件中去。 18B20的时序还是比较简单的,网上有详细的资料介绍,在此只是记录一下调试过程: 写完时序下载到FPGA之后,读到的数据全是FFFF,开始以为时序写的不对,对照着18B20时序看了好久感觉没问题,最后没有办法使用示波器查看读...
阅读全文
2017年08月11日 FPGA开发 ⁄ 共 2261字 关于NIOS II PIO的几个问题(转)已关闭评论 ⁄ 阅读 20 次
1.几个示例 (1)控制LEDS。 (2)获得来自外部的开关信息。 (3)控制显示设备。 (4)与外部设备通讯。 注意PIO可以连接至片外与外部设备交互,亦可直接与FPGA内部逻辑相连接。 2.PIO所具有的功能 (1)输入 此种只能设置PIO为输入,此时对direction、interruptmask或者edgecapture三个寄存器的读写均无效。 (2)输出 此种只能设置PIO为输入,此时对direction、interruptmask或者edgecapture三个寄存器的读写均无效。 (3)...
阅读全文
2017年07月04日 FPGA开发 ⁄ 共 2523字 FPGA配置方式详解已关闭评论 ⁄ 阅读 50 次
首先介绍下AS、PS、JTAG三种模式的区别。 AS模式: 烧到FPGA的配置芯片里保存的,FPGA器件每次上电时,作为控制器从配置器件EPCS主动发出读取数据信号,从而把EPCS的数据读入FPGA中,实现对FPGA的编程,该方法适用于不需要经常升级的场合; PS模式:EPCS作为控制器件,把FPGA当做存储器,把数据写人到FPGA中,实现对FPGA的编程。可以采用微控制器(单片机、ARM等)或者CPLD,该模式可以实现对FPGA在线可编程,升级方便; JTAG:...
阅读全文
2017年04月21日 FPGA开发 ⁄ 共 3102字 vhdl 语法总结<三>已关闭评论 ⁄ 阅读 52 次
三、        并发代码 VHDL中并发描述语句有WHEN和GENERATE。除此之外,仅包含AND, NOT, +, *和sll等逻辑、算术运算操作符的赋值语句也是并发执行的。在BLOCK中的代码也是并发执行的。 从本质上讲,VHDL代码是并行执行的。只有PROCESS, , PROCEDURE内部的代码才是顺序执行的。但是当它们作为一个整体时,与其他模块之间又是并行执行的。并发代码称为“数据流”代码。 通常我们只能用并发描述语句来实现组合逻辑电路,为了实现时序...
阅读全文
2017年04月19日 FPGA开发 ⁄ 共 2444字 vhdl 语法总结<二>已关闭评论 ⁄ 阅读 50 次
二、        运算操作符和属性 1.       运算操作符 l  赋值运算符 赋值运算符用来给信号、变量和常数赋值。 <=    用于对SIGNAL类型赋值; :=     用于对VARIABLE,CONSTANT和GENERIC赋值,也可用于赋初始值; =>    用于对矢量中的某些位赋值,或对某些位之外的其他位赋值(常用OTHERS表示)。 例: SIGNAL x: STD_LOGIC; VARIABLE y: STD_LOGIC_VECTOR(3 DOWNTO 0);  –最左边的位是MSB SIGNAL w: STD_LOGIC_VE...
阅读全文
×