现在位置: 首页 > techbulo发表的所有文章
  • 07月
  • 04日
FPGA开发 ⁄ 共 2523字 FPGA配置方式详解已关闭评论 ⁄ 阅读 2,390 次
首先介绍下AS、PS、JTAG三种模式的区别。 AS模式: 烧到FPGA的配置芯片里保存的,FPGA器件每次上电时,作为控制器从配置器件EPCS主动发出读取数据信号,从而把EPCS的数据读入FPGA中,实现对FPGA的编程,该方法适用于不需要经常升级的场合; PS模式:EPCS作为控制器件,把FPGA当做存储器,把数据写人到FPGA中,实现对FPGA的编程。可以采用微控制器(单片机、ARM等)或者CPLD,该模式可以实现对FPGA在线可编程,升级方便; JTAG:直接烧到FPGA里面的,由于是SRAM,断电后要重烧,适用于调试; .pof文件可以通过AS方式下载; .sof文件或......
阅读全文
  • 06月
  • 06日
常见问题 ⁄ 共 327字 解决j-link升级后不能使用,keil 停止响应已关闭评论 ⁄ 阅读 2,448 次
STM32使用Keil环境,前天J-Link驱动升级到新版本后,发现悲剧了,每次下载完程序,KEIL都会出现停止工作,只能强行关闭,然后重新打开,原因很明显肯定和j-lng有关,查找了一番说是我的盗版J-Link被检查出来了。 keil 解决方案: 下载链接里的文件,并解压放到现在的Keil\ARM\Segger目录下,将两个dll文件替换成以前能用的老版本对应文件,完美解决这个问题。 文件下载地址 (压缩包内有使用说明): http://download.csdn.net/detail/techbulo/9861875 
阅读全文
  • 06月
  • 03日
裸机开发 ⁄ 共 254字 STM32中malloc 分配内存失败解决已关闭评论 ⁄ 阅读 3,449 次
在一个项目中,使用了STM32,数据结构比较复杂,采用动态内存分配,一开始程序运行老是异常,调试查找原因,发现是使用malloc分配内存空间时不成功造成的,经分析原因在于Startup_stm32fxx.s文件中定义的堆空间太小导致的,如下图: malloc 因为malloc是在堆空间中分配内存,设置的大小小于需要分配的空间是肯定是要失败的,我把堆大小改为10K就OK了。
阅读全文
  • 05月
  • 17日
常见问题 ⁄ 共 512字 Zynq uboot 擦除QSPI FLASH错误:SF: xxxx bytes @ xxxx Erased: ERROR已关闭评论 ⁄ 阅读 3,734 次
近几天把uoot移植到板子上做测试,打算做个在线升级。经测试uboot对QSPI Flash的读取没有问题,应用程序已能够成功加载启动,当我修改了uboot的环境变量下次启动时发现并没有生效,这就奇怪了,于是使用如下命令测试了一下flash的擦除: erase error 于是上网查了一下,在赛灵思官网上查到了原因及解决办法: error solution 原文地址 : http://www.xilinx.com/support/answers/60539.html 错误原因:由于选用的flash是按扇区擦除的。每个扇区256K,命令中擦除的长度不是256K的倍数。 解决方案:按照扇区的大小的倍数进行擦除。 er......
阅读全文
  • 04月
  • 25日
常见问题 ⁄ 共 2278字 quartus找不到硬件USB-blaster及驱动无法安装,解决方法已关闭评论 ⁄ 阅读 28,474 次
一、Windows无法正常驱动USB-Blaster Win7、Win8、Win10操作系统安装USB-Blaster驱动程序过程中无外乎两个问题: 1、Windows无法安装USB-Blaster。 2、文件的哈希值不在指定的目录文件中. 下面以上提供两个问题的完整解决办法,Win7、Win8、Win10系统的解决过程是类似的,只是界面不一样而已。 问题一:Windows无法安装USB-Blaster no 解决办法: 1、进入,计算机–>>设备管理器。 2、找到设备USB-Blaster,此时是带有黄色感叹号的。 driver 3、右键,更新驱动程序软件。 4、要选择“浏览计算机以查找驱动程序软件(R)”,如选择......
阅读全文
  • 04月
  • 21日
FPGA开发 ⁄ 共 3102字 vhdl 语法总结<三>已关闭评论 ⁄ 阅读 2,768 次
三、        并发代码 VHDL中并发描述语句有WHEN和GENERATE。除此之外,仅包含AND, NOT, +, *和sll等逻辑、算术运算操作符的赋值语句也是并发执行的。在BLOCK中的代码也是并发执行的。 从本质上讲,VHDL代码是并行执行的。只有PROCESS, , PROCEDURE内部的代码才是顺序执行的。但是当它们作为一个整体时,与其他模块之间又是并行执行的。并发代码称为“数据流”代码。 通常我们只能用并发描述语句来实现组合逻辑电路,为了实现时序逻辑电路,必须使用顺序描述语句。事实上,使用顺序描述语句可以同时实现组合逻辑电路和时序逻辑电路。 ......
阅读全文
  • 04月
  • 19日
FPGA开发 ⁄ 共 2444字 vhdl 语法总结<二>已关闭评论 ⁄ 阅读 2,405 次
二、        运算操作符和属性 1.       运算操作符 l  赋值运算符 赋值运算符用来给信号、变量和常数赋值。 <=    用于对SIGNAL类型赋值; :=     用于对VARIABLE,CONSTANT和GENERIC赋值,也可用于赋初始值; =>    用于对矢量中的某些位赋值,或对某些位之外的其他位赋值(常用OTHERS表示)。 例: SIGNAL x: STD_LOGIC; VARIABLE y: STD_LOGIC_VECTOR(3 DOWNTO 0);  –最左边的位是MSB SIGNAL w: STD_LOGIC_VECTOR(0 TO 7);  –最右边的位是MSB x <= ‘1’; y := “0000”; w <= “1000_0000”;  – LSB位......
阅读全文
  • 04月
  • 17日
FPGA开发 ⁄ 共 2267字 vhdl 语法总结<一>已关闭评论 ⁄ 阅读 904 次
一、        数据类型 1.用户自定义数据类型 使用关键字TYPE,例如: TYPE my_integer IS RANGE -32 TO 32; –用户自定义的整数类型的子集 TYPE student_grade IS RANGE 0 TO 100; –用户自定义的自然数类型的子集 TYPE state IS (idle, forward, backward, stop); –枚举数据类型,常用于有限状态机的状态定义 一般来说,枚举类型的数据自动按顺序依次编码。 2.子类型 在原有已定义数据类型上加一些约束条件,可以定义该数据类型的子类型。VHDL不允许不同类型的数据直接进行操作运算,而某个数据类型的子类型......
阅读全文
  • 03月
  • 08日
FPGA开发 ⁄ 共 7147字 spi-master VHDL实现(转)已关闭评论 ⁄ 阅读 1,821 次
--===========================================================================-- -- -- -- Synthesizable Serial Peripheral Interface Master -- -- -- --===========================================================================-- -- -- File name : spi-master.vhd -- -- Entity name : spi-master -- -- Purpose : Implements a SPI Master Controller -- -- Dependencies : ieee.std_logic_1164 -- ieee.std_logic_unsigned -- -- Author : Hans Huebner -- -- Email : hans at the domain hu......
阅读全文
  • 01月
  • 16日
FPGA开发 ⁄ 共 1049字 zynq 纯逻辑开发(VIVADO)-不使用PS部分已关闭评论 ⁄ 阅读 1,839 次
由于刚接触zynq不久,以为zynq开发必须结合PS端,今天快下班的时候,听大师傅说zynq可以不使用PS,完全把片子拿来当FPGA用,觉得有必要测试一下。。。 查找原理图,看到有个100M的晶振接到了ZYNQ的Y9脚上, GCLK 写了一个点灯的程序用来测试 code 一秒闪一次,占空比50% 下面是管脚约束文件 pin 下面开始测试: 1.生成BitStream BitStream 经过几分钟的综合、实现之后弹出对话框 open hardware manager 打开硬件管理器之后,给板子加上电,点击自动连接按钮 Search Device 看到JTAG已经扫描出了硬件,在“xc7z020_1”上右键 Program ......
阅读全文
  • 01月
  • 10日
FPGA开发 ⁄ 共 2236字 vhdl中的类型转换已关闭评论 ⁄ 阅读 2,325 次
VHDL Type Cast and Conversion Functions IEEE VHDL'87/VHDL'93 SYNOPSYS proprietary draft math std_logic_1164.vhd (ieee) standard.vhd (std) std_logic_arith.vhd    (ieee) mathpack.vhd numeric_std.vhd    (ieee) textio.vhd   (std) std_logic_misc.vhd     (ieee)   numeric_bit.vhd    (ieee)   std_logic_signed.vhd   (ieee)       std_logic_unsigned.vhd (ieee)       std_logic_textio.vhd   (ieee)       attributes.vhd     (synopsys)   Numeric packages have been defined to sup......
阅读全文
  • 11月
  • 08日
常见问题 ⁄ 共 1365字 Error:Failed to execute: ./create-this-app –cpu-name cpu –no-make已关闭评论 ⁄ 阅读 3,649 次
今天编写程序,qsys添加外部组件SRAM后,无法创建NIOS II工程,有如下错误: “Error:Failed to execute: ./create-this-app --cpu-name cpu --no-make SEVERE: CPU "cpu" exception memory "sram" has no matching memory region. WARNING: Tcl script "bsp-set-defaults.tcl " error: CPU "cpu" exception memory "sram" has no matching memory region. SEVERE: [Error] altera_hal_linkerx_generator: Required linker section mappings do not exist: "[.entry, .exceptions, .rodata, .rwdata, .text, .bss, .heap, .stack]" ......
阅读全文
×